Skip to content

guestus/ocr

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Проект автоматичексого распознования сканированных тестов для учебного заведения для 4х уровней подготовки (различные варианты ответов)

образец анкеты: level1 Основная идея - в анкете 6 черных квадратов, по которым отсканированное изображение поворачивается и преобразуется (warpPerspective) в нормированное изображение. В нормированном изображении необходимые квадраты имеют абсолютные координаты, что позволяет легко находить bounding box интересующего элемента. В полях фамилии и имени, кода учителя дополнительно убираются точки.

Для распознования цифр используется cnn (за основу взята статья https://medium.com/@ravivaishnav20/handwritten-digit-recognition-using-pytorch-get-99-5-accuracy-in-20-k-parameters-bcb0a2bdfa09) Для распознавания букв и ответов используются resnet50 и resnet18 соответственно с заменой последнего слоя под задачу.

Для обучения русскому алфавиту за основу был взят датасет https://github.com/GregVial/CoMNIST дополненный картинками с рабочих анкет. Для ответов датасет сформирован с рабочих анкет. (оба датасета в архиве в релизе, в папке train ноутбуки для обучения)

Обучение проводилось на google colaboratory, обработка анкет - на vm с centos7

Рабочая структура директории проекта

  1. OCR
    • src
      • 02_test
        • image1.jpeg
        • ...
        • imageN.jpeg
    • data
      • файлы dict для cnn из архива в релизе
    • dst
      • здесь будут результирующие файлы
    • main.py - основной файл
    • ocr.py - класс реализующий обработку
    • results.csv - создаваемый файл

для запуска необходимы torch, torch-vision, pandas, numpy

В результате запуска main.py формируется csv файл.

  • fio - распознаная фамилия и имя
  • teacher - код учителя
  • level - распознанный уровень
  • sum - кол-во правильных ответов
  • err - ошибочные ответы
  • filename - имя результирующего файла в папке dst

В результирующем файле нормированное изображение с отмеченными неправильными ответами. Пример:b5d19c90ce67b4f6cddb6eccd9b1c242

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published