Documente Academic
Documente Profesional
Documente Cultură
1. Descrierea problemei
Acest proiect îşi propune studierea unor tipuri şi topologii de RNA destinate
recunoașterii semnelor rutiere de circulație. Tipul de RNA implementat în mediul Google
Colab a fost cel al Reţelei neuronale convolutionale.
Setul de date utilizat conţine imagini cu semne de circulatie dintr-o baza de date cu peste 50
000 de imagini de acest fel.
Pentru antrenarea reţelelor au fost folosite imagini sortate in functie de semnul de circulatie
prezent in acestea, avand 43 de semne de circulatie a caror recunoastere urmeaza a fii
implementata, iar pentru testarea acestora sunt folosite 12600 imagini cu semne de circulatie
dintre cele folosite la antrenare.
Semnele care urmeaza a fi recunoscute sunt:
1
2 Conv2D layer (filter=32, kernel_size=(5,5), activation=”relu”)
MaxPool2D layer ( pool_size=(2,2))
Dropout layer (rate=0.25)
2 Conv2D layer (filter=64, kernel_size=(3,3), activation=”relu”)
MaxPool2D layer ( pool_size=(2,2))
Dropout layer (rate=0.25)
Flatten layer to squeeze the layers into 1 dimension
Dense Fully connected layer (256 nodes, activation=”relu”)
Dropout layer (rate=0.5)
Dense layer (43 nodes, activation=”softmax”)
2
Figura 1 Captura de ecran din Google Collab
Algoritmul incepe cu declararea unui dictionar cu toate semnele de circulatie care sunt
prezente in imagini (Fig 1). Apoi sunt verificate imaginile incarcate in drive si clasificate pe baza
la arhitectura directoarelor in care sunt salvate. In Figura 2 se poate vedea structura setului de
date pentru antrenare. Ulterior se verifica daca imaginile pot fii citite si validitatea lor prin
afisarea a 26 de imagini aleatorii.
Dupa ce s-a verificat valididitatea setului de date de intrare se trece la citirea acestora,
conversia acestora in siruri numpy si amestecarea lor (Figura 3)
3
Figura 3 Citirea si amestecarea datelor de intrare
5. Rezultate experimentale
Obitinand un model care pare sa fie antrenat corect mai ramane doar sa il testam. In
Figura 7 avem algoritmul de testare si precizia cu care modelul a prezis corect semnul de
circulatie stiind deja pentru fiecare imagine de test care este semnul continut de aceasta.
In Figura 8 avem o ilustratie care arata pentru fiecare semn datele reale si cele prezise de
algoritm, in speta, semnul de circulatie din imagine.
5
6. Concluzii
Aplicaţia dezvoltată şi-a propus recunoasterea unor semne de circulatie uzuale. Algoritmul a
fost antrenat cu succes obtinand o validare aproape completa, iar rezulatele recunoasterii
semnelor de circulatie sunt de 98.6% recunoastere corecta pentru setul de date rulat in algoritmul
de testare.
Bibliografie
[1]. Alex K, Ilya S, Geoffrey H, ImageNet Classification with Deep Convolutional Neural
Networks, Neural Information Processing Systems, 2012.
[2]. A. Zelinsky, Learning OpenCV---Computer Vision with the OpenCV Library, IEEE
Robotics & Automation Magazine, 2009.
[3]. Johannes S, Marc S, Jan S, Christian I, The German Traffic Sign Recognition
Benchmark: A multi-class classification competition, The 2011 International Joint
Conference on Neural Networks, 2011.
6