Obraz na tekst (OCR)
Działa w całości w Twojej przeglądarce. Twoje pliki i dane nigdy nie opuszczają Twojego urządzenia.
O tym narzędziu
Upuść obraz na tę stronę, a słowa, które się na nim znajdują, pojawią się w panelu obok, gotowe do skopiowania. Zrzut ekranu możesz też wkleić prosto ze schowka, co zwykle idzie szybciej niż zapisywanie pliku na dysku. Obsługiwane są PNG, JPEG, WebP i BMP.
Jak dokładnie to działa?
Prawie wszystko zależy od samego obrazu. Zrzuty ekranu i czyste skany drukowanych stron czytają się bardzo dobrze, bo litery są ostre i leżą na równym tle. Zdjęcia z telefonu są trudniejsze: cień, pofalowany papier, poruszenie i odblask kosztują dokładność, a strona sfotografowana pod kątem potrafi wrócić z pomieszanymi wierszami. Pismo odręczne jest poza zasięgiem, bo użyty tu silnik uczył się wyłącznie druku. Kiedy wynik wygląda kiepsko, ponowne zdjęcie na wprost i przy lepszym świetle pomaga bardziej niż jakiekolwiek ustawienie.
Menu języka w nagłówku panelu z tekstem startuje w trybie automatycznego wykrywania: narzędzie odczytuje obraz, patrzy na to, co wróciło, i czyta go ponownie właściwym modelem, gdy słowa wskazują na jeden z siedmiu pozostałych języków. Samo menu przełącza się wtedy na język, na którym się zatrzymało. Automatyczne wykrywanie ma jednak granice. Bardzo krótkie fragmenty dają mu za mało materiału, a tekst w innym systemie pisma pokonuje je całkowicie: model alfabetu łacińskiego puszczony na japoński zwraca szum, którego detektor nie umie umiejscowić. W takich sytuacjach wybierz język samodzielnie. Pomyłka po cichu psuje wynik, bo model czytający w złym języku wymyśla słowa, zamiast zasygnalizować, że coś poszło nie tak. Zmiana języka odczytuje wczytany już obraz jeszcze raz.
Czy mój obraz gdzieś trafia?
Nie. Rozpoznawanie działa wewnątrz przeglądarki na silniku Tesseract skompilowanym do WebAssembly i obsługiwanym przez tesseract.js. Obraz trafia do elementu canvas na twoim komputerze, a tekst wraca z wątku roboczego na tym samym komputerze. W całej ścieżce nie ma serwera, więc nic nie zapisze twoich faktur, skanów dokumentów, wyników badań ani czegokolwiek innego. Możesz otworzyć stronę, odłączyć się od sieci i pracować dalej, o ile model jest już w pamięci podręcznej.
Dlaczego pierwsze odczytanie trwa dłużej?
Każdy język potrzebuje wytrenowanego modelu o wielkości mniej więcej jednego do trzech megabajtów, a do tego dochodzi sam silnik rozpoznawania. Przeglądarka pobiera to przy pierwszym odczycie i zapisuje w IndexedDB, dzięki czemu drugi obraz rusza niemal natychmiast. Przełączenie na język, którego jeszcze nie używałeś, uruchamia jedno dodatkowe pobranie właśnie dla niego. Obrazy o bardzo długim boku są przed odczytem zmniejszane, co przy zdjęciu 12-megapikselowym oszczędza kilka sekund i przy typowej wielkości pisma nie kosztuje dokładności. Gdzie mieszka ta pamięć podręczna, wyjaśnia strona MDN o IndexedDB.
Typowe zastosowania: przepisanie kodu albo adresu ze zrzutu ekranu, wyciągnięcie cytatu ze zeskanowanej strony książki, przeniesienie paragonu do arkusza kalkulacyjnego i odzyskanie tekstu z przysłanego obrazu, kiedy nikt nie ma już oryginalnego dokumentu.