Repository focusing on high-performance document scanning and perspective correction.
Technologies: Python (Flask, Poetry), C++ (CMake, PyBind11), OpenCV, Docker.
python_service/: Web API/UI with strict typing and Docker support.cpp_cli/: High-performance C++ tool with Python bindings and Docker support.
Managed by Poetry and Docker.
cd python_service
docker build -t scanner-pro .
docker run -p 5000:5000 scanner-procd python_service
poetry install
poetry run python app.pyAccess UI at: http://localhost:5000
cd cpp_cli
docker build -t scanner-cli .
# Mount current dir to access images
docker run -v $(pwd):/data scanner-cli /data/input.jpg /data/output.jpg --cleancd cpp_cli/build
cmake .. && cmake --build .
./image_processor input.jpg output.jpg --clean- Automatic Document Detection: Finds the largest quadrilateral.
- Perspective Warp: flattens the document view.
- Document Cleaning: Adaptive thresholding (Bonus).
- Python Bindings: Use C++ in Python (Bonus).
- Web UI: Drag & Drop interface (Bonus).