Tensorflow object detection API 搭建物體識別模型(一)
一、開發環境
1)python3.5
2)tensorflow1.12.0
3)Tensorflow object detection API :https://github.com/tensorflow/models下載到本地,解壓
我們需要的目標檢測程式碼在models-research檔案中:
其中object_detection中的README.md記錄了API的使用指導:
注意:models包含了眾多的模組,可以根據需要選擇下載,也可以將整個models一塊兒下載,大概420M
4)Protobuf 安裝與配置
Protobuf(Google Protocol Buffers)是GG開發的的一套用於資料儲存,網路通訊時用於協議編解碼的工具庫。和XML,Json資料差不多,把資料按某種形式儲存起來。相對與XML和Json的不同之處,它是一種二進位制的資料格式,具有更高的傳輸,打包和解包效率。
在https://github.com/google/protobuf/releases 網站中選擇windows 版本,解壓後將bin資料夾中的【protoc.exe】放到models中的research目錄下,執行下面的程式碼,將
object_detection/protos下的.proto檔案轉換成.py檔案
''' 需要到protoc所在的目錄下執行protoc protoc object_detection/protos/*.proto --python_out=./ ''' import os os.chdir( 'models-master/research' ) for each in os.listdir( 'object_detection/protos' ): if each.endswith('proto'): os.system('protoc object_detection/protos/%s --python_out=.' % each)
5)jupyter notebook下執行例項
在object_detection那輸入cmd命令,然後執行jupyter notebook
開啟如下檔案,然後依次點選Cell->Run All
6)demo結果
如果程式碼成功執行的話,執行結果如下圖所示:
下一步我們可以在此基礎上對程式碼進行適當的修改,可以用已有的模型來檢測自己的圖片,甚至視訊,並輸出結果。