📃Tensorflow Kayıtları Oluşturma
👣 Temel Adımlar
Resim verileri toplanır veya çekilir.
Toplanan resimler
labelimg
yardımıyla etiketlenir ve.xml
uzantılı dosyaları oluşturulur.images
dizinine resimler ve onlara ait xml dosyaları %80'i train %20'i eval olacak şekilde klasörlere ayrılarak yerleştirilir.scripts/preprocessing
dizindekixml_path_regulator.py
scripti aracılığıyla xml ve resimlerde yol sorunları düzeltilir, veriler yeniden adlandırılır.scripts/preprocessing
dizindekixml_to_csv.py
scripti aracılığıyla veriler.csv
uzantılı tablosal bir dosyaya dönüştürülür.Oluşturulan csv dosyasında resimlerin etiketlerine göre sayıları tablo olarak gösterilir. (Excel yardımıyla)
Verilerde denge durumunun (her veriden yaklaşık olarak aynı sayıda varsa) kontrolü yapılır.
Her çeşit veri için bir
id
belirtilecek şekildelabel_map.pbtxt
adlı etiket haritası oluşturulurOluşturulan csv, etiket haritası ve resim verileri
scripts/preprocessing
dizindekigenerate_tfrecord.py
scripti aracılığıyla veriler.record
uzantılı kayıtlara dönüştürülür.Seçilen modele özgü yapılandırma dosyası indirilir.
Yapılandırma dosyası olan
*.config
dosyasındakiPATH_TO_CONFIGURED
olarak işaretlenen alanlar,num_classes
,num_examples
vebatch_size
değerleri güncellenir.num_examples
eval dizindeki resim sayısıdır (toplam class sayısı değil)
📢 Tüm notlardaki dizin yapısı TensorflowObjectDetectionAPI reposunun yapısına uygun şekildedir.
🕵️♂️ Resimlerdeki Hataları Bulma
Resimlerde hata olduğu zaman eğitim aşamasında tensorflow modeli çalışma hatası vermektedir. Resimleri kontrol etmek için buradaki scripti alttaki komutlarla kullanabilirsiniz.
👨🔧 Verileri Yeniden Adlandırma ve XML Hatalarını Düzeltme
LabelImg ile etiketlediğiniz resimleri farklı bir dizine taşımanız durumunda XML dosyalarındaki yollar uyuşmayacaktır. XML dosya yollarını düzeltmek, etiketsiz resimleri görüntülemek için buradaki script dosyamı alttaki komutlar ile kullanabilirsiniz.
🧐 Etiketlenmemiş Resimleri Bulma
Etiketlenmemiş resimleri buradaki script dosyası ile alttaki komutlar ile kullanabilirsiniz.
Eğer XML scriptini kullandıysanız bu kontrolü yapmanıza gerek yoktur, XML scripti bunu zaten yapmaktadır.
💫 XML'i CSV'ye Çevirme
XML dosyalarını CSV dosyasında toparlamak için buradaki scripti alttaki komutlar ile kullanabilirsin.
Komutları Anaconda Prompt üzerinden tensorflow ortamını aktif ederek uygulamayı unutmayın.
👁🗨 CSV'lerden Resim Bilgilerini Analiz Etme
Her bir etiketten kaç tane olduğunu anlamak için csv dosyalarını açıp alltaki yöntemi uygulayın.
class
hücresiinin bir altındaki hücreyi seçinctrl
+shift
+aşağı ok
ile tüm sınıf verilerini seçinSağ alttaki butona tıklayın
Tables
sekmesine gelinAçılan sekmede
Pivot Table
butonuna tıklayınTablo'dan etiketlenen verileri kontrol edin
Fazladan etiketlenmiş verilerin ismini bulup, filename, width vs. verilerin yazıldığı alanda
CTRL
+F
komutu ile aratıp, uygun dosya ismini vexml
dosyasını silin
💱 CSV'yi Record'a Çevirme
CSV dosyalarını TF kayıtlarına çevirmek için buradaki scripti alttaki komutlar ile kullanabilirsin.
Komutları Anaconda Prompt üzerinden tensorflow ortamını aktif ederek uygulamayı unutmayın.
Last updated