diff --git a/TODO.rst b/TODO.rst index 6466370..6d80130 100644 --- a/TODO.rst +++ b/TODO.rst @@ -6,17 +6,23 @@ TODO - colour_hdri/__init__.py - - Line 156 : # TODO: Remove legacy printing support when deemed appropriate. + - Line 243 : # TODO: Remove legacy printing support when deemed appropriate. -- colour_hdri/calibration/debevec1997.py +- colour_hdri/tonemapping/global_operators/operators.py - - Line 164 : # TODO: Investigate if the normalisation value should account for the percentage of uncertain camera response functions values or be correlated to it and scaled according. As an alternative of setting the uncertain camera response functions values to zero, it would be interesting to explore extrapolation as the camera response functions are essentially smooth. It is important to note that camera sensors are usually acting non linearly when reaching saturation level. + - Line 518 : # TODO: Implement automatic *p* and *non-uniform* computations support. -- colour_hdri/tonemapping/global_operators/operators.py +- colour_hdri/utilities/exif.py + + - Line 314 : # TODO: Find a better name. + + +- colour_hdri/utilities/image.py - - Line 486 : # TODO: Implement automatic *p* and *non-uniform* computations support. + - Line 131 : # TODO: Remove pragma when https://github.com/python/mypy/issues/3004 is resolved. + - Line 442 : # TODO: Revise then "MixinDataclassArray" is improved. About ----- diff --git a/colour_hdri/__init__.py b/colour_hdri/__init__.py index 97f07c6..c8bacee 100644 --- a/colour_hdri/__init__.py +++ b/colour_hdri/__init__.py @@ -217,8 +217,8 @@ __application_name__ = "Colour - HDRI" __major_version__ = "0" -__minor_version__ = "1" -__change_version__ = "8" +__minor_version__ = "2" +__change_version__ = "0" __version__ = ".".join( (__major_version__, __minor_version__, __change_version__) ) diff --git a/colour_hdri/examples/examples_absolute_luminance_calibration_and_photometric_exposure_conversion.ipynb b/colour_hdri/examples/examples_absolute_luminance_calibration_and_photometric_exposure_conversion.ipynb index d400042..f38bca9 100644 --- a/colour_hdri/examples/examples_absolute_luminance_calibration_and_photometric_exposure_conversion.ipynb +++ b/colour_hdri/examples/examples_absolute_luminance_calibration_and_photometric_exposure_conversion.ipynb @@ -30,8 +30,8 @@ "* [Clang 13.0.0 (clang-1300.0.29.3)] *\n", "* *\n", "* colour-science.org : *\n", - "* colour : 0.4.0 *\n", - "* colour-hdri : v0.1.8-95-g5ced6d0 *\n", + "* colour : 0.4.1 *\n", + "* colour-hdri : v0.1.8-100-g8c61166 *\n", "* *\n", "* Runtime : *\n", "* imageio : 2.16.0 *\n", diff --git a/colour_hdri/examples/examples_adobe_dng_sdk_colour_processing.ipynb b/colour_hdri/examples/examples_adobe_dng_sdk_colour_processing.ipynb index cc191fc..89b42ca 100644 --- a/colour_hdri/examples/examples_adobe_dng_sdk_colour_processing.ipynb +++ b/colour_hdri/examples/examples_adobe_dng_sdk_colour_processing.ipynb @@ -48,8 +48,8 @@ "* [Clang 13.0.0 (clang-1300.0.29.3)] *\n", "* *\n", "* colour-science.org : *\n", - "* colour : 0.4.0 *\n", - "* colour-hdri : v0.1.8-95-g5ced6d0 *\n", + "* colour : 0.4.1 *\n", + "* colour-hdri : v0.1.8-100-g8c61166 *\n", "* *\n", "* Runtime : *\n", "* imageio : 2.16.0 *\n", diff --git a/colour_hdri/examples/examples_global_tonemapping_operators.ipynb b/colour_hdri/examples/examples_global_tonemapping_operators.ipynb index b299066..80faccc 100644 --- a/colour_hdri/examples/examples_global_tonemapping_operators.ipynb +++ b/colour_hdri/examples/examples_global_tonemapping_operators.ipynb @@ -51,8 +51,8 @@ "* [Clang 13.0.0 (clang-1300.0.29.3)] *\n", "* *\n", "* colour-science.org : *\n", - "* colour : 0.4.0 *\n", - "* colour-hdri : v0.1.8-95-g5ced6d0 *\n", + "* colour : 0.4.1 *\n", + "* colour-hdri : v0.1.8-100-g8c61166 *\n", "* *\n", "* Runtime : *\n", "* imageio : 2.16.0 *\n", @@ -216,7 +216,7 @@ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "5bcab8dc2e0e46e691846d62194ca422", + "model_id": "c2266db4e5264a5b80fe08d63d2784a8", "version_major": 2, "version_minor": 0 }, @@ -258,7 +258,7 @@ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "ce94231db0c34de588eb7414036128ff", + "model_id": "60eb1fbec9d84e3c80cd313e2629919a", "version_major": 2, "version_minor": 0 }, @@ -302,7 +302,7 @@ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "8cefd38f130c43f389ddc0aa26502514", + "model_id": "295091d06ccc407393388715854cc88f", "version_major": 2, "version_minor": 0 }, @@ -346,7 +346,7 @@ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "d3fed39bf2dc4611a266363db1855626", + "model_id": "5192d3c8dfaf4b4cae9511f5998e0c41", "version_major": 2, "version_minor": 0 }, @@ -393,7 +393,7 @@ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "30246bc695664b89a83822de387d56e1", + "model_id": "cd291399380542f2b38f6eebef480033", "version_major": 2, "version_minor": 0 }, @@ -439,7 +439,7 @@ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "596fba58dbe14f488a624e3726cfa073", + "model_id": "22c5cfb2d15a43e48d7bcef1c7d0c1b5", "version_major": 2, "version_minor": 0 }, @@ -483,7 +483,7 @@ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "1b837b726f1f478e9e1536cd4f5fd13b", + "model_id": "3f4822ce3fa04493b768851a5d5b4242", "version_major": 2, "version_minor": 0 }, @@ -532,7 +532,7 @@ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "3e68b34e2c584b05b2e0b11e372a0fea", + "model_id": "ae81e34227f94766ad3bbf55d4314fb5", "version_major": 2, "version_minor": 0 }, @@ -584,7 +584,7 @@ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "ae2337e5425e40f680fc250090b1938e", + "model_id": "87503288e2784daf8a8dd5ffaf14ea04", "version_major": 2, "version_minor": 0 }, diff --git a/colour_hdri/examples/examples_merge_from_ldr_files.ipynb b/colour_hdri/examples/examples_merge_from_ldr_files.ipynb index cf3857b..9ee20d4 100644 --- a/colour_hdri/examples/examples_merge_from_ldr_files.ipynb +++ b/colour_hdri/examples/examples_merge_from_ldr_files.ipynb @@ -41,8 +41,8 @@ "* [Clang 13.0.0 (clang-1300.0.29.3)] *\n", "* *\n", "* colour-science.org : *\n", - "* colour : 0.4.0 *\n", - "* colour-hdri : v0.1.8-95-g5ced6d0 *\n", + "* colour : 0.4.1 *\n", + "* colour-hdri : v0.1.8-100-g8c61166 *\n", "* *\n", "* Runtime : *\n", "* imageio : 2.16.0 *\n", diff --git a/colour_hdri/examples/examples_merge_from_raw_files.ipynb b/colour_hdri/examples/examples_merge_from_raw_files.ipynb index 1496c46..e99099b 100644 --- a/colour_hdri/examples/examples_merge_from_raw_files.ipynb +++ b/colour_hdri/examples/examples_merge_from_raw_files.ipynb @@ -51,8 +51,8 @@ "* [Clang 13.0.0 (clang-1300.0.29.3)] *\n", "* *\n", "* colour-science.org : *\n", - "* colour : 0.4.0 *\n", - "* colour-hdri : v0.1.8-95-g5ced6d0 *\n", + "* colour : 0.4.1 *\n", + "* colour-hdri : v0.1.8-100-g8c61166 *\n", "* *\n", "* Runtime : *\n", "* imageio : 2.16.0 *\n", diff --git a/colour_hdri/examples/examples_merge_from_raw_files_using_rawpy.ipynb b/colour_hdri/examples/examples_merge_from_raw_files_using_rawpy.ipynb index fc8e8a2..0b1d7ef 100644 --- a/colour_hdri/examples/examples_merge_from_raw_files_using_rawpy.ipynb +++ b/colour_hdri/examples/examples_merge_from_raw_files_using_rawpy.ipynb @@ -7,6 +7,15 @@ "# Colour - HDRI - Examples: Merge from Raw Files using Rawpy" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "
\n", + "This notebook has not been run in recent releases because Rawpy is not available on Apple M1.\n", + "
" + ] + }, { "cell_type": "markdown", "metadata": {}, diff --git a/colour_hdri/examples/examples_merge_from_raw_files_with_post_demosaicing.ipynb b/colour_hdri/examples/examples_merge_from_raw_files_with_post_demosaicing.ipynb index b34b117..b678ba1 100644 --- a/colour_hdri/examples/examples_merge_from_raw_files_with_post_demosaicing.ipynb +++ b/colour_hdri/examples/examples_merge_from_raw_files_with_post_demosaicing.ipynb @@ -54,9 +54,9 @@ "* [Clang 13.0.0 (clang-1300.0.29.3)] *\n", "* *\n", "* colour-science.org : *\n", - "* colour : 0.4.0 *\n", - "* colour-demosaicing : 0.2.0 *\n", - "* colour-hdri : v0.1.8-95-g5ced6d0 *\n", + "* colour : 0.4.1 *\n", + "* colour-demosaicing : 0.2.1 *\n", + "* colour-hdri : v0.1.8-100-g8c61166 *\n", "* *\n", "* Runtime : *\n", "* imageio : 2.16.0 *\n", diff --git a/colour_hdri/examples/examples_variance_minimization_light_probe_sampling.ipynb b/colour_hdri/examples/examples_variance_minimization_light_probe_sampling.ipynb index c451143..358f78e 100644 --- a/colour_hdri/examples/examples_variance_minimization_light_probe_sampling.ipynb +++ b/colour_hdri/examples/examples_variance_minimization_light_probe_sampling.ipynb @@ -13,7 +13,9 @@ "source": [ "Through this example, lights will be extracted from radiance images using Viriyothai (2009) variance minimization light probe sampling algorithm.\n", "\n", - "> Note: The current implementation is not entirely vectorised nor optimised thus slow." + "
\n", + "The current implementation is not entirely vectorised nor optimised thus slow.\n", + "
" ] }, { @@ -32,8 +34,8 @@ "* [Clang 13.0.0 (clang-1300.0.29.3)] *\n", "* *\n", "* colour-science.org : *\n", - "* colour : 0.4.0 *\n", - "* colour-hdri : v0.1.8-95-g5ced6d0 *\n", + "* colour : 0.4.1 *\n", + "* colour-hdri : v0.1.8-100-g8c61166 *\n", "* *\n", "* Runtime : *\n", "* imageio : 2.16.0 *\n", diff --git a/pyproject.toml b/pyproject.toml index 174c337..3033a73 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "colour-hdri" -version = "0.1.8" +version = "0.2.0" description = "HDRI / Radiance image processing algorithms for Python" license = "BSD-3-Clause" authors = [ "Colour Developers " ] diff --git a/requirements.txt b/requirements.txt index 454345f..0575ce0 100644 --- a/requirements.txt +++ b/requirements.txt @@ -17,8 +17,8 @@ cfgv==3.3.1 charset-normalizer==2.0.12 click==8.0.4 colorama==0.4.4 -colour-demosaicing==0.2.0 -colour-science==0.4.0 +colour-demosaicing==0.2.1 +colour-science==0.4.1 coverage==6.3.2 coveralls==3.3.1 cycler==0.11.0 @@ -33,7 +33,7 @@ executing==0.8.2 filelock==3.6.0 flake8==4.0.1 flynt==0.76 -identify==2.4.10 +identify==2.4.11 idna==3.3 imageio==2.16.0 imagesize==1.3.0 @@ -41,7 +41,7 @@ importlib-metadata==4.11.1 iniconfig==1.1.1 invoke==1.6.0 ipykernel==6.9.1 -ipython==8.0.1 +ipython==8.1.0 ipython-genutils==0.2.0 ipywidgets==7.6.5 jedi==0.18.1 @@ -109,11 +109,11 @@ QtPy==2.0.1 readme-renderer==32.0 requests==2.27.1 requests-toolbelt==0.9.1 -restructuredtext-lint==1.3.2 +restructuredtext-lint==1.4.0 rfc3986==2.0.0 scipy==1.8.0 Send2Trash==1.8.0 -setuptools==59.6.0 +setuptools==60.5.0 six==1.16.0 snowballstemmer==2.2.0 soupsieve==2.3.1 @@ -127,7 +127,7 @@ sphinxcontrib-qthelp==1.0.3 sphinxcontrib-serializinghtml==1.1.5 stack-data==0.2.0 terminado==0.13.1 -testpath==0.5.0 +testpath==0.6.0 tokenize-rt==4.2.1 toml==0.10.2 tomli==2.0.1 @@ -135,11 +135,12 @@ tornado==6.1 tqdm==4.62.3 traitlets==5.1.1 twine==3.8.0 +types-setuptools==57.4.9 typing_extensions==4.1.1 urllib3==1.26.8 -virtualenv==20.13.1 +virtualenv==20.13.2 wcwidth==0.2.5 webencodings==0.5.1 -wheel==0.37.0 +wheel==0.37.1 widgetsnbextension==3.5.2 zipp==3.7.0 diff --git a/setup.py b/setup.py index e27e25e..f15bf2b 100644 --- a/setup.py +++ b/setup.py @@ -33,43 +33,51 @@ package_data = { "": ["*"], - "colour_hdri": [ - "examples/*", - "resources/colour-hdri-examples-datasets/*", - "resources/colour-hdri-tests-datasets/*", - ], + "colour_hdri": ["examples/*", "resources/colour-hdri-tests-datasets/*"], } -install_requires = ["colour-science>=0.3.16,<0.4.0", "recordclass"] +install_requires = [ + "colour-science>=0.4.0", + "imageio>=2,<3", + "numpy>=1.19,<2", + "scipy>=1.5,<2", + "typing-extensions>=4,<5", +] extras_require = { "development": [ "biblib-simple", - "coverage", + "black", + "coverage!=6.3", "coveralls", "flake8", + "flynt", "invoke", "jupyter", - "mock", - "nose", + "mypy", "pre-commit", + "pydata-sphinx-theme", + "pydocstyle", "pytest", + "pytest-cov", "restructuredtext-lint", - "sphinx<=3.1.2", - "sphinx_rtd_theme", + "sphinx>=4,<5", "sphinxcontrib-bibtex", "toml", "twine", - "yapf==0.23", ], - "optional": ["colour-demosaicing", "rawpy"], - "plotting": ["matplotlib"], - "read-the-docs": ["mock", "numpy", "sphinxcontrib-bibtex"], + "optional": ["colour-demosaicing>=0.2.0"], + "plotting": ["matplotlib>=3.2,!=3.5.0,!=3.5.1"], + "read-the-docs": [ + "matplotlib>=3.2,!=3.5.0,!=3.5.1", + "pydata-sphinx-theme", + "sphinxcontrib-bibtex", + ], } setup( name="colour-hdri", - version="0.1.8", + version="0.2.0", description="HDRI / Radiance image processing algorithms for Python", long_description=codecs.open("README.rst", encoding="utf8").read(), author="Colour Developers", @@ -81,5 +89,5 @@ package_data=package_data, install_requires=install_requires, extras_require=extras_require, - python_requires=">=3.6,<4.0", + python_requires=">=3.8,<3.11", )