NAB Show 2019
報告会
AbemaTV 開発本部 五藤 佑典
ATSC 3.0 / MOS / Machine Learning / 映像合成技術 編
五藤 佑典
YUSUKE GOTO
https://ygoto3.com/
@ygoto3_
アジェンダ
● ATSC 3.0
● MOS
● Machine Learning
● 映像合成技術
Motivation
AbemaTV を始めとするサイバーエージェントの動画事業を技術的に前進させる
● 業界トレンドの定点観測
● アメリカを中心とする技術標準化の動向キャッチアップ
● 複数の海外パートナー会社との一挙ミーティング
● 業界先端企業の将来への見解や実践例などの情報収集
● 汎用ソリューションの進化状況の確認
● 以前に目をつけていた技術の進化状況の確認
ATSC 3.0
ATSC 3.0 とは?
● IP
● 高解像度(4K / HDR)
● 多チャンネル化
● モバイル視聴
● マルチチャンネル音声サービス
● 多言語キャプション
● 地域最適化された緊急情報
● 視聴者に合わせた放送
● 双方向コンテンツ配信
次世代の地上波デジタル放送規格
ATSC 3.0 とは?
● IP
● 高解像度(4K / HDR)
● 多チャンネル
● 移動体通信
● マルチチャンネル音声サービス
● 多言語キャプション
● 地域最適化された緊急情報
● 視聴者に合わせた放送
● 双方向コンテンツ配信
次世代の地上波デジタル放送規格
ATSC 3.0 Interactive Content A/344
● 放送にインタラクティブコンテンツを提供するための標準仕様
● Broadcaster Applications (BA)
● 主な機能
○ Standard W3C User Agent
■ 標準的なブラウザ環境との差異がない
■ DOM の独自拡張なし(unlike HbbTV)
■ WebSocket API による受信機機能の利用
○ Application Context
■ アプリケーションごとに分離された文脈を提供する
○ Notification
■ HELD テーブルによる起動信号
A/344 Content Display Model
A/344 WebSocket API の機能
● Receiver Query API
○ BA から受信機の設定を検知する
● Notifications
○ アプリケーション側の設定変更、警報情報、ほかの非同期イベント
● 受信機制御
○ サービスの設定
○ トラック選択
○ ボリューム変更
○ 選択されたコンテンツの表示
○ 映像のスケールと座標変更
A/344 WebSocket API の機能
● キャッシュ管理
○ コンテンツやファイルのダウンロード
○ 使用されていないコンテンツの削除フラグ
○ キャッシュするコンテンツのフィルタリング
● Content Recovery Management
○ Watermarks 使用時にコンテンツをリカバリするための API
● DRM キーマネジメント
● Receiver Media Player の制御
● DAI
A/344 Companion Device
スマートフォンやタブレットとの連携
● 受信機からの Companion Device 検出
● Companion Device からの受信機制御
○ A/344 WebSocket API が開放される
● 受信機から Companion Device アプリケーションを起動
○ Companion Device が通知を受信
○ BA が Companion Device アプリケーションを起動
○ BA と Companion Device は JSON WS によるコミュニケーションを確立できる
ATSC 3.0 とは?
● IP
● 高解像度(4K / HDR)
● 多チャンネル
● 移動体通信
● マルチチャンネル音声サービス
● 多言語キャプション
● 地域最適化された緊急情報
● 視聴者に合わせた放送
● 双方向コンテンツ配信
次世代の地上波デジタル放送規格
ATSC 3.0 AEA
● Advanced Emergency InformAtion
○ 次世代の緊急警報システム
● 役割
○ 放送局に特定の地域の緊急度に応じてタイムリーでより具体的な情報を提供するオプション
を提供する
○ オプションという立ち位置:AEA は緊急時における既存警報(FCC emergency messaging
など)や そのほかのアクションに取り替わるものではない
● なぜ必要か?
○ 放送において地域文脈でローカライズされた緊急警報を発することは重要
○ フロリダ州の 2017 年の Hurricane Irma の例
■ フロリダ州の 96 箇所の発電所のうち 1 箇所が停止した
■ 緊急警報は州全体に放送される
AEA の機能
● Wake-up Field
○ 2 ビットの bootstrap シグナルを受信機に送る
○ 受信機はスタンバイモードになり、AEA メッセージを待つ
● Advanced Emergency InformAtion Table (AEAT)
○ AEA メッセージに関する全ての情報と
関連するリッチメディアのテーブル
AEA の機能
● Interactivity
○ HTML Entry pages Location Description (HELD) テーブルにより
受信機と Broadcaster Applications (BA) が紐づく
○ BA は AEAT にアクセス可能
● Watermarks
○ 映像と音声に電子透かしを挿入
○ HDMI を越えて STB と繋がった受信機に AEA メッセージを取得するための URL を伝える
○ 受信機は放送に接続されている必要あり
MOS
MOS
Mean Opinion Score
● 主観評価法
○ 品質を視聴覚心理実験によって直接測定する意図
○ 近年は生産性を向上させるためにソフトウェアで擬似的に評価
○ エンコード済、配信されているコンテンツを評価
● 5 段階評価
○ 5. Excellent
○ 4. Good
○ 3. Fair
○ 2. Poor
○ 1. Unacceptable
● No-reference 評価
NTT の場合
● Smart QoE Control
○ dTVやdアニメなど複数の配信プラットフォームで展開
● NTT も MOS による主観評価で QoE 計測
○ 予め実験でデータを取得
○ 実際には推測値を計算
○ 推測値は以下の4つから推測される
■ ビットレート
■ 再生中に変化したビットレートの差
■ 停止時間
■ 時間
Facebook’s FB-MOS
● UGCでは元素材の品質自体にバラツキがあるという課題に対応する評価法
● 2 段階の映像品質計測
○ No-reference で計測
○ エンコード処理の複雑さ、ブロック、ぼやけ、カクツキを基準にソース品質を予測
○ ビューポート解像度での SSIM を計算してエンコーディングによる品質劣化を予測
● 処理が単純
○ ローエンドクライアントで処理可能
Playback MOS
● オリジナルとエンコード後を
再生時の表示域解像度で
比較する
● 比較手法は
SSIM、MS-SSIM、PSNR etc.
● ユーザーのレーティングに
検証された値にマップ
Upload MOS
● No-reference
● オリジナルとエンコード処理を
通した品質の差異から
Upload Score 算出
● 4K など高解像度動画を
再生時に想定される表示域に
調整した値にする
Watch-time weighted MOS
● Playback MOS を視聴時間で
掛けることで重みづけを施した
値に調整
○ 映像視聴時間への影響を
考慮に
自社に合わせた評価法で継続的改善
● ファクトに基づいた各アルゴリズムの改善
○ エンコーディング
○ 配信システム
○ ABR
○ マニフェスト選択
○ クライアントサイドトランスコード
○ アップロード
● Video MOS
○ 映像と音声の品質を人間が実際に知覚するであろう予測に基づいて評価
○ Jerkiness, Blockiness, Blurriness 検出
● リモートでのリアルタイムアラートなどを実現できる
● Mobile, PC, TV などあらゆるデバイスをサポート
○ AbemaTV でサポートしているデバイスは多い
○ 1 つのワンベンダーにまとめられることで指標が統一される
ロボット監視型 QoE ソリューション
Machine Learning
Machine Learning と Deep Learning
Machine Learning
● 人が機械に対してトレーニングすること
○ 特徴:人が定義したものを学習する
○ 例:解析、レコメンデーション・エンジン
Deep Learning
● ソフトウェアがソフトウェアを書くこと
○ 特徴:自動で認識していく
○ 例:顔認識、オブジェクト検出
メディア業界における Machine Learning 技術例
● NGX AI SUPER-RES
● NGX AI SUPER SLOMO
● Phase-Functioned Neural Network
● Single- of Multiple-reference Color Transfer
● Face Generator
● Audio-driven facial animation
NGX AI SUPER-RES
● 低解像度と高解像度の画像の差異を学習
● 一般的な NEAREST NEIGHBOR や BICUBIC FILTER による
アップスケーリングより自然な結果を出力
NGX AI SUPER-RES
NGX AI SUPER-SLOMO
● フレーム間を高精度に予測して新しいフレームを生成
● 30 fps => 240 fps
● 60 fps => 480 fps
Phase-Functioned Neural Network
● AI によるゲームキャラクターのアニメーション制御
● 入力
○ 人が置かれる状況に応じてのポーズ
○ ユーザーのキャラクター制御
○ 直前のキャラクターの状態
○ 地形
● 出力
○ 状況に適したキャラクターのポーズ
(リアルタイム)
Single- or Multiple-reference Color Transfer
● 参照とする画像の色を自動で別の入力画像に適用して出力
Face generator
● 入力A:性別、年齢、髪の流さ、眼鏡、ポーズの特徴
● 入力B:その他全ての特徴
● 出力:地域に応じた人物を作る
Audio-driven facial animation
● 他言語コンテンツでのリップシンクを自動生成可能
● スクリプトを読み込ませると表情を自動で生成
ML を利用したソリューション
atsu.io:
ML を利用したプロダクションの最適化ソリューション
● 共有ストレージ使用の最適化
● エンコードジョブキューイングの最適化
共有ストレージとエンコードキューイングの課題
AbemaTV では以下を手動で行っている
● ストレージ
○ 編集用共用ストレージの残量を常時逼迫しているものをどのタイミングで
残量確保すればいいか
○ アーカイブの進捗度を図れていない
○ スタジオの予定(生成予定のファイル量)に対するアーカイブ進捗度の把握
● エンコード
○ 入稿素材が激増
○ 公開予定との兼ね合いでタスク優先度をつけなればいけない
atsu.io 共有ストレージ使用の最適化
ストレージの I/O 情報を取得
● 過剰な実行処理から失敗する処理を予測
● 影響が大きなジョブの自動キャンセル
● ディスク I/O パターンを学習
○ NFS プロトコル、NetApp、Isilon、Qumulo サポート
● I/O 情報は Kafka を介して atsu.io のクラウドにストリーム
○ ML モデルをトレーニング
● トレーニング後にモデルはユーザーに返される
○ ユーザー側のモデルを使う環境は Kubernetes 上のコンテナで構築
○ モデルは継続的に更新
atsu.io エンコードジョブキューイングの最適化
キューイング情報の取得
● Que-aggregator
○ 全てのキュー情報からジョブごとの開始時間、完了時間、リソース消費量を算出
○ ボトルネックを検知してスケジューリング改善可能
○ キューイング情報は Kafka を介して atsu.io のクラウド上にストリーム
● ML モデルを継続的にトレーニング
○ モデルは 12 時間毎に更新
映像合成技術
ZeroDensity Reality
● Unreal Engine ベースの映像合成技術
● 実写と 3DCD の高い合成品質が特徴
○ 影の合成にも対応
● 3D 空間にオブジェクトを配置可能
○ 背景だけではない
○ カメラまわり込み撮影対応
● GUI: Real-time node-based compositor
○ ポスプロのようなビジュアルエフェクトも可能
● 調整の難易度が高い
ZeroDensity Reality 体験
ZeroDensity Reality 体験
ZeroDensity Reality 体験
まとめ
● マスメディアを目指す上で次世代放送規格から参考になるものは多い
○ 緊急警報システムなど最適な人により詳細な情報を的確に伝えるための仕組みは
マスメディアの義務
● 映像品質管理において業界のアプローチは進化し、
サービスに最適化した形で品質を追求している
● 動画領域での AI 活用範囲が格段に広がり、
多くが汎用ソリューション化している
● 最新の映像合成技術は言われないと
CG と実写の区別がつかない程進化している
ありがとうございました
五藤 佑典
YUSUKE GOTO
https://ygoto3.com/
@ygoto3_

Nab Show 2019 報告会 - ATSC 3.0 / MOS / Machine Learning / 映像合成技術 編

  • 1.
    NAB Show 2019 報告会 AbemaTV開発本部 五藤 佑典 ATSC 3.0 / MOS / Machine Learning / 映像合成技術 編
  • 2.
  • 3.
    アジェンダ ● ATSC 3.0 ●MOS ● Machine Learning ● 映像合成技術
  • 4.
    Motivation AbemaTV を始めとするサイバーエージェントの動画事業を技術的に前進させる ● 業界トレンドの定点観測 ●アメリカを中心とする技術標準化の動向キャッチアップ ● 複数の海外パートナー会社との一挙ミーティング ● 業界先端企業の将来への見解や実践例などの情報収集 ● 汎用ソリューションの進化状況の確認 ● 以前に目をつけていた技術の進化状況の確認
  • 6.
  • 7.
    ATSC 3.0 とは? ●IP ● 高解像度(4K / HDR) ● 多チャンネル化 ● モバイル視聴 ● マルチチャンネル音声サービス ● 多言語キャプション ● 地域最適化された緊急情報 ● 視聴者に合わせた放送 ● 双方向コンテンツ配信 次世代の地上波デジタル放送規格
  • 9.
    ATSC 3.0 とは? ●IP ● 高解像度(4K / HDR) ● 多チャンネル ● 移動体通信 ● マルチチャンネル音声サービス ● 多言語キャプション ● 地域最適化された緊急情報 ● 視聴者に合わせた放送 ● 双方向コンテンツ配信 次世代の地上波デジタル放送規格
  • 10.
    ATSC 3.0 InteractiveContent A/344 ● 放送にインタラクティブコンテンツを提供するための標準仕様 ● Broadcaster Applications (BA) ● 主な機能 ○ Standard W3C User Agent ■ 標準的なブラウザ環境との差異がない ■ DOM の独自拡張なし(unlike HbbTV) ■ WebSocket API による受信機機能の利用 ○ Application Context ■ アプリケーションごとに分離された文脈を提供する ○ Notification ■ HELD テーブルによる起動信号
  • 11.
  • 12.
    A/344 WebSocket APIの機能 ● Receiver Query API ○ BA から受信機の設定を検知する ● Notifications ○ アプリケーション側の設定変更、警報情報、ほかの非同期イベント ● 受信機制御 ○ サービスの設定 ○ トラック選択 ○ ボリューム変更 ○ 選択されたコンテンツの表示 ○ 映像のスケールと座標変更
  • 13.
    A/344 WebSocket APIの機能 ● キャッシュ管理 ○ コンテンツやファイルのダウンロード ○ 使用されていないコンテンツの削除フラグ ○ キャッシュするコンテンツのフィルタリング ● Content Recovery Management ○ Watermarks 使用時にコンテンツをリカバリするための API ● DRM キーマネジメント ● Receiver Media Player の制御 ● DAI
  • 14.
    A/344 Companion Device スマートフォンやタブレットとの連携 ●受信機からの Companion Device 検出 ● Companion Device からの受信機制御 ○ A/344 WebSocket API が開放される ● 受信機から Companion Device アプリケーションを起動 ○ Companion Device が通知を受信 ○ BA が Companion Device アプリケーションを起動 ○ BA と Companion Device は JSON WS によるコミュニケーションを確立できる
  • 15.
    ATSC 3.0 とは? ●IP ● 高解像度(4K / HDR) ● 多チャンネル ● 移動体通信 ● マルチチャンネル音声サービス ● 多言語キャプション ● 地域最適化された緊急情報 ● 視聴者に合わせた放送 ● 双方向コンテンツ配信 次世代の地上波デジタル放送規格
  • 16.
    ATSC 3.0 AEA ●Advanced Emergency InformAtion ○ 次世代の緊急警報システム ● 役割 ○ 放送局に特定の地域の緊急度に応じてタイムリーでより具体的な情報を提供するオプション を提供する ○ オプションという立ち位置:AEA は緊急時における既存警報(FCC emergency messaging など)や そのほかのアクションに取り替わるものではない ● なぜ必要か? ○ 放送において地域文脈でローカライズされた緊急警報を発することは重要 ○ フロリダ州の 2017 年の Hurricane Irma の例 ■ フロリダ州の 96 箇所の発電所のうち 1 箇所が停止した ■ 緊急警報は州全体に放送される
  • 18.
    AEA の機能 ● Wake-upField ○ 2 ビットの bootstrap シグナルを受信機に送る ○ 受信機はスタンバイモードになり、AEA メッセージを待つ ● Advanced Emergency InformAtion Table (AEAT) ○ AEA メッセージに関する全ての情報と 関連するリッチメディアのテーブル
  • 19.
    AEA の機能 ● Interactivity ○HTML Entry pages Location Description (HELD) テーブルにより 受信機と Broadcaster Applications (BA) が紐づく ○ BA は AEAT にアクセス可能 ● Watermarks ○ 映像と音声に電子透かしを挿入 ○ HDMI を越えて STB と繋がった受信機に AEA メッセージを取得するための URL を伝える ○ 受信機は放送に接続されている必要あり
  • 20.
  • 21.
    MOS Mean Opinion Score ●主観評価法 ○ 品質を視聴覚心理実験によって直接測定する意図 ○ 近年は生産性を向上させるためにソフトウェアで擬似的に評価 ○ エンコード済、配信されているコンテンツを評価 ● 5 段階評価 ○ 5. Excellent ○ 4. Good ○ 3. Fair ○ 2. Poor ○ 1. Unacceptable ● No-reference 評価
  • 22.
    NTT の場合 ● SmartQoE Control ○ dTVやdアニメなど複数の配信プラットフォームで展開 ● NTT も MOS による主観評価で QoE 計測 ○ 予め実験でデータを取得 ○ 実際には推測値を計算 ○ 推測値は以下の4つから推測される ■ ビットレート ■ 再生中に変化したビットレートの差 ■ 停止時間 ■ 時間
  • 23.
    Facebook’s FB-MOS ● UGCでは元素材の品質自体にバラツキがあるという課題に対応する評価法 ●2 段階の映像品質計測 ○ No-reference で計測 ○ エンコード処理の複雑さ、ブロック、ぼやけ、カクツキを基準にソース品質を予測 ○ ビューポート解像度での SSIM を計算してエンコーディングによる品質劣化を予測 ● 処理が単純 ○ ローエンドクライアントで処理可能
  • 25.
    Playback MOS ● オリジナルとエンコード後を 再生時の表示域解像度で 比較する ●比較手法は SSIM、MS-SSIM、PSNR etc. ● ユーザーのレーティングに 検証された値にマップ
  • 26.
    Upload MOS ● No-reference ●オリジナルとエンコード処理を 通した品質の差異から Upload Score 算出 ● 4K など高解像度動画を 再生時に想定される表示域に 調整した値にする
  • 27.
    Watch-time weighted MOS ●Playback MOS を視聴時間で 掛けることで重みづけを施した 値に調整 ○ 映像視聴時間への影響を 考慮に
  • 28.
    自社に合わせた評価法で継続的改善 ● ファクトに基づいた各アルゴリズムの改善 ○ エンコーディング ○配信システム ○ ABR ○ マニフェスト選択 ○ クライアントサイドトランスコード ○ アップロード
  • 29.
    ● Video MOS ○映像と音声の品質を人間が実際に知覚するであろう予測に基づいて評価 ○ Jerkiness, Blockiness, Blurriness 検出 ● リモートでのリアルタイムアラートなどを実現できる ● Mobile, PC, TV などあらゆるデバイスをサポート ○ AbemaTV でサポートしているデバイスは多い ○ 1 つのワンベンダーにまとめられることで指標が統一される ロボット監視型 QoE ソリューション
  • 30.
  • 31.
    Machine Learning とDeep Learning Machine Learning ● 人が機械に対してトレーニングすること ○ 特徴:人が定義したものを学習する ○ 例:解析、レコメンデーション・エンジン Deep Learning ● ソフトウェアがソフトウェアを書くこと ○ 特徴:自動で認識していく ○ 例:顔認識、オブジェクト検出
  • 32.
    メディア業界における Machine Learning技術例 ● NGX AI SUPER-RES ● NGX AI SUPER SLOMO ● Phase-Functioned Neural Network ● Single- of Multiple-reference Color Transfer ● Face Generator ● Audio-driven facial animation
  • 33.
    NGX AI SUPER-RES ●低解像度と高解像度の画像の差異を学習 ● 一般的な NEAREST NEIGHBOR や BICUBIC FILTER による アップスケーリングより自然な結果を出力
  • 34.
  • 35.
    NGX AI SUPER-SLOMO ●フレーム間を高精度に予測して新しいフレームを生成 ● 30 fps => 240 fps ● 60 fps => 480 fps
  • 36.
    Phase-Functioned Neural Network ●AI によるゲームキャラクターのアニメーション制御 ● 入力 ○ 人が置かれる状況に応じてのポーズ ○ ユーザーのキャラクター制御 ○ 直前のキャラクターの状態 ○ 地形 ● 出力 ○ 状況に適したキャラクターのポーズ (リアルタイム)
  • 37.
    Single- or Multiple-referenceColor Transfer ● 参照とする画像の色を自動で別の入力画像に適用して出力
  • 38.
    Face generator ● 入力A:性別、年齢、髪の流さ、眼鏡、ポーズの特徴 ●入力B:その他全ての特徴 ● 出力:地域に応じた人物を作る
  • 39.
    Audio-driven facial animation ●他言語コンテンツでのリップシンクを自動生成可能 ● スクリプトを読み込ませると表情を自動で生成
  • 40.
    ML を利用したソリューション atsu.io: ML を利用したプロダクションの最適化ソリューション ●共有ストレージ使用の最適化 ● エンコードジョブキューイングの最適化
  • 41.
    共有ストレージとエンコードキューイングの課題 AbemaTV では以下を手動で行っている ● ストレージ ○編集用共用ストレージの残量を常時逼迫しているものをどのタイミングで 残量確保すればいいか ○ アーカイブの進捗度を図れていない ○ スタジオの予定(生成予定のファイル量)に対するアーカイブ進捗度の把握 ● エンコード ○ 入稿素材が激増 ○ 公開予定との兼ね合いでタスク優先度をつけなればいけない
  • 42.
    atsu.io 共有ストレージ使用の最適化 ストレージの I/O情報を取得 ● 過剰な実行処理から失敗する処理を予測 ● 影響が大きなジョブの自動キャンセル ● ディスク I/O パターンを学習 ○ NFS プロトコル、NetApp、Isilon、Qumulo サポート ● I/O 情報は Kafka を介して atsu.io のクラウドにストリーム ○ ML モデルをトレーニング ● トレーニング後にモデルはユーザーに返される ○ ユーザー側のモデルを使う環境は Kubernetes 上のコンテナで構築 ○ モデルは継続的に更新
  • 43.
    atsu.io エンコードジョブキューイングの最適化 キューイング情報の取得 ● Que-aggregator ○全てのキュー情報からジョブごとの開始時間、完了時間、リソース消費量を算出 ○ ボトルネックを検知してスケジューリング改善可能 ○ キューイング情報は Kafka を介して atsu.io のクラウド上にストリーム ● ML モデルを継続的にトレーニング ○ モデルは 12 時間毎に更新
  • 44.
  • 45.
    ZeroDensity Reality ● UnrealEngine ベースの映像合成技術 ● 実写と 3DCD の高い合成品質が特徴 ○ 影の合成にも対応 ● 3D 空間にオブジェクトを配置可能 ○ 背景だけではない ○ カメラまわり込み撮影対応 ● GUI: Real-time node-based compositor ○ ポスプロのようなビジュアルエフェクトも可能 ● 調整の難易度が高い
  • 46.
  • 47.
  • 48.
  • 49.
    まとめ ● マスメディアを目指す上で次世代放送規格から参考になるものは多い ○ 緊急警報システムなど最適な人により詳細な情報を的確に伝えるための仕組みは マスメディアの義務 ●映像品質管理において業界のアプローチは進化し、 サービスに最適化した形で品質を追求している ● 動画領域での AI 活用範囲が格段に広がり、 多くが汎用ソリューション化している ● 最新の映像合成技術は言われないと CG と実写の区別がつかない程進化している
  • 50.