https://github.com/donguyenanhtuan/skeletonization-document-scanner
A Python-based document scanner that uses image processing and skeletonization techniques to detect and extract documents from camera images.
https://github.com/donguyenanhtuan/skeletonization-document-scanner
computer-vision document-scanner image-processing opencv skeletonization
Last synced: 15 days ago
JSON representation
A Python-based document scanner that uses image processing and skeletonization techniques to detect and extract documents from camera images.
- Host: GitHub
- URL: https://github.com/donguyenanhtuan/skeletonization-document-scanner
- Owner: DoNguyenAnhTuan
- Created: 2025-06-13T06:38:22.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2025-06-16T07:58:25.000Z (11 months ago)
- Last Synced: 2025-06-16T08:53:42.759Z (11 months ago)
- Topics: computer-vision, document-scanner, image-processing, opencv, skeletonization
- Language: Python
- Homepage:
- Size: 32.1 MB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
```markdown
# ๐งพ Skeletonization Document Scanner
This project implements a basic document scanning pipeline using OpenCV and image skeletonization techniques. It processes input images (e.g., photos of paper documents) and transforms them into clean, top-down scanned versions.
---
## ๐ Features
- ๐ผ๏ธ Automatic edge detection & contour finding
- ๐ Perspective transformation (warp)
- ๐ง Skeletonization for better structure identification
- ๐งพ Output of scanned-style documents
---
## ๐ Structure
```
Skeletonization-Document-Scanner/
โโโ data/
โ โโโ sample\_input.jpg
โโโ src/
โ โโโ scanner.py
โ โโโ skeletonize.py
โโโ output/
โ โโโ scanned\_output.jpg
โโโ README.md
````
---
## ๐ง Requirements
Install dependencies:
```bash
pip install opencv-python numpy
````
---
## ๐ How to Run
```bash
python src/scanner.py --image data/sample_input.jpg
```
The script will display the scanning process step-by-step and output the result to the `output/` folder.
---
## ๐ Example Results
| Input Photo | Scanned Output |
| ---------------------- | ------------------------ |
|  |  |
---
## ๐ง Applications
* Digitizing paper documents
* Mobile scanning tools
* Preprocessing for OCR systems
---
## ๐จโ๐ป Author
**Do Nguyen Anh Tuan**
๐ MSc in Information Technology @ Lac Hong University
๐ข FabLab @ EIU | Focused on AI, Computer Vision, and Robotics
๐ [Portfolio Website](https://donguyenanhtuan.github.io/AnhTuan-Portfolio)