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

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

▶ ホアウェイ・テクノロジーズ・カンパニー・リミテッドの特許一覧

特表2024-507924階層的オーディオ/ビデオ又は画像圧縮法及び装置
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-02-21
(54)【発明の名称】階層的オーディオ/ビデオ又は画像圧縮法及び装置
(51)【国際特許分類】
   H04N 19/91 20140101AFI20240214BHJP
【FI】
H04N19/91
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023551271
(86)(22)【出願日】2022-02-23
(85)【翻訳文提出日】2023-09-28
(86)【国際出願番号】 CN2022077341
(87)【国際公開番号】W WO2022179509
(87)【国際公開日】2022-09-01
(31)【優先権主張番号】202110212042.1
(32)【優先日】2021-02-25
(33)【優先権主張国・地域又は機関】CN
(81)【指定国・地域】
(71)【出願人】
【識別番号】504161984
【氏名又は名称】ホアウェイ・テクノロジーズ・カンパニー・リミテッド
(74)【代理人】
【識別番号】110000877
【氏名又は名称】弁理士法人RYUKA国際特許事務所
(72)【発明者】
【氏名】ゲ、ユンイン
(72)【発明者】
【氏名】ワン、ジン
(72)【発明者】
【氏名】シ、イボ
(72)【発明者】
【氏名】ガオ、シャンイン
【テーマコード(参考)】
5C159
【Fターム(参考)】
5C159LC09
5C159MA04
5C159MA05
5C159MA21
5C159MC11
5C159MD02
5C159MD04
5C159ME01
5C159TA58
5C159TA59
5C159TC03
5C159TC06
5C159UA02
5C159UA05
(57)【要約】
本願は、人工知能(AI)ベースのオーディオ/ビデオ又は画像圧縮技術の分野、具体的には、ニューラルネットワークベースのオーディオ/ビデオ又は画像圧縮技術の分野に関するオーディオ/ビデオ又は画像圧縮方法及び装置を提供する。方法は、多層畳み込み演算を通じて生オーディオ/ビデオ又は画像を特徴空間に変換する段階、特徴空間において異なる層の特徴を抽出する段階、異なる層の丸められた特徴信号を出力する段階、深い特徴信号又はエントロピー推定結果を使用することによって、浅い特徴信号の確率分布を予測する段階、及び、丸められた特徴信号に対してエントロピーエンコーディングを実行する段階を含む。本願において、異なる層の間の信号相関が利用される。このように、オーディオ/ビデオ又は画像圧縮性能を改善できる。
【特許請求の範囲】
【請求項1】
オーディオ/ビデオ又は画像エンコーディング方法であって、
エンコーディング対象オーディオ又は画像がエンコーディングネットワークを通過することを可能にし、前記エンコーディング対象オーディオ又は画像の第1出力特徴マップを取得する段階;
前記エンコーディング対象オーディオ又は画像が前記エンコーディングネットワークを通過することを可能にし、前記エンコーディング対象オーディオ又は画像の第2出力特徴マップを取得する段階;
前記第1出力特徴マップを丸め、前記エンコーディング対象オーディオ又は画像の第1丸め特徴マップを取得する段階;
前記第2出力特徴マップを丸め、前記エンコーディング対象オーディオ又は画像の第2丸め特徴マップを取得する段階;
第2エントロピー推定の確率推定結果に基づいて、前記第2丸め特徴マップに対してエントロピーエンコーディングを実行して第2エンコーディング済みビットストリームを取得する段階;
前記第2丸め特徴マップ及び/又は前記第2エントロピー推定の前記確率推定結果に基づいて、第1エントロピー推定の確率推定を実行して、前記第1エントロピー推定の確率推定結果を取得する段階;及び
前記第1エントロピー推定の前記確率推定結果に基づいて、前記第1丸め特徴マップに対してエントロピーエンコーディングを実行して、第1エンコーディング済みビットストリームを取得する段階
を備える方法。
【請求項2】
前記方法は更に、
前記エンコーディング対象オーディオ又は画像が前記エンコーディングネットワークを通過することを可能にして、前記エンコーディング対象オーディオ又は画像の第3出力特徴マップを取得し、前記第3出力特徴マップを丸めて前記エンコーディング対象オーディオ又は画像の第3丸め特徴マップを取得する段階;及び
第3エントロピー推定の確率推定結果に基づいて、前記第3丸め特徴マップに対してエントロピーエンコーディングを実行し、第3エンコーディング済みビットストリームを取得する段階
を備える、請求項1に記載の方法。
【請求項3】
前記方法は更に、前記エンコーディング対象オーディオ又は画像の前記第3エントロピー推定の前記確率推定結果及び/又は前記第3丸め特徴マップに基づいて、前記第2エントロピー推定の確率推定を実行し、前記第2エントロピー推定の前記確率推定結果を取得する段階を備える、請求項2に記載の方法。
【請求項4】
前記方法は更に、
前記エンコーディング対象オーディオ又は画像が前記エンコーディングネットワークを通過することを可能にして、前記エンコーディング対象オーディオ又は画像の第k出力特徴マップを取得し、前記第k出力特徴マップを丸めて前記エンコーディング対象オーディオ又は画像の第k丸め特徴マップを取得する段階、ここでkは3より大きい整数である、
を備える、請求項1から3のいずれか一項に記載の方法。
【請求項5】
前記第k丸め特徴マップは、第nエントロピー推定の入力情報であり、nは整数であり、n≦kである、請求項4に記載の方法。
【請求項6】
前記方法は更に、
前記丸め特徴マップのうちの少なくとも1つを前記エンコーディング対象オーディオ又は画像のデコーディングネットワークの入力として使用することによって、前記エンコーディング対象オーディオ又は画像の再構築済みオーディオ又は画像を出力する段階;
前記エンコーディング対象オーディオ又は画像の対応するサンプル及び前記再構築済みオーディオ又は画像の間の差を計算して、前記エンコーディング対象オーディオ又は画像の残差画像を取得する段階;
以下の情報:
前記確率推定結果の任意の1又は複数;
前記丸め特徴マップの任意の1又は複数;又は
前記再構築済みオーディオ又は画像
のうちの少なくとも1つに基づいて、デコーディング対象オーディオ又は画像のロスレスエントロピー推定の確率推定を取得する段階;及び
前記ロスレスエントロピー推定の前記確率推定結果に基づいて、前記残差画像に対してエントロピーエンコーディングを実行して、前記エンコーディング対象オーディオ又は画像のロスレスエンコーディング済みビットストリームを取得する段階
を備える、請求項1から5のいずれか一項に記載の方法。
【請求項7】
前記第1出力特徴マップを丸めて、前記エンコーディング対象オーディオ又は画像の第1丸め特徴マップを取得する前記段階の前に、前記方法は更に、
前記第1出力特徴マップにおけるサンプルの画素値及び前記第1エントロピー推定によって出力された平均を減算し、第1オフセット特徴マップを取得する段階
を備え;
前記第1出力特徴マップを丸めて、前記エンコーディング対象オーディオ又は画像の第1丸め特徴マップを取得する前記段階は、
前記第1オフセット特徴マップを丸め、前記エンコーディング対象オーディオ又は画像の前記第1丸め特徴マップを取得する段階
を含む、請求項1に記載の方法。
【請求項8】
第m出力特徴マップを丸めて前記エンコーディング対象オーディオ又は画像の第m丸め特徴マップを取得する段階の前に、前記方法は更に、
前記第m出力特徴マップにおけるサンプルの画素値及び第mエントロピー推定によって出力される平均を減算して第mオフセット特徴マップを取得する段階を備え;
第m出力特徴マップを丸めて前記エンコーディング対象オーディオ又は画像の第m丸め特徴マップを取得する前記段階は、
前記第mオフセット特徴マップを丸めて前記エンコーディング対象オーディオ又は画像の前記第m丸め特徴マップを取得する段階;及び
前記第m丸め特徴マップにおける前記サンプルの前記画素値及び前記第mエントロピー推定によって出力される平均を加算し、和を第tエントロピー推定の入力として使用する段階、ここで、mは1より大きい整数であり、tはmより小さい整数である
を含む、請求項2から5のいずれか一項に記載の方法。
【請求項9】
画像デコーディング方法であって、
デコーディング対象オーディオ又は画像の第1デコーディング対象ビットストリームを取得する段階;
前記デコーディング対象オーディオ又は画像の第2デコーディング対象ビットストリームを取得する段階;
前記デコーディング対象オーディオ又は画像の第2エントロピー推定の確率推定結果に基づいて、前記デコーディング対象オーディオ又は画像の前記第2デコーディング対象ビットストリームに対してエントロピーデコーディングを実行して、前記デコーディング対象オーディオ又は画像の第2デコーディング済み特徴マップを取得する段階;
前記第2デコーディング済み特徴マップ及び/又は前記第2エントロピー推定の前記確率推定結果に基づいて、第1エントロピー推定の確率推定を実行して、前記第1エントロピー推定の確率推定結果を取得する段階;
前記第1エントロピー推定の前記確率推定結果に基づいて、前記第1デコーディング対象ビットストリームに対してエントロピーデコーディングを実行して、前記デコーディング対象オーディオ又は画像の第1デコーディング済み特徴マップを取得する段階;及び
前記第1デコーディング済み特徴マップ及び/又は前記第2デコーディング済み特徴マップをデコーディングネットワークの入力として使用することによって、前記デコーディング対象オーディオ又は画像の再構築済みオーディオ又は画像を出力する段階
を備える方法。
【請求項10】
前記方法は更に、
前記デコーディング対象オーディオ又は画像の第3デコーディング対象ビットストリームを取得する段階;
前記デコーディング対象オーディオ又は画像の第3エントロピー推定の確率推定結果に基づいて、前記第3デコーディング対象ビットストリームに対してエントロピーデコーディングを実行して、前記デコーディング対象オーディオ又は画像の第3デコーディング済み特徴マップを取得する段階;
前記第3デコーディング済み特徴マップ及び/又は前記第3エントロピー推定の前記確率推定結果に基づいて、前記デコーディング対象オーディオ又は画像の前記第2エントロピー推定の確率推定を実行する段階;及び
前記第1デコーディング済み特徴マップ、前記第2デコーディング済み特徴マップ、及び前記第3デコーディング済み特徴マップのうちの少なくとも1つを前記デコーディングネットワークの入力として使用することによって、前記デコーディング対象オーディオ又は画像の前記再構築済みオーディオ又は画像を出力する段階
を備える、請求項9に記載の方法。
【請求項11】
前記第2エントロピー推定の確率推定が、前記第3デコーディング済み特徴マップ及び/又は前記第3エントロピー推定の前記確率推定結果に基づいて、前記デコーディング対象オーディオ又は画像に対して実行される、請求項10に記載の方法。
【請求項12】
前記方法は更に、
前記デコーディング対象オーディオ又は画像の第mデコーディング対象ビットストリームを取得する段階;及び
前記デコーディング対象オーディオ又は画像の第mエントロピー推定の確率推定結果に基づいて、前記第mデコーディング対象ビットストリームに対してエントロピーデコーディングを実行して、前記デコーディング対象オーディオ又は画像の第mデコーディング済み特徴マップを取得する段階、ここで、mは3より大きい整数である、
を備える、請求項9から11のいずれか一項に記載の方法。
【請求項13】
前記第mデコーディング済み特徴マップ、及び/又は、前記第mエントロピー推定の前記確率推定結果は、第tエントロピー推定の入力情報であり、ここで、tはm以下の整数である、請求項12に記載の方法。
【請求項14】
前記方法は更に、
前記デコーディング対象オーディオ又は画像のロスレスデコーディング済みビットストリームを取得する段階;
以下の情報:
前記デコーディング済み特徴マップのうちの少なくとも1つ;
前記エントロピー推定の前記確率推定結果のうちの少なくとも1つ;又は
前記デコーディング対象オーディオ又は画像の前記再構築済みオーディオ又は画像
のうちの少なくとも1つに基づいて、前記デコーディング対象オーディオ又は画像のロスレスエントロピー推定の確率推定結果を取得する段階;
前記デコーディング対象オーディオ又は画像の前記ロスレスエントロピー推定の前記確率推定結果に基づいて、前記ロスレスデコーディング済みビットストリームに対してエントロピーデコーディングを実行して、前記デコーディング対象オーディオ又は画像の残差画像を取得する段階;及び
前記デコーディング対象オーディオ又は画像の前記再構築済みオーディオ又は画像の対応するサンプル、及び、前記デコーディング対象オーディオ又は画像の前記残差画像に対して総和を実行して、前記デコーディング対象オーディオ又は画像のロスレス再構築済みオーディオ又は画像を取得する段階
を備える、請求項9から13のいずれか一項に記載の方法。
【請求項15】
前記第1デコーディング済み特徴マップが前記デコーディングネットワークの入力であるとき、前記第1デコーディング済み特徴マップにおけるサンプルの画素値及び前記第1エントロピー推定によって出力される平均が加算され、前記第1デコーディング済み特徴マップが取得される、請求項9から14のいずれか一項に記載の方法。
【請求項16】
請求項1から8のいずれか一項に記載の方法を実行するように構成されている処理回路を備えるエンコーダ。
【請求項17】
請求項9から15のいずれか一項に記載の方法を実行するように構成されている処理回路を備えるデコーダ。
【請求項18】
コンピュータに、請求項1から15のいずれか一項に記載の方法を実行させるためのコンピュータプログラム。
【請求項19】
エンコーダであって、
1又は複数のプロセッサ;及び
前記1又は複数のプロセッサに結合され、前記1又は複数のプロセッサによって実行されるプログラムを記憶する非一時的コンピュータ可読記憶媒体
を備え、前記プログラムが前記1又は複数のプロセッサによって実行されるとき、前記エンコーダは、請求項1から8のいずれか一項に記載の方法を実行することが可能である、
エンコーダ。
【請求項20】
デコーダであって、
1又は複数のプロセッサ;及び
前記1又は複数のプロセッサに結合され、前記1又は複数のプロセッサによって実行されるプログラムを記憶する非一時的コンピュータ可読記憶媒体
を備え、前記プログラムが前記1又は複数のプロセッサによって実行されるとき、前記デコーダは、請求項9から15のいずれか一項に記載の方法を実行することが可能である、
デコーダ。
【請求項21】
エンコーダであって、
1又は複数のプロセッサ;及び
前記1又は複数のプロセッサに結合され、前記1又は複数のプロセッサによって実行されるプログラムを記憶する非一時的コンピュータ可読記憶媒体
を備え、前記プログラムが前記1又は複数のプロセッサによって実行されるとき、前記エンコーダは、請求項1から8のいずれか一項に記載の方法を実行することが可能である、
エンコーダ。
【請求項22】
請求項1から15のいずれか一項に記載の方法を実行するように構成されている処理回路を備える画像プロセッサ。
【請求項23】
プログラムコードを備える非一時的コンピュータ可読記憶媒体であって、前記プログラムコードは、コンピュータデバイスによって実行されるとき、請求項1から15のいずれか一項に記載の方法を実行するために使用される、非一時的コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本願は、参照によって全体が本明細書に組み込まれる、2021年2月25日に中国国家知識産権局に出願された、「階層的オーディオ/ビデオ又は画像圧縮法及び装置」と題する、中国特許出願第202110212042.1号に対する優先権を主張する。
【0002】
本発明の実施形態は、人工知能(AI)ベースのオーディオ/ビデオ又は画像圧縮技術の分野、特に、階層的オーディオ/ビデオ又は画像圧縮法及び装置に関する。
【背景技術】
【0003】
オーディオ/ビデオ又は画像コーディング(ビデオエンコーディング及びデコーディング)がデジタルオーディオ/ビデオ又は画像の用途において広く使用されている(デジタルビデオブロードキャスティング、インターネット及びモバイルネットワーク上のオーディオ/ビデオ又は画像伝送、オーディオ/ビデオチャット及びオーディオ/ビデオ会議などのリアルタイムセッション用途、DVD及びブルーレイディスク、オーディオ/ビデオ又は画像コンテンツキャプチャ及び編集システム、及び、ポータブルカメラのセキュリティ用途など)。
【0004】
ビデオが短いときでも、大量のオーディオ/ビデオデータが描写される必要がある。これにより、限定された帯域幅容量のネットワーク上で送信する、又は別の方式でデータを送信する必要があるとき、困難が生じ得る。したがって、オーディオ/ビデオ又は画像データは通常、現代の遠隔通信ネットワーク上で送信される前に圧縮される必要がある。メモリリソースは限定され得る。したがって、オーディオ/ビデオがストレージデバイス上で記憶されるとき、オーディオ/ビデオ又は画像のサイズも問題になり得る。オーディオ/ビデオ又は画像圧縮デバイスは通常、伝送又は記憶前に、ソース側でソフトウェア及び/又はハードウェアを使用して、ビデオデータをエンコーディングする。これにより、デジタルオーディオ/ビデオ又は画像を表すために必要なデータの量が低減する。次に、圧縮されたデータがデスティネーション側上のビデオ展開デバイスによって受信される。限定されたネットワークリソース、及び、より高いビデオ品質に対する要件の増加に起因して、圧縮及び展開技術が改善される必要がある。改善された技術において、オーディオ及び画像品質への影響を小さくして、圧縮率を増加させることができる。
【0005】
近年、オーディオ/ビデオ又は画像コーディング分野におけるディープラーニングの用途が徐々に流行している。例えば、Googleは、CLIC(Challenge on Learned Image Compression)をテーマとしたコンペティションをCVPR会議で例年開催している。CLICは、ディープニューラルネットワークを使用して画像圧縮効率を改善することに焦点を当てている。2020年、ビデオ又は画像の課題カテゴリがCLICに更に追加された。コンペティション方式の性能評価に基づいて、現在のディープラーニング技術ベースの画像コーディング方式の包括的な圧縮効率は、最新世代のビデオ及び画像コーディング規格:VVC(バーサタイルビデオコーディング)と同等である。加えて、当該解決手段は、ユーザが知覚する品質を改善するのに独自の長所を有する。
【0006】
VVCのビデオ規格の制定は2020年6月に完了した。規格は、圧縮効率を著しく改善し得るほぼすべての技術的アルゴリズムをカバーする。したがって、従来の信号処理手段に基づいて、新しい圧縮コーディングアルゴリズムの研究における大きい技術的なブレークスルーを実現することは難しい。画像圧縮のモジュールがマニュアル設計を通じて最適化される従来の画像アルゴリズムと異なり、エンドツーエンドのAIベース画像圧縮は、全体として最適化される。したがって、AIベースの画像圧縮方式は、より良い圧縮効果を有する。変分オートエンコーダ(Variational Autoencoder, AE)方法は、現在のAIベースのロッシー画像圧縮技術の主流の技術的解決手段である。現在の主流の技術的解決手段において、モデル圧縮品質が固定モデルの高ビットレートにおいて安定する傾向があるというAE限界問題がある。AE限界問題は、コンピューティング能力を増加させることによって軽減できるが、高いコンピューティング能力の問題が生じる。
【発明の概要】
【0007】
本願は、高ビットレートにおいてAE限界を突破し、低ビットレートで圧縮品質を確実にしつつモデルのコンピューティング能力及びランタイムを低減するための階層的オーディオ/ビデオ又は画像圧縮法及び装置を提供する。
【0008】
第1態様によれば、オーディオ/ビデオ又は画像エンコーディング方法が提供され、これは、エンコーディング対象オーディオ又は画像がエンコーディングネットワークを通過することを可能にして、エンコーディング対象オーディオ又は画像の第1出力特徴マップ及びエンコーディング対象オーディオ又は画像の第2出力特徴マップを取得する段階;第1出力特徴マップを丸めて、エンコーディング対象オーディオ又は画像の第1丸め特徴マップを取得する段階;第2出力特徴マップを丸めてエンコーディング対象オーディオ又は画像の第2丸め特徴マップを取得する段階;第2エントロピー推定の確率推定結果に基づいて第2丸め特徴マップのエントロピーエンコーディングを実行して第2エンコーディング済みビットストリームを取得する段階;第2丸め特徴マップ及び/又は第2エントロピー推定の確率推定結果に基づいて、第1エントロピー推定の確率推定を実行する段階;及び、第1エントロピー推定の確率推定結果に基づいて、第1丸め特徴マップに対してエントロピーエンコーディングを実行し、第1エンコーディング済みビットストリームを取得する段階を備える。
【0009】
前述の技術的解決手段において、第1エントロピー推定の確率推定が、第2丸め特徴マップ、及び/又は、第2エントロピー推定の確率推定結果に基づいて実行され、その結果、異なるネットワーク間の信号相関が利用される。このように、オーディオ又は画像圧縮性能を改善できる。
【0010】
前述の技術的解決手段において、ナイキストサンプリング理論に従って、高周波数信号は、より小さい受容野を必要として、低周波数信号は、より大きい受容野を必要とする。エンコーディングネットワークにおけるより浅いネットワークに対応する第1エンコーディングネットワークは、小さい受容野を有する。これにより、高周波数情報のキャプチャを容易にする。エンコーディングネットワークにおけるディープネットワークに対応するエンコーディング対象信号は、第1エンコーディングネットワーク及び第2エンコーディングネットワークを通過し、大きい受容野を有する。これにより低周波数信号のキャプチャを容易にする。高周波数情報及び低周波数情報は、階層的方式で送信され、高周波数情報の計算は、浅いネットワークに対してのみ実行される。これによりコンピューティング能力を低減できる。
【0011】
前述の技術的解決手段において、丸め操作は、切り下げ操作、四捨五入操作、又は切り上げ操作を含み得る。
【0012】
前述の技術的解決手段において、丸め特徴マップにおける各点の確率を推定するためにエントロピー推定が実行され、それにより、モデルの圧縮ビットレートを推定する。
【0013】
前述の技術的解決手段において、エントロピーエンコーディング方式は、可変長エンコーディング方式及び算術エンコーディング方式を含むが、これらに限定されるものではない。可変長エンコーディング方式は、指数ゴロムエンコーディング(Exponential Golomb Codes)及びコンテキスト適応可変長エンコーディング(CAVLC)を含み得る。算術エンコーディング方式はコンテキスト適応型バイナリ算術エンコーディング(CABAC)を含み得る。
【0014】
可能な実装において、方法は更に、エンコーディング対象オーディオ又は画像がエンコーディングネットワークを通過することを可能にして、エンコーディング対象オーディオ又は画像の第3出力特徴マップを取得し、第3出力特徴マップを丸めてエンコーディング対象オーディオ又は画像の第3丸め特徴マップを取得する段階;及び、第3エントロピー推定の確率推定結果に基づいて、第3丸め特徴マップに対してエントロピーエンコーディングを実行し、第3エンコーディング済みビットストリームを取得する段階を備える。
【0015】
可能な実装において、第3エントロピー推定結果及び/又はエンコーディング対象オーディオ又は画像の第3丸め特徴マップは、第2エントロピー推定の入力情報である。
【0016】
可能な実装において、方法は更に、
エンコーディング対象オーディオ又は画像がエンコーディングネットワークを通過することを可能にして、エンコーディング対象オーディオ又は画像の第K出力特徴マップを取得し、第K出力特徴マップを丸めてエンコーディング対象オーディオ又は画像の第k丸め特徴マップを取得する段階、ここでkは3より大きい整数である、
を備える。
【0017】
前述の技術的解決手段において、第k丸め特徴マップ及び/又は第kエントロピー推定結果は、第nエントロピー推定の入力情報であり、ここで、nはk以下の整数である。
【0018】
可能な実装において、方法は更に、丸め特徴マップのうちの少なくとも1つをエンコーディング対象オーディオ又は画像のデコーディングネットワークの入力として使用し、丸め特徴マップのうちの少なくとも1つがデコーディングネットワークを通過することを可能にしてエンコーディング対象オーディオ又は画像の再構築済みオーディオ又は画像を取得する段階;エンコーディング対象オーディオ又は画像の対応するサンプル及び再構築済みオーディオ又は画像の間の差を計算してエンコーディング対象オーディオ又は画像の残差画像を取得する段階;及び、(1)エントロピー推定結果の任意の1又は複数;(2)丸め特徴マップの任意の1又は複数;又は(3)再構築済みオーディオ又は画像の3タイプの情報のうちの少なくとも1つに基づいて、デコーディング対象オーディオ又は画像のロスレスエントロピー推定の確率推定を取得する段階;及び、ロスレスエントロピー推定結果に基づいて、残差画像に対してエントロピーエンコーディングを実行して、エンコーディング対象オーディオ又は画像のロスレスエンコーディング済みビットストリームを取得する段階を備える。
【0019】
可能な実装において、エンコーディングネットワークのいずれか1つが1又は複数の畳み込みネットワークである。
【0020】
可能な実装において、第rのエントロピー推定の確率推定結果が、第rの丸め特徴マップの平均及び分散情報として出力される。
【0021】
可能な実装において、
第1出力特徴マップを丸めて、エンコーディング対象オーディオ又は画像の第1丸め特徴マップを取得する段階の前に、方法は更に、第1出力特徴マップにおけるサンプルの画素値及び第1エントロピー推定によって出力された平均を減算し、第1オフセット特徴マップを取得する段階を備え;第1出力特徴マップを丸めて、エンコーディング対象オーディオ又は画像の第1丸め特徴マップを取得する段階は、第1オフセット特徴マップを丸め、エンコーディング対象オーディオ又は画像の第1丸め特徴マップを取得する段階を含む。
【0022】
前述の可能な実装は代替的に、任意の丸め特徴マップを取得するために使用され得ることが理解されるべきである。
【0023】
前述の画像圧縮方法は、ニューラルネットワークの訓練ステージにおいて使用され得るか、又は、ニューラルネットワークの推論ステージにおいて使用され得ると理解されるべきである。これは、本願において具体的に限定されない。
【0024】
エンコーディング対象オーディオ又は画像は、エンコーディングネットワークに対する操作を通じて特徴空間に変換され、層1、2、...、nなどの異なる層又はそれらの複数層の特徴は、特徴空間において、複数のエンコーディングネットワークに対応する複数の出力特徴マップから、圧縮のために抽出されると理解されるべきである。層1、2、...、nの特徴的な周波数は、順次に減少する。加えて、圧縮に使用される特徴層の数は可変であり、各層における特徴チャネルの数は可変であり、動的圧縮調節機能を実現する。
【0025】
第2態様によれば、デコーディング対象オーディオ又は画像の第1デコーディング対象ビットストリームを取得する段階;デコーディング対象オーディオ又は画像の第2デコーディング対象ビットストリームを取得する段階;デコーディング対象オーディオ又は画像の第2エントロピー推定の確率推定結果に基づいて、デコーディング済み画像の第2デコーディング済みビットストリームに対してエントロピーデコーディングを実行して、デコーディング対象オーディオ又は画像の第2デコーディング済み特徴マップを取得する段階;第2特徴マップ及び/又は第2エントロピー推定の確率推定結果に基づいて、第1エントロピー推定の確率推定を実行して、第1エントロピー推定の確率推定結果を取得する段階;第1エントロピー推定の確率推定結果に基づいて、第1デコーディング済みビットストリームに対してエントロピーデコーディングを実行して、デコーディング対象オーディオ又は画像の第1デコーディング済み特徴マップを取得する段階;及び第1デコーディング済み特徴マップ及び/又は第2デコーディング済み特徴マップをデコーディングネットワークの入力として使用することによって、デコーディング対象オーディオ又は画像の再構築済みオーディオ又は画像を出力する段階を備えるオーディオ又は画像デコーディング方法が提供される。
【0026】
前述の技術的解決手段において、第1エントロピー推定の確率推定は、第2デコーディング済み特徴マップ、及び/又は、第2エントロピー推定の確率推定に基づいて実行され、その結果、特徴空間における異なる層間の信号相関が利用される。このように、画像圧縮性能を改善できる。
【0027】
前述の技術的解決手段において、デコーディング済み特徴マップにおける各点の確率を推定するために、デコーディング中にエントロピー推定が実行され、それにより、モデルの圧縮ビットレートを推定する。
【0028】
前述の技術的解決手段において、エントロピーデコーディング方式は、可変長デコーディング方式及び算術デコーディング方式を含むが、これらに限定されるものではない。可変長デコーディング方式は、指数ゴロムデコーディング(Exponential Golomb Codes)及びコンテキスト適応可変長デコーディング(CAVLC)を含み得る。算術デコーディング方式は、コンテキスト適応型バイナリ算術デコーディング(CABAC)を含み得る。
【0029】
可能な実装において、方法は更に、デコーディング対象オーディオ又は画像の第3デコーディング対象ビットストリームを取得する段階;デコーディング対象オーディオ又は画像の第3エントロピー推定の確率推定結果に基づいて第3デコーディング対象ビットストリームに対してエントロピーデコーディングを実行して、デコーディング対象オーディオ又は画像の第3デコーディング済み特徴マップを取得する段階;及び、第3デコーディング済み特徴マップ及び/又は第3エントロピー推定の確率推定結果に基づいて、デコーディング対象オーディオ又は画像の第2エントロピー推定の確率推定を実行する段階を備える。デコーディング対象オーディオ又は画像の再構築済みオーディオ又は画像を出力する段階は、具体的には、デコーディングネットワークが、第1デコーディング済み特徴マップ、第2デコーディング済み特徴マップ、及び第3デコーディング済み特徴マップのうちの少なくとも1つをデコーディングネットワークの入力として使用することによって、デコーディング対象オーディオ又は画像の再構築済みオーディオ又は画像を出力する段階を含む。
【0030】
可能な実装において、第2エントロピー推定の確率推定が、第3デコーディング済み特徴マップ及び/又は第3エントロピー推定の確率推定結果に基づいて、デコーディング対象オーディオ又は画像に対して実行される。
【0031】
可能な実装において、方法は更に、デコーディング対象オーディオ又は画像の第mデコーディング対象ビットストリームを取得する段階;及びデコーディング対象オーディオ又は画像の第mエントロピー推定の確率推定結果に基づいて、第mデコーディング対象ビットストリームに対してエントロピーデコーディングを実行して、デコーディング対象オーディオ又は画像の第mデコーディング済み特徴マップを取得する段階、ここで、mは3より大きい整数である、を備える。
【0032】
前述の可能な実装において、第mデコーディング済み特徴マップは第tエントロピー推定の入力情報であり、tはm以下の整数である。
【0033】
可能な実装において、方法は更に、デコーディング対象オーディオ又は画像のロスレスデコーディング済みビットストリームを取得する段階、及び、(1)デコーディング済み特徴マップのうちの少なくとも1つ;(2)エントロピー推定の確率推定結果のうちの少なくとも1つ;又は(3)デコーディング対象オーディオ又は画像の再構築済みオーディオ又は画像の3タイプの情報のうちの少なくとも1つに基づいて、デコーディング対象オーディオ又は画像のロスレスエントロピー推定の確率推定結果を取得する段階;及び、デコーディング対象オーディオ又は画像のロスレスエントロピー推定の確率推定結果に基づいて、ロスレスデコーディング済みビットストリームに対してエントロピーデコーディングを実行して、デコーディング対象オーディオ又は画像の残差画像を取得する段階、及び、デコーディング対象オーディオ又は画像の再構築済みオーディオ又は画像の対応するサンプル及びデコーディング対象オーディオ又は画像の残差画像に対して総和を実行して、デコーディング対象オーディオ又は画像のロスレス再構築済みオーディオ又は画像を取得する段階を備える。
【0034】
可能な実装において、方法は更に、第1デコーディング済み特徴マップがデコーディングネットワークの入力であるとき、第1デコーディング済み特徴マップにおけるサンプルの画素値及び第1エントロピー推定によって出力される平均を加算して第1デコーディング済み特徴マップを取得する段階を備える。
【0035】
前述の可能な実装は代替的に、任意のデコーディング済み特徴マップを取得するために使用され得ると理解されるべきである。
【0036】
前述の画像圧縮方法は、ニューラルネットワークの訓練ステージにおいて使用され得るか、又は、ニューラルネットワークの推論ステージにおいて使用され得ると理解されるべきである。これは、本願において具体的に限定されない。
【0037】
階層的デコーディング方式が使用される。したがって、異なる周波数コンポーネントの特徴情報が異なる層から抽出され、その結果、異なる層におけるエントロピーデコーディングが、よりターゲットを絞った効果的な方式で実行される。これは、信号圧縮及びエンコーディング性能を改善することを助ける。加えて、層間特徴信号の間の相関が利用される。これはまた、エントロピー推定の実装を容易にする。これら2つのファクタに基づいて、低ビットレートで、すなわち、再構築及び出力が、いくつかの階層的デコーディング済み特徴のみを使用することによって実行されるとき、圧縮品質を確実にできる。同様に、これら2つのファクタに基づいて、高ビットレートで、すなわち、再構築及び出力がより階層的なデコーディング済み特徴を使用することによって実行されるとき、AE限界を突破するために圧縮品質が更に改善され得る。階層的デコーディング方式を実際の要件に従って使用できるように階層的構造が使用される。デコーディングネットワークの浅い出力が使用されるとき、デコーディング済み特徴を取得するために必要であるデコーディングネットワークにおけるネットワーク層の数がより小さく、その結果、モデルのコンピューティング能力及びランタイムが低減される。
【0038】
第3態様によれば、オーディオ又は画像圧縮処理装置が提供され、これは、エンコーディングネットワークに対する操作を通じてエンコーディング対象オーディオ又は画像を特徴空間に変換し、特徴空間における層1、2、...、及びNなどの異なる層又はそれらの複数層の特徴を、複数のエンコーディングネットワークに対応する複数の出力特徴マップから、圧縮のために抽出する(ここで、層1、2、...、及びnの特徴的な周波数は、順次減少し、圧縮に使用される特徴層の数は可変であり、及び、各層における特徴チャネルの数は可変であり、動的圧縮調節機能を実現する)ように構成されているエンコーディングネットワークモジュール;出力特徴マップにおける各点を、後のエンコーディングのために整数に丸めるように構成されている丸めモジュール;モデルの圧縮ビットレートを推定するように、丸め特徴マップにおける各点の確率を推定するように構成されているエントロピー推定ネットワークモジュール;及び、エントロピー推定モデルによって取得される確率分布に基づいて、複数の丸め特徴マップに対してエントロピーエンコーディングを実行し、複数のエンコーディング済みビットストリームを取得する(これにより、出力特徴のエンコーディング冗長性を低減し、画像圧縮中に送信されるデータの量を更に低減する);及びエンコーディング済みビットストリームをデコーディングしてデコーディング済み特徴マップを取得するように構成されているエントロピーエンコーディング/デコーディングモジュール;及び、デコーディング済み特徴マップに対して逆変換を実行して、デコーディング済み特徴マップを解析してオーディオ又は画像にするように構成されているデコーディングネットワークモジュールを備える。
【0039】
エンコーディングネットワークモジュール、丸めモジュール、エントロピー推定ネットワークモジュール、エントロピーエンコーディング/デコーディングモジュール、及びデコーディングネットワークモジュールによって実装される更なる機能については、第1態様、第2態様、又は第1態様又は第2態様の実装のいずれか1つを参照されたい。ここでは、詳細について改めて説明しない。
【0040】
第4態様によれば、本願は、第1態様又は第1態様の実装のいずれか1つによる方法を実行するように構成されている処理回路を備えるエンコーダを提供する。
【0041】
第5態様によれば、本願は、第2態様又は第2態様の実装のいずれか1つによる方法を実行するように構成されている処理回路を備えるデコーダを提供する。
【0042】
第6態様によれば、本願は、プログラムコードを備えるコンピュータプログラム製品を提供する。コンピュータ又はプロセッサ上で実行されるとき、プログラムコードは、第1態様又は第1態様の実装のいずれか1つ、又は、第2態様又は第2態様の実装のいずれか1つによる方法を実行するために使用される。
【0043】
第7態様によれば、本願は、1又は複数のプロセッサ;及び、プロセッサに結合され、プロセッサによって実行されるプログラムを記憶する非一時的コンピュータ可読記憶媒体を備えるエンコーダを提供し、プログラムがプロセッサによって実行されるとき、デコーダは、第1態様又は第1態様の実装のいずれか1つによる方法を実行することが可能である。
【0044】
第8態様によれば、本願は、1又は複数のプロセッサ;及び、プロセッサに結合され、プロセッサによって実行されるプログラムを記憶する非一時的コンピュータ可読記憶媒体を備えるデコーダを提供し、プログラムがプロセッサによって実行されるとき、エンコーダは、第2態様又は第2態様の実装のいずれか1つによる方法を実行することが可能である。
【0045】
第9態様によれば、本願は、プログラムコードを含む非一時的コンピュータ可読記憶媒体を提供する。コンピュータデバイスによって実行されるとき、プログラムコードは、第1態様又は第1態様の実装のいずれか1つ、又は、第2態様又は第2態様の実装のいずれか1つによる方法を実行するために使用される。
【0046】
第10態様によれば、本発明は、第1態様又は第1態様の実装のいずれか1つによる方法の実施形態における動作を実装する機能を有するエンコーディング装置に関する。この機能は、ハードウェアにより実装されてよく、又は、対応するソフトウェアを実行するハードウェアにより実装されてよい。このハードウェア又はソフトウェアは、この機能に対応する1又は複数のモジュールを含む。可能な設計において、エンコーディング装置は、多層畳み込み演算を通じて生画像を特徴空間に変換し、特徴空間において、層1、2、...、及びn又はそれらの複数層などの異なる層の特徴を圧縮のために抽出する(ここで、層1、2、...、nの特徴的な周波数は、順次に減少し、圧縮に使用される特徴層の数は可変であり、各層における特徴チャネルの数は可変であり、動的圧縮調節機能を実現する)ように構成されているエンコーディングネットワークモジュール;モデルの圧縮ビットレートを推定するように、後のエンコーディングのために、出力特徴を整数に丸めるように構成されている丸めモジュール;丸めを通じて取得される丸め特徴マップにおける各点の確率を推定するように構成されているエントロピー推定ネットワークモジュール;及び、エントロピー推定モデルによって取得される確率分布に基づいて、丸め特徴マップに対してエントロピーエンコーディングを実行し、出力特徴のエンコーディング冗長性を低減し、画像圧縮中に送信されるデータの量を更に低減するように構成されているエントロピーエンコーディングモジュールを備える。これらのモジュールは、第1態様又は第1態様の実装のいずれか1つによる方法例における対応する機能を実行し得る。詳細については、方法例の詳細な説明を参照されたい。ここでは、詳細について改めて説明しない。
【0047】
第10態様によれば、本発明は、第2態様又は第2態様の実装のいずれか1つによる方法の実施形態における挙動を実装する機能を有するデコーディング装置に関する。この機能は、ハードウェアにより実装されてよく、又は、対応するソフトウェアを実行するハードウェアにより実装されてよい。このハードウェア又はソフトウェアは、この機能に対応する1又は複数のモジュールを含む。可能な設計において、デコーディング装置は、モデルの圧縮ビットレートを推定するように、デコーディング済み特徴マップにおける各点の確率を推定するように構成されているエントロピー推定ネットワークモジュール;エントロピー推定モデルによって取得される確率分布に基づいて、デコーディング対象ビットストリームに対してエントロピーデコーディングを実行し、デコーディング済み特徴マップを取得するように構成されているエントロピーデコーディングモジュール(これにより、出力特徴のエンコーディング冗長性を低減し、画像圧縮中に送信されるデータの量を更に低減する);及び、圧縮された特徴に対して逆変換を実行し、デコーディング済み特徴マップを解析してオーディオ又は画像にするように構成されているデコーディングネットワークモジュールを備える。これらのモジュールは、第2態様又は第2態様の実装のいずれか1つによる方法例における対応する機能を実行し得る。詳細については、方法例の詳細な説明を参照されたい。ここでは、詳細について改めて説明しない。
【0048】
従来の主流のエンドツーエンドオーディオ又は画像コーディング方式において、モデル圧縮品質が固定モデルの高ビットレートにおいて安定する傾向があるというAE限界問題がある。AE限界問題は、コンピューティング能力を増加させることによって軽減できるが、高いコンピューティング能力の問題が生じる。本願において、特徴空間における異なる層(異なる特徴層)における特徴信号の伝送が加算され、異なる層における特徴信号の間の相関が利用される。これにより、エンコーディング品質が改善し、AE限界を突破する。高い特徴周波数を有する特徴層に対応するエンコーディング又はデコーディングネットワークは低いコンピューティング能力を有し、その結果、複雑性が低減される。エンコーディング品質についての実際の要件によれば、特徴を圧縮するための層及びチャネルの数は調節され、現在のマルチビットレートモデルに適合し、単一モデルにおける複数のビットレートを実装し得る。
【0049】
1又は複数の実施形態が、添付図面及び以下の明細書において詳細に説明される。他の特徴、目的、及び長所は、明細書、添付図面、及び請求項において明確である。
【図面の簡単な説明】
【0050】
以下で、本願の実施形態で使用される添付図面を説明する。
【0051】
図1A】本発明の実施形態を実装するためのオーディオ/ビデオ又は画像デコーディングシステムの例示的なブロック図であり、システムは、ニューラルネットワークを使用することによって、ビデオ又は画像をエンコーディング又はデコーディングする。
【0052】
図1B】本発明の実施形態を実装するためのオーディオ/ビデオ又は画像デコーディングシステムの別の例示的なブロック図であり、ビデオ又は画像エンコーダ、及び/又は、ビデオ又は画像デコーダは、ニューラルネットワークを使用することによって、ビデオ又は画像をエンコーディング又はデコーディングする。
【0053】
図1C】本発明の実施形態を実装するためのオーディオ/ビデオ又は画像デコーディングデバイスの概略ブロック図である。
【0054】
図1D】本発明の実施形態を実装するためのオーディオ/ビデオ又は画像デコーディング装置の概略ブロック図である。
【0055】
図2】本発明の実施形態を実装するためのエンコーダシステムの例示的なブロック図である。
【0056】
図3A】本発明の実施形態を実装するためのオーディオ又は画像エンコーダのエンコーディングネットワークの例示的なフレームワークを示す。
【0057】
図3B】本発明の実施形態を実装するためのオーディオ又は画像エンコーダのエンコーディングネットワークの入力/出力構造を示す。
【0058】
図4】本発明の実施形態を実装するためのエンコーディングサブネットワークの例示的な構造の図である。
【0059】
図5】エンコーディングネットワークの例示的な図である。
【0060】
図6A】は、エントロピー推定ユニットの例示的なブロック図である。
図6B】は、エントロピー推定ユニットの例示的なブロック図である。
【0061】
図7A】エントロピー推定の入力の例示的なブロック図である。
図7B】エントロピー推定の入力の例示的なブロック図である。
図7C】エントロピー推定の入力の例示的なブロック図である。
図7D】エントロピー推定の入力の例示的なブロック図である。
図7E】エントロピー推定の入力の例示的なブロック図である。
図7F】エントロピー推定の入力の例示的なブロック図である。
図7G】エントロピー推定の入力の例示的なブロック図である。
図7H】エントロピー推定の入力の例示的なブロック図である。
図7I】エントロピー推定の入力の例示的なブロック図である。
図7J】エントロピー推定の入力の例示的なブロック図である。
図7K】エントロピー推定の入力の例示的なブロック図である。
図7L】エントロピー推定の入力の例示的なブロック図である。
図7M】エントロピー推定の入力の例示的なブロック図である。
【0062】
図8】例示的なエントロピー推定ネットワークを示す。
【0063】
図9】本発明の実施形態を実装するためのデコーダシステムの概略ブロック図である。
【0064】
図10A】デコーディングのためのエントロピー推定ユニットのフレームワークの概略図である。
図10B】デコーディングのためのエントロピー推定ユニットのフレームワークの概略図である。
【0065】
図11】デコーディングネットワークの概略ブロック図である。
【0066】
図12】デコーディングネットワークの入力構造の概略図である。
【0067】
図13】本願の実施形態による、デコーディングネットワークの例示的な構造の図である。
【0068】
図14A】本願の実施形態による例示的な構造を示す。
図14B】本願の実施形態による例示的な構造を示す。
図14C】本願の実施形態による例示的な構造を示す。
【0069】
図15】本願の実施形態による例示的なシステムアーキテクチャ(ロスレス)を示す。
【0070】
図16】本願の実施形態による例示的なシステムアーキテクチャを示す。
【0071】
図17】本願の実施形態による例示的なシステムアーキテクチャ(クラウド用途)を示す。
【0072】
図18A】本願の実施形態による例示的なシステムアーキテクチャを示す。
図18B】本願の実施形態による例示的なシステムアーキテクチャを示す。
【0073】
図19】本願の実施形態による例示的なシステムアーキテクチャ(オーディオ)を示す。
【発明を実施するための形態】
【0074】
本願の実施形態における「第1」及び「第2」などの用語は、区別及び説明のために使用されるに過ぎず、相対的な重要性の指示又は示唆、又は、順序の指示又は示唆として解釈されるべきでない。加えて、「含む」、「備える」という用語、及びそれらの任意の変形は、非包括的な包含、例えば、一連の段階又はユニットの包含をカバーすることを意図している。方法、システム、製品又はデバイスは必ずしも、明確に列挙された段階又はユニットに限定されるものではなく、明確に列挙されていない、プロセス、方法、製品又はデバイスに固有である他の段階又はユニットを含み得る。
【0075】
本願において、「少なくとも1つ(項目)」は、1又は複数を意味し、「複数の」は、2又はより多いことを意味することが理解されるべきである。「及び/又は」という用語は、関連付けられた対象間の関連関係を説明し、3つの関係が存在し得ることを表す。例えば、「A及び/又はB」は、以下の3つのケースを表し得る:Aのみが存在する、Bのみが存在する、及び、A及びBの両方が存在する、ここで、A及びBは単数又は複数であり得る。文字「/」は通常、関連付けられた対象の間の「又は」の関係を示す。「以下の項目のうちの少なくとも1つ」又はその同様の表現は、項目の1又は複数の任意の組み合わせを含む、項目の任意の組み合わせを示す。例えば、a、b又はcのうちの少なくとも1つは、a、b、c、「a及びb」、「a及びc」、「b及びc」、又は「a、b及びc」を示し得、ここで、a、b、及びcは単数又は複数であり得る。
【0076】
本願の実施形態は、AIベースのオーディオ/ビデオ又は画像圧縮技術を提供し、特に、ニューラルネットワークベースのオーディオ/ビデオ又は画像圧縮技術を提供し、具体的には、エンドツーエンドオーディオ又は画像コーディングシステムを提供する。
【0077】
画像コーディング分野において、「画像(picture)」及び「イメージ(imgage)」という用語は、同義語として使用され得る。画像コーディング(又は通常、コーディングと称される)は2つの部分:画像エンコーディング及び画像デコーディングを含み、ビデオは複数の画像を含み、連続する画像の表現である。オーディオコーディング(又は通常、コーディングと称される)は、2つの部分:オーディオエンコーディング及びオーディオデコーディングを含む。オーディオ又は画像エンコーディングは、ソース側で実行され、通常、生ビデオ画像を処理(例えば圧縮)して、オーディオ又はビデオ画像を表すために必要なデータの量を(より効率的な記憶及び/又は伝送のために)低減することを含む。オーディオ又は画像デコーディングがデスティネーション側で実行され、通常、エンコーダに対する逆処理を実行してオーディオ又は画像を再構築することを含む。実施形態におけるオーディオ又は画像(又は通常、オーディオ又は画像と称される)の「コーディング」は、オーディオ又は画像の「エンコーディング」又は「デコーディング」として理解されるべきである。エンコーディング部分及びデコーディング部分はまた、コーデック(エンコーディング及びデコーディング、CODEC)とまとめて称される。
【0078】
ロスレスオーディオ又は画像コーディングのケースでは、生オーディオ又は画像が再構築され得る。具体的には、再構築済みオーディオ又は画像は生オーディオ又は画像と同一の品質を有する(記憶又は伝送中に伝送損失又は他のデータ損失が生じないと想定する)。従来のロッシー画像コーディングのケースでは、量子化又は同様のものを通じて更なる圧縮が実行され、オーディオ又はビデオ画像を表すために必要なデータの量を低減し、オーディオ又はビデオ画像は、デコーダ側で完全に再構築できない。具体的には、再構築済みオーディオ又はビデオ画像の品質は、生オーディオ又はビデオ画像より低い。
【0079】
本願の実施形態は、ニューラルネットワークの膨大な用途に関する。したがって、理解を容易にするために、以下ではまず、本願の実施形態において使用され得る、ニューラルネットワークの関連する用語及び概念を説明する。
【0080】
(1)ニューラルネットワーク
【0081】
ニューラルネットワークはニューロンを含み得る。ニューロンは、x及び切片1を入力として使用する演算ユニットであり得る。演算ユニットの出力は以下の通りであり得る。
【数1】
(1-1)
【0082】
s=1、2、...、nであり、nは1より大きい自然数であり、Wはxの重みであり、bはニューロンのバイアスである。fはニューロンの活性化関数(activation function)であり、非線形的特徴をニューラルネットワークに導入して、ニューロンにおける入力信号を出力信号に転換するために使用される。活性化関数の出力信号は、次の畳み込み層の入力として使用され得、活性化関数は、シグモイド関数であり得る。ニューラルネットワークは、複数の個別ニューロンを接続することによって取得されるネットワークである。具体的には、ニューロンの出力は別のニューロンの入力であり得る。各ニューロンの入力は、前の層の局所受容野に接続され、局所受容野の特徴を抽出し得る。局所受容野は、複数のニューロンを含む領域であり得る。
【0083】
(2)ディープニューラルネットワーク
【0084】
多層ニューラルネットワークとも称されるディープニューラルネットワーク(deep neural network, DNN)は、複数の隠れ層を含むニューラルネットワークとして理解され得る。DNNは、異なる層の位置に基づいて分割され、DNNにおけるニューラルネットワークは3つのタイプ:入力層、隠れ層、及び出力層に分割され得る。通常、最初の層が入力層であり、最後の層が出力層であり、中間の層はすべて隠れ層である。層は完全に接続されている。具体的には、第i層における任意のニューロンは、第(i+1)層における任意のニューロンに確実に接続されている。
【0085】
DNNは複雑に見えるが、各層の演算は複雑でなく、以下の線形関係の式で単純に表される。
【数2】
ここで、
【数3】
は入力ベクトル、
【数4】
は出力ベクトル、
【数5】
はオフセットベクトル、
【数6】
は重み行列(係数とも称される)、
【数7】
は活性化関数である。各層において、この単純な演算のみが入力ベクトル
【数8】
に対して実行され、出力ベクトル
【数9】
が取得される。DNNは多くの層を含むので、大量の係数
【数10】
及びオフセットベクトル
【数11】
もある。DNNにおけるこれらのパラメータは次のように定義される:係数
【数12】
は一例として使用される。3層DNNにおいて、第2層における第4ニューロンから第3層における第2ニューロンまでの線形係数が
【数13】
として定義されると想定する。上付き文字3は、係数
【数14】
が位置する層を示し、下付き文字は、出力第3層インデックス2及び入力第2層インデックス4に対応する。
【0086】
まとめると、第(L-1)層における第kニューロンから第L層における第jニューロンの係数は
【数15】
として定義される。
【0087】
入力層は
【数16】
パラメータを有しないことに留意されたい。ディープニューラルネットワークにおいて、隠れ層の数が多いほど、ネットワークが現実世界における複雑なケースを記述することが可能となる。理論上、より多くのパラメータを有するモデルは、より高い複雑性及びより大きい「容量」を有し、より複雑な学習タスクを実行し得る。ディープニューラルネットワークの訓練は、重み行列を学習するプロセスであり、訓練の最終目的は、訓練されたディープニューラルネットワークのすべての層の重み行列(多くの層のベクトル
【数17】
を含む重み行列)を取得することである。
【0088】
(3)畳み込みニューラルネットワーク
【0089】
畳み込みニューラルネットワーク(convolutional neuron network, CNN)は、畳み込み構造を有するディープニューラルネットワークである。畳み込みニューラルネットワークは、畳み込み層及びサンプリング副層を含む特徴抽出部を含み、特徴抽出部はフィルタとみなされ得る。畳み込み層は、畳み込みが入力信号に対して実行される、畳み込みニューラルネットワークにおけるニューロン層である。畳み込みニューラルネットワークの畳み込み層において、1つのニューロンは隣接する層におけるいくつかのニューロンのみに接続され得る。1つの畳み込み層は通常、複数の特徴面を含み、各特徴面は、矩形形状に配列されたいくつかのニューロンを含み得る。1つの特徴面におけるニューロンは、重みを共有し、ここでの共有される重みは畳み込みカーネルである。重み共有は、画像情報を抽出する方式が位置と無関係であるものとして理解され得る。畳み込みカーネルは、ランダムサイズの行列の形態で初期化され得る。畳み込みニューラルネットワークの訓練中、畳み込みカーネルは、学習を通じて適切な重みを取得し得る。加えて、重み共有の直接的な利益は、畳み込みニューラルネットワークの層の間の接続が低減され、また、過学習のリスクが低減されることである。
【0090】
(4)リカレントニューラルネットワーク(recurrent neural network, RNN)は、シーケンスデータを処理するために使用される。従来のニューラルネットワークモデルにおいて、入力層から隠れ層、ひいては出力層まで、層は完全に接続されているが、各層のノードは接続されない。この共通のニューラルネットワークは多くの問題を解決することを助けるが、それでも多くの他の問題を解決することができない。例えば、文における次の単語が予測される必要がある場合、前の単語が通常使用される必要がある。なぜなら、文における隣接する単語は、互いに独立でないからである。RNNがリカレントニューラルネットワークと称される理由は、シーケンスの現在の出力が前の出力に関連するからである。具体的な表現形式は以下の通りである。ネットワークは前の情報を記憶し、前の情報を現在の出力の計算に適用する。具体的には、隠れ層におけるノードは互いに接続され、隠れ層の入力は、入力層の出力を含むだけでなく、前の時点の隠れ層の出力も含む。理論上、RNNは任意の長さのシーケンスデータを処理できる。RNNのための訓練は、従来のCNN又はDNNのための訓練と同一である。RNNは、機械が人間のように記憶することを可能にすることを意図している。したがって、RNNの出力は、現在の入力情報及び過去の記憶された情報に依存する必要がある。
【0091】
(5)損失関数
【0092】
ディープニューラルネットワークの訓練中、ディープニューラルネットワークの出力は、可能な限り実際に期待される予測値に近いことが期待されるので、ネットワークの現在の予測値が実際に予想された目標値と比較され得、次に、ニューラルネットワークの各層の重みベクトルが、2つの値の間の差に基づいて更新される(当然、通常は、最初の更新の前に初期化プロセスがあり、具体的には、ディープニューラルネットワークの各層についてパラメータが予め構成される)。例えば、ネットワークの予測値が大きい場合、ディープニューラルネットワークが実際に予想された目標値又は実際に予想された目標値に非常に近い値を予測を通じて取得できるまで、予測値を低減するために重みベクトルが調節される。したがって、「予測値及び目標値の間の差を比較を通じてどのように取得するか」が予め定義される必要がある。これは損失関数(loss function)又は目的関数(objective function)である。損失関数及び目的関数は、予測値及び目標値の間の差を測定するために重要な式である。損失関数は一例として使用される。損失関数のより大きい出力値(損失)はより大きい差を示す。したがって、ディープニューラルネットワークの訓練は、損失を最小化するプロセスである。
【0093】
(6)逆伝播アルゴリズム
【0094】
ニューラルネットワークの訓練中に、初期のニューラルネットワークモデルにおけるパラメータの値を是正するために、誤差逆伝播(back propagation, BP)アルゴリズムが使用され得、その結果、ニューラルネットワークモデルの再構築誤差損失が徐々に小さくなる。具体的には、出力において誤差損失が生じるまで入力信号が前方向へ伝達され、初期のニューラルネットワークモデルにおけるパラメータは、逆伝播誤差損失情報に基づいて更新され、誤差損失を収束させる。逆伝播アルゴリズムは、最適なパラメータ、例えば、ニューラルネットワークモデルの重み行列を取得することを意図する、誤差損失を中心とする逆伝播モーションである。
【0095】
(7)敵対的生成ネットワーク
【0096】
敵対的生成ネットワーク(generative adversarial network, GAN)は、ディープラーニングモデルである。モデルは少なくとも2つのモジュールを含む。一方のモジュールは生成モデル(Generative Model)であり、他方のモジュールは識別モデル(Discriminative Model)である。学習が2つのモジュール間のゲームを通じて実行され、より良い出力が生成される。生成モデル及び識別モデルの両方はニューラルネットワークであり得、具体的には、ディープニューラルネットワーク又は畳み込みニューラルネットワークであり得る。GANの基本原理は、以下の通りである。イメージを生成するためのGANが一例として使用される。2つのネットワーク:G(生成器)及びD(識別器)があると想定する。Gはイメージを生成するためのネットワークである。Gはランダムノイズzを受信し、ノイズに基づいてイメージを生成し、ここで、イメージはG(z)として示される。Dは、イメージが「本物」であるかどうかを判定するための識別ネットワークである。Dの入力パラメータはxであり、ここでxはイメージを示す。出力D(x)は、xが本物のイメージである確率を示す。D(x)の値が1である場合、イメージが100%本物のイメージであることを示す。D(x)の値が0である場合、イメージが本物のイメージであり得ないことを示す。敵対的生成ネットワークの訓練中に、生成ネットワークGの目的は、識別ネットワークDを騙すために可能な限り本物であるイメージを生成することであり、識別ネットワークDの目的は、Gによって生成されたイメージと本物のイメージを区別することである。このように、G及びDは、動的な「ゲーム」プロセス、すなわち、「敵対的生成ネットワーク」における「敵対的プロセス」を構成する。最終的なゲーム結果は以下の通りである。理想状態において、Gは「本物に見える」イメージG(z)を生成し得、Gによって生成されたイメージが本物であるかどうかをDが判定することは難しい。すなわち、D(G(z))=0.5である。このように、優れた生成モデルGが取得され、イメージを生成するために使用され得る。
【0097】
デコーディングシステム10の以下の実施形態において、エンコーダ20及びデコーダ30は、図1A図13に基づいて説明される。
【0098】
図1Aは、例示的なデコーディングシステム10、例えば、本願の技術を使用することが可能であるオーディオ/ビデオ又は画像デコーディングシステム10(又はデコーディングシステム10と称される)の概略ブロック図である。オーディオ/ビデオ又は画像デコーディングシステム10におけるビデオエンコーダ20(又はエンコーダ20と称される)及びオーディオ/ビデオ又は画像デコーダ30(又はデコーダ30と称される)は、本願において説明される例に基づく技術を実行可能であるデバイス又は同様のものを表す。
【0099】
図1Aに示されるように、デコーディングシステム10はソースデバイス12を含む。ソースデバイス12は、エンコーディング済みオーディオ又は画像などの、エンコーディング済みオーディオ又は画像データ21を、エンコーディング済みオーディオ又は画像データ21をデコーディングするように構成されているデスティネーションデバイス14に提供するように構成されている。
【0100】
ソースデバイス12はエンコーダ20を含み、加えて、任意選択的に、オーディオ又は画像ソース16、オーディオ又は画像プリプロセッサなどのプリプロセッサ(又は前処理ユニット)18、通信インタフェース(又は通信ユニット)22を含み得る。
【0101】
オーディオ又は画像ソース16は、現実世界の画像又は同様のものをキャプチャするための任意のタイプのオーディオ又は画像キャプチャデバイス、及び/又は、任意のタイプの画像生成デバイス、例えば、コンピュータアニメーション画像を生成するためのコンピュータグラフィックス処理ユニット、又は、現実世界の画像又はコンピュータ生成画像(例えば、画面コンテンツ、仮想現実(virtual reality, VR)画像、及び/又は、それらの任意の組み合わせ(例えば、拡張現実(augmented reality, AR)画像))を取得及び/又は提供するための任意のタイプのデバイスであり得る、又は、それらを含み得る。オーディオ又は画像ソースは、前述の画像における任意のオーディオ又は画像を記憶するための任意のタイプの内部メモリ又はメモリであり得る。
【0102】
プリプロセッサ(又は前処理ユニット)18によって実行される処理を区別するために、オーディオ又は画像(又は画像データ)17は、生オーディオ又は画像(又は生画像データ)17とも称され得る。
【0103】
プリプロセッサ18は、(生)オーディオ又は画像データ17を受信し、オーディオ又は画像データ17を前処理して前処理済み画像(又は前処理済み画像データ)19を取得するように構成されている。例えば、プリプロセッサ18によって実行される前処理は、トリミング、カラーフォーマット転換(例えばRGBからYCbCrへの転換)、色補正、又はノイズ除去を含み得る。前処理ユニット18は任意選択的なコンポーネントであり得ることを理解できる。
【0104】
オーディオ/ビデオ又は画像エンコーダ(又はエンコーダ)20は、前処理済みオーディオ又は画像データ19を受信し、エンコーディング済みオーディオ又は画像データ21を提供するように構成されている(これは、図2及び同様のものに基づいて下で更に説明される)。
【0105】
ソースデバイス12の通信インタフェース22は、エンコーディング済みオーディオ又は画像データ21を受信し、エンコーディング済みオーディオ又は画像データ21(又は任意の別の処理バージョン)を、記憶又は直接再構築のために、通信チャネル13を通じて、デスティネーションデバイス14又は任意の他のデバイスなどの別のデバイスへ送信するように構成され得る。
【0106】
デスティネーションデバイス14はデコーダ30を含み、加えて、任意選択的に、通信インタフェース(又は通信ユニット)28、ポストプロセッサ(又は後処理ユニット)32、及び表示デバイス34を含み得る。
【0107】
デスティネーションデバイス14の通信インタフェース28は、ソースデバイス12又はストレージデバイスなどの任意の他のソースデバイスから、エンコーディング済みオーディオ又は画像データ21(又は任意の更に処理されたバージョン)を直接受信する(ここで、例えば、ストレージデバイスは、エンコーディング済みオーディオ又は画像データのためのストレージデバイスである);及び、エンコーディング済みオーディオ又は画像データ21をデコーダ30に提供するように構成される。
【0108】
通信インタフェース22及び通信インタフェース28は、ソースデバイス12及びデスティネーションデバイス14の間の直接的な通信リンク、例えば、直接的な有線又は無線接続、又は、有線ネットワーク、無線ネットワークなどの任意のタイプのネットワーク、又は、それらの任意の組み合わせ、又は、任意のタイプのプライベートネットワーク又はパブリックネットワーク又はそれらの任意の組み合わせを通じて、エンコーディング済みオーディオ又は画像データ(又はエンコーディング済みデータ)21を送信又は受信するように構成され得る。
【0109】
例えば、通信インタフェース22は、エンコーディング済みオーディオ又は画像データ21を、パケットなどの適切なフォーマットにカプセル化する、及び/又は、任意のタイプの伝送エンコーディング又は処理を通じてエンコーディング済みオーディオ又は画像データを処理するように構成され得、その結果、処理されたエンコーディング済みオーディオ又は画像データが、通信リンク又は通信ネットワークを通じて送信され得る。
【0110】
通信インタフェース28は、通信インタフェース22に対応し、例えば、送信されたデータを受信し、任意のタイプの対応する伝送デコーディング又は処理及び/又はカプセル解除を通じて、送信されたデータを処理し、エンコーディング済みオーディオ又は画像データ21を取得するように構成され得る。
【0111】
通信インタフェース22及び通信インタフェース28は各々、通信チャネル13に対応し、かつ、ソースデバイス12からデスティネーションデバイス14に向けられた、図1Aにおける矢印によって示される単方向通信インタフェース、又は、双方向通信インタフェースとして構成され得、接続を確立するためのメッセージ又は同様のものを送信及び受信し、通信リンク、及び/又は、エンコーディング済み画像データ及び同様のものの伝送などのデータ伝送に関する任意の他の情報を決定及び交換するように構成され得る。
【0112】
オーディオ/ビデオ又は画像デコーダ(又はデコーダ)30は、エンコーディング済みオーディオ又は画像データ21を受信し、デコーディング済みオーディオ又は画像データ(又はデコーディング済みオーディオ又は画像データ)31を提供するように構成されている(これは、図4及び同様のものに基づいて、下で更に説明される)。
【0113】
ポストプロセッサ32は、デコーディング済みオーディオ又は画像など、デコーディング済みオーディオ又は画像データ(再構築済みオーディオ又は画像データとも称される)31を後処理して、後処理済みオーディオ又は画像などの後処理済みオーディオ又は画像データ33を取得するように構成されている。例えば、後処理ユニット32によって実行される後処理は、カラーフォーマット転換(例えば、YCbCrからRGBへの転換)、色補正、トリミング、リサンプリング、又は、表示デバイス34又は同様のものによって表示されるデコーディング済みオーディオ又は画像データ31を生成するための任意の他の処理を含み得る。
【0114】
表示デバイス34は、後処理済みオーディオ又は画像データ33を受信し、画像をユーザ、閲覧者、又は同様のものに表示するように構成されている。表示デバイス34は、例えば、一体型又は外部ディスプレイ又はモニタなど、再構築済みオーディオ又は画像を表現するための任意のタイプのプレーヤ又はディスプレイであり得る、又はそれらを含み得る。例えば、ディスプレイは、液晶ディスプレイ(liquid crystal display, LCD)、有機発光ダイオード(organic light emitting diode, OLED)ディスプレイ、プラズマディスプレイ、プロジェクタ、マイクロLEDディスプレイ、シリコン上液晶(liquid crystal on silicon, LCoS)ディスプレイ、デジタル光プロセッサ(digital light processor, DLP)、又は、任意の他のタイプのディスプレイを含み得る。
【0115】
デコーディングシステム10は更に訓練エンジン25を含む。訓練エンジン25は、エンコーダ20又はデコーダ30を訓練して処理する(例えば、入力オーディオ、画像、画像領域、又は画像ブロックを処理して、入力オーディオ、画像、画像領域、又は画像ブロックの予測値を生成する)ように構成されている。訓練データはデータベース(図示されない)に記憶され得、訓練エンジン25は、訓練データに基づく訓練を通じてターゲットモデル(例えば、オーディオ又は画像エンコーディング又はデコーディングに使用されるネットワークであり得る)を取得する。訓練データのソースは、本願の本実施形態において限定されるものではないことに留意されたい。例えば、訓練データは、モデル訓練のためにクラウド又は別の場所から取得され得る。
【0116】
図1Aはソースデバイス12及びデスティネーションデバイス14を別個のデバイスとして示すが、デバイスの実施形態は代替的に、ソースデバイス12及びデスティネーションデバイス14の両方を含み得、又は、ソースデバイス12及びデスティネーションデバイス14の両方の機能を含み得、すなわち、ソースデバイス12又は対応する機能及びデスティネーションデバイス14又は対応する機能の両方を含み得る。これらの実施形態において、ソースデバイス12又は対応する機能及びデスティネーションデバイス14又は対応する機能は、同一のハードウェア及び/又はソフトウェア、別個のハードウェア及び/又はソフトウェア、又は、それらの任意の組み合わせを使用することによって実装され得る。
【0117】
説明に基づき、図1Aに示されるソースデバイス12及び/又はデスティネーションデバイス14における異なるユニット又は機能の説明、存在、及び(正確な)分割は、実際のデバイス及び用途に基づいて変動し得る。これは当業者にとって明確である。
【0118】
エンコーダ20(例えばオーディオ/ビデオ又は画像エンコーダ20)、デコーダ30(例えばオーディオ/ビデオ又は画像デコーダ30)、又はエンコーダ20及びデコーダ30の両方は、図1Bに示される処理回路、例えば、1又は複数のマイクロプロセッサ、デジタル信号プロセッサ(digital signal processor, DSP)、特定用途向け集積回路(application-specific integrated circuit, ASIC)、フィールドプログラマブルゲートアレイ(field-programmable gate array, FPGA)、ディスクリートロジック、ハードウェア、オーディオ/ビデオ又は画像エンコーディングのための専用プロセッサ、又はそれらの任意の組み合わせを使用することによって実装され得る。エンコーダ20は、処理回路46を使用することによって実装され得、図2におけるエンコーダ20を参照して説明される様々なモジュール、及び/又は、本明細書において説明される任意の他のエンコーダシステム又はサブシステムを含む。デコーダ30は、処理回路46を使用することによって実装され得、図4におけるデコーダ30を参照して説明される様々なモジュール、及び/又は、本明細書において説明される任意の他のデコーダシステム又はサブシステムを含む。処理回路46は、下で説明される様々な演算を実行するように構成され得る。図7に示されるように、いくつかの技術がソフトウェアにおいて実装される場合、デバイスは、好適な非一時的コンピュータ可読記憶媒体にソフトウェア命令を記憶し、1又は複数のプロセッサを通じて、ハードウェアにおいて命令を実行し、本発明の技術を実行し得る。オーディオ/ビデオ又は画像エンコーダ20及びオーディオ/ビデオ又は画像デコーダ30の1つは、図1Bに示されるように、組み合わされたエンコーダ/デコーダ(encoder/decoder, CODEC)の一部として単一デバイスに統合され得る。
【0119】
ソースデバイス12及びデスティネーションデバイス14は、任意のタイプのハンドヘルドデバイス又は据え置きデバイス、例えば、ノートブックコンピュータ、ラップトップコンピュータ、携帯電話、スマートフォン、タブレット又はタブレットコンピュータ、カメラ、デスクトップコンピュータ、セットトップボックス、テレビ、表示デバイス、デジタルメディアプレーヤ、ビデオゲームコンソール、ビデオストリーミングデバイス(例えば、コンテンツビジネスサーバ又はコンテンツ配信サーバ)、ブロードキャスト受信器デバイス又はブロードキャスト送信器デバイスを含む、様々なデバイスのいずれか1つを含み得、オペレーティングシステムを使用しないことがあり得、又は、任意のタイプのオペレーティングシステムを使用し得る。いくつかのケースでは、ソースデバイス12及びデスティネーションデバイス14は、無線通信のためのコンポーネントを備え得る。したがって、ソースデバイス12及びデスティネーションデバイス14は、無線通信デバイスであり得る。
【0120】
いくつかのケースでは、図1Aに示されるオーディオ/ビデオ又は画像デコーディングシステム10は、例に過ぎない。本願において提供される技術は、オーディオ/ビデオ又は画像エンコーディング設定(例えば、オーディオ/ビデオ又は画像エンコーディング、又はビデオ又は画像デコーディング)に適用可能である。これらの設定は、エンコーディングデバイス及びデコーディングデバイスの間の任意のデータ通信を必ずしも含まない。別の例において、データがローカルメモリから取得され、ネットワークを通じて送信される。オーディオ/ビデオ又は画像エンコーディングデバイスは、データをエンコーディングし、エンコーディング済みデータをメモリに記憶し得、及び/又は、オーディオ/ビデオ又は画像デコーディングデバイスは、データをメモリから取得し、データをデコーディングし得る。いくつかの例において、エンコーディング及びデコーディングは、互いに通信することなくデータをメモリにエンコーディングし、及び/又は、データをメモリから取得してデータをデコーディングするだけであるデバイスによって実行される。
【0121】
図1Bは、例示的な実施形態による、図1Aにおけるオーディオ/ビデオ又は画像エンコーダ20、及び/又は、図1Bにおけるオーディオ/ビデオ又は画像デコーダ30を含むビデオ又は画像デコーディングシステム40の例の概略図である。オーディオ/ビデオ又は画像デコーディングシステム40は、撮像デバイス41、オーディオ/ビデオ又は画像エンコーダ20、オーディオ/ビデオ又は画像デコーダ30(及び/又は、処理回路46を使用することによって実装されるオーディオ/ビデオ又は画像エンコーダ/デコーダ)、アンテナ42、1又は複数のプロセッサ43、1又は複数、内部メモリ44、及び/又は表示デバイス45を含み得る。
【0122】
図1Bに示されるように、撮像デバイス41、アンテナ42、処理回路46、オーディオ/ビデオ又は画像エンコーダ20、オーディオ/ビデオ又は画像デコーダ30、プロセッサ43、内部メモリ44、及び/又は表示デバイス45は互いに通信し得る。異なる例において、オーディオ/ビデオ又は画像デコーディングシステム40は、オーディオ/ビデオ又は画像エンコーダ20のみ、又は、オーディオ/ビデオ又は画像デコーダ30のみを含み得る。
【0123】
いくつかの例において、アンテナ42は、オーディオ/ビデオ又は画像データのエンコーディング済みビットストリームを送信又は受信するように構成され得る。加えて、いくつかの例において、表示デバイス45は、オーディオ/ビデオ又は画像データを表示するように構成され得る。処理回路46は、特定用途向け集積回路(application-specific integrated circuit, ASIC)ロジック、グラフィックス処理ユニット、汎用プロセッサ、又は同様のものを含み得る。オーディオ/ビデオ又は画像デコーディングシステム40はまた、任意選択のプロセッサ43を含み得る。同様に、任意選択のプロセッサ43は、特定用途向け集積回路(application-specific integrated circuit, ASIC)ロジック、グラフィックス処理ユニット、汎用プロセッサ、又は同様のものを含み得る。加えて、内部メモリ44は、任意のタイプのメモリ、例えば、揮発性メモリ(例えば、スタティックランダムアクセスメモリ(static random access memory, SRAM)又はダイナミックランダムアクセスメモリ(dynamic random access memory, DRAM))又は不揮発性メモリ(例えば、フラッシュメモリ)であり得る。非制限的な例において、内部メモリ44は、キャッシュメモリを使用することによって実装され得る。別の例において、処理回路46は、画像バッファ又は同様のものを実装するためのメモリ(例えばキャッシュ)を含み得る。
【0124】
いくつかの例において、論理回路を使用することによって実装されるオーディオ/ビデオ又は画像エンコーダ20は、オーディオ又は画像バッファ(例えば処理回路46又は内部メモリ44を使用することによって実装される)及びオーディオ又はグラフィックス処理ユニット(例えば、処理回路46を使用することによって実装される)を含み得る。オーディオ又はグラフィックス処理ユニットは、画像バッファに通信可能に結合され得る。オーディオ又はグラフィックス処理ユニットは、処理回路46を使用することによって実装されるオーディオ/ビデオ又は画像エンコーダ20を含み得、図2を参照して説明される様々なモジュール、及び/又は、本明細書において説明される任意の他のエンコーダシステム又はサブシステムを実装する。論理回路は、本明細書で説明する様々な演算を実行するように構成されてよい。
【0125】
いくつかの例において、オーディオ/ビデオ又は画像デコーダ30は、同様の方式で処理回路46を使用することによって実装され得、図1Bにおけるオーディオ/ビデオ又は画像デコーダ30を参照して説明される様々なモジュール、及び/又は、本明細書において説明される任意の他のデコーダシステム又はサブシステムを実装する。いくつかの例において、論理回路を使用することによって実装されるオーディオ/ビデオ又は画像デコーダ30は、オーディオ又は画像バッファ(処理回路46又は内部メモリ44を使用することによって実装される)及びオーディオ又はグラフィックス処理ユニット(例えば、処理回路46を使用することによって実装される)を含み得る。オーディオ又はグラフィックス処理ユニットは、画像バッファに通信可能に結合され得る。オーディオ又はグラフィックス処理ユニットは、処理回路46を使用することによって実装されるオーディオ/ビデオ又は画像デコーダ30を含み得、図4を参照して説明される様々なモジュール、及び/又は、本明細書において説明される任意の他のデコーダシステム又はサブシステムを実装する。
【0126】
いくつかの例において、アンテナ42は、オーディオ/ビデオ又は画像データのエンコーディング済みビットストリームを受信するように構成され得る。説明されるように、エンコーディング済みビットストリームは、本明細書において説明される、オーディオ/ビデオフレームエンコーディングに関するデータ、インジケータ、インデックス値、モード選択データ又は同様のもの、例えば、コード区分化に関するデータ(例えば、変換係数又は量子化変換係数、(説明されるような)任意選択のインジケータ、及び/又は、コード区分化を定義するデータ)を含み得る。オーディオ/ビデオ又は画像デコーディングシステム40は更に、アンテナ42に結合された、エンコーディング済みビットストリームをデコーディングするように構成されているオーディオ/ビデオ又は画像デコーダ30を含み得る。表示デバイス45は、ビデオフレームを表示するように構成されている。
【0127】
本願の本実施形態では、オーディオ/ビデオ又は画像エンコーダ20を参照して説明される例において、オーディオ/ビデオ又は画像デコーダ30は、逆のプロセスを実行するように構成され得ると理解されるべきである。シグナリングシンタックス要素については、オーディオ/ビデオ又は画像デコーダ30は、シンタックス要素を受信及び解析し、対応して、関連するビデオデータをデコーディングするように構成され得る。いくつかの例において、オーディオ/ビデオ又は画像エンコーダ20は、シンタックス要素に対してエントロピーエンコーディングを実行してエンコーディング済みビットストリームを取得し得る。これらの例において、オーディオ/ビデオ又は画像デコーダ30はシンタックス要素を解析し、対応して、関連するオーディオ/ビデオ又は画像データをデコーディングし得る。
【0128】
図1Cは、本発明の実施形態によるオーディオ/ビデオ又は画像デコーディングデバイス400の概略図である。オーディオ/ビデオ又は画像デコーディングデバイス400は、本明細書に説明される開示された実施形態を実装するのに好適である。実施形態において、オーディオ/ビデオ又は画像デコーディングデバイス400は、デコーダ、例えば、図1Aにおけるオーディオ/ビデオ又は画像デコーダ30であり得、又は、エンコーダ、例えば、図1Aにおけるオーディオ/ビデオ又は画像エンコーダ20であり得る。
【0129】
オーディオ/ビデオ又は画像デコーディングデバイス400は、データを受信するための入口ポート410(又は入力ポート410)及び受信器ユニット(receiver unit, Rx)420;データを処理するためのプロセッサ、ロジックユニット、又は中央処理装置(central processing unit, CPU)430(例えば、プロセッサ430はニューラルネットワーク処理ユニット430であり得る);データを送信するための送信器ユニット(transmitter unit, Tx)440及び出口ポート450(又は出力ポート450);及び、データを記憶するためのメモリ460を含む。オーディオ/ビデオ又は画像デコーディングデバイス400は更に、光信号又は電気信号の出口又は入口として機能する、入口ポート410、受信器ユニット420、送信器ユニット440、及び出口ポート450に結合された光-電気(optical-to-electrical, OE)コンポーネント、及び、電気-光(electrical-to-optical, EO)コンポーネントを含み得る。
【0130】
プロセッサ430は、ハードウェア及びソフトウェアを使用することにより実装される。プロセッサ430は、1又は複数のプロセッサチップ、コア(例えば、マルチコアプロセッサ)、FPGA、ASIC、又はDSPとして実装され得る。プロセッサ430は、入口ポート410、受信器ユニット420、送信器ユニット440、出口ポート450、及びメモリ460と通信する。プロセッサ430は、デコーディングモジュール470(例えば、ニューラルネットワークNNベースのデコーディングモジュール470)を含む。デコーディングモジュール470は、前述の開示された実施形態を実装する。例えば、デコーディングモジュール470は、様々なエンコーディング操作を実行し、処理し、準備し、又は提供する。したがって、デコーディングモジュール470は、オーディオ/ビデオ又は画像デコーディングデバイス400の機能に対する著しい改善を提供し、異なる状態の間のオーディオ/ビデオ又は画像デコーディングデバイス400の切り替えに影響を与える。代替的に、デコーディングモジュール470は、メモリ460に記憶された、プロセッサ430によって実行される命令を使用することによって実装される。
【0131】
メモリ460は、1又は複数の磁気ディスク、磁気テープ、又はソリッドステートドライブを含み、プログラムが実行のために選択されるときにプログラムを記憶するための、及び、プログラム実行中に読み込まれる命令及びデータを記憶するためのオーバフローデータストレージデバイスとして機能し得る。メモリ460は揮発性及び/又は不揮発性であり得、リードオンリメモリ(read-only memory, ROM)、ランダムアクセスメモリ(random access memory, RAM)、三値連想メモリ(ternary content-addressable memory, TCAM)、及び/又は、スタティックランダムアクセスメモリ(static random access memory, SRAM)であり得る。
【0132】
図1Dは、例示的な実施形態による装置500の単純化されたブロック図である。装置500は、図1Aにおけるソースデバイス12及びデスティネーションデバイス14のいずれか又は両方として機能し得る。
【0133】
装置500におけるプロセッサ502は中央処理装置であり得る。代替的に、プロセッサ502は、情報を操作又は処理することが可能である、現在存在する、又は、将来開発される、任意の他のタイプのデバイス、又は、複数のデバイスであり得る。開示される実装は、図に示されるプロセッサ502などの単一プロセッサによって実装され得るが、1より多くのプロセッサが使用されるとき、速度及び効率がより高くなる。
【0134】
実装において、装置500におけるメモリ504は、リードオンリメモリ(ROM)デバイス又はランダムアクセスメモリ(RAM)デバイスであり得る。任意の他の好適なタイプのストレージデバイスが、メモリ504として機能し得る。メモリ504は、バス512を通じてプロセッサ502によりアクセスされるコード及びデータ506を含み得る。メモリ504は更に、オペレーティングシステム508及びアプリケーションプログラム510を含み得る。アプリケーションプログラム510は、プロセッサ502が本明細書において説明される方法を実行することを可能にする少なくとも1つのプログラムを含む。例えば、アプリケーションプログラム510は、アプリケーション1~Nを含み得、更に、本明細書において説明される方法を実行するためのオーディオ/ビデオ又は画像デコーディングアプリケーションを含み得る。
【0135】
装置500は、ディスプレイ518などの1又は複数の出力デバイスを更に含み得る。例において、ディスプレイ518は、タッチ入力を検知可能なタッチ感応素子とディスプレイを組み合わせることによって取得されるタッチ感応ディスプレイであり得る。ディスプレイ518は、バス512を通じてプロセッサ502に結合され得る。
【0136】
装置500におけるバス512は、本明細書において単一バスとして説明されるが、バス512は複数のバスを含み得る。加えて、補助メモリが装置500の別のコンポーネントに直接結合され得、又は、ネットワークを通じてアクセスされ得、メモリカードなどの単一の統合ユニット、又は、複数のメモリカードなどの複数のユニットを含み得る。したがって、装置500は、様々な構成を有し得る。
【0137】
エンコーダ及びエンコーディング方法
【0138】
図2は、本願の技術を実装するためのオーディオ/ビデオ又は画像エンコーダ20の例の概略ブロック図である。図2の例において、オーディオ/ビデオ又は画像エンコーダ20は、入力端(又は入力インタフェース)202、エンコーディングネットワーク204、丸め206、エントロピーエンコーディング208、エントロピー推定210、及び出力端(又は出力インタフェース)212を含む。図2に示されるオーディオ/ビデオエンコーダ20は、エンドツーエンドオーディオ又は画像エンコーダ、又は、エンドツーエンドオーディオ又は画像コーデックに基づくオーディオ又は画像エンコーダとも称され得る。
【0139】
エンコーダ20は、入力端202又は同様のものを通じてオーディオ又は画像(又はオーディオ又は画像データ)17、例えば、オーディオ/ビデオ又はビデオシーケンスを形成するオーディオ又は画像を受信するように構成され得る。受信されたオーディオ又は画像、又はオーディオ又は画像データは代替的に、前処理済みオーディオ又は画像(又は前処理済みオーディオ又は画像データ)19であり得る。単純にするために、オーディオ又は画像17は、以下の説明において使用される。オーディオ又は画像17は、現在のオーディオ又は画像、又はオーディオ又はエンコーディング対象オーディオ又は画像とも称され得る(特に、現在のオーディオ又は画像が、オーディオ/ビデオエンコーディングにおいて、別のオーディオから区別されるとき、例えば同一のオーディオ又はビデオシーケンスにおける、別のオーディオ又は画像も、現在のオーディオ又は画像のオーディオ又はビデオシーケンスにおける、前のエンコーディング済みオーディオ又は画像、及び/又は、デコーディング済みオーディオ又は画像を含む)。
【0140】
(デジタル)画像は、強度値を有するサンプルを含む2次元アレイ又は行列である、又はそのようにみなされ得る。アレイにおけるサンプルはまた、(画像素子の略である)画素(pixel又はpel)とも称され得る。水平方向及び垂直方向(又は軸)におけるアレイ又は画像のサンプルの数は、画像のサイズ及び/又は解像度を定義する。通常、3つの色成分が色を表すために使用される。具体的には、画像は、3つのサンプルアレイとして表され得る、又は、それを含み得る。RBGフォーマット又は色空間において、画像は、対応する赤、緑、及び青のサンプルアレイを含む。しかしながら、ビデオ又は画像エンコーディングにおいて、各画素は通常、例えば、Yによって示されるルミナンス成分(Lとして示されることもある)、及び、Cb及びCrとして示される2つのクロミナンス成分を含むYCbCrなど、ルミナンス/クロミナンスのフォーマット又は色空間として表される。ルミナンス(ルマ)成分Yは、ルミナンス又はグレースケール強度を表し(例えば、ルミナンス及びグレースケール強度はグレースケール画像において同一である)、2つのクロミナンス(chrominance、略してクロマ)成分Cb及びCrは、クロミナンス又は色情報成分を表す。対応して、YCbCrフォーマットにおける画像は、ルミナンスサンプル値(Y)のルミナンスサンプルアレイ、及び、クロミナンス値(Cb及びCr)の2つのクロミナンスサンプルアレイを含む。RGBフォーマットの画像は、YCbCrフォーマットに転換又は変換され得、その逆も成立する。このプロセスは、色変換又は転換とも称される。画像が黒白の場合、画像はルミナンスサンプルアレイのみを含み得る。対応して、画像は例えば、モノクロフォーマットにおけるルミナンスサンプルアレイ、又は、色フォーマット4:2:0、4:2:2、又は4:4:4のルミナンスサンプルアレイ及び2つの対応するクロミナンスサンプルアレイであり得る。
【0141】
ある可能性において、ビデオ又は画像エンコーダ20の実施形態は、画像17を複数の(通常、重複しない)画像ブロック203に区分化するように構成されている画像区分化ユニット(図1A又は図1Bにおいて示されない)を含み得る。これらのブロックは、H.265/HEVC及びVVC規格において、ルートブロック、マクロブロック(H.264/AVC)、コーディングツリーブロック(Coding Tree Block, CTB)、又は、コーディングツリーユニット(Coding Tree Unit, CTU)とも称され得る。区分化ユニットは、同一のブロックサイズを使用し、ビデオシーケンスにおけるすべての画像についてブロックサイズを定義する対応するグリッドを使用し、又は、画像、画像サブセット、又は画像グループ間のブロックサイズを変更し、各画像を対応するブロックに区分化するように構成され得る。
【0142】
別の可能性において、ビデオ又は画像エンコーダは、画像17のブロック203、例えば、画像17を構成する1又は複数の又はすべてのブロックを直接受信するように構成され得る。画像ブロック203は、現在の画像ブロック又はエンコーディングされる画像ブロックと呼ばれることもある。
【0143】
画像17と同様に、画像ブロック203はまた、強度値(サンプル値)を有するサンプルを含む2次元アレイ又は行列である、又は、またそのようにみなされ得る。しかしながら、画像ブロック203は、画像17より小さい。換言すると、ブロック203は、1つのサンプルアレイ(例えば、モノクロ画像17のケースではルミナンスアレイ、又は、カラー画像のケースではルミナンスアレイ又はクロミナンスアレイ)、3つのサンプルアレイ(例えば、カラー画像17のケースでは1つのルミナンスアレイ及び2つのクロミナンスアレイ)、又は、使用される色フォーマットに基づく任意の他の数及び/又はタイプのアレイを含み得る。水平方向及び垂直方向(又は軸)におけるブロック203のサンプルの数は、ブロック203のサイズを定義する。対応して、ブロックは、M×N(M列×N行)サンプルアレイ、又は、M×N変換係数アレイ、又は同様のものであり得る。
【0144】
別の可能性において、図1A図1B、又は図2に示されるオーディオ/ビデオ又は画像エンコーダ20は、ブロックごとに画像17をエンコーディングする、例えば、各ブロック203に対してエンコーディング、丸め、及びエントロピーエンコーディングを実行するように構成されている。
【0145】
別の可能性において、図1A図1B、又は図2に示されるオーディオ/ビデオ又は画像エンコーダ20は、画像17をエンコーディングする、例えば、画像17に対してエンコーディング、量子化、及びエントロピーエンコーディングを実行するように構成されている。
【0146】
別の可能性において、図1A図1B、又は図2に示されるオーディオ/ビデオ又は画像エンコーダ20は、オーディオデータ17をエンコーディングする、例えば、オーディオデータ17に対してエンコーディング、量子化、及びエントロピーエンコーディングを実行するように構成されている。
【0147】
別の可能性において、図1A図1B、又は図2に示されるオーディオ/ビデオ又は画像エンコーダ20は更に、エンコーディング済みの画像をスライス(ビデオスライスとも称される)ごとに区分化するように構成され得、ここで、画像は(通常は重複しない)1又は複数のスライスに区分化又はエンコーディングされ得る。各スライスは、1又は複数のブロック(例えば、コーディングツリーユニットCTU)又は1又は複数のブロックグループ(例えば、H.265/HEVC/VVC規格におけるタイル(tile)、及び、VVC規格におけるサブ画像(subpicture))を含み得る。
【0148】
別の可能性において、図1A図1B、又は図2に示されるオーディオ/ビデオ又は画像エンコーダ20は更に、セグメントごとにオーディオを区分化するように構成され得、ここで、オーディオは、1又は複数の(通常は重複しない)セグメントに区分化又はエンコーディングされ得る。
【0149】
別の可能性において、図1A図1B、又は図2に示されるオーディオ/ビデオ又は画像エンコーダ20は更に、スライス/タイルグループ(ビデオタイルグループとも称される)ごとに及び/又はタイル(ビデオタイルとも称される)ごとに、画像を区分化及び/又はエンコーディングするように構成され得、ここで、画像は、1又は複数の(通常は重複しない)スライス/タイルグループに区分化又はエンコーディングされ得る。各スライス/タイルグループは、1又は複数のブロック(例えば、CTU)、1又は複数のタイル、又は同様のものを含み得る。各タイルは、矩形形状又は同様のものであり得、1又は複数の完全又は部分的ブロック(例えば、CTU)を含み得る。
【0150】
エンコーディングネットワークユニット204
【0151】
図2に示されるように、エンコーディングネットワークユニット204は、入力データ203に基づいて、エンコーディングネットワークを通じて、各特徴層の出力特徴マップ205を取得するように構成されている。エンコーディングネットワークユニットは、2又はより多くの特徴層に対応する少なくとも2つの出力特徴マップ205を出力する。
【0152】
ある可能性において、エンコーディングネットワークユニットは図3Aに示される。エンコーディングネットワークユニットは、K個のエンコーディングサブネットワークを含み、各エンコーディングサブネットワークは、特徴層、及び、対応する出力特徴マップに対応する。このケースでは、K個の出力特徴マップが出力され、ここで、K≧2である。
【0153】
ある可能性において、エンコーディングネットワークの入力は、エンコーディング対象オーディオ又は画像又はエンコーディング対象オーディオセグメント又は画像ブロックである。
【0154】
ある可能性において、エンコーディングネットワーク204におけるエンコーディングネットワークの入力/出力構造が図3Bに示される。エンコーディングネットワークユニットは、T個のネットワーク層を含み、ここで、M、L、T、及びKは正の整数である。第M出力特徴マップ及び第K出力特徴マップの両方はエンコーディングネットワークの出力である。加えて、エンコーディングネットワークによって出力される第K出力特徴マップは、エンコーディングネットワークユニットにおけるネットワーク層Lの後に出力され、第M出力特徴マップは、ネットワーク層Tの後に出力される。複数の出力特徴マップが、エンコーディングネットワークユニットにおける異なるネットワーク層の位置の後に出力され得ることが理解され得る。これは、本明細書において限定されるものではない。
【0155】
図3Bにおける任意のネットワーク層は畳み込み層、正規化層、非線形活性化層、又は同様のものであり得る。
【0156】
ある可能性において、エンコーディングネットワーク204における図3Aに対応するエンコーディングサブネットワークの構造は、互いに同一又は異なり得、第Mエンコーディングサブネットワーク及び第Nエンコーディングサブネットワークの構造は図4に示される。第Mエンコーディングサブネットワークにおけるネットワーク層1の構造は、第Nエンコーディングサブネットワークにおける任意のネットワーク層の構造と異なり得、L及びPは同一又は異なり得、L及びPの両方は0より大きい正の整数である。
【0157】
ある可能性において、エンコーディングネットワーク204における任意のエンコーディングサブネットワークのネットワーク構造の例が図5に示される。例における第Nエンコーディングサブネットワークは5つのネットワーク層を含み、具体的には、1つの正規化層、2つの畳み込み層、及び2つの非線形活性化層を含むことが分かる。
【0158】
丸めユニット206
【0159】
丸めユニット206は、例えば、スカラー量子化又はベクトル量子化を通じて出力特徴マップ205を丸めて丸め特徴マップ207を取得するように構成されている。
【0160】
ある可能性において、オーディオ/ビデオ又は画像エンコーダ20(対応して、丸めユニット206)は、丸めパラメータ(quantization parameter, QP)を出力するように構成され得、例えば、量子化パラメータを出力直接するか、又は、エントロピーエンコーディングユニット270によってエンコーディング又は圧縮された量子化パラメータを出力し、その結果、例えば、オーディオ/ビデオデコーダ30は、量子化パラメータを受信してデコーディングのために使用し得る。
【0161】
図6Aに示されるように、丸め操作は、N個の特徴層のすべての出力特徴マップに対して実行され、N個の丸め特徴マップを出力し、ここで、Nは1より大きい正の整数である。
【0162】
ある可能性において、出力特徴マップは、丸めの前に前処理される。これは、出力特徴マップにおけるサンプルの画素値及びエントロピー推定によって出力された平均を減算してオフセット特徴マップを取得し、取得されたオフセット特徴マップを丸めて丸め特徴マップを取得することを含む。
【0163】
エントロピーエンコーディングユニット208
【0164】
エントロピーエンコーディングユニット208はエントロピーエンコーディングアルゴリズム又は方式(例えば可変長エンコーディング(variable-length coding, VLC)方式、コンテキスト適応VLC(context-adaptive VLC, CALVC)方式、算術エンコーディング方式、二値化アルゴリズム、コンテキスト適応型バイナリ算術エンコーディング(context-adaptive binary arithmetic coding,CABAC)、シンタックスベースのコンテキスト適応型バイナリ算術エンコーディング(syntax-based context-adaptive binary arithmetic coding, SBAC)、確率区間区分化エントロピー(probability interval partitioning entropy, PIPE)エンコーディング、又は別のエントロピーエンコーディング方法又は技術)を、少なくとも2つの特徴層の丸め特徴マップに適用して、エンコーディング済みビットストリーム21又は同様のものの形態で出力端212を通じて出力され得るエンコーディング済みオーディオ又は画像データ21を取得するように構成され、その結果、ビデオデコーダ30又は同様のものは、デコーディングのためにパラメータを受信及び使用できる。エンコーディング済みビットストリーム21はビデオデコーダ30へ送信され得るか、又は、メモリに記憶され、次に、ビデオデコーダ30によって送信又は取得され得る。
【0165】
ある可能性において、丸め特徴マップの実際の文字確率はエントロピーエンコーディングにおいて知られていないので、必要に応じて情報又は関連情報についての統計が収集され得、情報はエントロピーエンコーディングモジュールに追加され得、情報はデコーダ側へ送信され得る。
【0166】
エントロピー推定ユニット210
【0167】
図6Aに示されるように、エントロピー推定ユニット210は、丸め特徴マップに対して確率推定を実行して、モデルの圧縮ビットレートを推定するように構成されている。破線によって示される入力は任意選択の入力である。エントロピー推定ユニット210は、N個の特徴層に対応するN個のエントロピー推定モジュールに対応する。
【0168】
図6Bに示されるように、エントロピー推定ユニット210は、丸め特徴マップに対して確率推定を実行して、モデルの圧縮ビットレートを推定するように構成されている。破線によって示される入力は任意選択の入力である。エントロピー推定ユニット210は、N個の特徴層に対応するN個のエントロピー推定モジュール、及び、残差層に対応するロスレスエントロピー推定モジュールに対応する。
【0169】
ある可能性において、図7Aに示されるように、エンコーダにおける第Pエントロピー推定結果は第Lエントロピー推定の入力であり、ここで、L及びPは正の整数であり、L<Pである。
【0170】
別の可能性において、エンコーダにおける複数のエントロピー推定結果は、第Lエントロピー推定の入力であり、複数のエントロピー推定モジュールの各々に対応する特徴層の連続番号はLより大きく、ここで、Lは正の整数である。図7Bに示されるように、L、I、T及びKはすべて正の整数であり、L<I、L<T、及びL<Kである。
【0171】
ある可能性において、図7Cに示されるように、エンコーダにおける第P丸め特徴マップが第Lエントロピー推定の入力であり、ここで、L及びPは正の整数であり、L≦Pである。
【0172】
別の可能性において、エンコーダにおける複数の丸め特徴マップが、第Lエントロピー推定の入力であり、複数の丸めモジュールの各々に対応する特徴層の連続番号は、Lより大きく、ここで、Lは正の整数である。図7Dに示されるように、L、I、T及びKはすべて正の整数であり、L≦I、L≦T、及びL<Kである。
【0173】
ある可能性において、エンコーダにおける少なくとも1つの丸め特徴マップ及び少なくとも1つのエントロピー推定結果は、第Lエントロピー推定の入力であり、ここで、Lは正の整数である。第Lエントロピー推定の入力として使用される丸め特徴マップに対応する特徴層の連続番号はLに等しい又はそれより大きく、第Lエントロピー推定の入力として使用されるエントロピー推定結果に対応する特徴層の連続番号はLより大きい。図7Eに示されるように、L、I、T及びKはすべて正の整数であり、L≦I、L≦T、及びL<Kである。
【0174】
ある可能性において、図7Fに示されるように、エンコーダにおける第Pエントロピー推定結果はロスレスエントロピー推定の入力であり、ここで、Pは正の整数である。
【0175】
別の可能性において、エンコーダにおける複数のエントロピー推定結果がロスレスエントロピー推定の入力である。例えば、図7Gに示されるように、I、T、及びKはすべて正の整数である。
【0176】
ある可能性において、図7Hに示されるように、エンコーダにおける第P丸め特徴マップがロスレスエントロピー推定の入力であり、Pは正の整数である。
【0177】
別の可能性において、エンコーダにおける複数の丸め特徴マップがロスレスエントロピー推定の入力である。例えば、図7Iに示されるように、I、T、及びKはすべて正の整数である。
【0178】
ある可能性において、エンコーダにおける少なくとも1つの丸め特徴マップ及び少なくとも1つのエントロピー推定結果はロスレスエントロピー推定の入力である。例えば、図7Jに示されるように、I、T及びKはすべて正の整数である。
【0179】
1つの可能性において、エンコーダにおける少なくとも1つの丸め特徴マップ及び再構築済みオーディオ又は画像がロスレスエントロピー推定の入力である。例えば、図7Kに示されるように、I及びTの両方は正の整数である。
【0180】
ある可能性において、エンコーダにおける少なくとも1つのエントロピー推定結果及び再構築済みオーディオ又は画像がロスレスエントロピー推定の入力である。例えば、図7Lに示されるように、I及びTは両方とも正の整数である。
【0181】
ある可能性において、エンコーダにおける少なくとも1つのエントロピー推定結果、再構築済みオーディオ又は画像、及び少なくとも1つの丸め特徴マップがロスレスエントロピー推定の入力である。例えば、図7Mに示されるように、I、T、及びPはすべて正の整数である。
【0182】
ある可能性において、エントロピー推定ネットワークは畳み込みネットワークであり、畳み込みネットワークは畳み込み層及び非線形活性化層を含む。図8の例におけるエントロピー推定ネットワークは5つのネットワーク層を含み、具体的には、3つの畳み込み層及び2つの非線形活性化層を含むことが分かる。
【0183】
デコーダ及びデコーディング方法
【0184】
図1A及び図1Bは、本願の技術を実装するための例示的なオーディオ/ビデオ又は画像デコーダ30を示す。図9に示されるように、オーディオ/ビデオ又は画像デコーダ30は、例えば、エンコーダ20によってエンコーディングされたエンコーディング済みオーディオ又は画像データ21(例えば、エンコーディング済みビットストリーム21)を受信して、デコーディング済みオーディオ又は画像308を取得するように構成されている。エンコーディング済み画像データ又はビットストリームは、エンコーディング済み画像データをデコーディングするための情報、例えば、エンコーディングビデオスライスの画像ブロック(及び/又は、タイルグループ又はタイル)を表すデータ及び関連するシンタックス要素を含む。図9の例において、デコーダ30は、エントロピー推定ユニット304、エントロピーデコーディングユニット306、及びデコーディングネットワークユニット308を含む。
【0185】
エントロピー推定ユニット304
【0186】
図10Aに示されるように、エントロピー推定ユニット304は、デコーディング済み特徴マップに対して確率推定を実行するように構成されている。破線によって示される入力は任意選択の入力である。エントロピー推定ユニット304は、N個の特徴層に対応するN個のエントロピー推定モジュールに対応する。
【0187】
図10Bに示されるように、エントロピー推定ユニット304は、デコーディング済み特徴マップに対して確率推定を実行してモデルの圧縮ビットレートを推定するように構成されている。破線によって示される入力は任意選択の入力である。エントロピー推定ユニット304は、N個の特徴層に対応するN個のエントロピー推定モジュール、及び、残差層に対応するロスレスエントロピー推定モジュールに対応する。
【0188】
ある可能性において、図7Aに示されるように、デコーダにおける第Pエントロピー推定結果は第Lエントロピー推定の入力であり、ここで、L及びPは正の整数であり、L<Pである。
【0189】
別の可能性において、デコーダにおける複数のエントロピー推定結果は、第Lエントロピー推定の入力であり、複数のエントロピー推定モジュールの各々に対応する特徴層の連続番号はLより大きく、ここで、Lは正の整数である。図7Bに示されるように、L、I、T及びKはすべて正の整数であり、L<I、L<T、及びL<Kである。
【0190】
ある可能性において、デコーダにおける第Pデコーディング済み特徴マップは、第Lエントロピー推定の入力であり、ここで、L及びPは正の整数であり、L≦Pである。
【0191】
別の可能性において、デコーダにおける複数のデコーディング済み特徴マップは第Lエントロピー推定の入力であり、複数のエントロピーデコーディングモジュールに対応する特徴層の連続番号はすべてLより大きく、ここでLは正の整数である。
【0192】
ある可能性において、デコーダにおける少なくとも1つのデコーディング済み特徴マップ及び少なくとも1つのエントロピー推定結果は第Lエントロピー推定の入力であり、ここで、Lは正の整数である。第Lエントロピー推定の入力として使用されるデコーディング済み特徴マップに対応する特徴層の連続番号は、Lに等しい又はそれより大きく、第Lエントロピー推定の入力として使用されるエントロピー推定結果に対応する特徴層の連続番号はLより大きい。
【0193】
ある可能性において、図7Fに示されるように、デコーダにおける第Pエントロピー推定結果はロスレスエントロピー推定の入力であり、ここで、Pは正の整数である。
【0194】
別の可能性において、デコーダにおける複数のエントロピー推定結果はロスレスエントロピー推定の入力である。例えば、図7Gに示されるように、I、T、及びKはすべて正の整数である。
【0195】
ある可能性において、デコーダにおける第Pデコーディング済み特徴マップは、ロスレスエントロピー推定の入力であり、ここでPは正の整数である。
【0196】
別の可能性において、デコーダにおける複数のデコーディング済み特徴マップはロスレスエントロピー推定の入力である。
【0197】
ある可能性において、デコーダにおける少なくとも1つのデコーディング済み特徴マップ及び少なくとも1つのエントロピー推定結果は、ロスレスエントロピー推定の入力である。
【0198】
1つの可能性において、デコーダにおける少なくとも1つのデコーディング済み特徴マップ及び再構築済みオーディオ又は画像はロスレスエントロピー推定の入力である。
【0199】
ある可能性において、デコーダにおける少なくとも1つのエントロピー推定結果及び再構築済みオーディオ又は画像は、ロスレスエントロピー推定の入力である。例えば、図7Kに示されるように、I及びTの両方は正の整数である。
【0200】
ある可能性において、デコーダにおける少なくとも1つのエントロピー推定結果、再構築済みオーディオ又は画像、及び少なくとも1つのデコーディング済み特徴マップがロスレスエントロピー推定の入力である。
【0201】
ある可能性において、エントロピー推定は畳み込みネットワークであり、畳み込みネットワークは畳み込み層及び非線形活性化層を含む。図8における例におけるエントロピー推定ネットワークは5つのネットワーク層を含み、具体的には、3つの畳み込み層及び2つの非線形活性化層を含むことが分かる。
【0202】
エントロピーデコーディングユニット306
【0203】
エントロピーデコーディングユニット306は、ビットストリーム21(又は通常、エンコーディング済み画像データ21)を解析するように、及び、エンコーディング済みオーディオ又は画像データ21に対してエントロピーデコーディングを実行してデコーディング済み特徴マップ307、デコーディング済みエンコーディングパラメータ(図11において示されない)、及び/又は同様のものを取得するように構成されている。エントロピーデコーディングユニット304は、エンコーダ20のエントロピーエンコーディングユニット208のエンコーディング方式に対応するデコーディングアルゴリズム又は方式を適用するように構成され得る。
【0204】
ある可能性において、図10Aに示されるように、エントロピーデコーディングユニットは、少なくとも2つの特徴層に対応するデコーディング対象ビットストリームに適用される。
【0205】
ある可能性において、図10Bに示されるように、エントロピーデコーディングユニットは、残差層に対応するロスレスデコーディング済みビットストリームに適用される。
【0206】
ある可能性において、丸め特徴マップの実際の文字確率はエントロピーエンコーディングにおいて知られていないので、必要に応じて情報又は関連情報についての統計が収集され得、情報はエントロピーエンコーディングモジュールに追加され得、情報はデコーダ側へ送信され得る。
【0207】
ある可能性において、デコーダ30は更に、画像21又は画像21における画像ブロックに対してエントロピーデコーディングを実行するように構成され得る。
【0208】
ある可能性において、デコーダ30は更に、オーディオ21又はオーディオ21におけるオーディオセグメントに対してエントロピーデコーディングを実行するように構成され得る。
【0209】
デコーディングネットワークユニット
【0210】
デコーディングネットワーク306は、デコーディング済み特徴マップ307がデコーディングネットワーク308を通過することを可能にして、画素領域において再構築済みオーディオ又は画像310を取得するように構成されている。
【0211】
ある可能性において、図11は、N個のデコーディング済み特徴マップをデコーディングネットワークに入力する概略図であり、ここでNは1より大きい。
【0212】
ある可能性において、デコーディング済み特徴マップは、デコーディングネットワークに入力される前に前処理される。これは、出力特徴マップにおけるサンプルの画素値及びエントロピー推定によって出力された平均を減算してオフセット特徴マップを取得すること、デコーディング済み特徴マップにおけるサンプルの画素値及びエントロピー推定によって出力された平均を加算して、更新されたデコーディング済み特徴マップを取得すること、及び、次に、更新されたデコーディング済み特徴マップをデコーディングネットワークに入力することを含む。
【0213】
ある可能性において、デコーディングネットワーク306の入力/出力構造が図12に示される。デコーディングネットワーク306は、P個のネットワーク層を含み、ここで、P>Lであり、M、L、T及びPはすべて正の整数である。第Tのデコーディング済み特徴マップが、デコーディングネットワーク306におけるネットワーク層Lの後の入力である。第Tのデコーディング済み特徴マップ及び第Mのデコーディング済み特徴マップの両方がデコーディングネットワークの入力である。複数のデコーディング済み特徴マップが、デコーディングネットワークユニットにおける異なるネットワーク層の位置の後の入力であり得ると理解されたい。これは、本明細書において限定されるものではない。
【0214】
図12における任意のネットワーク層は畳み込み層、正規化層、非線形活性化層、又は同様のものであり得る。
【0215】
ある可能性において、デコーディングネットワーク306は、連結(concat)、加算及び減算などの演算を含み得る。
【0216】
ある可能性において、デコーディングネットワーク306におけるネットワーク層の構造は、互いに同一であり得る、又は異なり得る。
【0217】
ある可能性において、デコーディングネットワーク306の構造の例が図13に示される。例におけるデコーディングネットワークは、12個のネットワーク層を含み、具体的には、1個の非正規化層、6個の畳み込み層、及び4個の非線形活性化層を含むことが分かる。m、n、及びtはすべて正の整数である。デコーディングネットワークは、デコーディング済み画像又は再構築済みオーディオ又は画像を出力する。第tのデコーディング済み特徴マップ、第nのデコーディング済み特徴マップ、及び第mのデコーディング済み特徴マップはすべて、デコーディングネットワークの入力であり、ここで、t、n、及びmは整数である。
【0218】
エンコーダ20及びデコーダ30では、現在の段階の処理結果が更に処理され、その後、次の段階に出力され得ることを理解されたい。例えば、エンコーダユニット又はデコーダユニットによって処理が実行された後に、クリップ(clip)又はシフト(shift)演算又はフィルタリングなどの演算又は処理が、エンコーダユニット又はデコーダユニットの処理結果に対して更に実行され得る。
【0219】
前述の実施形態は主に、オーディオ/ビデオコーディングを説明するが、デコーディングシステム10、エンコーダ20、及びデコーダ30の実施形態、及び、本明細書において説明される他の実施形態はまた、静止画像の処理又はコーディング、具体的には、オーディオ/ビデオコーディングにおける任意の以前の又は連続する画像から独立した単一の画像の処理又はコーディングに使用され得ることに留意されたい。オーディオ/ビデオエンコーダ20及びオーディオ/ビデオデコーダ30のすべての他の機能(ツール又は技術とも称される)も静止画像の処理に使用され得る。
【0220】
図14Aは、本願による可能なシステムアーキテクチャを示す。モデル動作段階は以下の通りである。
【0221】
エンコーダ側
【0222】
段階1:入力データがエンコーディングネットワークを通過し、N個の出力特徴マップが出力される。
【0223】
段階2:N個の出力特徴マップに対して丸め操作を実行し、N個の丸め特徴マップを取得する。
【0224】
段階3:エントロピー推定に基づいて各丸め特徴マップの確率を順次に(第Nから第1の順序で)推定し、N個の丸め特徴マップに対してエントロピーエンコーディングを実行してN個のエンコーディング済みビットストリームを取得する。
【0225】
第M丸め特徴マップは第Lエントロピー推定の入力であり得、ここで、L、M、及びNはすべて正の整数であり、L≧1、L<M≦Nである。
【0226】
第Pのエントロピー推定は第tエントロピー推定の入力であり得、ここで、T、P、及びNはすべて正の整数であり、T≧1、T<P≦Nである。
【0227】
デコーダ側
【0228】
段階1:N個のデコーディング対象ビットストリームを取得し、エントロピー推定に基づいてエントロピーデコーディングを順次に(第Nから第1の順序で)実行して、N個のデコーディング済み特徴マップを取得する。
【0229】
第M丸め特徴マップは第Lエントロピー推定の入力であり得、ここで、L、M、及びNはすべて正の整数であり、L≧1、L<M≦Nである。
【0230】
第Pのエントロピー推定は第tエントロピー推定の入力であり得、ここで、T、P、及びNはすべて正の整数であり、T≧1、T<P≦Nである。
【0231】
段階2:N個の出力特徴マップがデコーディングネットワークを通過して出力データを取得する。
【0232】
図14B及び図14Cは、本願の実施形態による可能なシナリオにおけるシステムアーキテクチャ700を示す。モデル動作段階は以下の通りである。
【0233】
エンコーダ側
【0234】
段階1:エンコーディングネットワークモジュールが4個の特徴層を含み、4個のエンコーディングサブネットワークを通じて入力画像の4個の出力特徴マップを抽出し、ここで、各エンコーディングネットワークの各層におけるネットワーク深度、特徴層の数、及び、特徴チャネルの数は可変であり、モデルの圧縮能力を動的に変更する機能を実現する。
【0235】
段階2:図14Bに示されるように、丸めモジュールは、第1~第4出力特徴マップを丸め、図14Cにおける
【数18】

【数19】
及び
【数20】
に対応する第1~第4丸め特徴マップを取得する。
【0236】
段階3:エントロピー推定モジュールが、圧縮された特徴の確率を順次に推定する。図14Bに示されるように、第4丸め特徴マップは第3エントロピー推定の入力であり、第3丸め特徴マップは第2エントロピー推定の入力であり、第2丸め特徴マップは第1エントロピー推定の入力である。対応して、図14Cに示されるように、丸め特徴マップ
【数21】
の確率は、既知の確率を使用することによって推定され、丸め特徴マップ
【数22】
の確率は、丸め特徴マップ
【数23】
を使用することによって推定され、
【数24】
の確率は、丸め特徴マップ
【数25】
を使用することによって推定され、丸め特徴マップ
【数26】
の確率は、丸め特徴マップ
【数27】
を使用することによって推定される。
【0237】
段階4:図14Bに示されるように、深い層からより浅い層の順序で、エントロピーエンコーディングモジュールは、第4エントロピー推定結果に基づいて、第4丸め特徴マップに対してエントロピーエンコーディングを実行し、第3エントロピー推定結果に基づいて、第3丸め特徴マップに対してエントロピーエンコーディングを実行し、第2エントロピー推定結果に基づいて、第2丸め特徴マップに対してエントロピーエンコーディングを実行し、第1エントロピー推定結果に基づいて、第1丸め特徴マップに対してエントロピーエンコーディングを実行する。対応して、図14Cに示されるように、エントロピーエンコーディングが、丸め特徴マップ
【数28】

【数29】

【数30】
及び
【数31】
に対して、丸め特徴マップ
【数32】

【数33】

【数34】
及び
【数35】
の確率に基づいて、順次に実行され、ネットワークを通じて送信される又はローカルファイルとして記憶されるデータを生成する。
【0238】
デコーダ側
【0239】
段階1:図14Bに示されるように、エントロピー推定ネットワークモジュールは、第4エントロピー推定結果に基づいて、第4エンコーディング済みビットストリーム又は第4デコーディング対象ビットストリームをデコーディングして、第4デコーディング済み特徴マップを取得する。対応して、図14Bに示されるように、
【数36】
の確率は既知の確率に基づいて推定され、エントロピーデコーディングモジュールは、デコーディングを通じて、
【数37】
を取得する。
【0240】
段階2:図14Cに示されるように、第3エントロピー推定ネットワークは、第4デコーディング済み特徴マップに基づいて第3エンコーディング済みビットストリーム又は第3デコーディング対象ビットストリームをデコーディングして第3デコーディング済み特徴マップを取得する。対応して、図14Bに示されるように、
【数38】
の確率は、
【数39】
を使用することによって推定され、エントロピーデコーディングモジュールは、デコーディングを通じて
【数40】
を取得する。
【0241】
段階3:図14Bに示されるように、第2エントロピー推定ネットワークは、第3デコーディング済み特徴マップに基づいて第2エンコーディング済みビットストリーム又は第2デコーディング対象ビットストリームをデコーディングして第2デコーディング済み特徴マップを取得する。対応して、図14Bに示されるように、
【数41】
の確率は、
【数42】
を使用することによって推定され、エントロピーデコーディングモジュールは、デコーディングを通じて
【数43】
を取得する。
【0242】
段階4:図14Cに示されるように、第1エントロピー推定ネットワークは、第2デコーディング済み特徴マップに基づいて、第1エンコーディング済みビットストリーム又は第1デコーディング対象ビットストリームをデコーディングして、第1デコーディング済み特徴マップを取得する。対応して、図14Bに示されるように、
【数44】
の確率は、
【数45】
を使用することによって推定され、エントロピーデコーディングモジュールは、デコーディングを通じて
【数46】
を取得する。
【0243】
段階5:デコーディングネットワークモジュールが、デコーディング済み特徴マップ
【数47】

【数48】
、及び
【数49】
に基づいて、再構築済みオーディオ又は画像を取得する。
【0244】
本実施形態において、
【数50】
である。異なる層における特徴は、異なるbppで圧縮される。詳細は以下の通りである。
【数51】
であるとき、
【数52】
及び
【数53】
が圧縮される。
【数54】
であるとき、
【数55】

【数56】
、及び
【数57】
が圧縮される;又は、
【数58】
であるとき、
【数59】

【数60】

【数61】
、及び
【数62】
が圧縮される。
【0245】
図15は、本願の実施形態による別の可能なシナリオにおけるシステムアーキテクチャ800を示す。本実施形態は、ロスレス圧縮フレームワークを提供する。
【0246】
モデル動作段階は以下の通りである。
【0247】
エンコーダ側
【0248】
段階1:エンコーディングネットワークモジュールが、各特徴層に基づいて、入力データx0の各特徴層の出力特徴マップを抽出する。
【0249】
段階2:丸めモジュールが画像の各特徴層の出力特徴マップを丸め、丸め特徴マップを取得する。
【0250】
段階3:デコーディングネットワークが、各特徴層のデコーディング済み特徴マップに基づいて、再構築済みオーディオ又は画像x1を取得する。
【0251】
段階4:エンコーディングネットワークが、入力データの残差x0-x1を取得する。
【0252】
段階5:エントロピー推定ネットワークモジュールが、下位層からより浅い層へ(特徴層4から特徴層1へ、最終的に残差層へ)順次にエントロピー推定を実行し、各層の確率推定結果を取得する。
【0253】
段階6:エントロピーエンコーディングモジュールが、エントロピーエンコーディングを順次に(下位層からより浅い層へ)実行し、各層で生成されたビットストリームが、ネットワークを通じて送信される、又は、ローカルファイルとして記憶される。
【0254】
デコーダ側
【0255】
段階1:エントロピー推定ネットワーク及びエントロピーデコーディングモジュールが、デコーディングを通じて、各層のデコーディング済み特徴マップ及び残差を、最下部から最上部まで(特徴層4から特徴層1、最終的に残差層)順次に取得する。
【0256】
段階2:デコーディングネットワークモジュールが、各デコーディング済み特徴マップに基づいて、再構築済みオーディオ又は画像x1を取得する。
【0257】
段階3:残差及び再構築済みオーディオ又は画像x1を連結して、出力データ又はロスレス再構築済みオーディオ又は画像を取得する。
【0258】
別の実施形態において、図16は可能なシナリオにおけるシステムアーキテクチャ900を示す。圧縮及びデコーディング操作段階は以下の通りである。
【0259】
段階1:AIエンコーディングユニットモジュールが、画像データを、より低い冗長性を有する出力特徴に変換し、出力特徴における各点の確率を推定するように構成され、ここで、AIエンコーディングユニットモジュールは、エンコーディングネットワークユニット、丸めユニット、及びエントロピー推定ユニットを含む。
【0260】
画像がカメラなどの画像キャプチャデバイスによってキャプチャされた後、画像は、複数の画像表現形式、例えば、RAWドメイン、YUV、又はRGB表現形式で、AIエンコーディングユニットの入力として使用され得る。AIエンコーディングユニットモジュールにおけるデータ処理プロセスは、例えば、ニューラルネットワーク処理ユニット(NPU)又はグラフィックス処理ユニット(GPU)デバイスで実装され得る。
【0261】
段階2:エントロピーエンコーディング/デコーディングモジュール(一例として算術エンコーディングが使用される)が、出力特徴のエンコーディング冗長性を低減し、更に、画像圧縮中に送信されるデータの量を低減するように構成されている。
【0262】
エントロピーエンコーディング/デコーディングモジュールにおけるデータ処理プロセスは、中央処理装置(CPU)上で実装され得る。
【0263】
段階3:AIデコーディングユニットモジュールが、出力特徴に対して逆変換を実行し、出力特徴を解析して画像にするように構成されている。AIデコーディングユニットモジュールはデコーディングネットワークユニット及びエントロピー推定ユニットを含む。
【0264】
AIエンコーディングユニットモジュールにおけるデータ処理プロセスは、例えば、ニューラルネットワーク処理ユニット(NPU)又はグラフィックス処理ユニット(GPU)デバイス上で実装され得る。
【0265】
段階4:ファイル記憶モジュールが、エントロピーエンコーディングモジュールによって生成されたデータファイルを、端末上の対応する記憶位置に記憶するように構成されている。
【0266】
段階5:ファイルロードモジュールが、データファイルを端末上の対応する記憶位置からロードし、データファイルをエントロピーデコーディングモジュールに入力するように構成されている。
【0267】
別の実施形態において、図17は、可能なシナリオにおけるシステムアーキテクチャ1000を示す。本実施形態は、以下を含む、クラウド用途のデバイスの構造の図を提供する。
【0268】
段階1:ローカル側又はクラウド側のJPEGエンコーディング/デコーディングモジュールは、ローカル側又はクラウド端でデジタル画像を圧縮/展開して、ローカル側及びクラウド側の間で送信されるデータの量を低減するように構成されている。
【0269】
段階2:AIエンコーディングユニットモジュールが、より低い冗長性を有する出力特徴に画像を変換し、出力特徴における各点の確率を推定するように構成されている。AIデコーディングユニットモジュールはデコーディングネットワークユニット及びエントロピー推定ユニットを含む。
【0270】
段階3:エントロピーエンコーディング/デコーディングモジュール(一例として算術エンコーディングが使用される)が、出力特徴のエンコーディング冗長性を低減し、更に、画像圧縮中に送信されるデータの量を低減するように構成されている。
【0271】
段階4:AIデコーディングユニットモジュールが、出力特徴に対して逆変換を実行し、出力特徴を解析して画像にするように構成されている。AIデコーディングユニットモジュールはデコーディングネットワークユニット及びエントロピー推定ユニットを含む。
【0272】
段階5:ファイル記憶モジュールが、クラウド側の対応する記憶位置におけるエントロピーエンコーディング(一例として算術エンコーディングが使用される)モジュールによって生成されたエンコーディング済みビットストリーム又はデコーディング対象ビットストリームなどのデータファイルを記憶するように構成されている。
【0273】
段階6:ファイルロードモジュールが、クラウド側の対応する記憶位置からデータファイルをロードし、データファイルをエントロピーデコーディングユニットに入力するように構成されている。
【0274】
図18A及び図18Bは、本願の実施形態を示す。モデル動作段階は以下の通りである。
【0275】
エンコーダ側
【0276】
段階1:エンコーディングネットワークモジュールは、4個の特徴層を含み、4個のエンコーディングサブネットワークを通じて、入力データの4個の出力特徴マップを抽出する。4個の出力特徴マップは、図18Bにおける
【数63】

【数64】
、及び
【数65】
に対応する。ネットワーク深度、特徴層の数、及び各エンコーディングネットワークの各層における特徴チャネルの数は可変であり、モデルの圧縮能力を動的に変更する機能を実現する。
【0277】
段階2:図18Aに示されるように、第1~第3出力特徴マップは前処理され、第1~第3オフセット特徴マップが取得される。前処理操作は、図17Bにおける減算操作に対応する。出力特徴マップにおける各画素のサンプル値及びエントロピー推定によって出力される平均μが減算され、オフセット特徴マップが取得される。
【0278】
段階3:図18Aに示されるように、丸めモジュールは、第1~第3オフセット特徴マップ及び第4出力特徴マップを丸め、第1~第4丸め特徴マップを取得する。
【0279】
段階4:エントロピー推定モジュールが、圧縮された特徴の確率を順次に推定する。図18A及び図18Bに示されるように、第4丸め特徴マップの確率は、既知の確率を使用することによって推定され、第3丸め特徴マップの確率は、第4丸め特徴マップを使用することによって推定され、第2丸め特徴マップの確率は、逆処理された第3丸め特徴マップを第2エントロピー推定の入力として使用することによって推定され、第1丸め特徴マップの確率は、逆処理された第2丸め特徴マップを第1エントロピー推定の入力として使用することによって推定される。
【0280】
段階5:図18Aに示されるように、深い層からより浅い層の順序で、エントロピーエンコーディングモジュールが、第4エントロピー推定結果に基づいて、第4丸め特徴マップに対してエントロピーエンコーディングを実行し、分散情報σ3などの第3エントロピー推定結果に基づいて、第3丸め特徴マップに対してエントロピーエンコーディングを実行し、分散情報σ2などの第2エントロピー推定結果に基づいて、第2丸め特徴マップに対してエントロピーエンコーディングを実行し、分散情報σ1.7などの第1エントロピー推定結果に基づいて、第1丸め特徴マップに対してエントロピーエンコーディングを実行する。対応して、図18Bに示されるように、エントロピーエンコーディングが、丸め特徴マップの確率に基づいて、第4~第1丸め特徴マップに対して順次に実行され、ネットワークを通じて送信される又はローカルファイルとして記憶されるデータを生成する。
【0281】
エンコーダ側の逆処理操作は、丸め特徴マップにおける各画素のサンプル値及びエントロピー推定によって出力される平均を加算することである。
【0282】
デコーダ側
【0283】
段階1:図18Aに示されるように、エントロピー推定ネットワークモジュールは、第4エントロピー推定結果に基づいて、第4エンコーディング済みビットストリーム又は第4デコーディング対象ビットストリームに対してエントロピーデコーディングを実行し、第4デコーディング済み特徴マップを取得する。
【0284】
段階2:図18Aに示されるように、第3エントロピー推定ネットワークが、第4デコーディング済み特徴マップに基づいて、分散情報σ3などの出力確率推定結果を取得し、第3エントロピー推定出力結果に基づいて第3エンコーディング済みビットストリーム又は第3デコーディング対象ビットストリームに対してエントロピーデコーディングを実行して第3デコーディング済み特徴マップを取得し、第3デコーディング済み特徴マップに対して逆処理を実行して更新された第3デコーディング済み特徴マップを取得し、更新された第3デコーディング済み特徴マップを第2エントロピー推定の入力として使用して第2デコーディング済み特徴マップの確率を推定する。
【0285】
段階3:図18Aに示されるように、エントロピーデコーディングが、第2エントロピー推定によって出力された分散情報σ2などの確率推定結果に基づいて、第2エンコーディング済みビットストリーム又は第2デコーディング対象ビットストリームに対して実行されて第2デコーディング済み特徴マップが取得され、第2デコーディング済み特徴マップに対して逆処理が実行されて更新された第2デコーディング済み特徴マップが取得され、更新された第2デコーディング済み特徴マップは、第1エントロピー推定の入力として使用されて第1デコーディング済み特徴マップの確率が推定される。
【0286】
段階4:図18Aに示されるように、第1エントロピー推定によって出力された分散情報σ1などの確率推定結果に基づいて、第1エンコーディング済みビットストリーム又は第1デコーディング対象ビットストリームに対してエントロピーデコーディングが実行されて第1デコーディング済み特徴マップが取得され、逆処理が第1デコーディング済み特徴マップに対して実行されて、更新された第1デコーディング済み特徴マップが取得される。
【0287】
段階5:デコーディングネットワークモジュールが、更新された第1、第2、及び第3デコーディング済み特徴マップに基づいて、再構築済みオーディオ又は画像を取得する。
【0288】
デコーダ側の逆処理操作は、デコーディング済み特徴マップにおける各画素のサンプル値及びエントロピー推定によって出力される平均を加算することである。
【0289】
図19は、本願の実施形態を示す。本実施形態は、オーディオ圧縮フレームワークを提供する。モデル動作段階は以下の通りである。
【0290】
エンコーダ側
【0291】
段階1:エンコーディングネットワークモジュールがN個の特徴層に分割され、オーディオxの各層の出力特徴が各層に基づいて抽出される。
【0292】
段階2:丸めモジュールがオーディオxの各層の出力特徴を丸め、各層の丸められた特徴を取得する。
【0293】
段階3:エントロピー推定ネットワークモジュールが、下位層(第n特徴層)からより浅い層(第1層)の順序で、各層の特徴を丸める確率を順次に推定する。
【0294】
段階4:エントロピーエンコーディングモジュールが、エントロピー推定結果に基づいて、下位層(第n特徴層)からより浅い層(第1層)の順序で、エントロピーエンコーディングを順次に実行し、ここで、各層のエンコーディング済みビットストリームが、ネットワークを通じて送信され、又はローカルファイルとして記憶される。
【0295】
デコーダ側
【0296】
段階1:エントロピー推定ネットワーク及びエントロピーデコーディングモジュールが、デコーディングを通じて、下位層(第n特徴層)からより浅い層(第1層)の順序で、各層のデコーディング済み特徴を順次に取得する。
【0297】
段階2:デコーディングネットワークモジュールが、各層のデコーディング済み特徴に基づいてオーディオxを再構築する。
【0298】
当業者は、本明細書において開示及び説明される様々な例示的な論理ブロック、モジュール、及びアルゴリズム段階を参照して説明される機能は、ハードウェア、ソフトウェア、ファームウェア、又はそれらの任意の組み合わせによって実装され得ることを理解し得る。ソフトウェアによって実装される場合、例示的な論理ブロック、モジュール及び段階を参照して説明される機能は、1又は複数の命令又はコードとしてコンピュータ可読媒体に記憶され得、又は、それを通じて送信され、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ可読媒体は、データ記憶媒体などの有形媒体に対応するコンピュータ可読記憶媒体を含み得るか、又は、(例えば、通信プロトコルに従って)1つの場所から別の場所へコンピュータプログラムの伝送を容易にする任意の通信媒体を含み得る。このように、コンピュータ可読媒体は、概して、(1)非一時的有形コンピュータ可読記憶媒体、又は(2)信号又はキャリア等の通信媒体に対応し得る。データ記憶媒体は、本願において説明される技術を実装するための命令、コード及び/又はデータ構造を取得するために1又は複数のコンピュータ又は1又は複数のプロセッサによってアクセスされ得る任意の使用可能な媒体であり得る。コンピュータプログラム製品は、コンピュータ可読媒体を含み得る。
【0299】
限定ではなく一例として、コンピュータ可読記憶媒体は、RAM、ROM、EEPROM、CD-ROM、又は別のコンパクトディスク記憶装置、磁気ディスク記憶装置又は別の磁気記憶装置、フラッシュメモリ、又は、コンピュータによってアクセスされ得る命令又はデータ構造の形態で所望のプログラムコードを記憶するために使用され得る任意の他の媒体を含み得る。加えて、接続はいずれも厳密には、コンピュータ可読媒体と呼ばれる。例えば、命令が、ウェブサイト、サーバ、又は別のリモートソースから、同軸ケーブル、光ファイバ、ツイストペア、デジタル加入者線(DSL)、又は、赤外線、電波、又はマイクロ波等の無線技術を介して伝送される場合、同軸ケーブル、光ファイバ、ツイストペア、DSL、又は、赤外線、電波、又は、マイクロ波等の無線技術は、媒体の定義に含まれる。しかしながら、コンピュータ可読記憶媒体及びデータ記憶媒体は、接続、キャリア、信号、又は他の一時的媒体を含まず、実際には非一時的な有形の記憶媒体であることが理解されるべきである。本明細書で使用するディスク(diskおよびdisc)は、コンパクトディスク(CD)、レーザディスク、光ディスク、デジタル多用途ディスク(DVD)、およびブルーレイディスクを含む。ディスクは通常、データを磁気的に再現し、ディスクはレーザを通じてデータを光学的に再現する。前述の項目の組み合わせもコンピュータ可読媒体の範囲に含まれるべきである。
【0300】
命令は、1又は複数のデジタル信号プロセッサ(DSP)、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、又は他の同等の集積又はディスクリート論理回路などの1又は複数のプロセッサによって実行され得る。したがって、本明細書において使用される「プロセッサ」という用語は、本明細書において説明される技術を実装するために好適である前述の構造又は任意の他の構造を指し得る。加えて、いくつかの態様では、本明細書において説明される例示的な論理ブロック、モジュール、及び段階を参照して説明される機能は、エンコーディング及びデコーディングに構成される専用のハードウェア及び/又はソフトウェアモジュールにおいて提供され得る、又は、組み合わされたコーデックに統合され得る。加えて、それら技術は完全に、1又は複数の回路又はロジック要素内で実装されてよい。
【0301】
本願の技術は、無線ハンドセット、集積回路(IC)、又はICのセット(例えばチップセット)を含む様々な装置又はデバイスにおいて実装され得る。開示された技術を実行するように構成されている装置の機能態様を強調するために様々なコンポーネント、モジュール、又はユニットが本願において説明されるが、必ずしも異なるハードウェアユニットによって実装される必要はない。実際には、上記のように、様々なユニットが、適切なソフトウェア及び/又はファームウェアと結合してコーデックハードウェアユニットに組み合わされてもよく、(上記の1又は複数のプロセッサを含む)相互運用ハードウェアユニットによって提供されてもよい。
【0302】
前述の説明は、単に、本願の例示的な特定の実装であり、本願の保護範囲を限定することを意図しない。本願で開示された技術的範囲内で当業者が容易に想到する任意の変形又は置換は、本願の保護範囲に含まれるものとする。したがって、本願の保護範囲は、特許請求の範囲の保護範囲に従うものとする。
図1A
図1B
図1C
図1D
図2
図3A
図3B
図4
図5
図6A
図6B
図7A
図7B
図7C
図7D
図7E
図7F
図7G
図7H
図7I
図7J
図7K
図7L
図7M
図8
図9
図10A
図10B
図11
図12
図13
図14A
図14B
図14C
図15
図16
図17
図18A
図18B
図19
【国際調査報告】