OCR (Optical Character Recognition – optyczne rozpoznawanie znaków) to technologia umożliwiająca konwersję obrazów zawierających tekst drukowany, odręczny lub maszynowy na dane tekstowe przetwarzalne przez systemy informatyczne. Wyróżnia się spośród innych technologii przetwarzania obrazu możliwością automatycznego wydobywania i strukturyzowania informacji tekstowej z nośników fizycznych lub cyfrowych. OCR działa zwykle w trzech etapach: wstępne przetwarzanie obrazu (korekcja, filtrowanie, kontrast), detekcja i segmentacja znaków, a następnie rozpoznanie za pomocą modeli statystycznych lub sieci neuronowych. Kluczową korzyścią jest uczynienie dotąd niedostępnych cyfrowo treści możliwymi do wyszukiwania i edycji.

Zastosowania i przykłady użycia

OCR jest szeroko stosowany do cyfryzacji dokumentów administracyjnych, zarządzania archiwami, automatyzacji wprowadzania faktur lub korespondencji, automatycznego rozpoznawania tablic rejestracyjnych oraz ułatwiania dostępu do informacji osobom niewidomym lub słabowidzącym. W sektorze bankowym i prawnym przyspiesza procesy obsługi dokumentów. W logistyce umożliwia odczyt skomplikowanych kodów kreskowych czy ręcznie pisanych listów przewozowych.

Główne narzędzia programistyczne, biblioteki i frameworki

Do najważniejszych rozwiązań należą: Tesseract (open source, pierwotnie opracowany przez HP, obecnie rozwijany przez Google), ABBYY FineReader (znane komercyjne rozwiązanie), Google Cloud Vision OCR i Amazon Textract (usługi chmurowe), EasyOCR, PaddleOCR, Kraken (specjalizujący się w historycznych rękopisach) oraz moduły w popularnych pakietach biurowych (Adobe Acrobat, Microsoft OneNote).

Najnowsze osiągnięcia, ewolucja i trendy

Wprowadzenie głębokiego uczenia znacząco poprawiło skuteczność rozpoznawania, zwłaszcza w przypadku pisma odręcznego lub zniszczonych dokumentów. Postępują rozwój modeli OCR wielojęzycznych i kontekstowych oraz automatyzacja przetwarzania złożonych dokumentów (faktury, formularze strukturalne). OCR jest coraz częściej integrowany z procesami ekstrakcji informacji, analizą semantyczną i automatyzacją procesów RPA, co otwiera drogę do coraz bardziej inteligentnych i interaktywnych zastosowań.