1. 磐创AI首页
  2. Medium

TensorFlow 2物体检测Api Kullanarak徽标Tanıma

环境Oluşturulası

对象检测API kuruluma başlamadan anaconda indrip kurulumunu yapalım.daha sonra komut istemini açalım.Burada“conda create-n tod python==3.6.5”Yazalım.Buşeystle python 3.6.5 Kurulu Yeni Bir环境oluşturduk。Evirometi aktif et mek Için“Conda Activate tod”Yazalım.Tüm işlemlerimizi bu Environment Içerisinde yapacağız.anaconda

TensorFlow Kurulumu

目标检测Api kullanmak Için TensorFlow kurumuna ihtiyacımız var.oluşturduğumuz enviromente“pip install-Ignore-Installed-Upgrade TensorFlow==2.6.0”Komutunu kullanarak TensorFlow kütüphanesi Kuraım.

图形处理器Dustği

Eğitimlerimizin hızlıBirşekilde olmsıiçin GPU kullanmakçok Daha faydalıolacaktır.gpu kullanarak eğitimleri yapmak Için Cuda ve Cudnn kurumlarınıyapmamız gerekiyor.İnternetti Birçok Videodan ve Yazıdan kurulumların nasıl yapılakağına bakbilirsiniz.TensorFlow versiyonunuza Uygan CUDA ve CuDNN aşağıDaki Linklerden Indirikurumlarıyapalım.TensorFlow 2.6.0Için CUDA Toolkit 11.2ve CuDN8.1kurulumlarınıyapmamız gerekiyor.TensorFlow 2.6.0Için CUDA Toolkit 11.2ve CuDN8.1kurulumlarınıyapmamız gerekiyor.CUDA CuDNN

库鲁勒姆测试(Kurulum Testi)

库鲁姆试验和环境监测

将TensorFlow作为TF tensorflow.test.is_GPU_Available()yazabilirsiniz导入。Eğer dönen SonuçTrue is kurulumunuz başarılıolmuştur.

TensorFlow对象检测API

BURAYA KADAR TensorFlow Kurulumunu TamamladıK.Bundan Sonra TensorFlow Object Detection Api Kurulumunu Yapacağız.

Projemizi kuracağımız Bir Klasör OluşTurun.本对象检测api和ında bir klasör oluş杜鲁姆。Daha sonra Bunun içerisine TensorFlow adıNda Bir Klasör OluşStructureım.Burada Verdiğimiz isimlerönemsiz ama Aynışde ilerlemek Için buşekilde oluşturabilirsiniz.“C:\Users\bagat\Desktop\ObjectDetectionAPI\Tensorflow”

https://github.com/tensorflow/models reposunu ya git克隆komutu ile yada direkt zip olarak独立。Bu Indirdiğimiz dosyaları“TensorFlow”KlasörüneçıKaralım.Mevcut hard umda Klasör görümüz aşağıDaki Gibi olasıgerekiyor.https://github.com/tensorflow/models

Protobufİndirilmesi ve kullanılması


Protobuf reposundan win64 Için Uygan Olan Protobuf dosyasınıinrelim.Bu Indirdiğimiz zip files asınıUygan Bir YereçıKartalım.Daha sonra bu dosyanın içerisindeki bin Klasörünüortam değişkenlerinden pathe ekley elim.Protobuf

Daha sonra komut istinden“TensorFlow/Models/Research/”Klasörüne gidelim ve aşağıdaki komutuçalıştıralım.

PROTEC OBJECT_DETACTION/PROTOS/*.proto-python_out=。

COCO API Kurulumu

TensorFlow 2.x sürümünden bu Yana pytools paketi物体检测Api kullanmak Için zorunlu Hale getirildi。Kurulumu Için aşağıda komutlarıTerminaldençalıştıralıM.pip install cython pip install git+komutlarhttps://github.com/philferriere/cocoapi.git#subdirectory=PythonAPI

目标检测Api Kurulumu

物体检测API kurumunu Tamamlamak Için物体检测paketini kurmamız gerekiyor。Bunun için aşağıDaki KomutlarıTensorFlow/Models/Research/Klasörün IçindeykençalıştıralıM.copy Object_Detect/Packages/tf2/setup.py.

python-m pip install-use-feature=2020-solver。

库鲁勒姆测试(Kurulum Testi)

YAPTığımız kurulumu test etmek içim aşağıdaki komut satırınıçalıştıralım.Burada Bir takım testler yapılıyor ve ve sonucunda ok görüyorsanız tebrikler kurulumu başarıile tamamladınız.

蟒蛇object_detection/builders/model_builder_tf2_test.py

自定义对象检测

tüm kurulumlarıyaptığımıza göre kendi datalarımızla目标检测yapiliriz。布农için aşağıDaki Gibi Bir Klasör düzeni OluşStructureım.

  • 注释:csv dosyalarıve.record dosyalarınıbu Klasörde tutacağız.
  • 导出-型号:Eğittiğimiz modelleri tutmak için kullancağız.
  • 图片来源:veri setimizdeki tüm resimler Burada tutulacak bunların xml dosyalarıda Burada bulunacak。
  • 图像/培训:Eğtim Için gerekli olan imageler ve xml files yalarıtutulacak。
  • 图像/测试:test için gerekli Olan imageler ve XML dosyalarıtutulacak。
  • 型号:Eğtim sırasındaüretilen dosyalar ve config dosyalarıBurada tutulacak。
  • 预训模特:İndirdiğimiönceden eğitilmişmodelleri tutmak için kullanacağız。

Veri Setinin Hazırlanmaı

标签1 mg kullanarak topladığımız verileri estketleyebiliriz.KullanımıIçin Interette Video Bulunuyor.bnlara bakarak nasıl kullanılacağına bakbilirsiniz.PIP安装标签Img Yazar ve andından labelImg Yazarak uyguamayıaçabilirsiniz.布拉达礼仪ğimiz resimlerin olduğu Klasörüseçelim ve estketlemye başlayalım.

Labelmap OLUş图玛

kullandığımız estketleri tam sayıolacakşekilde yazacağımız Bir labelmap files asıoluşturalım.Bu Dosyanın içerisine aşağıDaki Gibi YazalıM.Training_DEMO/Annotation altıda Label_Map adında nda.pbtxt uzantılıBir dosya oluşturup içine aşağıdaki gibi(培训演示/注释Alt OLACAK_MAP adında.pbtxt uzantılıBir Dosya OluşTurup Içine aşağıDaki Gibi)

项目{id:1名称:‘Turkcell’}

TF Recordların OluşTurulmaı

xml dosyalarınıTensor流记录ınaçevireceğiz.ınıkullanacağız.bunu GitHub Reposunda TensorFlow/Script kısmında bulabilirsiniz.Bu Dosyanın olduğu yerde Bir Terminal açalım ve aşağıdaki komutlarıyazalım.

Python GENERATE_tfrecord.py-x[指向图像文件夹的路径]/Train-l[指向注解文件夹的路径]/label_map.pbtxt-o[指向注解文件夹的路径]/Train.Records

Python Generate_tfrecord.py-x[指向图像文件夹的路径]/test-l[指向注解文件夹的路径]/label_map.pbtxt-o[指向注解文件夹的路径]/test.Records

预先训练的İndirilmesi模型

aşağıdaki linktenönceden eğitilmişmodellerden bizim için en Uygan Olanıseçiyoruz.布拉达精密速度değerlerine bakarak Bize Uygan olacak固态硬盘ResNet50 V1 FPN 640×640 Modelini Indirebiliriz.https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/tf2_detection_zoo.mdİndirdiğimiz Modeli aşağıDaki Klasör yolunaçıKartalım.ndirdihttps://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/tf2_detection_zoo.md

Eğtimİçin管道HAZırlanmaı

预先培训的ModeliçıKarttık.Bunu kullanarak Kendi管道ımız ile eğitimi yapacağız.ancaköncesinde Pipeline.config doyasında düzenlemeler yapmamız gerekiyor。Training_DEMO/Models altına my_ssd_resnet50_v1_fpn adında Yeni Bir Klasör OluşTurg up config dosyasınıburaya kopyalayıp açalım.

ır olarak githubdan Indirip Yollarıkendinize göre düzenleyebilirsiniz.

型号Eğitimi

Sonunda eğitimi başlatacağımız kısma gldik.ında yaptığımıdüzenlemelerden sonra ben 5000 adım olacakşekilde eğitimi başlatıYorum.步说ı‘sınıArttıRarak Daha Iyi Sonuçlar alabilirsiniz。TensorFlow/models/research/object_detection/model_main_tf2.py dosyasınıTraining_demo ya kopyalayıp eğitimi başlatabilirsiniz.

Python model_main_tf2.py-model_dir=model/my_ssd_resnet50_v1_fpn-pipeline_config_path=models/my_ssd_resnet50_v1_fpn/pipeline.config

EğItilmişModelin KullanıLMASı

eğitm bittikten sonra目标检测在推理图oluşturmamız gerekiyor中检测Yapabilmek Iç。TensorFlow/models/research/object_detection/exporter_main_v2.py için.\models\my_ssd_resnet50_v1_fpn\pipeline.configınıTraining_Demo altına kopyalayım.aşağıdaki komutu kullanarak EXPORTED-Models altına ModelimiçıKartalıM.pyth.\Exporter_Main_v2.py-Input_TYPE IMAGE_TYSOR-PIPELINE_CONFIG_PATH PATH-Traded_Checkpoint_dir.\Models\my_ssd_resnet50_v1_fpn\-OUTPUT_DIRECTORY-EXPORT-EXPORT-

莫德利·德内耶利姆

e“Tensorflow\detectionplot_object_detection_saved_model.ipynb”ğitilmişmodel imizi test et mek Içk Iç在Jupyter Notebook unu açalım ve tstiizi gerçekleştirelim中。Resimlerde görüldüğügibi Turkcell logoleınıdoğru Birşekilde Detect edebildik.

奥泽特

Modeli Daha Uunsüreçalıştırırsak muhtemelen Daha Iyi Sonuçlar Elde edebilriiz.Eğitim Için toplamda 26 fotoğraf kullandık bunların sayısınıartırarak da Daha Iyi Sonuçlar Elde edebiliriz.Burada gördüğünüzşekilde verileri testketleip istediğiniz BirçokşEyi Detect etmeniz Zor olmayacaktır.

原创文章,作者:fendouai,如若转载,请注明出处:https://panchuang.net/2021/09/28/tensorflow-2%e7%89%a9%e4%bd%93%e6%a3%80%e6%b5%8bapi-kullanarak%e5%be%bd%e6%a0%87tanima-2/

联系我们

400-800-8888

在线咨询:点击这里给我发消息

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息