annotation change_label_per_annotation#

Description#

各アノテーションのラベルを個別に変更します。 作業中状態のタスクに含まれるアノテーションは変更できません。 保留中状態のタスクは、既定ではスキップされます。処理する場合は --include_on_hold_task を参照してください。

警告

変更後のラベルに存在しない属性は削除されます。

Examples#

変更内容をJSON形式で指定する#

引数 --json に、変更対象のアノテーション( task_id 、 input_data_id 、 annotation_id )と変更後の label_id または label_name を指定します。各レコードでどちらか一方を指定してください。 label_name は英語名を指定します。同名ラベルが複数存在する場合はエラーになるため、その場合は label_id を指定してください。

annotations.json#
[
  {
    "task_id": "t1",
    "input_data_id": "i1",
    "annotation_id": "a1",
    "label_name": "car"
  }
]
$ annofabcli annotation change_label_per_annotation --project_id p1 \
  --json file://annotations.json \
  --backup backup_dir/

変更内容をCSVで指定する#

引数 --csv に、変更対象のアノテーションと変更後のラベルが記載されたCSVファイルを指定します。

列名

必須

備考

task_id

Yes

input_data_id

Yes

annotation_id

Yes

label_id

Either

変更後ラベルのID。 label_name と排他的

label_name

Either

変更後ラベルの英語名。 label_id と排他的

annotations.csv#
task_id,input_data_id,annotation_id,label_name
t1,i1,a1,car
$ annofabcli annotation change_label_per_annotation --project_id p1 \
  --csv annotations.csv \
  --backup backup_dir/

--task_id で変更対象を絞り込む#

--task_id を指定すると、 --json または --csv に指定した変更対象のうち、一致するtask_idのアノテーションだけを変更します。指定例は annotation change_attributes_per_annotation を参照してください。

その他のオプション#

--backup にディレクトリを指定すると、変更対象のフレームに含まれるアノテーション情報を、指定したディレクトリに保存します。アノテーション情報の復元は、 annofabcli annotation restore コマンドで実現できます。

完了状態のタスクに含まれるアノテーションも変更するには、 --include_complete_task を指定してください。ただし、オーナーロールのユーザーで実行する必要があります。

Usage Details#

各アノテーションのラベルを変更します。

usage: annofabcli annotation change_label_per_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] -p
                                                         PROJECT_ID
                                                         (--json JSON | --csv CSV)
                                                         [-t TASK_ID [TASK_ID ...]]
                                                         [--include_complete_task]
                                                         [--include_on_hold_task]
                                                         [--backup BACKUP]

Named Arguments#

-p, --project_id

対象のプロジェクトのproject_idを指定します。

--json

各アノテーションごとに変更内容を記載したJSONリストを指定します。file:// を先頭に付けるとJSON形式のファイルを指定できます。 (例) '[{"task_id": "t1", "input_data_id": "i1", "annotation_id": "a1", "label_name": "car"}]'

--csv

各アノテーションごとに変更内容を記載したCSVファイルを指定します。 * task_id, input_data_id, annotation_id と、 label_id または label_name のいずれかのカラムが必要です。

-t, --task_id

変更対象のアノテーションをtask_idで絞り込みます。 --json や --csv で指定したデータのうち、一致したtask_idのみを処理します。 file:// を先頭に付けると、task_idの一覧が記載されたファイルを指定できます。ファイルを読み込む場合は、ファイル指定を1個だけ渡してください。直接指定するIDや別のファイル指定とは併用できません。

--include_complete_task

指定した場合は、完了状態のタスクのアノテーションラベルも変更します。ただし、オーナーロールを持つユーザーでしか実行できません。

--include_on_hold_task

保留中状態のタスクに含まれるアノテーションも変更します。未指定の場合、保留中状態のタスクはスキップされます。

--backup

アノテーションのバックアップを保存するディレクトリのパス。アノテーションの復元は annotation restore コマンドで実現できます。

common options (after the subcommand)#

--yes

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

--endpoint_url

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

--annofab_user_id

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

--annofab_password

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

--annofab_pat

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

--logdir

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

Default: .log

--disable_log

ログを無効にします。

--debug

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

オーナロールまたはチェッカーロールを持つユーザで実行してください。