こんにちは、タナカです。
この記事では、アノテーションツールであるlabelmeの使い方を紹介します。
オープンソース(無料)で使えるアノテーションツールとして有名なものにlabelmeがあります。
labelmeはセマンティックセグメンテーションやインスタンスセグメンテーションなどの画像タスクに対してアノテーションを実施するツールになります。
labelmeはローカルで使えるため企業が保持する機密情報に対しても気にせず、アノテーションを実施することができます。
今回はそんなlabelmeの使い方を紹介します。
labelmeを使ってアノテーションする方法がわかる
1. labelmeとは
labelmeはMITによって開発されたアノテーションツールです。
オープンソースであり誰でも無料で利用することができます。
機械学習のセマンティックセグメンテーションやインスタンスセグメンテーション用のデータセットを作成するために使用します。
GUI(グラフィックユーザーインターフェース)なので直感的に操作することができ、polygonや矩形、円などの図形でアノテーションをすることができます。
2. labelmeをインストールする
labelmeは外部ライブラリなので、pip等を用いてインストールする必要があります。
コマンドプロンプトや仮想環境などで下記コマンドを入力します。
pip install labelme
githubにもインストール方法が記載されています。
3. labelmeを起動する
labelmeはコマンドプロンプトやanacondaの仮想環境上で「labelme」と入力することで起動できます。私の場合は、anacondaでwordpressという仮想環境を作っていますので、そこで起動しています。
4. labelmeを使う
起動させたlabelmeを使うためには画像を読み込む必要があります。左上のopen or open Dirから画像を読み込みます。
openは画像1枚を読み込み、open Dirは1つのフォルダを選択し、その中に保存されている複数の画像を読み込むことができます。
今回はopen Dirを選択し画像を読み込みたいと思います。
フォルダを選択するとlabelmeの画面上に画像が表示されます。
サイドバーのCreate Polygonsを選択すると画像をクリックできるようになり、ポリゴン(頂点)を作成することができます。
開始位置のポリゴンと重ね合わせるとラベル名を聞かれますので、任意の名前を付けます。
アノテーションができたらsaveを選択し、アノテーションデータをjsonファイルとして保存します。このときjsonファイルの保存名は特に変更しなくて大丈夫です。
jsonファイルの中にはアノテーションでポチポチしたときのポリゴンの座標情報や画像データ、ラベル名などが保存されています。
これでlabelmeによるアノテーションは終了になります。
次回は作成したjsonファイルを使ってセグメンテーションをするためのデータセットの作り方を紹介します。
まとめ
オープンソースとして有名なアノテーションツールであるlabelmeの使い方を紹介しました。
使い方もシンプルで無料かつローカルで使えるため、かなり重宝しています。
皆さんもぜひ使ってみてください。