annotation delete#

Description#

タスク配下のアノテーションを削除します。

Examples#

基本的な使い方#

--task_id に削除対象のタスクのtask_idを指定してください。

$ annofabcli annotation delete --project_id prj1 --task_id file://task.txt \
--backup backup

--backup にディレクトリを指定すると、削除対象のタスクのアノテーション情報を、バックアップとしてディレクトリに保存します。 アノテーション情報の復元は、 annofabcli annotation restore コマンドで実現できます。

注釈

間違えてアノテーションを削除したときに復元できるようにするため、--backup を指定することを推奨します。

削除するアノテーションを絞り込む場合は、 --annotation_query を指定してください。 --annotation_query のサンプルは、 Command line options を参照してください。

以下のコマンドは、ラベル名(英語)の値が "car" で、属性名(英語)が "occluded" である値が false ("occluded"チェックボックスをOFF)であるアノテーションを削除します。

$ annofabcli annotation delete --project_id prj1 --task_id file://task.txt \
--annotation_query '{"label": "car", "attributes":{"occluded": false}}' \
--backup backup_dir/

注釈

作業中状態のタスクに含まれるアノテーションは削除できません。 完了状態のタスクのアノテーションは、デフォルトでは削除できません。 --include_complete_task を指定すれば、完了状態のタスクに含まれるアノテーションも削除できます。

CSVに annotation_id を指定して削除する#

CSVのフォーマットは以下の通りです。

  • カンマ区切り

  • ヘッダ行あり

列名

必須

備考

task_id

Yes

input_data_id

Yes

annotation_id

Yes

以下はCSVファイルのサンプルです。

annotation.csv#
task_id,input_data_id,annotation_id
t1,i1,a1
t1,i1,a2
t2,i2,a3
$ annofabcli annotation delete --project_id p1 --csv annotation.csv

annotation_id をJSON形式で指定して削除する#

以下は、JSONファイルのサンプルです。

annotation.json#
[
    {
        "task_id": "t1",
        "input_data_id":"i1",
        "annotation_id": "a1"
    }
]

JSONのキーは、 --csv に指定するCSVファイルの列に対応します。 --json にJSON形式の文字列、またはJSONファイルのパスを指定できます。

$ annofabcli annotation delete --project_id p1 --json file://annotation.json

Usage Details#

タスク配下のアノテーションを削除します。ただし、作業中状態のタスクのアノテーションは削除できません。間違えてアノテーションを削除したときに復元できるようにするため、 --backup でバックアップ用のディレクトリを指定することを推奨します。

usage: annofabcli annotation delete [-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
                                    (-t TASK_ID [TASK_ID ...] | --json JSON | --csv CSV)
                                    [-aq ANNOTATION_QUERY]
                                    [--include_complete_task]
                                    [--backup BACKUP]

Named Arguments#

-p, --project_id

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

-t, --task_id

削除対象のアノテーションが含まれているタスクのtask_idを指定します。 file:// を先頭に付けると、task_idの一覧が記載されたファイルを指定できます。

--json

削除対象のアノテーションをJSON配列で指定します。例: [{"task_id": "t1", "input_data_id": "i1", "annotation_id": "a1"}]

--csv

削除対象のアノテーションを記載したCSVファイルを指定します。例: task_id,input_data_id,annotation_id

-aq, --annotation_query

削除対象のアノテーションを検索する条件をJSON形式で指定します。--csv または --json を指定した場合は、このオプションは無視されます。file:// を先頭に付けると、JSON形式のファイルを指定できます。(ex): {"label": "car", "attributes": {"occluded": true}}

--include_complete_task

指定した場合は、完了状態のタスクのアノテーションも削除します。ただし、完了状態のタスクを削除するには、オーナーロールを持つユーザーが実行する必要があります。

--backup

アノテーションのバックアップを保存するディレクトリを指定してください。アノテーションの復元は annotation restore コマンドで実現できます。

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リクエストの内容やレスポンスのステータスコードなど、デバッグ用のログが出力されます。

オーナーまたはチェッカーロールを持つユーザで実行してください。ただし``--include_complete_task``オプションを指定した場合は、オーナーロールを持つユーザで実行してください。

See also#