Amazon Web Services ブログ

新機能 – Amazon SageMaker Ground Truth による動画のラベル付け

AWS re:Invent 2018 で提供を開始した Amazon Sagemaker Ground Truth は、機械学習データセットに簡単に注釈を付けることができる Amazon SageMaker の 1 機能です。お客様は、画像やテキストおよび 3D ポイントクラウドデータには組み込みのワークフローを、また他のデータタイプにはカスタムワークフローを使用して、効率的かつ正確なラベルを付け実施することができます。データサンプルは自動的に作業担当者(社内、サードパーティー、または MTurk)に配布されます。また、注釈は Amazon Simple Storage Service (S3) に保存されます。オプションの自動データラベル付けを有効にすると、データセットのラベル付けに必要な時間と関連するコストの両方を削減することもできます。

現在、モデルの精度が向上するにつれ、AWS のお客様が動画コンテンツの予測に機械学習を適用する機会もますます増えています。自律運転は、安全性の面から、道路状況や移動する物体を正確に検知しリアルタイムで追跡することが求められるということで、おそらく最も知られたユースケースと言えるでしょう。動画の予測はスポーツの分野にも普及しているアプリケーションです。ここでは、プレーヤーやレースカーを追跡し、ファンを喜ばせるための、あらゆる種類の統計情報を計算しています。医療機関においても、医療画像内の解剖学的対象を特定および追跡するために、動画予測技術を利用しています。製造業では、組み立てライン上の物体、出荷する荷物、その他の対象に対し、同様な技術を適用しています。こういった実例の枚挙にはいとまがありませんし、また、他の多くの業界においても素晴らしい応用例が登場し続けているのです。

もちろん、これらには動画データセットの構築とラベル付けが必要であり、追跡の対象には手動でのラベル付けが行われます。毎秒 30 フレームとしても、動画 1 分間では 1,800 個の個別画像が転送されることになり、そのための作業は即座に手に余る量に達してしまいます。さらに言えば、画像へのラベル付けやワークフローの管理、さらにその他の目的で、専用ツールを構築する必要もあるのです。これらの作業は、コアビジネスに向けるべき相当量の時間とリソースを、組織から奪い去ってしまいます。

AWS では、このためのより良いソリューションのご要望をお客様からいただいてきました。そして本日、Amazon Sagemaker Ground Truth が動画のラベル付け機能をサポートすることを発表できるようになりました。

お客様でのユースケース例: National Football League
National Football League (NFL) では、この機能が既に稼働しています。NFL のプレーヤーヘルスとイノベーション担当 SVP である、Jennifer Langton 氏によれば、「National Football League (NFL) では、機械学習(ML)が提供するより深いインサイトにより、ファンや放送局、コーチ、および各チームがメリットを享受できるようにするための、新たな道筋を模索し続けています。これらの機能を構築する際には、正確にラベル付けされたトレーニングデータが、大量に必要となります。実際、Amazon SageMaker Ground Truth は作業能力を何倍にもしてくれるので、プロジェクトのタイムラインが短縮されます。私達は、試合中にフィールドを動き回る 22 人のプレーヤーを追跡するコンピュータビジョンシステムをトレーニングするためのラベル作成に、既存のコンピュータビジョン(CV)によるラベル付けワークフローに加え、この新しい動画内物体追跡ワークフローを活用しています。Amazon SageMaker Ground Truth は、高品質のラベル付けデータセット構築のための時間を 80% 以上削減しました。」

NFL からご提供をいただき、ここに予測を適用した画像フレームをいくつか示します。これは、シアトルシーホークスの動画内でヘルメットを検知した結果です。この動画のフレーム数は 353 個で、1 つめに挙げたこの画像は、フレーム #100 のものです。

物体追跡

2 つめの画像はフレーム #110 です。

物体追跡

動画ラベル付けについて
現在、Amazon Sagemaker Ground Truth は、動画タスクタイプに加え次のような用途に利用いただけます。

  • 動画クリップの分類
  • 動画のマルチフレーム物体検出
  • 動画のマルチフレーム物体追跡

マルチフレームのタスクタイプでは、マルチラベルをサポートしており、同じ動画フレーム内の異なるオブジェクトクラスに対してのラベル付けが行えます。お客様は、各フレームにゼロから注釈付けするラベル付けジョブを作成したり、既にラベル付けされたフレームの再確認やファインチューンを行う、調整ジョブを作成することもできます。これらのジョブは、社内の作業担当者だけでなく、AWS Marketplace で選択したベンダーの作業者にも配布することができます。

これを受け取った作業者は組み込み GUI を使用して、物体の追跡とラベル付けをフレーム間で簡単に実施できます。フレームへの注釈付けが完了すれば、ラベル付け補助機能により、次のフレームの境界ボックスの位置を予測することができます。次に示すのが、そのデモ画像です。この機能により、ラベル付け作業が大幅に合理化でき、時間短縮と、注釈付けの品質向上が実現できます。最後に、この作業内容が自動的に保存されるのも重要なポイントになります。

動画内の物体検知および追跡のための入力データの準備
既にお分かりかも知れませんが、入力データは S3 内に置かれる必要があります。これには、動画ファイル、もしくは動画フレームのシーケンスを配置できます。

最もシンプルなのは 1 つめのオプションであり、この場合、Amazon Sagemaker Ground Truth に含まれたツールが、動画ファイルから各フレームを自動的に抽出します。オプションとして、フレームから(‘n’ を 1 として)サンプルを取り、ラベル付け作業量の削減も目指せます。この抽出ツールでは、シーケンスとフレームを記述したマニフェストファイルも作成されます。詳細については、ドキュメンテーションをご参照ください。

2 つめのオプションでは、二段階のステップが必要となります。フレームの抽出とマニフェストファイルの作成です。フレーム抽出は、普及したオープンソースツールの ffmpeg により、簡単に実行できます。60 秒間の動画をフレームシーケンスに変換するには、次のように使用します。

$ ffmpeg -ss 00:00:00.00 -t 00:01:0.00 -i basketball.mp4 frame%04d.jpg

ドキュメントで解説されているように、各フレームシーケンスは、S3 での異なるプレフィックスの下にアップロードされます。たとえば、s3://my-bucket/my-videos/sequence1s3://my-bucket/my-videos/sequence2 のようになります。

フレームシーケンスのアップロード後、独自の JSON ファイルによりそれらを定義することもできますが、Ground Truth にシーケンスをクロールさせ、JSON ファイルとマニフェストファイルを自動的に作成することも可能です。この際、動画シーケンスは 2,000 フレーム以下とし、これを、毎秒 30 フレームの動画での約 1 分間に対応させる必要があることにはご留意ください。

各シーケンスは、次のようなシンプルなシーケンスファイルにより定義されます。

  • シーケンス番号、S3 プレフィックス、フレーム数。
  • フレームと番号のリスト、ファイル名、作成日時。

次にシーケンスファイルのサンプルを示します。

{"version": "2020-06-01",
"seq-no": 1, "prefix": "s3://jsimon-smgt/videos/basketball", "number-of-frames": 1800,
	"frames": [
		{"frame-no": 1, "frame": "frame0001.jpg", "unix-timestamp": 1594111541.71155},
		{"frame-no": 2, "frame": "frame0002.jpg", "unix-timestamp": 1594111541.711552},
		{"frame-no": 3, "frame": "frame0003.jpg", "unix-timestamp": 1594111541.711553},
		{"frame-no": 4, "frame": "frame0004.jpg", "unix-timestamp": 1594111541.711555},
. . .

最後に、ラベル付けジョブに含めたいシーケンスファイルを、マニフェストファイルから指し示す必要があります。次がその例です。

{"source-ref": "s3://jsimon-smgt/videos/seq1.json"}
{"source-ref": "s3://jsimon-smgt/videos/seq2.json"}
. . .

他のタスクタイプと同様、ラベル付けが完了すれば、S3 に保存された拡張マニフェストが 利用できるようになります。この中に記述された注釈とラベルは、機械学習のトレーニングジョブに渡すことができます。

Amazon SageMaker Ground Truth による動画のラベル付け
シーケンス冒頭の 10 フレームにラベル付けを行ったサンプル動画をご覧ください。そのスクリーンショットを次に示します。

ここでは最初に、Ground Truth の GUI を使用し、バスケットボールと選手の周囲に注意深く境界ボックスを描いて、最初のフレームのラベル付けを行っています。その後、続く 9 フレームのバウンディングボックスの位置を予測するため、「Predict next」というラベル付け支援ツールを使用した上で、各枠に対し少量の調整を施しました。私自身、これを使用するのは初めてでしたが、この作業は簡単かつ直感的という印象です。少し練習を積めば、さらに迅速な作業が可能になると思います。

開始方法
皆様も是非お試しください。Amazon Sagemaker Ground Truth を使用する動画のラベル付けは、現在、次のリージョンで開始できます。

  • 米国東部(バージニア北部)米国東部(オハイオ)米国西部(オレゴン)
  • カナダ (中部)
  • 欧州 (アイルランド)欧州 (ロンドン)欧州 (フランクフルト)
  • アジアパシフィック (ムンバイ)アジアパシフィック (シンガポール)アジアパシフィック (ソウル)アジアパシフィック (シドニー)アジアパシフィック (東京)

ご意見をお待ちしています。通常のサポート連絡先、または Amazon SageMakerAWS フォーラムで送信できます。

– Julien