YOLOv2訓練自己的資料來實現人臉檢測詳細步驟

2021-08-10 19:26:40 字數 4139 閱讀 8518

一、模仿voc的格式

建立資料夾vocdevkit,在裡面新建voc2017資料夾,然後voc2017裡新建下圖的4個資料夾,最後在imagesets裡新建名叫main資料夾。其中,annotations裡面放每張的.xml檔案。imagesets的main裡放train.txt,該文字檔案裡面的內容是需要用來訓練影象的名字,一行寫乙個(無字尾無路徑)。jpegimages資料夾中放規則命名好的原始訓練影象。其他的先不用管。

二、標記影象

建議用labelimage,用法見會生成.xml檔案。我在網上找了20張包含人臉的**,用labelimg標註了20張中的人臉。

三、生成相關訓練檔案

修改作者提供的**中的voc_label.py,修改sets和classes,我這裡只訓練乙個類face,在darknet/scripts下,執行voc_label.py,在darknet/scripts會得到 2017_train.txt檔案,裡面是所有訓練的絕對路徑,在darknet/scripts/vocdevkit/voc2017目錄下生成名為labels的資料夾,裡面乙個檔案對應一張的標籤。**如下:

四、修改yolov2相關配置檔案(1)在\darknet-master\data 下新建 obj.data和obj.names 兩個檔案。

obj.data內容如下,classes=1,train等於上文2017_train.txt檔案的絕對路徑。obj.names裡面只寫乙個face

classes= 1

train = d

:/yolov2/darknet/scripts/

2017_train.txt

names = data/obj.names

backup = d

:/yolov2/darknet/result/

(2)拷貝cfg資料夾下的yolo-voc.2.0.cfg,重新命名為yolo-obj.cfg,修改裡面的一些內容:

五、開始訓練

d:\yolov2\darknet

\build

\darknet

\x64\darknet.exe detector train ./data/obj.data yolo-obj.cfg darknet19_448.conv.23

六、測試在result檔案中儲存了權重檔案,如:yolo-obj_500.weights

編寫測試命令:

Yolo v2訓練voc及自己的資料集

繼yolo v1後,又乙個yolo v2的配置訓練教程,希望可以幫助大家。注意 1 測試軟體 ubuntu14.04 cuda7.5 cudnn5.0 opencv2.4.10 titanx 2 有些您複製的終端命令如果不能在終端執行,請注意英文全形半形問題,您可以將命令輸入終端,無須複製貼上命令 ...

yolov2 訓練自己的樣本 GPU加速

1.採集影象,做成voc格式的資料集 3.修改makelist檔案裡面的 gpu 1 cudnn 1 opencv 1 openmp 1 debug 1 4.把voc格式的資料集放在scrip裡面,然後跑voc label.py 5.cfg檔案裡的voc.name classes 1如果只有一類就為...

Yolo v2 訓練 NAN解決過程

主要參考 今天在用yolo訓練自己的資料集的時候,一開始訓練過程中的loss還很正常地在下降。結果到了幾個個batch的地方突然就出現loss nan的情況。其實到現在自己也沒有發現到底是什麼導致了nan,但是參考上面這篇文章,至少暫時解決了這個問題。1 首先檢查了 是不是對的。一般出現nan,第一...