從標註到訓練的整體流程

2021-08-21 04:09:09 字數 1449 閱讀 1676

1.首先進行物體標註

本次流程使用的是labelimage軟體,進行標註,此次標註了person以及dog兩類,每類各有200張(比較少,只是為了實驗流程),標註完以後產生對應的.xml檔案,隨後建立資料夾voc2007,並在此資料夾下按照pascal voc資料集的格式建立資料夾(主要用到三個資料夾:annotations(標註的xml檔案),imagesets,(建立main資料夾(若只訓練就建立train.txt檔案(裡面是的名稱)))jpegimages)。

資料夾的格式如圖所示:

2.xml檔案轉化為txt檔案的形式

將上述標註好的放入jpegimages資料夾下,將標註好的檔案.xml檔案放入annotations資料夾下,使用darknet下的voc_label.py檔案進行轉換。

在使用voc_label.py檔案的時候,首先要改掉sets以及類別,如果我們使用的是pascal voc標準資料集,那麼我們只要注意到路徑就可以,上面博文我已經詳細的介紹了該整個流程。

以及

只需要注意這兩張的路徑即可,看懂**理解便會更好一點。

3.配置檔案以及training

(1)上述voc_label.py檔案會將xml檔案轉為txt檔案並儲存在voc2007的label資料夾下。(即這是我們訓練所需要的目標位置資訊)

(2)上述voc_label.py檔案會生成乙個2007_train的txt檔案,該檔案下儲存的是我們所要求的所有的路徑資訊,即為我們配置檔案中train的設定提供了條件.(此操作皆是在darknet資料夾下的scripts下進行的)

(3)在cfg檔案下,建立我們所要的obj.data,obj.names以及配置檔案yolo_voc.cfg(這個配置檔案我們需要為不同的資料集,不同的分類作更改).

obj.data下寫的是:

obj.names下存放的是分類的種類類別

配置檔案yolo_voc.cfg訓練的配置檔案:訓練的時候需要根據的是自己的電腦設定batch_size以及subdivision,我使用的是1080ti,batch_size=64,subdivision=8,在最後設定filter以及classes的個數.隨後更改makefile裡面的配置,若使用gpu加速,則將gpu以及cudnn設定為1,若有需要需要更改nvcc的位置資訊。

node從搭建執行專案整體流程

1.初始化配置基本資訊 npm init 自定義配置 npm init y 一切配置採用預設值 在當前目錄產生package.json檔案,有乙個dependencies用來記錄該專案所有依賴包 載入express const express require express 建立express伺服器...

Python爬蟲的整體流程

對於爬蟲小白來說,很多人都感覺不知道怎麼開始學習。從網上查來查去,找到的多是部分的 但很少有從整體上闡述爬蟲的流程的,因此導致了很多人對於爬蟲的難以理解和無從下手。接下來就介紹一下爬蟲的整體流程。爬蟲整體上可以分為三個步驟 獲取網頁就是向乙個 傳送request,然後 返回網頁的資料。獲取網頁我們可...

論Kafka的整體流程

首先需要明確kafka中producer到consumer的各個環節。producer先通過網路傳送到broker,broker會落入磁碟,broker再通過網路傳送到consumer。先看第乙個環節producer到broker,producer生產資料時,可以選擇單條發給broker,也可以通過...