使用yolo3模型訓練自己的資料集

2022-08-31 13:18:07 字數 1290 閱讀 5713

1. ubuntu16.04、

2. tensorflow-gpu 1.4.0 或更高版本、

3. keras 2.2.4 、

4. numpy 1.15.2(實測1.16.1會報錯)。

1. 使用voc2007資料集的檔案結構:

注:資料集中沒有test.py,你需要將其拷貝到voc2007資料夾下。

2. 標註:

使用labelimg(對訓練進行標註生成標籤,然後將所有放在jpegimages資料夾下,將所有標籤(.xml)放在annotations資料夾下。

3. 劃分資料集:

python test.py90%為訓練集(train.txt), 9%為測試集(test.txt), 1%為評估資料集(val.txt)。txt檔案儲存在imagesets/main下。

4. 轉換標籤格式:

python voc_annotation.py, 在執行之前,需要根據資料集的實際類別,修改voc_annotation.py中的classes(與標註時的class名字一樣)。執行之後,將會得到train.txt、test.txt、val.txt,文字內容是:

img_path、box位置(top left bottom right)、類別索引(0 1 2 ...)

1.修改yolo3的網路結構:開啟yolo3.cfg,搜尋"yolo",如下圖所示,需要修改filters、classes、random,一共可搜尋到三處yolo,每處都需要修改。

random:預設是1,視訊記憶體小改為0

a. model_data/voc_classes.txt:與你的class一致,一般需要手動修改;

b. model_data/yolo_anchors.txt:確認存在即可;

c. d. 存在logs資料夾

3. 開始訓練:python train.py

yolo3,模型訓練流程

訓練前準備 1,準備資料集 和邊界矩形txt 邊界矩形txt內容 類別從0開始 labeltext str int labstr 1 str x str y str w str h n x,y,w,h為目標的矩形中心 x,y wh目標寬高 2,修改cfg檔案 convolutional size 1...

YOLO3多gpu訓練方法

版本可參考git上的keras yolo3的實現,現在我手裡有兩塊gpu,所以設定多塊gpu來加快訓練速度 1.訓練 前引入 from keras.utils import multi gpu model2.找到自己構建網路的地方,第一次構建model是下面的語句 is tiny version l...

YOLO訓練自己的資料集

很高興現在已經有幾百人通過我的教程成功地使用yolo處理自己的資料集。最近一直在用cnn的模型做影象二分類,但苦於效果不佳,於是把影象分類問題轉作目標識別問題。做目標識別選擇了yolo you only look once 乙個最近推出的方法,突出的優點就是速度快。查詢了網上關於yolo的訓練自己資...