(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-11-15
(54)【発明の名称】フロー非依存ニューラルビデオ圧縮
(51)【国際特許分類】
H04N 19/503 20140101AFI20241108BHJP
【FI】
H04N19/503
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2024529357
(86)(22)【出願日】2022-10-28
(85)【翻訳文提出日】2024-05-16
(86)【国際出願番号】 US2022048284
(87)【国際公開番号】W WO2023101779
(87)【国際公開日】2023-06-08
(32)【優先日】2021-11-30
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2022-10-27
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】595020643
【氏名又は名称】クゥアルコム・インコーポレイテッド
【氏名又は名称原語表記】QUALCOMM INCORPORATED
(74)【代理人】
【識別番号】110003708
【氏名又は名称】弁理士法人鈴榮特許綜合事務所
(72)【発明者】
【氏名】ラー、ホアン・コン・ミン
(72)【発明者】
【氏名】プルレザ、レザ
(72)【発明者】
【氏名】ヤン、ヤン
(72)【発明者】
【氏名】ジュー、インハオ
(72)【発明者】
【氏名】サイド、アミール
(72)【発明者】
【氏名】コーエン、タコ・セバスティアーン
【テーマコード(参考)】
5C159
【Fターム(参考)】
5C159MA05
5C159ME11
5C159UA02
5C159UA05
(57)【要約】
人工ニューラルネットワーク(ANN)を使用するビデオ圧縮のためのプロセッサ実施方法は、ANNを介してビデオを受信することを含む。ANNはビデオの現在のフレームの特徴の第1のセット及びビデオの参照フレームの特徴の第2のセットを抽出する。ANNは現在のフレームの特徴の第1のセットと参照フレームの特徴の第2のセットとの間の相関特徴の推定を決定する。相関特徴の推定は符号化され、受信器へ伝送される。
【特許請求の範囲】
【請求項1】
人工ニューラルネットワーク(ANN)を使用するビデオ圧縮のためのプロセッサ実施方法であって、
前記ANNによって、ビデオを受信することと、
前記ANNによって、前記ビデオの現在のフレームの特徴の第1のセット及び前記ビデオの参照フレームの特徴の第2のセットを抽出することと、
前記ANNによって、前記現在のフレームの特徴の前記第1のセットと前記参照フレームの特徴の前記第2のセットとの間の相関特徴の推定を決定することと、
相関特徴の前記推定を受信器へ伝送することと、
を備える、プロセッサ実施方法。
【請求項2】
前記ANNの完全畳み込み演算子を介して相関特徴の前記推定を決定することを更に備える、請求項1に記載のプロセッサ実施方法。
【請求項3】
前記参照フレームが前記ビデオの以前のフレームの復元を備える、請求項1に記載のプロセッサ実施方法。
【請求項4】
前記参照フレームが前記ビデオの複数の先行フレームの復元に基づいて予測される、請求項1に記載のプロセッサ実施方法。
【請求項5】
人工ニューラルネットワーク(ANN)を使用するビデオ圧縮のためのプロセッサ実施方法であって、
前記ANNによって、ビデオの参照フレームを受信することと、
前記ANNによって、前記ビデオの現在のフレームと前記ビデオの前記参照フレームとの間の相関特徴の推定を受信することと、
前記ANNによって、前記ビデオの前記参照フレームの特徴の第1のセットを抽出することと、
前記ANNによって、相関特徴の前記推定を復号することと、
前記ANNによって、相関特徴の前記復号された推定及び前記ビデオの前記参照フレームの特徴の前記第1のセットに基づいて前記ビデオの前記現在のフレームの予測を生成することと、
を備える、プロセッサ実施方法。
【請求項6】
前記ビデオの前記現在のフレームと前記ビデオの前記現在のフレームの前記予測との差に基づいて残差を計算することと、
前記現在のフレームの前記予測及び前記残差に基づいて前記ビデオの前記現在のフレームの復元を生成することと、
を更に備える、請求項5に記載のプロセッサ実施方法。
【請求項7】
前記参照フレームが前記ビデオの複数の先行フレームの復元に基づいて予測される、請求項5に記載のプロセッサ実施方法。
【請求項8】
人工ニューラルネットワーク(ANN)を使用するビデオ圧縮のためのプロセッサ実施方法であって、
前記ANNによって、ビデオの複数のフレームの履歴を受信することと、
前記ANNによって、前記ビデオの複数のフレームの前記履歴から参照フレームを生成することと、
前記ANNによって、前記参照フレーム及び前記ビデオの現在のフレームに基づいて前記ビデオの前記現在のフレームの予測を生成することと、
前記ANNによって、前記ビデオの前記現在のフレームの前記予測、及び前記ビデオの前記現在のフレームと前記ビデオの前記現在のフレームの前記予測との差に基づいて計算された残差に基づいて前記現在のフレームの復元を生成することと、
を備える、プロセッサ実施方法。
【請求項9】
前記履歴が、複数の以前に復号されたフレームを備える、請求項8に記載のプロセッサ実施方法。
【請求項10】
前記ビデオの前記現在のフレームと前記ビデオの前記現在のフレームの前記予測との前記差を符号化することと、前記符号化を前記現在のフレームの前記予測に加算することとを更に備える、請求項8に記載のプロセッサ実施方法。
【請求項11】
人工ニューラルネットワーク(ANN)を使用するビデオ圧縮のための装置であって、
メモリと、
前記メモリに結合された少なくとも1つのプロセッサと、を備え、前記少なくとも1つのプロセッサが、
前記ANNによって、ビデオを受信し、
前記ANNによって、前記ビデオの現在のフレームの特徴の第1のセット及び前記ビデオの参照フレームの特徴の第2のセットを抽出し、
前記ANNによって、前記現在のフレームの特徴の前記第1のセットと前記参照フレームの特徴の前記第2のセットとの間の相関特徴の推定を決定し、
相関特徴の前記推定を受信器へ伝送するように構成されている、装置。
【請求項12】
前記少なくとも1つのプロセッサが、
前記ANNの完全畳み込み演算子を介して相関特徴の前記推定を決定するように更に構成されている、請求項11に記載の装置。
【請求項13】
前記参照フレームが前記ビデオの以前のフレームの復元を備える、請求項11に記載の装置。
【請求項14】
前記少なくとも1つのプロセッサが、前記ビデオの複数の先行フレームの復元に基づいて前記参照フレームを予測するように更に構成されている、請求項11に記載の装置。
【請求項15】
人工ニューラルネットワーク(ANN)を使用するビデオ圧縮のための装置であって、
メモリと、
前記メモリに結合された少なくとも1つのプロセッサと、を備え、前記少なくとも1つのプロセッサが、
ビデオの参照フレームを受信し、
前記ビデオの現在のフレームと前記ビデオの前記参照フレームとの間の相関特徴の推定を受信し、
前記ビデオの前記参照フレームの特徴の第1のセットを抽出し、
相関特徴の前記推定を復号し、
相関特徴の前記復号された推定及び前記ビデオの前記参照フレームの特徴の前記第1のセットに基づいて前記ビデオの前記現在のフレームの予測を生成するように構成されている、装置。
【請求項16】
前記少なくとも1つのプロセッサが、
前記ビデオの前記現在のフレームと前記ビデオの前記現在のフレームの前記予測との差に基づいて残差を計算し、
前記現在のフレームの前記予測及び前記残差に基づいて前記ビデオの前記現在のフレームの復元を生成するように更に構成されている、請求項15に記載の装置。
【請求項17】
前記少なくとも1つのプロセッサが、前記ビデオの複数の先行フレームの復元に基づいて前記参照フレームを予測するように更に構成されている、請求項15に記載の装置。
【請求項18】
人工ニューラルネットワーク(ANN)を使用するビデオ圧縮のための装置であって、
メモリと、
前記メモリに結合された少なくとも1つのプロセッサと、を備え、前記少なくとも1つのプロセッサが、
前記ANNによって、ビデオの複数のフレームの履歴を受信し、
前記ANNによって、前記ビデオの複数のフレームの前記履歴から参照フレームを生成し、
前記ANNによって、前記参照フレーム及び前記ビデオの現在のフレームに基づいて前記ビデオの前記現在のフレームの予測を生成し、
前記ANNによって、前記ビデオの前記現在のフレームの前記予測、及び前記ビデオの前記現在のフレームと前記ビデオの前記現在のフレームの前記予測との差に基づいて計算された残差に基づいて、前記現在のフレームの復元を生成するように構成されている、装置。
【請求項19】
前記履歴が、複数の以前に復号されたフレームを備える、請求項18に記載の装置。
【請求項20】
前記少なくとも1つのプロセッサが、前記ビデオの前記現在のフレームと前記ビデオの前記現在のフレームの前記予測との前記差を符号化し、前記符号化を前記現在のフレームの前記予測に加算するように更に構成されている、請求項18に記載の装置。
【発明の詳細な説明】
【関連出願の相互参照】
【0001】
[0001] 本出願は、2021年11月30日に出願された「FLOW-AGNOSTIC NEURAL VIDEO COMPRESSION」と題する米国仮特許出願第63/284,569号の利益を主張する、2022年10月27日に出願された「FLOW-AGNOSTIC NEURAL VIDEO COMPRESSION」と題する米国特許出願第17/975,471号の優先権を主張し、それらの開示の全体が参照により本明細書に明確に組み込まれる。
【技術分野】
【0002】
[0002] 本開示の態様は、一般にニューラルネットワークに関し、より詳細には、人工ニューラルネットワークを使用するビデオ圧縮に関する。
【背景技術】
【0003】
[0003] 人工ニューラルネットワークは、人工ニューロン(例えば、ニューロンモデル)の相互接続されたグループを備えてもよい。人工ニューラルネットワークは、計算デバイスであってもよく、又は計算デバイスによって実行されることになる方法として表されてもよい。畳み込みニューラルネットワークは、フィードフォワード人工ニューラルネットワークの1つのタイプである。畳み込みニューラルネットワークは、各々が受容野を有し、入力空間をまとめてタイリングする、ニューロンの集合を含み得る。深層畳み込みニューラルネットワーク(DCNs)などの畳み込みニューラルネットワーク(CNNs)は、多数の適用例を有する。特に、これらのニューラルネットワークアーキテクチャは、画像認識、パターン認識、音声認識、自律運転、及び他の分類タスクなどの、様々な技術において使用される。
【0004】
[0004] ニューラルネットワークは、ビデオ圧縮及び画像圧縮などの、マルチメディア圧縮においてうまく適用される。画像圧縮は、画像及びビデオなどの、マルチメディアを通信するために有益である。しかし、ユーザは、異なる計算能力を有する異なるコンピュータアーキテクチャを有する場合があり、異なるネットワーク条件下でこのようなデバイスを動作させている場合がある。従来のニューラルビデオ圧縮方法は動き補償のためにフローベースのワーピングを利用する。しかし、フローベースのワーピングは、限られたリソースを有し得るモバイルデバイスにとっては、それほど効率的でない場合がある。
【発明の概要】
【0005】
[0005] 本開示は、独立請求項それぞれに記載される。本開示のいくつかの態様は、従属請求項に記載される。
【0006】
[0006] 本開示の一態様では、人工ニューラルネットワーク(artificial neural network、ANN)を使用するビデオ圧縮のためのプロセッサ実施方法が提供される。本方法は、ANNによってビデオを受信することを含む。本方法はまた、ANNによって、ビデオの現在のフレームの特徴の第1のセット及びビデオの参照フレームの特徴の第2のセットを抽出することを含む。加えて、本方法は、ANNによって、現在のフレームの特徴の第1のセットと参照フレームの特徴の第2のセットとの間の相関特徴の推定を決定することを含む。更に、本方法は、相関特徴の推定を受信器へ伝送することを含む。
【0007】
[0007] 本開示の一態様では、人工ニューラルネットワーク(ANN)を使用するビデオ圧縮のための装置が提供される。装置は、メモリと、メモリに結合された1つ又は複数のプロセッサとを含む。プロセッサ(単数又は複数)は、ANNによってビデオを受信するように構成されている。プロセッサ(単数又は複数)はまた、ANNによって、ビデオの現在のフレームの特徴の第1のセット及びビデオの参照フレームの特徴の第2のセットを抽出するように構成されている。加えて、プロセッサ(単数又は複数)は、ANNによって、現在のフレームの特徴の第1のセットと参照フレームの特徴の第2のセットとの間の相関特徴の推定を決定するように構成されている。更に、プロセッサ(単数又は複数)は、相関特徴の推定を受信器へ伝送するように構成されている。
【0008】
[0008] 本開示の一態様では、人工ニューラルネットワーク(ANN)を使用するビデオ圧縮のためのプロセッサ実施方法が提供される。本方法は、ANNによって、ビデオの参照フレーム、及びビデオの現在のフレームとビデオの参照フレームとの間の相関特徴の推定を受信することを含む。本方法はまた、ANNによって、ビデオの参照フレームの特徴の第1のセットを抽出することを含む。加えて、本方法は、ANNによって、相関特徴の推定を復号することを含む。更に、本方法は、ANNによって、相関特徴の復号された推定及びビデオの参照フレームの特徴の第1のセットに基づいてビデオの現在のフレームの予測を生成することを含む。
【0009】
[0009] 本開示の一態様では、人工ニューラルネットワーク(ANN)を使用するビデオ圧縮のための装置が提供される。装置は、メモリと、メモリに結合された1つ又は複数のプロセッサとを含む。プロセッサ(単数又は複数)は、ANNによって、ビデオの参照フレーム、及びビデオの現在のフレームとビデオの参照フレームとの間の相関特徴の推定を受信するように構成されている。プロセッサ(単数又は複数)はまた、ANNによって、ビデオの参照フレームの特徴の第1のセットを抽出するように構成されている。加えて、プロセッサ(単数又は複数)は、ANNによって、相関特徴の推定を復号するように構成されている。更に、プロセッサ(単数又は複数)は、ANNによって、相関特徴の復号された推定及びビデオの参照フレームの特徴の第1のセットに基づいてビデオの現在のフレームの予測を生成するように構成されている。
【0010】
[0010] 本開示の追加の特徴及び利点が以下で説明される。本開示が、本開示の同じ目的を遂行するための他の構造を修正又は設計するための基礎として容易に利用されてもよいことを、当業者は理解されたい。そのような等価な構成が、添付の特許請求の範囲に記載されている本開示の教示から逸脱しないことも、当業者は認識されたい。その編成及び動作方法の両方に関して本開示の特性であると考えられる新規の特徴は、更なる目的及び利点と共に、添付の図に関して検討されると以下の説明からより良く理解されよう。しかしながら、図の各々は例示及び説明のために提供されるにすぎず、本開示の範囲を定めるものではないことを明確に理解されたい。
【図面の簡単な説明】
【0011】
[0011] 本開示の特徴、性質、及び利点は、同様の参照符号が全体にわたって対応して識別する図面と併せて読まれると、以下に記載される詳細な説明からより明らかになろう。
【
図1】[0012] 本開示のいくつかの態様による、汎用プロセッサを含むシステムオンチップ(SOC)を使用するニューラルネットワークの例示的な実装形態を示す図である。
【
図2A】[0013] 本開示の態様によるニューラルネットワークを示す図である。
【
図2B】本開示の態様によるニューラルネットワークを示す図である。
【
図2C】本開示の態様によるニューラルネットワークを示す図である。
【
図2D】[0014] 本開示の態様による、例示的な深層畳み込みネットワーク(DCN)を示す図である。
【
図3】[0015] 本開示の態様による、例示的な深層畳み込みネットワーク(DCN)を示すブロック図である。
【
図4】[0016] 本開示の態様による、人工知能(AI)機能をモジュール化し得る例示的なソフトウェアアーキテクチャを示すブロック図である。
【
図5】[0017] 本開示の態様による、フロー非依存ビデオ圧縮のための例示的なアーキテクチャを示すブロック図である。
【
図6】本開示の態様による、フロー非依存ビデオ圧縮のための例示的なアーキテクチャを示すブロック図である。
【
図7】本開示の態様による、フロー非依存ビデオ圧縮のための例示的なアーキテクチャを示すブロック図である。
【
図8】[0018] 本開示の態様による、人工ニューラルネットワークを使用するビデオ圧縮のための例示的なプロセスを示すフロー図である。
【
図9】本開示の態様による、人工ニューラルネットワークを使用するビデオ圧縮のための例示的なプロセスを示すフロー図である。
【
図10】本開示の態様による、人工ニューラルネットワークを使用するビデオ圧縮のための例示的なプロセスを示すフロー図である。
【発明を実施するための形態】
【0012】
[0019] 添付の図面に関して以下に記載される発明を実施するための形態は、様々な構成を説明するものであり、説明される概念が実施され得る構成のみを表すものではない。「発明を実施するための形態」は、様々な構想の完全な理解をもたらすことを目的とする、具体的な詳細を含む。しかしながら、当業者には、これらの具体的な詳細を伴わずとも、これらの構想を実践することができる点が明らかとなるであろう。場合によっては、そのような構想を不明瞭にすることを回避するために、周知の構造及び構成要素は、ブロック図の形式で示されている。
【0013】
[0020] 教示に基づいて、本開示の範囲は、本開示の任意の他の態様とは無関係に実装されるか、又は本開示の任意の他の態様と組み合わせて実装されるかに関わらず、本開示の任意の態様を包含することを意図することを、当業者は理解されたい。例えば、記載された任意の数の態様を使用して、装置が実装されてもよく、又は方法が実践されてもよい。加えて、本開示の範囲は、記載された本開示の様々な態様に加えて、又はそれらの態様以外の、他の構造、機能、又は構造及び機能を使用して実践される、そのような装置又は方法を包含するものとする。開示される本開示の任意の態様は、請求項の1つ又は複数の要素によって具現化される場合があることを理解されたい。
【0014】
[0021] 「例示的」という単語は、「例、事例、又は例示としての役割を果たす」を意味するために使用される。「例示的」として説明されるいかなる態様も、必ずしも他の態様よりも好ましい又は有利であると解釈されるべきであるとは限らない。
【0015】
[0022] 特定の態様が説明されるが、これらの態様の多くの変形及び置換は本開示の範囲内に入る。好ましい態様のいくつかの利益及び利点が述べられるが、本開示の範囲は、特定の利益、用途、又は目的に限定されるものではない。むしろ、本開示の態様は、異なる技術、システム構成、ネットワーク、及びプロトコルに広く適用可能であるものとし、そのうちのいくつかが例として図及び好ましい態様の以下の説明において示される。詳細な説明及び図面は、限定的ではなく、本開示の例示にすぎず、本開示の範囲は、添付の特許請求の範囲及びその等価物によって定義される。
【0016】
[0023] 説明されたように、ニューラルネットワークは、ビデオ圧縮などのマルチメディア圧縮においてうまく適用される。従来のニューラルビデオ圧縮方法は動き補償のためにフローベースのワーピングを利用する。しかし、フローベースのワーピングは、限られたリソースを有し得るモバイルデバイスにとっては、ハードウェアフレンドリー又は効率的でない場合がある。
【0017】
[0024] これら及び他の課題に対処するために、本開示の態様はフロー非依存ニューラルビデオ圧縮に関する。フローベースのワーピングを使用する代わりに、ワーピング演算子は完全畳み込みニューラルネットワークと置き換えられ得る。いくつかの態様では、完全畳み込みニューラルネットワークは1つ又は複数のオートエンコーダを用いて構成され得る。オートエンコーダはラベルなしデータの符号化を学習してもよく、入力をコードにマップするエンコーダ、及びコードを入力の復元にマップするデコーダを含む。
【0018】
[0025]
図1は、フロー非依存ビデオ圧縮を提供するよう人工ニューラルネットワーク(例えば、ニューラルエンドツーエンドネットワーク)を動作させるように構成された中央処理装置(CPU)102又はマルチコアCPUを含み得る、システムオンチップ(SOC)100の例示的な実装形態を示す。変数(例えば、ニューラル信号及びシナプス重み)、計算デバイス(例えば、重みを有するニューラルネットワーク)に関連付けられたシステムパラメータ、遅延、周波数ビン情報、及びタスク情報は、ニューラル処理ユニット(NPU)108に関連付けられたメモリブロックに、CPU102に関連付けられたメモリブロックに、グラフィックス処理ユニット(GPU)104に関連付けられたメモリブロックに、デジタル信号プロセッサ(DSP)106に関連付けられたメモリブロックに、メモリブロック118に記憶されてもよく、又は複数のブロックにわたって分散されてもよい。CPU102において実行される命令は、CPU102に関連付けられたプログラムメモリからロードされてもよく、又はメモリブロック118からロードされてもよい。
【0019】
[0026] SOC100はまた、GPU104、DSP106、第5世代(5G)接続性、第4世代ロングタームエボリューション(4G LTE(登録商標))接続性、Wi-Fi接続性、USB接続性、Bluetooth(登録商標)接続性などを含んでもよい接続性ブロック110、並びに、例えば、ジェスチャを検出及び認識する場合があるマルチメディアプロセッサ112などの、特定の機能に適合された追加の処理ブロックを含んでもよい。一実装形態では、NPU108は、CPU102、DSP106、及び/又はGPU104において実装される。SOC100はまた、センサープロセッサ114、画像信号プロセッサ(ISPs)116、及び/又は全地球測位システムを含んでもよいナビゲーションモジュール120を含んでもよい。
【0020】
[0027] SOC100は、ARM命令セットに基づいてもよい。本開示の態様では、汎用プロセッサ102にロードされる命令は、人工ニューラルネットワーク(ANN)によってビデオを受信するためのコードを含み得る。汎用プロセッサ102はまた、ANNを介して、ビデオの現在のフレームの特徴の第1のセット及びビデオの参照フレームの特徴の第2のセットを抽出するためのコードを含み得る。加えて、汎用プロセッサ102は、ANNによって、現在のフレームの特徴の第1のセットと参照フレームの特徴の第2のセットとの間の相関特徴の推定を決定するためのコードを含み得る。汎用プロセッサ102は、相関特徴の推定を受信器へ伝送するためのコードを更に含み得る。
【0021】
[0028] 本開示の他の態様では、汎用プロセッサ102にロードされる命令は、人工ニューラルネットワーク(ANN)によって、ビデオの参照フレーム、及びビデオの現在のフレームとビデオの参照フレームとの間の相関特徴の推定を受信するためのコードを含み得る。汎用プロセッサ102はまた、ANNによって、ビデオの参照フレームの特徴の第1のセットを抽出するためのコードを含み得る。加えて、汎用プロセッサ102は、ANNによって、相関特徴の推定を復号するためのコードを含み得る。汎用プロセッサ102は、ANNによって、相関特徴の復号された推定及びビデオの参照フレームの特徴の第1のセットに基づいてビデオの現在のフレームの予測を生成するためのコードを更に含み得る。
【0022】
[0029] 本開示の更なる態様では、汎用プロセッサ102にロードされる命令は、ANNによって、ビデオの複数のフレームの履歴を受信するためのコードを含み得る。汎用プロセッサ102はまた、ANNによって、複数のフレームの履歴から参照フレームを生成するためのコードを含み得る。加えて、汎用プロセッサ102は、ANNによって、参照フレーム及び現在のフレームに基づいてビデオの現在のフレームの予測を生成するためのコードを含み得る。汎用プロセッサ102は、ビデオの現在のフレームの予測、及びビデオの現在のフレームとビデオの現在のフレームの予測との差に基づいて計算された残差に基づいて現在のフレームの復元を生成するためのコードを更に含み得る。
【0023】
[0030] 深層学習アーキテクチャは、各層内の連続的により高い抽象レベルにおいて入力を表現することを学習し、それによって入力データの有用な特徴表現を構築することによって、オブジェクト認識タスクを実行してもよい。このようにして、深層学習は、従来の機械学習の主要なボトルネックに対処する。深層学習の出現より前に、オブジェクト認識問題に対する機械学習手法は、場合によっては、浅い分類器と組み合わせて、人間が設計した特徴に大きく依拠してきた可能性がある。浅い分類器は、例えば、入力がどのクラスに属するかを予測するために特徴ベクトル成分の加重和を閾値と比較することができる、2クラス線形分類器であってもよい。人間が設計した特徴は、領域専門知識を有する技術者によって特定の問題領域に適合されたテンプレート又はカーネルであってもよい。対照的に、深層学習アーキテクチャは、人間の技術者が設計することができるものと同様である特徴を表現することを、しかし訓練を通して、学習してもよい。更に、深層ネットワークは、人間が考えていなかった可能性がある新しいタイプの特徴を表現及び認識することを学習してもよい。
【0024】
[0031] 深層学習アーキテクチャは、特徴の階層を学習してもよい。視覚データが提示された場合、例えば、第1の層は、入力ストリームにおけるエッジなどの比較的単純な特徴を認識することを学習してもよい。別の実施例では、聴覚データが提示される場合、第1の層は、特定の周波数におけるスペクトル電力を認識することを学習することができる。第1の層の出力を入力として取る第2の層は、視覚データの場合は単純な形状などの特徴の組み合わせ、又は聴覚データの場合は音の組み合わせを認識することを学習してもよい。例えば、上位層は、視覚データにおける複雑な形状又は聴覚データにおける単語を表現することを学習することができる。更に上位の層は、一般的な視覚オブジェクト又は話されたフレーズを認識することを学習してもよい。
【0025】
[0032] 深層学習アーキテクチャは、自然階層構造を有する問題に適用されたとき、特によく機能する場合がある。例えば、電動ビークルの分類は、車輪、フロントガラス、及び他の特徴を認識することを最初に学習することから恩恵を受ける場合がある。これらの特徴は、自動車、トラック、及び飛行機を認識するために、異なる方法で上位層において組み合わせられてもよい。
【0026】
[0033] ニューラルネットワークは、様々な結合性パターンを用いて設計されてもよい。フィードフォワードネットワークでは、所与の層内の各ニューロンが上位層内のニューロンと通信して、情報が下位層から上位層に渡される。上述したように、フィードフォワードネットワークの連続する層内で階層表現が構築されてもよい。ニューラルネットワークはまた、再帰結合又はフィードバック(トップダウンとも呼ばれる)結合を有してもよい。再帰結合では、所与の層内のニューロンからの出力は、同じ層内の別のニューロンに伝達されてもよい。再帰型アーキテクチャは、シーケンスの中でニューラルネットワークに配信される入力データチャンクのうちの2つ以上にわたるパターンを認識する際に有用であり得る。所与の層内のニューロンから下位層内のニューロンへの結合は、フィードバック(又は、トップダウン)結合と呼ばれる。多数のフィードバック結合を有するネットワークは、高レベルの概念の認識が入力の特定の低レベルの特徴を区別する助けとなり得るときに有用であり得る。
【0027】
[0034] ニューラルネットワークの層間の結合は、全結合又は局所結合されていてもよい。
図2Aは、全結合ニューラルネットワーク202の一例を示す。全結合ニューラルネットワーク202では、第1の層内のニューロンは、その出力を第2の層内のあらゆるニューロンに伝達してもよく、その結果、第2の層内の各ニューロンは、第1の層内のあらゆるニューロンから入力を受信することになる。
図2Bは、局所結合ニューラルネットワーク204の一例を示す。局所結合ニューラルネットワーク204では、第1の層内のニューロンは、第2の層内の限られた数のニューロンに結合されていてもよい。より一般的には、局所結合ニューラルネットワーク204の局所結合層は、ある層内の各ニューロンが同じ又は類似の結合性パターンを、しかし異なる値(例えば、210、212、214、及び216)を有してもよい結合強度を伴って、有するように構成することができる。所与の領域内の上位層ニューロンは、訓練を通じてネットワークへの全入力のうちの限定された部分の特性に調整される入力を受信し得るので、局所結合の結合性パターンは、上位層内で空間的に別個の受容野を生じ得る。
【0028】
[0035] 局所結合ニューラルネットワークの一例は、畳み込みニューラルネットワークである。
図2Cは、畳み込みニューラルネットワーク206の一実施例を示す。畳み込みニューラルネットワーク206は、第2の層内の各ニューロンについての入力に関連付けられた結合強度が共有される(例えば、208)ように構成されてもよい。畳み込みニューラルネットワークは、入力の空間ロケーションが意味のある問題に好適である場合がある。
【0029】
[0036] 畳み込みニューラルネットワークの1つのタイプは、深層畳み込みネットワーク(DCN)である。
図2Dは、車載カメラなどの画像キャプチャデバイス230から入力された画像226から視覚特徴を認識するように設計された、DCN200の詳細な例を示す。本例のDCN200は、交通標識及び交通標識上に記載された数字を識別するように訓練されてもよい。もちろん、DCN200は、車線区分線を識別すること又は交通信号を識別することなどの、他のタスクのために訓練されてもよい。
【0030】
[0037] DCN200は、教師あり学習を用いて訓練されてもよい。訓練中に、DCN200は、速度制限標識の画像226などの画像を提示される場合があり、次いで、出力222を生成するために、順方向パスが計算される場合がある。DCN200は、特徴抽出セクション及び分類セクションを含んでよい。画像226を受信すると、畳み込み層232は、畳み込みカーネル(図示せず)を画像226に適用して、特徴マップの第1のセット218を生成し得る。例として、畳み込み層232についての畳み込みカーネルは、28×28の特徴マップを生成する5×5のカーネルであってもよい。本実施例では、特徴マップの第1のセット218において4つの異なる特徴マップが生成されるため、畳み込み層232において4つの異なる畳み込みカーネルが画像226に適用された。畳み込みカーネルはまた、フィルタ又は畳み込みフィルタと呼ばれることもある。
【0031】
[0038] 特徴マップの第1のセット218は、特徴マップの第2のセット220を生成するために、最大プーリング層(図示せず)によってサブサンプリングされてもよい。最大プーリング層は、特徴マップの第1のセット218のサイズを縮小する。すなわち、14×14などの特徴マップの第2のセット220のサイズは、28×28などの特徴マップの第1のセット218のサイズよりも小さい。縮小されたサイズにより、メモリ消費量を低減しながら、類似の情報を後続の層に提供する。特徴マップの第2のセット220は、1つ又は複数の後続の畳み込み層(図示せず)を介して更に畳み込まれて、特徴マップの1つ又は複数の後続のセット(図示せず)を生成し得る。
【0032】
[0039]
図2Dの実施例では、特徴マップの第2のセット220が畳み込まれて、第1の特徴ベクトル224を生成する。更に、第1の特徴ベクトル224が更に畳み込まれて、第2の特徴ベクトル228を生成する。第2の特徴ベクトル228の各特徴は、「標識」、「60」、及び「100」などの画像226の可能性のある特徴に対応する数を含んでもよい。ソフトマックス関数(図示せず)は、第2の特徴ベクトル228における数を確率に変換してもよい。したがって、DCN200の出力222は、画像226が1つ又は複数の特徴を含む確率であり得る。
【0033】
[0040] 本実施例では、「標識」及び「60」に対する出力222における確率は、「30」、「40」、「50」、「70」、「80」、「90」、及び「100」などの出力222のその他のものの確率よりも高い。訓練の前に、DCN200によって生成された出力222は、不正確である可能性があり得る。したがって、出力222とターゲット出力との間で誤差が計算されてもよい。ターゲット出力は、画像226のグラウンドトゥルース(例えば、「標識」及び「60」)である。次いで、DCN200の重みが調整されてよく、そのため、DCN200の出力222はターゲット出力とより密に整合される。
【0034】
[0041] 重みを調整するために、学習アルゴリズムは重みに対する勾配ベクトルを算出してよい。勾配は、重みが調整された場合に誤差が増加又は減少することになる量を示すことができる。最上層において、勾配は、最後から2番目の層内の活性化されたニューロンと出力層内のニューロンとを結合する重みの値に直接対応することができる。下位層では、勾配は、重みの値、及び上位層の算出された誤差勾配に依存することができる。次いで、誤差を低減するように、重みを調節することができる。重みを調整するこの方式は、ニューラルネットワークを通じた「逆方向パス」を伴うので、「逆伝搬法」と呼ばれることがある。
【0035】
[0042] 実際には、重みの誤差勾配は、算出された勾配が真の誤差勾配に近似するように、少数の例にわたって算出される場合がある。この近似法は、確率的勾配降下法と称される場合がある。確率的勾配降下法は、システム全体の達成可能な誤差率が下げ止まるまで、又は、誤差率がターゲットレベルに達するまで、繰り返すことができる。学習後に、DCN200は新たな画像を提示されてもよく、DCN200を通した順方向パスが、DCN200の推論又は予測と見なされ得る出力222をもたらし得る。
【0036】
[0043] 深層信念ネットワーク(DBNs)は、隠れノードの複数の層を備える確率的モデルである。DBNは、訓練データセットの階層表現を抽出するために使用されてもよい。DBNは、制限付きボルツマンマシン(RBMs)の層を積層することによって取得されてもよい。RBMは、入力のセットにわたる確率分布を学習できるタイプの人工ニューラルネットワークである。RBMは、各入力がカテゴリー分類されるべき先のクラスについての情報がない状態で確率分布を学習できるので、RBMは、教師なし学習において頻繁に使用される。教師なしと教師ありとのハイブリッドパラダイムを使用して、DBNの下部RBMは、教師なし方式で訓練することができ、特徴抽出器として機能することができ、上部RBMは、(前の層及びターゲットクラスからの入力の同時分布上で)教師あり方式で訓練することができ、分類器として機能することができる。
【0037】
[0044] 深層畳み込みネットワーク(DCNs)は、追加のプーリング層及び正規化層で構成された、畳み込みネットワークのネットワークである。DCNは、多数のタスクに対して最先端の性能を達成している。DCNは、入力と出力ターゲットの両方が、多数の標本に対して知られており、かつ勾配降下法の使用によってネットワークの重みを修正するために使用される、教師あり学習を使用して訓練することができる。
【0038】
[0045] DCNは、フィードフォワードネットワークであってもよい。加えて、上述したように、DCNの第1の層内のニューロンから次の上位層内のニューロンのグループへの結合は、第1の層内のニューロンにわたって共有される。DCNのフィードフォワード結合及び共有される結合は、高速処理のために活用することができる。DCNの計算負担は、例えば、再帰結合又はフィードバック結合を含む同様のサイズのニューラルネットワークの計算負担よりもはるかに小さい場合がある。
【0039】
[0046] 畳み込みネットワークの各層の処理は、空間的に不変のテンプレート又は基底射影と見なされてもよい。入力が、カラー画像の赤色チャネル、緑色チャネル、及び青色チャネルなどの複数のチャネルに最初に分解される場合、その入力に対して訓練される畳み込みネットワークは、画像の軸に沿った2つの空間次元及び色情報をキャプチャする第3の次元を有する、3次元と見なされてもよい。畳み込み結合の出力は、後続の層内で特徴マップを形成するものと見なされてもよく、特徴マップ(例えば、220)の各要素が、前の層(例えば、特徴マップ218)内のある範囲のニューロンから、かつ複数のチャネルの各々から、入力を受信する。特徴マップにおける値は、整流、max(0,x)などの非線形性を用いて更に処理されてもよい。隣接するニューロンからの値は更に、ダウンサンプリングに対応するプーリングが行われてもよく、追加の局所不変性及び次元数低減をもたらすことができる。白色化に対応する正規化が、特徴マップ内のニューロン間の側方抑制を通して適用される場合もある。
【0040】
[0047] 深層学習アーキテクチャの性能は、より多くのラベル付けされたデータポイントが利用可能になるほど、又は計算能力が高まるほど、向上し得る。現代の深層ニューラルネットワークは、わずか15年前に典型的な研究者が利用可能であったものよりも数千倍大きい計算リソースを用いて、ルーチン的に訓練される。新しいアーキテクチャ及び訓練パラダイムは、深層学習の性能を更に高めることができる。整流線形ユニットは、勾配消失として知られる訓練問題を低減する場合がある。新しい訓練技術は、過剰適合を低減し、したがって、より大きいモデルがより良い汎化を達成することを可能にする場合がある。カプセル化技術は、所与の受容野内のデータを抽出し、全体的な性能を更に高める場合がある。
【0041】
[0048]
図3は、DCN350を示すブロック図である。深層畳み込みネットワーク350は、結合性及び重み共有に基づいて、複数の異なるタイプの層を含み得る。
図3に示されているように、深層畳み込みネットワーク350は、畳み込みブロック354A、354Bを含む。畳み込みブロック354A、354Bの各々は、畳み込み層(CONV)356、正規化層(LNorm)358、及び最大プーリング層(MAX POOL)360を用いて構成され得る。畳み込みブロック354A、354Bのうちの2つのみが示されているが、本開示は、そのように限定しておらず、代わりに、設計選好に従って、任意の数の畳み込みブロック354A、354Bが深層畳み込みネットワーク350に含まれてもよい。
【0042】
[0049] 畳み込み層356は、特徴マップを生成するために入力データに適用され得る、1つ又は複数の畳み込みフィルタを含み得る。正規化層358は、畳み込みフィルタの出力を正規化してもよい。例えば、正規化層358は、白色化又は側方抑制をもたらし得る。最大プーリング層360は、局所不変性及び次元数低減のために、空間にわたってダウンサンプリング集約をもたらし得る。
【0043】
[0050] 例えば、深層畳み込みネットワークの並列フィルタバンクは、高性能及び低電力消費を達成するために、SOC100(例えば、
図1)のCPU102又はGPU104上にロードされ得る。代替実施形態では、並列フィルタバンクは、SOC100のDSP106又はISP116上にロードされてもよい。加えて、深層畳み込みネットワーク350は、それぞれ、センサー及びナビゲーション専用のセンサープロセッサ114及びナビゲーションモジュール120などの、SOC100上に存在する場合がある他の処理ブロックにアクセスしてもよい。
【0044】
[0051] 深層畳み込みネットワーク350はまた、1つ又は複数の全結合層362(FC1及びFC2)を含み得る。深層畳み込みネットワーク350は、ロジスティック回帰(LR)層364を更に含んでもよい。深層畳み込みネットワーク350の各層356、358、360、362、364の間には、更新されることになる重み(図示せず)がある。層の各々(例えば、356、358、360、362、364)の出力は、畳み込みブロック354Aのうちの最初に供給された入力データ352(例えば、画像、オーディオ、ビデオ、センサーデータ、及び/又は他の入力データ)から階層的特徴表現を学習するために、深層畳み込みネットワーク350内の層(例えば、356、358、360、362、364)のうちの後続の1つの層の入力として機能し得る。深層畳み込みネットワーク350の出力は、入力データ352に対する分類スコア366である。分類スコア366は確率のセットであってよく、ここで、各確率は、入力データが特徴のセットからの特徴を含む確率である。
【0045】
[0052]
図4は、人工知能(AI)機能をモジュール化し得る例示的なソフトウェアアーキテクチャ400を示すブロック図である。このアーキテクチャ400を使用して、(
図1のSoC100と同様であり得る)SOC420の様々な処理ブロック(例えば、CPU422、DSP424、GPU426、及び/又はNPU428)に、本開示の態様による、AIアプリケーション402のための訓練後の量子化について開示されるとおりの適応丸めをサポートさせ得るアプリケーションが設計され得る。
【0046】
[0053] AIアプリケーション402は、例えば、デバイスが現在動作しているロケーションを示すシーンの検出及び認識を行い得る、ユーザ空間404において定義された機能を呼び出すように構成されてもよい。AIアプリケーション402は、例えば、認識されるシーンがオフィスであるか、講堂であるか、レストランであるか、又は湖などの屋外設定であるかに応じて、マイクロフォン及びカメラを異なるように構成してもよい。AIアプリケーション402は、現在のシーンの推定を提供するよう、AI機能アプリケーションプログラミングインタフェース(application programming interface、API)、例えばSceneDetect API406において定義されたライブラリに関連付けられたコンパイル済みプログラムコードに対する要求を行ってもよい。この要求は、最終的には、例えば、ビデオ及び測位データに基づいて推論応答を提供するように構成された深層ニューラルネットワークの出力に依拠してもよい。深層ニューラルネットワークは、例えば、ビデオ及び測位データに基づいてシーン推定を提供するように構成された差分ニューラルネットワークであり得る。
【0047】
[0054] ランタイムフレームワークのコンパイル済みコードであってもよいランタイムエンジン408は、AIアプリケーション402が更にアクセス可能なものであってもよい。AIアプリケーション402は、ランタイムエンジン408に、例えば、特定の時間間隔における、又はアプリケーション402のユーザインタフェースによって検出されたイベントによってトリガされる、シーン推定などの、推論を要求させ得る。(例えば、シーンを推定するための)推論応答を提供させられたとき、ランタイムエンジン408は、今度は、SOC420上で実行している、カーネル412などの、オペレーティングシステム(OS)空間410内のオペレーティングシステムに信号を送り得る。次に、オペレーティングシステムは、CPU422、DSP424、GPU426、NPU428、又はそれらの何らかの組み合わせ上で量子化の連続的な緩和を実行させてもよい。CPU422は、オペレーティングシステムによって直接アクセスされてもよく、他の処理ブロックは、それぞれ、DSP424、GPU426、又はNPU428用のドライバ414、416、又は418などの、ドライバを通じてアクセスされてもよい。例示的な例では、深層ニューラルネットワークは、CPU422、DSP424、及びGPU426などの処理ブロックの組み合わせ上で動作するように構成されてもよく、又はNPU428上で動作してもよい。
【0048】
[0055]
【0049】
[0056] 上述されたように、本開示の態様はフロー非依存ビデオ圧縮に関する。本開示の態様によれば、フローワーピング演算子を使用する代わりに、動き補償が完全畳み込み演算子を介して提供される。例えば、オプティカルフローを使用して以前のフレームをワーピングする代わりに、畳み込みニューラルネットワークはビデオフレームの特徴表現を抽出し得る。現在のフレームと以前のフレームとの間の相関特徴が決定され得る。相関特徴は符号化され、受信器へ伝送され得る。符号化された相関特徴は復号され、現在のフレームの予測
【0050】
【0051】
を決定するために以前のフレームの特徴と共に使用され得る。
【0052】
[0057]
図5は、本開示の態様による、フロー非依存ビデオ圧縮のための例示的なアーキテクチャ500を示すブロック図である。アーキテクチャ500は動きネットワーク502及び残差ネットワーク504を含み得る。動きネットワーク502及び残差ネットワーク504は、例えば、オートエンコーダとして実施され得る。
【0053】
[0058] 動きネットワーク502は動き補償を特徴変換として提供し得る。
図5の例では、動きネットワーク502は、エンコーダ506、デコーダ508、及び先行ネットワーク(prior network)510を含み得る。エンコーダ506は特徴抽出器g
a 514aを含み得る。特徴抽出器g
a 514aは、例えば、畳み込みニューラルネットワーク(例えば、
図3に示される350)であり得る。特徴抽出器g
a 514aはビデオを入力として受信し得る。ビデオは複数のフレームを含み得る。図示のように、特徴抽出器g
a 514aは、圧縮されるべきビデオの現在のフレームx
iを受信し得る。特徴抽出器g
a 514aは1つ又は複数の畳み込み層を通じて現在のフレームx
iを処理し、特徴のセットを抽出し、現在のフレームx
iの特徴表現を生成し得る。加えて、特徴抽出器g
a 514bがビデオの以前のフレーム
【0054】
【0055】
を受信し得る。
図5には複数の特徴抽出器g
aが示されているが、これは単なる例であり、図解を容易にするためのものにすぎない。代わりに、1つ又は複数の特徴抽出器g
aが用いられてもよい。特徴抽出器g
a 514bは1つ又は複数の畳み込み層を通じてビデオの以前のフレーム
【0056】
【0057】
を処理し、特徴のセットを抽出し、以前のフレーム
【0058】
【0059】
の特徴表現を生成し得る。現在及び以前のフレームの特徴表現はそれぞれ特徴抽出器ga 514a、514bを介して出力され得る。現在及び以前のフレームの特徴表現は連結層516aを介して連結され、特徴相関推定器gc 518に供給され得る。
【0060】
[0059] 特徴相関推定器gc 518もまた、畳み込みニューラルネットワークであり得る。特徴相関推定器gc 518は現在のフレームxiと以前のフレーム
【0061】
【0062】
との間の相関特徴
【0063】
【0064】
のセットを学習し、符号化し得る。相関特徴
【0065】
【0066】
は現在のフレームxiと以前のフレーム
【0067】
【0068】
との間の動きに対応し得る。
【0069】
[0060] 相関特徴
【0070】
【0071】
は算術エンコーダ(arithmetic encoder、AE)を介してエントロピー符号化され、受信器へ伝送され得る。エントロピー符号化及び復号は、先行ネットワーク510を介して学習された潜在相関特徴の分布に基づいて実施され得る。
【0072】
[0061] デコーダ508は相関特徴
【0073】
【0074】
のエントロピー符号化された潜在表現を受信し得る。相関特徴
【0075】
【0076】
のエントロピー符号化された潜在表現は算術デコーダ(arithmetic decoder、AD)を介して復号され、符号-特徴変換器gd 520に供給され得る。符号-特徴変換器gd 520は相関特徴
【0077】
【0078】
の潜在特徴表現を回復し得る。
【0079】
[0062] デコーダ508はまた、参照フレーム522を受信し得る。参照フレーム522は、例えば、以前のフレーム
【0080】
【0081】
であり得る。参照フレーム522は、特徴のセットを抽出し、参照フレーム522の特徴表現を生成する、特徴抽出器ga 514cに供給される。
【0082】
[0063] 符号-特徴変換器gd 520によって出力された相関特徴
【0083】
【0084】
の潜在特徴表現は連結層516bを介して参照フレーム522
【0085】
【0086】
の特徴表現と連結され、フレームデコーダgs 524に供給され得る。フレームデコーダgs 524は相関特徴及び参照フレーム522
【0087】
【0088】
の連結された特徴表現を処理し、動きネットワーク502を介して生成された現在のフレームの予測
【0089】
【0090】
を生成し得る。
【0091】
[0064] 残差ネットワーク504は、残差エンコーダra 526、残差デコーダrs 528、及び残差先行ネットワーク512を同様に含み得る。残差エンコーダra 526は残差を入力として受信し得る。残差は実際の現在のフレームxiと現在のフレーム予測
【0092】
【0093】
との差によって与えられ得る。残差エンコーダra 526は残差の特徴表現を抽出し得る。
【0094】
[0065] 残差の特徴表現はエントロピー符号化され、受信器(例えば、残差デコーダrs 528)へ伝送され得る。エントロピー符号化及び復号は、先行ネットワーク512を介して学習された潜在残差特徴の分布に基づいて実施され得る。
【0095】
[0066] 残差デコーダrs 528は残差の特徴表現を復号し、残差
(例えば、
【0096】
【0097】
の予測
【0098】
【0099】
を生成し得る。この残差予測
【0100】
【0101】
は加算ブロック530を介して現在のフレーム予測
【0102】
【0103】
に加算され、現在のフレームxiの復元
【0104】
【0105】
を生成し得る。現在のフレームxiの復元
【0106】
【0107】
はビデオの後続のフレーム(例えば、xi+1)のための動き補償における使用のために受信器(例えば、動きネットワーク502のエンコーダ506)へ伝送され得る。
【0108】
[0067] いくつかの態様では、アーキテクチャ500は完全畳み込み演算子を使用し得る。そうすることで、オプティカルフローを使用する従来の動き補償のアプローチを用いずに動き補償が決定され得る。
【0109】
[0068]
図6は、本開示の態様による、フロー非依存ビデオ圧縮のための例示的なアーキテクチャ600を示すブロック図である。
図6を参照すると、
図5のアーキテクチャ500のための入力は、複数の以前に復号されたフレームの履歴からの動き情報を更に活用するように変更され得る。
図6では、2つの以前に復号されたフレーム
【0110】
【0111】
が示されているが、本開示はそのように限定されない。代わりに、2つ又はそれより多くの以前に復号されたフレームが、以前に復号されたフレームの履歴内に含まれてもよい。アーキテクチャ600は外挿器ネットワーク(E)602を更に含み得る。外挿器ネットワーク602は、例えば、完全畳み込みネットワークであり得る。外挿器ネットワーク602は、複数の以前に復号されたフレーム
【0112】
【0113】
を入力として受信し得る。外挿器ネットワーク602は、以前に復号されたフレーム
【0114】
【0115】
を処理し、参照フレーム予測
【0116】
【0117】
を生成し得る。参照フレーム予測
【0118】
【0119】
は中間フレームとして扱われ、アーキテクチャ500の動きネットワーク502に入力され得る。(例えば、
図5に示されるとおりの)単一の以前に復号されたフレームの代わりに複数の以前に復号されたフレームを参照として使用することによって、現在のフレームを予測する精度が増大させられ得る。
【0120】
[0069]
図7は、本開示の態様による、フロー非依存ビデオ圧縮のための例示的なアーキテクチャ700を示すブロック図である。
図7は、効率最適化のために設計された、
図5の単純化されたバージョンである。
図7を参照すると、アーキテクチャ700は、動きネットワーク502を除去することによって単純化され得る。それゆえ、アーキテクチャ700は外挿器ネットワーク602及び残差ネットワーク504を含む。外挿器ネットワーク602は以前のフレーム(例えば、2個以上のフレーム)の履歴から現在のフレームx
iの予測
【0121】
【0122】
を直接決定し得る。残差ネットワーク504は予測
【0123】
【0124】
と現在のフレームxiとの差を符号化し、これが現在のフレーム予測
【0125】
【0126】
に加算され、現在のフレームxiの復元
【0127】
【0128】
を生成し得る。
【0129】
[0070]
図8は、本開示の態様による、人工ニューラルネットワーク(ANN)を使用するビデオ圧縮のための例示的なプロセス800を示すフロー図である。
図8に示されるように、ブロック802において、プロセス800はANNを介してビデオを受信する。
図5を参照して説明されたように、特徴抽出器g
a 514aがビデオを入力として受信し得る。ビデオは複数のフレームを含み得る。
【0130】
[0071] ブロック804において、プロセス800は、ANNによって、ビデオの現在のフレームの特徴の第1のセット及びビデオの参照フレームの特徴の第2のセットを抽出する。
図5を参照して説明されたように、特徴抽出器g
a 514aは1つ又は複数の畳み込み層を通じて現在のフレームx
iを処理し、特徴のセットを抽出し、現在のフレームx
iの特徴表現を生成し得る。任意選択的に、ブロック806において、特徴抽出器g
a 514bがビデオの以前のフレーム
【0131】
【0132】
を受信し得る。特徴抽出器ga 514bは1つ又は複数の畳み込み層を通じてビデオの以前のフレーム
【0133】
【0134】
を処理し、特徴のセットを抽出し、以前のフレーム
【0135】
【0136】
の特徴表現を生成し得る。
【0137】
[0072] ブロック808において、プロセス800は、ANNによって、現在のフレームの特徴の第1のセットと参照フレームの特徴の第2のセットとの間の相関特徴の推定を決定する。
図5を参照して説明されたように、現在及び以前のフレームの特徴表現はそれぞれ特徴抽出器g
a 514a、514bを介して出力され得る。現在及び以前のフレームの特徴表現は連結層516aを介して連結され、特徴相関推定器g
c 518に供給され得る。特徴相関推定器g
c 518もまた、畳み込みニューラルネットワークであり得る。特徴相関推定器g
c 518は現在のフレームx
iと以前のフレーム
【0138】
【0139】
との間の相関特徴
【0140】
【0141】
のセットを学習し、符号化し得る。相関特徴
【0142】
【0143】
は現在のフレームxiと以前のフレーム
【0144】
【0145】
との間の動きに対応し得る。
【0146】
[0073] ブロック810において、プロセス800は相関特徴の推定を受信器へ伝送する。
図5を参照して説明されたように、相関特徴
【0147】
【0148】
は算術エンコーダ(AE)を介してエントロピー符号化され、受信器(例えば、デコーダ508)へ伝送され得る。
【0149】
[0074]
図9は、本開示の態様による、人工ニューラルネットワーク(ANN)を使用するビデオ圧縮のための例示的なプロセス900を示すフロー図である。
図9に示されるように、ブロック902において、プロセス900は、ANNによって、ビデオの参照フレームを受信する。ブロック904において、プロセス900は、ANNによって、ビデオの現在のフレームとビデオの参照フレームとの間の相関特徴の推定を受信する。
図5に示されるように、デコーダ508は、ビデオの参照フレーム522、及びビデオの現在のフレームx
iとビデオの参照フレーム522
【0150】
【0151】
との間の相関特徴
【0152】
【0153】
の推定を受信する。
【0154】
[0075] ブロック906において、プロセス900は、ANNによって、ビデオの参照フレームの特徴の第1のセットを抽出する。例えば、
図5を参照して説明されたように、デコーダ508はまた、参照フレーム522を受信し得る。参照フレーム522は、例えば、以前のフレーム
【0155】
【0156】
であり得る。参照フレーム522は、特徴のセットを抽出し、参照フレーム522の特徴表現を生成する、特徴抽出器ga 514cに供給される。
【0157】
[0076] ブロック908において、プロセス900は、ANNによって、相関特徴の推定を復号する。
図5に示されるように、デコーダ508は相関特徴
【0158】
【0159】
のエントロピー符号化された潜在表現を受信し得る。相関特徴
【0160】
【0161】
のエントロピー符号化された潜在表現は算術デコーダ(AD)を介して復号され、符号-特徴変換器gd 520に供給され得る。符号-特徴変換器gd 520は相関特徴
【0162】
【0163】
の潜在特徴表現を回復し得る。
【0164】
[0077] ブロック910において、プロセス900は、ANNによって、相関特徴の復号された推定及びビデオの参照フレームの特徴の第1のセットに基づいてビデオの現在のフレームの予測を生成する。
図5を参照して説明されたように、相関特徴
【0165】
【0166】
の潜在特徴表現は連結層516bを介して参照フレーム522の特徴表現と連結され、フレームデコーダgs 524に供給され得る。フレームデコーダgs 524は相関特徴
【0167】
【0168】
及び参照フレーム522の連結された特徴表現を処理し、動きネットワーク502を介して生成された現在のフレームxiの予測
【0169】
【0170】
を生成する。
【0171】
[0078]
図10は、本開示の態様による、人工ニューラルネットワーク(ANN)を使用するビデオ圧縮のための例示的なプロセス1000を示すフロー図である。
図10に示されるように、ブロック1002において、プロセス1000は、ANNによって、ビデオの複数のフレームの履歴を受信する。
図6を参照して説明されたように、アーキテクチャ600は外挿器ネットワーク(E)602を更に含み得る。外挿器ネットワーク602は、例えば、完全畳み込みネットワークであり得る。外挿器ネットワーク602は、複数の以前に復号されたフレーム
【0172】
【0173】
を入力として受信し得る。
【0174】
[0079] ブロック1004において、プロセス1000は、ANNによって、ビデオの複数のフレームの履歴に基づいて参照フレームを生成する。例えば、
図6を参照して説明されたように、外挿器ネットワーク602は、以前に復号されたフレーム
【0175】
【0176】
を処理し、参照フレーム予測
【0177】
【0178】
を生成し得る。
【0179】
[0080] ブロック1006において、プロセス1000は、ANNによって、参照フレーム及びビデオの現在のフレームに基づいてビデオの現在のフレームの予測を生成する。
図6に示されるように、外挿器ネットワーク602によって作成された参照フレーム予測
【0180】
【0181】
及び現在のフレームxiを使用して、現在のフレームの予測
【0182】
【0183】
が生成される。
【0184】
[0081] ブロック1008において、プロセス1000は、ANNによって、ビデオの現在のフレームの予測、及びビデオの現在のフレームとビデオの現在のフレームの予測との差に基づいて計算された残差に基づいて現在のフレームの復元を生成する。
図6に示されるように、残差ネットワーク504は予測と現在のフレームx
iとの差を符号化し、これが現在のフレーム予測
【0185】
【0186】
に加算され、現在のフレームxiの復元
【0187】
【0188】
を生成し得る。
【0189】
[0082] 以下の番号付きの条項に実装例が記載される。
1.人工ニューラルネットワーク(ANN)を使用するビデオ圧縮のためのプロセッサ実施方法であって、
ANNによって、ビデオを受信することと、
ANNによって、ビデオの現在のフレームの特徴の第1のセット及びビデオの参照フレームの特徴の第2のセットを抽出することと、
ANNによって、現在のフレームの特徴の第1のセットと参照フレームの特徴の第2のセットとの間の相関特徴の推定を決定することと、
相関特徴の推定を受信器へ伝送することと、
を含む、プロセッサ実施方法。
2.ANNの完全畳み込み演算子を介して相関特徴の推定を決定することを更に含む、条項1に記載のプロセッサ実施方法。
3.参照フレームがビデオの以前のフレームの復元を含む、条項1又は2に記載のプロセッサ実施方法。
4.参照フレームがビデオの複数の先行フレームの復元に基づいて予測される、条項1~3のうちのいずれか1項に記載のプロセッサ実施方法。
5.人工ニューラルネットワーク(ANN)を使用するビデオ圧縮のためのプロセッサ実施方法であって、
ANNによって、ビデオの参照フレームを受信することと、
ANNによって、ビデオの現在のフレームとビデオの参照フレームとの間の相関特徴の推定を受信することと、
ANNによって、ビデオの参照フレームの特徴の第1のセットを抽出することと、
ANNによって、相関特徴の推定を復号することと、
ANNによって、相関特徴の復号された推定及びビデオの参照フレームの特徴の第1のセットに基づいてビデオの現在のフレームの予測を生成することと、
を含む、プロセッサ実施方法。
6.
ビデオの現在のフレームとビデオの現在のフレームの予測との差に基づいて残差を計算することと、
現在のフレームの予測及び残差に基づいてビデオの現在のフレームの復元を生成することと、
を更に含む、条項5に記載のプロセッサ実施方法。
7.参照フレームがビデオの複数の先行フレームの復元に基づいて予測される、条項5又は6に記載のプロセッサ実施方法。
8.人工ニューラルネットワーク(ANN)を使用するビデオ圧縮のためのプロセッサ実施方法であって、
ANNによって、ビデオの複数のフレームの履歴を受信することと、
ANNによって、ビデオの複数のフレームの履歴から参照フレームを生成することと、
ANNによって、参照フレーム及びビデオの現在のフレームに基づいてビデオの現在のフレームの予測を生成することと、
ANNによって、ビデオの現在のフレームの予測、及びビデオの現在のフレームとビデオの現在のフレームの予測との差に基づいて計算された残差に基づいて現在のフレームの復元を生成することと、
を含む、プロセッサ実施方法。
9.履歴が、複数の以前に復号されたフレームを含む、条項8に記載のプロセッサ実施方法。
10.ビデオの現在のフレームとビデオの現在のフレームの予測との差を符号化することと、符号化を現在のフレームの予測に加算することとを更に含む、条項8又は9に記載のプロセッサ実施方法。
11.人工ニューラルネットワーク(ANN)を使用するビデオ圧縮のための装置であって、
メモリと、
メモリに結合された少なくとも1つのプロセッサと、を備え、少なくとも1つのプロセッサが、
ANNによって、ビデオを受信し、
ANNによって、ビデオの現在のフレームの特徴の第1のセット及びビデオの参照フレームの特徴の第2のセットを抽出し、
ANNによって、現在のフレームの特徴の第1のセットと参照フレームの特徴の第2のセットとの間の相関特徴の推定を決定し、
相関特徴の推定を受信器へ伝送するように構成されている、装置。
12.少なくとも1つのプロセッサが、
ANNの完全畳み込み演算子を介して相関特徴の推定を決定するように更に構成されている、条項11に記載の装置。
13.参照フレームがビデオの以前のフレームの復元を含む、条項11又は12に記載の装置。
14.少なくとも1つのプロセッサが、ビデオの複数の先行フレームの復元に基づいて参照フレームを予測するように更に構成されている、条項11~13のうちのいずれか1項に記載の装置。
15.人工ニューラルネットワーク(ANN)を使用するビデオ圧縮のための装置であって、
メモリと、
メモリに結合された少なくとも1つのプロセッサと、を備え、少なくとも1つのプロセッサが、
ビデオの参照フレームを受信し、
ビデオの現在のフレームとビデオの参照フレームとの間の相関特徴の推定を受信し、
ビデオの参照フレームの特徴の第1のセットを抽出し、
相関特徴の推定を復号し、
相関特徴の復号された推定及びビデオの参照フレームの特徴の第1のセットに基づいてビデオの現在のフレームの予測を生成するように構成されている、装置。
16.少なくとも1つのプロセッサが、
ビデオの現在のフレームとビデオの現在のフレームの予測との差に基づいて残差を計算し、
現在のフレームの予測及び残差に基づいてビデオの現在のフレームの復元を生成するように更に構成されている、条項15に記載の装置。
17.少なくとも1つのプロセッサが、ビデオの複数の先行フレームの復元に基づいて参照フレームを予測するように更に構成されている、条項15又は16に記載の装置。
18.人工ニューラルネットワーク(ANN)を使用するビデオ圧縮のための装置であって、
メモリと、
メモリに結合された少なくとも1つのプロセッサと、を備え、少なくとも1つのプロセッサが、
ANNによって、ビデオの複数のフレームの履歴を受信し、
ANNによって、ビデオの複数のフレームの履歴から参照フレームを生成し、
ANNによって、参照フレーム及びビデオの現在のフレームに基づいてビデオの現在のフレームの予測を生成し、
ANNによって、ビデオの現在のフレームの予測、及びビデオの現在のフレームとビデオの現在のフレームの予測との差に基づいて計算された残差に基づいて現在のフレームの復元を生成するように構成されている、装置。
19.履歴が、複数の以前に復号されたフレームを含む、条項18に記載の装置。
20.少なくとも1つのプロセッサが、ビデオの現在のフレームとビデオの現在のフレームの予測との差を符号化し、符号化を現在のフレームの予測に加算するように更に構成されている、条項18又は19に記載の装置。
【0190】
[0083] 一態様では、受信手段、抽出手段、決定手段、伝送手段、復号手段、ANNによって、予測を生成するための手段、ANNによって、予測を生成するための手段、ANNによって、参照フレームを生成するための手段、及び/又はANNによって、復元を生成するための手段は、記載された機能を実行するように構成された、CPU102、CPU102に関連付けられたプログラムメモリ、専用メモリブロック118、全結合層362、NPU428/、及び/又はルーティング接続処理ユニット216であり得る。別の構成では、上述の手段は、上述の手段によって列挙された機能を実行するように構成された任意のモジュール又は任意の装置であってもよい。
【0191】
[0084] 上記で説明された方法の様々な動作は、対応する機能を実施することが可能な任意の好適な手段によって実施され得る。手段は、限定はしないが、回路、特定用途向け集積回路(ASIC)、又はプロセッサを含む、様々なハードウェア及び/又はソフトウェア構成要素(単数又は複数)及び/又はモジュール(単数又は複数)を含んでもよい。一般に、図に示される動作がある場合、それらの動作は、同様の番号を付された対応する相対物のミーンズプラスファンクション構成要素を有してもよい。
【0192】
[0085] 本明細書で使用される場合、「決定すること(determining)」という用語は、多種多様なアクションを包含する。例えば、「決定すること/判定すること」は、計算すること、算出すること、処理すること、導出すること、調査すること、ルックアップすること(例えば、テーブル、データベース、又は別のデータ構造においてルックアップすること)、確認することなどを含んでもよい。加えて、「決定すること」は、受信すること(例えば、情報を受信すること)、アクセスすること(例えば、メモリ内のデータにアクセスすること)などを含んでもよい。更に、「決定すること」は、解決すること、選択すること、選ぶこと、確立することなどを含んでもよい。
【0193】
[0086] 本明細書で使用される場合、項目のリスト「のうちの少なくとも1つ」に言及する語句は、単一のメンバーを含めた、それらの項目の任意の組み合わせを指す。一例として、「a、b、又はcのうちの少なくとも1つ」は、a、b、c、a-b、a-c、b-c、及びa-b-cを包含するものとする。
【0194】
[0087] 本開示に関して説明される様々な例示的な論理ブロック、モジュール及び回路は、汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)若しくは他のプログラマブル論理デバイス(PLD)、個別ゲート若しくはトランジスタ論理、個別ハードウェア構成要素、又は説明された機能を実行するように設計されたそれらの任意の組み合わせを用いて実装又は実行されてもよい。汎用プロセッサはマイクロプロセッサであってもよいが、代替として、プロセッサは、任意の市販のプロセッサ、コントローラ、マイクロコントローラ、又はステートマシンであってもよい。プロセッサはまた、コンピューティングデバイスの組み合わせ、例えば、DSPとマイクロプロセッサとの組み合わせ、複数のマイクロプロセッサ、DSPコアと連携した1つ又は複数のマイクロプロセッサ、又は任意の他のそのような構成として実装されてよい。
【0195】
[0088] 本開示に関して説明される方法又はアルゴリズムのステップは、直接ハードウェアにおいて、プロセッサによって実行されるソフトウェアモジュールにおいて、又はこれら2つの組み合わせにおいて具現化されてもよい。ソフトウェアモジュールは、当技術分野で知られている任意の形態の記憶媒体内に存在してもよい。使用され得る記憶媒体のいくつかの例は、ランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、フラッシュメモリ、消去可能プログラマブル読取り専用メモリ(EPROM)、電気的消去可能プログラマブル読取り専用メモリ(EEPROM(登録商標))、レジスタ、ハードディスク、リムーバブルディスク、CD-ROMなどを含む。ソフトウェアモジュールは、単一の命令又は多数の命令を備えてもよく、いくつかの異なるコードセグメントにわたって、異なるプログラム間で、複数の記憶媒体にわたって分散されてもよい。記憶媒体は、プロセッサが記憶媒体から情報を読み取り、記憶媒体に情報を書き込むことができるように、プロセッサに結合されてもよい。代替として、記憶媒体はプロセッサと一体化され得る。
【0196】
[0089] 本明細書で開示する方法は、記載の方法を達成するための1つ又は複数のステップ又はアクションを含む。それらの方法のステップ及び/又はアクションは、特許請求の範囲から逸脱することなく、互いに入れ替えることができる。換言すれば、ステップ又はアクションの特定の順序が指定されていない限り、特定のステップ及び/又はアクションの順序及び/又は使用は、特許請求の範囲から逸脱することなく、修正することができる。
【0197】
[0090] 説明された機能は、ハードウェア、ソフトウェア、ファームウェア、又はそれらの任意の組み合わせにおいて実装されてもよい。ハードウェアにおいて実装される場合、例示的なハードウェア構成は、デバイス内の処理システムを備えてもよい。処理システムは、バスアーキテクチャを用いて実装され得る。バスは、処理システムの特定の適用例、及び全体的な設計制約に応じて、任意の数の相互接続バス及びブリッジを含んでよい。バスは、プロセッサ、機械可読媒体、及びバスインタフェースを含む様々な回路を互いにリンクさせてもよい。バスインタフェースは、とりわけ、バスを介してネットワークアダプタを処理システムに接続するために使用され得る。ネットワークアダプタは、信号処理機能を実装するために使用され得る。いくつかの態様では、ユーザインタフェース(例えば、キーパッド、ディスプレイ、マウス、ジョイスティックなど)もバスに接続され得る。バスは、タイミングソース、周辺装置、電圧調整器、電力管理回路などの様々な他の回路もリンクさせ得るが、これらの回路は当技術分野でよく知られており、したがって、これ以上は説明されない。
【0198】
[0091] プロセッサは、バスを管理することと、機械可読媒体上に記憶されたソフトウェアの実行を含む一般的な処理とを担う場合がある。プロセッサは、1つ又は複数の汎用プロセッサ及び/又は専用プロセッサを用いて実装されてもよい。例としては、マイクロプロセッサ、マイクロコントローラ、DSPプロセッサ、及びソフトウェアを実行できる他の回路が挙げられる。ソフトウェアは、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語と呼ばれるか、又は他の名称で呼ばれるかにかかわらず、命令、データ、又はそれらの任意の組み合わせを意味するものと広く解釈されるものとする。機械可読媒体は、例として、ランダムアクセスメモリ(RAM)、フラッシュメモリ、読取り専用メモリ(ROM)、プログラマブル読取り専用メモリ(PROM)、消去可能プログラマブル読取り専用メモリ(EPROM)、電気的消去可能プログラマブル読取り専用メモリ(EEPROM)、レジスタ、磁気ディスク、光ディスク、ハードドライブ、若しくは任意の他の好適な記憶媒体、又はそれらの任意の組み合わせを含んでもよい。機械可読媒体は、コンピュータプログラム製品において具現化されてもよい。コンピュータプログラム製品は、パッケージング材料を備えてもよい。
【0199】
[0092] ハードウェア実装形態では、機械可読媒体は、プロセッサとは別個の処理システムの一部であってもよい。しかしながら、当業者が容易に理解するように、機械可読媒体又はその任意の部分は処理システムの外部にあってもよい。例として、機械可読媒体は、伝送線路、データによって変調された搬送波、及び/又はデバイスとは別個のコンピュータ製品を含んでもよく、それらのすべては、バスインタフェースを通じてプロセッサによってアクセスされてもよい。代替又は追加として、機械可読媒体又はその任意の部分は、キャッシュ及び/又は汎用レジスタファイルがそうであり得るように、プロセッサに統合されてもよい。論じられた様々な構成要素は、ローカル構成要素など、特定のロケーションを有するものとして説明されることがあるが、これらの構成要素は、分散コンピューティングシステムの一部として構成されるいくつかの構成要素など、様々な方法で構成されることもある。
【0200】
[0093] 処理システムは、すべてが外部バスアーキテクチャを通じて他のサポート回路と互いにリンクされる、プロセッサ機能を提供する1つ又は複数のマイクロプロセッサと、機械可読媒体の少なくとも一部分を提供する外部メモリとを有する汎用処理システムとして構成されてもよい。代替として、処理システムは、説明されたニューロンモデルとニューラルシステムのモデルとを実装するための1つ又は複数の神経形態学的プロセッサを備え得る。別の代替として、処理システムは、プロセッサを有する特定用途向け集積回路(ASIC)、バスインタフェース、ユーザインタフェース、サポート回路、及び単一のチップに統合された機械可読媒体の少なくとも一部分を用いて、あるいは1つ又は複数のフィードプログラマブルゲートアレイ(FPGAs)、プログラマブル論理デバイス(PLDs)、コントローラ、ステートマシン、ゲート論理、個別ハードウェア構成要素、若しくは任意の他の好適な回路、又は本開示全体にわたって説明された様々な機能を実行することができる回路の任意の組み合わせを用いて実装されてもよい。当業者は、特定の適用例及びシステム全体に課される全体的な設計制約に応じて、処理システムについて説明された機能を最良に実装する方法を認識されよう。
【0201】
[0094] 機械可読媒体は、いくつかのソフトウェアモジュールを備えてもよい。ソフトウェアモジュールは、プロセッサによって実行されると、処理システムに様々な機能を実行させる命令を含む。ソフトウェアモジュールは、送信モジュール及び受信モジュールを含んでもよい。各ソフトウェアモジュールは、単一の記憶デバイスの中に常駐してよく、又は複数の記憶デバイスにわたって分散されてよい。例として、ソフトウェアモジュールは、トリガイベントが発生したときにハードドライブからRAMの中にロードされてもよい。ソフトウェアモジュールの実行中、プロセッサは、アクセス速度を高めるために、命令のうちのいくつかをキャッシュの中にロードしてもよい。次いで、1つ又は複数のキャッシュラインは、プロセッサによる実行のために汎用レジスタファイルの中にロードされてもよい。以下でソフトウェアモジュールの機能に言及するとき、そのような機能が、そのソフトウェアモジュールからの命令を実行するとプロセッサによって実装されることが理解されよう。更に、本開示の態様は、プロセッサ、コンピュータ、機械、又はそのような態様を実装する他のシステムの機能の改善をもたらすことを理解されたい。
【0202】
[0095] ソフトウェアにおいて実装される場合、機能は、1つ又は複数の命令又はコードとしてコンピュータ可読媒体上に記憶されるか、又はコンピュータ可読媒体を介して送信されてもよい。コンピュータ可読媒体は、ある場所から別の場所へのコンピュータプログラムの転送を容易にする任意の媒体を含む、コンピュータ記憶媒体と通信媒体の両方を含む。記憶媒体は、コンピュータによってアクセスされ得る任意の利用可能な媒体であり得る。限定ではなく例として、そのようなコンピュータ可読媒体は、RAM、ROM、EEPROM、CD-ROM若しくは他の光ディスクストレージ、磁気ディスクストレージ若しくは他の磁気記憶デバイス、又は命令若しくはデータ構造の形態の所望のプログラムコードを搬送若しくは記憶するために使用され得るとともに、コンピュータによってアクセスされ得る任意の他の媒体を備えることができる。加えて、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。例えば、ソフトウェアが、同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者回線(DSL)、又は赤外線(IR)、無線、及びマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、又は他のリモートソースから送信される場合、同軸ケーブル、光ファイバケーブル、ツイストペア、DSL、又は赤外線、無線、及びマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。本明細書で使用されるディスク(disk)及びディスク(disc)は、コンパクトディスク(disc)(CD)、レーザーディスク(登録商標)(disc)、光ディスク(disc)、デジタル多用途ディスク(disc)(DVD)、フロッピー(登録商標)ディスク(disk)、及びBlu-ray(登録商標)ディスク(disc)を含み、ディスク(disk)は通常、データを磁気的に再生し、ディスク(disc)は、レーザーを用いてデータを光学的に再生する。したがって、いくつかの態様では、コンピュータ可読媒体は、非一時的コンピュータ可読媒体(例えば、有形媒体)を備えてよい。加えて、他の態様では、コンピュータ可読媒体は、一時的コンピュータ可読媒体(例えば、信号)を備えてもよい。上記のものの組み合わせもコンピュータ可読媒体の範囲内に含まれるべきである。
【0203】
[0096] したがって、いくつかの態様は、本明細書で提示した動作を実行するためのコンピュータプログラム製品を含み得る。例えば、そのようなコンピュータプログラム製品は、命令を記憶した(及び/又は符号化した)コンピュータ可読媒体を備えてもよく、命令は、説明された動作を実行するように1つ又は複数のプロセッサによって実行可能である。いくつかの態様では、コンピュータプログラム製品は、パッケージング材料を含んでもよい。
【0204】
[0097] 更に、説明された方法及び技法を実行するためのモジュール及び/又は他の適切な手段は、適用可能な場合、ユーザ端末及び/又は基地局によってダウンロード及び/又は別の方法で取得され得ることを理解されたい。例えば、そのようなデバイスは、説明された方法を実行するための手段の転送を容易にするためにサーバに結合され得る。代替として、説明された様々な方法は、ユーザ端末及び/又は基地局が記憶手段(例えば、RAM、ROM、コンパクトディスク(CD)又はフロッピーディスクなどの物理記憶媒体など)をデバイスに結合又は提供すると様々な方法を取得することができるように、記憶手段を介して提供され得る。更に、説明された方法及び技法をデバイスに提供するための任意の他の好適な技法が利用され得る。
【0205】
[0098] 特許請求の範囲は上記で示された厳密な構成及び構成要素に限定されないことを理解されたい。特許請求の範囲から逸脱することなく、上述した方法及び装置の構成、動作、及び詳細において、様々な修正、変更、及び変形が行われ得る。
【国際調査報告】