日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

手把手带你玩转Tensorflow 物体检测 API (3)——训练模型

發布時間:2025/3/11 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 手把手带你玩转Tensorflow 物体检测 API (3)——训练模型 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

致謝聲明

本文在學習《Tensorflow object detection API 搭建屬于自己的物體識別模型(2)——訓練并使用自己的模型》的基礎上優化并總結,此博客鏈接:https://blog.csdn.net/dy_guox/article/details/79111949,感謝此博客作者。

0.前言

本文作者的環境:python3.6、Windows10、tensorflow_gpu1.10

文章編號文章名鏈接
1目標檢測實踐_tensorflow版SSD運行示例https://www.jianshu.com/p/c1d8f1c76de7
2目標檢測實踐_tensorflow版SSD數據準備https://www.jianshu.com/p/3d9436b4cb66
3目標檢測實踐_tensorflow版SSD訓練自己的數據https://www.jianshu.com/p/0e5f9df4686a
4目標檢測實踐_tensorflow版SSD模型測試https://www.jianshu.com/p/7464c5e00716

現在桌面的目標檢測文件夾中需要有object_detection工程文件夾和training數據文件夾,如下圖所示:

image.png


如果沒有的話,也沒有關系。本文作者提供下載鏈接:
文件training.zip鏈接: https://pan.baidu.com/s/1Kgp9geSkTFVa_4tfc7ZPew 提取碼: 9sy3
文件object_detection.zip的鏈接:https://pan.baidu.com/s/1Q9SxtKlOqEty08tpFeUUHA 提取碼: p2sm

?

1.解決第1個報錯

在桌面的目標檢測文件夾中打開cmd,即在路徑中輸入cmd后按Enter鍵運行。
打開cmd的方式如下圖所示:

image.png


在cmd中運行命令:python object_detection/model_main.py --pipeline_config_path=training/ssdlite_mobilenet_v2_coco.config --model_dir=training --alsologtostderr,運行結果如下圖所示:

image.png

?

1.1 第1種解決方式

第1種解決方式是通過Windows界面點擊操作。
如下圖所示,按Windows+Q鍵可呼喚出搜索界面,在其中搜索環境變量
點擊下圖中上方紅色箭頭標記處,進入編輯賬戶的環境變量

image.png


新建一個系統變量,點擊下圖紅色箭頭標記處。

image.png


變量名為:PYTHONPATH
變量值如下圖所示,讀者填入1號方框中的路徑與2號方框中的路徑一致即可。

image.png


兩項設置好后,點擊下圖紅色箭頭標記處所示的確定按鈕

image.png


點擊下圖紅色箭頭標記處所示的確定按鈕,使設置生效。

image.png

?

1.2 第2種解決方式

使用cmd添加永久環境變量,適用于熟悉cmd命令的讀者。
cmd中運行命令:setx -m PYTHONPATH "C:\Users\Administrator\Desktop\目標檢測"
命令成功運行后,如下圖所示:

image.png

?

2.解決第2個報錯

在進行完第1章,成功添加環境變量后,需要在桌面的目標檢測文件夾中重新打開cmd。
在cmd中運行命令:python object_detection/model_main.py --pipeline_config_path=training/ssdlite_mobilenet_v2_coco.config --model_dir=training --alsologtostderr,運行結果如下圖所示:

image.png


從上圖可以看出,缺少pycocotools庫,在linux系統中安裝pycocotools庫只需要運行命令:pip install pycocotools
但是在Windows上安裝則復雜得多。

?

2.1 下載并安裝Microsoft C++ build 14.0

本文作者花了2個小時研究有沒有其他方法解決此報錯,最終發現只有先安裝C++的編譯工具,才能在Windows系統上安裝pycocotools庫。
首先下載Microsoft C++ build 14.0,鏈接:https://go.microsoft.com/fwlink/?LinkId=691126
文件只有3M左右大小,下載完成如下圖所示。

image.png


打開安裝文件visualcppbuildtools.exe,初始化安裝程序,如下圖所示:

image.png


安裝類型選擇自定義,然后點擊下一步,如下圖紅色箭頭標記處所示。

image.png


選擇功能只勾選Windows 10 SDK 10.0.10240,然后點擊下一步,如下圖所示:

image.png


點擊下圖紅色箭頭標記處所示的安裝按鈕,則開始安裝。

image.png


安裝過程中截圖,如下圖所示:

image.png


完成安裝后,點擊關閉即可。

?

2.2 下載并安裝pycocotools

打開git頁面,鏈接:https://github.com/philferriere/cocoapi
下載按鈕的位置如下圖所示,點擊Download ZIP即可開始下載。

image.png


文件大小只有1.53M,下載完成如下圖所示。

image.png


對壓縮文件cocoapi-master.zip選擇解壓到當前文件夾
進入文件夾cocoapi-master中的文件夾PythonAPI,在此文件夾下打開cmd,如下圖所示。

image.png


在cmd中運行命令:python setup.py build_ext install,如下圖所示:

image.png


如果安裝成功,則如下圖所示:

image.png

?

3.解決第3個報錯

進行完第2章后,需要在桌面的目標檢測文件夾中重新打開cmd。
在cmd中運行命令:python object_detection/model_main.py --pipeline_config_path=training/ssdlite_mobilenet_v2_coco.config --model_dir=training --alsologtostderr,運行結果如下圖所示:

image.png


解決此報錯,需要閱讀本文作者的文章《目標檢測第1步-運行tensorflow官方示例》中的第3章《proto文件轉py文件》,文章鏈接:https://www.jianshu.com/p/c1d8f1c76de7

?

4.解決第4個報錯

進行完第3章后,使用第3章中的cmd即可。
在cmd中運行命令:python object_detection/model_main.py --pipeline_config_path=training/ssdlite_mobilenet_v2_coco.config --model_dir=training --alsologtostderr,運行結果如下圖所示:

image.png


壓縮文件models-master.zip下載鏈接: https://pan.baidu.com/s/1TnHvqNLT0JEZlugrdyABhQ 提取碼: fnp3
將models-master/research/slim文件夾中的nets文件夾移動到
桌面的目標檢測文件夾中,即文件夾object_detection同級目錄。
因為models-master.zip大小為439M,但我們其實只要nets文件夾。
本文作者提供nets文件夾壓縮后的壓縮文件nets.zip。
下載鏈接: https://pan.baidu.com/s/1zRkn_TNRlPGAuwQHoO66EQ 提取碼: 99s4
下載完成后,將nets文件夾解壓到與object_detection相同目錄,如下圖所示:

image.png

?

5.解決第5個報錯

進行完第4章后,使用第4章中的cmd即可。
在cmd中運行命令:python object_detection/model_main.py --pipeline_config_path=training/ssdlite_mobilenet_v2_coco.config --model_dir=training --alsologtostderr,運行結果如下圖所示:

image.png


從上圖中可以看出,本文作者使用的顯卡是RTX 2070,顯卡的顯存為8G。
本文作者推薦如果要進行目標檢測, 最少也需要配備版本為GTX 1060_顯存6G的顯卡,否則會出現顯存不足。
從上圖中可以看出,模型成功調用顯卡,開始訓練了。
但是訓練經過一段時間后會報錯,如下圖所示:

image.png


解決方法:修改工程文件夾object_detection中的代碼文件model_lib.py
如下圖所示,找到第418行,將category_index.values()修改為list(category_index.values())

image.png


修改代碼文件model_lib.py完成后,則可以在cmd中重新輸入命令開啟模型訓練。
模型訓練穩定地進行一段時間后,會做一次模型評估,如下圖所示。
所以如果讀者看到下圖中的情況,則說明模型訓練很順利

image.png

?

6.查看模型訓練狀況

模型訓練穩定地進行后,在桌面的目標檢測文件夾中重新打開cmd。
在cmd中運行命令:tensorboard --logdir=training,如下圖所示:

image.png


復制上圖中紅色箭頭標記處的鏈接,粘貼到瀏覽器中即可訪問。
注意:每臺電腦的鏈接都不同,讀者復制自己電腦cmd中顯示的鏈接即可。
如果使用360瀏覽器,必須使用極速模式不能使用兼容模式。
在瀏覽器中的界面如下圖所示。
在SCALARS標簽界面中可以查看準確率Precison、召回率Recall、損失值Loss等模型評估指標。
在IMAGES標簽界面中可以查看實時的測試集效果。
在GRAPHS標簽界面中可以查看模型的整體架構。

image.png

?

7.總結

1.本文詳細介紹了在Windows操作系統的環境中如何訓練自己的目標檢測模型。
2.在本文作者的實踐中,發現在Linux操作系統中訓練速度會快很多。不明白為什么相同的代碼,2種操作系統會導致運行效率的差異。如果讀者有Linux的主機,本文作者建議為了工作效率,應該使用Linux主機做模型訓練。
在Ubuntu16.04系統的訓練速度如下圖所示:

image.png

3.在測試集的圖片中,有的圖片目標檢測效果較優,下面給出了2張演示圖。

?

預測結果1

?

預測結果2



作者:瀟灑坤
鏈接:https://www.jianshu.com/p/0e5f9df4686a
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。

總結

以上是生活随笔為你收集整理的手把手带你玩转Tensorflow 物体检测 API (3)——训练模型的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。