Scanned digits detector and classifier (CNN, OpenCV)
Доступна демонстрация.
Код был написан под python 3.5.2
pip install -r requirements.txt
opencv не поставится через pip так, что можно не переживать по этому поводу.
Лучше собрать из исходников.
Имеется 2 консольных утилиты. Одна рабочая, для сегментации цифр на выделенном участке изображения и их распознования. Другая вспомогательная, для автоматической маркировки сегментированных цифр и сохранения их в файл для дальнейшего обучения классификатора.
digits_recognizer.py - рабочая утилита. Пример использования можно увидеть в демонстрации.
Первым параметром передается путь к изображению, вторым путь к keras классификатору, третим путь к csv файлу с кодами для распознаннхы цифр.
python digits_recognizer.py data/L6xaW5HGGbU.jpg classifier/classifier_cnn.h5 demo/db.csv -v -es 0.4
Утилита имеет ряд парметров:
dataset_writer.py - вспомогательная утилита. Данная утилита предполагает, что ей передана область с цифрами строго в последовательности от 0 до 9. После сегментации сохраняет результат в файл путь к которому передан вторым парметром.
python dataset_writer.py data/scan1-1.jpg classifier/dataset2.csv
Утилита имеет такие же параметры как и digits_recognizer. Подробнее см. help.