YOLO训练Pedestrain
Pedestrain
dl?使用darknet訓(xùn)練:
1. Inria
創(chuàng)建 yolo-inria.cfg
從cfg/yolo-voc.2.0.cfg拷貝一份,修改batch=64, subdivisions=8, classes=1, 修改最后一個(gè)卷積層為filter=30。
cp cfg/yolo-voc.2.0.cfg cfg/yolo-inria.cfg創(chuàng)建data/inria.names
里面只有一行:person
為每個(gè)圖片創(chuàng)建label文件,形式如下:
每個(gè)圖片對(duì)應(yīng)一個(gè)label文件,一個(gè)行人對(duì)應(yīng)一行,object-class全為0。文件分別放在/home/guru_ge/dataset/INRIAPerson/Train/labels目錄和/home/guru_ge/dataset/INRIAPerson/Test/labels目錄。
<object-class> <x> <y> <width> <height>創(chuàng)建train.txt, test.txt
所有訓(xùn)練圖片的路徑,每行一張圖片,位置在/home/guru_ge/dataset/INRIAPerson/。
data/obj/img1.jpg
data/obj/img2.jpg
data/obj/img3.jpg
創(chuàng)建data/inria.data
修改train.txt, test.txt位置:
classes= 1 train = /home/guru_ge/dataset/INRIAPerson/train.txt valid = /home/guru_ge/dataset/INRIAPerson/test.txt names = data/obj.names backup = backup/下載在ImageNet上預(yù)訓(xùn)練的darknet19模型
wget http://pjreddie.com/media/files/darknet19_448.conv.23開始訓(xùn)練
./darknet detector train data/inria.data cfg/yolo-inria.cfg darknet19_448.conv.23 -gpus 0結(jié)果
在INRIA測(cè)試集上評(píng)測(cè)結(jié)果:
./darknet detector map cfg/inria.data cfg/yolo-inria.cfg backup/yolo-inria.backup -gpus 0class_id = 0, name = person, ap = 88.85 %
for thresh = 0.24, precision = 0.95, recall = 0.86, F1-score = 0.90
for thresh = 0.24, TP = 509, FP = 29, FN = 80, average IoU = 76.81 %
mean average precision (mAP) = 0.888518, or 88.85 %
Total Detection Time: 4.000000 Seconds
測(cè)試圖片:
./darknet detector test cfg/inria.data cfg/yolo-inria.cfg backup/yolo-inria.backup -gpus 0?
測(cè)試圖片
?
跑另外一個(gè)視頻:
./darknet detector demo cfg/inria.data cfg/yolo-inria.cfg backup/yolo-inria.backup MOT16-06.mp4 -gpus 0效果:
?
檢測(cè)結(jié)果
?
大小:
416 x 416
速度:
CPU FPS: 0.2
GPU FPS: 90
問題:
小目標(biāo)檢測(cè)不到
2. caltech
訓(xùn)練:
./darknet detector train cfg/caltech.data cfg/yolo-caltech.cfg darknet19_448.conv.23 -gpus 0 -dont_show每5幀提取一張,訓(xùn)練集45651張圖片,測(cè)試集4406張圖片。batch_size為64,迭代3萬次左右開始收斂:
?
loss
?
評(píng)估:
./darknet detector map cfg/caltech.data cfg/yolo-caltech.cfg backup_caltech/yolo-caltech_40000.weights -gpus 0detections_count = 24968, unique_truth_count = 6465
class_id = 0, name = person, 8 ap = 22.66 %
for thresh = 0.24, precision = 0.41, recall = 0.22, F1-score = 0.29
for thresh = 0.24, TP = 1431, FP = 2053, FN = 5034, average IoU = 27.87 %
mean average precision (mAP) = 0.226584, or 22.66 %
Total Detection Time: 137.000000 Seconds
問題:
從map上看表現(xiàn)很差,只有22.66,這可能是因?yàn)檫@個(gè)數(shù)據(jù)集人太小,并且標(biāo)注中還包含了一些被遮擋的目標(biāo),干擾了檢測(cè)結(jié)果。
我們還測(cè)試了使用inria數(shù)據(jù)集訓(xùn)練的模型在caltech上的結(jié)果,表現(xiàn)還要更差:
detections_count = 17643, unique_truth_count = 6465
class_id = 0, name = person, 3 ap = 9.09 %
for thresh = 0.24, precision = 0.48, recall = 0.05, F1-score = 0.09
for thresh = 0.24, TP = 315, FP = 340, FN = 6150, average IoU = 35.57 %
mean average precision (mAP) = 0.090909, or 9.09 %
Total Detection Time: 46.000000 Seconds
使用caltech訓(xùn)練結(jié)果,小目標(biāo)的檢測(cè)更準(zhǔn)確了,但也存在了誤檢的問題,這可能是標(biāo)注中還包含了一些被遮擋的行人,導(dǎo)致訓(xùn)練的模型將這些遮擋物也認(rèn)為是行人,出現(xiàn)了誤檢。
?
檢測(cè)結(jié)果
?
轉(zhuǎn)載于:https://www.cnblogs.com/gr-nick/p/9379367.html
總結(jié)
以上是生活随笔為你收集整理的YOLO训练Pedestrain的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 设置虚拟机和本机时间同步方法
- 下一篇: 以Attribute加上Header验证