A modular Python tool to perform image processing and computer vision tasks. The project uses a multi-level CLI to easily expand into different fields of computer vision and image processing.
General image processing utilities.
transparency: Converts images between different formats (e.g., PNG to JPG, JPG to PNG). By default, it automatically makes near-white and light-grey backgrounds transparent. If the output format does not support transparency (like JPEG), the script automatically flattens the image onto a white background to prevent errors.
(Placeholder for future computer vision features like classification, detection, etc.)
See the format_support_checklist.md file for a full list of supported formats. Currently implemented:
- PNG
- JPEG / JPG
- ICO
- Python >= 3.10
- Pillow
- NumPy
You can use the new command structure via uv run or directly running main.py.
uv run image-processing <field> <tool_name> [args]Or using python:
python main.py <field> <tool_name> [args]Convert a PNG to a JPG (automatically flattens transparent background to white):
python main.py image_processing transparency input.png -o output.jpgConvert a JPG to a PNG (with automatic background transparency):
python main.py image_processing transparency input.jpg -o output.pngConvert an image without modifying transparency (keep original background):
python main.py image_processing transparency input.png -o output.ico --no-transparent