用tensorflow实现yolov3
完整YOLOv3流程
原作者 : YunYang1994
論文: YOLOv3
環境: win7 + anaconda + python3.6 ( 建議用anaconda,方便一些)
下載代碼之前,請先裝好環境和相關依賴。
pip install -r docs/requirements.txt
1.github下載YOLOv3的tensorflow實現代碼。
git clone git@github.com:sowei728/tensorflow_for_YOLOv3.git
2.下載YOLOv3的初始權值放到checkpoint文件夾中。
wget https://pjreddie.com/media/files/yolov3.weights
windows 沒有wget命令就直接找個瀏覽器把URL輸進去就好了
3.標注自己的VOC格式數據。
使用labelImg腳本,下載地址: http://tzutalin.github.io/labelImg/
腳本使用非常簡單,自己看看就會了,最后腳本生成的xml文件放入dataset文件夾的anno文件夾中,原jpg的圖片放入images文件夾中
4. 將xml文件中的標注信息匯總到txt中。
自己新建3個txt文件:
labels.txt 存放所有圖片的標注信息
train.txt 存放訓練圖片的標注信息(總圖片的80%)
test.txt 存放測試圖片的標注信息(總圖片的20%)
文件內容:(以空格隔開)
圖片路徑 x1min y1min x1max y1max cls1_id x2min y2min x2max y2max cls2_id …
運行腳本即可:
python scripts/load_xml_into_txt.py
5.將train.txt和test.txt轉化為train.tfrecords和test.tfrecords文件。
python convert_tfrecord.py --dataset_txt ./apple_dataset/train.txt --tfrecord_path_prefix ./apple_dataset/apple_train
python convert_tfrecord.py --dataset_txt ./apple_dataset/test.txt --tfrecord_path_prefix ./apple_dataset/apple_test
apple_test.tfrecords 和 apple_train.tfrecords會生成在dataset目錄下
6. 查看文件標注有無問題。
python show_input_image.py
如果正常出現圖像及標注信息則代表文件標注無問題
7.kmeans求出k個anchor box的長寬。
python kmeans.py
會輸出準確率和k個anchor box的長寬信息,本實驗中確定的k值為9
長寬信息需要填入到data/apple_anchors.txt中
8.轉化yolov3.weights為ckpt模型權值。
python convert_weight.py --convert
9.訓練模型,保存模型到checkpoint文件夾中。
python quick_train.py
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的用tensorflow实现yolov3的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java基础18(类加载、反射和动态代理
- 下一篇: git操作之版本控制