IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 三菱電機株式会社の特許一覧

特表2024-539523シーン・アウェア映像エンコーダシステムおよび方法
<>
  • 特表-シーン・アウェア映像エンコーダシステムおよび方法 図1
  • 特表-シーン・アウェア映像エンコーダシステムおよび方法 図2A
  • 特表-シーン・アウェア映像エンコーダシステムおよび方法 図2B
  • 特表-シーン・アウェア映像エンコーダシステムおよび方法 図3
  • 特表-シーン・アウェア映像エンコーダシステムおよび方法 図4
  • 特表-シーン・アウェア映像エンコーダシステムおよび方法 図5
  • 特表-シーン・アウェア映像エンコーダシステムおよび方法 図6A
  • 特表-シーン・アウェア映像エンコーダシステムおよび方法 図6B
  • 特表-シーン・アウェア映像エンコーダシステムおよび方法 図6C
  • 特表-シーン・アウェア映像エンコーダシステムおよび方法 図7A
  • 特表-シーン・アウェア映像エンコーダシステムおよび方法 図7B
  • 特表-シーン・アウェア映像エンコーダシステムおよび方法 図8
  • 特表-シーン・アウェア映像エンコーダシステムおよび方法 図9
  • 特表-シーン・アウェア映像エンコーダシステムおよび方法 図10
  • 特表-シーン・アウェア映像エンコーダシステムおよび方法 図11
  • 特表-シーン・アウェア映像エンコーダシステムおよび方法 図12
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-10-28
(54)【発明の名称】シーン・アウェア映像エンコーダシステムおよび方法
(51)【国際特許分類】
   G06V 10/82 20220101AFI20241018BHJP
   G06T 7/00 20170101ALI20241018BHJP
【FI】
G06V10/82
G06T7/00 350C
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2024549069
(86)(22)【出願日】2022-10-27
(85)【翻訳文提出日】2024-04-25
(86)【国際出願番号】 JP2022041101
(87)【国際公開番号】W WO2023106007
(87)【国際公開日】2023-06-15
(31)【優先権主張番号】63/288,096
(32)【優先日】2021-12-10
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】17/650,114
(32)【優先日】2022-02-07
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】000006013
【氏名又は名称】三菱電機株式会社
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】チェリアン,アノープ
(72)【発明者】
【氏名】堀 智織
(72)【発明者】
【氏名】ル・ルー,ジョナタン
(72)【発明者】
【氏名】マークス,ティム
(72)【発明者】
【氏名】スリバン,アラン
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096CA04
5L096FA18
5L096FA77
5L096GA30
5L096HA11
5L096JA11
5L096JA16
5L096JA22
5L096KA04
(57)【要約】
本開示の実施形態は、シーン・アウェア映像エンコーダシステムを開示する。シーン・アウェアエンコーダシステムは、シーンの映像の映像フレームのシーケンスを時空間シーングラフに変換する。時空間シーングラフは、シーン内の1つまたは複数の静的物体および動的物体を表すノードを含む。時空間シーングラフの各ノードは、異なる時間インスタンスにおける物体(静的物体および動的物体)の各々の外観、位置、および/または動作を記述する。時空間シーングラフのノードは、時空間トランスフォーマを使用して潜在空間に埋め込まれ、時空間トランスフォーマは、シーンの異なる時空間体積に対応する時空間シーングラフの異なるノードの異なる組み合わせを符号化する。組み合わせの各々において符号化された異なるノードのうちの各ノードは、組み合わせの各々における異なるノードの時空間位置の類似性の関数として決定されるアテンションスコアで重み付けされる。
【特許請求の範囲】
【請求項1】
シーン・アウェア映像エンコーダシステムであって、少なくとも1つのプロセッサと、命令が格納されたメモリとを備え、前記命令は、前記少なくとも1つのプロセッサによって実行されると、前記シーン・アウェア映像エンコーダシステムに、
シーンの映像の映像フレームのシーケンスを受信することと、
前記映像フレームのシーケンスを、前記シーン内の1つまたは複数の静的物体および1つまたは複数の動的物体を表すノードを含む時空間シーングラフに変換することとを行わせ、前記シーン内の前記静的物体の各々の外観および位置は、前記時空間シーングラフの単一のノードの特性によって表され、前記シーン内の前記動的物体の各々は、異なる時間のインスタンスにおける前記動的物体の各々の外観、位置、および動作を記述する前記時空間シーングラフの複数のノードの特性によって表され、前記シーン・アウェア映像エンコーダシステムにさらに、
時空間トランスフォーマを使用して前記時空間シーングラフの前記ノードを潜在空間に符号化することを行わせ、前記時空間トランスフォーマは、前記シーンの異なる時空間体積に対応する前記時空間シーングラフの異なるノードの異なる組み合わせを符号化し、前記組み合わせの各々における前記異なるノードのうちの各ノードの符号化は、前記組み合わせの各々における前記異なるノードの時空間位置の類似性の関数として決定されるアテンションスコアで重み付けされ、前記シーン・アウェア映像エンコーダシステムにさらに、
前記時空間シーングラフの符号化された前記ノードを出力することを行わせる、シーン・アウェア映像エンコーダシステム。
【請求項2】
前記時空間シーングラフの前記異なるノードの異なる組み合わせは、異なる時空間解像度を有する異なる時空間体積のウィンドウスライディング法を使用して選択される、請求項1に記載のシーン・アウェア映像エンコーダシステム。
【請求項3】
前記プロセッサはさらに、前記異なるノードの異なる組み合わせについての類似性カーネルを計算して、前記時空間シーングラフの前記異なるノードの異なる組み合わせ同士の間の類似性を決定するように構成される、請求項2に記載のシーン・アウェア映像エンコーダシステム。
【請求項4】
前記プロセッサはさらに、一連の多層パーセプトロン(MLP)を使用して前記類似性カーネルをマージし、前記時空間シーングラフの最終的なグラフ特徴を単一の特徴表現で出力するように構成される、請求項3に記載のシーン・アウェア映像エンコーダシステム。
【請求項5】
前記プロセッサはさらに、
前記映像フレームのシーケンスの各映像フレームを、共有の擬似3次元(3D)時空間に登録し、
前記映像フレームのシーケンスの各映像フレームを登録すると、前記映像フレームのシーケンスの擬似3Dシーングラフ表現を作成するように構成され、前記擬似3Dシーングラフ表現は、前記潜在空間の前記時空間シーングラフに埋め込まれる、請求項1に記載のシーン・アウェア映像エンコーダシステム。
【請求項6】
前記プロセッサはさらに、前記時空間シーングラフ表現を静的サブグラフと動的サブグラフとに分割するように構成され、前記静的サブグラフは、前記シーン内で静的である1つまたは複数の物体に対応するグラフノードを含み、前記動的サブグラフは、前記シーン内で動いている1つまたは複数の物体に対応するグラフノードを含む、請求項5に記載のシーン・アウェア映像エンコーダシステム。
【請求項7】
前記プロセッサはさらに、基準に基づいて前記静的サブグラフの少なくとも2つのグラフノードをマージするように構成され、前記基準は、前記映像フレームのシーケンスにわたって互いに近傍の前記2つのグラフノードの3D時空間的近接性、前記2つのグラフノードの対応する物体が同じ物体ラベルを有すること、および、前記物体の対応するバウンディングボックスのIoU(Intersection over Union)が予め規定された閾値を超えること、のうちの1つまたは組み合わせを含む、請求項6に記載のシーン・アウェア映像エンコーダシステム。
【請求項8】
前記プロセッサはさらに、前記時空間トランスフォーマで訓練されたデコーダを使用して、前記潜在空間における前記時空間シーングラフの符号化された前記ノードから前記シーンの前記映像のトランスクリプションを復号するように構成される、請求項1に記載のシーン・アウェア映像エンコーダシステム。
【請求項9】
前記プロセッサはさらに、
前記映像に対応するクエリを受信し、
マルチヘッドのセルフアテンションを使用して前記クエリの埋め込みを生成するように構成され、前記クエリは、マルチヘッドアテンショントランスフォーマを使用して前記時空間シーングラフの階層抽象化について対処され、前記プロセッサはさらに、
前記埋め込みの平均値プーリングを実行し、
前記平均値プーリングに基づいて、クエリについて条件付けられた特徴を出力するように構成される、請求項8に記載のシーン・アウェア映像エンコーダシステム。
【請求項10】
前記プロセッサはさらに、
前記クエリについて条件付けられた特徴に基づいて、前記クエリに対する回答を予測し、
予測された前記回答と候補回答のセットとの類似性を計算し、
計算された前記類似性に基づいて、前記クエリに対する回答表現を出力するように構成される、請求項9に記載のシーン・アウェア映像エンコーダシステム。
【請求項11】
シーン・アウェア映像符号化を実行する方法であって、
シーンの映像の映像フレームのシーケンスを受信することと、
前記映像フレームのシーケンスを、前記シーン内の1つまたは複数の静的物体および1つまたは複数の動的物体を表すノードを含む時空間シーングラフに変換することとを備え、前記シーン内の前記静的物体の各々の外観および位置は、前記時空間シーングラフの単一のノードの特性によって表され、前記シーン内の前記動的物体の各々は、異なる時間のインスタンスにおける前記動的物体の各々の外観、位置、および動作を記述する前記時空間シーングラフの複数のノードの特性によって表され、前記方法はさらに、
時空間トランスフォーマを使用して前記時空間シーングラフの前記ノードを潜在空間に符号化することを備え、前記時空間トランスフォーマは、前記シーンの異なる時空間体積に対応する前記時空間シーングラフの異なるノードの異なる組み合わせを符号化し、前記組み合わせの各々における前記異なるノードのうちの各ノードの符号化は、前記組み合わせの各々における前記異なるノードの時空間位置の類似性の関数として決定されるアテンションスコアで重み付けされ、前記方法はさらに、
前記時空間シーングラフの符号化された前記ノードを出力することを備える、方法。
【請求項12】
異なる時空間解像度を有する異なる時空間体積のウィンドウスライディング法を使用して、前記時空間シーングラフの前記異なるノードの異なる組み合わせを選択することをさらに備える、請求項11に記載の方法。
【請求項13】
前記異なるノードの異なる組み合わせについての類似性カーネルを計算することと、
前記類似性カーネルに基づいて、前記時空間シーングラフの前記異なるノードの異なる組み合わせ同士の間の類似性を決定することとをさらに備える、請求項12に記載の方法。
【請求項14】
一連の多層パーセプトロン(MLP)を使用して前記類似性カーネルをマージすることと、
前記時空間シーングラフの最終的なグラフ特徴を単一の特徴表現で出力することとをさらに備える、請求項13に記載の方法。
【請求項15】
前記映像フレームのシーケンスの各映像フレームを、共有の擬似3次元(3D)時空間に登録することと、
前記映像フレームのシーケンスの各映像フレームを登録すると、前記映像フレームのシーケンスの擬似3Dシーングラフ表現を作成することとをさらに備え、前記擬似3Dシーングラフ表現は、前記潜在空間の前記時空間シーングラフに埋め込まれる、請求項11に記載の方法。
【請求項16】
前記時空間シーングラフ表現を静的サブグラフと動的サブグラフとに分割することをさらに備え、前記静的サブグラフは、前記シーン内で静的である1つまたは複数の物体に対応するグラフノードを含み、前記動的サブグラフは、前記シーン内で動いている1つまたは複数の物体に対応するグラフノードを含む、請求項15に記載の方法。
【請求項17】
基準に基づいて前記静的サブグラフの少なくとも2つのグラフノードをマージすることをさらに備え、前記基準は、前記映像フレームのシーケンスにわたって互いに近傍の前記2つのグラフノードの3D時空間的近接性、前記2つのグラフノードの対応する物体が同じ物体ラベルを有すること、および、前記物体の対応するバウンディングボックスのIoU(Intersection over Union)が予め規定された閾値を超えること、のうちの1つまたは組み合わせを含む、請求項16に記載の方法。
【請求項18】
前記時空間トランスフォーマで訓練されたデコーダを使用して、前記潜在空間における前記時空間シーングラフの符号化された前記ノードから前記シーンの前記映像のトランスクリプションを復号することをさらに備える、請求項11に記載の方法。
【請求項19】
前記映像に対応するクエリを受信することと、
マルチヘッドのセルフアテンションを使用して前記クエリの埋め込みを生成することとをさらに備え、前記クエリは、マルチヘッドアテンショントランスフォーマを使用して前記時空間シーングラフの階層抽象化について対処され、さらに、
前記埋め込みの平均値プーリングを実行することと、
前記平均値プーリングに基づいて、クエリについて条件付けられた特徴を出力することとを備える、請求項18に記載の方法。
【請求項20】
前記クエリについて条件付けられた特徴に基づいて、前記クエリに対する回答を予測することと、
予測された前記回答と候補回答のセットとの類似性を計算することと、
計算された前記類似性に基づいて、前記クエリに対する回答表現を出力することとをさらに備える、請求項19に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、概して映像シーン・アウェア認識に関し、より特定的にはシーン・アウェア映像エンコーダシステムおよび方法に関する。
【背景技術】
【0002】
今日、機械は、映像に取り込まれた環境における物体および出来事について人間と対話する可能性を有して構築されている。そのような人間との対話のために、機械には、映像のシーンから物体および出来事について推論するための動的なオーディオビジュアルシーンの有効なモデルが搭載されていることがある。そのような動的なオーディオビジュアルシーンモデルは、マルチモーダル推論問題、たとえば映像ベースの推論問題に対応する。典型的に、ビジュアルシーングラフが映像ベースの推論のためのデータ構造として使用され、そのようなビジュアルシーングラフは映像の各映像フレームについて構築される。しかしながら、映像は本質的に、3D空間で起こっている出来事の2D「ビュー」のシーケンスであることから、フレームごとにビジュアルシーングラフを有する必要性は冗長であり得る。ビジュアルシーングラフの冗長性は、より長い映像シーケンスでは計算に悪影響を及ぼすようになる可能性がある。
【0003】
さらに、ビジュアルシーングラフには、映像が3次元(3D)空間で起こっている出来事の2次元(2D)「ビュー」のシーケンスを表しているという洞察が欠如していることがある。そのような洞察(すなわち3D情報)が欠如していると、映像の各映像フレームを流れる時空間情報を取り込むことができない場合がある。時空間情報は、映像のフレーム間を流れる3Dシーンのセマンティクスを提供する。さらに、場合によっては、映像内の物体が遮蔽されることがあり、これは、物体の情報(空間/位置情報など)を取り込む際にビジュアルシーングラフに影響を及ぼすことがある。ビジュアルシーングラフが含む情報は、物体が遮蔽されるために少なくなる場合があり、これにより、映像ベースの推論のために出力する結果が不正確になる場合がある。
【0004】
したがって、上述の問題を克服する必要がある。より具体的には、映像ベースの推論のために正確な結果を出力しながら、効率的かつ実現可能な方法でビジュアルシーングラフを生成する必要がある。
【発明の概要】
【0005】
いくつかの実施形態は、映像が、さまざまな出来事が時間的に起こる3次元(3D)空間の2次元(2D)ビューを含み、当該映像のシーンが、ビジュアルシーングラフに基づく表現の冗長性を回避するために4次元(4D)時空間で表現され得る、という認識に基づいている。4D空間は3つの空間次元を含み、4番目の次元は時間である。さらに、いくつかの実施形態は、各物体(すなわち、いくつかの映像フレーム内に見える物体)が3D空間において位置を取得すると、永続性のような物体特性が当該空間で効率的に処理されることにより、カメラビューがその空間的位置から解放され得る、という理解に基づいている。このため、いくつかの実施形態はシーンの3D表現の使用を提案しており、これにより、2Dシーングラフで作業するときの重大な問題である遮蔽を回避できるようになる。さらに、典型的に、映像質問応答(QA)のような映像ベースの推論タスクに対する時空間シーングラフアプローチのために、時空間シーングラフが映像の映像フレームごとに構築される。しかしながら、時空間シーングラフアプローチには、映像が3次元(3D)空間で起こっている出来事の2次元(2D)「ビュー」のシーケンスを表しているという洞察が欠如していることがある。時空間シーングラフアプローチも、時空間情報、すなわち映像のフレーム間を通る3Dシーンのセマンティクスを取り込むことができない場合がある。
【0006】
そのため、いくつかの実施形態の目的は、シーン・アウェア映像エンコーダシステムおよび方法を提供することである。また、いくつかの実施形態の目的は、映像の時空間情報を取り込むことである。いくつかの例示的な実施形態において、時空間情報を取り込むために、映像からキーフレームが抽出され得る。キーフレームは、クラスタベースのキーフレーム抽出、視覚ベースのキーフレーム抽出、動作解析ベースのキーフレーム抽出のようなキーフレーム抽出方法を使用して抽出され得る。いくつかの他の例示的な実施形態において、キーフレームは、たとえばVisualGenomeデータセットのようなデータセット上で訓練されたモデルの特徴に基づいて抽出され得る。たとえば、サッカースポーツ映像のキーフレームは、サッカー場にいる選手、選手のところにあるサッカーボールなどを含むデータセットから抽出された特徴に基づいて抽出され得る。いくつかの実施形態において、キーフレームは、映像の冗長な映像フレームを廃棄することによって抽出され得る。
【0007】
いくつかの例示的な実施形態において、映像の各フレームがシーンの2.5D時空間シーングラフのような擬似3D構造に変換されて、映像フレームの3D構造における時空間情報が取り込まれ得る。このように、2.5Dシーングラフのグラフノードが共有の3D空間座標フレームにマッピングされる。各グラフノードについておおよその3D位置を付与するためのそのようなシーンの2.5D再構築により、時空間シーングラフ、すなわち(2.5+1)Dシーングラフが生成される。いくつかの実施形態において、時空間シーングラフは、対応する映像フレームの2.5Dシーングラフを共有の(2.5+1)D時空間に登録することによって生成される。
【0008】
しかしながら、2.5Dシーングラフを(2.5+1)D時空間に登録するにもかかわらず、各グラフは依然として映像フレームに特有であり、共有空間に登録されない場合がある。(2.5+1)D時空間ベースの登録は、シーン内の物体があるフレームから別のフレームに移動し得るという事実によって混乱する可能性がある。このため、時空間シーングラフは、シーン内の物体の動作に基づいて静的サブグラフと動的サブグラフとに分離され得る。特に、時空間シーングラフの分離は、あるクラスに属する時空間シーングラフの基本的なグラフノードが、通常、シーン内で動くか否かに依存する。たとえば、場合によっては、グラフノードは、シーン内で動く人物クラスのような動的物体クラスに対応し得る。場合によっては、グラフノードは、シーン内で静的であるとみなされるテーブルクラスのような静的物体クラスに対応し得る。
【0009】
分離後、静的サブグラフのグラフノードはマージされ、動的2.5Dサブグラフのグラフノードは元の時空間シーングラフから維持される。いくつかの実施形態において、静的サブグラフの2つのグラフノードは基準に基づいてマージされ得る。当該基準は、映像のフレームにわたってそれらグラフノードの3D空間的近接性が近いこと、2つのグラフノードの対応する物体が同じ物体ラベルを有すること、および、物体の対応するバウンディングボックスの重なりが予め規定された閾値を超えることである。静的サブグラフのそのようなグラフノードをマージすることで、冗長なグラフノード、すなわち静的サブグラフ内の静的物体のコピーが除去される。いくつかの実施形態において、動的サブグラフ内のグラフノードは、当該グラフノードと他のグラフノードとの相互作用を取り込む動作特徴でエンリッチ化され得る。各動的グラフノードが、対応する物体レベルの特徴表現とともに動作特徴でエンリッチ化されると、動的サブグラフノードは、フレームレベルのセマンティクスと、物体のアクション(たとえば、人がカップを持ち上げること)とを取り込み得る。
【0010】
時空間シーングラフ表現は、計算上効率的なフレームワークで、シーン内で起こっている時空間行動を要約し得る。いくつかの実施形態において、シーングラフ表現は、視覚質問応答(VQA)タスクのための豊富な推論スキームを開発するために使用され得る。たとえば、映像のシーン内の人と静的物体との対話は、それぞれのグラフノード同士の間の時空間的近接性が最小化される時空間シーングラフ内の領域に対処することによって取り込まれ得る。
【0011】
そのため、時空間シーングラフは、階層的な潜在埋め込みに基づいて埋め込まれ得る。階層的な潜在埋め込みは、さまざまな時空間的近接性を介して時空間シーングラフのグラフエッジを構築し得る。さまざまな時空間的近接性を用いてグラフエッジを構築することで、複数の粒度(たとえば異なる解像度)で時空間シーングラフの潜在埋め込みが取り込まれ得る。そのような埋め込まれた時空間シーングラフは、映像についてのクエリの適切な回答を取り出すために、VQA質問について条件付けられているVQAタスクのトランスフォーマ推論パイプライン内で使用され得る。
【0012】
いくつかの実施形態において、動的サブグラフ内の物体の対話を意味論的に表現するために、静的物体および動的物体の特徴が潜在空間に埋め込まれ得る。そのため、異なる時空間解像度を有する異なる時空間体積のウィンドウスライディング法を使用して、時空間シーングラフの異なるノード(すなわち静的物体および動的物体)の異なる組み合わせが選択され得る。さらに、異なる組み合わせの類似性は、時空間カーネル、文字列カーネル、グラフカーネルのような類似性カーネルを使用してもよい。類似性カーネルは、時空間的に近傍の時空間シーングラフ内のグラフノードの特徴を取り込む。いくつかの実施形態において、時空間シーングラフの異なるノードの異なる組み合わせ同士の間の類似性を決定するために、異なるノードの異なる組み合わせについての類似性カーネルが計算され得る。類似性カーネルは、一連の多層パーセプトロン(MLP)を使用してマージされる。一連のMLPは、単一の特徴表現を時空間シーングラフの最終的なグラフ特徴として出力する。そのような最終的なグラフ特徴は、VQAタスクに使用され得る。
【0013】
いくつかの実施形態において、潜在空間に符号化された時空間シーングラフは、シーンの映像のトランスクリプションを復号するために使用され得る。映像のトランスクリプションは、時空間トランスフォーマで訓練されたデコーダを使用して、潜在空間から復号され得る。デコーダは、映像に対応するクエリを受信し得る。いくつかの実施形態において、クエリの埋め込みは、マルチヘッドのセルフアテンションを使用して生成され得る。マルチヘッドのセルフアテンションは、時空間シーングラフの階層抽象化に基づいてクエリに対処し得る。特に、クエリは、マルチヘッドのクロスアテンショントランスフォーマを使用して対処され得る。クエリの後、埋め込みは、クエリについて条件付けられた特徴をクエリに対して出力するために、埋め込みの平均値プーリングのようなプーリング技術を使用してプールされ得る。クエリについて条件付けられた特徴は、クエリに対する回答を予測するために使用され得る。予測回答は、(グラウンドトゥルース回答を含む)候補回答のセットの埋め込みを表し得る。いくつかの実施形態において、デコーダは、予測回答とグラウンドトゥルース回答との間の交差エントロピー損失に基づいて訓練されてもよい。
【0014】
したがって、一実施形態は、シーン・アウェア映像エンコーダシステムを開示し、上記シーン・アウェア映像エンコーダシステムは、少なくとも1つのプロセッサと、命令が格納されたメモリとを含み、上記命令は、少なくとも1つのプロセッサによって実行されると、上記シーン・アウェア映像エンコーダシステムに、シーンの映像の映像フレームのシーケンスを受信することと、上記映像フレームのシーケンスを、上記シーン内の1つまたは複数の静的物体および動的物体を表すノードを含む時空間シーングラフに変換することとを行わせ、上記シーン内の上記静的物体の各々の外観および位置は、上記時空間シーングラフの単一のノードの特性によって表され、上記シーン内の上記動的物体の各々は、異なる時間のインスタンスにおける上記動的物体の各々の外観、位置、および動作を記述する上記時空間シーングラフの複数のノードの特性によって表され、上記シーン・アウェア映像エンコーダシステムにさらに、時空間トランスフォーマを使用して上記時空間シーングラフの上記ノードを潜在空間に符号化することを行わせ、上記時空間トランスフォーマは、上記シーンの異なる時空間体積に対応する上記時空間シーングラフの異なるノードの異なる組み合わせを符号化し、上記組み合わせの各々における上記異なるノードのうちの各ノードの符号化は、上記組み合わせの各々における上記異なるノードの時空間位置の類似性の関数として決定されるアテンションスコアで重み付けされ、上記シーン・アウェア映像エンコーダシステムにさらに、上記時空間シーングラフの符号化された上記ノードを出力することを行わせる。
【0015】
別の実施形態は、シーン・アウェア映像符号化のための方法を開示し、上記方法は、シーンの映像の映像フレームのシーケンスを受信することを含む。上記方法は、上記映像フレームのシーケンスを、上記シーン内の1つまたは複数の静的物体および動的物体を表すノードを含む時空間シーングラフに変換することを含む。上記シーン内の上記静的物体の各々の外観および位置は、上記時空間シーングラフの単一のノードの特性によって表され、上記シーン内の上記動的物体の各々は、異なる時間のインスタンスにおける上記動的物体の各々の外観、位置、および動作を記述する上記時空間シーングラフの複数のノードの特性によって表される。上記方法は、時空間トランスフォーマを使用して上記時空間シーングラフの上記ノードを潜在空間に符号化することを含み、上記時空間トランスフォーマは、上記シーンの異なる時空間体積に対応する上記時空間シーングラフの異なるノードの異なる組み合わせを符号化し、上記組み合わせの各々における上記異なるノードのうちの各ノードの符号化は、上記組み合わせの各々における上記異なるノードの時空間位置の類似性の関数として決定されるアテンションスコアで重み付けされる。上記方法はさらに、上記時空間シーングラフの符号化された上記ノードを出力することを含む。
【図面の簡単な説明】
【0016】
図1】本開示のいくつかの実施形態に係る、シーン・アウェア映像エンコーダシステムの環境の表現を示す図である。
図2A】本開示のいくつかの実施形態に係る、シーン・アウェア映像解析システムの概略図である。
図2B】本開示のいくつかの実施形態に係る、時空間シーングラフの分離のための表現を示す図である。
図3】本開示のいくつかの実施形態に係る、時空間シーングラフの異なるノードのグラフ表現と、時空間シーングラフの異なるノードの異なる時空間体積の異なる組み合わせのグラフ表現とを示す図である。
図4】本開示のいくつかの実施形態に係る、一連の多層パーセプトロンの表現を示す図である。
図5】本開示のいくつかの実施形態に係る、時空間グラフを使用する映像質問応答(VQA)タスクのような、シーンの映像のトランスクリプションを復号するための表現を示す図である。
図6A】本開示のいくつかの実施形態に係る、VQAタスクのための標準トランスフォーマを有する時空間トランスフォーマのアーキテクチャ表現を示す図である。
図6B】本開示のいくつかの他の実施形態に係る、VQAタスクのための標準トランスフォーマを有する時空間トランスフォーマの別のアーキテクチャ表現を示す図である。
図6C】本開示のさらにいくつかの他の実施形態に係る、VQAタスクのための標準トランスフォーマを有する時空間トランスフォーマのさらに別のアーキテクチャ表現を示す図である。
図7A】本開示のいくつかの実施形態に係る、シーン・アウェア映像エンコーダシステムを使用するVQAタスクについての評価調査を示す図である。
図7B】本開示のいくつかの実施形態に係る、シーン・アウェア映像エンコーダシステムについてのアブレーション調査を示す図である。
図8】本開示のいくつかの実施形態に係る、映像を符号化する方法のフロー図である。
図9】本開示のいくつかの実施形態に係る、シーン・アウェア映像エンコーダシステムの概略ブロック図である。
図10】本開示のいくつかの実施形態に係る、シーン・アウェア映像エンコーダシステムのユースケース実装を示す図である。
図11】本開示のいくつかの実施形態に係る、シーン・アウェア映像エンコーダシステムを使用してVQAタスクを実行するためのユースケース実装を示す図である。
図12】一実施形態に係る、カーネル化されたセルフアテンションに対して異なる抽出関数を使用する方法の概略図である。
【発明を実施するための形態】
【0017】
以下の記載では、説明のために、本開示が十分に理解されるよう多数の具体的な詳細事項を述べる。しかしながら、本開示はこれらの具体的な詳細事項なしで実施し得ることが当業者には明らかであろう。その他の場合では、本開示を不明瞭にするのを避けることだけのために、装置および方法をブロック図の形式で示す。
【0018】
本明細書および請求項で使用される、「たとえば」、「例として」、および「~のような」という用語、ならびに「備える」、「有する」、「含む」という動詞およびこれらのその他の動詞形の各々は、1つ以上の構成要素または他のアイテムの列挙とともに使用された場合、オープンエンドであるように解釈されるべきであり、これは、列挙が他のさらなる構成要素またはアイテムを排除するものとして考えられるべきでないことを意味している。「~に基づく」という用語は、少なくとも部分的に基づくことを意味する。さらに、本明細書で使用される文体および術語は、説明のためのものであって限定とみなされてはならないことが理解されるはずである。本明細書で使用されるいかなる見出しも、便宜的なものにすぎず、法的または限定効果を持つものではない。
システムの概略
【0019】
図1は、本開示のいくつかの実施形態に係る、シーン・アウェア映像エンコーダシステム110の環境100の表現を示す。説明のためのシナリオ例では、映像104内のシーン102は、静的または動的であり得る異なる物体を含み得る。たとえば、シーン102は、物体106Aおよび物体106Bを含む。物体106Aは、シーン102内で動く人のような動的物体に対応し得るものであり、物体106Bは、シーン102内のテーブルの上で静的なままであるラップトップのような静的物体に対応し得る。映像104のそのようなシーン102は、シーン・アウェア映像エンコーダシステム110によって処理され得る。いくつかの例示的な実施形態において、シーン102を処理することは、シーン102の映像のトランスクリプションを提供すること、および/またはシーン102に関連するクエリに対する応答を提供することを含み得る。シーン・アウェア映像エンコーダシステム110は、プロセッサ112およびメモリ114を含む。メモリ114は、プロセッサ112によって実行される命令を格納するように構成される。いくつかの例示的な実施形態において、シーン・アウェア映像エンコーダシステム110は、スタンドアロンシステムとして具体化されてもよく、または別のコンピューティングシステムの一部であってもよい。
【0020】
次に図2Aを参照して、シーン・アウェア映像エンコーダシステム110のプロセッサ112が映像104を処理するプロセスについてさらに説明する。
【0021】
図2Aは、プロセッサ204によって実行される、いくつかの実施形態に係るシーン・アウェア映像エンコーダシステム202の概略図200を示す。プロセッサ204は、映像フレームのシーケンス208(以下、同義で映像フレーム208と称される)を受信するように構成される。映像フレームのシーケンス208は、シーン102の映像104に対応する。いくつかの例示的な実施形態において、映像フレームのシーケンス208は、ネットワーク108のようなネットワークを介して受信され得る。シーン・アウェア映像エンコーダシステム202は、図1のシーン・アウェア映像エンコーダシステム110に対応する。シーン・アウェア映像エンコーダシステム202は、プロセッサ204およびメモリ206を含む。メモリ206は命令を格納する。
【0022】
受信された映像フレームのシーケンス208は前処理されて、前処理された映像フレームのシーケンス210が出力される。前処理された映像フレームのシーケンス210は、映像フレーム208内に検出された物体と、映像フレーム208内の物体の深度情報とを含む。いくつかの実施形態において、映像フレーム208は、映像フレーム208の各々における物体検出のための物体検出モデルと、深度情報推定のためのニューラルネットワークモデルとを使用して前処理され得る。
【0023】
いくつかの例示的な実施形態において、物体検出モデルは、高速領域畳み込みニューラルネットワーク(FRCNN)物体検出モデルを含み得る。FRCNN物体検出モデルは、映像フレーム308内の物体を検出するように予め訓練されてもよい。いくつかの例示的な実施形態において、FRCNN物体検出モデルは、Visual Genomeデータセットのような訓練データセットに基づいて予め訓練されてもよい。訓練データセットは、幅広い日常生活の屋内および屋外の物体であってもよい。各映像フレームにおいて、FRCNN物体検出モデルは、映像フレーム208内の「m」個の物体を検出する。
【0024】
いくつかの例示的な実施形態において、ニューラルネットワークモデル(D:Rh×w×3→Rh×w×4として示される)は、既製の予め訓練された2Dから3Dへの深層学習フレームワークを使用して実装され得る。2Dから3Dへの深層学習フレームワークは、効率的かつ実現可能な方法でさまざまな実世界のシーンについての現実的な深度を推定するためのMiDASモデルに対応し得る。ニューラルネットワークモデルは、映像フレームのシーケンス208の各々を赤、緑、青(RGB)画像として受信し、映像フレーム208の各々の対応するRGBD画像を出力する。たとえば、映像フレームはRGB画像(I)であり、当該RGB画像の対応する深度情報は、2D画素位置(x,y)をそれぞれの3D座標(p=(x,y,z)と示される)にマッピングするd:R→Rである。
【0025】
ニューラルネットワークモデルによって出力された映像フレーム208のRGBD画像と、物体検出モデルによって出力された映像フレーム208の検出された物体とが組み合わされて、前処理された映像フレームのシーケンス210が出力される。前処理された映像フレームのシーケンス210は、時空間トランスフォーマ212に入力される。
【0026】
【数1】
【0027】
時空間シーングラフ210のグラフノードは、1つまたは複数の静的ノード214A、および1つまたは複数の動的ノード214Bを含む。1つまたは複数の静的ノード214Aは、映像フレーム208内の対応する静的物体(たとえば物体108B)を表す。1つまたは複数の動的ノード214Bは、映像フレーム208内の対応する動的物体(たとえば物体106A)を表す。1つまたは複数の動的ノード214Bは、動的ノード214Bの動きの情報を表す動作特徴214Cを含む。いくつかの例示的な実施形態において、動作特徴214Cは、アクション認識モデル、たとえばI3D(Inflated 3D network)アクション認識モデルを使用して、時空間シーングラフの動的グラフノードから抽出される。
【0028】
時空間シーングラフ214において、グラフノード(静的または動的)の各々は、対応する物体を表す特性を有する。たとえば、静的グラフノードは、対応する静的物体の外観および位置を表す特性を有する。同様に、動的グラフノードは、異なる時間のインスタンスにおける対応する動的物体の外観、位置、および動作を表す特性を有する。
【0029】
【数2】
【0030】
さらに、時空間シーングラフ214(G3.5Dグラフ)から、静的物体に対応するグラフノードが、グラフノードの冗長またはコピーを除去するためにプルーニングされる。これについては、次に図2Bで説明する。
【0031】
図2Bは、本開示のいくつかの実施形態に係る、時空間シーングラフ214の分離のための表現216を示す。いくつかの例示的な実施形態において、時空間シーングラフ214は、物体のクラス分離に基づいて分離され得る。クラス分離は、訓練データセット(たとえばFRCNN物体検出モデルの訓練データセット)を2つのカテゴリに分離することに対応し得る。2つのカテゴリは、静的物体のカテゴリ(C)および動的物体のカテゴリ(C)を含み得る。静的シーン物体のカテゴリ(C)は、テーブル、ソファ、テレビのような物体に対応し得る。動的シーン物体のカテゴリ(C)は、人物、携帯電話、フットボール、雲のような物体に対応し得る。そのため、時空間シーングラフ214は、グラフノードv∈Vの物体ラベル(C)がCに属するかCに属するかに対応して静的サブグラフ218A(G)と動的サブグラフ218B(G)とに分割される。静的サブグラフ218Aは、静的シーン物体のカテゴリ(C)に属するグラフノードを含むのに対して、動的サブグラフ218Bは動的シーン物体のカテゴリ(C)に属するグラフノードを含む。
【0032】
いくつかの実施形態において、エンリッチ化された時空間シーングラフ214のグラフ(G3.5D)は、共有3D空間に登録される。いくつかの実施形態において、静的サブグラフ218Aのグラフノード(以下、静的グラフノードと称される)から、登録される特徴が抽出される。登録特徴は、映像フレーム208内の物体の動きに起因する問題、および/または映像フレーム208を取り込むカメラの動きに起因する問題に取り組むために、静的サブグラフノードから抽出される。具体的には、カメラに動きがある場合、点特徴を使用するフレーム間の3D射影行列が存在する可能性がある。射影行列は、エンリッチ化された時空間シーングラフ214のすべてのグラフノード(静的グラフノードおよび動的グラフノードの両方を含む)を共通座標フレームにマッピングするために使用され得る。
【0033】
【数3】
【0034】
【数4】
【0035】
【数5】
【0036】
【数6】
【0037】
【数7】
【0038】
さらに、いくつかの実施形態において、時空間トランスフォーマ206は、シーン102の異なる時空間体積に対応する時空間シーングラフ214の異なるノードの異なる組み合わせを潜在空間に符号化する。組み合わせの各々における異なるノードのうちの各ノードの符号化は、組み合わせの各々における異なるノードの時空間位置の類似性の関数として決定されるアテンションスコアで重み付けされる。その詳細については、図6Bを参照して後述する。次に図3を参照して、異なる組み合わせにおける異なるノードの異なる時空間体積を示し説明する。
【0039】
図3は、本開示のいくつかの実施形態に係る、時空間シーングラフ214の異なるノードのグラフ表現302と、時空間シーングラフ214の異なるノードの異なる時空間体積の異なる組み合わせのグラフ表現308とを示す。
【0040】
説明のためのシナリオ例では、グラフ表現302は、t,t,t,tおよびt(t~t)のような異なる時間インスタンスにおける時空間シーングラフ214の静的ノード304の表現を含む。静的ノード304は、映像フレーム208内の異なる時間インスタンスにおいて静的なままであるテーブルのような静的物体に対応し得る。異なる時間インスタンス(すなわちt~t)において、物体の外観および位置は、静的物体の場合は変化しないままである。グラフ表現302は、異なる時間インスタンス(t~t)における、映像フレーム208内の人のような動的物体に対応する動的ノードの表現も含む。動的ノードは、tにおける動的ノード306A、tにおける動的ノード306B、tにおける動的ノード306C、tにおける動的ノード306D、およびtにおける動的ノード306Eを含む。
【0041】
さらに、グラフ表現308に示されるように、時空間シーングラフ214の異なるノードの異なる組み合わせが、異なる時空間解像度を有する異なる時空間体積のウィンドウスライディングを使用して選択される。異なる組み合わせは、グラフ表現308に示されるように、組み合わせ310A、組み合わせ310B、および組み合わせ310C(以下、組み合わせ310A~310Cと称される)を含み得る。組み合わせ310Aは、静的ノード304と、時間インスタンスtおよびtにおける動的ノード306Bおよび動的ノード306Cとの組み合わせを含む。組み合わせ310Bは、冗長コピー304Aとして視覚化できる静的物体と、時間インスタンスtおよびtにおける動的ノード306Cおよび動的ノード306Dとの組み合わせを含む。組み合わせ310Cは、時間インスタンスtおよびt5における動的ノード306Dと動的ノード306Eとの組み合わせを含む。組み合わせ310Bは、静的ノード304の冗長コピー304Aと、時間インスタンスtおよびtにおける動的ノード306Bおよび動的ノード306Cとの組み合わせを含む。
【0042】
異なるノードの組み合わせ(すなわち組み合わせ310A~310C)の各々は、異なる半径(r)によって定義される対応するシーンの情報を含む、組み合わせられた特徴を取り込む。組み合わせられた特徴は、複数のスケールにおける相関、すなわち、異なる半径の値についての相関も含み得る。たとえば、ノードの特徴は、(人+カップ)、(カップ+時計)、(人+ソファ)と、(人+カップ+本)、(カップ+本+時計)、(人+ソファ+人)などの複数のスケールにおける相関とを含み得る。いくつかの例示的な実施形態において、組み合わせ310A~310Cのような異なる組み合わせの類似性を取り込む、組み合わせられた特徴は、類似性カーネル(k)312を使用して時空間トランスフォーマ212によって抽出され得る。いくつかの例示的な実施形態において、類似性カーネル(k)312は、時空間カーネル、文字列カーネル、グラフカーネル、またはその他の類似性尺度のうちの1つに対応し得る。
【0043】
【数8】
【0044】
【数9】
【0045】
さらに、時空間特徴は、複数の粒度(または解像度)での時空間シーングラフ214の階層抽象化に向けた表現に改善される。これについては、次に図4を参照して説明する。
【0046】
【数10】
【0047】
【数11】
【0048】
【数12】
【0049】
【数13】
【0050】
【数14】
【0051】
映像フレーム208の階層情報を含む最終的なグラフ特徴412は、訓練データセット内の物体の統計的な近接性から学習された特徴の表現よりも、映像フレーム208のより良いシーン表現を提供する。
【0052】
さらに、時空間シーングラフ214の最終的なグラフ特徴412は、映像質問応答(VQA)タスクに使用され得る。これについては、次に図5を参照して説明する。
【0053】
図5は、本開示のいくつかの実施形態に係る、映像(たとえば映像104)の映像フレームのシーケンス(たとえば映像フレーム208)の時空間シーングラフ214を使用するVQAタスク512のような、シーンの映像のトランスクリプションを復号するための表現500を示す。時空間シーングラフ214は、映像104に対応するクエリ(たとえば「カップはどのように落ちたのか?」)の質問埋め込み506とともに、階層トランスフォーマ504に入力される。たとえば、映像フレーム202のような映像フレームのシーケンス(Sとして示される)は、「n」個の映像フレームを含み得る。映像フレームのシーケンス(S)208の各々は、少なくとも1つの質問またはクエリ(Q)に関連付けられ得る。クエリは、トークン化され埋め込まれている、予め規定された語彙からの単語の順序付けられたタプルであってもよい。
【0054】
図4で前述したように、時空間シーングラフ214の最終的なグラフ特徴412は、階層トランスフォーマ504によって質問埋め込み506と組み合わせられる。組み合わせられた最終的なグラフ特徴および質問埋め込み506は、VQAタスク512の入力特徴508として使用される。
【0055】
いくつかの実施形態において、VQAタスク512は、「l」個の候補回答の集合体またはセット510(A={A,A,…,A})から予測回答Apredを取り出すタスクと定義され得る。「l」個の候補回答510は、グラウンドトゥルース回答(Agt)を含み得る。
【0056】
【数15】
【0057】
図6Aは、本開示のいくつかの実施形態に係る、標準トランスフォーマ606を有する時空間トランスフォーマ604のアーキテクチャ表現600Aを示す。標準トランスフォーマ606は、質問エンコーダ606Aと、マルチヘッドアテンションモジュール606Bと、回答デコーダ606Cとを含む。
【0058】
いくつかの例示的な実施形態において、入力602は時空間シーングラフ602Aを含む。時空間シーングラフ602Aは、時空間トランスフォーマ604に入力される時空間シーングラフ214の一例である。入力602は、標準トランスフォーマ606に入力される映像フレーム208に対応するクエリ(Q)602Bも含み得る。いくつかの例示的な実施形態において、クエリ602Bは、質問埋め込み608として標準トランスフォーマ606に入力される。標準トランスフォーマ606は、質問エンコーダ606Aを使用して、クエリに回答するためのクエリ、キー、および値埋め込みを作成する。クエリ、キー、および値埋め込みは、時空間シーングラフ214のグラフノード特徴(たとえば最終的なグラフ特徴412)を使用して作成される。標準トランスフォーマ606は、グラフノード特徴を使用して、クエリとキーとの間の相関を生成する。この相関は、時空間シーングラフ214の2つのグラフノード同士の間の相互作用、すなわちエッジを決定する。たとえば、訓練データにおいて、人がカップと対話しているサンプルが存在する場合があり、その場合、人がカップを持っているシーンについては、人およびカップの特徴同士の間に高い相関が存在する。そのため、標準トランスフォーマ604は、人およびカップの特徴同士の間の高い相関に基づいて人およびカップのグラフノードを接続するエッジを追加するようにセルフアテンションを割り当ててもよい。
【0059】
【数16】
【0060】
式(6)におけるソフトマックス関数は、Q、KおよびV埋め込みを、出力(たとえば単語)に対するk個の確率からなる確率分布に正規化する。例示的な実施形態において、ソフトマックス関数はスコアを確率に変換し、そこから最も高い確率が標準トランスフォーマ606の単語出力として選択される。
【0061】
【数17】
【0062】
【数18】
【0063】
いくつかの例示的な実施形態において、回答表現610を出力するために、映像フレーム208の対話履歴および/またはキャプション特徴が使用されてもよい。そのため、標準トランスフォーマ606は、長・短期記憶(LSTM)を使用してクエリおよび回答を特徴空間(たとえば128D特徴空間)に符号化してもよい。特に、LSTMは、最終的なグラフ特徴412と組み合わせられる対話履歴およびキャプション特徴を符号化し、回答表現610を出力してもよい。いくつかの例示的な実施形態において、回答表現610は、マルチヘッドアテンションモジュール606Bを使用して対話履歴、キャプション特徴および最終的なグラフ特徴412を符号化することによって得られてもよい。
【0064】
時空間トランスフォーマ604および標準トランスフォーマ606のアーキテクチャは異なり得る。これについては、次に図6Bを参照して次説明する。
【0065】
図6Bは、本開示のいくつかの他の実施形態に係る、VQAタスク512のための時空間トランスフォーマ604および標準トランスフォーマ606のアーキテクチャ表現600Bを示す。いくつかの例示的な実施形態において、標準トランスフォーマ606は、入力602の相対/絶対位置を入力ベクトル612として符号化し得る。たとえば、入力ベクトル612は、静的グラフノード(たとえば静的グラフノード214A)の特徴、動作特徴(たとえば動作特徴214B)、および動的グラフノード(たとえば動的グラフノード214C)の特徴のようなグラフノード特徴612Aと、グラフノード特徴612Aの対応する時空間位置612Bとを含み得る。クエリ602Aの相対位置も、入力ベクトルとして符号化され得る。入力ベクトルは、相対位置に基づいて入力埋め込みに追加される。
【0066】
さらに、マルチヘッドアテンションモジュール606Bは、追加およびノルム層602Aを介して回答デコーダ606Cのフィードフォワード層622に接続される。フィードフォワード層622は、マルチヘッドアテンションモジュール606Bの出力(たとえばクエリ602Bの特徴の行列)を、当該行列に追加の重み行列を乗算することによって連結して、単一の行列にする。
【0067】
フィードフォワード層622の出力は、追加およびノルムサブ層620Bを介して回答デコーダ606Cに送信される。スコアを有する出力ベクトルは、回答デコーダ606Cのソフトマックス層624に与えられる。ソフトマックス関数624は、単語出力に対してソフトマックスまたは正規化を分配する。例示的な実施形態において、ソフトマックス層624はスコアを確率に変換し、最も高い確率が回答表現610として選択される。
【0068】
いくつかの例示的な実施形態において、フィードフォワード層622は、マルチヘッドカーネルモジュール614内の他の単語からの情報を集約すると、出力を位置的に組み合わせる。マルチヘッドカーネルモジュール614は、類似性カーネルを計算して、時空間位置612Bにおける位置情報を取り込み得る。いくつかの例示的な実施形態において、MLPモジュール616は、MLP408A,408Bおよび408Cのような一連のMLPを含み得る。連結後、組み合わせられた類似性カーネルは、別のMLPモジュール618を介して、時空間シーングラフ602Aの1つの特徴表現(たとえば最終的なグラフ特徴412)として出力される。たとえば、カーネルは値を多重化し、その結果得られた値はMLPを用いて埋め込まれ、次に連結される。連結は、図6Bの616の出力における+記号で起こる。
【0069】
いくつかの例示的な実施形態において、マルチヘッドカーネルモジュール614は、ドット積アテンションメカニズムも実行する。ドット積アテンションメカニズムでは、クエリQ(たとえばクエリ602B)とクエリ602B内のそれぞれの単語のキーKとのドット積が計算され得る。たとえば、クエリ602Bは、「What is happening at beginning of the video?(映像の冒頭で何が起こっているのか?)」であってもよい。クエリ602Bの各単語、すなわち、「What」、「is」、「happening」、「at」、「beginning」、「of」、「the」および「video」が、マルチヘッドカーネルアテンションモジュール614によってベクトルに埋め込まれる。ベクトルに行列を乗算することにより、クエリ602Bの単語の各々についてキーおよび値を有するクエリ602Bが作成され得る。それぞれの単語のクエリ602Bとキーとのドット積を取ることによってアテンションスコアが計算され得る。たとえば、最初の単語、すなわち「What」のアテンションスコアが計算される。また、残りの単語、すなわち「is」、「happening」、「at」、「beginning」、「of」、「the」および「video」の各々についてのアテンションスコアが、「What」という単語に対して計算される。
【0070】
アテンションスコアの各々は、単語が特定の位置で符号化される際にクエリ602Bの他の部分の重要度を決定する。第1の位置にある単語(すなわち「What」)の第1のアテンションスコアは、第1のクエリ(q)と第1のキー(k)とのドット積であり、すなわち「What」対「What」である。第2のアテンションスコアは、qと第2のキー(k)とのドット積であり、すなわち「What」対「is」である。同様に、単語(すなわち「happening」)の第3のアテンションスコアは、qと第3のキー(k)とのドット積であり、すなわち「What」対「happening」であり、単語(すなわち「at」)の第4のアテンションスコアは、qと第4のキー(k)とのドット積であり、すなわち「What」対「at」であり、クエリ602Bの単語の最後まで続く。そのようなアテンションスコアを、式(6)の特徴次元rの平方根で除算する。さらに、キーの各値にアテンションスコアを乗算する。アテンションスコアは、重みとして値の各々について乗算する。重み付けされた値を合計することにより、出力、すなわち、クエリ602Bに対する回答内の対応する位置における回答表現610の単語が提供される。回答表現610の単語を適切な位置で出力するために、位置符号化は、出力の相対/絶対位置をベクトルとして符号化し、これらが追加されることで回答デコーダ606Cの回答表現610が出力される。これにより、マルチヘッドアテンションモジュール606Bの出力を、入力602の入力のシーケンスと同じ順序にすることができる。入力ベクトル612の位置符号化の各次元は、異なる周波数を有する波であってもよく、これにより、標準トランスフォーマ606は、入力602内の(時空間シーングラフ602Aおよび/またはクエリ602Bの)入力特徴の相対位置に対処するように学習することが可能になり得る。
【0071】
アーキテクチャ表現600Bでは、マルチヘッドカーネルモジュール614とマルチヘッドアテンションモジュール606Bとは別個であり、それらの対応する出力(すなわち、時空間シーングラフ214の最終的なグラフ特徴412およびクエリ602Bの特徴)がソフトマックス層624で組み合わせられて、映像フレーム208のクエリ602Bに対する回答表現610が出力される。
【0072】
場合によっては、時空間シーングラフ214の最終的なグラフ特徴412およびクエリ602Bの特徴は、標準トランスフォーマ606に入力される前にマージされる。これについては、次に図6Cで説明する。
【0073】
図6Cは、本開示のいくつかの他の実施形態に係る、VQAタスク512のための時空間トランスフォーマ604および標準トランスフォーマ606のアーキテクチャ表現600Cを示す。図6Bで前述したように、入力602は、グラフノード特徴612Aおよび時空間位置612Bを含む入力ベクトル612として入力される。グラフノード特徴612Aは、質問エンコーダ606Aによってクエリ602Bをクエリ602Bに回答するためのクエリ、キー、および値埋め込みに符号化する際に使用される。クエリ、キー、および値埋め込みは、マルチヘッドアテンションモジュール606Bに入力される。マルチヘッドアテンションモジュール606Bは、ソフトマックス層624を使用して、クエリ602Bに対応する単語のスコアを確率に出力する。また、ソフトマックス層624は、当該確率を、マルチヘッドカーネルアテンションモジュール614によって出力された類似性カーネルとともに組み込み得る。
【0074】
確率と類似性カーネルとを組み合わせるソフトマックス層624の出力は、標準トランスフォーマ606に入力される。標準トランスフォーマ606は、確率の中から最も高い確率を選択して、回答表現610を出力し得る。図6Cに示されるように、アーキテクチャ表現600Cでは、マルチヘッドアテンションモジュール606Bの出力、すなわち、クエリ、キー、および値埋め込みと、マルチヘッドカーネルアテンションモジュール614の出力、すなわち類似性カーネルとが、標準トランスフォーマ606に入力される前にソフトマックス層624でマージされる。
【0075】
時空間映像エンコーダシステム202の時空間シーングラフ214を使用することで、VQAタスク512の性能が改善され得る。時空間シーングラフ214を使用するVQAタスク512の性能に関する評価を図7Aに示す。
【0076】
図7Aは、本開示のいくつかの実施形態に係る、シーン・アウェア映像エンコーダシステム202を使用するVQAタスク(たとえばVQAタスク512)についての評価調査700Aを示す。いくつかの例示的な実施形態において、VQAタスクについてのシーン・アウェア映像エンコーダシステム202の性能は、NExT-QAデータセットおよびAVSD-QAデータセットのようなVQAデータセットを使用して評価され得る。NExT-QAデータセットは、「なぜ」および「どのように」という単語を含む質問を組み込んでいる。「なぜ」および「どのように」の質問を有するそのようなデータセットは、より高度な映像の抽象化および意味論的推論を必要とする。データセットは、3870回の訓練と、570回の検証と、1000個の試験映像とで構成される。データセットは、訓練セット、検証セット、および試験セットにおいて、34132個、4996個、および8564個の多肢選択問題をそれぞれ提供し、タスクは5つの候補回答の中から1つを選択することである。AVSD-QAデータセットは、QAペアと、人間が生成した会話履歴と、各映像のキャプションとで構成される。このデータセットのQA版では、タスクは、映像に関する対話履歴から最後の質問を用いて、100個の候補回答のうちの1つから回答を選択することである。データセットは11816個の映像クリップおよび118160個のQAペアで構成され、このうち、標準的な分割に従って、7985個、1863個、および1968個を訓練、検証、および試験に使用する。
【0077】
評価調査700Aは、時空間トランスフォーマ212パイプラインの性能と最先端の方法との比較を示す表702および表704を描いている。表702では、時空間トランスフォーマ212の精度が、時空間VQA、共記憶QA、階層関係ネットワーク、マルチモーダルアテンションVQA、およびグラフ整合VQAのような方法と比較されている。時空間トランスフォーマ212は、VQAタスクについて精度53.40の性能を示す。表704では、時空間トランスフォーマ212の平均順位が、質問のみ、マルチモーダルトランスフォーマ、質問および映像、MTN、およびSTシーングラフのような方法と比較されている。シーン・アウェア映像エンコーダシステム202は、平均順位5.84という結果が得られた。
【0078】
NExT-QAデータセットにおいて、グラフ整合および階層関係モデルのような、VQAのために時空間トランスフォーマ212を使用する方法が、時空間シーングラフモデルと比較されており、~4%の大幅な改善を示している。訓練データセットAVSD-QAにおいて、表704に与えられるように、時空間トランスフォーマ212はSTSGRモデルおよびマルチモーダルトランスフォーマと比較されており、取り出された回答の平均順位がこれらよりも優れている。AVSD-QAモデルを対話履歴およびキャプション特徴のようなテキストキューと組み合わせると、平均順位はほぼ1.4に改善され、質問とテキストキューとの間に大きな偏りがあることが示唆される。
【0079】
NExT-QAデータセットでは、BERT(Bidirectional Encoder Representations from Transformer)特徴が質問埋め込みごとに使用され得る。BERT特徴は768D特徴を含み、これは、256D潜在空間に投影されて時空間シーングラフ214のビジュアル特徴と組み合わせられる。各候補回答は質問と連結され、BERT特徴は、回答を選択するためのビジュアル特徴と一致する前に計算される。NExT-QAデータセットでは、BERT特徴は、より優れた視覚言語整合を有し得るCLIP特徴で増強される。AVSD-QAデータセットでは、時空間トランスフォーマ202は、長・短期記憶(LSTM)を使用して質問および回答を128D特徴空間に符号化し得る。LSTMを使用して対話履歴およびキャプション特徴が符号化され、これらは次に、マルチヘッドのアテンションモジュール(たとえばマルチヘッドアテンションモジュール606B)を使用してビジュアル特徴と組み合わせられる。
【0080】
さらに、2つのデータセット(すなわちNExT-QAデータセットおよびAVSD-QAデータセット)に関する定性的結果を図7Bに示す。
【0081】
図7Bは、本開示のいくつかの実施形態に係る、シーン・アウェア映像エンコーダシステム202についてのアブレーション調査700Bを示す。アブレーション調査700Bは、表708、表710、および表712を描いている。表708は、NExT-QAデータセットおよびAVSD-QAデータセットの両方に関する、シーン・アウェア映像エンコーダシステム202の各構成要素、すなわち時空間エンコーダ212の重要度に関するアブレーション調査を示す。表708は、時空間シーングラフ214のサブグラフ、すなわち静的サブグラフ218Aまたは動的サブグラフ218Bがなければ、性能が低下することを示している。さらに、動作特徴214C(たとえばI3D特徴)のような動作特徴がなければ、性能はいずれのデータセットでも著しく低下し、シーン・アウェア映像エンコーダシステム202のパイプラインにおける動作特徴214Cの重要度を強調している。さらに、階層トランスフォーマ504による階層抽象化がなければ、性能はNExT-QAでは53.40→52.49に、AVSD-QAでは5.84→5.97に低下する。
【0082】
さらに、表710は、時空間グラフ214のグラフノードの全セットを推論に使用した場合の、NExT QAデータセットに関するアブレーションを示す。性能は少し改善され、各訓練反復ケースにかかる時間は4倍(単一のRTX6000 GPUでは、1反復あたり~1.5秒から~6秒に)遅くなる。
【0083】
さらに、表712は、静的サブグラフ218Aと動的サブグラフ218Bとのノード数の比較を示す。静的サブグラフ218Aおよび動的サブグラフ218Bのノード数の各々が、両データセットについて、元の時空間シーングラフ214(すなわちプルーニングされていないシーングラフ)におけるグラフノードの総数と比較される。結果に示されるように、シーン・アウェア映像エンコーダ202は、AVSD-QAデータセットではグラフノードのほぼ54%をプルーニングし、NExTQAでは24%をプルーニングする。AVSD-QAの方がプルーニング率が高いのは、おそらく、NExT-QAの場合とは異なり、ほとんどの映像がショットスイッチを含まず、固定カメラを使用している可能性があるからである。
【0084】
図8は、本開示のいくつかの実施形態に係る、映像を符号化する方法800のフロー図を示す。方法800は、シーン・アウェア映像エンコーダシステム202によって実行される。
【0085】
動作802において、方法800は、シーン(たとえばシーン102)の映像(たとえば映像104)の映像フレームのシーケンス(たとえば映像フレーム208)を受信することを含む。
【0086】
動作802において、方法800は、映像フレームのシーケンスを、シーン内の1つまたは複数の静的物体および動的物体を表すノードを含む時空間シーングラフ(たとえば時空間シーングラフ214)に変換することを含む。シーン内の静的物体の各々の外観および位置は、時空間シーングラフの単一のノード(たとえば静的ノード214A)の特性によって表される。シーン内の動的物体の各々は、異なる時間のインスタンスにおける動的物体の各々の外観、位置、および動作を記述する時空間シーングラフの複数のノード(たとえば動的ノード214B)の特性によって表される。
【0087】
動作806において、方法800は、時空間トランスフォーマ(たとえば時空間トランスフォーマ212)を使用して時空間シーングラフのノードを潜在空間に符号化することを含む。時空間トランスフォーマは、シーンの異なる時空間体積に対応する時空間シーングラフの異なるノードの異なる組み合わせを符号化する(図3)。組み合わせの各々において符号化された異なるノードのうちの各ノードは、組み合わせの各々における異なるノードの時空間位置の類似性の関数として決定されるアテンションスコアで重み付けされる。
【0088】
動作808において、方法800は、時空間シーングラフの符号化されたノードを出力することを含む。いくつかの実施形態において、時空間シーングラフの符号化されたノードを有する潜在空間は、時空間トランスフォーマで訓練されたデコーダを用いてシーンの映像のトランスクリプションを復号するために使用され得る。
【0089】
図9は、本開示のいくつかの実施形態に係る、シーン・アウェア映像エンコーダシステム900の概略ブロック図を示す。シーン・アウェア映像エンコーダシステム900は、シーン・アウェア映像エンコーダシステム202に対応する。例示的な実施形態において、シーン・アウェア映像エンコーダシステム900は、入力インターフェイス902と、プロセッサ904と、メモリ906と、ストレージデバイス914と、出力インターフェイス916とを含む。プロセッサ904は、バス920を介して、入力インターフェイス902、メモリ906、ストレージデバイス914、出力インターフェイス916、および/またはシーン・アウェア映像エンコーダシステム900の他の構成要素に接続され得る。
【0090】
プロセッサ904は、入力インターフェイス902を介して入力データ926を受信するように構成される。入力データ926は、映像の映像フレームのシーケンス(たとえば映像104の映像フレーム208)、および/または映像についてのクエリ(たとえばクエリ602B)を含み得る。映像は、ネットワークインターフェイスコントローラ(NIC)922を使用してネットワーク924を介して受信され得るライブストリーム映像、オフライン映像ストリーム、または録画された映像に対応し得る。オフライン映像ストリームは、ストレージデバイス914に格納されてもよい。
【0091】
プロセッサ904は、映像フレームのシーケンスを時空間シーングラフ(たとえば時空間シーングラフ214)に変換するように構成される。時空間シーングラフは、シーン内の1つまたは複数の静的物体および動的物体を表すノードを含む。シーン内の静的物体の各々は、時空間シーングラフの単一のノードの特性によって表される外観および位置を有し、シーン内の動的物体の各々は、時空間シーングラフの複数のノードの特性によって表される。複数のノードの特性は、異なる時間のインスタンスにおける動的物体の各々の外観、位置、および動作を記述する。
【0092】
また、プロセッサ904は、時空間トランスフォーマ908を使用して時空間シーングラフのノードを潜在空間に符号化するように構成される。時空間トランスフォーマ908は、時空間トランスフォーマ212の一例である。いくつかの例示的な実施形態において、潜在空間の符号化された時空間トランスフォーマ908は、メモリ906に格納されてもよい。さらに、時空間トランスフォーマ908は、シーンの異なる時空間体積に対応する時空間シーングラフの異なるノードの異なる組み合わせを符号化する。組み合わせの各々における異なるノードのうちの各ノードは、符号化され、組み合わせの各々における異なるノードの時空間位置の類似性の関数として決定されるアテンションスコアで重み付けされる。
【0093】
いくつかの実施形態において、時空間シーングラフ214の符号化されたノードは、時空間トランスフォーマ908で訓練されたデコーダを用いて潜在空間からシーンの映像のトランスクリプションを復号するために使用され得る。そのため、時空間シーングラフ214の符号化されたノードは、出力インターフェイス916を介して出力デバイス918に出力される。出力デバイス918は、コンピュータ、ラップトップ、タブレット、ファブレット、または任意のディスプレイデバイスを含むが、これらに限定されるものではない。いくつかの実現例では、出力デバイス918は、応答を提供するためのアプリケーションインターフェイスを含み得る。
例示的な実施形態
【0094】
図10は、本開示のいくつかの実施形態に係る、シーン・アウェア映像エンコーダシステム900の例示的なユースケース1000を示す。説明のためのシナリオ例では、シーン1002の映像がカメラ1004によって取り込まれ得る。場合によっては、カメラ1004は、予め規定された固定位置に設置されてシーン1002を取り込んでもよい。シーン1002は、動き回る人、テーブルの上のカップのような、静的および/または動的である異なる物体を含み得る。シーン1002は、職場、家、店舗のような公共の場または私的な場の屋内の場所に対応し得る。場合によっては、シーン1002は、道路、公園のような屋外の場所に対応し得る。取り込まれたシーン1002の映像は、ネットワーク924のようなネットワークを介してシーン・アウェア映像エンコーダシステム900に送信され得る。
【0095】
シーン・アウェア映像エンコーダシステム900は、映像を処理し、時空間シーングラフを出力する。時空間シーングラフは潜在空間に符号化される。潜在空間の符号化された時空間シーングラフは、シーン1002の映像のトランスクリプションを復号するために使用される。たとえば、シーン1002の映像は、安全およびセキュリティユニットのために監視されている場合がある。不審な事象または関心のある事象がシーン1002に観察されると、符号化された時空間シーングラフが映像トランスクリプションのために使用され得る。
【0096】
同様に、シーン・アウェア映像エンコーダシステム900は、車両ナビゲーションアプリケーションに使用され得る。説明のためのシナリオ例では、道路シーン1006を取り込むためにカメラ1008が車両(たとえば、マニュアル運転車両、完全自動車両または半自動車両)に搭載され得る。カメラ1008は、道路シーン1006の映像を取り込むために作動中であってもよい。取り込まれた道路シーン1006の映像は、ネットワーク924のようなネットワークを介してシーン・アウェア映像エンコーダシステム900に送信され得る。場合によっては、シーン・アウェア映像エンコーダシステム900はカメラ1008に埋め込まれてもよい。シーン・アウェア映像エンコーダシステム900は映像を処理し、道路シーン1006の時空間シーングラフを出力する。時空間シーングラフは潜在空間に符号化され、これは、道路シーン1006の映像のトランスクリプションを復号するために使用され得る。たとえば、映像のトランスクリプションは、ナビゲーション指示を生成するために使用され得る。ナビゲーション指示は、カメラ1008のダッシュボードを介して車両の運転者(複数の運転者)に表示され得る。
【0097】
さらに、VQAタスクのためのシーン1002またはシーン1006の映像のトランスクリプションの一例を、次に図11で説明する。
【0098】
図11は、本開示のいくつかの実施形態に係る、シーン・アウェア映像エンコーダシステム900を使用してVQAタスク1100を実行するための例示的なシナリオである。説明のためのシナリオでは、ユーザが音声またはテキストフォーマットを介してクエリ1102を提供する。クエリ1102は、「なぜ赤い服の男性は映像の真ん中の少年を見ているのか?」を含み得る。シーン・アウェアエンコーダシステム900は、候補回答のセット1104を検索する。候補回答のセット1104は、「A1:演奏法を学んでいる」、「A2:彼を待っている」、「A3:少年を迎えに来た」、「A4:彼をビデオ撮影するため」、「A5:彼がドラムを演奏するのを見ている」を含む。候補回答1106は、「Agt:彼がドラムを演奏するのを見ている」のようなグランドトゥルース回答1108を含む。したがって、グランドトゥルース回答1108に一致する回答「A5:彼がドラムを演奏するのを見ている」が、クエリ1104に対する出力として返される。クエリ1104に対する回答は、最高信頼度スコアまたは最高確率アプローチに基づいて取り出されてもよい。
【0099】
いくつかの実施形態は、図4の時空間トランスフォーマを異常検出アプローチに使用することができる、という認識に基づいている。なぜなら、時空間トランスフォーマは、他のトランスフォーマとは異なるアテンションメカニズムの原理を使用するからである。具体的には、トランスフォーマは、キー、クエリ、および値を抽出するために同じメカニズムを使用するが、いくつかの実施形態の時空間トランスフォーマは、キーおよびクエリを生成するために使用する抽出関数と値を生成するために使用する抽出関数とが異なる。たとえば、時空間トランスフォーマは、キーおよびクエリを生成するために距離関数を使用し、値を生成するために特徴抽出関数を使用する。このように、キーおよびクエリは、トランスフォーマの適用の柔軟性を高める値のメタデータを表すことができる。
【0100】
図12は、一実施形態に係る、カーネル化されたセルフアテンションに対して異なる抽出関数を使用する方法1200の概略図を示す。本実施形態は、時間とともに状態が変化する動的システムを制御するための、カーネル化されたセルフアテンション1260を用いる人工知能(AI)システムを開示し、AIシステムは、少なくとも1つのプロセッサと、命令が格納されたメモリとを含み、命令は、少なくとも1つのプロセッサによって実行されると、AIシステムに、異なる時間のインスタンスにおけるシステムの状態を表す状態インスタンスのシーケンスの測定値を示す時系列データ1205を収集することと、第1の抽出関数1210を使用して、時系列データから状態インスタンスの各々の値を抽出することと、第2の抽出関数1220を使用して、時系列データから状態インスタンスの各々のキーおよびクエリを抽出することとを行わせ、状態インスタンスの値は状態インスタンスのキーおよびクエリとは異なり、AIシステムにさらに、セルフアテンションメカニズムを使用するカーネル化されたセルフアテンションモジュール1260を実行することを行わせ、セルフアテンションメカニズムは、状態インスタンスのクエリ1230と状態インスタンスのキー1240との類似性に基づいて決定された重みで重み付けされた状態インスタンスの値を使用して、状態インスタンスの各々の値1250を修正し、AIシステムにさらに、状態インスタンスの修正された値1270に基づいて制御アクションを実行することを行わせる。
【0101】
図12で説明した実施形態の可能なセットアップは、1260で説明したように、正常シーケンスからの特徴を使用して308および312における類似性カーネルを定義することである。そのような方法は、クエリ1230となる初期特徴1210をシーケンスの一部から取り出す。キー1240は、シーケンス1220の別の部分から生成された特徴である。値1250は、ニューラルネットワークモデル1290によって生成されたキーの特徴である。カーネル化されたセルフアテンション1260は、クエリとキーとの間のカーネル類似性を計算し、値1250の重み付けに使用されるスコアを生成する。したがって、このカーネル線形結合のセットは、類似性カーネルによって取り込まれた正常シーケンスからの特徴の線形結合であるすべての特徴1270のセットを含む。特徴の異常シーケンスが与えられた場合、1200のように異常特徴について計算されたカーネル類似性を使用して、異常特徴の線形結合を計算することができる。異常を検出するために、正常セット内の特徴の線形結合を有するセットと異常セット内の特徴の線形結合を有するセットとの間の最近傍距離を計算することができる。この距離が閾値よりも大きければ、セットを異常として分類することができる。ニューラルネットワーク1290は、値の線形結合が常に潜在空間の領域で有界であるように訓練される。このアプローチのいくつかの実施形態はラベル付きデータを使用することができ、当該データは正常または異常としてラベル付けされる。この場合、ニューラルネットワークは、値の線形結合がデータラベルを保存するように訓練される。
【0102】
上記の説明は、具体例としての実施形態のみを提供し、開示の範囲、適用可能性、または構成を限定することを意図していない。むしろ、具体例としての実施形態の以下の説明は、具体例としての1つ以上の実施形態の実現を可能にする説明を当業者に提供するであろう。添付の請求項に記載されている開示された主題の精神および範囲から逸脱することなく要素の機能および構成に対してなされ得る各種変更が意図されている。
【0103】
具体的な詳細事項は、以下の説明において、実施形態の十分な理解を得るために与えられている。しかしながら、これらの具体的な詳細事項がなくても実施形態を実行できることを、当業者は理解できる。たとえば、開示された主題におけるシステム、プロセス、および他の要素は、実施形態を不必要な詳細で不明瞭にしないために、ブロック図の形態で構成要素として示される場合もある。他の例では、実施形態を不明瞭にしないよう、周知のプロセス、構造、および技術は、不必要な詳細事項を伴わずに示されることがある。さらに、各種図面における同様の参照番号および名称は同様の要素を示す。
【0104】
また、個々の実施形態は、フローチャート、フロー図、データフロー図、構造図、またはブロック図として示されるプロセスとして説明される場合がある。フローチャートは動作を逐次プロセスとして説明する場合があるが、動作の多くは並列にまたは同時に実行することができる。加えて、動作の順序は並べ替えてもよい。プロセスは、その動作が完了したときに終了されてもよいが、論じられていないかまたは図に含まれていない追加のステップを有する場合がある。さらに、具体的に記載されている何らかのプロセスにおけるすべての動作がすべての実施形態に起こり得る訳ではない。プロセスは、方法、関数、手順、サブルーチン、サブプログラムなどに対応し得る。プロセスが関数に対応する場合、関数の終了は、呼び出し関数または主関数に関数を戻すことに対応し得る。
【0105】
さらに、開示されている主題の実施形態は、少なくとも一部が、手作業または自動のいずれかで実現されてもよい。手作業または自動の実現は、マシン、ハードウェア、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語、またはその任意の組み合わせを通じて、実行されてもよく、または、少なくとも支援されてもよい。ソフトウェア、ファームウェア、ミドルウェアまたはマイクロコードで実現される場合、必要なタスクを実行するためのプログラムコードまたはコードセグメントは、マシン読取可能媒体に格納されてもよい。プロセッサ(複数のプロセッサ)が必要なタスクを実行してもよい。
【0106】
本明細書で概要を述べた各種方法またはプロセスは、さまざまなオペレーティングシステムまたはプラットフォームのうちのいずれか1つを採用した1つ以上のプロセッサ上で実行可能なソフトウェアとして符号化されてもよい。加えて、そのようなソフトウェアは、複数の適切なプログラミング言語および/またはプログラミングもしくはスクリプトツールのうちのいずれかを用いて記述されてもよく、また、フレームワークもしくは仮想マシン上で実行される、実行可能な機械言語コードまたは中間コードとしてコンパイルされてもよい。典型的に、プログラムモジュールの機能は、各種実施形態において所望される通りに組み合わせても分散させてもよい。
【0107】
本発明の実施形態は方法として実施されてもよく、その一例が提供されている。この方法の一部として実行される動作の順序は任意の適切なやり方で決定されてもよい。したがって、実施形態は、例示されている順序と異なる順序で動作が実行されるように構成されてもよく、これは、いくつかの動作を、例示の実施形態において一連の動作として示されているが、同時に実行することを含み得る。さらに、請求項において請求項の要素を修飾するための「第1」、「第2」等の順序を示す用語の使用は、それ自体が、請求項のある要素の、別の要素に対する優先、先行、または順序を、またはある方法の行為が実行される時間的順序を、暗示するものではなく、クレームの要素を区別するために、特定の名称を有する請求項のある要素を(順序を示す用語の使用を別にして)同一の名称を有する別の要素と区別するためのラベルとして使用されているに過ぎない。
【0108】
本開示をいくつかの好ましい実施形態を参照して説明してきたが、その他さまざまな適合化および修正を本開示の精神および範囲の中で実施できることが理解されねばならない。したがって、本開示の真の精神および範囲に含まれるそのような変形および修正形をすべてカバーすることが添付の請求項の局面である。
図1
図2A
図2B
図3
図4
図5
図6A
図6B
図6C
図7A
図7B
図8
図9
図10
図11
図12
【国際調査報告】