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

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

▶ グァンドン オッポ モバイル テレコミュニケーションズ コーポレーション リミテッドの特許一覧

特開2025-102924符号化/復号の方法および装置、ならびに通信システム
<>
  • 特開-符号化/復号の方法および装置、ならびに通信システム 図1A
  • 特開-符号化/復号の方法および装置、ならびに通信システム 図1B
  • 特開-符号化/復号の方法および装置、ならびに通信システム 図2
  • 特開-符号化/復号の方法および装置、ならびに通信システム 図3
  • 特開-符号化/復号の方法および装置、ならびに通信システム 図4
  • 特開-符号化/復号の方法および装置、ならびに通信システム 図5
  • 特開-符号化/復号の方法および装置、ならびに通信システム 図6
  • 特開-符号化/復号の方法および装置、ならびに通信システム 図7
  • 特開-符号化/復号の方法および装置、ならびに通信システム 図8
  • 特開-符号化/復号の方法および装置、ならびに通信システム 図9
  • 特開-符号化/復号の方法および装置、ならびに通信システム 図10
  • 特開-符号化/復号の方法および装置、ならびに通信システム 図11
  • 特開-符号化/復号の方法および装置、ならびに通信システム 図12
  • 特開-符号化/復号の方法および装置、ならびに通信システム 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025102924
(43)【公開日】2025-07-08
(54)【発明の名称】符号化/復号の方法および装置、ならびに通信システム
(51)【国際特許分類】
   H04N 19/105 20140101AFI20250701BHJP
   H04N 19/176 20140101ALI20250701BHJP
   H04N 19/593 20140101ALI20250701BHJP
【FI】
H04N19/105
H04N19/176
H04N19/593
【審査請求】有
【請求項の数】21
【出願形態】OL
(21)【出願番号】P 2025061361
(22)【出願日】2025-04-02
(62)【分割の表示】P 2021516487の分割
【原出願日】2020-09-25
(31)【優先権主張番号】62/911,166
(32)【優先日】2019-10-04
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】516227559
【氏名又は名称】オッポ広東移動通信有限公司
【氏名又は名称原語表記】GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP., LTD.
【住所又は居所原語表記】No. 18 Haibin Road,Wusha, Chang’an,Dongguan, Guangdong 523860 China
(74)【代理人】
【識別番号】100126000
【弁理士】
【氏名又は名称】岩池 満
(74)【代理人】
【識別番号】100203105
【弁理士】
【氏名又は名称】江口 能弘
(72)【発明者】
【氏名】フオ、チュンイェン
(57)【要約】      (修正有)
【課題】マトリクスベースのイントラ予測の計算時間およびリソース消費を改良する方法、装置およびシステムを提供する。
【解決手段】方法は、ビットストリーム内のカレントブロックの予測パラメータを決定することS601と、カレントブロックの隣接サンプルおよび予測パラメータに基づいて、カレントブロックのマトリクスベースのイントラ予測(MIP)入力サンプルを決定することS602と、数値シフト用パラメータ(sW)を第1固定値に設定することS603と、オフセットシフト用パラメータ(fO)を第2固定値に設定することS604と、MIP重み付けマトリクス、MIP入力サンプル、オフセットシフト用パラメータ(fO)及び数値シフト用パラメータ(sW)に基づいてカレントブロックのMIP予測サンプルを決定することS606と、を含む。
【選択図】図6
【特許請求の範囲】
【請求項1】
画像を予測する方法であって、
カレントブロックの予測パラメータを決定することと、
前記カレントブロックの隣接サンプル及び前記予測パラメータに基づいて、前記カレントブロックのマトリクスベースのイントラ予測(MIP)入力サンプルを決定することと、
前記予測パラメータに基づいて、前記カレントブロックのMIP重み付けマトリクスを決定することと、
式(A)及び式(B)を使用して、前記カレントブロックの座標(x、y)を有するMIP予測サンプル(predMip[x][y])を決定することであって、
【数1】
sWは、数値シフト用パラメータであり、
fOは、オフセットシフト用パラメータであり、
p[i]は、前記MIP入力サンプル内のi番目の値であり、
inSizeは、前記MIP入力サンプル内の値の数であり、
mWeightは、前記カレントブロックのMIPモード識別子及びサイズ識別子に対応するMIP重み付けマトリクスであり、
predSizeは、MIP予測ブロックのサイズを表し、
pTempは、バッファ領域を表す配列である、ことと、
前記カレントブロックのMIP予測サンプルに対してアップサンプリングプロセスを実行して、前記カレントブロックのイントラ予測サンプル(predSamples[x][y])を生成することと、を含み、
任意のMIPモード識別子と任意のサイズ識別子を有するブロックについて、sWの値はいずれも第1固定値であり、任意のMIPモード識別子と任意のサイズ識別子を有するブロックについて、fOの値はいずれも第2固定値である、方法。
【請求項2】
前記第1固定値は6である、
請求項1に記載の方法。
【請求項3】
前記第2固定値は32である、
請求項2に記載の方法。
【請求項4】
前記カレントブロックのMIP予測サンプルは、前記カレントブロックのサンプルの一部の予測値を含む、
請求項1に記載の方法。
【請求項5】
前記予測パラメータは、前記カレントブロックのサイズ識別子(mipSizeId)を含む、
請求項1に記載の方法。
【請求項6】
前記方法は、
前記サイズ識別子に基づいて前記隣接サンプルに対してダウンサンプリングプロセスを実行して、前記配列pTempを生成することをさらに含む、
請求項5に記載の方法。
【請求項7】
前記方法は、
前記カレントブロックの幅と高さがいずれも4に等しいケースの場合、前記カレントブロックのサイズ識別子は0に等しいと決定すること、
前記カレントブロックの幅と高さがいずれも8に等しいケースの場合、又は前記カレントブロックの幅と高さの一方が4に等しいケースの場合、前記カレントブロックのサイズ識別子は1に等しいと決定すること、
前記カレントブロックの幅と高さが上記のケースでない場合、前記カレントブロックのサイズ識別子は2に等しいと決定すること、をさらに含む、
請求項5に記載の方法。
【請求項8】
前記方法は、
第2定数値及び前記配列pTempに基づいて、MIP入力サンプル(p[x])を生成することをさらに含み、前記第2定数値は「1<<(BitDepth-1)」であり、BitDepthは前記カレントブロックのビット深度を示す、
請求項1に記載の方法。
【請求項9】
復号装置であって、解析部と、イントラ予測部と、含み、
前記解析部は、カレントブロックの予測パラメータを決定するように構成され、
前記イントラ予測部は、
前記カレントブロックの隣接サンプル及び前記予測パラメータに基づいて、前記カレントブロックのマトリクスベースのイントラ予測(MIP)入力サンプルを決定することと、
前記予測パラメータに基づいて、前記カレントブロックのMIP重み付けマトリクスを決定することと、
式(A)及び式(B)を使用して、前記カレントブロックの座標(x、y)を有するMIP予測サンプル(predMip[x][y])を決定することであって、
【数2】
sWは、数値シフト用パラメータであり、
fOは、オフセットシフト用パラメータであり、
p[i]は、前記MIP入力サンプル内のi番目の値であり、
inSizeは、前記MIP入力サンプル内の値の数であり、
mWeightは、前記カレントブロックのMIPモード識別子及びサイズ識別子に対応するMIP重み付けマトリクスであり、
predSizeは、MIP予測ブロックのサイズを表し、
pTempは、バッファ領域を表す配列である、ことと、
前記カレントブロックのMIP予測サンプルに対してアップサンプリングプロセスを実行して、前記カレントブロックのイントラ予測サンプル(predSamples[x][y])を生成することと、を実行するように構成され、
任意のMIPモード識別子と任意のサイズ識別子を有するブロックについて、sWの値はいずれも第1固定値であり、任意のMIPモード識別子と任意のサイズ識別子を有するブロックについて、fOの値はいずれも第2固定値である、復号装置。
【請求項10】
復号装置であって、
請求項1~8のいずれか一項に記載の方法を実行するように構成される第1プロセッサを含む、復号装置。
【請求項11】
画像を符号化する方法であって、
入力画像を受信して、前記入力画像を1つ又は複数のカレントブロックに分割することと、
カレントブロックの隣接サンプル及び前記カレントブロックの予測パラメータに基づいて、前記カレントブロックのマトリクスベースのイントラ予測(MIP)入力サンプルを決定することと、
前記予測パラメータに基づいて、前記カレントブロックのMIP重み付けマトリクスを決定することと、
式(A)及び式(B)を使用して、前記カレントブロックの座標(x、y)を有するMIP予測サンプル(predMip[x][y])を決定することであって、
【数3】
sWは、数値シフト用パラメータであり、
fOは、オフセットシフト用パラメータであり、
p[i]は、前記MIP入力サンプル内のi番目の値であり、
inSizeは、前記MIP入力サンプル内の値の数であり、
mWeightは、前記カレントブロックのMIPモード識別子及びサイズ識別子に対応するMIP重み付けマトリクスであり、
predSizeは、MIP予測ブロックのサイズを表し、
pTempは、バッファ領域を表す配列である、ことと、
前記MIP予測サンプルに対してアップサンプリングプロセスを実行して、前記カレントブロックのイントラ予測サンプル(predSamples[x][y])を生成することと、を含み、
任意のMIPモード識別子と任意のサイズ識別子を有するブロックについて、sWの値はいずれも第1固定値であり、任意のMIPモード識別子と任意のサイズ識別子を有するブロックについて、fOの値はいずれも第2固定値である、方法。
【請求項12】
前記第1固定値は6である、
請求項11に記載の方法。
【請求項13】
前記第2固定値は32である、
請求項12に記載の方法。
【請求項14】
前記カレントブロックのMIP予測サンプルは、前記カレントブロックのサンプルの一部の予測値を含む、
請求項11に記載の方法。
【請求項15】
前記予測パラメータは、前記カレントブロックのサイズ識別子(mipSizeId)を含む、
請求項11に記載の方法。
【請求項16】
前記方法は、
前記サイズ識別子に基づいて前記隣接サンプルに対してダウンサンプリングプロセスを実行して、前記配列pTempを生成することをさらに含む、
請求項15に記載の方法。
【請求項17】
前記方法は、
前記カレントブロックの幅と高さがいずれも4に等しいケースの場合、前記カレントブロックのサイズ識別子は0に等しいと決定すること、
前記カレントブロックの幅と高さがいずれも8に等しいケースの場合、又は前記カレントブロックの幅と高さの一方が4に等しいケースの場合、前記カレントブロックのサイズ識別子は1に等しいと決定すること、
前記カレントブロックの幅と高さが上記のケースでない場合、前記カレントブロックのサイズ識別子は2に等しいと決定すること、をさらに含む、
請求項15に記載の方法。
【請求項18】
前記方法は、
第2定数値及び前記配列pTempに基づいて、MIP入力サンプル(p[x])を生成することをさらに含み、前記第2定数値は「1<<(BitDepth-1)」であり、BitDepthは前記カレントブロックのビット深度を示す、
請求項11に記載の方法。
【請求項19】
符号化装置であって、分割部と、予測部と、を含み、
前記分割部は、入力画像を受信して、前記入力画像を1つ又は複数のカレントブロックに分割するように構成され、
前記予測部は、
カレントブロックの隣接サンプル及び前記カレントブロックの予測パラメータに基づいて、前記カレントブロックのマトリクスベースのイントラ予測(MIP)入力サンプルを決定することと、
前記予測パラメータに基づいて、前記カレントブロックのMIP重み付けマトリクスを決定することと、
式(A)及び式(B)使用して、前記カレントブロックの座標(x、y)を有するMIP予測サンプル(predMip[x][y])を決定することであって、
【数4】
sWは、数値シフト用パラメータであり、
fOは、オフセットシフト用パラメータであり、
p[i]は、前記MIP入力サンプル内のi番目の値であり、
inSizeは、前記MIP入力サンプル内の値の数であり、
mWeightは、前記カレントブロックのMIPモード識別子及びサイズ識別子に対応するMIP重み付けマトリクスであり、
predSizeは、MIP予測ブロックのサイズを表し、
pTempは、バッファ領域を表す配列である、ことと、
前記MIP予測サンプルに対してアップサンプリングプロセスを実行して、前記カレントブロックのイントラ予測サンプル(predSamples[x][y])を生成することと、を実行するように構成され、
任意のMIPモード識別子と任意のサイズ識別子を有するブロックについて、sWの値はいずれも第1固定値であり、任意のMIPモード識別子と任意のサイズ識別子を有するブロックについて、fOの値はいずれも第2固定値である、符号化装置。
【請求項20】
符号化装置であって、
請求項11~18のいずれか一項に記載の方法を実行するように構成される第2プロセッサを含む、符号化装置。
【請求項21】
ビットストリームを記憶するためのコンピュータ可読媒体であって、
前記ビットストリームは、請求項11~18のいずれか一項に記載の方法によって生成される、コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願への相互参照
本出願は、2019年10月4日に出願された米国仮特許出願第62/911,166号の利益および優先権を主張し、その全体が参照により本明細書に援用される。
【0002】
本開示は電気通信技術分野に関し、特に静止画やビデオなどの画像の符号化および復号の方法に関する。
【背景技術】
【0003】
Versatile Video Coding (VVC)は、High Efficiency Video Coding規格(H.265/HEVC)などの現在の規格を置き換えるのに使用される、次世代のビデオ圧縮規格である。VVC符号化規格は、現在の規格よりも高い符号化品質を与える。この目標を達成するため、様々なイントラ予測モードおよびインター予測モードが検討される。これらの予測モードを使用する場合、ビットストリーム(バイナリ形式)で送信されるデータが削減できるようにビデオを圧縮することができる。マトリクスベースのイントラ予測(MIP)はこうしたモードの一つである。MIPはイントラ予測モードである。MIPモードで実行する場合、エンコーダまたはデコーダは、現在の符号化ブロック(例えば、ユニットとして送信される、共に符号化および/または復号されうるビットまたは桁の集まり)に基づいてイントラ予測ブロックを導出することができる。しかし、そのような予測ブロックの導出にはかなりの量の計算リソースおよび追加の記憶空間が必要になりうる。それゆえ、この問題に対処する改良された方法は有益で望ましい。
【発明の概要】
【0004】
MIPプロセスを実行する場合、様々な予測パラメータが決定されて利用される。従来は、これらの予測パラメータの一部は複数のルックアップテーブルにより決定することができる。これらのルックアップテーブルはエンコーダ、および/または、デコーダの構成要素(例えばメモリ、キャッシュなど)に記憶する必要があり、したがって記憶空間を必要とする。さらに、これらのルックアップテーブルへアクセスすることで計算時間および計算リソースが消費される。それゆえ、前述の問題へ対処するために改良された方法、装置、およびシステムを有するのは有益である。
【0005】
本開示は、MIPプロセスに基づいて画像を予測、符号化、および/または、復号する方法を提供する。MIPプロセスはカレントブロック(現在のブロック)の予測ブロックを生成することができ、予測ブロックのサイズはカレントブロックのサイズよりも小さい。例えば、「8×8」のカレントブロックは「4×4」の予測ブロックを持つことができる。カレントブロックよりも小さなサイズのMIP予測ブロックはマトリクス計算を行うことで導出され、より大きなブロックでマトリクス計算を行うよりも消費される計算リソースは少ない。マトリクス計算の後に、MIP予測ブロックにアップサンプリングプロセスが適用されて、カレントブロックと同じサイズのイントラ予測ブロックが導出される。例えば、「8×8」のイントラ予測ブロックは、内挿および/または外挿のアップサンプリングプロセスを呼び出すことで「4×4」のMIP予測ブロックから導出することができる。
【0006】
より詳細には、本方法は、例えば、(i)ビットストリーム内のカレントブロックの予測パラメータを決定することと、(ii)カレントブロックの隣接サンプルおよび予測パラメータに基づいて、カレントブロックのMIP入力サンプル(例えば、以下で詳細に論じられる式(P-1)、(P-2)および(P-3)における「p[x]」)を決定することと、(iii)数値シフト用パラメータ(例えば、以下で詳細に論じられる式(B)における「sW」)を第1固定値に設定することと、(iv)オフセットシフト用パラメータ(例えば、以下で詳細に論じられる式(B)における「fO」)を第2固定値に設定することと、(v)予測パラメータに基づいてカレントブロックのMIP重み付けマトリクスを決定することと、(vi)MIP重み付けマトリクス、MIP入力サンプル、オフセットシフト用パラメータ「fO」、および数値シフト用パラメータ(sW)に基づいてカレントブロックのMIP予測サンプル(例えば、以下で詳細に論じられる式(C)における「predMip[x][y]」)を決定することと、(vii)イントラ予測サンプル(例えば、以下で詳細に論じられる式(G)における「predSamples[x][y]」)を生成するためにMIP予測サンプルに対してアップサンプリングプロセスを行うことと、を含む。
【0007】
理論により制約を受けることは望まないが、数値シフト用パラメータとオフセットシフト用パラメータのいずれかまたは両方を固定値に設定することで、符号化/復号プロセスの精度に大きな影響を与えることなく、全体的な符号化/復号効率が改善される。この取り決めにより、本方法は、MIPプロセスの実行時に計算時間を著しく短縮し、必要な記憶空間を削減する解決策を提供する。
【0008】
本開示の別の態様は、画像およびビデオの符号化/復号を行うシステムを含む。このシステムは、符号化サブシステム(またはエンコーダ)および復号サブシステム(またはデコーダ)を含みうる。符号化サブシステムは、分割部、第1予測部、およびエントロピー符号化部を含む。分割部は、入力ビデオを受信して、入力ビデオを1つまたは複数の符号化ユニット(CU)へ分割するように構成される。第1イントラ予測部は、入力ビデオの符号化から導出された予測パラメータに基づいて、各CUに対応する予測ブロックを生成するように構成される。エントロピー符号化部は、予測ブロックを導出するためのパラメータをビットストリームへ変換するように構成される。復号サブシステムは、構文解析部および第2イントラ予測部を含む。構文解析部は、ビットストリームを解析(parse)して数値(例えば、1つまたは複数のCUに関連する値)を得るように構成される。第2イントラ予測部は、予測パラメータに基づいて数値を出力ビデオへ変換するように構成される。
【図面の簡単な説明】
【0009】
本開示の実施形態で説明される技術的解決策をより明快にするため、実施形態の説明に使用される図面を簡潔に説明する。明らかに、以下で説明される図面は例証のために過ぎず、制限するためではない。当業者はこれらの図面に基づき、独創的な作業を行うことなく他の図面を得ることができるということを理解されたい。
【0010】
図1A】本開示の一実施形態に係るシステムの模式図である。
図1B】本開示の実施形態に係るMIPプロセスを示す模式図である。
図2】本開示の一実施形態に係る符号化システムの模式図である。
図3】本開示の実施形態に係るMIPモードを使用したイントラ予測ブロックの導出を示す模式図である。
図4】本開示の一実施形態に係る復号システムの模式図である。
図5】本開示の実施形態の方法を示すフローチャートである。
図6】本開示の実施形態の方法を示すフローチャートである
図7】本開示の一実施形態に係る装置(例えばエンコーダ)の模式図である。
図8】本開示の一実施形態に係る装置(例えばエンコーダ)の模式図である。
図9】本開示の一実施形態に係る装置(例えばデコーダ)の模式図である。
図10】本開示の一実施形態に係る装置(例えばデコーダ)の模式図である。
図11】本開示の一実施形態に係る装置(例えばエンコーダ)の模式図である。
図12】本開示の一実施形態に係る装置(例えばデコーダ)の模式図である。
図13】本開示の一実施形態に係る通信システムの模式図である。
【発明を実施するための形態】
【0011】
本開示を理解しやすくするため、本開示は添付の図面を参照して以下でより詳細に説明される。
【0012】
図1Aは、本開示の一実施形態に係るシステム100の模式図である。システム100は、画像を符号化、送信、および復号することができる。また、システム100は一連の画像で構成されるビデオを符号化、送信、および復号するのに適用することができる。より詳細には、システム100は入力画像を受信し、入力画像を処理して、出力画像を生成することができる。システム100は符号化装置100aおよび復号装置100bを含む。符号化装置100aは、分割部101、第1イントラ予測部103、およびエントロピー符号化部105を含む。復号装置100bは、構文解析部107および第2イントラ予測部109を含む。
【0013】
分割部101は、入力ビデオ10を受信して、入力ビデオ10を1つまたは複数の符号化ツリーユニット(CTU)または符号化ユニット(CU)12へ分割するように構成される。1つまたは複数のCU12は第1イントラ予測部103へ送信される。第1イントラ予測部103は、MIPプロセスを行うことで1つまたは複数のCU12のそれぞれに対する予測ブロックを導出するように構成される。一部の実施形態では、MIPプロセスは、異なるサイズのCU12を扱うためにCU12のサイズに基づいて異なる手法を有する。例えば、1つまたは複数のCU12の各種類に対して、MIPプロセスは指定されたMIPサイズ識別子(例えば、0、1、2など)を有する。
【0014】
第1イントラ予測部103は、まずCU12の予測パラメータ(例えば、幅、高さ、サイズなど)を決定する。それに応じて、第1イントラ予測部103はCU12のMIPサイズ識別子を決定することができる。第1イントラ予測部103はさらに、CU12に対する参照サンプル群を(例えば、図3を参照して詳細に論じられる、上側隣接サンプルや左側隣接サンプルなどのCU12の隣接サンプルを使って)導出する。そして、第1イントラ予測部103は、参照サンプル群および対応するMIP重み付けマトリクスに基づいてCU12のMIP予測を導出する。第1イントラ予測部103は、MIP予測をCU12のイントラ予測14として使用することができる。そしてイントラ予測14およびイントラ予測14を導出するための予測パラメータが更なるプロセスのためにエントロピー符号化部105へ送信される。
【0015】
エントロピー符号化部105は、イントラ予測14を導出するための予測パラメータをバイナリ形式へ変換するように構成される。これに応じて、エントロピー符号化部105はイントラ予測14に基づいてビットストリーム16を生成する。一部の実施形態では、ビットストリーム16は通信ネットワークを介して送信する、またはディスクやサーバに記憶することができる。
【0016】
復号装置100bはビットストリーム16を入力ビットストリーム17として受信する。構文解析部107は入力ビットストリーム17(バイナリ形式)を解析し、数値18へと変換する。数値18は入力ビデオ10の特徴(例えば、色、明るさ、濃さなど)を示す。数値18は第2イントラ予測部109へ送信される。そして、第2イントラ予測部109はこれらの数値18を(例えば第1イントラ予測部103により行われるものと同様のプロセスに基づいて、関連する実施形態は図4を参照して詳細に論じられる)出力ビデオ19へ変換することができる。その後、出力ビデオ19は外部デバイス(例えば記憶装置、送信機など)によって記憶、送信、および/または、描画することができる。記憶されたビデオは、さらに表示装置により表示することができる。
【0017】
図1Bは、本開示の実施形態に係るMIPプロセスS100を示す模式図である。MIPプロセスは4つの主要なステップ、S101、S102、S103、およびS104を含む。ステップS101では、MIPプロセスS100に対する予測パラメータが決定される。予測パラメータは、カレントブロックの種類またはサイズ(例えば、「mipSizeId」などのMIPサイズ識別子により示される)、各境界内の参照サンプルの個数(例えば、「boundySize」)、MIP入力サンプルの個数(例えば、「inSize」)、および、マトリクス乗算により生成されたMIP予測ブロックの寸法(例えば、「predSize×predSize」)を含む。カレントブロックのサイズに基づき、MIPサイズ識別子は「0」、「1」、または「2」とすることができて、MIPサイズ識別子はパラメータ「mipSizeId」に記録される。異なるブロックは異なる予測パラメータを持ちうる。
【0018】
ステップS102では、MIPプロセスは参照画素を取得する。参照画素は、上側隣接ブロック、および/または、左側隣接ブロックからとすることができる。上側隣接ブロックからの画素がパラメータ「refT」として記憶され、左側隣接ブロックからの画素がパラメータ「refL」として記憶される。
【0019】
ステップS103では、MIPプロセスに対する入力サンプルが決定される。入力サンプルは、3つのサブステップ、S1031、S1032、およびS1033により決定することができる。サブステップS1031では、(例えばステップS102からの)参照画素に基づいて、ダウンサンプリングプロセスが行われて参照サンプルが生成される。サブステップS1031では、参照サンプリング領域(またはバッファサンプリング領域)が決定される。一部の実施形態では、マトリクス転置プロセスがサブステップS1032に含まれうる。サブステップS1033では、マトリクス乗算計算が入力サンプルに基づいて行われる。
【0020】
ステップS104では、イントラMIP予測サンプルが生成される。ステップS104は4つのサブステップ、S1041、S1042、S1043、およびS1044を含む。サブステップS1041では、MIP予測ブロックがMIP重み付けマトリクス、オフセットシフト用パラメータ(例えば、「fO」)、および数値シフト用パラメータ(例えば、「sW」)に基づいて生成される。本開示では、オフセットシフト用パラメータおよび数値シフト用パラメータは固定値に設定される。サブステップS1042では、MIP予測ブロックに対して補間プロセスが行われる。サブステップS1043では、MIP予測ブロックが転置される。サブステップS1044では、イントラMIP予測サンプルが生成される。一部の実施形態では、イントラMIP予測サンプルは、上側隣接画素からの予測サンプルを考慮することで生成することができる。他の実施形態では、イントラMIP予測サンプルは、上側隣接画素からの予測サンプルを考慮せずに(例えば、左側隣接画素からの予測サンプルを考慮するだけで)、生成することができる。MIPプロセスの詳細は、図3および対応する式を参照して以下で論じられる。
【0021】
図2は、本開示の一実施形態に係る符号化システム200の模式図である。符号化システム200は、入力画像20を符号化、圧縮、および/または、処理して、出力ビットストリーム21をバイナリ形式で生成するように構成される。符号化システム200は、入力画像20を1つまたは複数の符号化ツリーユニット(CTU)22へ分割するように構成されている分割部201を含む。一部の実施形態では、分割部201は画像をスライス、タイル、および/または、ブリックへ分割することができる。ブリックのそれぞれは、1つまたは複数の不可欠なCTU22および/もしくは部分的なCTU22を含みうる。また、一部の実施形態では、分割部201は、それぞれが1つまたは複数のスライス、タイル、もしくはブリックを含みうる、1つまたは複数のサブピクチャを形成することもできる。分割部201は、更なるプロセスのためにCTU22を予測部202へ送信する。
【0022】
予測部202は、CTU22のそれぞれに対する予測ブロック23を生成するように構成される。予測ブロック23は、1つまたは複数のインター予測方法もしくはイントラ予測方法に基づいて様々な内挿方式および/または外挿方式を使うことで生成することができる。図2に示されるように、予測部202は、ブロック分割部203、ME(動き推定)部204、MC(動き補償)部205、およびイントラ予測部206をさらに含むことができる。ブロック分割部203は、CTU22をより小さな符号化ユニット(CU)または符号化ブロック(CB)へ分割するように構成される。一部の実施形態では、CUは、四分木分割、二分木分割、三分木分割などの様々な方法によりCTU22から生成することができる。ME部204は、入力画像20に示される物体の動き、または入力画像20を生成する画像撮影装置の動きによって生じる変化を推定するように構成される。MC部205は、前記の動きによって生じる変化を調整および補償するように構成される。ME部204とMC部205のいずれも、CU(またはCUの一部分)の(異なる時点での)インター予測ブロックを導出するように構成される。一部の実施形態では、ME部204およびMC部205は、レート歪み最適化された動き推定方法を使用してインター予測ブロックを導出することができる。
【0023】
イントラ予測部206は、MIPモードを含む様々なイントラ予測モードを使ってCU(またはCUの一部分)の(同じ時点での)イントラ予測ブロックを導出するように構成される。MIPモード(以降では「MIPプロセス」と呼ばれる)を使ったイントラ予測ブロックの導出の詳細は、図1Bおよび図3を参照して論じられる。MIPプロセスの間は、イントラ予測部206は、まずCUの隣接サンプルから1つまたは複数の参照サンプルを、例えば隣接サンプルを参照サンプルとして直接使う、または隣接サンプルをダウンサンプリングする、または隣接サンプルから直接抽出する(例えば、図3のステップ301)ことにより、導出する。
【0024】
第2に、イントラ予測部206は、参照サンプル、MIPマトリクスおよびシフト用パラメータを使って、CU内の多数のサンプル位置で予測サンプルを導出する。サンプル位置は、CU内のあらかじめ設定されたサンプル位置とすることができる。例えば、サンプル位置は、CU内部で奇数の水平座標値および垂直座標値(例えば、x=1、3、5などで、y=1、3、5など)を持つ位置とすることができる。シフト用パラメータはオフセットシフト用パラメータおよび数値シフト用パラメータを含み、これらは予測サンプルを生成する際のシフト演算で使用することができる。この取り決めにより、イントラ予測部206はCUにおいて予測サンプルを生成することができる(すなわち、「MIP予測」または「MIP予測ブロック」はそのような予測サンプルの一群を指す)(例えば、図3のステップ302)。一部の実施形態では、サンプル位置は、CU内部で偶数の水平座標値および垂直座標値を持つ位置とすることができる。
【0025】
第3に、イントラ予測部206はCUの残存位置(例えば、それらはサンプル位置ではない)で予測サンプルを導出することができる(例えば、図3のステップ303)。一部の実施形態では、イントラ予測部206は、補間フィルタを使用して残存位置で予測サンプルを導出することができる。前述のプロセスにより、イントラ予測部206はCTU22内のCUに対して予測ブロック23を生成することができる。
【0026】
図2を参照すると、予測部202は予測ブロック23を加算器207へ出力する。加算器207は、分割部201の出力(例えば、CTU22内のCU)と予測ブロック202の出力(すなわち、CUの予測ブロック23)の間の差分(例えば、残差R)を計算する。変換部208は残差Rを読み出し、予測ブロック23に対して1つまたは複数の変換演算を行い、さらに後で使用する係数24を得る。量子化部209は係数24を量子化して量子化された係数25(例えば、レベル)を逆量子化部210へ出力することができる。逆量子化部210は量子化された係数25に対してスケーリング操作を行い、再構成された係数26を逆変換部211へ出力する。逆変換部211は、変換部208での変換に対応する1つまたは複数の逆変換を行い、再構成された残差27を出力する。
【0027】
そして、加算器212は再構成された残差27に予測部202からのCUの予測ブロック23を加えることで再構成されたCUを計算する。また、加算器212は、イントラ予測参照として使用されるその出力28を予測部202へ送る。CTU22内のすべてのCUが再構成された後、フィルタ処理部213は再構成されたピクチャ29に対してインループフィルタによる処理を実行することができる。フィルタ処理部213は1つまたは複数のフィルタ、例えばデブロッキングフィルタ、サンプル適応オフセット(SAO)フィルタ、適応ループフィルタ(ALF)、色差(chroma)スケーリングを持つ輝度(luma)マッピング(LMCS)フィルタ、ニューラルネットワークベースフィルタ、および、符号化歪を抑制する、またはピクチャの符号化品質を高める他の適切なフィルタを含む。
【0028】
その後、フィルタ処理部213は復号ピクチャ30(またはサブピクチャ)を復号ピクチャバッファ(DPB)214へ送信することができる。DPB214は、制御情報に基づいて復号ピクチャ31を出力する。また、DPB214に記憶されたピクチャ31は予測部202によるインター予測またはイントラ予測を行うための参照ピクチャとして用いられることがある。
【0029】
エントロピー符号化部215は、ピクチャ31、符号化システム200内の各部からのパラメータ、および補足情報(例えば、システム200を制御する、またはシステム200と通信するための情報)をバイナリ形式へ変換するように構成される。エントロピー符号化部215はそれに応じて出力ビットストリーム21を生成することができる。
【0030】
一部の実施形態では、符号化システム200は、プロセッサおよび1つまたは複数の符号化プログラムを有する記憶媒体を備えたコンピュータ装置とすることができる。プロセッサが符号化プログラムを読み出し、実行すると、符号化システム200は入力画像20を受信し、それに応じて出力ビットストリーム21を生成することができる。一部の実施形態では、符号化システム200は、1つまたはチップを備えたコンピュータ装置とすることができる。符号化システム200の各部または要素は、チップ上の集積回路として実現することができる。
【0031】
図3は、本開示の実施形態に係るMIPプロセスを示す模式図である。MIPプロセスはイントラ予測部(例えば、イントラ予測部206)によって実施することができる。図3に示されるように、イントラ予測部は予測モジュール301およびフィルタ処理モジュール302を含みうる。やはり図3に示されるように、MIPプロセスは3つのステップ301、302、303を含む。MIPプロセスは、カレントブロックまたは符号化ブロック300(CUまたはCUの複数の区画など)に基づいて予測ブロックを生成することができる。
【0032】
ステップ301
ステップ301において、イントラ予測部は符号化ブロック300の隣接サンプル31、33を使用して参照サンプル32、34を生成することができる。示される実施形態では、隣接サンプル31は上側隣接サンプルであり、隣接サンプル33は左側隣接サンプルである。イントラ予測部206は隣接サンプル31、33のうちの2つのサンプルごとにその値の平均を算出し、この値の平均をそれぞれ参照サンプル32、34の値として設定することができる。一部の実施形態では、イントラ予測部206は、隣接サンプル31、33のうちの各2つのサンプルのうちの1つの値を参照サンプル32または34の値として選択することができる。示される実施形態では、イントラ予測部206は、符号化ブロック300の8つの上側隣接サンプル31から4つの参照サンプル32を、また符号化ブロック300の8つの左側隣接サンプル33から別の4つの参照サンプル34を導出する。
【0033】
ステップ301において、イントラ予測部は符号化ブロック300の幅および高さを決定し、それらをそれぞれ変数「cbWidth」と「cbHeight」で示す。一部の実施形態では、イントラ予測部206はレート歪み最適化されたモード決定プロセスを採用して、イントラ予測モード(例えば、MIPモードが使用されるかどうか)を決定することができる。そのような実施形態では、符号化ブロック300を1つまたは複数の変換ブロックへ分割することができて、その幅および高さはそれぞれ変数「nTbW」と「nTbH」で示される。MIPモードがイントラ予測モードとして使用される場合、イントラ予測部は、以下の条件A~Cに基づいてMIPサイズ識別子(変数「mipSizeId」で示される)を決定する。
[条件A]「nTbW」と「nTbH」がいずれも4である場合、「mipSizeId」を0に設定する。
[条件B]そうではなく、「cbWidth」または「cbHeight」が4である場合、「mipSizeId」を1に設定する。
[条件C]いずれでもなければ、「mipSizeId」を2に設定する。
【0034】
例として、符号化ブロック300のサイズが「8×8」の場合(すなわち、「cbWidth」と「cbHeight」がいずれも8の場合)、「mipSizeId」は2に設定される。別の例として、符号化ブロック300の変換されるブロックのサイズが「4×4」の場合(すなわち、「nTbW」と「nTbH」がいずれも4である場合)、「mipSizeId」は0に設定される。さらに別の例として、符号化ブロック300のサイズが「4×8」の場合、「mipSizeId」は1に設定される。
【0035】
示される実施形態では、3種類の「mipSizeId」、つまり「0」、「1」、「2」がある。MIPサイズ識別子(すなわち、変数「mipSizeId」)のそれぞれの種類は、MIPプロセスを実行する特定の方法に対応する(例えば、異なるMIPマトリクスを使用する)。他の実施形態では、4種類以上のMIPサイズ識別子がありうる。
【0036】
MIPサイズ識別子に基づいて、イントラ予測部は以下の条件D~Fに基づいて変数(「Size」および「predSize」)を決定することができる。
[条件D]「mipSizeId」が0である場合、「boundarySize」を2に、「predSize」を4に設定する。
[条件E]「mipSizeId」が1である場合、「boundarySize」を4に、「predSize」を4に設定する。
[条件F]「mipSizeId」が2である場合、「boundarySize」を4に、「predSize」を8に設定する。
【0037】
示される実施形態では、「boundarySize」は、符号化ブロック300の上側隣接サンプル31および左側隣接サンプル33のそれぞれから導出された参照サンプル32、34の個数を表す。変数「predSize」はこの後の計算(すなわち、下記の式(C))で使用される。
【0038】
また、一部の実施形態では、イントラ予測部は変数「isTransposed」を導出して、時間的配列に格納される参照サンプル32、34の順序を示すこともできる。例えば、「isTransposed」が「0」であることは、イントラ予測部が符号化ブロック300の上側隣接サンプル31から導出された参照サンプル32を左側隣接サンプル33から導出された参照サンプル34より前に提示することを示す。あるいは、「isTransposed」が「1」であることは、イントラ予測部が符号化ブロック300の左側隣接サンプル33から導出された参照サンプル34を上側隣接サンプル31から導出された参照サンプル32より前に提示することを示す。符号化システム200の実装では、「isTransposed」の値は、符号化されビットストリーム(例えば、出力ビットストリーム21)へ書き込まれるMIPプロセスのパラメータの一つとしてエントロピー符号化部(例えば、エントロピー符号化部215)へ送られる。それに応じて、本開示に記載される図4の復号システム400の実装では、「isTransposed」の値は、入力ビットストリーム(出力ビットストリーム21でありうる)を解析することで構文解析部(例えば、構文解析部401)から受信することができる。
【0039】
イントラ予測部はさらに変数「inSize」を決定して、MIP予測の導出時に使用される参照サンプル32、34の個数を示すことができる。「inSize」の値は次式(A)により決定される。本開示では、式の中のすべての演算子の意味および演算は、ITU-T H.265標準で規定される、対応する演算子と同一である。
【0040】
inSize = (2 * boundarySize) - (mipSizeId = = 2) ? 1:0; (A)
例えば、「==」は比較演算子で、「に等しい」である。例えば、「mipSizeId」が2である場合、「inSize」は7である((2×4)-1により算出される)。例えば、「mipSizeId」が1である場合、「inSize」は8である((2×4)-0により算出される)。一部の実施形態では、パラメータ「inSize」は、以下のSize-Id表で見つけることができる。
【0041】
【表1】
【0042】
イントラ予測部は以下のプロセスを呼び出して、配列p[x](「x」は「0」から「inSize-1」)に格納される参照サンプル群32、34を導出することができる。イントラ予測部は、符号化ブロック300の上側隣接サンプル31から「nTbW」サンプルを導出(および配列「refT」にそれらを格納)することができて、また符号化ブロック300の左側隣接サンプル33から「nTbH」サンプルを導出(および配列「refL」にそれらを格納)することができる。
【0043】
イントラ予測部は「refT」上のダウンサンプリングプロセスに対して頭文字を記し、「boundarySize」サンプルを得て、「refT」に「boundarySizeサンプル」を格納することができる。イントラ予測部206は「refL」に対してダウンサンプリングプロセスを開始し、「boundarySize」サンプルを得て、「refL」に「boundarySize」サンプルを格納することができる。
【0044】
一部の実施形態では、イントラ予測部は、変数「isTransposed」により示される順序に基づいて配列「refT」および「refL」を単一の配列「pTemp」へ組み込むことができる。イントラ予測部は「isTransposed」を導出して、時間的配列「pTemp」に格納される参照サンプルの順序を示すことができる。例えば、「isTransposed」が「0」(またはFALSE)であることは、イントラ予測部が符号化ブロック300の上側隣接サンプル31から導出された参照サンプル32を左側隣接サンプル33から導出された参照サンプル34より前に提示することを示す。別の場合では、「isTransposed」が「1」(またはTRUE)であることは、イントラ予測部が符号化ブロック300の左側隣接サンプル33から導出された参照サンプル34を上側隣接サンプル31から導出された参照サンプル32より前に提示することを示す。一部の実施形態では、符号化システム200の実装において、イントラ予測部はレート歪み最適方法を使うことで「isTransposed」の値を決定することができる。一部の実施形態では、符号化システム200の実装において、イントラ予測部は隣接サンプル32、34と符号化ブロック300の間の比較および/または相関に基づいて「isTransposed」の値を決定することができる。符号化システム200の実装では、「isTransposed」の値は、ビットストリーム(例えば、出力ビットストリーム21)へ書き込まれるMIPプロセスのパラメータの一つとしてエントロピー符号化部(例えば、エントロピー符号化部215)へ送ることができる。それに応じて、本開示に記載される図4の復号システム400の実装では、「isTransposed」の値は、入力ビットストリーム(出力ビットストリーム21でありうる)を解析することで構文解析部(例えば、構文解析部401)から受信することができる。
【0045】
一部の実施形態では、パラメータ「mipSizeId」は、カレントブロックの選択されたサイズパラメータが所定の範囲内であるかどうかを判定するのに使用することができる。より詳細には、「0」または「1」に等しい「mipSizeId」は、選択されたサイズパラメータが所定の範囲内であることを意味する。「mipSizeId」が「2」に等しい場合は、選択されたサイズパラメータが所定の範囲内ではないことを意味する。すなわち、MIP入力サンプルは、以下でより詳細に論じられるように、バッファ領域(例えば、「pTemp」)、MIPサイズ識別子(例えば、「mipSizeId」)、隣接サンプルのビット深度(例えば、「BitDepth」)に基づいて決定することができる。
【0046】
イントラ予測部は、以下の条件GおよびHに基づいて配列「p[x]」(xは「0」から「inSize-1」)を決定することができる。
[条件G]「mipSizeId」が2である場合、p[x]=pTemp[x+1]-pTemp[0]。
[条件H]そうでなければ(例えば、「mipSizeId」が2未満)、p[0]=pTemp[0]-(1<<(BitDepth-1))およびp[x]=pTemp[x]-pTemp[0](xが1から「inSize-1」に対して)。
【0047】
上記の条件Hでは、「BitDepth」は符号化ブロック300内のサンプルの色成分(例えば、Y成分)のビット深度である。記号「<<」は、ITU-T H.265標準で使用されるビットシフト演算記号である。
【0048】
あるいは、イントラ予測部は、以下の条件IおよびJに基づいて配列p[x](xが「0」から「inSize-1」に対して)を導出することができる。
[条件I]「mipSizeId」が2である場合、p[x]=pTemp[x+1]-pTemp[0]。
[条件J]そうでなければ(例えば、「mipSizeId」が2未満)、p[0]=(1<<(BitDepth-1))-pTemp[0]およびp[x]=pTemp[x]-pTemp[0](xが1から「inSize-1」に対して)。
【0049】
一部の実施形態では、イントラ予測部は、「mipSizeId」の値を判定することなく、統一された計算方法を使うことで配列p[x]の値を決定することができる。例えば、イントラ予測部は、「(1<<(BitDepth-1))」を「pTemp」内に追加の要素として付加することができて、p[x]を「pTemp[x]-pTemp[0]」として計算することができる。
【0050】
一部の実施形態では、パラメータ「(1<<(BitDepth-1))」は定数とすることができる。一部の実施形態では、パラメータ「(1<<(BitDepth-1))」は「2^(BitDepth-1)」と示すことができる。それに応じて、パラメータ「p[0]」および「p[x]」は以下の式P-1、P-2、およびP-3に基づいて計算することができる。
【0051】
【数1】
【数2】
【数3】
【0052】
式P-1およびP-2は、「mipSizeId」が「0」または「1」に等しい場合に当てはまり、選択されたサイズパラメータが所定の範囲内であることを意味する。カレントブロックの選択されたサイズパラメータが所定の範囲内であると判定した後に、「1<<(BitDepth-1)」を決定することができる。そして、「1<<(BitDepth-1)」と「pTemp[0]」の間の差分を決定することができる。差分はp[0]に設定される。そしてp[x]を上記の式P-1およびP-2に基づいて計算することができる。
【0053】
式P-3は、「mipSizeId」が「2」に等しい場合に当てはまり、選択されたサイズパラメータが所定の範囲内ではないことを意味する。カレントブロックが4×4のブロックであると仮定し、これは、バッファ領域「pTemp」に4つの値があることを意味する。これらの4つの値は、pTemp[0]、pTemp[1]、pTemp[2]、pTemp[3]である。上記の式P-3およびこれらの4つの値に基づいて、配列「p[x]」を決定することができる。配列「p[x]」内の値はMIP入力サンプルと呼ばれることがある。
【0054】
ステップ302
ステップ302において、イントラ予測部(または予測モジュール301)は、参照サンプル群32、34およびMIPマトリクスを使うことで符号化ブロック300のMIP予測を導出する。MIPマトリクスは、その対応するMIPモード識別子(すなわち、変数「mipModeId」)およびMIPサイズ識別子(すなわち、変数「mipSizeId」)に基づいて、あらかじめ規定されたMIPマトリクスの一群から選択される。
【0055】
イントラ予測部により導出されたMIP予測は、符号化ブロック300内のすべて、または一部のサンプル位置の部分的予測サンプル35を含む。MIP予測は「predMip[x][y]」と表される。
【0056】
図3に示される実施形態では、部分的予測サンプル35は、カレントブロック300内でグレーの四角で表示されるサンプルである。ステップ301で導出された、配列「p[x]」内の参照サンプル32、34は予測モジュール301への入力として使用される。予測モジュール301は、MIPマトリクスおよびシフト用パラメータを使うことで部分的予測サンプル35を計算する。シフト用パラメータは、オフセットシフト用パラメータ(「fO」)および数値シフト用パラメータ(「sW」)を含む。
一部の実施形態では、予測モジュール301は次式(B)および(C)に基づいて、座標(x、y)を有する部分的予測サンプル35を導出する。
【0057】
【数4】
【0058】
【数5】
【0059】
上記の式(B)で、パラメータ「fO」はパラメータ「oW」またはオフセット値を決定するのに使用される、オフセットシフト用パラメータである。パラメータ「sW」は数値シフト用パラメータである。「p[i]」は参照サンプルである。記号「>>」は、H.265標準で規定されるバイナリ右シフト演算子である。
【0060】
上記の式(C)で、「mWeight[i][j]」はMIP重み付けマトリクスであり、マトリクス要素は符号化および復号のいずれでも固定定数である。あるいは、一部の実施形態では、符号化システム200の実装で適応MIPマトリクスを使用する。例えば、MIP重み付けマトリクスは、1つまたは複数の符号化ピクチャを入力として使って、または外部手段により符号化システム200へ供給される画像を使って、様々な訓練方法により更新することができる。イントラ予測部は、MIPモードが決定された場合に「mWeight[i][j]」をエントロピー符号化部(例えば、エントロピー符号化部215)へ送ることができる。その後、エントロピー符号化部はビットストリーム内、例えば、MIPデータを含むビットストリーム内の1つまたは複数の特別データユニット内に「mWeight[i][j]」を書き込むことができる。それに応じて、一部の実施形態では、適応MIPマトリクスを用いた復号システム400の実装は、例えば、1つまたは複数の符号化ピクチャもしくはブロック、または外的意味により供給される、もしくは構文解析部401がMIPマトリクスデータを含む入力ビットストリーム内の特別データユニットを解析することで得られる他のビットストリームからのピクチャを入力する訓練方法を使ってMIPマトリクスを更新することができる。
【0061】
予測部301は、カレントブロック300のサイズおよびカレントブロック300に対して使用されるMIPモードに基づいて「sW」および「fO」の値を決定することができる。一部の実施形態では、予測部301はルックアップテーブルを使うことで「sW」および「fO」の値を得ることができる。例えば、以下の表1を使用して「sW」を決定することができる。
【0062】
【表2】
【0063】
一部の実施形態では、数値シフト用パラメータ「sW」は、5や6などの第1固定値に設定することができる。そのような実施形態では、数値シフト用パラメータ「sW」の値を調べるのに上記の表1を使用する必要はない。例えば、「mipSizeId」が「0」または「2」に等しい場合、数値シフト用パラメータ「sW」は「5」に設定することができる。別の例として、「mipSizeId」が「2」に等しい場合、数値シフト用パラメータ「sW」は「5」に設定することができる。以下の表2は、数値シフト用パラメータ「sW」の異なる設定を示す。一部の実施形態では、数値シフト用パラメータ「sW」は、予測モジュール301により設定することができる。
【0064】
【表3】
【0065】
一部の実施形態では、予測モジュールは「sW」を定数に設定することができる。例えば、予測モジュールは、異なるMIPモードを有する様々なサイズのブロックに対して「sW」を「5」に設定することができる。別の例として、予測モジュール301は、異なるMIPモードを有する様々なサイズのブロックに対して「sW」を「6」に設定することができる。さらに別の例として、予測モジュールは、異なるMIPモードを有する様々なサイズのブロックに対して「sW」を「7」に設定することができる。
【0066】
一部の実施形態では、予測部301は、以下の表3を使用してオフセットシフト用パラメータ「fO」を決定することができる。
【0067】
【表4】
【0068】
一部の実施形態では、オフセットシフト用パラメータ「fO」は、23、32、46、56、66などの第2固定値に設定することができる。第2固定値は1~100の好ましい範囲を有する。そのような実施形態では、オフセットシフト用パラメータ「fO」の値を調べるのに上記の表3を使用する必要はない。一部の実施形態では、オフセットシフト用パラメータ「fO」はパラメータ「mipSizeId」に基づいて設定することができる。例えば、「mipSizeId」が「0」に等しい場合、オフセットシフト用パラメータ「fO」は「34」に設定することができる。別の例として、「mipSizeId」が「1」に等しい場合、オフセットシフト用パラメータ「fO」は「23」に設定することができる。さらに別の例として、「mipSizeId」が「1」に等しい場合、オフセットシフト用パラメータ「fO」は「46」に設定することができる。以下の表4は、オフセットシフト用パラメータ「fO」の異なる設定を示す。一部の実施形態では、オフセットシフト用パラメータ「fO」は、予測モジュール301により設定することができる。
【0069】
【表5】
【0070】
上記の式(B)を参照すると、数値シフト用パラメータ「sW」およびオフセットシフト用パラメータ「fO」が固定値に設定される場合、パラメータ「oW」も定数とすることができて、これによりMIPプロセス全体の計算速度が向上する。
【0071】
一部の実施形態では、イントラ予測部は、配列「predMip」に格納されたMIP予測サンプルの値に対して「クリッピング操作を実行することができる。「isTransposed」が1(またはTRUE)の場合、「predSize×preSize」の配列「predMip[x][y]」(0から「predSize-1」のxに対して、0から「predSize-1」のyに対して)は、「predTemp[y][x]=predMip[x][y]」と転置されて、「predMip=predTemp」となる。
【0072】
より詳細には、符号化ブロック303のサイズが「8×8」(すなわち、「cbWidth」と「cbHeight」がいずれも8)である場合、イントラ予測部は「8×8」の「predMip」配列を導出することができる。
【0073】
ステップ303
図3のステップ303において、イントラ予測部は、符号化ブロック300内の部分的サンプル35以外の残存サンプルの予測サンプル37を導出する。図3に示されるように、イントラ予測部は、フィルタ処理モジュール302を使用して符号化ブロック300内の部分的サンプル35以外の残存サンプルの予測サンプル37を導出することができる。フィルタ処理モジュール302への入力は、ステップ302における部分的サンプル35とすることができる。フィルタ処理モジュール302は、1つまたは複数の補間フィルタを使用して符号化ブロック300内の部分的サンプル35以外の残存サンプルの予測サンプル37を導出することができる。イントラ予測部(またはフィルタ処理モジュール302)は符号化ブロック300の予測(多数の予測サンプル37を含む)を生成することができて、以下の条件KおよびLに基づいて配列「predSamples[x][y]」(0から「nTbW-1」のxに対して、0から「nTbH-1」のyに対して)内に予測37を格納することができる。
【0074】
[条件K]イントラ予測部が「nTbW」が「predSize」より大きい、または「nTbH」が「predSize」より大きいと判定した場合、イントラ予測部はアップサンプリングプロセスを開始し、「predMip」に基づいて「predSamples」を導出する。
【0075】
[条件L]そうでなければ、イントラ予測部は符号化ブロック300の予測を符号化ブロックのMIP予測に設定する。
【0076】
すなわち、イントラ予測部は「predSamples[x][y]」(0から「nTbW-1」のxに対して、0から「nTbH-1」のyに対して)を「predMip[x][y]」に等しいと設定することができる。例えば、イントラ予測部は、そのサイズが「8×8」に等しい(すなわち、「cbWidth」と「cbHeight」がいずれも8である)符号化ブロックに対する「predSamples」をその「predMip[x][y]」に設定することができる。
【0077】
ステップ301~303を通じて、イントラ予測部はカレントブロック300の予測を生成することができる。生成された予測は更なるプロセス(例えば、図2を参照して上述された予測ブロック23)で使用することができる。
【0078】
図4は、本開示の一実施形態に係る復号システム400の模式図である。復号システム400は、入力ビットストリーム40を受信、処理して出力ビデオ41へ変換するように構成される。入力ビットストリーム40は、圧縮/符号化されたピクチャ/ビデオを表すビットストリームでありうる。一部の実施形態では、入力ビットストリーム40は、符号化システム(符号化システム200など)により生成された出力ビットストリーム(例えば、出力ビットストリーム21)からでありうる。
【0079】
復号システム400は、入力ビットストリーム40を解析してそのシンタックス要素の値を得るように構成されている構文解析部401を含む。また、構文解析部401はシンタックス要素の二進表現を数値(すなわち、復号ブロック42)へ変換して、(例えば、復号のために)この数値を予測部402へ送る。一部の実施形態では、構文解析部401は、数値を復号するための1つまたは複数の変数および/もしくはパラメータを予測部402へ送ることもできる。
【0080】
予測部402は、復号ブロック42(例えば、CUまたは変換ブロックなどのCUの一部分の予測ブロック43)を決定するように構成される。復号ブロック42を復号するのにインター符号化モードが使用されたと示される場合、予測部402のMC(動き補償)部403は、関連するパラメータを構文解析部401から受信し、それに応じてインター符号化モードで復号を行うことができる。復号ブロック42を復号するのにイントラ予測モード(例えば、MIPモード)が使用されると示される場合、予測部402のイントラ予測部404は、関連するパラメータを構文解析部401から受信し、それに応じてイントラ符号化モードで復号を行うことができる。一部の実施形態では、イントラ予測モード(例えば、MIPモード)は、入力ビットストリーム40内に埋め込まれている特定のフラグ(例えば、MIPフラグ)により識別することができる。
【0081】
例えば、MIPモードが特定された場合、イントラ予測部404は(図3で説明されたステップ301~303と同様の)以下の方法に基づいて予測ブロック43(多数の予測サンプルを含む)を決定することができる。
【0082】
まず、イントラ予測部404は復号ブロック42の隣接サンプルから1つまたは複数の参照サンプルを導出する(図3のステップ301と同様)。例えば、イントラ予測部404は、隣接サンプルのダウンサンプリングを行うことで、または隣接サンプルから一部分を直接抽出することで、参照サンプルを生成することができる。
【0083】
そして、イントラ予測部404は、参照サンプル、MIPマトリクス、およびシフト用パラメータを使って復号ブロック42内の部分的予測サンプルを導出することができる(図3のステップ302と同様)。一部の実施形態では、部分的予測サンプルの位置は復号クロック42内であらかじめ設定することができる。例えば、部分的予測サンプルの位置を、符号化ブロック内で奇数の水平座標値および垂直座標値を持つ位置とすることができる。シフト用パラメータはオフセットシフト用パラメータおよび数値シフト用パラメータを含むことができて、これらは部分的予測サンプルを生成する際のシフト演算で使用することができる。
【0084】
最終的に、復号ブロック42の部分的予測サンプルが導出されたら、イントラ予測部404は、復号ブロック42内の部分的予測サンプル以外の残存サンプルの予測サンプルを導出する(図3のステップ303と同様)。例えば、イントラ予測部404は補間フィルタを使用して、部分的予測サンプルおよび隣接サンプルを補間フィルタの入力として使うことで、予測サンプルを導出することができる。
【0085】
復号システム400は、符号化システム200の逆量子化部210の機能と同様の機能を有するスケーリング部405を含む。スケーリング部405は、再構成された係数45を生成するために構文解析部401からの量子化された係数44(例えば、レベル)に対してスケーリング操作を行う。
【0086】
変換部406は、符号化システム200の逆変換部211の機能と同様の機能を有する。変換部406は1つまたは複数の変換演算(例えば、逆変換部211による1つまたは複数の変換演算の逆演算)を行って、再構成された残差46を得る。
【0087】
加算器407は予測部402からの予測ブロック43と変換部406からの再構成された残差46を加算し、復号ブロック42の再構成されたブロック47を得る。また、再構成されたブロック47は予測部402へ送信されて、(例えば、イントラ予測モードで符号化された他のブロックに対する)参照として使用される。
【0088】
ピクチャまたはサブピクチャ内のすべての復号ブロック42が再構成された(すなわち、再構成されたブロック48が形成された)後に、フィルタ処理部408は再構成されたブロック49に対してインループフィルタ処理を行うことができる。フィルタ処理部408は、デブロッキングフィルタ、サンプル適応オフセット(SAO)フィルタ、適応ループフィルタ(ALF)、色差スケーリングを持つ輝度マッピング(LMCS)フィルタ、ニューラルネットワークベースフィルタなどの1つまたは複数のフィルタを含む。一部の実施形態では、フィルタ処理部408は、再構成されたブロック48内の1つまたは複数の標的画素のみに対してインループフィルタ処理を実行することができる。
【0089】
そして、フィルタ処理部408は復号ピクチャ49(もしくはピクチャ)またはサブピクチャをDPB(復号ピクチャバッファ)409へ送信する。DPB409は、タイミングおよび制御情報に基づいて復号ピクチャを出力ビデオ41として出力する。また、DPB409に記憶された復号ピクチャ49は、インター予測またはイントラ予測を行う際に予測部402により参照ピクチャとして用いることができる。
【0090】
一部の実施形態では、復号システム400は、プロセッサおよび1つまたは複数の復号プログラムを記録した記憶媒体を備えたコンピュータ装置とすることができる。プロセッサが復号プログラムを読み出し、実行すると、復号システム400は入力ビデオビットストリームを受信し、対応する復号ビデオを生成することができる。
【0091】
一部の実施形態では、復号システム400は、1つまたは複数のチップを備えたコンピュータ装置とすることができる。復号システム400の各部または要素は、チップ上の集積回路として実現することができる。
【0092】
図5は、本開示の一実施形態に係る方法500を示すフローチャートである。方法500はブロック501でカレントブロックの予測パラメータを決定することで始まる。一部の実施形態では、予測パラメータは予測用のパラメータ(例えば、H.265標準で規定される「predModeIntra」)およびサイズ識別子(例えば、「mipSizeId」)を含む。ブロック502で、MIPモードが適用可能であることを予測パラメータが示す場合、方法500は隣接サンプルに基づいてMIP入力サンプル(例えば、配列「p[x]」内の値)の決定を続ける。一部の実施形態では、隣接サンプルは上側隣接サンプル、および/または、左側隣接サンプルを含むことができる。
【0093】
ブロック503で、方法500は、オフセットシフト用パラメータ(fO)と、MIP入力サンプリングの合計との積の決定を続ける。上記の式(B)に示されるように、MIP入力サンプリングの合計は
【0094】
【数6】
とすることができて、それゆえ積は、
【0095】
【数7】
とすることができる。
【0096】
ブロック503で、方法500は数値シフト用パラメータ(sW)に基づいて第1定数の決定を続ける。上記の式(B)に示されるように、第1定数は「1<<(sW-1)」とすることができる。ブロック504で、方法500は第1定数および積を乗算することでオフセット値(oW)の決定を続ける。上記の式(B)に示されるように、第1オフセット値(oW)は
【数8】
とすることができる。
【0097】
ブロック505で、方法500は予測パラメータに基づいてMIP重み付けマトリクスを決定する。上記の式(B)で、MIP重み付けマトリクスはマトリクス「mWeight」である。一部の実施形態では、MIP重み付けマトリクスは、機械学習(ML)または人工知能(AI)を含む訓練プロセスなどの様々な方法に基づいて生成することができる。
【0098】
ブロック507で、方法500はMIP重み付けマトリクス、数値シフト用パラメータ(sW)およびオフセット値(oW)に基づいてMIP予測の決定を続ける。MIP予測は、上記の式(C)に示されるマトリクス「predMip[x][y]」とすることができる。一部の実施形態では、MIP予測は、上記の式(C)で説明されたように決定することができる。一部の実施形態では、MIP予測は、以下の式(D)に基づいて決定することができる。
【0099】
【数9】
【0100】
上記の式(D)で、「[x][y]」は画素の場所の座標である。「x」はMIP予測マトリクスの水平方向用であり、「y」はMIP予測マトリクスの垂直方向用である。パラメータ「incH」、「predC」、「incW」はMIP重み付けマトリクスからマトリクス値を得るためのパラメータである。式(D)内の他のパラメータは、式(C)を参照しながら上述された。
【0101】
一部の実施形態では、オフセットシフト用パラメータ(fO)は「32」に設定することができて、数値シフト用パラメータ(sW)は6に設定することができる。そのような実施形態では、MIP予測マトリクスは、以下の式(E)および(F)に基づいて決定することができる。
【0102】
【数10】
【0103】
【数11】
【0104】
ブロック508で、方法500はMIP予測マトリクスに基づきフィルタ処理プロセスによりカレントブロックのイントラ予測を生成する。MIP予測マトリクスのサイズがカレントブロックのサイズと同じ場合、方法500はMIP予測マトリクス内の値を、以下の式(G)に示すように、MIPイントラ予測サンプル(例えば、「preSamples[x][y]」)としてカレントブロックに設定することができる。そうではない場合、方法500はフィルタ処理プロセスを実行して、MIP予測マトリクスのサイズを調整することができる。一部の実施形態では、フィルタ処理プロセスはアップサンプリングプロセスまたはローパスフィルタ処理プロセスとすることができる。アップサンプリングプロセスの実施例は、図3(例えば、ステップ303)を参照して上で詳細に論じられる。predSamples[x][y]=predMip[x][y] (G)
【0105】
図6は、本開示の一実施形態に係る方法600を示すフローチャートである。方法600はブロック601でビットストリーム内のカレントブロックの予測パラメータを決定することで始まる。一部の実施形態では、予測パラメータは、H.265標準で規定される「predModeIntra」および「mipSizeId」を含むことができる。
【0106】
ブロック602で、方法600は、カレントブロックの隣接サンプルおよび予測パラメータに基づいてカレントブロックのマトリクスベースのイントラ予測(MIP)入力サンプルを決定して継続する。一部の実施形態では、MIP入力サンプルは配列「p[x]」内の値とすることができる。一部の実施形態では、隣接サンプルは左側隣接サンプル、および/または、上側隣接サンプルを含む。
【0107】
MIP入力サンプルの決定の実施形態は、図3(例えば、ステップ301)を参照して上述される。例えば、方法600は、隣接サンプルにダウンサンプリングプロセスを行って、サイズ識別子に基づいて一時的参照配列(pTemp[x])を生成することを含みうる。
【0108】
ブロック603で、方法600は数値シフト用パラメータ(sW)を第1固定値に設定して継続する。一部の実施形態では、第1固定値は5または6とすることができる。ブロック604で、方法600はオフセットシフト用パラメータ(fO)を第2固定値に設定して継続する。一部の実施形態では、第2固定値は23、34、または46とすることができる。
【0109】
第1固定値および第2固定値が設定されると、第1定数「1<<(sW-1)」を決定することができる。オフセット値(oW)も算出することができる(例えば、式(B))。
【0110】
ブロック605で、方法600は予測パラメータに基づいてカレントブロックのMIP重み付けマトリクスを決定して継続する。MIP重み付けマトリクスの実施例は、図3(例えば、ステップ302)を参照して上述される。
【0111】
ブロック606で、方法600は、MIP重み付けマトリクス、MIP入力サンプル、オフセットシフト用パラメータ(fO)、および数値シフト用パラメータ(sW)に基づいてカレントブロックのMIP予測サンプル(例えば、配列「predMip[x][y]」内の値)を決定して継続する。MIP予測サンプルの実施例は、式(C)、(D)、(E)、および(F)を参照して上で詳細に論じられる。
【0112】
ブロック607で、方法600は、カレントブロックのイントラ予測サンプル(例えば、「predSamples[x][y]」)を生成するためにカレントブロックのMIP予測サンプルに対してアップサンプリングプロセスを行って継続する。一部の実施形態では、カレントブロックのMIP予測サンプルは、カレントブロックのサンプリング点の少なくとも一部に対する予測サンプルを含みうる。MIP予測サンプルおよびMIP重み付けマトリクスの実施例は、式(G)および図3(例えば、ステップ303)を参照して上で詳細に論じられる。
【0113】
図7は、本開示の一実施形態に係るエンコーダ700の模式図である。示されるように、エンコーダ700は第1決定部701、第1演算部702、および第1予測部703を含む。第1決定部701はカレントブロックの予測パラメータを設定し、MIP入力サンプル(例えば、配列「p[x]」内の値)を決定する。一部の実施形態では、MIP入力サンプルは隣接サンプルに基づいて決定することができる。予測パラメータは、どの予測モデル(例えば、MIPモデル)が使用されたか、および対応するパラメータ(例えば、サイズ識別子)を示すパラメータを含む。また、第1決定部701はMIP計量マトリクスを決定することもできる。第1演算部702は、数値シフト用パラメータ(例えば、「sW」)およびオフセットシフト用パラメータ(例えば、「fO」)に基づいてオフセット値(例えば、上述された「oW」)を算出するように構成される。第1予測部703は、MIP計量マトリクス、オフセット値、数値シフト用パラメータ、およびオフセットシフト用パラメータに基づいてカレントブロックのMIP予測を生成する。
【0114】
一部の実施形態では、エンコーダ700は、カレントブロックのMIPモデルを決定するように構成されている第1調査部704を含む。そのような実施形態では、第1決定部701はカレントブロックのMIPモデルインデックスを決定する。そして、第1調査部704は、MIPモデルインデックスに基づいて対応するパラメータ(例えば、sW、fO、MIPサイズ識別子など)を得ることができる。
【0115】
本開示では、用語「部(unit)」はプロセッサ、回路、ソフトウェア、モジュール、またはそれらの組み合わせでありうる。一部の実施形態では、「部」は、SoC(システムオンチップ)などの集積部品でありうる。一部の実施形態では、「部」は、ディスク、ハードドライブ、メモリなどの記憶媒体に記憶された一組の命令を含みうる。
【0116】
図8は、本開示の一実施形態に係るエンコーダ800の模式図である。エンコーダ800は、第1システムバス804により結合された第1通信インタフェース801、第1記憶装置802、および第1プロセッサ803を含みうる。第1システムバス804は、電力線、制御線、および/または、信号線を含みうる。第1通信インタフェース801は、信号を送受信することで他の外部デバイスと通信を行うように構成される。第1記憶装置802は、データ、情報、および/または、第1プロセッサ803により実行されうる命令(図5、6で論じられたステップなど)を記憶するように構成される。
【0117】
第1プロセッサ803は、チップ、集積回路、または信号を処理することができる他のデバイスでありうる。第1プロセッサ803は、汎用プロセッサ、デジタルシグナルプロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、プログラム可能論理回路(PLD)、または他の適切な論理部品でありうる。
【0118】
図9は、本開示の一実施形態に係るデコーダ900の模式図である。示されるように、デコーダ900は、分析部901、第2演算部902、第2予測部903、第2予測部904、および第2調査部905を含む。分析部901は、カレントブロックの予測パラメータを得るためにビットストリームを解析するように構成される。第2決定部902はカレントブロックの適切な予測パラメータを設定し、MIP入力サンプル(例えば、配列「p[x]」内の値)を決定する。一部の実施形態では、MIP入力サンプルは隣接サンプルに基づいて決定することができる。予測パラメータは、どの予測モデル(例えば、MIPモデル)が使用されたか、および対応するパラメータ(例えば、サイズ識別子)を示すパラメータを含む。また、第2決定部903はMIP計量マトリクスを決定することもできる。第2演算部904は、数値シフト用パラメータ(例えば、「sW」)およびオフセットシフト用パラメータ(例えば、「fO」)に基づいてオフセット値(例えば、「oW」)を算出するように構成される。第2予測部904は、MIP計量マトリクス、オフセット値、数値シフト用パラメータ、およびオフセットシフト用パラメータに基づいてカレントブロックのMIP予測を生成する。
【0119】
一部の実施形態では、第2調査部905はカレントブロックのMIPモデルを決定するように構成される。そのような実施形態では、第2決定部902はカレントブロックのMIPモデルインデックスを決定する。そして、第2調査部904は、MIPモデルインデックスに基づいて対応するパラメータ(例えば、sW、fO、MIPサイズ識別子など)を得ることができる。
【0120】
図10は、本開示の一実施形態に係るデコーダ1000の模式図である。デコーダ1000は、第2システムバス1004により結合された第2通信インタフェース1001、第2記憶装置1002、および第2プロセッサ1003を含みうる。第2システムバス1004は、電力線、制御線、および/または、信号線を含みうる。第2通信インタフェース1001は、信号を送受信することで他の外部デバイスと通信を行うように構成される。第2記憶装置1002は、データ、情報、および/または、第2プロセッサ1003により実行されうる命令(図5、6で論じられたステップなど)を記憶するように構成される。
【0121】
第2プロセッサ1003は、チップ、集積回路、または信号を処理することができる他のデバイスでありうる。第2プロセッサ1003は、汎用プロセッサ、デジタルシグナルプロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、プログラム可能論理回路(PLD)、または他の適切な論理部品でありうる。
【0122】
図11は、本開示の一実施形態に係る装置1100の模式図である。装置1100は「送信」装置でありうる。より詳細には、装置1100は、1つまたは複数の画像を取得、符号化、記憶/送信するように構成される。装置1100は、取得部1001、エンコーダ1102、および記憶/送信部1103を含む。
【0123】
取得部1101は、画像を取得または受信し、画像をエンコーダ1102へ送るように構成される。また、取得部1101は、一連の画像で構成されるビデオを取得または受信し、ビデオをエンコーダ1102へ送るように構成されうる。一部の実施形態では、取得部1101は、1つまたは複数のカメラ(例えば、画像カメラ、深度カメラなど)を含むデバイスでありうる。一部の実施形態では、取得部1101は、ビデオビットストリームを部分的に、または完全に復号して画像またはビデオを生成することができるデバイスでありうる。また、取得部1101は、オーディオ信号を捉えるための1つまたは複数の要素を含みうる。
【0124】
エンコーダ1102は、取得部1101からの画像を符号化するように構成され、ビデオビットストリームを生成する。また、エンコーダ1102は、取得部1101からのビデオを符号化するように構成することができて、ビットストリームを生成する。一部の実施形態では、エンコーダ1102は図2で説明された符号化システム200として実現することができる。一部の実施形態では、エンコーダ1102は、オーディオ信号を符号化してオーディオビットストリームを生成するための1つまたは複数のオーディオエンコーダを含みうる。
【0125】
記憶/送信部1103は、エンコーダ1102からのビデオビットストリームおよびオーディオビットストリームのうちの一方または両方を受信するように構成される。記憶/送信部1103は、ビデオビットストリームをオーディオビットストリームとともにカプセル化してメディアファイル(例えば、ISOベースのメディアファイル)またはトランスポートストリームを形成することができる。一部の実施形態では、記憶/送信部1103は、このメディアファイルまたはトランスポートストリームをハードドライブ、ディスク、DVD、クラウドストレージ、携帯型メモリ機器などの記憶部に書き込む、または記憶することができる。一部の実施形態では、記憶/送信部1103は、ビデオ/オーディオビットストリームをインターネット、有線ネットワーク、セルラーネットワーク、無線ローカルエリアネットワークなどの転送ネットワークを介して外部デバイスへ送信することができる。
【0126】
図12は、本開示の一実施形態に係る装置1200の模式図である。装置1200は「送信先」装置でありうる。より詳細には、装置1200は、画像またはビデオを受信、復号、および描画するように構成される。装置1200は、受信部1201、デコーダ1202、および描画部1203を含む。
【0127】
受信部1201は、メディアファイルまたはトランスポートストリームを例えばネットワークや記憶装置から受信するように構成される。メディアファイルまたはトランスポートストリームは、ビデオビットストリームおよび/またはオーディオビットストリームを含む。受信部1201はビデオビットストリームとオーディオビットストリームを分離することができる。一部の実施形態では、受信部1201はビデオ/オーディオビットストリームを抽出することで、新しいビデオ/オーディオビットストリームを生成することができる。
【0128】
デコーダ1202は、1つまたは複数の、上述された復号システム400のようなビデオデコーダを含む。また、デコーダ1202は、1つまたは複数のオーディオデコーダも含みうる。デコーダ1202は、受信部1201からのビデオビットストリームおよび/またはオーディオビットストリームを復号して、復号されたビデオファイル、および/または、1つもしくは複数の(1つまたは多数のチャンネルに対応する)復号されたオーディオファイルを得る。
【0129】
描画部1203は、復号されたビデオ/オーディオファイルを受信し、ビデオ/オーディオファイルを処理して、表示/再生に適したビデオ/オーディオ信号を得る。こうした調整/再構成操作は、雑音除去、合成、色空間の変換、アップサンプリング、ダウンサンプリングなどのうちの1つまたは複数を含みうる。描画部1203は、復号されたビデオ/オーディオファイルの質を向上させることができる。
【0130】
図13は、本開示の一実施形態に係る通信システム1300の模式図である。通信システム1300は、送信元デバイス1301、記憶媒体または転送ネットワーク1302、送信先デバイス1303を含む。一部の実施形態では、送信元デバイス1301は図11を参照して上述された装置1100でありうる。送信元デバイス1301は、メディアファイルを記憶または輸送するために記憶媒体または転送ネットワーク1302へ送信する。送信先デバイス1303は図12を参照して上述された装置1200でありうる。通信システム1300は、メディアファイルを符号化し、符号化されたメディアファイルを輸送または記憶して、符号化されたメディアファイルを復号するように構成される。一部の実施形態では、送信元デバイス1301は第1スマートフォンとすることができて、記憶媒体1302はクラウドストレージとすることができて、送信先デバイスは第2スマートフォンとすることができる。
【0131】
上述された実施形態は、本開示のいくつかの実施形態を示すに過ぎず、その説明は具体的で詳細である。上記の実施形態は本開示を制限するとは解釈できない。多数の変形および変更が当業者により本開示の主旨および範囲から逸脱することなくなされうるということに留意されたい。それゆえ、本開示の範囲は添付の請求項に従うべきである。
図1A
図1B
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13