画像プロジェクトのアノテーションフォーマット
画像プロジェクトのアノテーションのフォーマットについて記載します。
details[].data
details[].data
矩形
矩形の左上と左下の頂点の座標値が格納されています。
{
"left_top": {
"x": 1544,
"y": 755
},
"right_bottom": {
"x": 1681,
"y": 882
},
"_type": "BoundingBox"
}
点
{
"point": {
"x": 25,
"y": 18
},
"_type": "SinglePoint"
}
ポリライン
{
"points": [
{
"x": 22,
"y": 29
},
{
"x": 33,
"y": 41
}
],
"_type": "Points"
}
ポリゴン
{
"points": [
{
"x": 15,
"y": 55
},
{
"x": 12,
"y": 49
},
{
"x": 9,
"y": 43
},
{
"x": 16,
"y": 36
}
],
"_type": "Points"
},
ポリゴンとポリラインの
_type
はどちらもPoints
です。
塗りつぶし
塗りつぶしの情報は画像ファイル(塗りつぶし画像)に格納されます。data_uri
に塗りつぶし画像のファイル名が格納されます。
{
"data_uri": "ee83756f-074d-4aab-8bfc-6ab6e754c2b8",
"_type": "Segmentation"
},
塗りつぶし画像
塗りつぶし画像の仕様は以下の通りです。
- 画像ファイルのフォーマット:PNG
- 画像サイズ:対応する入力データの画像サイズと同じ
- 塗りつぶされた部分の色:
rgba(255, 255, 255, 1)
- 塗りつぶされていない部分の色:
rgba(0, 0, 0, 0)
塗りつぶし画像のサンプル もご確認ください。
塗りつぶしv2
_type
の値以外は、「塗りつぶし」アノテーションと差異はありません。
{
"data_uri": "ee83756f-074d-4aab-8bfc-6ab6e754c2b8",
"_type": "SegmentationV2"
},
全体
画像全体に対して属性を付与するラベルのため、_type
以外の情報をありません。
{
"_type": "Classification"
}
details
に格納されているアノテーションの順序
details
に格納されているアノテーションの順序details
には、前面にあるアノテーションから背面の順に格納されます。アノテーションが前面にあるか背面にあるかは、画像エディタ画面の順序パネルで確認できます。
補足
塗りつぶし画像を読み込む
annofabapi.segmentation モジュールでは、塗りつぶし画像を扱うためのライブラリを用意しています。
たとえば以下のコードは、塗りつぶし画像を読み込み、dtype
がbool
であるnumpy配列を生成しています。
In [3]: from annofabapi.segmentation import read_binary_image
In [4]: data = read_binary_image("task_id1/input_data_id11/anno1")
In [5]: type(data)
Out[5]: numpy.ndarray
In [6]: data.shape
Out[6]: (64, 64)
In [7]: data.dtype
Out[7]: dtype('bool')
Updated 6 days ago