Firma geodezyjna skróciła opracowanie operatów o 70%

Zamiast ręcznie przepisywać współrzędne ze skanów starych operatów, zespół wczytuje gotowy plik do systemu GIS. Pierwsza działająca wersja w dwa tygodnie.

O kliencie

UNIMAPTECH to firma geodezyjna, której codzienna praca opiera się na operatach — dokumentacji pomiarowej dostarczanej w postaci plików PDF, często skanów dokumentów mających po kilkanaście lat. Z tych dokumentów trzeba wydobyć współrzędne punktów granicznych i wprowadzić je do programu EW Mapa, żeby dało się na nich dalej pracować.

Ta czynność jest w całości mechaniczna i w całości podatna na błąd: człowiek czyta liczbę ze skanu i przepisuje ją do innego programu. Przy dużych zleceniach oznacza to godziny przepisywania, a pojedyncza pomyłka w cyfrze przekłada się na błąd w położeniu punktu granicznego.

Wyzwanie

Gotowe narzędzia do rozpoznawania tekstu nie radziły sobie z tym materiałem. Operaty to często stare, wyblakłe skany, uzupełniane ręcznie, drukowane na formularzach i — co okazało się osobnym problemem — skanowane bokiem albo do góry nogami. Standardowe OCR zwracało na nich wynik, który trzeba było i tak sprawdzić linijka po linijce, więc oszczędność czasu znikała.

Drugą trudnością był brak kontekstu branżowego. Rozpoznanie ciągu cyfr to za mało — trzeba wiedzieć, które liczby w tym dokumencie są współrzędnymi punktu granicznego, a które numerem działki, datą czy identyfikatorem arkusza. Bez tej wiedzy narzędzie generuje dane, których weryfikacja kosztuje tyle samo co ręczne przepisanie.

Trzecim obszarem, który wyszedł w trakcie, była powtarzalność opisu samego operatu. Niezależnie od ekstrakcji współrzędnych geodeta za każdym razem uzupełniał te same pola: asortyment, zawartość operatu, typ pomiaru i typ pliku, układ współrzędnych i układ wysokościowy. Praca była nudna, a przez to podatna na błędy z rozkojarzenia.

  • Współrzędne punktów granicznych przepisywano ręcznie z PDF-ów operatów do programu EW Mapa
  • Standardowe OCR gubiło się na starych, wyblakłych i ręcznie uzupełnianych dokumentach
  • Skany operatów bywają obrócone o 90 lub 180 stopni, co rozsypywało automatyczne rozpoznawanie
  • Brak kontekstu branżowego w gotowym oprogramowaniu prowadził do błędnych odczytów, które trzeba było wyłapywać ręcznie
  • Opisywanie zawartości operatu — asortyment, typ pomiaru, układy współrzędnych — było powtarzalną pracą przy każdym dokumencie

Rozwiązanie

Powstała aplikacja webowa z dwoma modułami, przełączanymi jednym kliknięciem.

Moduł ekstrakcji punktów przyjmuje operat, kieruje go do rozpoznawania obrazu i wyciąga z niego współrzędne punktów granicznych, a na wyjściu daje plik gotowy do wczytania w EW Mapa. Rozpoznanie jest dostrojone do tego konkretnego rodzaju dokumentu, a nie ogólne. Osobno rozwiązany został problem skanów ułożonych bokiem: układ współrzędnych rozpoznanych fragmentów jest wirtualnie obracany o dziewięćdziesiąt, sto osiemdziesiąt lub dwieście siedemdziesiąt stopni, dzięki czemu dokument zeskanowany w dowolnej orientacji daje ten sam wynik. Użytkownik widzi dokument z zaznaczonymi obszarami, z których pochodzą odczytane dane, więc weryfikacja jest wzrokowa, a nie polega na porównywaniu dwóch list liczb.

Praca idzie wsadowo: dokumenty trafiają do kolejki zadań przetwarzanych po stronie serwera, a postęp widać na żywo. Przed uruchomieniem ekstrakcji aplikacja pokazuje, ilu stron dotyczy operacja, a ponowne przetworzenie wybranych stron dopisuje wyniki zamiast kasować to, co już zostało odczytane — to drobiazg, który przy kilkusetstronicowym operacie decyduje o tym, czy narzędzie jest użyteczne.

Drugi moduł, analiza operatów, jest odpowiedzią na powtarzalność opisu. Ekran dzieli się na podgląd dokumentu i formularz, oba z regulowaną szerokością. Pola opisowe mają gotowe słowniki (asortyment, zawartość operatu, typ pomiaru i pliku, układy współrzędnych i wysokościowe), obsługę ze skrótów klawiszowych oraz zapisywane szablony, które wypełniają cały zestaw pól jednym kliknięciem. Geodeta nie przełącza się między oknami i nie przepisuje tego samego po raz setny.

Dokumenty leżą w prywatnym magazynie plików, udostępnianym wyłącznie przez adresy podpisywane na czas, a uprzywilejowane operacje po stronie serwera wymagają uwierzytelnienia. Dostęp do aplikacji nadaje się przez zaproszenia. Stack: React z TypeScriptem, Supabase (baza, uwierzytelnianie, magazyn plików, funkcje brzegowe), prototyp powstał w Lovable, a dalszy rozwój prowadzony jest w kodzie.

ObszarPrzedPo
Ekstrakcja danych z dokumentówRęczne przepisywanie współrzędnych z PDF do programu EW MapaAutomatyczna ekstrakcja i wygenerowany plik gotowy do wczytania
Skany złej jakościStare i obrócone dokumenty wymagały pracy ręcznejKorekta rotacji i rozpoznawanie dostrojone do operatów geodezyjnych
Praca na wielu dokumentachPlik po pliku, bez kontroli postępuPrzetwarzanie wsadowe z kolejką zadań i podglądem stanu
Opisywanie operatuPrzepisywanie tych samych parametrów przy każdym dokumencieFormularz obok podglądu PDF, skróty klawiszowe i szablony

Efekty

  • Skrócenie czasu opracowania operatu o 70% — liczba potwierdzona przez klienta w podpisanej referencji
  • Działające MVP dostarczone w dwa tygodnie
  • Automatyczna ekstrakcja współrzędnych z operatu i eksport pliku gotowego do wczytania w EW Mapa
  • Korekta obróconych skanów, dzięki której dokument ułożony bokiem nie psuje odczytu
  • Przetwarzanie wsadowe z kolejką zadań zamiast pojedynczych plików
  • Wybór stron do ekstrakcji i ponowne przetworzenie, które dopisuje wyniki zamiast kasować wcześniejsze
  • Drugi moduł — analiza operatów: dokument i formularz opisu obok siebie, ze skrótami klawiszowymi i zapisywanymi szablonami
  • Prywatny magazyn dokumentów z adresami podpisywanymi czasowo i wymuszoną autoryzacją po stronie serwera

Najbardziej mechaniczna część pracy geodety — przepisywanie współrzędnych ze skanu do programu — została zautomatyzowana wraz z jej najbrzydszymi przypadkami: starymi, wyblakłymi i obróconymi dokumentami. Klient zyskał 20% czasu pracy, a pierwsza działająca wersja narzędzia powstała w dwa tygodnie, więc efekt był widoczny, zanim projekt zdążył się rozrosnąć.

Równie istotny okazał się drugi moduł, którego nie było w pierwotnym pomyśle. Opisywanie operatu — te same pola, te same słowniki, przy każdym dokumencie — zostało sprowadzone do formularza obok podglądu dokumentu, ze skrótami klawiszowymi i szablonami. To praca, której nikt nie liczy jako osobnego zadania, a która zjada godziny.

Rozwiązanie jest przygotowane na wzrost: przetwarzanie idzie wsadowo przez kolejkę zadań, a nie plik po pliku, więc większe zlecenie oznacza dłuższe przetwarzanie, a nie więcej pracy człowieka.