Problemy w wykrywaniu znaków drogowych
ajbardziej złożoną, a zarazem bardzo istotną, częścią automatycznego systemu wykrywania znaków drogowych jest detekcja. Dlatego bardzo istotne jest, aby na tym etapie system był możliwie jak najefektywniejszy. Natomiast to co ogranicza precyzyjność i prędkość działania dostępnych rozwiązań to różnego typu trudności, a są nimi np.:
- trudne warunki atmosferyczne (śnieg, deszcz, mgła)
- słabe oświetlenie
- dodatkowe źródła światła o różnej kolorystyce
- zmiany natężenia, odbicia światła
- wyblakłe, uszkodzone lub pochylone znaki drogowe
- częściowe przesłonięcie znaku przez inne obiekty tj.: drzewa, samochody, reklamy
- rzucanie cienia przez inne obiekty na znak
- problemy z odczytaniem i zrozumieniem treści tabliczki uzupełniającej dołączonej do znaku drogowego
- rozmycie wywołane drganiami podczas poruszania się po nierównościach powierzchni jezdnej drogi i niedostatecznym oświetleniem
- rozmiar znaku w kadrze zależy od odległości pomiędzy znakiem a kamerą
- różnice w kolorze i piktogramach znaków poza obszarem danego państwa
System detekcji i rozpoznawania znaków drogowych wersja na Androida
arzeniem wielu kierowców jest samochód poruszający się samodzielnie. Pomimo faktu, że polska nazwa "samochód" kojarzy się z maszyną poruszającą się bez ingerencji człowieka, w rzeczywistości aby podróżować bezpiecznie potrzebny jest doświadczony i rozsądny kierowca. W obecnym czasie angażuje się wiele środków dla zapewnienia jak największego bezpieczeństwo podróżujących samochodami. Ograniczenia, specjalne znaki drogowe, kontrole radarowe, mają poprawić bezpieczeństwo i organizację ruchu drogowego. W dużej mierze bezpieczeństwo zależy także od kierowcy, który pod wpływem różnych czynników może stanowić zagrożenie dla ruchu drogowego. Wiele producentów samochodów stara się zapewnić swoim użytkownikom jak najbardziej bezpieczne pojazdy, wypełnione najnowszymi systemami zapewniającymi poprawę bezpieczeństwa jazdy tj.: ABS, ESP, ASR i wiele innych.
Spore grono kierowców nie dostrzega tak podstawowych rzeczy jak znaki drogowe, które ostrzegają, informują i nakazują dostosowanie się do przepisów ruchu drogowego. Może to być spowodowane niekorzystnymi czynnikami rozpraszającymi kierującego tj.: zmęczenie, upojenie alkoholowe, gorsza percepcja, małe doświadczenie oraz wiele innych. Nawet jeśli prowadzący auto spełnia wszystkie kryteria idealnego kierowcy to nadal jest ryzyko, że nie zauważy np. znaku zakazu lub nakazu, co może być opłakane w skutkach. Nie zawsze można winić za to kierowcę, gdyż racjonalność umieszczania kolejnych znaków na polskich drogach jest często nieuzasadniona. Dziesiątki znaków zostają umieszczone w jednym miejscu, a percepcja kierowcy może nie wyłapać najbardziej ważnych w danej sytuacji. Dlatego system wizyjny wyłapywania znaków drogowych ma sens w takiej sytuacji. Przy niezastosowaniu się do przepisów ruchu drogowego można dostać mandat lub, w najgorszym wypadku, spowodować wypadek lub kolizję drogową. Wydaje się, że zastosowanie takiego systemu mogłoby ograniczyć tego typu sytuacje, dlatego producenci aut zdecydowali się umieszczać systemy rozpoznawania znaków drogowych nie tylko we flagowych modelach swoich marek, ale także w tańszych tj. Ford Focus. Pierwszym autem z tego typu systemem był Opel Insignia, jednak od tego czasu wielu producentów umieściło już w swoich samochodach podobne urządzenia.
Celem wielu naukowców i konsorcjów motoryzacyjnych jest stworzenie pojazdu poruszającego się bez ingerencji kierowcy. Niegdyś badania tego typu nad bezzałogowymi pojazdami były intensywnie prowadzone przez struktury wojskowe. Teraz w obliczu zwiększonej ilości samochodów na drogach zaczęto wprowadzać techniki automatyzacji do użytku codziennego. W przyszłości komunikacja będzie w pełni zoptymalizowana, za sprawą nowoczesnych technologii. Globalny projekt Intelligent Transportation System (ITS) jest przykładem na to jak w przyszłości będzie wyglądać transport, nastawiony na polepszenie bezpieczeństwa, oszczędność paliwa, skrócenie czasu podróży itd. Do tego celu pojazdy muszą być wyposażone w specjalne detektory, które będą analizować całą sytuację na drodze i podejmować trafne decyzje w ułamku sekundy. Firma Google od końca 2010 roku testuje samochody, które nie potrzebują kierowcy do bezpiecznego poruszania się w ruchu drogowym. Auta wyposażone są m.in. w rejestratory video, czujniki radarowe, laserowe czujniki odległości wspomagane dokładnymi mapami terenu. Prototypy mają już za sobą nawet 200 000 kilometrów bezkolizyjnej jazdy po drogach publicznych, badania są więc w bardzo zaawansowanym stadium.
Tematem projektu jest stworzenie aplikacji umożliwiającej efektywną detekcję i identyfikację znaków drogowych w czasie rzeczywistym. Założenia dotyczące projektu aplikacji są następujące:
- wykorzystanie prostej analizy obrazu w celu wykrywania i detekcji znaków drogowych
- działanie na platformie mobilnej i wykorzystanie kamery wbudowanej w urządzenie typu smartfon do przechwytywania obrazu
- możliwie największa wykrywalność znaków
- działanie w czasie rzeczywistym
Ostatnie z założeń wymaga dodatkowego wyjaśnienia. Działanie w czasie rzeczywistym, oznacza bowiem ograniczenie czasowe związane z przetwarzaniem obrazu, aby żaden znak drogowy nie został pominięty. Rysunek przedstawia hipotetyczną sytuację drogową. Można założyć, że samochód porusza się na autostradzie z maksymalną dopuszczalną prędkością na terenie Polski, czyli 140 km/h. Kamera rejestrująca obraz znajduje się w odległości 40 metrów od znaku. Należy założyć, że odległość 40 metrów jest to maksymalny dystans, przy którym obraz z kamery wizyjnej pozwala na prawidłowe rozpoznanie znaku.
Można wówczas obliczyć czas jaki jest potrzebny kierowcy pojazdu na przejechanie dystansu 40 m z prędkością 140 km/h (czyli ok 39m/s), aby określić ograniczenie czasowe algorytmu. Ograniczenie to można wyliczyć ze wzoru na czas w ruchu jednostajnym prostoliniowym w sposób następujący :
Powyższe wyliczenia wskazują na fakt, że założeniem projektu jest stworzenie systemu detekcji i rozpoznawania znaków drogowych, który potrafi dokonywać rozpoznawania znaków w czasie krótszym niż 1.03 sekundy, aby móc powiadomić kierowcę o wystąpieniu znaku w odpowiednim czasie.
Projekt został stworzony w oparciu o bibliotekę graficzną OpenCV.
O tym jakiego typu problemy napotkaliśmy w związku z tworzeniem aplikacji można znaleźć w artykule dotyczącym trudności w wykrywaniu znaków.
System w działaniu przedstawia zdjęcie poniżej.