2017-01-23 7 views
0

Я работаю над проектом, чтобы читать текстовые фразы из экранной консоли запущенной игры (с помощью периодического снимка экрана) в реальном времени.Прочитать текст с экрана в реальном времени

Пример экрана Minecraft консоли на экране:

img

бы это лучше всего сделать с помощью библиотеки OCR? Или я могу выполнить OCR, выполнив поиск заданных пикселей на линии сканирования (используя C#), поскольку я задал фразы (пиксельные шаблоны/строки?) Для поиска? Если это так, графические гуру указывают мне в правильном направлении.

Edit: Это должно работать на Windows 7

+2

Если вы извлекаете данные консоли из Minecraft, это сохраняется в журнале. Даже экземпляр одного игрока запускает «сервер», как работает Open to LAN. Это то, что вы хотите прочитать, а не пытаться использовать OCR в реальном времени на пиксельном шрифте. http://www.minecraftforum.net/forums/support/server-support/server-administration/1923720-how-to-check-my-server-logs – CDove

+0

@ user1895086 Minecraft - всего лишь пример. В моих целевых играх нет файла журнала. – quantum

ответ

0

в режиме реального времени.

Как быстро в реальном времени? Современные API-интерфейсы OCR, такие как OCR.space или Google Cloud, довольно быстр, но они по-прежнему принимают ~ 1 с за конверсию, включая время загрузки изображения.

Если это слишком медленно, вы можете попробовать локальную OCR-библиотеку, например Microsoft OCR (C# Example) или коммерческие SDK, такие как Abbyy (очень хорошо, но дорого).

+0

Извините, я должен был быть более конкретным. Сканирование текста один раз в секунду будет достаточно. – quantum

+0

Вы все еще можете использовать [OCR.space] (https://ocr.space) или любой другой * онлайн * OCR api, но, на мой взгляд, вы не можете использовать Microsoft OCR локально, поскольку DLL доступна только для Win 8.1 и выше. => Вы пробовали [Tesseract (здесь пример C#)] (https://github.com/A9T9/Free-Ocr-Windows-Desktop)? Это сложнее, чем Microsoft OCR, но предлагает кросс-платформенную поддержку. – Tienkamp