annotation_zip list_3d_bounding_box_annotation#

Description#

アノテーションZIPから3Dバウンディングボックス(CUBOID)アノテーションの座標情報を出力します。

Examples#

基本的な使い方#

$ annofabcli annotation_zip list_3d_bounding_box_annotation --project_id prj1 --output out.csv

出力例(JSON形式)#

$ annofabcli annotation_zip list_3d_bounding_box_annotation --project_id prj1 --output out.json --format pretty_json
out.json#
[
  {
    "project_id": "proj1",
    "task_id": "task_00",
    "task_status": "complete",
    "task_phase": "annotation",
    "task_phase_stage": 1,
    "input_data_id": "i1",
    "input_data_name": "i1.bin",
    "updated_datetime": "2023-10-01T12:00:00.000+09:00",
    "label": "car",
    "annotation_id": "ann1",
    "annotation_editor_url": "https://d2rljy8mjgrfyd.cloudfront.net/3d-editor-latest/index.html?p=proj1&t=task_00/#i1/ann1",
    "dimensions": {
      "width": 2.39,
      "height": 1.56,
      "depth": 5.16
    },
    "location": {
      "x": -0.32,
      "y": 13.09,
      "z": 0.71
    },
    "rotation": {
      "x": 0,
      "y": 0,
      "z": 4.71
    },
    "direction": {
      "front": {
        "x": 0,
        "y": -1,
        "z": 0
      },
      "up": {
        "x": 0,
        "y": 0,
        "z": 1
      }
    },
    "volume": 19.3,
    "footprint_area": 12.3,
    "bottom_z": -0.06,
    "top_z": 1.49,
    "horizontal_distance": 13.09,
    "attributes": {
      "occluded": true,
      "type": "sedan"
    }
  }
]

特定のラベルのみを出力#

$ annofabcli annotation_zip list_3d_bounding_box_annotation --project_id prj1 \
 --label_name car truck --output out.csv

アノテーションZIPを直接指定#

$ annofabcli annotation_zip list_3d_bounding_box_annotation --annotation annotation.zip --output out.csv

出力項目について#

CSVまたはJSON形式で以下の項目が出力されます。

基本情報#

  • project_id: プロジェクトID

  • task_id: タスクID

  • task_status: タスクステータス

  • task_phase: タスクフェーズ

  • task_phase_stage: タスクフェーズステージ

  • input_data_id: 入力データID

  • input_data_name: 入力データ名

  • updated_datetime: アノテーションJSONの更新日時

  • label: ラベル名

  • annotation_id: アノテーションID

  • annotation_editor_url: アノテーションエディタのURL。対象のアノテーションを直接開くことができます。

3Dバウンディングボックス情報#

アノテーションJSONと同様の形式で出力されます。

  • dimensions: サイズ情報(width, height, depth)

  • location: 中心座標(x, y, z)

  • rotation: 回転情報(x=roll, y=pitch, z=yaw)

  • direction: 方向ベクトル(front, up)。CSV形式では出力されません

追加情報#

アノテーションJSONに含まれていない以下の項目も出力されます。

  • volume: 体積(width × height × depth)

  • footprint_area: 底面積(width × depth)。地面占有面積。

  • bottom_z: 底面のZ座標(location.z - height/2)。回転は考慮していない。

  • top_z: 天面のZ座標(location.z + height/2)。回転は考慮していない。

  • horizontal_distance: 原点(0, 0)からのXY平面上の距離(sqrt(location.x² + location.y²))

属性情報#

  • attributes: 属性情報。JSON形式ではオブジェクト、CSV形式では attributes.属性名 の形式で列が追加されます。

Usage Details#

アノテーションZIPから3Dバウンディングボックス(CUBOID)アノテーションの座標情報を出力します。

usage: annofabcli annotation_zip list_3d_bounding_box_annotation
       [-h] [--yes] [--endpoint_url ENDPOINT_URL]
       [--annofab_user_id ANNOFAB_USER_ID]
       [--annofab_password ANNOFAB_PASSWORD] [--annofab_pat ANNOFAB_PAT]
       [--logdir LOGDIR] [--disable_log] [--debug]
       (--annotation ANNOTATION | -p PROJECT_ID) [-f {csv,json,pretty_json}]
       [-o OUTPUT] [-tq TASK_QUERY] [-t TASK_ID [TASK_ID ...]]
       [--label_name LABEL_NAME [LABEL_NAME ...]] [--latest]
       [--temp_dir TEMP_DIR]

Named Arguments#

--annotation

アノテーションzip、またはzipを展開したディレクトリを指定します。

-p, --project_id

project_id。アノテーションZIPをダウンロードします。

-f, --format

Possible choices: csv, json, pretty_json

出力フォーマットを指定します。

Default: 'csv'

-o, --output

出力先のファイルパスを指定します。未指定の場合は、標準出力に出力されます。

-tq, --task_query

集計対象タスクを絞り込むためのクエリ条件をJSON形式で指定します。使用できるキーは task_id, status, phase, phase_stage です。 file:// を先頭に付けると、JSON形式のファイルを指定できます。

-t, --task_id

対象のタスクのtask_idを指定します。 file:// を先頭に付けると、task_idの一覧が記載されたファイルを指定できます。

--label_name

指定したラベル名の3Dバウンディングボックスアノテーションのみを対象にします。複数指定できます。

--latest

--annotation を指定しないとき、最新のアノテーションzipを参照します。このオプションを指定すると、アノテーションzipを更新するのに数分待ちます。

--temp_dir

指定したディレクトリに、アノテーションZIPなどの一時ファイルをダウンロードします。

global optional arguments#

--yes

処理中に現れる問い合わせに対して、常に yes と回答します。

--endpoint_url

Annofab WebAPIのエンドポイントを指定します。

Default: 'https://annofab.com'

--annofab_user_id

Annofabにログインする際のユーザーID

--annofab_password

Annofabにログインする際のパスワード

--annofab_pat

Annofabにログインする際のパーソナルアクセストークン

--logdir

ログファイルを保存するディレクトリを指定します。

Default: .log

--disable_log

ログを無効にします。

--debug

HTTPリクエストの内容やレスポンスのステータスコードなど、デバッグ用のログが出力されます。

アノテーションZIPをダウンロードする場合は、オーナロールまたはアノテーションユーザロールを持つユーザで実行してください。