Deep Learningで物体検出などの学習を行う際には予め物体の位置が入力したデータを用意しておく必要があります。
例えば、以下の画像から顔の位置を学習させようとした場合顔の位置のバウンティングボックスの座標やサイズが入力されたデータが必要になります。
基本的にアノテーション作業は手動で行うかと思いますが学習には大量のデータが必要になるためこの作業はなるべく効率化させたいです。
そしてこのアノテーション作業を効率化させてくれるソフトの一つが「Labelme」です。
今回はLabelmeのインストール方法と使い方についてまとめます。
1. Labelmeのインストール
Labelmeのインストール方法はいくつかありますが、今回は「Anaconda」経由でインストールします。
まず「Anaconda Navibator」を開き、Environmentsから任意の仮想環境のターミナルを開きます(仮想環境はどれでも良い)。

次にターミナルから
pip install labelme
と入力し「Labelme」のインストールを行います。

そしてターミナルから
labelme
と入力するか、タスクバーから「labelme.exe」を検索して起動します。


2. 使い方
Labelmeを起動すると図のような画面が表示されます。
ここでは基本的な使い方について解説します。

2.1. ファイルまたはフォルダを選択
まずは左上の「Open」または「OpenDir」を選択します。


「OpenDir」を選択した場合は右下にフォルダ内のファイルパスが表示されます。


2.2. アノテーション
次にアノテーションを行います。
画像の上で右クリックを行うと図のようなメニューが表示されるので図形の種類を選択します。
ここでは「Create Rectangle」を選択します。

「Create Rectangle」の場合は始点と終点を左クリックで指定します。


そして、ラベル付け(必要ならGroup IDも)を行い「OK」を押します。

ラベル付けが完了すると右側にラベルが表示されます。

2.3. 保存
アノテーションが完了したら、タスクバーの「Save」もしくは「Ctrl+S」でデータの保存を行います。

アノテーションデータはJSON形式で保存されます。

JSONファイルが画像と同じディレクトリにあれば、アノテーションが完了した画像にチェックがつきます。

3. 図形の種類
3.1. Create Polygons
左クリックで指定したところを繋いで自由な形状を描画できます。


3.2. Create Rectangle
始点と終点をそれぞれ左クリックで指定し矩形を描画できます。

3.3. Create Circle
左クリックした位置を中心に円を描画できます。

3.4. Create Line
始点と終点をそれぞれ左クリックで指定し線を描画できます。

3.5. Create Point
左クリックで点を描画できます。

3.6. Create LineStrip
左クリックで線を繋いでいき、ダブルクリックで終了…のはずですが私の環境(Labelme Ver5.5.0)では終了させられませんでした。
さらにLineStripを終了させずに他の図形に切り替えるとLabelmeが落ちるので使わないほうが良いかもしれません。

3.7. Create AI-Polygon
左クリックした領域周辺から自動でポリゴン図形を作成してくれます。
他の処理と比較して多少時間がかかります。

3.8. Create AI-Mask
AI-Polygonと同様に左クリックで指定した領域を自動でマスクしてくれます。

4. 編集機能
右クリックで表示されるメニューの「Edit Polygons」で図形の編集ができます。

主な機能としては以下の通りです。
- ドラッグ&ドロップで図形を移動
- 「Edit Label」でラベルの編集
- 「Duplicate Polygons」または「Copy Polygons&Paste Polygons」で図形を複製
- 「Delete Polygons」で図形の削除
- 「Undo」または「Ctrl+Z」で戻る
今回は以上です。




コメント