Эта проблема потребует много работы с использованием различных технологий.Я постараюсь написать простой пошаговый процесс, которому вы можете следовать.Я хотел бы отметить, что это не будет возвращать очень высокий уровень точности и будет зависеть от того, насколько точен каждый компонент.
- Извлечение контуров из изображений: Opencv имеет простое руководство по контурной обработке.Попробуйте найти правильное количество итераций для морфологических преобразований, чтобы изображение и текст рядом с ним были заштрихованы как один контур
- Используйте OCR для извлечения текста из этих контуров: Tesseract OCR, вероятно, лучший вариант, который выиметь.Возможно, вам придется преобразовать изображение в двоичный файл или в оттенки серого в качестве шага предварительной обработки, поэтому улучшите свои результаты.
- Создайте корпус, который определяет, какой текст соответствует скидке: что-то столь же простое, как и список Python.Составьте список ключевых слов, которые обозначают рекламное предложение / скидку.Сопоставьте результаты своего OCR с этим корпусом, чтобы определить, говорит ли текст о предложении.
Извините, но я не могу разглядеть небольшие логотипы рядом с описаниями на ваших изображениях.Если какой-либо небольшой штамп / логотип соответствует скидке, попробуйте использовать методы сопоставления с шаблоном.