Cyfrowe czytanie

O biurze bez papieru, tj. biurze w którym nie ma dokumentów papierowych mówi się już od kilku lat. Aby jednak przejść na formę elektroniczną dokumentów, należy wpierw skonwertować istniejące już papierowe dokumenty tak, aby przyjęły one postać cyfrową, możliwą do odczytania przez komputer. Jednym słowem ten artykuł będzie o narzędziach zmieniających formę dokumentu z klasycznej na cyfrową - OCR.

O biurze bez papieru, tj. biurze w którym nie ma dokumentów papierowych mówi się już od kilku lat. Aby jednak przejść na formę elektroniczną dokumentów, należy wpierw skonwertować istniejące już papierowe dokumenty tak, aby przyjęły one postać cyfrową, możliwą do odczytania przez komputer. Jednym słowem ten artykuł będzie o narzędziach zmieniających formę dokumentu z klasycznej na cyfrową - OCR.

Kilka słów o...

Programy OCR

Programy OCR

OCR (Optical Character Recognition) jest technologią rozpoznawania pisma przez komputer. W ramach OCR można także wydzielić ICR (Image Character Recognition), przy czym OCR umożliwia rozpoznawanie tekstu pisanego konkretną, ustaloną czcionką, ICR zaś - tekstu pisanego dowolną czcionką, także ręcznie. OCR/ICR jest techniką zamiany graficznej formy napisu na odpowiadający mu ciąg znaków.

Aplikacje OCR wykorzystują skomplikowane algorytmy, aby jak najwierniej odwzorować oryginalny tekst w postaci cyfrowej. Jest to tym trudniejsze, że program musi odczytać różne warianty tekstu drukowanego, pisanego czcionkami o różnych krojach i w różnych kolorach. Nie wspominam już o piśmie ręcznym, bo tu różnych czcionek i krojów może być tyle, ilu jest ludzi.

Aplikacje OCR, a w zasadzie całe systemy są powszechnie używane tam, gdzie przetwarza się dane na ogromną skalę (urząd statystyczny, biblioteki, firmy badające opinię publiczną, a także ZUS). Systemy te kosztują jednak bardzo wiele i raczej nie nadają się dla zwykłych użytkowników. Do nich kierowana jest oferta znacznie tańszych programów, przydatnych w małych biurach, a nawet w domu.

Koszt stanowiska do rozpoznawania znaków nie jest wysoki, bo aplikacje OCR nie wymagają skomplikowanego sprzętu. Przeważnie wystarczy komputer z procesorem klasy Pentium, 32 MB pamięci i tani skaner stołowy 300 dpi. Pogram można kupić i stanowi on w zestawie jeden z najdroższych elementów. Jednak do większości sprzedawanych na naszym rynku skanerów dołączane jest gratis, oprócz oprogramowania graficznego, także oprogramowanie OCR. Niestety, poza nielicznymi przypadkami są to programy obcojęzyczne, pozbawione polskich słowników, rozpoznające polskie znaki tylko metodą "uczenia się", a nie na podstawie porównań z wzorcami słów. A właśnie technika rozpoznawania tekstów przy wsparciu słownika jest znacznie wydajniejsza i szybsza.

Programy OCR mają bardzo szerokie zastosowanie - praktycznie każdy, kto ma komputer w biurze lub w domu, mógłby z nich korzystać. Pisząc na przykład pracę dyplomową czy inną wymagającą cytowania obszernych fragmentów różnych publikacji, zamiast żmudnie przepisywać, wystarczy te fragmenty zeskanować i za pomocą programu OCR zamienić na edytowalną postać cyfrową. Innym przykładem może być skanowanie do arkusza kalkulacyjnego tabel zawierających dane liczbowe, które w arkuszu będą podlegały dalszej obróbce. Skanując i przetwarzając tabele programem OCR, można zminimalizować ryzyko pomyłki, gdyż po zastosowaniu własnych mechanizmów weryfikujących zgłasza on fragmenty, co do których nie jest pewien wyniku rozpoznania.

Aplikacje OCR znajdą także zastosowanie podczas tworzeniu książek elektronicznych, które stają się coraz bardziej popularne, głównie ze względu na możliwość zastosowania w nich hiperlinków, a także inne interaktywne właściwości.

OCR z bliska

Dziewięć sposobów na dobry efekt

1. Używaj dokumentów oryginalnych dobrej jakości.

Szczególnie musisz się strzec zabrudzeń (np. z kserografu czy maszyny faksującej), które mogą być rozpoznane przez program jako znaki.

2. Skanuj oryginały z możliwie najwyższą rozdzielczością.

3. Jeśli tło dokumentu jest kolorowe lub obłożone teksturą albo napisy są w innym kolorze niż czarny, skanuj dokument w trybie kolorowym

4. Jeżeli oryginał jest czarno-biały lub w miarę przejrzysty, można go skanować w trybie odcieni szarości, aby zmniejszyć rozmiary pliku graficznego i przyspieszyć pracę

5. Jeżeli sterownik Twojego skanera umożliwia ustawienie filtru zdejmującego tzw. morę, a także zwiększenie wartości parametrów obrazu w trakcie skanowania (kontrast i jasność) - zrób to.

6. Pamiętaj, że każde zniekształcenie znaków w oryginale może być przyczyną złego rozpoznania.

Skanując stronę z grubego magazynu czy książki, zadbaj o to, aby znaki znajdujące się blisko środka były jak najmniej zniekształcone. Jeżeli stronę z tekstem możesz wyrwać lub wyciąć z publikacji, będzie to najlepszym rozwiązaniem.

7. Zadbaj o to, aby skanowany tekst był dobrze wypoziomowany, tzn. aby kartka z dokumentem była prosto włożona do skanera. Wprawdzie dzisiejsze programy radzą sobie z niewłaściwie ułożonymi dokumentami i mają specjalne mechanizmy poziomujące, lecz wydłuża to przetwarzanie tekstu i zwiększa ryzyko powstania błędów.

8. Pamiętaj, że nikt nie napisał jeszcze programu doskonałego. Kiedy OCR zaznaczy bloki tekstu, sprawdź, czy zrobił to dobrze i czy ustawił je w dobrej kolejności. To wszystko ma wpływ na plik wynikowy.

9. Zawsze ustawiaj najwyższy możliwy poziom dokładności sprawdzania. Proces będzie trwał dłużej, ale za to zmniejszysz współczynnik błędów.

Przyjrzyjmy się standardowej pracy programu OCR. Zamianę klasycznej formy dokumentu (kartka, faks, film, slajd, folia) na cyfrowy (plik ASCII, edytora tekstu, bazy danych, arkusza kalkulacyjnego) można podzielić na dwa główne etapy: ustalanie obrazu i rozpoznawanie obrazu. Ustalanie obrazu polega na rozróżnieniu poziomu kontrastu między punktami, z których składa się obraz i zarysowaniu w ten sposób konturów znaków. Nie bez znaczenia jest rozdzielczość zeskanowanego dokumentu - im większa, tym lepiej.

Zwiększenie rozdzielczości powoduje także powiększenie pliku, będącego efektem skanowania, ale przeważnie 300 dpi całkowicie wystarcza. Wyższą rozdzielczość należy stosować w przypadku dokumentu zawierającego bardzo drobną czcionkę. Oddzielną sprawą jest to, czy skanowany dokument może być kolorowy, czy musi być czarno-biały. Starsze programy OCR właściwie rozpoznawały tylko dokumenty zeskanowane w tzw. trybie konturów line-art.

Ubocznym skutkiem tego rozwiązania było znaczne zniekształcenie znaków, a w przypadku dokumentów zawierających teksturę w tle lub znaki w jasnych kolorach, powstawało bardzo wiele błędów, ponieważ program rozpoznawał teksturę jako części innych znaków.

Dzisiejsze programy OCR pozwalają na skanowanie dokumentów w odcieniach szarości, a nawet w 32-bitowej palecie kolorów. Przy tym bez większych problemów rozpoznają znaki w innych kolorach niż czarny i odróżniają je od tekstury.

Drugim etapem konwersji dokumentu jest optyczne rozpoznawanie znaków OCR, które odbywa się pięcioetapowo. Najpierw program identyfikuje i zaznacza bloki znaków i obiekty nie będące znakami (ilustracje) oraz ustala kolejność ich przetwarzania. Można pomóc programowi, precyzyjnie ustawiając krawędzie prostokątów, w które bloki te zostały ujęte. Ilustracje i grafiki program zwykle ignoruje. Drugi etap procesu OCR to rozpoznawanie pojedynczych znaków, zwane często "ekstrakcją właściwości". Program identyfikuje znaki, analizując ich kształty i porównując właściwości z "zestawem reguł" opisujących fonty (szeryfowe, bezszeryfowe, pochyłe, ozdobne, pogrubione itp.).


Zobacz również