Skip to content

Conversation

@anthonycamilleri
Copy link
Collaborator

Summary

  • Replace opencv-python dependency with scikit-image for better Python 3.14 compatibility
  • Update preprocess_image() to use Pillow + scikit-image threshold_otsu
  • Update all dependency declarations and documentation

Motivation

opencv-python has compatibility issues with Python 3.14. scikit-image is lighter (~15MB vs ~50MB) and provides the same Otsu thresholding functionality.

Test plan

  • Verified preprocess_image() produces correct binary output
  • No remaining opencv/cv2 references in codebase
  • Run full test suite"

claude added 3 commits January 4, 2026 21:18
Replace the heavyweight opencv-python dependency with scikit-image for
better Python 3.14 compatibility. The preprocess_image function now uses
Pillow for grayscale conversion and scikit-image's threshold_otsu for
Otsu thresholding, maintaining identical functionality with a lighter
dependency footprint (~15MB vs ~50MB).
- Fix isort import ordering in ocr.py (skimage after PIL)
- Add Python 3.14 to CI test matrix
- Add Python 3.14 to pyproject.toml classifiers
@anthonycamilleri anthonycamilleri merged commit 3ce8e6b into main Jan 4, 2026
7 checks passed
@anthonycamilleri anthonycamilleri deleted the claude/replace-opencv-python-d7Lml branch January 4, 2026 21:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants