Keras Retinanet kullanılarak, Olasılık ve İstatistik dersi kapsamında oluşturulan "Araç Tespit Algoritması" kaynak kodları.
![]() Barış Azar Üye |
![]() A. Ahmet Durmaz Üye |
![]() Yusuf Kızılgedik Üye |
NST-UYZ projesinde kullanılan NST-v3.3 veri setinin küçük bir kısmı seçilip sadece otomobil etiketleri kalacak şekilde düzenlenmiştir. Elde edilen veri seti, bu proje kapsamında ResNet50 modelinin eğitiminde kullanılacaktır. NST-v3.3 veri seti bir YOLO veri seti olduğundan dolayı "scripts" klasörü içerisinde bulunan Python scriptleri ile PascalVOC tipine çevrilmiştir.
└── dataset
├── Annotations
│ ├── 1.xml
│ ├── 2.xml
│ └── ....
├── ImageSets
│ └── Main
│ ├── train.txt
│ ├── val.txt
│ └── test.txt
└── JPEGImages
├── 1.jpg
├── 2.jpg
└── ...
train.txt, test.txt ve val.txt içerisinde JPEGImages klasöründe bulunan verilerin isimleri yazmaktadır. Biz tüm veri setinin %80'ini eğitim, geriye kalan %20'lik kısmı da test ve val için ayırdık.
Bu txt ayırımını otomatize eden dataset2txt.py kodu, scripts klasörü içerisinde bulunmakta.
Keras Retinanet içerisinde bulunan train.py dosyası eğitimi kolayca yapabilmemize olana sağlıyor. Eğitim adımları detaylı olarak ResNet50 Training with Keras-Retinanet.ipynb
not defterinde bulunmakta.
Modelin eğitimi tamamlandıktan sonra scripts içerisindeki predict.py
dosyası ile resimler üzerinde tahmin gerçekleştirilebilir.
Örnek kullanım:
python3 scripts/predict.py --input img1.jpg --output img1_output.jpg --backbone resnet50 --model ./resnet50_custom_trained.h5
Input | Output |
---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Elde edilen modele buradan erişebilirsiniz.
Bu repo MIT lisansı ile lisanslanmıştır.