optima35/README.md
2024-12-30 20:19:49 +00:00

3.5 KiB
Raw Blame History

OPTIMA-35

Overview

OPTIMA-35 (Organizing, Processing, Tweaking Images and Modifying scanned Analogs from 35mm Film) is a Python-based project designed to provide a streamlined way to manage and edit metadata and images from analog photography. But can be used for any images.

This project is a port of my earlier work, an collection of bash script, transitioning functionality to a more modular and maintainable design.

Please check if a new branch is available and read the changelog to see the progress and current features of the program. The README might sometimes lag behind.

OPTIMA-35 is evolving! The project is transitioning from a terminal-based user interface (TUI) to a graphical user interface (GUI) using Qt (via PySide6). First TUI version was forked to OPTIMA-35 TUI. I intend to keep the TUI version functional since it is usefull for headless setup.

GUI for OPTIMA-35 v0.3.4 with KvArcDark theme

Last preview until GUI is finished.

img{width=40%} img{width=40%} img{width=40%}

Current Status

The README is temporarily outdated while the GUI version is under development. For the latest updates, please check the changelog—I always maintain a detailed log of changes.

Available Features:

  • Core features:
    • resizing
    • renaming
    • grayscale
    • Change brightness
    • Change contrast
    • Exif management
    • Add watermark

Dependencies

To run OPTIMA-35, the following Python libraries are required:

  • pyyaml: To handle YAML files for configuration and settings.
  • piexif: To read, modify, and write EXIF metadata.
  • Pillow: For image processing.
  • pyside6: GUI

Installing Dependencies

You can install the dependencies using pip:

pip install pyyaml piexif pillow pyside6

Alternatively, you can use conda or its alternatives (anaconda, mamba, micromamba):

conda install -c conda-forge pyyaml piexif pillow pyside6

Use of LLMs

In the interest of transparency, I disclose that Generative AI (GAI) large language models (LLMs), including OpenAIs ChatGPT and Ollama models (e.g., OpenCoder and Qwen2.5-coder), have been used to assist in this project.

Areas of Assistance:

  • Project discussions and planning
  • Spelling and grammar corrections
  • Suggestions for suitable packages and libraries
  • Guidance on code structure and organization

In cases where LLMs contribute directly to code or provide substantial optimizations, such contributions will be disclosed and documented in the relevant sections of the codebase.

Ollama

  • mradermacher gguf Q4K-M Instruct version of infly/OpenCoder-1.5B
  • unsloth gguf Q4K_M Instruct version of both Qwen/QWEN2 1.5B and 3B

References

  1. Huang, Siming, et al. OpenCoder: The Open Cookbook for Top-Tier Code Large Language Models. 2024. PDF

  2. Hui, Binyuan, et al. Qwen2.5-Coder Technical Report. arXiv preprint arXiv:2409.12186, 2024. arXiv

  3. Yang, An, et al. Qwen2 Technical Report. arXiv preprint arXiv:2407.10671, 2024. arXiv