W Ubuntu 12.10, jeśli piszę
gnome-screenshot -a | tesseract output
zwraca:
** Message: Unable to use GNOME Shell's builtin screenshot interface, resorting to fallback X11.
Jak mogę wybrać tekst z ekranu i przekonwertować go na tekst (schowek lub dokument)?
Dziękuję Ci!
gnome-screenshot -a
? Także dlaczego potokujesz wyjście do tesseract? Jeśli się nie mylę, zrzut ekranu gnome zapisuje zdjęcie w pliku i nie „drukuje” go ...auto-save-directory
? I czy coś tam wrzuciło? Ciekawy link: forums.debian.net/viewtopic.php?f=6&t=85683Odpowiedzi:
Być może jest już jakieś narzędzie, które to robi, ale możesz również utworzyć prosty skrypt za pomocą narzędzia do zrzutów ekranu i tesseract, gdy próbujesz użyć.
Weźmy jako przykład ten skrypt (w moim systemie zapisałem go jako
/usr/local/bin/screen_ts
):I ze wsparciem schowka:
Służy
scrot
do robienia ekranu,tesseract
rozpoznawania tekstu icat
wyświetlania wyniku. Wersja schowka dodatkowo wykorzystujexsel
potok wyjściowy do schowka.UWAGA :
scrot
,xsel
,imagemagick
itesseract-ocr
nie są instalowane domyślnie, ale są dostępne w domyślnych repozytoriach.Możesz być w stanie wymienić
scrot
zgnome-screenshot
, ale może to zająć dużo pracy. Jeśli chodzi o dane wyjściowe, możesz użyć wszystkiego, co może odczytać plik tekstowy (otwórz za pomocą Edytora tekstu, pokaż rozpoznany tekst jako powiadomienie itp.).Wersja skryptu z graficznym interfejsem użytkownika
Oto prosta graficzna wersja skryptu OCR, w tym okno dialogowe wyboru języka:
Oprócz wyżej wymienionych zależności musisz zainstalować widelec Zenity YAD z PPA webupd8, aby skrypt działał.
źródło
rm $SCR_IMG.png $SCR_IMG.txt
).scrot
sam w sobie nie może korzystać ze schowka. Ale istnieją narzędzia, takie jakxclip
lubxsel
że może robić to, co trzeba, jeśli jest do kopiowania / wklejania tekstu.| clipboard
na końcu ostatniego wiersza skryptu Salem.Nie wiem, czy ktoś potrzebuje mojego rozwiązania. Oto taki, który biegnie z Waylandem.
Pokazuje rozpoznawanie znaków w edytorze tekstu, a jeśli dodasz parametr „tak”, otrzymasz tłumaczenie z narzędzia goggle trans (połączenie internetowe jest obowiązkowe). Zanim będziesz mógł z niego korzystać, zainstaluj tesseract-ocr imagemagick i google-trans. Uruchom skrypt, tj. W gnome z Alt + F2, gdy zobaczysz tekst, który chcesz rozpoznać. Przesuń kursor wokół tekstu. To jest to. Ten skrypt został przetestowany tylko dla gnome. W przypadku innego menedżera okien musi być to możliwe. Aby przetłumaczyć tekst na inne języki, zastąp identyfikator języka w wierszu 25.
źródło
Właśnie napisałem blog na temat korzystania ze zrzutów ekranu we współczesnych czasach. Mimo że kieruję reklamy na język chiński, ale obsada ekranu i kod są w języku angielskim. OCR jest tylko jedną z funkcji.
Funkcja mojego OCR:
Otwórz w konsoli + vimx LUB gedit, aby dalej edytować.
W przypadku vimx + angielskiego włącz sprawdzanie pisowni.
Obsługuje dynamiczny wybór języka bez twardego kodu.
Postępuj w oknie dialogowym, gdy konwersja i tesseracting są powolne.
Kod funkcji:
Kod dzwoniącego:
Połącz ten 2 kod w skrypcie z pojedynczą powłoką, aby uruchomić.
Zrzut ekranu 1:
Zrzut ekranu 2:
źródło
Chodzi o to, że za każdym razem, gdy w folderze pojawią się nowe pliki zrzutu ekranu, uruchom na nim tesseract OCR i otwórz w edytorze plików.
Możesz zostawić uruchomiony skrypt w katalogu wyjściowym swojego ulubionego katalogu wyjściowego zrzutu ekranu
Będziesz potrzebował tego do instalacji
źródło
W tym celu stworzyłem darmowy i otwarty program:
https://danpla.github.io/dpscreenocr/
źródło