Введение 3
1.1 Существующие системы распознавания 3
1.1.1 Алгоритм распознавания образов Google 3
1.1.2 Vivino Wine Scanner 4
2. Теоретическая часть 6
2.1 Основание разработки 6
2.2 Цели и задачи 6
2.3 Проблемы и преимущества работы с марками 7
3. Практическая часть 13
3.1 Используемые инструменты 13
3.1.1 OpenCV 13
3.1.2 Python 14
3.2 Алгоритм работы системы 14
3.2.1 Ключевые точки 15
3.2.2 Томография 17
3.3 Интерфейс системы 19
3.3 Время работы программы 24
4. Заключение и выводы 28
5. Список используемой литературы 30
6. Приложение
На данный момент существует большое количество систем распознавания изображений и образов. Среди них есть как универсальные системы (такие как “Поиск изображений Google”, “Яндекс поиск по картинке” и т.д.), так и узконаправленные программы, созданные для конкретных изображений и фотографий (например,Vivino Wine Scanner - программа для поиска информации о бутылке вина по её этикетке).
Все такие системы выполняют разные функции. От поиска вашего изображения в интернете (т.е. нахождения страниц, где используется ваше изображение), до распознавания образов и символов на картинке и последующий их анализ.
В результате разработки была создана система, которая с большой точностью распознаёт похожие марки. Программа хорошо показала себя на больших количествах марок в базе данных.
Алгоритм работы программы зависит лишь от двух настраиваемых условий:
1. “Коэффициент похожести” ключевых точек
2. Правила проверки “правильности” построенной гомографии
Оба эти условия должны быть подобраны при помощи многочисленных тестов программы с большим количеством исходных вариантов.
Очень важным фактором для правильной работы программы является качество исходной фотографии. Инструкции и инструменты в интерфейсе программы должны максимально улучшить качество загружаемых фотографий, что позволит программе работать быстрее и правильнее.
Специфичность коллекционных марок (отличие двух марок лишь в мельчайших деталях) задаёт очень высокую планку качества работы систем распознавания. Именно поэтому таких систем конкретно для почтовых марок еще не создавали. Это подталкивает на создание дополнительных алгоритмов, которые будут анализировать определённые участки марки (например перфорирование или карту цвета), но эта задача уже на порядок сложнее исходной системы.
Важным аспектом интеграции программы станет поиск виртуальной машины, на которой будут производиться вычисления.
При всех недостатках системы, на момент её интеграции и запуска она будет первой и единственной системой в сегменте почтовых марок. Поэтому работа над ней оправдана в любом случае.
1. Adrian Kaehler. Learning OpenCV 3 / Adrian Kaehler, Gary Bradski : O'Reilly Media - Early Release Ebook - 650 c.
2. Joe Minichino. Learning OpenCV 3 Computer Vision with Python, 2nd Edition I Joe Minichino, Joseph Howse : Packt Publishing - Ebook - 266 c.
3. Michael Beyeler. OpenCV with Python Blueprints / Michael Beyeler : Packt Publishing - Ebook - 230 c.
4. RoboCraft (сайт). OpenCV шаг за шагом (статья) - Электрон, текстовые данные - Режим доступа: http://robocraft.ru/page/opencv/
5. Интуит: национальный открытый университет (сайт). Лекция 4: Начало работы с библиотекой OpenCV (статья) -
Электрон. текстовые данные - Режим доступа: http://www.intuit.rU/studies/courses/l0621/1105/lecture/l 7985?page=4
6. OpenCV - Open documentation - http://docs.opencv.org/
7. Python - Python Documentation - https://www.python.org/doc/