В Ubuntu 12.10, если я наберу
gnome-screenshot -a | tesseract output
это возвращает:
** Message: Unable to use GNOME Shell's builtin screenshot interface, resorting to fallback X11.
Как выбрать текст на экране и преобразовать его в текст (буфер обмена или документ)?
Спасибо!
gnome-screenshot -a
? Кроме того, почему вы передаете вывод в tesseract? Если я не ошибаюсь, gnome-screenshot сохраняет изображение в файл и не «печатает» его ...auto-save-directory
? И что-нибудь там упало? Интересная ссылка: forums.debian.net/viewtopic.php?f=6&t=85683Ответы:
Возможно, уже есть какой-то инструмент, который делает это, но вы также можете создать простой скрипт с некоторым инструментом скриншотов и tesseract, который вы пытаетесь использовать.
Возьмите в качестве примера этот скрипт (в моей системе я сохранил его как
/usr/local/bin/screen_ts
):И с поддержкой буфера обмена:
Он используется,
scrot
чтобы взять экран,tesseract
распознать текст иcat
отобразить результат. Версия буфера обмена дополнительно используетxsel
для передачи вывода в буфер обмена.Примечание :
scrot
,xsel
,imagemagick
иtesseract-ocr
не установлены по умолчанию , но доступны из хранилищ по умолчанию.Вы можете быть в состоянии заменить
scrot
сgnome-screenshot
, но это может занять много работы. Что касается вывода, вы можете использовать все, что может читать текстовый файл (открыть в текстовом редакторе, показать распознанный текст как уведомление и т. Д.).GUI версия скрипта
Вот простая графическая версия сценария OCR, включая диалог выбора языка:
Помимо перечисленных выше зависимостей вам нужно будет установить Zenity fork YAD из PPA webupd8, чтобы скрипт работал.
источник
rm $SCR_IMG.png $SCR_IMG.txt
).scrot
сам по себе не может использовать буфер обмена. Но есть инструменты, подобныеxclip
илиxsel
которые могут делать то, что вам нужно, если это копировать / вставлять текст.| clipboard
в конец финальной строки сценария Салема.Не знаю, нужно ли кому-нибудь мое решение. Вот тот, который работает с Wayland.
Он показывает распознавание символов в текстовом редакторе, и если вы добавите параметр «да», вы получите перевод из инструмента goggle trans (подключение к Интернету обязательно). Перед тем, как вы сможете его использовать, установите tesseract-ocr imagemagick и google-trans. Запустите скрипт, т.е. в gnome, с помощью Alt + F2, когда увидите текст, который хотите распознать. Переместите курсор вокруг текста. Это оно. Этот сценарий был проверен только для гномов. Для другого оконного менеджера это должно быть приспособлено. Для перевода текста на другие языки замените идентификатор языка в строке 25.
источник
Я только что сделал блог о том, как использовать скриншот в наши дни. Несмотря на то, что я нацеливаюсь на китайский, но скриншот и код на английском. OCR - это всего лишь одна из функций.
Особенность для моего OCR:
Откройте konsole + vimx ИЛИ gedit для дальнейшего редактирования.
Для vimx + english включите проверку правописания.
Поддержка динамического выбора языка без жесткого кода.
Диалог прогресса при конвертации и тессеракте, который идет медленно.
Код функции:
Код звонящего:
Объедините эти 2 кода в один сценарий оболочки для запуска.
Снимок экрана 1:
Снимок экрана 2:
источник
Идея заключается в том, что каждый раз, когда новые файлы скриншотов появляются в папке, запустите tesseract OCR и открывайте их в редакторе файлов.
Вы можете оставить этот работающий скрипт в выходной директории вашей любимой выходной директории скриншотов
Вам нужно, чтобы это было установлено
источник
Я создал бесплатную программу с открытым исходным кодом для этой цели:
https://danpla.github.io/dpscreenocr/
источник