OptimaLab35 is a cross-platform graphical interface built with Qt, serving as an advanced companion to optima35. It simplifies image editing tasks, offering efficient tools for EXIF/metadata modification, upscaling, and other essential photo processing functions. Designed for versatility and user-friendliness, OptimaLab35 streamlines workflows for analog photographers and digital alike
Find a file
2025-02-01 17:45:00 +00:00
.gitlab-ci ci: adds pipeline 2025-01-22 10:19:31 +00:00
flatpak feat: Initial flatpak support 2025-01-30 14:29:45 +00:00
media Feature/enhancing 2025-01-13 14:53:43 +00:00
src patch: update for ppu 0.5 2025-02-01 17:45:00 +00:00
.gitignore feat: Initial flatpak support 2025-01-30 14:29:45 +00:00
.gitlab-ci.yml fix: fixes pipeline building process 2025-01-22 10:25:43 +00:00
CHANGELOG.md patch: update for ppu 0.5 2025-02-01 17:45:00 +00:00
GitVersion.yml ci: adds pipeline 2025-01-22 10:19:31 +00:00
LICENSE.md Feature/gui 2024-12-30 20:19:49 +00:00
pip_README.md Feature/enhancing 2025-01-13 14:53:43 +00:00
pyproject.toml patch: update for ppu 0.5 2025-02-01 17:45:00 +00:00
README.md Feat: Added compatibility with optima35 v1.0 2025-01-28 15:03:47 +00:00

OptimaLab35

Last updated: 28 Jan 2025

Overview

OptimaLab35 enhances OPTIMA35 (Organizing, Processing, Tweaking Images, and Modifying scanned Analogs from 35mm Film) by offering a user-friendly graphical interface for efficient image and metadata management.

It serves as a GUI for the OPTIMA35 library, providing an intuitive way to interact with the core functionalities.


Current Status

Alpha Stage

OptimaLab35 is built using PySide6 and Qt, offering a modern and flexible interface for OPTIMA35.

The program is under active development, and while versions released on PyPI should not contain major bugs, occasional issues may arise.

For the most accurate and detailed update information, please refer to the well-maintained CHANGELOG, as this README may occasionally lag behind the latest updates.


Features

Image Processing

  • Resize images (upscale or downscale)
  • Convert images to grayscale
  • Adjust brightness and contrast
  • Add customizable text-based watermarks

Image preview

  • Load a single image and see how change in brightness and contrast changes the image

EXIF Management

  • Add EXIF data using a simple dictionary
  • Copy EXIF data from the original image
  • Remove EXIF metadata completely
  • Add timestamps (e.g., original photo timestamp)
  • Automatically adjust EXIF timestamps based on image file names
  • Add GPS coordinates to images

Installation

Install via pip (dependencies are handled automatically):

pip install OptimaLab35

Preview GUI

PREVIEW might be out of date.

Main tab

main{width=40%}

Preview window

main{width=40%}

Exif tab

main{width=40%}

Exif editor

main{width=40%}


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