Не так давно перед нами стояла задача найти и извлечь печати с документов. Зачем? Например, для проверки наличия печатей в договорах с двух сторон (участников договора). У нас в закромах уже был прототип для их поиска, написанный на OpenCV, но он был сыроват. Решили откопать данный реликт, стряхнуть с него пыль и на его основе сделать рабочее решение.
Большинство приемов, описанных здесь, можно применить и вне задачи поиска печатей. Например:
- цветовая сегментация;
- поиск круглых объектов / окружностей;
- конвертация изображения в полярную систему координат;
- пересечение объектов, Intersection over Union (IoU, Коэффициент Жаккара).
В итоге, у нас было два варианта: решать с помощью нейронных сетей или же воскресить прототип на OpenCV. Почему мы решили взять OpenCV? Ответ в конце статьи.