labelme是一款在例項分割、語義分割、目標檢測等任務中的一個常用工具,本文將介紹如何使用labelme。
labelme有各種版本,包括ubuntu、windows、macOS等。關於windows版本,也可以下載其相關的exe檔案https://github.com/wkentaro/labelme/releases來使用標註
一、安裝labelme第三方庫
labelme開源庫連結:https://github.com/wkentaro/labelme/tree/main
官方教程很詳細,可按照官方教程進行安裝,下面只是幾個重要步驟:
開始安裝前,確保你已經有python環境,並且有安裝pip工具(或anaconda也可以)
linux和windows的安裝過程類似,直接使用指令:pip install labelme
或者使用conda指令安裝(前提是安裝好anaconda):conda install labelme
或者使用指令從github中安裝:pip3 install git+https://github.com/labelmeai/labelme
二、使用labelme進行標註(非linux環境)
1.首先進入圖片目錄
其中images資料夾存放的是圖片,labels.txt存放的是標籤資訊,標籤資訊如下(前兩項是必須要有的):
__ignore__
_background_
airplane
car
cat
person
bird
tree
2.啟動lebelme
使用命令列:labelme ./images --labels ./labels.txt --nodata --validatelabel exact
釋義:
images 是要處理的資料目錄。
--labels labels.txt 指定標籤檔案,定義可用的標籤。
--nodata 表示不載入任何資料,只進行標籤驗證。
--validatelabel exact 設定標籤驗證的精確性。
更多指令可見相關原始碼:labelme/labelme/__main__.py
3.標註
可建立多種型別:
例如在目標檢測任務中,需要標註目標物體的位置資訊(大致邊框範圍)時,可用矩形
語義分割任務中我們需要詳細指導物體的邊緣,可以選擇多邊形
三、生成各類資料集
在官方原始碼的examples/instance_segmentation
資料夾下寫好了生成指令碼(其他對應的示例資料夾也有):
例如,想生成語義分割等任務的資料集,可以使用指令:./labelme2voc.py ./images ./OutImages --labels labels.txt
其中:
./labelme2voc.py 是要執行的指令碼,位於當前目錄。
images 是輸入資料目錄,包含 LabelMe 格式的標註檔案。
OutImages 是輸出目錄,將儲存轉換後的 Pascal VOC 格式的資料。
--labels labels.txt 指定標籤檔案,用於定義轉換過程中使用的標籤。