Jak działa OCR?

OCR - rozpoznawanie struktury rastrowej

Proces konwersji pliku graficznego do edytowalnego dokumentu podzielony jest na kilka etapów, za które odpowiadają różne zestawy algorytmów.

Pierwszym krokiem jest załadowanie obrazu dokumentu w postaci bitmapy. Następnie zeskanowany tekst jest analizowany na kilka różnych sposobów.

Na początku program OCR dokonuje analizy layoutu i dzieli stronę na poszczególne elementy. Dzięki temu możliwa jest identyfikacja miejsc, w których znajduje się tekst. Ten z kolei dzielony jest na coraz mniejsze elementy: akapity, wersy, słowa i znaki. Na tym etapie dokument zapamiętywany jest jako zbiór pojedynczych znaków.

OCR - rozpoznawanie struktury rastrowej

Następnie znaki te rozpoznawane są przy użyciu poszczególnych algorytmów. Rodzaj i sposób ich wykorzystania zależy od producentów oprogramowania. Nie istnieje jedna, uniwersalna metoda, jednak można wyszczególnić kilka najbardziej popularnych technik:

  1. Podstawową jest rozpoznawanie wzorców. Wówczas program porównuje analizowany obraz z zaimplementowaną bazą danych, zawierającą setki różnych czcionek. Jeżeli dany znak pasuje do znaku z bazy danych, wówczas zostaje uznany za rozpoznany.
  2. Inną metodą jest rozpoznawanie cech. W tym przypadku zadaniem programu jest rozpoznanie cech charakterystycznych dla danego znaku. Może się to odbywać na kilka różnych sposobów, m.in za pomocą klasyfikacji rastra (porównanie znaku z różnymi krojami czcionek), klasyfikacji struktury (znaki zostają rozłożone na krzywe i identyfikowane na podstawie ich położenia), czy klasyfikacji cech (wyszukiwanie charakterystycznych cech danych znaków).
  3. Odrębną techniką, którą również się wykorzystuje, jest ICR (Intelligent Character Recognition). Algorytm ten używany jest głównie w przypadku tekstu pisanego ręcznie. Bazuje na architekturze sieci neuronowej i systemach uczenia się. W przypadku gdy system nie ma pewności czy dany znak został rozpoznany poprawnie, wówczas prosi użytkownika o wskazanie jego poprawnej formy. Wybór ten zostaje zapamiętany i wykorzystany w przyszłości w podobnej sytuacji. Dzięki temu rozwiązaniu, programy oparte o algorytm ICR nieustannie podnoszą swoją skuteczność w rozpoznawaniu pisma odręcznego.

OCR konwersja tekstu ręcznego do elektronicznego

Powyższe algorytmy to tylko część z tych, które wykorzystywane są w systemach OCR. Zazwyczaj programy posiadają ich co najmniej kilka, a rezultat końcowy zależy od porównania wyników analizy każdego z algorytmów.

Kolejnym krokiem jest złożenie tekstu z uprzednio rozpoznanych znaków. Program OCR wykorzystuje bazy słownikowe, za pomocą których na nowo konstruuje poszczególne wyrazy, zdania i akapity. Stosowana jest także korekta gramatyczna dla uzyskania poprawności poszczególnych zwrotów. Następnie cały tekst, tym razem już w formie elektronicznej, budowany jest z powrotem na podstawie wcześniej przeprowadzonej analizy layoutu.

W jednej z ostatnich faz całego procesu użyte zostają algorytmy mające na celu poprawę jakości danego tekstu. Ich zadaniem jest również usunięcie wszelkiego rodzaju szumów i wad, które mogłyby utrudnić odczytanie treści.

Etapem końcowym jest zapis pliku w jednym z pożądanych formatów, np. .pdf, .txt czy .doc. Najczęściej wykorzystywany format PDF posiada po zakończeniu OCR dwie warstwy: jedną z nich stanowi obraz (skan), drugą jest tekst, który możemy swobodnie zaznaczać i przeszukiwać.

Możliwości biznesowego wykorzystania OCR są szersze, jedną z nich jest automatyczna rejestracja wszelkiego rodzaju formularzy, na podstawie treści rozpoznanej w skanowanym dokumencie. Więcej o tym w następnym wpisie.

 

One comment

  1. […] znajduje się na tej stronie. Są tam również artykuły dot. historii OCR-a, schematu działania (o tym już pisałem na blogu), a także o najpopularniejszych […]

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.

Yet Another Social Plugin powered by TutsKid.com.