動画ラベル検出は、動画コンテンツを分析し、シーン、イベント、オブジェクトを記述する構造化されたラベルを返します。これらのラベルを活用して、アプリケーション内で動画の分類、検索、およびレコメンデーションを実行できます。
利用シーン
動画分類:ニュース、エンターテインメント、ゲーム、テクノロジー、フード、スポーツ、旅行、アニメーション、ダンス、音楽、映画・テレビ、自動車などのトピックに応じて、動画を自動的に分類します。
動画取得:ラベルをインデックス化することで検索可能な動画ライブラリを構築します。たとえば、「屋外シーン」や特定の「オブジェクト」を含むすべての動画を取得できます。
パーソナライズドレコメンデーション:動画から抽出されたコンテンツラベルとユーザーのプリファレンスラベルを照合し、ターゲットを絞った動画レコメンデーションを配信します。
仕組み
OSS バケットに動画をアップロードします。
CreateVideoLabelClassificationTask を呼び出して、非同期のラベル検出タスクを作成します。
タスクが完了したら、GetVideoLabelClassificationResult を呼び出して、検出されたラベルを取得します。
タスク情報は、タスク開始後 7 日間のみ保持されます。この期間を過ぎると、API 経由で結果を取得できなくなります。
前提条件
開始する前に、以下の条件を満たしていることを確認してください。
AccessKey ペア。詳細については、「AccessKey ペアの作成」をご参照ください。
動画がアップロードされた OSS バケット。詳細については、「オブジェクトのアップロード」をご参照ください。
IMM が有効化済みです。詳細については、「IMM の有効化」をご参照ください。
対象リージョンに作成された IMM プロジェクト。詳細については、「プロジェクトの作成」をご参照ください。
プログラムによるプロジェクトの作成および管理も可能です。[CreateProject] を呼び出してプロジェクトを作成するか、[ListProjects] を呼び出してリージョン内の既存のプロジェクトをクエリできます。
タスクステータスの追跡
GetVideoLabelClassificationResult の呼び出しに加えて、以下の方法でタスクの進行状況を追跡できます。
方法 | 説明 |
API ポーリング | |
Simple Message Queue (SMQ) | IMM プロジェクトと同じリージョンで、タスク通知にサブスクライブします。詳細については、「非同期メッセージの例」および「メッセージの受信と削除」をご参照ください。 |
ApsaraMQ for RocketMQ 4.0 | 同じリージョンで RocketMQ インスタンス、Topic、およびグループを作成することで、タスク通知を受信できます。詳細については、「非同期メッセージの例」および「通常メッセージの送信およびサブスクライブ」をご参照ください。 |
EventBridge | EventBridge を介してタスク完了イベントを受信します。詳細については、「IMM イベント」をご参照ください。 |
応答構造
成功したタスクは、最大 3 つのレベルで構成された階層的なラベルを含む Labels 配列を返します。各ラベルには、信頼度スコアと中心性スコアが含まれます。
ラベルフィールド
フィールド | 型 | 説明 |
| String | 検出されたラベルの名称(例:「自然景観」、「自動車」)。 |
| Float | ラベルが正しい確率(0 ~ 1 の範囲)。値が高いほど信頼度が高くなります。 |
| Float | ラベル対象のコンテンツが動画内でどれだけ中心的・顕著であるかを示すスコア(0 ~ 1 の範囲)。値が高いほどコンテンツが顕著です。 |
| Integer | ラベル階層における位置。 |
| String | 親ラベルの名称。最上位ラベル(レベル 1)では空文字列になります。 |
| String | ラベル名の言語(例: |
ラベル階層
ラベルは 3 レベルの階層構造で整理されています。各子ラベルは ParentLabelName で親ラベルを参照します。
レベル 1(カテゴリ) レベル 2(サブカテゴリ) レベル 3(詳細)
--------------------- ---------------------- -----------------
旅行・地理 → 自然景観 → 月、空
その他 → 色 → 青、緑、黒、白
→ 天文現象
日用品 → テキスト
→ 文字
仮想シーン → ウェブページ
→ ウェブサイト
芸術作品 → イラストレーション
その他のシーン → スマートフォンのスクリーンショット応答サンプル
{
"ProjectName": "test-project",
"RequestId": "D65E8038-C584-0809-9BF0-****",
"StartTime": "2022-08-22T05:01:17.572Z",
"EndTime": "2022-08-22T05:01:20.49Z",
"TaskType": "VideoLabelClassification",
"TaskId": "VideoLabelClassification-1b77de73-ff9f-4c39-b254-****",
"Status": "Succeeded",
"Labels": [
{
"Language": "zh-Hans",
"LabelName": "色",
"LabelConfidence": 0.999,
"CentricScore": 0.77,
"LabelLevel": 2,
"ParentLabelName": "その他"
},
{
"Language": "zh-Hans",
"LabelName": "その他",
"LabelConfidence": 0.999,
"CentricScore": 0.77,
"LabelLevel": 1,
"ParentLabelName": ""
},
{
"Language": "zh-Hans",
"LabelName": "青",
"LabelConfidence": 1,
"CentricScore": 0.716,
"LabelLevel": 3,
"ParentLabelName": "色"
},
{
"Language": "zh-Hans",
"LabelName": "自然景観",
"LabelConfidence": 0.897,
"CentricScore": 0.801,
"LabelLevel": 2,
"ParentLabelName": "旅行・地理"
},
{
"Language": "zh-Hans",
"LabelName": "月",
"LabelConfidence": 0.859,
"CentricScore": 0.756,
"LabelLevel": 3,
"ParentLabelName": "自然景観"
}
]
}このサンプルは省略版です。実際の応答には通常、より多くのラベルが含まれます。また、リクエストで UserData が設定されている場合、応答にそのフィールドが含まれるほか、エラー発生時には Code および Message フィールドが含まれることがあります。
サポートされる動画フォーマット
動画ラベル検出は、以下の 22 種類のフォーマットをサポートしています:AVI、MPEG、MPG、DAT、DIVX、XVID、RM、RMVB、MOV、QT、ASF、WMV、VOB、3GP、MP4、FLV、AVS、MKV、TS、OGM、NSV、SWF。
よくある質問
検出対象のラベルを指定できますか?
いいえ。動画ラベル検出は事前に定義されたラベル分類体系(taxonomy)を使用しており、個別のラベルを指定・含めたり除外したりすることはできません。
ラベルはどのようなカテゴリに分類されますか?
ラベルは、以下の 3 つの大カテゴリに分類されます。
シーン:森林、ビーチ、雪を冠した山々などの自然景観。住宅やレストランなどの生活空間。災害現場など。
イベント:タレントショー、オフィスでの活動、パフォーマンス、製造プロセスなど。
オブジェクト:食器、スマートフォンやコンピューターなどの電子機器、家具、車両など。