Tensorflow Object Detection API 從無到有
環境
- 以python3.7建立新環境(環境名稱python3.7, 以下提到的python3.7是環境名稱)
- 安裝tensorflow2.1
API配置
- 安裝 protobuf
1.點選protobuf-all-3.13.zip這裡下載,解壓後把bin下的protoc.exe放到C:Windows資料夾下,cmd驗證是否可用。
- 安裝TensorFlow object detection API
1.去TensorFlow github上下載整個models,解壓到python3.7的tensorflow lib 下。
2.將proto檔案轉換為python檔案
cmd到models下research資料夾,執行protoc object_detection/protos/*.proto --python_out=.
不報錯說明執行成功,object_detection/protos下的34個proto檔案會生成對應的python檔案。
3.安裝slim
cmd到models/research/slim,切換為conda環境(conda activate python3.7),執行python setup.py install
4.將models新增到執行環境
在D:\ProgramData\Anaconda3\envs\python3.7\Lib\site-packages資料夾下建立tensorflow_model.pth檔案,寫入以下內容:
D:\ProgramData\Anaconda3\envs\python3.7\Lib\site-packages\tensorflow\models
D:\ProgramData\Anaconda3\envs\python3.7\Lib\site-packages\tensorflow\models\research
D:\ProgramData\Anaconda3\envs\python3.7\Lib\site-packages\tensorflow\models\research\slim
D:\ProgramData\Anaconda3\envs\python3.7\Lib\site-packages\tensorflow\models\research\object_detection
5.測試API
在conda環境下執行python research/object_detection/builders/model_builder_tf2_test.py
Demo
在research\object_detection\colab_tutorials下有用於demo的notebook檔案,這裡選擇object_detection_tutorial來執行,測試圖片在research\object_detection\test_images下,使用的是預訓練好的模型,添加了兩個自己下載的圖片驗證。