REKLAMA

Problem ANPR. Automatyczne rozpoznawanie tablic rejestracyjnych

Na wlocie do Wrocławia od strony Warszawy znajdują się dwie bramki. Na pierwszej z nich zainstalowano dwie kamery oraz radary mierzące prędkość, zaś na drugiej, nieco dalej, umieszczono tablice wyświetlające napisy przy pomocy diod LED. Gdy kierowca przejedzie przez pierwszą bramkę zbyt szybko, na tablicy odpowiadającej jego pasowi ruchu pojawi się ostrzeżenie wraz z numerem rejestracyjnym jego samochodu. Jak to możliwe?

Miłośnicy teorii spiskowych mogliby podnieść raban o ukrytych w samochodach nadajnikach, rozgłaszających radiowo numer tablicy rejestracyjnej, ale prawda okazuje się być o wiele prostsza. Do rozpoznania numeru tablicy rejestracyjnej wystarczy bowiem w zupełności obraz zarejestrowany umieszczoną nad ulicą kamerą oraz komputer, a właściwie nawet trochę lepszy mikrokontroler, który taki obraz w odpowiedni sposób przetworzy.

O ile jednak zrobienie zdjęcia nie należy do zbyt dużych programistycznych wyzwań, to odzyskanie z takiego zdjęcia numeru tablicy rejestracyjnej w postaci czystego tekstu jest już nietrywialnym zadaniem. Spróbujmy więc się z nim zmierzyć...

Zagadnienia poruszane w tym artykule:

  • Problem;
  • Jak zacząć;
  • Narzędzia;
  • Filtry splotowe;
  • Splotowe sieci neuronowe;
  • OpenCV;
  • Wyszukiwanie tablicy na obrazie;
  • Metoda find_light_areas;
  • Metoda generate_blackhat;
  • Metoda generate_detail_areas;
  • Metoda generate_plate_candidate_areas;
  • Metoda find_candidate_contours;
  • Rozpoznawanie liter;
  • Dane treningowe;
  • Sieć neuronowa;
  • Czyli działa?
  • Skuteczność;
  • Potencjał do poprawy.

Artykuł pochodzi z magazynu Programista nr 100 (1/2022). Magazyn jest z przełomu stycznia i lutego 2022 r. Szczegółowy spis treści wydania nr 100: https://programistamag.pl/programista-1-2022-100/

Autorem artykułu jest Wojciech Sura. Programuje 30 lat, z czego 15 komercyjnie; ma na koncie aplikacje desktopowe, webowe, mobilne i wbudowane – pisane w C#, C++, Javie, Delphi, PHP, JavaScript i w jeszcze kilku innych językach. Obecnie pracuje jako architekt w firmie WSCAD, rozwijającej oprogramowanie nowej generacji CAD dla elektrotechników.

>>POBIERZ FRAGMENT TEGO ARTYKUŁU<<