1. 建立暫時使用的資料夾

這邊案例是RecyclingMachine, 因此資料夾名稱即為此。

內部共五個資料夾。(可依照個人習慣進行更換)

其中

1.1 Images資料夾,是在標籤前存放圖片的地方

1.2 Labels資料夾,是在標籤後存放圖片/標籤資料的地方

1.3 Yolo_Label資料夾,若你沒有要全用,可以直接在開一個資料夾針對已完成的部分進行。(全用就直接使用Label資料夾)

1.4 cfg資料夾,這是Yolo相關參數檔存放位置。每個案件可能使用的模型基礎不同或者參數不同。可用此方式區分。

1.5 TestImage資料夾,存放訓練後進行測試的圖片資料。

2. 為什麼需要分Labels與Yolo_Label?

這與模型使用的資料格式有關,圖片標註的格式差異可以分成三種:

- COCO (JSON 的格式)
- Pascal VOC (XML 格式)
- YOLO (一般文字格式)

這邊我所使用的是Labelimg,因此產出格式是xml。需要轉換成Yolo使用的純文字檔格式

若考慮到常用,也可以寫支小程式進行資料轉換。

但請注意需要轉換公式:

轉換公式:

x = (xmin + (xmax-xmin)/2) * 1.0 / image_w

y = (ymin + (ymax-ymin)/2) * 1.0 / image_h

w = (xmax-xmin) * 1.0 / image_w

h = (ymax-ymin) * 1.0 / image_h

 

Yolo格式

[類別編號] [Center_X] [Center_Y] [Width] [Height]

- 類別編號 指標籤時,定義的名稱順序編號
- Center_X 指透過上述轉換公式得到的x
- Center_Y 指透過上述轉換公式得到的y
- Width 指透過上述轉換公式得到的w
- Height 指透過上述轉換公式得到的h

一個txt檔一筆資料,資料欄位中間用一般空白鍵區分

 

 

這邊很重要一件事(我也採坑了)

如果使用Labelimg,請注意xml資料內。是否有width, height欄位資料。否則轉換公式無法使用。只能採用外部設定。

 

 

採坑後產生結果,可看到後兩位沒有資料0.0。這是不正常的情況。

  下面這個才是正確的結果:

 

3. cfg資料夾

主要檔案有四個

3.1 obj.data (用文字檔編輯)


################檔案內容

classes= 2

train = .../RecyclingMachine/cfg/train.txt

valid = .../RecyclingMachine/cfg/test.txt

names = .../RecyclingMachine/cfg/obj.names

backup = .../RecyclingMachine/cfg/weights/


################檔案內容

這檔案就是存放路徑的地方! "..."就是你的跟目錄的路徑,請修改成實際路徑。

 

3.2 obj.name

################檔案內容

glass jar
aluminum can
tin can
PVE bottle
PVC bottle
Tetra Pak

################檔案內容

這邊就是分類的類別名稱。順序必須跟Labeling時一致。否則會造成分錯類的情況。

 

3.3 test.txt
################檔案內容

.../TestImage/00001.bmp
.../TestImage/00009.bmp
.../TestImage/00012.bmp

################檔案內容
這邊就是填寫你要的辨識圖片,提供快速測試的部分。"..."請修改成實際路徑。

 

3.4 train.txt


################檔案內容

.../Yolo_Label/00001.bmp
.../Yolo_Label/00002.bmp
.../Yolo_Label/00003.bmp
.../Yolo_Label/00004.bmp
.../Yolo_Label/00005.bmp
.../Yolo_Label/00006.bmp
.../Yolo_Label/00007.bmp
.../Yolo_Label/00008.bmp
.../Yolo_Label/00009.bmp
.../Yolo_Label/00010.bmp
.../Yolo_Label/00011.bmp
.../Yolo_Label/00012.bmp
.../Yolo_Label/00013.bmp
.../Yolo_Label/00014.bmp
.../Yolo_Label/00015.bmp
.../Yolo_Label/00016.bmp
.../Yolo_Label/00019.bmp

################檔案內容
這邊就是填寫你要的辨識圖片,提供快速測試的部分。"..."請修改成實際路徑。

 

到這邊基本上,你已經解鎖了一個職稱。[資料標記工程師] 一職了。恭喜~

但這份工作內容也是需要反覆看資料進行正確標籤的工作。重複性高,資料量大。需要注意

----------------------------------------------------------------------------------------

 

 

創作者介紹
創作者 IMM 的頭像
IMM-AT

IMM

IMM-AT 發表在 痞客邦 留言(0) 人氣( 1 )