annotation_specs add_attributes#

Description#

アノテーション仕様に複数の属性を追加します。選択肢系属性(ラジオボタン/ドロップダウン)もJSONでまとめて指定できます。

1件の選択肢系属性を追加し、選択肢情報をCSVで指定したい場合は annotation_specs add_choice_attribute を使用してください。

Examples#

JSON形式で指定する場合#

attributes.json#
[
    {
        "attribute_type": "flag",
        "attribute_name_en": "unclear",
        "read_only": true,
        "default_value": false,
        "keybind": {
            "alt": false,
            "code": "Digit1",
            "ctrl": true,
            "shift": false
        },
        "label_name_ens": ["car", "bus"]
    },
    {
        "attribute_type": "select",
        "attribute_name_en": "weather",
        "choices": [
            {
                "choice_name_en": "sunny",
                "choice_name_ja": "晴れ",
                "is_default": true,
                "keybind": {
                    "alt": false,
                    "code": "Digit2",
                    "ctrl": true,
                    "shift": false
                }
            },
            {
                "choice_name_en": "cloudy",
                "choice_name_ja": "曇り"
            }
        ],
        "label_name_ens": ["bike"]
    }
]
$ annofabcli annotation_specs add_attributes \
 --project_id prj1 \
 --attribute_json file://attributes.json

--attribute_json の構造#

--attribute_json には、属性情報のJSON配列を指定します。各要素は1件の属性を表すJSONオブジェクトです。

各属性オブジェクトでは、以下のキーを指定できます。

  • attribute_type : 必須。属性の種類。指定できる値は --attribute_type に指定できる値 を参照してください。

  • attribute_name_en : 必須。属性名(英語)。

  • label_name_ens : label_ids とどちらか一方が必須。属性を追加する対象ラベルの英語名一覧。

  • label_ids : label_name_ens とどちらか一方が必須。属性を追加する対象ラベルの label_id 一覧。

  • attribute_name_ja : 任意。属性名(日本語)。

  • attribute_id : 任意。属性ID。未指定の場合はUUIDv4が自動生成されます。

  • read_only : 任意。 true を指定すると読み込み専用の属性として追加します。未指定の場合は false です。

  • default_value : 任意。非選択肢系属性の初期値。 attribute_typeflag の場合は真偽値、 integer の場合は整数、その他の場合は文字列を指定します。 choice または select では指定できません。

  • keybind : 任意。属性に設定するキーボードショートカット。JSONオブジェクトを指定してください。 code に指定できる値は、 KeyboardEvent.code を参照してください。

  • choices : attribute_typechoice または select のとき必須。選択肢情報の配列です。各要素では、以下のキーを指定できます。

    • choice_name_en : 必須。選択肢名(英語)。

    • choice_name_ja : 任意。選択肢名(日本語)。

    • choice_id : 任意。選択肢ID。未指定の場合はUUIDv4が自動生成されます。

    • is_default : 任意。 true を指定すると属性の初期値として使用します。未指定の場合は false です。

    • keybind : 任意。選択肢に設定するキーボードショートカット。JSONオブジェクトを指定してください。

attribute_type には、非選択肢系属性の値に加えて choiceselect も指定できます。

Usage Details#

アノテーション仕様に属性を追加します。選択肢系属性もJSONで指定できます。選択肢をCSVで指定したい場合は add_choice_attribute コマンドを使用してください。

usage: annofabcli annotation_specs add_attributes [-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 --attribute_json
                                                  ATTRIBUTE_JSON
                                                  [--comment COMMENT]

Named Arguments#

-p, --project_id

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

--attribute_json

追加する属性情報のJSON配列を指定します。 file:// を先頭に付けるとJSON形式のファイルを指定できます。 属性と選択肢には任意で keybind を指定できます。 keybind にはJSONオブジェクトを指定してください。 (例) [{"attribute_type": "flag", "attribute_name_en": "occluded", "attribute_name_ja": "隠れ", "read_only": false, "default_value": false, "keybind": {"alt": false, "code": "Digit1", "ctrl": true, "shift": false}, "label_name_ens": ["car", "bus"]}, {"attribute_type": "select", "attribute_name_en": "weather", "choices": [{"choice_name_en": "sunny", "choice_name_ja": "晴れ", "is_default": true, "keybind": {"alt": false, "code": "Digit2", "ctrl": true, "shift": false}}, {"choice_name_en": "cloudy", "choice_name_ja": "曇り"}], "label_ids": ["40f7796b-3722-4eed-9c0c-04a27f9165d2"]}]

--comment

アノテーション仕様の変更内容を説明するコメント。未指定の場合、自動でコメントが生成されます。

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