Время прочтения: 3 мин.
Обрабатывать материал вручную, традиционным просмотром телепрограмм, даже если вы большой любитель нашего телевидения, будет слишком долго и затратно. Второй способ — это использование каскадов Хаара (системы признаков цифрового изображения, используемой в распознавании образов) или обучение собственной нейронной сети. Но тут необходимы глубокие познания в области компьютерного зрения и искусственного интеллекта, которые есть не у всех…
Наиболее простым и доступным вариантом является поиск упоминания наших услуг или продуктов в тексте рекламы. Для этого будет необходимо извлекать текст из покадровой разбивки ролика рекламы, с чем нам и поможет библиотека Tesseract.
Tesseract – OCR библиотека, предназначенная для конвертации изображений, содержащих текст, в текстовые данные.
В качестве тестового примера мы будем используем кадр из рекламы Сбербанка:
Для распознавания текста необходимо выполнить следующие действия:
- установить и импортировать необходимые библиотеки:
- указать расположение исследуемого файла и распознать находящийся на нем текст.
Как можно заметить, качество полученного текста далеко от идеального. Это связано с тем, что в процессе распознавания используется учебный набор для букв английского алфавита.
Для того, чтобы изменить используемый учебный набор для русского алфавита, необходимо выполнить следующие действия:
- скачать учебный набор rus.traineddata и добавить его в папку с учебными наборами.
- указать язык, с которым необходимо работать, добавив строку lang = «rus» в качестве параметра для метода image_to_text
Выполнение данных шагов позволит улучшить качество распознанного текста.
На данном этапе распознавание текста даёт хорошие результаты, которые уже могут быть объединены с методами для поиска упоминаний банков в тексте, но, если вы хотите реализовать распознавание текста на изображении, и вас не удовлетворяют полученные результаты, можно улучшить результат путём бинаризации исследуемого изображения.
Бинаризация изображения – это разделение пикселей на 2 группы: чёрные и белые. Для проверки принадлежности к определённой группе необходимо узнать, к чему ближе значение пикселя: к белому или к черному.
Ниже представлен код, позволяющий преобразовать изображение в чёрно-белое.
Проверим качество распознавания, после преобразования изображения:
Таким образом, буквально с помощью нескольких строк кода, нам удалось разработать систему распознавания текста на изображении, результат работы которой может быть применён для дальнейшего анализа текста на наличие упоминания банков.