Skip to content

Commit 5e49858

Browse files
authored
Merge pull request #133 from kurusugawa-computer/annofab-v0.73.0
Annofab v0.73.0 対応
2 parents 6fc18d9 + 5f0db4a commit 5e49858

File tree

6 files changed

+32
-12
lines changed

6 files changed

+32
-12
lines changed

annofabapi/__version__.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
__version__ = '0.27.6'
1+
__version__ = '0.27.7'

annofabapi/generated_api.py

+5-5
Original file line numberDiff line numberDiff line change
@@ -422,7 +422,7 @@ def post_annotation_archive_update(self, project_id: str, query_params: Optional
422422
authorizations: ProjectDataUser
423423
424424
425-
プロジェクト内のアノテーションZIP(Simple版とFull版の両方)の更新を開始します。 ZIPの更新は、データ量に応じて数分〜数十分かかります。 アノテーションZIPは毎日AM 03:00 JSTごろに自動更新されます。 本APIを用いると、自動更新を待たずに更新を要求できます。
425+
プロジェクト内のアノテーションZIP(Simple版とFull版の両方)の更新を開始します。 ZIPの更新は、データ量に応じて数分〜数十分かかります。 アノテーションZIPは毎日AM 03:00 JSTごろに自動更新されますが、本APIを用いると、自動更新を待たずに更新を要求できます。 本APIを実行すると、バックグラウンドジョブが登録されます。ジョブは [getProjectJob](#operation/getProjectJob) APIで確認できます(ジョブ種別は`gen-annotation`)
426426
427427
Args:
428428
project_id (str): プロジェクトID (required)
@@ -719,7 +719,7 @@ def put_input_data(self, project_id: str, input_data_id: str, request_body: Opti
719719
authorizations: ProjectOwner
720720
721721
722-
入力データ(画像プロジェクトなら画像、動画プロジェクトなら動画や時系列データ)を登録します。 画像プロジェクトの場合、複数の画像ファイルをZIPでまとめてアップロードできます。ZIPは最大5GB、UTF-8エンコーディングのみ対応しています。<br> アノテーション作業生産性を高めるため、画像は「長辺4096px以内」かつ「4MB以内」になるよう圧縮されます。<br> 作成されるアノテーションは、元の解像度でつけた場合相当に自動で復元されます。 動画プロジェクトの場合、複数の動画ファイルをZIPでまとめてアップロードできます。ZIPは最大5GB、UTF-8エンコーディングのみ対応しています。<br> また、複数のストリーミング形式の動画をアップロードすることもできます。<br> この場合はZIP形式必須で、同一のZIPファイル内にm3u8ファイルとtsファイルを両方含めてください。<br> なお、このm3u8ファイルに記述された相対パスでtsファイルが参照可能である必要があります。 ### ディレクトリ例 ``` hoge.zip/ hoge.ts fuga/ foo.m3u8(hoge.ts, fuga/foo1.ts, fuga/foo2.tsを参照) foo1.ts foo2.ts piyo1/ piyo2/ bar.ts bar.m3u8(hoge.ts, piyo1/piyo2/bar.tsを参照) ``` ファイルの登録には、[アップロード用一時データ保存先作成API](#operation/createTempPath) を組み合わせて使用します。
722+
入力データ(画像プロジェクトなら画像、動画プロジェクトなら動画や時系列データ)を登録します。 画像プロジェクトの場合、複数の画像ファイルをZIPでまとめてアップロードできます。ZIPは最大5GB、UTF-8エンコーディングのみ対応しています。<br> アノテーション作業生産性を高めるため、画像は「長辺4096px以内」かつ「4MB以内」になるよう圧縮されます。<br> 作成されるアノテーションは、元の解像度でつけた場合相当に自動で復元されます。 動画プロジェクトの場合、複数の動画ファイルをZIPでまとめてアップロードできます。ZIPは最大5GB、UTF-8エンコーディングのみ対応しています。<br> また、複数のストリーミング形式の動画をアップロードすることもできます。<br> この場合はZIP形式必須で、同一のZIPファイル内にm3u8ファイルとtsファイルを両方含めてください。<br> なお、このm3u8ファイルに記述された相対パスでtsファイルが参照可能である必要があります。 ZIPファイルを登録するとバックグラウンドジョブが登録されます。ジョブは [getProjectJob](#operation/getProjectJob) APIで確認できます(ジョブ種別は`gen-inputs`)。 ### ディレクトリ例 ``` hoge.zip/ hoge.ts fuga/ foo.m3u8(hoge.ts, fuga/foo1.ts, fuga/foo2.tsを参照) foo1.ts foo2.ts piyo1/ piyo2/ bar.ts bar.m3u8(hoge.ts, piyo1/piyo2/bar.tsを参照) ``` ファイルの登録には、[アップロード用一時データ保存先作成API](#operation/createTempPath) を組み合わせて使用します。
723723
724724
Args:
725725
project_id (str): プロジェクトID (required)
@@ -997,7 +997,7 @@ def get_project_job(self, project_id: str, query_params: Optional[Dict[str, Any]
997997
Args:
998998
project_id (str): プロジェクトID (required)
999999
query_params (Dict[str, Any]): Query Parameters
1000-
type (JobType): 取得するジョブ種別 (required)
1000+
type (JobType): 取得するジョブの種別。[詳細はこちら](#section/JobType)。 (required)
10011001
page (int): 検索結果のうち、取得したいページの番号(1始まり) 現在は未実装のパラメータです。(今後対応予定)
10021002
limit (int): 1ページあたりの取得するデータ件数。 未指定時は1件のみ取得。
10031003
exclusive_start_created_datetime (str): 取得するデータの直前の作成日時
@@ -1683,7 +1683,7 @@ def initiate_project_copy(self, project_id: str, query_params: Optional[Dict[str
16831683
authorizations: OrganizationAdministrator, ProjectOwner
16841684
16851685
1686-
指定したプロジェクトのデータを引き継いだ新しいプロジェクトを作成します。 新しいプロジェクトに引き継がれるデータは次の通りです。 * プロジェクト設定 * プロジェクトメンバー * アノテーション仕様 また、オプションを指定することで新しいプロジェクトに次のデータを引き継ぐことも可能です。 |引き継ぎ対象|同時に引き継ぐ必要があるデータ| |:--|:--| |入力データ|| |タスク|入力データ| |アノテーション|入力データ、タスク| |補助情報|入力データ| |作業ガイド|| |Webhook|| このAPIを利用するには、プロジェクトを登録する組織の[OrganizationAdministrator](#section/Authentication/OrganizationAdministrator) かつ コピー元プロジェクトの [ProjectOwner](#section/Authentication/ProjectOwner) である必要があります。
1686+
指定したプロジェクトのデータを引き継いだ新しいプロジェクトを作成します。 新しいプロジェクトに引き継がれるデータは次の通りです。 * プロジェクト設定 * プロジェクトメンバー * アノテーション仕様 また、オプションを指定することで新しいプロジェクトに次のデータを引き継ぐことも可能です。 |引き継ぎ対象|同時に引き継ぐ必要があるデータ| |:--|:--| |入力データ|| |タスク|入力データ| |アノテーション|入力データ、タスク| |補助情報|入力データ| |作業ガイド|| |Webhook|| このAPIを利用するには、プロジェクトを登録する組織の[OrganizationAdministrator](#section/Authentication/OrganizationAdministrator) かつ コピー元プロジェクトの [ProjectOwner](#section/Authentication/ProjectOwner) である必要があります。 本APIを実行すると、バックグラウンドジョブが登録されます。ジョブは [getProjectJob](#operation/getProjectJob) APIで確認できます(ジョブ種別は`copy-project`)。
16871687
16881688
Args:
16891689
project_id (str): コピー元となるプロジェクトID (required)
@@ -2299,7 +2299,7 @@ def initiate_tasks_generation(self, project_id: str, query_params: Optional[Dict
22992299
authorizations: ProjectOwner
23002300
23012301
2302-
典型的なタスク作成ルールにもとづいた、一括作成を行うAPIです。 タスク作成ルールは、リクエストペイロードの `task_generate_rule` フィールドで指定できます。<br> `ByCount` を指定した場合、1つのタスクに割りあてる入力データの個数を指定してタスクを生成します。この作成ルールは、画像を同じ枚数均等にタスクに割り振りたい場合に便利です。<br> `ByDirectory` を指定した場合、入力データ名をファイルパスに見立て、ディレクトリ単位でタスクを生成します。この作成ルールは、動画などから切り出した画像をディレクトリ別に格納し、、その動画(ディレクトリ)の単位でタスクを作りたい場合に便利です。 `ByInputDataCsv` を指定した場合、入力データを各タスクに割り振ったCSVへのS3パスを指定してタスクを生成できます。この作成ルールは特定のデータの組み合わせを持ったタスクを作成したい場合に便利です。<br> #### ByDirectory: ディレクトリ単位でのタスク一括生成の使い方 例えば、次のような `input_data_name_` の入力データが登録されているとします。 * a.zip/dir1/image1.png * a.zip/dir1/image2.png * a.zip/dir1/subdir/image3.png * a.zip/dir1/subdir/image4.png * a.zip/dir1/subdir/image5.png * b.zip/dir2/subdir1/image6.png * b.zip/dir2/subdir1/image7.png * b.zip/dir2/subdir1/image8.png * b.zip/dir2/subdir2/image9.png * b.zip/dir2/subdir2/image10.png ここで、`input_data_name_prefix`フィールド に `a.zip` を指定すると、次の2タスクが生成されます。 1. タスク: `{task_id_prefix}_a.zip_dir1` * a.zip/dir1/image1.png * a.zip/dir1/image2.png 2. タスク: `{task_id_prefix}_a.zip_dir1_subdir` * a.zip/dir1/subdir/image3.png * a.zip/dir1/subdir/image4.png * a.zip/dir1/subdir/image5.png 次に、`input_data_name_prefix` に `b.zip/dir2` を指定すると、次の2タスクが生成されます。 1. タスク: `{task_id_prefix}_b.zip_dir2_subdir1` * b.zip/dir2/subdir1/image6.png * b.zip/dir2/subdir1/image7.png * b.zip/dir2/subdir1/image8.png 2. タスク: `{task_id_prefix}_b.zip_dir2_subdir2` * b.zip/dir2/subdir2/image9.png * b.zip/dir2/subdir2/image10.png `input_data_name_prefix` が未指定の時は、全ディレクトリごとにタスクが作成されます。つまり次のように4つのタスクが生成されます。 1. タスク: `{task_id_prefix}_a.zip_dir1` * a.zip/dir1/image1.png * a.zip/dir1/image2.png 2. タスク: `{task_id_prefix}_a.zip_dir1_subdir` * a.zip/dir1/subdir/image3.png * a.zip/dir1/subdir/image4.png * a.zip/dir1/subdir/image5.png 3. タスク: `{task_id_prefix}_b.zip_dir2_subdir1` * b.zip/dir2/subdir1/image6.png * b.zip/dir2/subdir1/image7.png * b.zip/dir2/subdir1/image8.png 4. タスク: `{task_id_prefix}_b.zip_dir2_subdir2` * b.zip/dir2/subdir2/image9.png * b.zip/dir2/subdir2/image10.png 画像プロジェクトの場合、タスクに割り当てられる「ディレクトリ内の入力データ」の順序は、名前の昇順となります。<br> 動画プロジェクトの場合、タスクに割り当てられる「ディレクトリ内の入力データ」の順序は、動画の入力データが先頭に来るようにソートされたうえで、名前の昇順となります。 **注意:** `ByDirectory`では、入力データ名がファイルパス形式になっていない入力データはタスクの作成対象になりません。 例えば、`foo/bar.png` はタスクの作成対象になりますが、ディレクトリを含まない`bar.png` や、最後がディレクトリになっている`foo/bar.png/` は対象になりません。 **注意:** 動画プロジェクトの場合、ディレクトリに含まれる動画の入力データは一つに制限してください。 これが守られない場合、作成されたタスクで動画を再生できない場合があります。 #### ByInputDataCsv: CSVによるタスク一括生成の使い方 以下のように「タスクID,入力データ名,入力データID」を1行毎に指定したCSVを作成します。 ``` task_1,a001.jpg,ca0cb2f9-fec5-49b4-98df-dc34490f9785 task_1,a002.jpg,5ac1987e-ca7c-42a0-9c19-b5b23a41836b task_1,centinel.jpg,81d6407b-2172-4fa8-8525-2e43c49267ee task_2,b001.jpg,4f2ae4d0-7a38-4f9a-be6f-170ba76aba73 task_2,b002.jpg,45ac5852-f20c-4938-9ee9-cc0274401df7 task_2,centinel.jpg,81d6407b-2172-4fa8-8525-2e43c49267ee task_3,c001.jpg,3260c7a0-4820-424d-a26e-db7e91dbc139 task_3,centinel.jpg,81d6407b-2172-4fa8-8525-2e43c49267ee ``` CSVのエンコーディングは UTF-8(BOM付き)、UTF-8(BOMなし)、UTF-16(BOM付きLE) のいずれかのみ対応しています。 **注意:** 動画プロジェクトの場合、一つのタスクに含まれる動画の入力データは一つに制限し、動画の入力データの位置は先頭にしてください。 これが守られない場合、作成されたタスクで動画を再生できない場合があります。 [createTempPath](#operation/createTempPath) APIを使ってアップロード用のURLとS3パスを取得してCSVをアップロードした上で`csv_data_path` フィールドに取得したS3パスを記述します。
2302+
典型的なタスク作成ルールにもとづいた、一括作成を行うAPIです。 タスク作成ルールは、リクエストペイロードの `task_generate_rule` フィールドで指定できます。<br> `ByCount` を指定した場合、1つのタスクに割りあてる入力データの個数を指定してタスクを生成します。この作成ルールは、画像を同じ枚数均等にタスクに割り振りたい場合に便利です。<br> `ByDirectory` を指定した場合、入力データ名をファイルパスに見立て、ディレクトリ単位でタスクを生成します。この作成ルールは、動画などから切り出した画像をディレクトリ別に格納し、、その動画(ディレクトリ)の単位でタスクを作りたい場合に便利です。 `ByInputDataCsv` を指定した場合、入力データを各タスクに割り振ったCSVへのS3パスを指定してタスクを生成できます。この作成ルールは特定のデータの組み合わせを持ったタスクを作成したい場合に便利です。<br> 本APIを実行すると、バックグラウンドジョブが登録されます。ジョブは [getProjectJob](#operation/getProjectJob) APIで確認できます(ジョブ種別は`gen-tasks`)。 #### ByDirectory: ディレクトリ単位でのタスク一括生成の使い方 例えば、次のような `input_data_name_` の入力データが登録されているとします。 * a.zip/dir1/image1.png * a.zip/dir1/image2.png * a.zip/dir1/subdir/image3.png * a.zip/dir1/subdir/image4.png * a.zip/dir1/subdir/image5.png * b.zip/dir2/subdir1/image6.png * b.zip/dir2/subdir1/image7.png * b.zip/dir2/subdir1/image8.png * b.zip/dir2/subdir2/image9.png * b.zip/dir2/subdir2/image10.png ここで、`input_data_name_prefix`フィールド に `a.zip` を指定すると、次の2タスクが生成されます。 1. タスク: `{task_id_prefix}_a.zip_dir1` * a.zip/dir1/image1.png * a.zip/dir1/image2.png 2. タスク: `{task_id_prefix}_a.zip_dir1_subdir` * a.zip/dir1/subdir/image3.png * a.zip/dir1/subdir/image4.png * a.zip/dir1/subdir/image5.png 次に、`input_data_name_prefix` に `b.zip/dir2` を指定すると、次の2タスクが生成されます。 1. タスク: `{task_id_prefix}_b.zip_dir2_subdir1` * b.zip/dir2/subdir1/image6.png * b.zip/dir2/subdir1/image7.png * b.zip/dir2/subdir1/image8.png 2. タスク: `{task_id_prefix}_b.zip_dir2_subdir2` * b.zip/dir2/subdir2/image9.png * b.zip/dir2/subdir2/image10.png `input_data_name_prefix` が未指定の時は、全ディレクトリごとにタスクが作成されます。つまり次のように4つのタスクが生成されます。 1. タスク: `{task_id_prefix}_a.zip_dir1` * a.zip/dir1/image1.png * a.zip/dir1/image2.png 2. タスク: `{task_id_prefix}_a.zip_dir1_subdir` * a.zip/dir1/subdir/image3.png * a.zip/dir1/subdir/image4.png * a.zip/dir1/subdir/image5.png 3. タスク: `{task_id_prefix}_b.zip_dir2_subdir1` * b.zip/dir2/subdir1/image6.png * b.zip/dir2/subdir1/image7.png * b.zip/dir2/subdir1/image8.png 4. タスク: `{task_id_prefix}_b.zip_dir2_subdir2` * b.zip/dir2/subdir2/image9.png * b.zip/dir2/subdir2/image10.png 画像プロジェクトの場合、タスクに割り当てられる「ディレクトリ内の入力データ」の順序は、名前の昇順となります。<br> 動画プロジェクトの場合、タスクに割り当てられる「ディレクトリ内の入力データ」の順序は、動画の入力データが先頭に来るようにソートされたうえで、名前の昇順となります。 **注意:** `ByDirectory`では、入力データ名がファイルパス形式になっていない入力データはタスクの作成対象になりません。 例えば、`foo/bar.png` はタスクの作成対象になりますが、ディレクトリを含まない`bar.png` や、最後がディレクトリになっている`foo/bar.png/` は対象になりません。 **注意:** 動画プロジェクトの場合、ディレクトリに含まれる動画の入力データは一つに制限してください。 これが守られない場合、作成されたタスクで動画を再生できない場合があります。 #### ByInputDataCsv: CSVによるタスク一括生成の使い方 以下のように「タスクID,入力データ名,入力データID」を1行毎に指定したCSVを作成します。 ``` task_1,a001.jpg,ca0cb2f9-fec5-49b4-98df-dc34490f9785 task_1,a002.jpg,5ac1987e-ca7c-42a0-9c19-b5b23a41836b task_1,centinel.jpg,81d6407b-2172-4fa8-8525-2e43c49267ee task_2,b001.jpg,4f2ae4d0-7a38-4f9a-be6f-170ba76aba73 task_2,b002.jpg,45ac5852-f20c-4938-9ee9-cc0274401df7 task_2,centinel.jpg,81d6407b-2172-4fa8-8525-2e43c49267ee task_3,c001.jpg,3260c7a0-4820-424d-a26e-db7e91dbc139 task_3,centinel.jpg,81d6407b-2172-4fa8-8525-2e43c49267ee ``` CSVのエンコーディングは UTF-8(BOM付き)、UTF-8(BOMなし)、UTF-16(BOM付きLE) のいずれかのみ対応しています。 **注意:** 動画プロジェクトの場合、一つのタスクに含まれる動画の入力データは一つに制限し、動画の入力データの位置は先頭にしてください。 これが守られない場合、作成されたタスクで動画を再生できない場合があります。 [createTempPath](#operation/createTempPath) APIを使ってアップロード用のURLとS3パスを取得してCSVをアップロードした上で`csv_data_path` フィールドに取得したS3パスを記述します。
23032303
23042304
Args:
23052305
project_id (str): プロジェクトID (required)

0 commit comments

Comments
 (0)