Skip to main content

Utility Command Line Interface for AnnoFab

Project description

annofab-cli

AnnofabのCLI(Command Line Interface)ツールです。 「タスクの一括差し戻し」や、「タスク一覧出力」など、Annofabの画面で実施するには時間がかかる操作を、コマンドとして提供しています。

Build Status PyPI version Python Versions Documentation Status

注意

  • 作者または著作権者は、ソフトウェアに関してなんら責任を負いません。
  • 予告なく互換性のない変更がある可能性をご了承ください。
  • Annofabプロジェクトに大きな変更を及ぼすコマンドも存在します。間違えて実行してしまわないよう、注意してご利用ください。

廃止予定

2022-04-01 以降

  • python3.7のサポートを廃止して、python3.8以上をサポートするようにします。

2022-07-01 以降

  • project downloadコマンドを廃止します。project downloadコマンドは、名前からどのようなファイルがダウンロードできるのか想像しにくいためです。替わりにannotation downloadコマンドなど、各リソースに対するdownloadコマンドをご利用ください。

Requirements

  • Python 3.7.1+

Install

$ pip install annofabcli

https://pypi.org/project/annofabcli/

Windows用の実行ファイルを利用する場合

GitHubのリリースページからannofabcli-vX.X.X-windows.zipをダウンロードしてください。 zipの中にあるannofabcli.exeが実行ファイルになります。

Dockerを利用する場合

$ git clone https://github.com/kurusugawa-computer/annofab-cli.git
$ cd annofab-cli
$ chmod u+x docker-build.sh
$ ./docker-build.sh

$ docker run -it annofab-cli --help

# Annofabの認証情報を標準入力から指定する
$ docker run -it annofab-cli project diff prj1 prj2
Enter Annofab User ID: XXXXXX
Enter Annofab Password: 

# Annofabの認証情報を環境変数で指定する
$ docker run -it -e ANNOFAB_USER_ID=XXXX -e ANNOFAB_PASSWORD=YYYYY annofab-cli project diff prj1 prj2

Annofabの認証情報の設定

https://annofab-cli.readthedocs.io/ja/latest/user_guide/configurations.html 参照

使い方

https://annofab-cli.readthedocs.io/ja/latest/user_guide/index.html 参照

コマンド一覧

https://annofab-cli.readthedocs.io/ja/latest/command_reference/index.html

よくある使い方

受入完了状態のタスクを差し戻す

"car"ラベルの"occluded"属性のアノテーションルールに間違いがあったため、以下の条件を満たすタスクを一括で差し戻します。

  • "car"ラベルの"occluded"チェックボックスがONのアノテーションが、タスクに1つ以上存在する。

前提条件

  • プロジェクトのオーナが、annofabcliコマンドを実行する
# 受入完了のタスクのtask_id一覧を、acceptance_complete_task_id.txtに出力する。
$ annofabcli task list --project_id prj1  --task_query '{"status": "complete","phase":"acceptance"}' \
 --format task_id_list --output acceptance_complete_task_id.txt

# 受入完了タスクの中で、 "car"ラベルの"occluded"チェックボックスがONのアノテーションの個数を出力する。
$ annofabcli annotation list_count --project_id prj1 --task_id file://task.txt --output annotation_count.csv \
 --annotation_query '{"label_name_en": "car", "attributes":[{"additional_data_definition_name_en": "occluded", "flag": true}]}'

# annotation_count.csvを表計算ソフトで開き、アノテーションの個数が1個以上のタスクのtask_id一覧を、task_id.txtに保存する。

# task_id.txtに記載されたタスクを差し戻す。検査コメントは「carラベルのoccluded属性を見直してください」。
# 差し戻したタスクには、最後のannotation phaseを担当したユーザを割り当てる(画面と同じ動き)。
$ annofabcli task reject --project_id prj1 --task_id file://tasks.txt --cancel_acceptance \
  --comment "carラベルのoccluded属性を見直してください"

補足

Windowsでannofabcliを使う場合

WindowsのコマンドプロンプトやPowerShellでannofabcliを使う場合、JSON文字列内の二重引用をエスケープする必要があります。

> annofabcli task list --project_id prj1  --task_query '{"\status\": \"complete\"}'

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

annofabcli-1.65.3.tar.gz (222.0 kB view hashes)

Uploaded source

Built Distribution

annofabcli-1.65.3-py3-none-any.whl (366.6 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page