dotyczy wersji 8.3.1.x; autor: Paweł Snoch
System WEBCON BPS oferuje klientom rozwiązania pozwalające na automatyczne rozpoznanie i rejestrację dokumentów. Ten artykuł stanowi uzupełnienie do już istniejącego: OCR AI – Instalacja . W wersji 8.3 pojawiła się nowa funkcjonalność rozszerzająca dotychczasowe możliwości. Doszło także do usprawnienia dotychczasowych mechanizmów rozpoznania i nauki.
Opis wstępny
Dotychczasowa wersja systemu pozwalała w prosty sposób korzystać z gotowego zestawu zdefiniowanych w projekcie standardowych pól, takich jak np. NIP sprzedającego, Data płatności czy Data sprzedaży. Definicje takich pól były zawarte w importowanych projektach dostarczanych przez firmę WEBCON. We wcześniejszych wersjach systemu, z poziomu Studio, nie było bezpośredniej możliwości dodawania własnych pól do projektów OCR AI.
W najnowszej wersji systemu BPS w razie potrzeby w prosty sposób użytkownik jest w stanie dołożyć nowe parametry. Poniżej zostaną przedstawione dwie propozycje użycia niestandardowych pól OCR:
- Dodanie rozpoznania kodu pocztowego dla standardowego procesu rozpoznania faktur.
- Przykładowa możliwość użycia niestandardowych pól OCR do procesów zupełnie nie związanych z obiegiem faktur.
W końcowym rozdziale artykułu zostanie zaprezentowany proces nauki OCR wraz z informacjami o szczegółach technicznych jakie należy brać pod uwagę.
Dodanie rozpoznania kodu pocztowego dla standardowego procesu rozpoznania faktur
Zakładamy iż użytkownik posiada gotowy proces obiegu faktur (np. opisany w przytoczonym we wstępie artykule). W takim przypadku przechodzimy do zakładki konfiguracji systemu a następnie rozwijamy węzeł projektów OCR AI. Wybieramy projekt do którego pragniemy dodać nieuwzględniane do tej pory przy rozpoznaniu pole. W dolnej części okna pojawia się nowa sekcja: Lista pól niestandardowych. Wybieramy przycisk Dodaj.
Rysunek 1 Kreacja niestandardowych pól w oknie projektu OCR.
W zakładce Ustawienia podstawowe widoczne są dwa pola. W pierwszym wpisujemy nazwę zawierającą znaki alfabetu, cyfry, spacje lub znak podkreślenia. Drugie pole generuje się automatycznie – na podstawie wartości pierwszej kontrolki oraz istniejących w bazie danych niestandardowych pól.
Zakładka Ustawienia wyszukiwania pozwala zdefiniować schemat poszukiwanej frazy. Zasadą jest, aby wzór ten opisać odpowiednim wyrażeniem regularnym "regex" (w razie potrzeby można skorzystać z proponowanego kreatora). Zdefiniowanie regexu nie jest konieczne, dlatego istnieje możliwość pozostawienia odznaczonej opcji Zdefiniuj format pola.
Raz zdefiniowane pole może zostać w przyszłości edytowane. Przy czym generowane ID nie będzie zmieniało swojej wartości. Należy pamiętać, że zmiana w dziale Ustawienia wyszukiwania nie ma wpływu na rozpoznanie istniejącej wcześniej sieci dedykowanych.
Uwaga do pola wyrażenie regularne:
Wpisana wartość spełnia rolę walidatora. Oznacza to, że dla zaprezentowanego u góry przykładu nie będzie możliwości na uwzględnienie przez akcję rozpoznania miejscowości składającej się z więcej niż jednego słowa, np. Sobienie Kiełczewskie Pierwsze. W takim przypadku proces nauki OCR nie przyniesie nam żadnych rezultatów. Wróćmy więc do omawianego pola i dokonajmy niezbędnej korekty.
Rysunek 2 Edycja niestandardowego pola.
Teraz mamy już odpowiednio skonfigurowany projekt. Przechodzimy do procesu korzystającego z rozszerzonego o nowe pola OCR AI projektu. Dodajemy atrybuty tekstowe do których będą wpisywane nowe dane. Następnie uaktualniamy akcję rozpoznania OCR AI korzystającą ze zmienionego wcześniej projektu. W panelu Ustawienia mapowania atrybutów powinniśmy zobaczyć interesujące nas w tym momencie nowe element. W odpowiadającej nowym wierszom kolumnie atrybutów WorkFlow należy wybrać wcześniej utworzone atrybuty tekstowe.
Rysunek 3 Ustawienia mapowania.
Teraz możemy sprawdzić działanie zmodyfikowanego obiegu. Pamiętajmy, że konieczne będzie przeprowadzenie procesu nauki – na fakturze pojawi się kilka numerów pocztowych a nasz projekt powinien nauczyć się, które umieszczać w konkretnych atrybutach.
Przykładowa możliwość użycia niestandardowych pól OCR do procesów nie związanych z obiegiem faktur
Drugi przykład ma na celu demonstrację różnorodności zastosowań niestandardowych pól OCR. Teraz w prosty sposób można wykraczać poza początkową funkcjonalność przetwarzania faktur.
Rozważmy sytuację w której do naszej firmy trafiają dokumenty CV w formie papierowej lub elektronicznej. Chcielibyśmy, aby na podstawie pliku tekstowego został utworzony element procesu – przy okazji filtrując dane według interesującej nas kolejności. Dla ułatwienia pomińmy kreację odpowiednio dobranego wyróżnika – mógłby to być format CV wpisany wcześniej do atrybutu tekstowego (dla faktur braliśmy pod uwagę NIP wystawiającego fakturę, faktury wystawiane przez ten sam podmiot mają najczęściej tę samą strukturę).
Najpierw w zakładce projektów OCR tworzymy Nowy projekt – opcja dostępna z głównego węzła. Następnie w sekcji Lista pól niestandardowych dodajemy interesujący nas zestaw.
Rysunek 4 Kreacja nowego projektu OCR.
Dalej konstruujemy obieg.
Rysunek 5 Obieg rozpoznania CV.
W kroku pierwszym dodany zostaje załącznik. Krok drugi to krok systemowy – tworzenie warstwy tekstowej jako edycja istniejącego załącznika. Krok trzeci – interesujące nas w przykładzie automatyczne uzupełnianie formularza na podstawie CV. Następnie mamy możliwość przeprowadzenia dodatkowej nauki, albo archiwizacji elementu.
W obiegu dodajemy niezbędne akcje rozpoznania OCR oraz nauki OCR.
Rysunek 6 Akcje OCR.
Jak w przypadku rozpoznania faktur tak i teraz, przed rozprowadzeniem procesu warto najpierw sprawdzić jakie efekty przynosi rozpoznanie, aby w razie konieczności akcją nauki OCR AI odpowiednio douczyć sieci dedykowane.
Rysunek 7 Podgląd weryfikacji po przeprowadzonej nauce oraz niezbędnej korekcie w polu Miejsce zamieszkania.
Proces nauki OCR
Wskazane jest, aby takie czynności były wykonywane przez administratora. Posłużmy się przykładem pierwszym. Na początku sieci dedykowane są nieukształtowane, rozpoznawane wartości dla niestandardowych pól OCR AI są bardzo losowe.
Rysunek 8 Wstępne rozpoznanie.
Przed dokonaniem pierwszej fazy nauki możemy zweryfikować wyniki algorytmu. W tym celu aktywujemy tryb ADMIN. Po lewej stronie formularza rozwinie się panel informacyjny. Przechodzimy do Historii elementu (dolna cześć panelu informacyjnego). Rozwijamy szczegóły kroku z akcją rozpoznania dodanych pól. Na końcu znajdują się informacje o akcjach jakie zostały przeprowadzone na ścieżce przejścia.
Rysunek 9 Podgląd wykonanych akcji z poziomu administratora.
W naszym przypadku mamy tylko jedną akcję: Rozpoznaj pozostałe pola. W nowych liniach znajdują się wypunktowane załączniki na jakich znaleziono warstwę tekstową. Dla każdego takiego załącznika wykonała się powyższa akcja. Kliknięcie na interesujący nas element pozwoli nam sprawdzić jakie filtrowanie zostało dokonane na podstawie wprowadzonego wcześniej wyrażenia regularnego.
Rysunek 10 Informacje o rozpoznaniu OCR.
W tooltip’ie widoczne są ID pól jakie wpisaliśmy w zmienionym projekcie OCR. Pierwsza rzecz na jaką trzeba zwrócić uwagę to notacja o tym czy znaleziono odpowiednie dopasowania oraz lista dopasowań z wyliczonym prawdopodobieństwem. Następnie na samym dole okienka znajduje się ewentualna wiadomość o parametrach jakie zostały pominięte – ze względu na zbyt niski poziom dopasowania. Wymienione wpisy warto śledzić w sytuacjach, gdy nauka lub rozpoznanie OCR przynoszą niezadowalające rezultaty – w tej fazie można zorientować się czy nie popełniliśmy błędu definiując niestandardowe pole. Można też wyłapać usterki związane z konfiguracją akcji – np. tworzenie warstw tekstowych na niepotrzebnych załącznikach.
Kolej na niezbędne czynności związane z nauką OCR. Jak poprzednio, warto posiłkować się informacjami z historii akcji nauki.
Rysunek 11 Informacje o nauce OCR.
Jak widać mamy cztery załączniki jakie mają wpływ na rozpoznanie w danej sieci. Należy w takim przypadku wybrać jedną z dwóch możliwości:
- wprowadzić analogiczną naukę na odpowiedniej ilości już istniejących elementach
- utworzyć kilka nowych dokumentów o tym samym wyróżniku i dla nich aktywować proces nauki OCR
Uwaga:
Do nauki sieci dedykowanych bierzemy pod uwagę maksymalnie 100 ostatnich, nie starszych niż rok faktur z tą samą wartością wyróżnika.
Przy kolejnych czynnościach prawdopodobieństwo przyporządkowania właściwej wartości stopniowo będzie wzrastało. W pewnym momencie uzyskujemy oczekiwane wyniki (w przykładzie potrzebne były dwie odbyte nauki).
Rysunek 12 Weryfikacja końcowa.