Программа OMR с использованием VB.Net

У меня есть несколько отсканированных изображений BMP или пузырьковый лист OMR. Я должен прочитать отметки в нем. Я хочу сделать эту работу с помощью VB.NET. следующие задачи, которые я должен выполнить

  1. Deskew изображения
  2. Найти контрольные точки (4 квадрата, в моем случае)
  3. Обрезать изображения на основе контрольных точек.
  4. Прочитайте круглые отметки.

Теперь, как это сделать?

1 ответ

Решение

Что мне действительно нужно, так это библиотека обработки изображений. Сначала придет в голову openCV. Но openCV напрямую не совместим с языками.NET. Существует EmguCV, который на самом деле является оболочкой openCV для.NET Framework.

Но в моем случае я использовал Aforge.NET. Это фреймворк C# для CV и искусственного интеллекта - обработка изображений, нейронные сети, генетические алгоритмы, машинное обучение, робототехника и т. Д. Его легко изучить и реализовать. Эта структура хорошо документирована здесь и полностью совместима с VB.NET.

openCV также может быть использован для этой цели, но это будет немного сложно. Одним из способов может быть разработка DLL-библиотеки Dynamic Link Library) на C++ (или на любом другом языке, поддерживаемом OpenCV), а затем использование этих функций из приложения VB.NET.

Контрольные точки могут быть обнаружены путем обнаружения блобов или анализа контуров, а фильтрация результата даст контрольные точки. Затем изменение размера, обрезка, выравнивание и перспективное наложение могут быть выполнены с использованием используемой библиотеки обработки изображений или каркаса.

Другие вопросы по тегам