天天看點

訓練模型第一步--------使用LabelImg建立資料标簽裝機環境:Win10+Python3.5一、LabelImg是什麼?二、前提準備工作三、安裝四、實驗

裝機環境:Win10+Python3.5

一、LabelImg是什麼?

      LabelImg 是一個圖形圖像注釋工具,采用 Python 編寫而成,并使用 Qt 作為其圖形界面

二、前提準備工作

      0.在這裡,我預設你已經安裝好了Python以及確定帶有Pip(Python3.0以上一般都會自帶)

      1.安裝PyQt5.       

pip install PyQt5 
           

        這裡還是多說一句吧,由于網絡原因等等吧,上述指令不一定會執行成功。結局辦法:手動下載下傳whl檔案。在執行上述腳本的之後,pip會根據你目前電腦環境版本自動尋找一個最适合你下載下傳的庫。比如:

訓練模型第一步--------使用LabelImg建立資料标簽裝機環境:Win10+Python3.5一、LabelImg是什麼?二、前提準備工作三、安裝四、實驗

         可以看到,我這裡pip自動為我尋找的PyQt5的版本是PyQt5-5.15.2-5.15.2-cp35.cp36.cp37.cp38.cp39-none-win_amd64.whl。諸如此類問題吧,都可以這樣手動解決,下面附上一個下載下傳位址:

         https://pypi.org/project/

        2.安裝安裝PyQt5-tools

pip install pyqt5-tools
           

         安裝不了參考上面的解決辦法

        3.安裝lxml

pip install lxml
           

        4. 最重要的,LabelImg下載下傳Dowmload

三、安裝

      編譯pyrcc編譯源檔案

      進入到labelImg的安裝根目錄,執行

pyrcc5 -o resources.py resources.qrc
python labelImg.py
           

      不出意外地話,會彈出一個視窗:

訓練模型第一步--------使用LabelImg建立資料标簽裝機環境:Win10+Python3.5一、LabelImg是什麼?二、前提準備工作三、安裝四、實驗

        貼一下Github上關于labelimg的安裝說名:

訓練模型第一步--------使用LabelImg建立資料标簽裝機環境:Win10+Python3.5一、LabelImg是什麼?二、前提準備工作三、安裝四、實驗

        至此,安裝工作完成。

四、實驗

       資料集不大,模型沒有意義。

1.資料标注流程:

       (1)打開labelImg之後,點選Open Dir選擇要處理的圖檔所在的檔案夾

訓練模型第一步--------使用LabelImg建立資料标簽裝機環境:Win10+Python3.5一、LabelImg是什麼?二、前提準備工作三、安裝四、實驗

        (2)點選Create RectBox建立标注區域,并命名

訓練模型第一步--------使用LabelImg建立資料标簽裝機環境:Win10+Python3.5一、LabelImg是什麼?二、前提準備工作三、安裝四、實驗
訓練模型第一步--------使用LabelImg建立資料标簽裝機環境:Win10+Python3.5一、LabelImg是什麼?二、前提準備工作三、安裝四、實驗

        (3)點選Save,NextImage。以此類推。

          在完成所有的資料樣本的标注之後,我們可以得到下面成果,每一張圖檔後面都有一個與其名字相同的xml檔案。

          !!!!!!!!圖檔先欠着。

2.XML轉TXT

          YOLO需要的是TXT格式,是以我們需要轉換~

打開一個XML檔案先檢視裡面的格式和内容

訓練模型第一步--------使用LabelImg建立資料标簽裝機環境:Win10+Python3.5一、LabelImg是什麼?二、前提準備工作三、安裝四、實驗
解釋幾個重點節點:
<width>:圖檔的寬度
<height>:圖檔的高度
<name>:圖檔的類别的名字
<!--------------------------------------->
<xmin>:标注框左上角的x坐标
<ymin>:标注框左上角的y坐标
<xmax>:标注框右上角的x坐标
<ymax>:标注框右上角的y坐标
           

而TXT要求的格式:

<object-class> <x_center> <y_center> <width> <height>
<!--------------------------------------------------->
<object-class>該圖檔所擁有的類别,在車牌檢測中就是車牌代表
的數字,因為隻有檢測車牌即隻有1類,是以是0
<!--------------------------------------------------->
<x_center> 中心點橫坐标:這裡的坐标并不是絕對坐标(真實坐标),
而是相對于圖檔寬度的相對坐标,轉換公式為:
<x_center> = <absolute_x> / <image_width>,這裡的absolute_x是名額注框中心的橫坐标,即(xmin+xmax)/2
<!--------------------------------------------------->
<y_center> 中心的縱坐标:這裡的坐标并不是絕對坐标(真實坐标),
而是相對于圖檔高度的相對坐标,轉換公式為:
<y_center> = <absolute_y> / <image_height>,這裡的absolute_y是名額注框中心的橫坐标,即(ymin+ymax)/2
<!--------------------------------------------------->
<width> 标注框寬度:這裡的寬度并不是絕對寬度(真實寬度),而是相對于圖檔寬度的相對寬度,轉換公式為<width> = <absolute_width> / <image_width>,即(xmax-xmin) / <image_width>

<height> 标注框寬度:這裡的寬度并不是絕對寬度(真實寬度),而是相對于圖檔寬度的相對高度,轉換公式為<height> = <absolute_height> / <image_height>,即(ymax-ymin) / <image_height>
           

繼續閱讀