Итак, мой текущий личный проект заключается в том, чтобы иметь возможность автоматически захватывать скриншоты из игры, распознавать текст и подсчитывать количество вхождений заданных слов.
Проведя весь вечер в поисках различных OCR-решений, я пришел к выводу, что большинство OCR-пакетов предназначены для отсканированного текста. Если и существуют какие-либо пакеты, которые могут надежно считывать экранный текст, то они значительно превышают бюджет этого любителя.
Я читал некоторые другие вопросы, и самым близким, который я нашел, были движки OCR, предназначенные для чтение с экрана.
Мне кажется, что читать отрендеренный текст должно быть намного проще, чем печатный и отсканированный текст. Линии всегда прямые, и любая данная буква всегда будет отображаться с одним и тем же представлением пикселей (в любом случае, в основном). Кроме того, почему бы не использовать фактический файл шрифта (если он у вас есть) в качестве шпаргалки для распознавания символов? С такой системой мы могли бы достичь 100% точности.
Предполагая, что у вас есть файл шрифта для шпаргалки, а исходное изображение идеально квадратное и не содержит шума, как вы будете распознавать символы с экрана?
(Проблемы, которые я могу предвидеть, — это линии пользовательского интерфейса и изображения, которые могут запутать любую грубую попытку угадать пиксели.)
Если вы уже знаете о бесплатном пакете OCR с открытым исходным кодом, предназначенном для чтения с экрана, сообщите мне об этом. Я немного сомневаюсь, что это обнаружится, поскольку никто из других искателей, похоже, тоже не получил зацепку.
Интерфейс Python предпочтительнее, но нищие не могут выбирать.
РЕДАКТИРОВАТЬ:
Чтобы уточнить, я ищу предложения по дизайну для решения OCR, которое специально разработано для чтения текста со скриншотов. Популярные инструменты, такие как tesseract (упомянутые в вопросе, который я связал), в лучшем случае трудно использовать, потому что они не предназначены для исходного файла такого типа.