Personal resources for image-processing which include topics like :
- photography
- cinematography
- vfx
Warning
The package is not fully designed for public consumptions so use at your own risks. I can deploy major "breaking" changes at any time without notice.
You can find 4 software components:
- libraries: collection of reusable code
- clis: command line interfaces programs
- scripts: entry point mixing the usage of libraries and clis
- plugins: to be used in other software
tool | description | type | tag |
---|---|---|---|
raw-to-dng.py | batch converting raw files to dng | script | |
raw-exr-converter.py | batch converting raw files to OpenEXR, including debayering | script | |
rw2-to-dng.py | batch converting panasonic raw file to dng (personal need) | script | |
mosaic-generator.py | combine multiple image to a single big mosaic of image | script | |
ffmpeg-apple-prores-converter.py | encode to apple prores using ffmpeg | script | |
lxmimgproc | python wrapper to interract with i-o libraries | library | |
loog | nuke node to develop film negatives | plugin |
Each tool should come with its own documentation for details.
Most tool (except plugins) will require python and some dependencies.
- uv is installed
- You have access to an OpenImageIO python wheel.
As useful as OpenImageIO is, it currently doesn't ships official python wheels and need to be manually compiled. As it's a complex task, its usuyally best to try to find wheels made by other online:
- https://github.com/ArchPlatform/oiio-python/releases
- https://github.com/cgohlke/win_arm64-wheels/releases/tag/v2023.9.30
- upcoming official wheels, still in development (no png support): https://github.com/AcademySoftwareFoundation/OpenImageIO/actions/runs/11613214259/job/32338496571
After getting one you can edit the pyproject.toml file according to where you downloaded those wheels OR rename it as specified in the pyproject.toml.
Project is managed through uv.
Assuming uv and git are installed and available on your system:
cd somewhere
# the git clone step can be replaced by a manual download of the repo
git clone https://github.com/MrLixm/image-processing-lxm.git
cd image-processing-lxm
uv run ./scripts/raw-exr-converter.py
You will usually to edit the global variables in the scripts to replace with path for your system. You can also directly use the clis instead of the scripts wrapper.
some of the tools assume you have specific software available on your system:
FFMPEG | https://ffmpeg.org |
---|---|
download | https://ffmpeg.org/download.html |
configure | expected to have the path to the executable set in the FFMPEG environment variable |
OIIOTOOL | https://openimageio.readthedocs.io/en/latest/oiiotool.html |
---|---|
download | https://www.patreon.com/posts/openimageio-oiio-63609827 |
download | find it in any houdini installation. ex: C:\Program Files\Side Effects Software\Houdini 20.5.332\bin\hoiiotool.exe |
configure | expected to have the path to the executable set in the OIIOTOOL environment variable |
EXIFTOOL | https://exiftool.org/ |
---|---|
download | https://exiftool.org/ |
configure | expected to have the path to the executable set in the EXIFTOOL environment variable |
Adobe DNG converter | https://helpx.adobe.com/camera-raw/digital-negative.html |
---|---|
download | https://helpx.adobe.com/camera-raw/digital-negative.html#downloads |
configure | expected to have the path to the executable set in the ADOBEDNGTOOL environment variable |