ocr_digital_screen_reader is an open-source Python tool for reading numbers or text from digital screens in imagesβespecially designed for use on cropped screen segments from devices such as meters, oscilloscopes, digital panels, or lab equipment.
Clone this repository and install the dependencies:
git clone https://github.com/emirbaycan/ocr_digital_screen_reader.git cd ocr_digital_screen_reader pip install -r requirements.txt
Predict text from a digital screen image:
python ocr_model_test.py \ --model ocr_crnn.pth \ --charmap char_to_idx.json \ --input test_image.png
ocr_crnn.pth
as model, char_to_idx.json
as character map, and test_image.png
as input.--model
, --charmap
, and --input
arguments.python ocr_model_test.py --input your_image.png --output result.txt
Example Output:
πΉ Predicted Text: 358
You can train your own OCR model using your own device screens or other digit/text datasets.
Dataset Preparation
ocr_dataset.txt
(one per line: <image_path> <label>
).char_to_idx.json
(auto-generated from your labels).Training
python ocr_model_train.py
Augmentation
ocr_digital_screen_reader/
β
βββ checkpoints/ # Model checkpoints during training
βββ cropped_screens/ # Example cropped input images
βββ ocr_crnn.pth # Trained model weights
βββ char_to_idx.json # Character to index mapping
βββ ocr_labels.json # Ground truth labels for dataset images
βββ ocr_dataset.txt # Paths and labels for each image
βββ ocr_model_test.py # Script for predicting text from image
βββ ocr_model_train.py # Script for training the model
βββ ocr_model.py # Model definition (CRNN)
βββ requirements.txt # Python dependencies
βββ test_image.png # Example test image
All dependencies are listed in requirements.txt
, including:
Install all dependencies with:
pip install -r requirements.txt
path/to/image1.png 12345
path/to/image2.png 67890
ocr_create_dataset.py
.Feel free to open issues or pull requests for improvements, bug fixes, or new features.
MIT License
Developed by Emir Baycan
GitHub
For questions or feedback, open an issue or contact via GitHub.