JP2017513342A - ゼロアウトされた係数を使用した低複雑な順変換のためのシステムおよび方法 - Google Patents

ゼロアウトされた係数を使用した低複雑な順変換のためのシステムおよび方法 Download PDF

Info

Publication number
JP2017513342A
JP2017513342A JP2016557580A JP2016557580A JP2017513342A JP 2017513342 A JP2017513342 A JP 2017513342A JP 2016557580 A JP2016557580 A JP 2016557580A JP 2016557580 A JP2016557580 A JP 2016557580A JP 2017513342 A JP2017513342 A JP 2017513342A
Authority
JP
Japan
Prior art keywords
transform coefficient
coefficient matrix
video
video block
block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
JP2016557580A
Other languages
English (en)
Inventor
チョン、イン・スク
ユ、ヤン
ワン、シャンリン
カークゼウィックズ、マルタ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2017513342A publication Critical patent/JP2017513342A/ja
Ceased legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/18Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本明細書では、ゼロアウトされた係数を使用した低複雑な順変換のためのシステムおよび方法について説明する。本開示で説明する主題の一態様は、ビデオブロックを記憶するように構成されたメモリを備えるビデオエンコーダを提供する。ビデオエンコーダは、メモリと通信しているプロセッサをさらに備える。プロセッサは、ビデオブロックの全出力値を決定するように構成される。プロセッサは、縮約変換係数行列を決定すること、ここにおいて、縮約変換係数行列が、完全変換係数行列の同じ内部領域のゼロまたは非ゼロ値の内部領域とゼロ値の外部領域とを備える、ここにおいて、縮約変換係数行列と完全変換係数行列とが、同じサイズを有する、を行うようにさらに構成される。プロセッサは、縮約変換係数行列を使用してビデオブロックの部分出力値を決定することを行うようにさらに構成される。プロセッサは、全出力値および部分出力値に基づいて縮約変換係数行列を使用してピクセル領域から係数領域にビデオブロックを変換することを行うようにさらに構成される。プロセッサは、変換されたビデオブロックを符号化することを行うようにさらに構成される。

Description

[0001]本開示は、ビデオ符号化に関する。
[0002]デジタルビデオ能力は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末(PDA)、ラップトップコンピュータもしくはデスクトップコンピュータ、タブレットコンピュータ、電子ブックリーダー、デジタルカメラ、デジタル記録デバイス、デジタルメディアプレーヤ、ビデオゲームデバイス、ビデオゲームコンソール、セルラー電話もしくは衛星無線電話、スマートフォン、ビデオ会議デバイス、ビデオストリーミングデバイスなどを含む、広範囲のデバイスに組み込まれ得る。デジタルビデオデバイスは、MPEG−2、MPEG−4、ITU−T H.263、ITU−T H.264/MPEG−4、Part 10、アドバンストビデオコーディング(AVC:Advanced Video Coding)、高効率ビデオコーディング(HEVC)によって定義された規格、およびそのような規格の拡張に記載されているビデオコーディング技法など、ビデオコーディング技法を実装する。ビデオデバイスは、そのようなビデオコーディング技法を実装することによって、デジタルビデオ情報をより効率的に送信、受信、符号化、復号、および/または記憶し得る。
[0003]ビデオコーディング技法は、ビデオシーケンスに固有の冗長性を低減または除去するための空間的(ピクチャ内)予測および/または時間的(ピクチャ間)予測を含む。ブロックベースのビデオコーディングでは、ビデオスライス(たとえば、ビデオフレームまたはビデオフレームの一部分)は、ツリーブロック、コーディングユニット(CU)、および/またはコーディングノードと呼ばれることもある、ビデオブロックに区分され得る。CUの予測ビデオデータを決定するために、CUはさらに1つまたは複数の予測ユニット(PU)に区分され得る。ビデオ圧縮技法はまた、CUを、コーディングされるべきビデオブロックと予測ビデオデータとの間の差を表す残差ビデオブロックデータの1つまたは複数の変換ユニット(TU)に区分し得る。2次元離散コサイン変換(DCT)などの線形変換をTUに適用して残差ビデオブロックデータをピクセル領域から周波数領域に変換して、さらなる圧縮を実現し得る。さらに、ピクチャのイントラコード化(I)スライスの中のビデオブロックは、同じピクチャの中の隣接ブロックにおける参照サンプルに対する空間的予測を使用して符号化され得る。ピクチャのインターコード化(PまたはB)スライス中のビデオブロックは、同じピクチャ中の隣接ブロック中の参照サンプルに対する空間的予測、または他の参照ピクチャ中の参照サンプルに対する時間的予測を使用し得る。ピクチャはフレームと呼ばれることがあり、参照ピクチャは参照フレームと呼ばれることがある。
[0004]空間的予測または時間的予測は、コーディングされるべきブロックのための予測ブロックを生じる。残差データは、コーディングされるべき元のブロックと予測ブロックとの間のピクセル差分を表す。インターコード化ブロックは、予測ブロックを形成する参照サンプルのブロックを指す動きベクトルに従って符号化され、残差データは、コード化ブロックと予測ブロックとの間の差分を示す。イントラコード化ブロックは、イントラコーディングモードおよび残差データに従って符号化される。さらなる圧縮のために、残差データは、ピクセル領域から変換領域に変換され、残差変換係数が生じ得、その残差変換係数は、次いで量子化され得る。最初に2次元アレイで構成された量子化変換係数は、変換係数の1次元ベクトルを生成するために走査され得、なお一層の圧縮を達成するために、エントロピー符号化が適用され得る。
[0005]AVCなどのより古いビデオ規格では、順変換および逆変換のサイズ(たとえば、4×4および8×8)は、ビデオ符号化のパフォーマンスのボトルネックとして作用しなかった。しかしながら、より最近のビデオコーディング規格(たとえば、HEVCおよびそれの拡張など)は、最大16×16および32×32の順変換および逆変換係数行列サイズを利用し、これは、コーディングプロセス中のコーディングの速度および効率に対する制限ファクタとして作用し得る。より大きい変換は、ピクセル領域から係数領域に変換するときに複雑さが増し、より多くのサイクルを処理することが必要になる。コーディング効率のために、コーディング性能は、ビデオエンコーダ中での大きい順変換の複雑さを低減するプロセスから利益を得ることになる。本明細書で開示する技法のいくつかの利点は、エンコーダ中での順変換の複雑さを低減することによって、ビデオ符号化中のコーディング効率を改善し、計算リソース要件を低減することに関する。
[0006]概して、本開示は、変換プロセス中に変換行列係数を条件付きで利用する(たとえば、それの完全または部分利用)または変更する(たとえば、ゼロアウトする)ことによってビデオ符号化パフォーマンスを改善することに関する技法について説明する。たとえば、一実施形態では、完全32×32変換係数行列を使用して変換を実行するのではなく、係数の選択された部分がゼロアウトされ得る。これにより、32×32変換係数行列が、非ゼロ値の内部サブセット領域とゼロ値の外部領域とを有することになる。得られた行列がすべてのゼロ値の領域(たとえば、外部領域)を含むので、変更された行列を使用する後続の変換演算は、より少ない計算リソースを必要とすることになり、改善されたビデオ符号化パフォーマンスがもたらされることになる。そのような変換演算を実行することからの間のコンテンツ損失を低減または最小化するために、ゼロ値の外部領域をどのようにいつ決定すべきかに関する条件が提供される。
[0007]1つまたは複数の例の詳細が以下の添付の図面および説明に記載されている。他の特徴、目的、および利点は、説明および図面から、ならびに特許請求の範囲から明らかになるであろう。
[0008]本開示で説明する主題の一態様は、ビデオブロックを記憶するように構成されたメモリを備えるビデオエンコーダを提供する。ビデオエンコーダは、メモリと通信しているプロセッサをさらに備える。プロセッサは、ビデオブロックの全出力値(full power value)を決定するように構成される。プロセッサは、縮約変換係数行列(reduced transform coefficient matrix)を決定すること、ここにおいて、縮約変換係数行列が、完全変換係数行列(full transform coefficient matrix)の同じ内部領域のゼロまたは非ゼロ値の内部領域とゼロ値の外部領域とを備える、ここにおいて、縮約変換係数行列と完全変換係数行列とが、同じサイズを有する、を行うようにさらに構成される。プロセッサは、縮約変換係数行列を使用してビデオブロックの部分出力値(partial power value)を決定することを行うようにさらに構成される。プロセッサは、全出力値および部分出力値に基づいて縮約変換係数行列を使用してピクセル領域から係数領域にビデオブロックを変換することを行うようにさらに構成される。プロセッサは、変換されたビデオブロックを符号化することを行うようにさらに構成される。
[0009]本開示で説明する主題の別の態様は、ビデオを符号化する方法を提供する。本方法は、ビデオブロックを記憶することを含む。本方法は、ビデオブロックの全出力値を決定することをさらに含む。本方法は、縮約変換係数行列を決定すること、ここにおいて、縮約変換係数行列が、完全変換係数行列の同じ内部領域のゼロまたは非ゼロ値の内部領域とゼロ値の外部領域とを備える、ここにおいて、縮約変換係数行列と完全変換係数行列とが、同じサイズを有する、をさらに含む。本方法は、縮約変換係数行列を使用してビデオブロックの部分出力値を決定することをさらに含む。本方法は、全出力値および部分出力値に基づいて縮約変換係数行列を使用してピクセル領域から係数領域にビデオブロックを変換することをさらに含む。本方法は、変換されたビデオブロックを符号化することをさらに含む。
[0010]本開示で説明する主題の別の態様は非一時的コンピュータ可読媒体を提供する。本媒体は、実行されたとき、装置に、ビデオブロックを記憶することを行わせるコードを備える。本媒体は、実行されたとき、装置に、ビデオブロックの全出力値を決定することを行わせるコードをさらに備える。本媒体は、実行されたとき、装置に、縮約変換係数行列を決定すること、ここにおいて、縮約変換係数行列が、完全変換係数行列の同じ内部領域のゼロまたは非ゼロ値の内部領域とゼロ値の外部領域とを備える、ここにおいて、縮約変換係数行列と完全変換係数行列とが、同じサイズを有する、を行わせるコードをさらに備える。本媒体は、実行されたとき、装置に、縮約変換係数行列を使用してビデオブロックの部分出力値を決定することを行わせるコードをさらに備える。本媒体は、実行されたとき、装置に、全出力値および部分出力値に基づいて縮約変換係数行列を使用してピクセル領域から係数領域にビデオブロックを変換することを行わせるコードをさらに備える。本媒体は、実行されたとき、装置に、変換されたビデオブロックを符号化することを行わせるコードをさらに備える。
[0011]本開示で説明する主題の別の態様は、ビデオを符号化するための装置を提供する。本装置は、ビデオブロックを記憶するための手段を備える。本装置は、ビデオブロックの全出力値を決定するための手段をさらに備える。本装置は、縮約変換係数行列を決定するための手段、ここにおいて、縮約変換係数行列が、完全変換係数行列の同じ内部領域のゼロまたは非ゼロ値の内部領域とゼロ値の外部領域とを備える、ここにおいて、縮約変換係数行列と完全変換係数行列とが、同じサイズを有する、をさらに備える。本装置は、縮約変換係数行列を使用してビデオブロックの部分出力値を決定するための手段をさらに備える。本装置は、全出力値および部分出力値に基づいて縮約変換係数行列を使用してピクセル領域から係数領域にビデオブロックを変換するための手段をさらに備える。本装置は、変換されたビデオブロックを符号化するための手段をさらに備える。
[0012]本開示で説明する態様による技法を利用し得る例示的なビデオ符号化および復号システムを示すブロック図。 [0013]本開示で説明する態様による技法を実装し得るビデオエンコーダの一例を示すブロック図。 [0014]本開示で説明する態様による技法を実装し得るビデオデコーダの一例を示すブロック図。 [0015]ピクセル領域から係数領域にビデオブロックを変換するために使用され得る変換係数行列の一例を示す図。 [0016]ピクセル領域から係数領域にビデオブロックを変換するために使用され得る変換係数行列のさらなる一例を示す図。 ピクセル領域から係数領域にビデオブロックを変換するために使用され得る変換係数行列のさらなる一例を示す図。 [0017]行列乗算中に変換係数行列の係数のサブセットをゼロアウトすべきであるかどうかを決定するための変換処理ユニットのための1つの方法のフローチャート。 [0018]行列乗算中に変換係数行列の係数のサブセットをゼロアウトすべきであるかどうかを決定するための変換処理ユニットのためのさらなる方法のフローチャート。
[0019]図面に示す様々な特徴は一定の縮尺で描かれていないことがある。したがって、様々な特徴の寸法は、明快のために恣意的に拡大または縮小されていることがある。さらに、図面のいくつかは、所与のシステム、方法またはデバイスの構成要素のすべてを示しているとは限らないことがある。最後に、本明細書および図の全体にわたって、同様の特徴を示すために同様の参照番号が使用されることがある。
[0020]本開示で説明する技法は、概して、ビデオ符号化中の順変換に関する。一実施形態では、そのような技法は、高効率ビデオコーディング(HEVC)規格およびそれの拡張に関する。
[0021]ビデオコーディング規格は、ITU−T H.261と、ISO/IEC MPEG−1 Visualと、ITU−T H.262またはISO/IEC MPEG−2 Visualと、ITU−T H.263と、ISO/IEC MPEG−4 Visualと、そのスケーラブルビデオコーディング(SVC)拡張およびマルチビュービデオコーディング(MVC)拡張を含む(ISO/IEC MPEG−4 AVCとしても知られる)ITU−T H.264とを含む。さらに、ITU−Tビデオコーディングエキスパートグループ(VCEG:Video Coding Experts Group)とISO/IECモーションピクチャエキスパートグループ(MPEG:Motion Picture Experts Group)とのジョイントコラボレーションチームオンビデオコーディング(JCT−VC:Joint Collaboration Team on Video Coding)によって開発された新しいビデオコーディング規格、高効率ビデオコーディング(HEVC)がある。
[0022]上述のように、AVC規格は、最大8×8変換サイズしか利用しなかったが、HEVC規格は、サイズが最大32×32の(たとえば、HEVCエンコーダでの)順変換および逆変換を利用する。たとえば、HEVCにおいてピクセル領域から係数領域にビデオ情報を変換するために、ビデオピクセル情報の入力ベクトルは、32×32個(1024個)の値を有する変換行列で乗じられ得る。より大きい変換サイズは、HEVCにおける大きいコードブロックのコーディング効率が増加するが、同じく、より小さい変換サイズと比較して複雑さ、計算サイクル、および処理時間が増加する。本開示で説明する方法は、順変換行列を簡略化することによってエンコーダがピクセル領域から係数領域に変換するときにそのような大きい行列乗算を実行するのに必要な複雑さおよびサイクルの増加を低減し得る。
[0023]いくつかの実装形態では、ゼロを乗じるのに必要な計算リソースは、非ゼロを乗じるのに必要な計算リソースより小さいので、行列乗算中に変換係数のサブセット、領域、または部位をゼロアウトすることは順変換を簡略化し得る。さらに、ビデオ符号化中に使用される順変換においてランダムゼロをゼロアウトすることは、最終的なビデオ品質の低下をもたらし得る。そのような品質劣化を妨げるかまたは低減するために、本開示で説明する方法は、最初に、行列の簡略化または縮約が望ましいかどうかを決定し得る。たとえば、一実施形態では、以下の図6〜図7に関してさらに説明するように、エンコーダが、最初に、出力の差を計算し、ゼロアウトすべき係数の数およびロケーションを決定するためにその差をしきい値と比較する方法を提供する。この秩序立った方法で係数をゼロアウトすることによって、そのような方法により、ビデオエンコーダの変換処理ユニットが、ビデオ品質も保持しながら計算リソースを節約することが可能になり得る。
[0024]ブロックベースの処理を使用するビデオコーデック(たとえば、ビデオフレームがビデオブロックまたはコーディングユニットに区分され得るHEVC)では、(たとえば、インター予測またはイントラ予測からの)予測ブロックまたは予測ユニットが元のピクセルから減算され得る。図1〜図3に関して上記および以下でさらに説明するように、残差データは、次いで、順変換(たとえば、離散コサイン変換)を使用して残差変換係数に変換され、量子化され、(たとえば、さらなる圧縮を達成するために)エントロピー符号化され得る。エントロピー符号化は、以下でさらに説明する様々なエントロピーコーディングエンジン(たとえば、CAVLC、CABACなど)を使用して実行され得る。その後、同じく以下でさらに説明するように、デコーダは、次いで、係数をエントロピー復号し、逆量子化し、逆変換し得る。最後に、係数は、予測ブロックに追加されて、再構成されたピクセルを形成し得る。
[0025]ビデオコーディングの一実施形態では、画像ブロックは、最初に、再構成された、一時的におよび/または空間的に隣接するブロックからのピクセルを使用して予測され得る。(「残余」または「残差」と呼ばれることがある)予測誤差が、次いで、変換され、量子化され得る。たとえば、Sが、サイズがN×Nの残余ブロックである場合、変換されたブロックKは、次のように行列乗算を使用して導出され得る。
Figure 2017513342
ここで、K、A、およびBも、N×Nのサイズである。Aは垂直変換行列であり、Bは水平変換行列である。いくつかの実施形態では、AおよびBは、互いの転置である(たとえば、B=A’であり、ここで、「’」は転置を意味する)。他の実施形態では、AおよびBは、互いの転置でない。AおよびBが互いの転置であるとき、前の式は次のようになる。
Figure 2017513342
[0026]各変換(AおよびB)は、様々な変換のいずれかを含み得る。いくつかの実施形態では、変換は、離散コサイン変換(DCT)、離散サイン変換(DST)、アダマール変換、ハール変換などのうちの1つを含む。
[0027]SVC拡張では、ビデオ情報の複数のレイヤがあり得る。最下層は、ベースレイヤ(BL)として働き得、最上層は、拡張レイヤ(EL)または「エンハンスメントレイヤ」として働き得る。最上層と最下層との間のすべてのレイヤは、ELまたはBLの一方または両方として働き得る。SVCは、品質スケーラビリティ(または信号対雑音比、SNR)、空間スケーラビリティ、および/または時間スケーラビリティを与えるために使用され得る。エンハンストレイヤは、ベースレイヤとは異なる空間解像度を有し得る。現在のブロックの予測は、SVCのために与えられる様々なレイヤを使用して実行され得る。そのような予測は、レイヤ間予測と呼ばれることがある。レイヤ間予測方法は、レイヤ間冗長性を低減するためにSVCにおいて利用され得る。レイヤ間予測のいくつかの例としては、レイヤ間イントラ予測、レイヤ間動き予測、およびレイヤ間残差予測があり得る。レイヤ間イントラ予測は、エンハンスメントレイヤ中の現在のブロックを予測するために、ベースレイヤ中のコロケートされたブロックの再構成を使用する。レイヤ間動き予測は、エンハンスメントレイヤ内の動きを予測するのにベースレイヤの動きを使用する。レイヤ間残差予測は、エンハンスメントレイヤの残差を予測するために、ベースレイヤの残差を使用する。「イントラBLモード」と呼ばれる、エンハンスメントレイヤのための1つの特定のコーディングモードは、ベースレイヤ中の対応する(「コロケートされた」と呼ばれる、たとえば、同じ空間的ロケーションに位置する)ブロックのテクスチャを使用して予測され得るテクスチャを含む。
[0028]レイヤ間残差予測では、ベースレイヤの残差は、エンハンスメントレイヤ中の現在のブロックを予測するために使用され得る。残差は、ビデオユニットの時間的予測とソースビデオユニットとの間の差分として定義され得る。残差予測では、ベースレイヤの残余はまた、現在のブロックを予測する際に考慮される。たとえば、現在のブロックは、エンハンスメントレイヤからの残余、エンハンスメントレイヤからの時間的予測、およびベースレイヤからの残余を使用して再構成され得る。現在のブロックは以下の式に従って再構成され得る。
Figure 2017513342
ここで、
Figure 2017513342
は現在のブロックの再構成を示し、reはエンハンスメントレイヤからの残余を示し、Peはエンハンスメントレイヤからの時間的予測を示し、rbはベースレイヤからの残余予測を示す。
[0029]差分領域を使用したインターコーディングの場合、現在予測ブロックは、エンハンスメントレイヤ参照ピクチャ中の対応する予測ブロックサンプルと、スケーリングされたベースレイヤ参照ピクチャ中の対応する予測ブロックサンプルとの間の差分値に基づいて決定される。差分値は差分予測ブロック(difference predicted block)と呼ばれることがある。エンハンスメントレイヤ予測サンプルを取得するために、コロケートベースレイヤ再構成サンプルが差分予測ブロックに追加される。
[0030]本開示で説明する技法は、HEVCにおける順変換の行列乗算中の複雑な計算要件に関する問題に対処し得る。本技法は、エンコーダおよび/または変換処理ユニットが順変換行列乗算を実行し得る速度、効率、および有効性を改善し得る。
[0031]添付の図面を参照しながら、新規のシステム、装置、および方法の様々な態様について、以下でより十分に説明する。ただし、本開示は、多くの異なる形態で具現化される場合があり、本開示全体にわたって提示される任意の特定の構造または機能に限定されるものと解釈されるべきではない。むしろ、本開示が、入念で完全であり、本開示の範囲を当業者に十分に伝達するように、これらの態様が提供される。本明細書の教示に基づいて、単独で実装されるか、それとも本発明の何らかの他の態様と組み合わされるかにかかわらず、本開示の範囲が本明細書で開示される新規なシステム、装置、および方法のどんな態様も包含するものとすることを当業者は理解されたい。たとえば、本明細書に記載の任意の数の態様を使用して装置が実装され得、または方法が実施され得る。さらに、本発明の範囲は、本明細書に記載の本発明の様々な態様に加えて、またはそれ以外の、他の構造、機能、または構造および機能を使用して実施される装置または方法を包含するものとする。本明細書で開示されるすべての態様が、ある請求項の1つまたは複数の要素によって実施され得ることを理解されたい。
[0032]特定の態様が本明細書で説明されるが、これらの態様の多数の変形および置換が、本開示の範囲に含まれる。好適な態様のいくつかの利益および利点について説明するが、本開示の範囲は特定の利益、使用、または目的に限定されるものではない。むしろ、本開示の態様は、その一部が例として図面および好ましい態様の以下の説明において示される、異なるワイヤレス技術と、システム構成と、ネットワークと、伝送プロトコルとに幅広く適用可能であることが意図されている。この詳細な説明および図面は、限定的であるのではなく本開示の説明に役立つものにすぎず、本開示の範囲は、添付の特許請求の範囲とその同等物とによって定義される。
[0033]図1は、本開示で説明する態様による技法を利用し得る例示的なビデオ符号化および復号システムを示すブロック図である。図1に示すように、ビデオ符号化および復号システム10は、宛先デバイス14によって後で復号されるべき符号化ビデオデータを提供するソースデバイス12を含む。特に、ソースデバイス12は、コンピュータ可読媒体16を介して宛先デバイス14にビデオデータを与える。ソースデバイス12および宛先デバイス14は、デスクトップコンピュータ、ノートブック(たとえば、ラップトップ)コンピュータ、タブレットコンピュータ、セットトップボックス、電話ハンドセット(たとえば、スマートフォン)、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソール、ビデオストリーミングデバイスなどを含む、広範囲にわたるデバイスのいずれかを備え得る。場合によっては、ソースデバイス12および宛先デバイス14は、ワイヤレス通信のために装備され得る。
[0034]上述のように、宛先デバイス14は、コンピュータ可読媒体16を介して、復号されるべき符号化ビデオデータを受信し得る。コンピュータ可読媒体16は、符号化されたビデオデータをソースデバイス12から宛先デバイス14に移動することが可能な、任意のタイプの媒体またはデバイスを備え得る。一例では、コンピュータ可読媒体16は、ソースデバイス12が符号化ビデオデータを宛先デバイス14にリアルタイムで直接送信するのを可能にするための通信媒体(図示せず)を備え得る。符号化ビデオデータは、ワイヤレス通信プロトコルなどの通信規格に従って変調され、宛先デバイス14に送信され得る。通信媒体は、無線周波数(RF)スペクトルあるいは1つまたは複数の物理伝送線路など、任意のワイヤレスまたはワイヤード通信媒体を備え得る。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、または(インターネットなどの)グローバルネットワークのような、パケットベースのネットワークの一部を形成し得る。通信媒体は、ルータ、スイッチ、基地局、またはソースデバイス12から宛先デバイス14への通信を可能にするために有用であり得る任意の他の機器を含み得る。
[0035]いくつかの例では、符号化データは、出力インターフェース22からストレージデバイス(図示せず)に出力され得る。同様に、符号化データは入力インターフェース28によってストレージデバイスからアクセスされ得る。ストレージデバイスは、ハードドライブ、Blue−rayディスク、DVD、CD−ROM、フラッシュメモリ、揮発性もしくは不揮発性のメモリ、または符号化ビデオデータを記憶するための任意の他の適切なデジタル記憶媒体など、様々な分散されたまたはローカルにアクセスされるデータ記憶媒体のいずれをも含み得る。さらなる例では、ストレージデバイスは、ソースデバイス12によって生成された符号化ビデオを記憶することができるファイルサーバまたは別の中間ストレージデバイスに対応し得る。宛先デバイス14は、ストリーミングまたはダウンロードを介して、ストレージデバイスから記憶されたビデオデータにアクセスすることができる。ファイルサーバは、符号化ビデオデータを記憶し、その符号化ビデオデータを宛先デバイス14に送信することが可能な任意のタイプのサーバであり得る。例示的なファイルサーバには、ウェブサーバ(たとえば、ウェブサイト用の)、FTPサーバ、ネットワークアタッチドストレージ(NAS)デバイス、またはローカルディスクドライブがある。宛先デバイス14は、インターネット接続を含む、任意の標準のデータ接続を通して符号化ビデオデータにアクセスし得る。データ接続は、ファイルサーバに記憶された符号化されたビデオデータにアクセスするのに好適であるワイヤレスチャネル(たとえば、Wi−Fi(登録商標)接続)、有線接続(たとえば、DSL、ケーブルモデムなど)、または両方の組合せを含み得る。ストレージデバイスからの符号化されたビデオデータの送信は、ストリーミング送信、ダウンロード送信、またはそれらの組合せであり得る。
[0036]本開示の技法は、ワイヤレス応用またはワイヤレス設定に必ずしも制限されない。本技法は、無線テレビジョンブロードキャスト、ケーブルテレビジョン送信、衛星テレビジョン送信、HTTP上の動的適応ストリーミング(DASH:dynamic adaptive streaming over HTTP)などのインターネットストリーミングビデオ送信、データ記憶媒体上に符号化されたデジタルビデオ、データ記憶媒体上に記憶されたデジタルビデオの復号、または他の応用例など、様々なマルチメディア応用のいずれかをサポートするビデオコーディングに適用され得る。いくつかの例では、システム10は、ビデオストリーミング、ビデオ再生、ビデオブロードキャスト、ビデオテレフォニーなどの適用例のための一方向または双方向のビデオ送信をサポートするように構成され得る。
[0037]図1の例では、ソースデバイス12は、ビデオソース18と、ビデオエンコーダ20と、出力インターフェース22とを含む。宛先デバイス14は、入力インターフェース28と、ビデオデコーダ30と、ディスプレイデバイス32とを含む。本開示によれば、ソースデバイス12のビデオエンコーダ20は、複数の規格または規格拡張に準拠するビデオデータを含む、ビットストリームをコーディングするための技法を適用するように構成され得る。他の例では、ソースデバイス12および宛先デバイス14は、他の構成要素または構成を含み得る。たとえば、ソースデバイス12は、外部カメラなどの外部ビデオソースからビデオデータを受信し得る。同様に、宛先デバイス14は、内蔵ディスプレイデバイス32ではなく、外部ディスプレイデバイスとインターフェースし得る。
[0038]概して、本開示の技法は、ビデオ符号化デバイスによって実行されるが、これらの技法は、通常は「コーデック」と呼ばれるビデオエンコーダ/デコーダによっても実行され得る。さらに、本開示の技法はまた、ビデオプリプロセッサによって実行され得る。ソースデバイス12および宛先デバイス14は、ソースデバイス12が、宛先デバイス14に送信するためのコーディングされたビデオデータを生成するコーディングデバイスの例にすぎない。いくつかの例では、ソースデバイス12および宛先デバイス14は、それらがそれぞれビデオ符号化構成要素とビデオ復号構成要素とを含むように、実質的に対称的に動作し得る。したがって、システム10は、たとえば、ビデオストリーミング、ビデオ再生、ビデオブロードキャスト、ビデオテレフォニーなどのために、ソースデバイス12と宛先デバイス14との間の一方向または双方向のビデオ送信をサポートし得る。
[0039]ソースデバイス12のビデオソース18は、ビデオカメラ、以前にキャプチャされたビデオを含んでいるビデオアーカイブ、ビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェースなどのビデオキャプチャデバイス(図示せず)を含み得る。さらなる代替として、ビデオソース18は、コンピュータグラフィックスベースのデータ、または、ライブビデオ、アーカイブされたビデオ、およびコンピュータ生成ビデオの組合せを生成することができる。場合によっては、ビデオソース18がビデオカメラである場合、ソースデバイス12および宛先デバイス14は、カメラ付き携帯電話またはビデオ付き携帯電話であり得る。別の実施形態では、本開示で説明する技法は、ビデオコーディング全般に適用可能であり得、ワイヤレスおよび/またはワイヤード適用例に適用され得る。各々の場合において、キャプチャされたビデオ、事前にキャプチャされたビデオ、またはコンピュータで生成されたビデオは、ビデオエンコーダ20によって符号化され得る。符号化されたビデオ情報は、次いで、出力インターフェース22によってコンピュータ可読媒体16に出力され得る。
[0040]コンピュータ可読媒体16は、ワイヤレスブロードキャストまたはワイヤードネットワーク送信などの一時媒体、あるいはハードディスク、フラッシュドライブ、コンパクトディスク、デジタルビデオディスク、Blu−ray(登録商標)ディスク、または他のコンピュータ可読媒体などの記憶媒体(すなわち、非一時的記憶媒体)を含み得る。いくつかの例では、ネットワークサーバ(図示せず)は、ソースデバイス12から符号化ビデオデータを受信し、たとえば、ネットワーク送信、直接ワイヤード通信などを介して、その符号化ビデオデータを宛先デバイス14に与え得る。同様に、ディスクスタンピング設備など、媒体製造設備のコンピューティングデバイスは、ソースデバイス12から符号化されたビデオデータを受信し、その符号化されたビデオデータを包含しているディスクを生成し得る。したがって、コンピュータ可読媒体16は、様々な形態の1つまたは複数のコンピュータ可読媒体を含み得る。
[0041]宛先デバイス14の入力インターフェース28は、コンピュータ可読媒体16から情報を受信し得る。コンピュータ可読媒体16の情報は、ビデオエンコーダ20によって定義されるシンタックス情報を含み得る。シンタックス情報はまた、ビデオデコーダ30によって使用され得、これは、ブロックおよび他のコード化ユニットの特性および/または処理を記述するシンタックス要素を含み得る。ディスプレイデバイス32は、復号されたビデオデータをユーザに表示し得、陰極線管(CRT)、液晶ディスプレイ(LCD)、プラズマディスプレイ、有機発光ダイオード(OLED)ディスプレイ、または別のタイプのディスプレイデバイスなどの様々なディスプレイデバイスのうちのいずれかを備え得る。
[0042]ビデオエンコーダ20およびビデオデコーダ30は、高効率ビデオコーディング(HEVC)規格またはそれの変形形態のいずれか(たとえば、HEVCテストモデル(HM))などのビデオコーディング規格に従って動作し得る。代替的に、ビデオエンコーダ20およびビデオデコーダ30は、ITU−T H.264規格(MPEG−4)、Part10、アドバンストビデオコーディング(AVC)、ITU−T H.263、ITU−T H.262(ISO/IEC MPEG−2 Visual)、ISO/IEC MPEG−1 Visual、ITU−T H.261、またはいずれのそのような規格の拡張などの他のプロプライエタリまたは業界規格に従って動作し得る。いくつかの態様では、ビデオエンコーダ20およびビデオデコーダ30は、共通のデータストリームまたは別個のデータストリーム中のオーディオとビデオの両方の符号化を処理するために、オーディオエンコーダ、オーディオデコーダ、MUX−DEMUXユニット(図示せず)、または他のハードウェアおよびソフトウェアと一体化され得る。
[0043]ビデオエンコーダ20およびビデオデコーダ30は各々、1つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェア、またはそれらの任意の組合せなどの様々な適切なエンコーダ回路のいずれかとして実装され得る。本開示の技法を実行する必要がある場合、ビデオエンコーダ20および/またはビデオデコーダ30は、好適な非一時的コンピュータ可読媒体中にソフトウェアの命令を記憶し、1つまたは複数のプロセッサを使用してハードウェアで命令を実行し得る。ビデオエンコーダ20およびビデオデコーダ30の各々は、1つまたは複数のエンコーダまたはデコーダに含まれ得、そのいずれも、それぞれのデバイスにおいて複合エンコーダ/デコーダ(コーデック)の一部として統合され得る。ビデオエンコーダ20および/またはビデオデコーダ30を含むデバイスは、集積回路、マイクロプロセッサ、および/またはセルフォンなどのワイヤレス通信デバイスを備え得る。
[0044]HEVC規格は、ビデオフレームまたはピクチャが、ルーマサンプルとクロマサンプルの両方を含む一連のツリーブロックまたは最大コーディングユニット(LCU)に分割され得ることを規定する。ビットストリーム内のシンタックスデータが、ピクセルの数に関して最大のコーディングユニットであるLCUのサイズを定義し得る。スライスは、コーディングの順序で、いくつかの連続するツリーブロックを含む。ビデオフレームまたはピクチャは、1つまたは複数のスライスに区分化され得る。各ツリーブロックは、4分木に従ってコーディングユニット(CU)に分割され得る。概して、4分木データ構造はCUごとに1つのノードを含み、ルートノードはツリーブロックに対応する。CUが4つのサブCUに分割される場合、CUに対応するノードは、4つのリーフノードを含み、その各々は、サブCUの1つに対応する。
[0045]4分木データ構造の各ノードは、対応するCUのためのシンタックスデータを与え得る。たとえば、4分木内のノードは、そのノードに対応するCUがサブCUに分割されるか否かを示すスプリットフラグを含み得る。CUのシンタックス要素は、再帰的に定義され得、CUがサブCUに分割されるか否かに依存し得る。CUがこれ以上分割されない場合、そのCUはリーフCUと呼ばれる。本開示では、元のリーフCUの明示的な分割が存在しない場合でも、リーフCUの4つのサブCUはリーフCUと呼ばれる。たとえば、16×16サイズのCUがさらに分割されない場合、この16×16CUが決して分割されなくても、4つの8×8サブCUはリーフCUとも呼ばれることになる。
[0046]CUは、CUがサイズの特異性を有しないことを別にすれば、H.264規格のマクロブロックと同様の目的を有する。たとえば、ツリーブロックは、4つの子ノード(サブCUとも呼ばれる)に分割され得、各子ノードは、次に親ノードとなり、別の4つの子ノードに分割され得る。4分木のリーフノードと呼ばれる、最後の分割されない子ノードは、リーフCUとも呼ばれるコーディングノードを備える。コーディングされたビットストリームに関連するシンタックスデータは、最大CU深度と呼ばれる、ツリーブロックが分割され得る最大回数を定義し得、また、コーディングノードの最小サイズを定義し得る。それに応じて、ビットストリームは最小コーディングユニット(SCU)をも定義し得る。本開示では、HEVCのコンテキストにおけるCU、PU、またはTU、あるいは他の規格のコンテキストにおける同様のデータ構造(たとえば、H.264/AVCにおけるマクロブロックおよびそれのサブブロック)のいずれかを指すために「ブロック」という用語を使用する。
[0047]CUは、コーディングノードと、コーディングノードと関連付けられた予測ユニット(PU)および変換ユニット(TU)とを含む。CUのサイズは、コーディングノードのサイズに対応し、形状が方形でなければならない。CUのサイズは、8×8ピクセルから、いくつかの事例では、64×64ピクセル以上の最大値を有するツリーブロックのサイズにまで及び得る。各CUは、1つまたは複数のPUと1つまたは複数のTUとを包含し得る。CUに関連付けられたシンタックスデータは、たとえば、1つまたは複数のPUへのCUの区分を記述し得る。区分モードは、CUがスキップモード符号化もしくは直接モード符号化されるか、イントラ予測モード符号化されるか、またはインター予測モード符号化されるかで異なり得る。PUは、形状が非方形に区分され得る。CUに関連するシンタックスデータはまた、たとえば、4分木に従うCUの1つまたは複数のTUへの区分を記述し得る。TUは、形状が方形または非方形(たとえば、長方形)であり得る。
[0048]HEVC規格は、異なるCUに対しては異なり得る、TUに従った変換を可能にする。TUは通常、区分されたLCUに対して定義される所与のCU内のPUのサイズに基づくサイズにされるが、必ずそうであるとは限らない。TUは、一般に、PUと同じサイズであるか、またはそれよりも小さい。いくつかの例では、CUに対応する残差サンプルは、「残差4分木」(RQT:residual quad tree)と呼ばれる4分木構造を使用して、より小さいユニットに再分割され得る。RQTのリーフノードは、変換ユニット(TU)と呼ばれ得る。TUに関連するピクセル差分値は、変換係数を生成するために変換され、その変換係数は量子化され得る。
[0049]リーフCUは、1つまたは複数の予測ユニット(PU)を含み得る。概して、PUは、対応するCUの全部または一部分に対応する空間エリアを表し、そのPUの参照サンプルを取り出すためのデータを含み得る。その上、PUは、予測に関係するデータを含む。たとえば、PUがイントラモードで符号化されるとき、PUに関するデータは、PUに対応するTUに関するイントラ予測モードを記述するデータを含み得る残差4分木(RQT)内に含まれ得る。別の例として、PUがインターモードで符号化されるとき、PUは、PUのための1つまたは複数の動きベクトルを定義するデータを含み得る。PUのための動きベクトルを定義するデータは、たとえば、動きベクトルの水平成分、動きベクトルの垂直成分、動きベクトルの分解能(たとえば、1/4ピクセル精度または1/8ピクセル精度)、動きベクトルが指す参照ピクチャ、および/または動きベクトルの参照ピクチャリスト(たとえば、リスト0、リスト1、またはリストC)を記述することができる。
[0050]1つまたは複数のPUを有するリーフCUは、1つまたは複数の変換ユニット(TU)を含み得る。変換ユニットは、上で論じられたように、RQT(TUの4分木構造とも呼ばれる)を使用して規定され得る。たとえば、分割フラグは、リーフCUが4つの変換ユニットに分割されるかどうかを示し得る。次いで、各変換ユニットは、さらなるサブTUに、さらに分割され得る。TUがこれ以上分割されないとき、そのTUはリーフTUと呼ばれ得る。一般に、イントラコーディングの場合、リーフCUに属するすべてのリーフTUは同じイントラ予測モードを共有する。すなわち、同じイントラ予測モードが、概して、リーフCUのすべてのTUの予測値を計算するために適用される。イントラコーディングの場合、ビデオエンコーダは、イントラ予測モードを使用して各リーフTUの残差値を、TUに対応するCUの一部分と元のブロックとの間の差分として計算し得る。TUは、必ずしもPUのサイズに制限されるとは限らない。したがって、TUは、PUよりも大きくまたは小さくなり得る。イントラコーディングの場合、PUは、同じCUのための対応するリーフTUとコロケートされ得る。いくつかの例では、リーフTUの最大サイズは、対応するリーフCUのサイズに対応し得る。
[0051]その上、リーフCUのTUは、残差4分木(RQT)と呼ばれる、それぞれの4分木データ構造にも関連付けられ得る。すなわち、リーフCUは、リーフCUがどのようにTUに区分されるかを示す4分木を含み得る。TU4分木のルートノードは概してリーフCUに対応し、CU4分木のルートノードは概してツリーブロック(またはLCU)に対応する。分割されないRQTのTUはリーフTUと呼ばれる。概して、本開示では、別段に明記されていない限り、リーフCUおよびリーフTUに言及するためにそれぞれCUおよびTUという用語を使用する。
[0052]ビデオシーケンスは、通常、一連のビデオフレームまたはピクチャを含む。ピクチャグループ(GOP)は、一般に、ビデオピクチャのうちの一連の1つまたは複数を備える。GOPは、GOP中に含まれるいくつかのピクチャを記述するシンタックスデータを、GOPのヘッダ中、ピクチャの1つもしくは複数のヘッダ中、または他の場所に含み得る。ピクチャの各スライスは、それぞれのスライスの符号化モードを記述するスライスシンタックスデータを含み得る。図1のビデオエンコーダ20は、ビデオデータを符号化するために個々のビデオスライス内のビデオブロックに対して動作し得る。ビデオブロックは、CU内のコーディングノードに対応し得る。ビデオブロックは、固定サイズまたは可変サイズを有することができ、指定されたコーディング規格に従ってサイズが異なり得る。
[0053]HEVCは、様々なPUサイズにおける予測をサポートする。特定のCUのサイズが2N×2Nであると仮定すると、HEVCは、2N×2NまたはN×NのPUサイズにおけるイントラ予測と、2N×2N、2N×N、N×2N、またはN×Nの対称なPUサイズにおけるインター予測とをサポートする。HEVCは、また、2N×nU、2N×nD、nL×2N、およびnR×2NのPUサイズでのインター予測のための、非対称な区分をサポートする。非対称区分では、CUの一方向は区分されないが、他の方向は25%および75%に区分される。25%パーティションに対応するCUの部分は、「n」、ならびにそれに続く「Up」、「Down」、「Left」、または「Right」の指示によって示される。したがって、たとえば、「2N×nU」は、上部で2N×0.5N PU、および下部で2N×1.5N PUに水平に区分される2N×2N CUを指す。
[0054]本開示では、「NxN」および「N×N(N by N)」は、垂直方向の寸法および水平方向の寸法に関するビデオブロックのピクセル寸法、たとえば、16x16ピクセルまたは16×16(16 by16)ピクセルを指すために互換的に使用され得る。概して、16×16ブロックは、垂直方向に16ピクセル(y=16)、および水平方向に16ピクセル(x=16)を有する。同様に、N×Nブロックは、垂直方向にNピクセル、水平方向にNピクセルを有し得、Nが非負の整数値を表す。ブロック中のピクセルは、行および列に配置され得る。さらに、ブロックは、必ずしも、水平方向において垂直方向と同一個数のピクセルを有するとは限らない。たとえば、ブロックはN×Mピクセルを備え得、ここで、Mは必ずしもNに等しいとは限らない。
[0055]CUのPUを使用したイントラ予測コーディングまたはインター予測コーディングに続いて、ビデオエンコーダ20は、CUのTUのための残差データを計算し得る。PUは、(ピクセル領域とも呼ばれる)空間領域において予測ピクセルデータを生成する方法またはモードを記述するシンタックスデータを備え得、TUは、変換、たとえば、残差ビデオデータへの離散コサイン変換(DCT)、整数変換、ウェーブレット変換、または概念的に同様の変換の適用後の、変換領域における係数を備え得る。残差データは、符号化されていないピクチャのピクセルと、PUに対応する予測値との間のピクセル差分に対応し得る。ビデオエンコーダ20は、CUのための残差データを含むTUを形成し、次いで、CUのための変換係数を生成するために、TUを変換し得る。
[0056]変換係数を生成するための変換の後で、ビデオエンコーダ20は変換係数の量子化を実行し得る。量子化は、その最も広義の通常の意味を有することを意図された広義の用語である。一実施形態では、量子化は、さらなる圧縮を提供する、係数を表すのに使用されるデータの量をおそらくは減らすために変換係数が量子化されるプロセスを指す。量子化プロセスは、係数の一部または全部に関連するビット深度を低減し得る。たとえば、nビットの値は、量子化中にmビットの値に切り捨てられ得、ここで、nはmよりも大きい。
[0057]量子化の後に、ビデオエンコーダは、変換係数を走査して、量子化された変換係数を含む2次元行列から1次元ベクトルを生成し得る。走査は、アレイの前部により高いエネルギー(したがって、より低い周波数)係数を配置し、アレイの後部により低いエネルギー(したがって、より高い周波数)係数を配置するように設計され得る。いくつかの例では、ビデオエンコーダ20は、エントロピー符号化され得るシリアル化ベクトルを生成するために、量子化された変換係数を走査するためにあらかじめ定義された走査順序を利用し得る。他の例では、ビデオエンコーダ20は、適応スキャンを実行することができる。1次元ベクトルを形成するために、量子化された変換係数を走査した後、ビデオエンコーダ20は、たとえば、コンテキスト適応型可変長コーディング(CAVLC)、コンテキスト適応型バイナリ算術コーディング(CABAC)、シンタックスベースコンテキスト適応型バイナリ算術コーディング(SBAC)、確率間隔区分エントロピー(PIPE)コーディング、または別のエントロピー符号化方法に従って、1次元ベクトルをエントロピー符号化し得る。ビデオエンコーダ20はまた、ビデオデータを復号する際にビデオデコーダ30によって使用するための、符号化ビデオデータに関連付けられたシンタックス要素をエントロピー符号化し得る。
[0058]ビデオエンコーダ20は、さらに、ブロックベースのシンタックスデータ、フレームベースのシンタックスデータ、およびGOPベースのシンタックスデータなどのシンタックスデータを、たとえば、フレームヘッダ、ブロックヘッダ、スライスヘッダ、またはGOPヘッダ中で、ビデオデコーダ30へ送り得る。GOPシンタックスデータは、それぞれのGOP中のいくつかのフレームを記述し得、フレームシンタックスデータは、対応するフレームを符号化するために使用された符号化/予測モードを示し得る。
[0059]図2は、本開示で説明する態様による技法を実装し得るビデオエンコーダの一例を示すブロック図である。ビデオエンコーダ20のユニットのうちの1つまたは複数は、本開示の技法のいずれかまたはすべてを実行するように構成され得る。一例として、変換処理ユニット52は、本開示で説明する変換技法のいずれかまたはすべてを実行するように構成され得る。しかしながら、本開示の態様はそのように限定されない。いくつかの例では、本開示で説明する技法は、ビデオエンコーダ20の様々な構成要素間で共有され得る。いくつかの例では、プロセッサ(図示せず)が、本開示で説明する技法のいずれかまたはすべてを実行するように構成され得る。ビデオエンコーダ20は、ビデオスライス内のビデオブロックのイントラコーディングおよびインターコーディングを実行し得る。イントラコーディングは、所与のビデオフレームまたはピクチャ内のビデオの空間冗長性を低減または除去するために空間的予測に依拠する。インターコーディングは、ビデオシーケンスの隣接するフレームまたはピクチャ内のビデオの時間冗長性を低減または除去するために時間的予測に依拠する。イントラモード(Iモード)は、いくつかの空間ベースコーディングモードのいずれかを指すことがある。単一方向予測(Pモード)または双予測(Bモード)などのインターモードは、いくつかの時間ベースのコーディングモードのいずれかを指し得る。
[0060]ビデオエンコーダ20は、符号化されるべきビデオフレーム内の現在のビデオブロックを受信し得る。図2の例では、ビデオエンコーダ20は、モード選択ユニット40と、参照フレームメモリ64と、加算器50と、変換処理ユニット52と、量子化ユニット54と、エントロピー符号化ユニット56とを含む。モード選択ユニット40は、動き推定ユニット42と、動き補償ユニット44と、イントラ予測ユニット46と、パーティションユニット48とを含む。ビデオブロック再構成のために、ビデオエンコーダ20はまた、逆量子化ユニット58と、逆変換ユニット60と、加算器62とを含み得る。再構成されたビデオからブロッキネスアーティファクトを除去するためにブロック境界をフィルタ処理するデブロッキングフィルタ(図示せず)を含めることもできる。所望される場合、デブロッキングフィルタは、通常、加算器62の出力をフィルタ処理することになる。デブロッキングフィルタに加えて、追加のフィルタ(ループ内またはループ後)も使用され得る。そのようなフィルタは、簡潔のために図示されないが、所望される場合、加算器50の出力を(インループフィルタとして)フィルタ処理し得る。
[0061]符号化プロセス中に、ビデオエンコーダ20は、コーディングされるべきビデオフレームまたはスライスを受信し得る。フレームまたはスライスは複数のビデオブロックに分割され得る。動き推定ユニット42および動き補償ユニット44は、時間的予測を提供するために、1つまたは複数の参照フレーム内の1つまたは複数のブロックに対して、受信されたビデオブロックのインター予測コーディングを実行し得る。イントラ予測ユニット46は、代替的に、空間的予測を行うために、コーディングされるべきブロックと同じフレームまたはスライス中の1つまたは複数の隣接ブロックに対する受信されたビデオブロックのイントラ予測コーディングを実行し得る。ビデオエンコーダ20は、たとえば、ビデオデータのブロックごとに適当なコーディングモードを選択するために、複数のコーディングパスを実行し得る。
[0062]その上、区分ユニット48は、前のコーディングパスでの前の区分方式の評価に基づいて、ビデオデータのブロックをサブブロックに区分し得る。たとえば、区分ユニット48は、最初にフレームまたはスライスをLCUに区分し、レート歪み分析(たとえば、レート歪み最適化)に基づいて、LCUの各々をサブCUに区分し得る。モード選択ユニット40は、サブCUへのLCUの区分を示す4分木データ構造をさらに生成し得る。4分木のリーフノードCUは、1つまたは複数のPUと1つまたは複数のTUとを含み得る。
[0063]モード選択ユニット40は、たとえば、誤差結果に基づいてコーディングモードのうちの1つ、すなわち、イントラまたはインターを選択し、得られたイントラコーディングまたはインターコーディングされたブロックを、残差ブロックデータを生成するために加算器50に与え、参照フレームとして使用するための符号化されたブロックを再構成するために加算器62に与え得る。モード選択ユニット40はまた、動きベクトル、イントラモードインジケータ、区分情報、および他のそのようなシンタックス情報などの、シンタックス要素をエントロピー符号化ユニット56に与え得る。
[0064]動き推定ユニット42と動き補償ユニット44とは、高度に統合され得るが、概念的な目的のために別々に示してある。動き推定ユニット42によって実行される動き推定は、ビデオブロックに関する動きを推定する動きベクトルを生成するプロセスである。動きベクトルは、たとえば、現在のフレーム(または他のコード化ユニット)内でコーディングされている現在のブロックに対する参照フレーム(または他のコード化ユニット)内の予測ブロックに対する現在のビデオフレームまたはピクチャ内のビデオブロックのPUの変位を示し得る。予測ブロックは、絶対差分和(SAD:sum of absolute difference)、2乗差分和(SSD:sum of square difference)、または他の差分メトリックによって決定され得るピクセル差分に関して、コーディングされるべきブロックにぴったり一致することがわかるブロックである。いくつかの例では、ビデオエンコーダ20は、参照フレームメモリ64に記憶されている参照ピクチャの、サブ整数ピクセル位置に対する値を計算し得る。たとえば、ビデオエンコーダ20は、参照ピクチャの4分の1ピクセル位置、8分の1ピクセル位置、または他の分数ピクセル位置の値を補間し得る。したがって、動き推定ユニット42は、フルピクセル位置と分数ピクセル位置とに対する動き探索を実行し、分数ピクセル精度で動きベクトルを出力し得る。
[0065]動き推定ユニット42は、PUの位置を参照ピクチャの予測ブロックの位置と比較することによって、インターコード化スライス中のビデオブロックに関するPUの動きベクトルを計算する。参照ピクチャは、第1の参照ピクチャリスト(リスト0)または第2の参照ピクチャリスト(リスト1)から選択され得、それらの参照ピクチャリストの各々は、参照フレームメモリ64に記憶された1つまたは複数の参照ピクチャを識別する。動き推定ユニット42は、計算された動きベクトルをエントロピー符号化ユニット56と動き補償ユニット44とに送る。
[0066]動き補償ユニット44によって実行される動き補償は、動き推定ユニット42によって決定された動きベクトルに基づいて、予測ブロックをフェッチまたは生成することを伴い得る。この場合も、いくつかの例では、動き推定ユニット42と動き補償ユニット44とは機能的に統合され得る。現在のビデオブロックのPUの動きベクトルを受信すると、動き補償ユニット44は、動きベクトルが参照ピクチャリストのうちの1つにおいて指す予測ブロックの位置を特定し得る。加算器50は、以下で説明するように、コーディングされている現在のビデオブロックのピクセル値から予測ブロックのピクセル値を減算し、ピクセル差分値を形成することによって、残差ビデオブロックを形成し得る。動き推定ユニット42はルーマ成分に対して動き推定を実行し得、動き補償ユニット44は、クロマ成分とルーマ成分の両方のためにルーマ成分に基づいて計算された動きベクトルを使用し得る。モード選択ユニット40はまた、ビデオスライスのビデオブロックを復号する際にビデオデコーダ30が使用するビデオブロックとビデオスライスとに関連するシンタックス要素を生成し得る。シンタックス要素は、ビデオシーケンスレベル、ビデオフレームレベル、ビデオスライスレベル、ビデオCUレベル、またはビデオPUレベルのうちの1つまたは複数における予測情報を表し得る。たとえば、動き補償ユニット44は、CU、PU、およびTUのサイズを含むビデオブロック情報、ならびにイントラモード予測に関する動きベクトル情報を示すシンタックス要素を生成し得る。
[0067]イントラ予測ユニット46は、上記で説明したように、動き推定ユニット42と動き補償ユニット44とによって実行されるインター予測の代替として、現在のブロックをイントラ予測または計算し得る。特に、イントラ予測ユニット46は、現在のブロックを符号化するために使用すべきイントラ予測モードを決定し得る。いくつかの例では、イントラ予測ユニット46は、たとえば別々の符号化パス中に、様々なイントラ予測モードを使用して現在のブロックを符号化し得、イントラ予測ユニット46(または、いくつかの例では、モード選択ユニット40)は、テストされたモードから使用すべき適当なイントラ予測モードを選択し得る。
[0068]たとえば、イントラ予測ユニット46は、様々なテストされたイントラ予測モードのためのレート歪み分析を使用してレート歪み値を計算し、テストされたモードの間で最良のレート歪み特性を有するイントラ予測モードを選択し得る。レート歪み分析は、概して、符号化ブロックと、符号化ブロックを生成するために符号化された元の符号化されていないブロックとの間の歪み(または誤差)の量、ならびに、符号化ブロックを生成するために使用されるビットレート(すなわち、ビット数)を決定する。イントラ予測ユニット46は、どのイントラ予測モードがブロックについて最良のレート歪み値を呈するかを決定するために、様々な符号化ブロックの歪みおよびレートから比を計算し得る。
[0069]ブロックのためのイントラ予測モードを選択した後、イントラ予測ユニット46は、ブロックのための選択されたイントラ予測モードを示す情報をエントロピー符号化ユニット56に与え得る。エントロピー符号化ユニット56は、選択されたイントラ予測モードを示す情報を符号化し得る。ビデオエンコーダ20は、複数のイントラ予測モードインデックステーブルおよび複数の修正されたイントラ予測モードインデックステーブル(コードワードマッピングテーブルとも呼ばれる)と、様々なブロックの符号化コンテキストの定義と、コンテキストの各々について使用すべき、最確イントラ予測モード、イントラ予測モードインデックステーブル、および修正されたイントラ予測モードインデックステーブルの指示とを含み得る構成データを送信ビットストリーム中に含め得る。
[0070]ビデオエンコーダ20は、モード選択ユニット40からの予測データを、コーディングされている元のビデオブロックから減算することによって、残差ビデオブロックを形成する。加算器50は、この減算演算を実行し得る。変換処理ユニット52は、離散コサイン変換(DCT)または概念的には類似の変換などの変換を残差ブロックに適用し、残差変換係数の値を備えるビデオブロックを生成し得る。変換処理ユニット52は、概念的にはDCTと同様の他の変換を実行し得る。ウェーブレット変換、整数変換、サブバンド変換または他のタイプの変換が使用され得る。変換処理ユニット52は、次いで、変換を残差ブロックに適用し、残差変換係数のブロックを生成し得る。変換処理ユニット52は、残差情報をピクセル値領域から周波数領域などの変換領域に変換するために変換を使用し得る。より具体的には、変換の適用前に、TUは、ピクセル領域中に残差ビデオデータを備え得、変換の適用後に、TUは、周波数領域中に残差ビデオデータを表す、変換係数行列中に含まれ得る変換係数を備え得る。
[0071]従来、ビデオエンコーダ20は、実装されるビデオ圧縮規格によってサポートされるTUの様々なサイズの各々について別個のコンテキストモデルを維持する。HEVC規格の場合、ビデオ符号化効率を向上させるために、たとえば、32×32から128×128までの追加の変換ユニットサイズが使用され得るが、追加のTUサイズによって、追加の変換ユニットサイズの各々にコンテキストモデルを維持するためにメモリおよび計算要件も増大する。場合によっては、TUサイズが大きくなるにつれて使用されるコンテキストが多くなることがあり、したがって、より大きいTUサイズ用のより多くのコンテキストを維持するためにメモリおよび計算要件も増大する可能性がある。この問題の影響を低減するために、変換処理ユニット52は、行列乗算中に順変換を簡略化することに関して上記および以下で説明する方法(たとえば、以下で、図4〜図7に関して説明する係数ゼロアウト方法)のいずれかを実行するようにさらに構成され得る。
[0072]一実施形態では、変換係数をゼロ化するプロセスは、ゼロに等しい変換係数行列内の変換係数のサブセットの値を設定することを含む。一実施形態では、ゼロアウトされた変換係数は、計算されることも破棄されることもなく、その代わり、ゼロアウトされた変換係数は、単にゼロに等しく設定され、記憶すべき値も符号化すべき値も有しない。一実施形態では、変換係数の所定の行列が記憶される(たとえば、32×32の行列)が、そのような係数のより小さいサブセットのみ(たとえば、8×8、16×16など)が、順変換を実行するために使用される(たとえば、メモリにロードされる)。別の実施形態では、すべての係数が、最初にメモリにロードされるが、そのような係数のうちのいくつかの係数が、その後、ゼロに設定される。また別の実施形態では、所定の変換係数行列は変更されないが、行列を使用して行列乗算を実行するように構成されたプロセッサは、係数行列内の係数のロケーションに応じて、いくつかの乗算演算中にまたはその結果としてゼロ値を使用するようにさらに構成される。すべてのそのような実装形態は、ゼロアウトされた変換係数またはゼロアウトされた行列を使用することか、あるいは変換係数をゼロ化またはゼロアウトすることと呼ばれることがある。
[0073]本開示によれば、ゼロアウトされた変換係数は、一般に、変換係数行列中の保持される、より低い周波数変換係数と比較してより高い周波数の変換係数である。高周波数変換係数は、通常、符号化されるべきビデオブロックと予測ブロックとの間の非常に小さいピクセル差分に対応する残差ビデオデータを表す。したがって、高周波数変換係数に含まれる残差ビデオデータを非常に少なくすることができ、値をゼロに等しく設定しても、復号されるビデオの品質に対する影響は無視できる程度の影響しかない。
[0074]一例として、変換処理ユニット52は、変換係数行列中の変換係数の3/4(「外部領域」)をゼロアウトし得る。ビデオエンコーダ20は、次いで、行列乗算中に変換係数の保持された1/4(「内部領域」)をバッファするだけでよいことがある。このようにして、変換処理ユニット52は、元はサイズが32×32の変換係数行列内のサイズが16×16の有意係数をもつゼロアウトされた行列を生成し得る。このプロセスについて、図4〜図7中でさらに説明し、実証する。
[0075]上記で説明した例では、変換処理ユニット52は、変換係数値の所定の行列をロードし、行列が、所定のサイズ(たとえば、32×32)であり、次いで、それらの係数のうちの一部(「内部領域」、たとえば、16×16の左上部分)をゼロアウトして、ゼロアウトされた行列、たとえば、32×32の変換係数行列の元のサイズの1/4を生成するように構成された。他の場合には、変換処理ユニット52は、コーディングプロセスのコーディング複雑さ要件に応じてゼロアウトする係数の割合を高くするかまたは低くすることによって異なる「内部領域」を有するゼロアウトされた行列を生成するように構成され得る。さらに、場合によっては、変換処理ユニット52は、長方形領域または任意の他の形状の領域を有する「内部領域」を生成するように構成され得る。
[0076]変換処理ユニット52は、得られた変換係数を量子化ユニット54に送り得る。量子化ユニット54は、次いで、ビットレートをさらに低減するために変換係数を量子化し得る。量子化プロセスは、係数の一部または全部に関連するビット深度を低減し得る。量子化の程度は、量子化パラメータを調整することによって変更され得る。いくつかの例では、量子化ユニット54は、次いで、量子化された変換係数を含む行列の走査を実行し得る。代替的に、エントロピー符号化ユニット56が走査を実行し得る。
[0077]量子化の後に、エントロピー符号化ユニット56は、量子化変換係数をエントロピーコーディングし得る。たとえば、エントロピー符号化ユニット56は、コンテキスト適応型可変長コーディング(CAVLC)、コンテキスト適応型バイナリ算術コーディング(CABAC)、シンタックスベースコンテキスト適応型バイナリ算術コーディング(SBAC)、確率間隔区分エントロピー(PIPE)コーディング、または別のエントロピー符号化技法を実行し得る。コンテキストベースエントロピー符号化の場合、コンテキストは隣接ブロックに基づき得る。エントロピー符号化ユニット56によるエントロピー符号化の後、符号化されたビットストリームは、別のデバイス(たとえば、ビデオデコーダ30)に送信されるか、または後で送信するかもしくは取り出すためにアーカイブされ得る。
[0078]逆量子化ユニット58および逆変換ユニット60は、それぞれ逆量子化および逆変換を適用して、たとえば参照ブロックとして後で使用するために、画素領域において残差ブロックを再構成し得る。動き補償ユニット44は、残差ブロックを参照フレームメモリ64のフレームのうちの1つの予測ブロックに加算することによって参照ブロックを計算し得る。動き補償ユニット44はまた、再構成された残差ブロックに1つまたは複数の補間フィルタを適用して、動き推定において使用するサブ整数ピクセル値を計算し得る。加算器62は、参照フレームメモリ64に記憶するために再構成されたビデオブロックを生成するのに、再構成された残差ブロックを、動き補償ユニット44によって生成された動き補償予測ブロックに加算し得る。再構成されたビデオブロックは、次いで、後続のビデオフレーム中のブロックをインターコーディングするための参照ブロックとして動き推定ユニット42および動き補償ユニット44によって使用され得る。
[0079]図3は、本開示で説明する態様による技法を実装し得るビデオデコーダの一例を示すブロック図である。本開示で説明する技法は、ビデオデコーダ30の様々な構成要素を利用し得る。いくつかの例では、プロセッサ(図示せず)が、技法のいずれかまたはすべてを実行するように構成され得る。
[0080]図3の例では、ビデオデコーダ30は、エントロピー復号ユニット70と、動き補償ユニット72とイントラ予測ユニット74とをさらに含む予測ユニット81と、逆量子化ユニット76と、逆変換ユニット78と、参照フレームメモリ82と、加算器80とを含む。ビデオデコーダ30は、ビデオエンコーダ20(たとえば、図1および図2参照)に関して説明した符号化パスとは概して逆の復号パスを実行し得る。動き補償ユニット72は、エントロピー復号ユニット70から受信された動きベクトルに基づいて、予測データを生成し得、一方、イントラ予測ユニット74は、エントロピー復号ユニット70から受信されたイントラ予測モードインジケータに基づいて、予測データを生成し得る。
[0081]従来、ビデオエンコーダ30は、実装されるビデオ圧縮規格によってサポートされるTUの様々なサイズの各々について別個のコンテキストモデルを維持することになる。HEVC規格の場合、ビデオ符号化効率を向上させるために、たとえば、32×32から128×128までの追加の変換ユニットサイズが利用され得るが、追加のTUサイズによって、追加の変換ユニットサイズの各々にコンテキストモデルを維持するためにメモリおよび計算要件も増大する。
[0082]TUサイズを大きくする中間バッファリング要件を低減させるために、本開示で説明する技法は、図2のビデオエンコーダ20を用いて変換係数行列中に含まれる変換係数のうちの高周波数のサブセットをゼロアウトすることを含み得る。変換係数行列内のゼロアウトされた変換係数は、単に、ゼロに等しくなるように設定され得る。したがって、エントロピー復号ユニット70は、通常第1のサイズを有する変換係数行列内の第2のサイズを有する保持される係数ブロックに関連する符号化された係数を表す符号化されたビットストリームを受信し得る。エントロピー復号ユニット70は、係数を、第1のサイズを有する変換係数行列内の保持される係数ブロックに復号し得る。変換係数行列は、次いで、第2のサイズの保持される係数ブロック内の係数と変換係数行列内の残りの係数を表すゼロとを含み得る。
[0083]このようにして、ビデオエンコーダ20において変換係数をゼロアウトするプロセスは、ビデオデコーダ30において逆変換を実行するときにTUサイズを大きくする中間バッファリング要件を低減させ得る。一例として、逆変換ユニット78は、サイズが32×32の変換係数行列内のサイズが16×16の保持される係数ブロック中の変換係数に、第1の方向、たとえば、行方向の1次元領域逆変換を適用し得る。行の逆変換の後に、ビデオデコーダ30は、変換係数行列の2分の1、たとえば、32×16の係数のみを備える保持される係数ブロック内の係数から変換された中間残差データをバッファリングするだけでよいことがある。逆変換ユニット78は、次いで、TU中の中間残差データに、第2の方向、たとえば列方向の1次元逆変換を適用し得る。このようにして、逆変換ユニット78は、16×16のサイズを有する保持される係数ブロック中の残差データを含め、TU中の残りの残差データを表すためにゼロを追加することによって、元はサイズが32×32の変換係数行列を生成し得る。
[0084]復号プロセス中に、ビデオデコーダ30は、ビデオエンコーダ20から、符号化されたビデオスライスのビデオブロックと、関連するシンタックス要素とを表す、符号化されたビデオビットストリームを受信し得る。ビデオデコーダ30のエントロピー復号ユニット70は、量子化された係数と、動きベクトルまたはイントラ予測モードインジケータと、他のシンタックス要素とを生成するために、ビットストリームをエントロピー復号する。エントロピー復号ユニット70は、次いで、動きベクトルと他のシンタックス要素とを動き補償ユニット72に転送し得る。ビデオデコーダ30は、ビデオスライスレベルおよび/またはビデオブロックレベルで構文要素を受信し得る。
[0085]ビデオスライスが、イントラコード化(I)スライスとしてコーディングされるとき、イントラ予測ユニット74は、現在のフレームまたはピクチャの以前に復号されたブロックから、シグナリングされたイントラ予測モードおよびデータに基づいて、現在のビデオスライスのビデオブロックのための予測データを生成し得る。ビデオフレームが、インターコーディングされた(たとえば、B、P、またはGPB)スライスとしてコーディングされる時に、動き補償ユニット72は、エントロピー復号ユニット70から受け取られた動きベクトルと他の構文要素とに基づいて、現在のビデオスライスのビデオブロックの予測ブロックを生成し得る。予測ブロックは、参照ピクチャリストのうちの1つ内の参照ピクチャのうちの1つから生成され得る。ビデオデコーダ30は、参照フレームメモリ82に記憶された参照ピクチャに基づいて、デフォルト構成技法を使用して、参照フレームリスト、すなわち、リスト0とリスト1とを構成し得る。動き補償ユニット72は、動きベクトルと他のシンタックス要素とをパースすることによって現在のビデオスライスのビデオブロックのための予測情報を決定し、復号されている現在のビデオブロックのための予測ブロックを生成するために予測情報を使用し得る。たとえば、動き補償ユニット72は、ビデオスライスのビデオブロックをコーディングするために使用される予測モード(たとえば、イントラ予測またはインター予測)と、インター予測スライスタイプ(たとえば、Bスライス、Pスライス、またはGPBスライス)と、スライスの参照ピクチャリストのうちの1つまたは複数のための構築情報と、スライスの各インター符号化ビデオブロックのための動きベクトルと、スライスの各インターコード化ビデオブロックのためのインター予測ステータスと、現在のビデオスライス中のビデオブロックを復号するための他の情報とを決定するために、受信されたシンタックス要素のいくつかを使用し得る。
[0086]動き補償ユニット72は、補間フィルタに基づいて補間を実行し得る。動き補償ユニット72は、参照ブロックのサブ整数ピクセルの補間された値を計算するために、ビデオブロックの符号化の間にビデオエンコーダ20によって使用された補間フィルタを使用し得る。この場合、動き補償ユニット72は、受信したシンタックス要素から、ビデオエンコーダ20によって使用された補間フィルタを決定し、予測ブロックを生成するために、その補間フィルタを使用し得る。
[0087]逆量子化ユニット76は、ビットストリーム中で与えられ、エントロピー復号ユニット70によって復号された量子化変換係数を逆量子化(inverse quantize)、たとえば、逆量子化(de−quantize)し得る。逆量子化処理は、量子化の程度、および同様に、適用されるべき逆量子化の程度を決定するために、ビデオスライスの中の各ビデオブロックに対してビデオデコーダ30によって計算された量子化パラメータQPYの使用を含み得る。
[0088]逆変換ユニット78は、ピクセル領域内の残差ブロックを生成するために、逆変換、たとえば、逆DCT、逆整数変換、または概念的には類似の逆変換プロセスを、変換係数に適用し得る。動き補償ユニット72が、動きベクトルおよび他のシンタックス要素に基づいて現在のビデオブロックのための予測ブロックを生成した後、ビデオデコーダ30は、逆変換ユニット78からの残差ブロックを動き補償ユニット72によって生成された対応する予測ブロックと加算することによって、復号ビデオブロックを形成し得る。加算器80は、この加算演算を実行し得る。ブロッキネスアーティファクトを除去するために、復号ブロックをフィルタ処理するためのデブロッキングフィルタも適用され得る。(コーディングループ中またはコーディングループ後のいずれかの)他のループフィルタも、ピクセルの遷移を平滑化し、または場合によっては、ビデオ品質を改善するために使用され得る。所与のフレームまたはピクチャ中の復号ビデオブロックは、次いで、参照ピクチャメモリ82に記憶され得、この参照ピクチャメモリ82は、後続の動き補償のために使用される参照ピクチャを記憶し得る。参照フレームメモリ82はまた、図1のディスプレイデバイス32などのディスプレイデバイス上に後で提示するために復号ビデオを記憶し得る。
[0089]図4に、ピクセル領域から係数領域にビデオブロックを変換するために使用され得る変換係数行列400(または「係数行列」または「行列」)の一例を示す。変換係数行列400は、特定の行列サイズ(たとえば、32×32)を形成するために、一連の行(たとえば、32行)と一連の列(たとえば、32列)とを含んでいる。変換係数行列400に図示された各ボックス405は、個別の変換係数値(図示せず)を含んでおり、各値は、数値範囲をもつ整数である。便宜上、ただ1つのボックス405を標示する。図示の例では、変換係数行列400は、1024個の個別の変換係数値(たとえば、32×32)を含む。総変換係数行列400サイズは、内部領域410と外部領域420とを一緒に含む。この例では、内部領域410は、M×L領域によって表されるように、変換係数行列400の左上部分(たとえば、それの全体の1/4)として定義され得る。
[0090]一実施形態では、変換処理ユニット(たとえば、図2からの変換処理ユニット52)は、図6〜図7に関してさらに説明するように、外部領域420をゼロアウトすべきかどうかを決定するために内部領域410を処理するように構成され得る。これを達成するために、変換処理ユニット52は、内部領域410の計算された出力とピクセル領域出力計算とを数学的に操作することによって外部領域420の出力と変換係数行列400の総出力との間の差を決定し得る。
[0091]上記で説明したように、内部領域410の外側に位置する係数(たとえば、外部領域420中の係数)は、本開示の方法を使用して行われた決定に基づいて、以下の図6および図7に関してさらに説明するようにゼロアウトされ得る。これに反して、内部領域410内に位置する係数は、ゼロアウトされずに残り得る。変換係数行列400の左上の暗い方形の境界は、変換係数行列400中のゼロアウトされた係数とゼロアウトされていない係数との間の境界を表し得る。内部領域410のサイズ(たとえば、M×L)および形状(たとえば、方形)は、コーディングプロセスのコーディング複雑さ要件に基づいて選択され得る。内部領域410は、方形形状、長方形形状、弧形形状、三角形状、または任意の他の形状であり得る。
[0092]この例では、変換処理ユニット52は、元はサイズが32×32]の変換係数行列420内のM×L(たとえば、この場合は16×16)のサイズをもつ内部領域410を生成するように構成され得る。変換係数行列400は、32×32よりも小さいか、またはそれよりも大きいサイズを有し得る(たとえば、16×16または64×64)。内部領域410が定義されると、変換処理ユニット52は、内部領域410の範囲外にある変換係数行列400内のすべての係数(たとえば、外部領域420中の係数のすべて)をゼロアウトし得る。ゼロアウトされたサブセット(たとえば、変換係数行列400中の影のないブロック)は、変換係数行列400の内部領域410内の係数よりも高い周波数値をもつ係数を含み得る。これに反して、内部領域410内に位置する係数は、より低い空間周波数をもつ係数を含み得る。
[0093]変換係数の3/4をゼロアウトすることによって、変換処理ユニット52は、上記で説明したように、内部領域410内の内部のM×L個の係数のみを計算することによって行列乗算中に実行される計算を著しく低減し、簡略化し得る。たとえば、内部領域410が、32×32の変換係数行列のうちの16×16と定義されると、内部領域410の外側の係数のすべてをゼロアウトすることによって、変換処理ユニット52は、対応する割合で(たとえば、この例では最大62.5%)それの計算を低減し得る。このようにして、これらの技法は、計算リソース要件を低減し、ビデオエンコーダ20のコーディング効率を増加し得る。ゼロを乗じるのに必要な計算リソースが、非ゼロを乗じるのに必要なリソースよりも少なくなるので、これらの技法は、特に、(たとえば、それの行列乗算を実行するために、一般に、32×32の変換係数を使用し得るHEVC規格内の)より大きい変換ユニットサイズのために有用であり得る。
[0094]いくつかの実装形態では、外部領域420中の係数は、すべての場合に(たとえば、「盲目的に」)ゼロアウトされ得る。しかしながら、係数を盲目的にゼロアウトすることは、変換処理ユニット52の高いパフォーマンスロスを生じ得る。したがって、他の実装形態では、外部領域420中の係数は、たとえば、ビデオエンコーダ20の変換処理ユニット52および/または他の構成要素が所定の方法に従った後に適応的にゼロアウトされ得る。これらの方法について、以下の図6および図7に関して説明する。
[0095]図5Aおよび図5Bに、ピクセル領域から係数領域にビデオブロックを変換するために使用され得る、それぞれ、変換係数行列500Aおよび500Bのさらなる例を示す。図4に関して説明した変換係数行列400の機能と同様に、変換係数行列500Aおよび500Bは、それらのそれぞれの外部領域中の係数をゼロアウトすべきかどうかを決定するために外部領域の出力と総出力(または内部領域)との間の差を決定するために処理され得る。
[0096]図4において説明した例に反して、変換係数行列500Aまたは500Bは、対応する部分に分割され得る。この例では、変換係数行列500A(たとえば、32×32の行列)は、16個の等しい部分(たとえば、サイズが8×8の各々)に分割され得、変換係数行列500B(たとえば、別の32×32の行列)は、4つの等しい部分(たとえば、サイズが16×16の各々)に分割され得る。いくつかの実装形態では、それらの部分は、等しいサイズでないことがある。変換係数行列500Aまたは500Bが、部分に分割されると、内部領域は、各部分の左上の影つき部分(たとえば、それらの部分の総サイズの25%)の合計として定義され得る。変換係数行列500Aおよび500Bの左上の影つき部分(たとえば、対応する内部領域を構成する合計)を、510A_A〜510A_Pとして、510B_Aおよび510B_Dとして標示する。便宜上、変換係数行列500Aの左上の影つき部分のためのラベルのうちのいくつかのみが示されている。一実装形態では、A×Aが、変換係数行列500Aまたは500Bの部分の各々のサイズを表す場合、それらの部分の各々の左上の影つき部分が、
Figure 2017513342
のサイズによって表され得る。変換係数行列500Aの場合、部分は、一部は、520A_A〜520A_Pによって表され得(便宜上、すべての部分を標示していない)、上記で説明したように、それらの対応する左上の部分は、影つき領域510A_A〜510A_Pによって表され得る(再び、すべての領域を標示していない)。したがって、変換係数行列500Aのための内部領域は、影つき領域510A_A〜510A_Pの合計として表され得る(以下「内部領域A」と呼ぶ)。同様に、変換係数行列500Bの場合、部分は、520B_A〜520B_Dによって表され得、それらの対応する左上の部分は、影つき領域520B_A〜520A_Dによって表され得る。したがって、変換係数行列500Bのための内部領域は、影つき領域510B_A〜510B_Dの合計として表され得る(以下「内部領域B」と呼ぶ)。
[0097]上記で図4に関して説明したように、内部領域AまたはBのサイズおよび形状は、コーディングプロセスのためのコーディング複雑さ要件に基づいて選択され得る。一実施形態では、より小さいサイズの内部領域を選択することは、計算要件を減少させる(たとえば、計算の速度を上げる)が、同じく、全体的なパフォーマンスを低下させ得る(たとえば、最終的なピクチャ品質を低下させ得る)。別の実施形態では、より大きいサイズの内部領域を選択することは、計算要件を増加させる(たとえば、計算の速度を低下させる)が、同じく、全体的なパフォーマンスを増加させ得る(たとえば、最終的なピクチャ品質を増加させ得る)。変換係数行列500Aまたは500Bの内部に図示された各ボックスは、変換行列中の対応する変換係数を表し得る。内部領域AまたはBの外側に位置する係数は、本開示の方法を使用して行われた決定に基づいて、以下の図6および図7に関してさらに説明するようにゼロアウトされ得る。これに反して、内部領域AまたはB内に位置する係数は、ゼロアウトされずに残り得る。変換係数行列500Aまたは500Bの部分の各々の左上の暗い方形の境界は、行列中のゼロアウトされた係数とゼロアウトされていない係数との間の境界を表し得る。他の実施形態では、個別の内部領域区域(たとえば、変換係数行列500Aの510A_A〜510A_P)は、方形形状、長方形形状、弧形形状、三角形状、または任意の他の形状であり得る。
[0098]この例では、変換処理ユニット(たとえば、図2からの変換処理ユニット52)は、それぞれ、変換係数行列500Aまたは500B内の内部領域AまたはB内の係数に関連する出力を計算するように構成され得る。変換係数行列500Aまたは500Bは、32×32よりも小さいか、またはそれよりも大きいサイズを有し得る(たとえば、16×16または64×64)。この例では、内部領域Aは、16個の4×4ブロックを含み、これは、互いに隣接して構成される場合、16×16のブロックを形成することになる。同様に、内部領域Bは、4つの8×8ブロックからなり、これは、互いに隣接して構成される場合、16×16のブロックを形成することになる。内部領域AまたはBが定義されたとき、変換処理ユニット52は、内部領域AまたはBの範囲外にある変換係数行列500Aまたは500B内のすべての係数をゼロアウトし得る。ゼロアウトされたサブセット(たとえば、変換係数行列500Aまたは500B中の影のないブロック)は、変換係数行列500Aまたは500Bの内部領域AまたはB内の係数よりも高い周波数値をもつ係数を含み得る。これに反して、内部領域AまたはB内に位置する係数は、より低い空間周波数をもつ係数を含み得る。
[0099]図4で説明したように、係数行列520の変換係数の3/4をゼロアウトすることによって、変換処理ユニット52は、内部領域AまたはB内の内部のM×L個の係数だけを計算することによって行列乗算中にそれの計算を著しく低減し得る。たとえば、内部領域AまたはBが、図5Aおよび図5Bに示すように定義されるとき、変換処理ユニット52は、対応する割合(たとえば、これらの例では最大62.5%)だけそれの計算を低減し得る。このようにして、これらの技法は、計算リソース要件を低減し、ビデオエンコーダ20のコーディング効率を増加し得る。これは、たとえば、HEVC規格内のより大きい変換ユニットサイズ、たとえば32×32から128×128までに特に有用であり得る。
[00100]いくつかの実装形態では、内部領域AまたはBの外側の係数は、すべての場合に(たとえば、「盲目的に」)ゼロアウトされ得る。しかしながら、係数を盲目的にゼロアウトすることは、変換処理ユニット52の高いパフォーマンスロスを生じ得る。したがって、他の実装形態では、内部領域AまたはBの外側の係数は、たとえば、ビデオエンコーダ20の変換処理ユニット52および/または他の構成要素が所定の方法に従った後に適応的にゼロアウトされ得る。これらの方法について、以下の図6および図7に関して説明する。
[00101]図6に、図4に関して説明したように、変換処理ユニット(たとえば、図2の変換処理ユニット52)が、行列乗算中に変換係数行列の係数のサブセットをゼロアウトすべきかどうかを決定するための1つの方法のフローチャート600を示す。本方法は、「モード決定プロセス」と呼ばれることがある。上記で説明したように、係数を盲目的にゼロアウトすることは、変換処理ユニット52の高いパフォーマンスロスを生じ得る。このフローチャート(および図7に示すフローチャート)は、変換処理ユニット52および/またはビデオエンコーダ20が、しきい値と比較した出力の差に基づいて係数を適応的にゼロアウトし得る2つの方法を表す。
[00102]ブロック605において、変換処理ユニット52は、残差ピクセル領域行列と固定順方向変換行列とを用いて方法を開始する。一実装形態では、順方向変換行列は、HEVCにおいて使用される32×32の順方向変換行列であり得る。変換処理ユニット52は、残差ピクセル領域行列を係数領域行列に変換するために固定順方向変換行列を使用し得る。変換処理ユニット52は、図4に関して上記で説明した順変換の簡略化された、ゼロアウトされたバージョンを使用して変換することによって係数領域における行列出力の一部分だけを計算することによってそれの計算要件を低減し得る。係数領域における総出力がピクセル領域における総出力に等しくなるので(式(1))、これが可能になる。
[00103]一例として、ピクセル領域中の総出力(PP)から係数領域中の内部領域(たとえば、図4に関して説明した内部領域)の出力(PI)を減算すると、係数領域中の内部領域の外側の出力(PO)として解釈され得る値が生じ得る(式(2))。PIにこの値を加算すると、係数領域中の総出力(PC)が生じ得る(式(3))。一例では、それぞれ、PPおよびPIは、以下の式(4)および式(5)に従って計算され得る。式(2)〜式(5)はそれぞれ、それらのそれぞれの変数を計算するただ1つの例を表すことを理解されたい。PC、PO、PPおよびPIはまた、任意の数の他の方法で計算され得、これは、様々な方法で変数のいずれかまたはすべてを操作することを含み得る。さらに、上記の出力計算のすべては、誤差平方和(SSE:sum of squared errors)または絶対差分和(SAD)に基づき得る。
Figure 2017513342
Figure 2017513342
Figure 2017513342
Figure 2017513342
Figure 2017513342
[00109]上記のプロセスを適用する一例として、次いで、ブロック610において、変換処理ユニット52は、ピクセル領域中の変換ブロック全体の出力(たとえば、ピクセル領域中の総出力、PP)を計算し得る。次いで、ブロック615において、変換行列係数のサブセット(たとえば、図4〜図5に関して説明した内部領域)を使用して、変換処理ユニット52は、係数領域中の内部領域の出力(たとえば、PI)を計算し得る。一実装形態では、変換行列係数のサブセットは、図4〜図5に関して上記で説明した内部領域であり得、ここで、内部領域の外側にある係数は、ゼロアウトされ得る。別の実装形態では、変換処理ユニット52は、ゼロのアレイを含めてメモリからいくつかの係数をロードし、次いで、係数のM×Nの行と列のサブセットだけを処理しながら行列乗算を実行し得る。いずれの場合も、次いで、ブロック619において、PIを使用して、変換処理ユニット52は、(たとえば、PPからPIを減算することによって)係数領域中の外部領域の出力(たとえば、上記でおよび図4〜図5に関して説明した外部領域の出力、PO)を推定し得る。上記のプロセスは、一例にすぎず、いくつかの実装形態では、変換処理ユニット52は、他の方法または順序で上記のステップまたは計算を実行し得る。
[00110]一例では、外部領域の出力を決定すると、次いで、ブロック620において、変換処理ユニット52は、外部領域の出力が所定のしきい値と何らかの推定された出力との積よりも小さいかどうかを決定し得る(たとえば、PO<Thresh*PP、PI>Thresh*PP、PI>Thresh*PO、または任意の他の同等の数学的比較)。そうである場合、次いで、ブロック625において、変換処理ユニット52は、上記でおよび図4に関して説明した変換を実行するために縮約された(たとえば、ゼロアウトされた)変換行列を使用し得る。そうでない場合、次いで、ブロック630において、変換処理ユニット52は、変換を実行するために縮約されていない(たとえば、ゼロアウトされていない)変換行列を使用し得る。いずれの場合も、変換処理ユニット52は、ブロック690において本方法を終了する。
[00111]図7に、図4および/または図5に関して説明したように、変換処理ユニット(たとえば、図2の変換処理ユニット52)が、行列乗算中に変換係数行列の係数のサブセットをゼロアウトすべきかどうかを決定するためのさらなる方法のフローチャート700を示す。本方法は、「モード決定プロセス」と呼ばれることがある。図6において説明した方法に反して、この例では、変換処理ユニット52は、図4において説明した内部領域によるゼロアウト方法が過剰なパワー損失を生じるであろうと決定する場合、変換処理ユニット52は、依然として、縮約されていない変換行列を使用する必要がないことがある。代わりに、変換処理ユニット52は、最初に、より単純な変換(たとえば、4×4または8×8の変換など、アダマール変換またはより小さいサイズの変換)を使用することによってゼロアウト方法を適格とするために異なる内部領域(たとえば、図5に関して説明した内部領域)を使用しようと試み得る。
[00112]次に、その結果として、ブロック705において、変換処理ユニット52は、この場合も、残差ピクセル領域行列と固定順方向変換行列とを用いて方法を開始する。一実装形態では、順方向変換行列は、HEVCにおいて使用される32×32の順方向変換行列であり得る。変換処理ユニット52は、図4〜図6、式(1)〜式(3)に関して上記で説明した順変換の簡略化された、ゼロアウトされたバージョンを使用して変換することによって、または何らかの他の適切な式を使用することによって係数領域における行列出力の一部分だけを計算することによってそれの計算要件を低減し得る。PPとPIとのための計算は、以下で説明するようにさらに異なり得る。さらに、上記の出力計算のすべては、誤差平方和(SSE)または絶対差分和(SAD)に基づき得る。
[00113]PPおよびPIのための計算は、選定された内部領域のサイズおよびロケーションに応じて異なり得る。この例では、変換処理ユニット52が、図5Aに示した内部領域を使用することを選定したと仮定する。したがって、図5に関して上記で説明したように、変換係数行列は、16個の等しい8×8の部分に分割されており、各々が、左上の4×4の部分を含んでおり、それらの部分のすべてが、変換係数行列のすべての内側部分に合計される。この状況があるとすれば、PPおよびPIは、それぞれ、式(6)および式(7)において表されるように計算され得るが、任意の数の他の適切な方法でも計算され得る。
Figure 2017513342
Figure 2017513342
[00116]次いで、ブロック710、715、および719において、変換処理ユニット52は、それぞれ、PP、PI、およびPOを計算し得る。これを達成するために、変換処理ユニット52は、上記で説明した式を使用し得るか、またはそれは、任意の数の他の適切な計算または数学的操作を使用し得る。
[00117]一例では、外部領域の出力を決定すると、次いで、ブロック720において、変換処理ユニット52は、外部領域の出力が所定のしきい値と何らかの推定された出力との積よりも小さいかどうかを決定し得る(たとえば、PO<Thresh*PP)。そうである場合、次いで、ブロック725において、変換処理ユニット52は、上記でおよび図4に関して説明した変換を実行するために縮約された(たとえば、ゼロアウトされた)変換行列を使用し得る。
[00118]そうでない場合、図6において説明した方法に反して、次いで、ブロック730において、変換処理ユニット52は、内部領域が所定の回数以前に変更されたかどうかを決定し得る。そうでない場合、次いで、ブロック740において、変換処理ユニット52は、内部領域のサイズ、位置、またはその両方(たとえば、図5に示した内部領域)を変更し得、次いで、ブロック715に戻る。しかしながら、変換処理ユニット52が、所定の回数よりも多くこのステップをすでに実行している場合、次いで、ブロック730において、変換処理ユニット52は、変換を実行するために、縮約されていない(たとえば、ゼロアウトされていない)変換行列を使用し、ブロック790において本方法を終了し得る。
[00119]上記例に応じて、本明細書で説明した技法のいずれかのいくつかの行為またはイベントが、異なるシーケンスで実行され得、全体的に追加、マージ、または除外され得る(たとえば、すべての説明した行為またはイベントが本技法の実施のために必要であるとは限らない)ことを認識されたい。さらに、いくつかの例では、行為またはイベントは、連続的にではなく、たとえば、マルチスレッド処理、割込み処理、または複数のプロセッサを通して同時に実行され得る。
[00120]1つまたは複数の例では、説明する機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれの任意の組合せで実施され得る。ソフトウェアで実装される場合、機能は、1つまたは複数の命令またはコードとして、コンピュータ可読媒体上に記憶されるか、あるいはコンピュータ可読媒体を介して送信され、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ可読媒体は、データ記憶媒体などの有形媒体に対応する、コンピュータ可読記憶媒体を含み得るか、または、たとえば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含む通信媒体を含み得る。このようにして、コンピュータ可読媒体は、一般に、(1)非一時的である有形のコンピュータ可読記憶媒体、または(2)信号または搬送波のような通信媒体に対応し得る。データ記憶媒体は、本開示で説明した技法の実装のための命令、コードおよび/またはデータ構造を取り出すために、1つまたは複数のコンピュータあるいは1つまたは複数のプロセッサによってアクセスされ得る、任意の利用可能な媒体であり得る。コンピュータプログラム製品はコンピュータ可読媒体を含み得る。
[00121]限定ではなく例として、そのようなコンピュータ可読記憶媒体は、RAM、ROM、EEPROM(登録商標)、CD−ROMもしくは他の光ディスクストレージ、磁気ディスクストレージ、もしくは他の磁気ストレージデバイス、フラッシュメモリ、または、命令もしくはデータ構造の形態の所望のプログラムコードを記憶するために使用され得、コンピュータによってアクセスされ得る任意の他の媒体を備え得る。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。たとえば、命令が、ウェブサイト、サーバ、または他のリモートソースから、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線(DSL)、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、DSL、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。しかしながら、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時的媒体を含むのではなく、非一時的な有形の記憶媒体を対象とすることを理解されたい。本明細書で使用するディスク(disk)およびディスク(disc)は、コンパクトディスク(disc)(CD)、レーザーディスク(登録商標)(disc)、光ディスク(disc)、デジタル多用途ディスク(disc)(DVD)、フロッピー(登録商標)ディスク(disk)およびBlu−rayディスク(disc)を含み、ここで、ディスク(disk)は、通常、データを磁気的に再生し、ディスク(disc)は、データをレーザーで光学的に再生する。上記の組合せも、コンピュータ可読媒体の範囲内に含めるべきである。
[00122]命令は、1つもしくは複数のデジタル信号プロセッサ(DSP)、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、あるいは他の同等の集積回路またはディスクリート論理回路などの1つもしくは複数のプロセッサによって実行され得る。したがって、本明細書で使用される「プロセッサ」という用語は、前述の構造、または、本明細書で説明された技法の実装に好適な任意の他の構造のいずれかを指すことがある。加えて、いくつかの態様では、本明細書で説明された機能は、符号化および復号のために構成されるか、または複合コーデックに組み込まれる、専用のハードウェアモジュールおよび/またはソフトウェアモジュール内で提供され得る。また、本技法は、1つまたは複数の回路または論理要素で十分に実装され得る。
[00123]本開示の技法は、ワイヤレスハンドセット、集積回路(IC)またはICのセット(たとえば、チップセット)を含む、多種多様なデバイスまたは装置で実装され得る。本開示では、開示する技法を実行するように構成されたデバイスの機能的態様を強調するために様々な構成要素、モジュール、またはユニットについて説明したが、それらの構成要素、モジュール、またはユニットを、必ずしも異なるハードウェアユニットによって実現する必要があるとは限らない。むしろ、上記で説明されたように、様々なユニットが、好適なソフトウェアおよび/またはファームウェアとともに、上記で説明された1つまたは複数のプロセッサを含めて、コーデックハードウェアユニットにおいて組み合わされるか、または相互動作ハードウェアユニットの集合によって提供され得る。
[00124]様々な例について説明した。これらおよび他の例は、以下の特許請求の範囲に含まれる。
[00124]様々な例について説明した。これらおよび他の例は、以下の特許請求の範囲に含まれる。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
[C1]
ビデオブロックを記憶するように構成されたメモリと、
前記メモリと通信しているプロセッサであって、
前記ビデオブロックの全出力値を決定することと、
縮約変換係数行列を決定することと、ここにおいて、前記縮約変換係数行列が、完全変換係数行列の同じ内部領域のゼロまたは非ゼロ値の内部領域とゼロ値の外部領域とを備える、ここにおいて、前記縮約変換係数行列と前記完全変換係数行列とが、同じサイズを有する、
前記縮約変換係数行列を使用して前記ビデオブロックの部分出力値を決定することと、
前記全出力値および部分出力値に基づいて前記縮約変換係数行列を使用してピクセル領域から係数領域に前記ビデオブロックを変換することと、
前記変換されたビデオブロックを符号化することと
を行うように構成されたプロセッサと
を備える、ビデオエンコーダ。
[C2]
前記ビデオブロックが、複数のルーマピクセル値を備える、ここにおいて、前記プロセッサが、前記ルーマピクセル値の方形を合計することによって前記全出力値を決定するように構成された、C1に記載のビデオエンコーダ。
[C3]
前記ビデオブロックが、32ピクセル×32ピクセルのサイズを有する、C1に記載のビデオエンコーダ。
[C4]
前記完全変換係数行列が、32個の係数×32個の係数のサイズを有する、ここにおいて、前記縮約変換係数行列内部領域が、前記完全変換係数行列の左上の16×16の係数値と同じである、C1に記載のビデオエンコーダ。
[C5]
前記プロセッサが、前記メモリ中に前記完全変換係数行列を記憶し、前記内部領域の外側のすべての係数値をゼロに変換することによって前記縮約変換係数行列を決定するようにさらに構成された、C1に記載のビデオエンコーダ。
[C6]
前記プロセッサが、前記内部領域内にある前記完全変換係数行列の前記値のみを記憶することによって前記縮約変換係数行列を決定するようにさらに構成された、C1に記載のビデオエンコーダ。
[C7]
前記プロセッサが、前記縮約変換係数行列を使用して前記ビデオブロックを変換し、前記変換されたブロック内の値の方形を合計することによって、前記ビデオブロックの前記部分出力を決定するようにさらに構成された、C1に記載のビデオエンコーダ。
[C8]
前記プロセッサは、前記部分出力がしきい値と前記全出力との積よりも小さいとき、前記縮約変換係数行列を使用して前記ピクセル領域から前記係数領域に前記ビデオブロックを変換するようにさらに構成された、C1に記載のビデオエンコーダ。
[C9]
前記プロセッサは、前記部分出力が前記積以上であるとき、前記完全変換係数行列を使用して前記ピクセル領域から前記係数領域に前記ビデオブロックを変換するようにさらに構成された、C8に記載のビデオエンコーダ。
[C10]
前記プロセッサは、前記部分出力が前記積以上であるとき、前記内部領域サイズ、位置、またはその両方を変更するようにさらに構成された、C8に記載のビデオエンコーダ。
[C11]
ビデオを符号化する方法であって、
ビデオブロックを記憶することと、
前記ビデオブロックの全出力値を決定することと、
縮約変換係数行列を決定することと、ここにおいて、前記縮約変換係数行列が、完全変換係数行列の同じ内部領域のゼロまたは非ゼロ値の内部領域とゼロ値の外部領域とを備える、ここにおいて、前記縮約変換係数行列と前記完全変換係数行列とが、同じサイズを有する、
前記縮約変換係数行列を使用して前記ビデオブロックの部分出力値を決定することと、
前記全出力値および部分出力値に基づいて前記縮約変換係数行列を使用してピクセル領域から係数領域に前記ビデオブロックを変換することと、
前記変換されたビデオブロックを符号化することと
を備える方法。
[C12]
前記ビデオブロックが、複数のルーマピクセル値を備え、前記方法が、前記ルーマピクセル値の方形を合計することによって前記全出力値を決定することをさらに備える、C11に記載の方法。
[C13]
前記ビデオブロックが、32ピクセル×32ピクセルのサイズを有する、C11に記載の方法。
[C14]
前記完全変換係数行列が、32個の係数×32個の係数のサイズを有する、ここにおいて、前記縮約変換係数行列内部領域が、前記完全変換係数行列の左上の16×16の係数値と同じである、C11に記載の方法。
[C15]
前記完全変換係数行列を記憶し、前記内部領域の外側のすべての係数値をゼロに変換することによって前記縮約変換係数行列を決定することをさらに備える、C11に記載の方法。
[C16]
前記内部領域内にある前記完全変換係数行列の前記値のみを記憶することによって前記縮約変換係数行列を決定することをさらに備える、C11に記載の方法。
[C17]
前記縮約変換係数行列を使用して前記ビデオブロックを変換し、前記変換されたブロック内の値の方形を合計することによって、前記ビデオブロックの前記部分出力を決定することをさらに備える、C11に記載の方法。
[C18]
前記部分出力がしきい値と前記全出力との積よりも小さいとき、前記縮約変換係数行列を使用して前記ピクセル領域から前記係数領域に前記ビデオブロックを変換することをさらに備える、C11に記載の方法。
[C19]
前記部分出力が前記積以上であるとき、前記完全変換係数行列を使用して前記ピクセル領域から前記係数領域に前記ビデオブロックを変換することをさらに備える、C18に記載の方法。
[C20]
前記部分出力が前記積以上であるとき、前記内部領域サイズ、位置、またはその両方を変更することをさらに備える、C18に記載の方法。
[C21]
実行されたとき、装置に、
ビデオブロックを記憶することと、
前記ビデオブロックの全出力値を決定することと、
縮約変換係数行列を決定することと、ここにおいて、前記縮約変換係数行列が、完全変換係数行列の同じ内部領域のゼロまたは非ゼロ値の内部領域とゼロ値の外部領域とを備える、ここにおいて、前記縮約変換係数行列と前記完全変換係数行列とが、同じサイズを有する、
前記縮約変換係数行列を使用して前記ビデオブロックの部分出力値を決定することと、
前記全出力値および部分出力値に基づいて前記縮約変換係数行列を使用してピクセル領域から係数領域に前記ビデオブロックを変換することと、
前記変換されたビデオブロックを符号化することと
を行わせるコードを備える非一時的コンピュータ可読媒体。
[C22]
前記ビデオブロックが、複数のルーマピクセル値を備え、実行されたとき、前記装置に、前記ルーマピクセル値の方形を合計することによって前記全出力値を決定することを行わせるコードをさらに備える、C21に記載のコンピュータ可読媒体。
[C23]
実行されたとき、前記装置に、前記縮約変換係数行列を使用して前記ビデオブロックを変換し、前記変換されたブロック内の値の方形を合計することによって、前記ビデオブロックの前記部分出力を決定することを行わせるコードをさらに備える、C21に記載のコンピュータ可読媒体。
[C24]
実行されたとき、前記装置に、前記部分出力がしきい値と前記全出力との積よりも小さいとき、前記縮約変換係数行列を使用して前記ピクセル領域から前記係数領域に前記ビデオブロックを変換することを行わせるコードをさらに備える、C21に記載のコンピュータ可読媒体。
[C25]
実行されたとき、前記装置に、前記部分出力が前記積以上であるとき、前記完全変換係数行列を使用して前記ピクセル領域から前記係数領域に前記ビデオブロックを変換することを行わせるコードをさらに備える、C24に記載のコンピュータ可読媒体。
[C26]
ビデオを符号化するための装置であって、
ビデオブロックを記憶するための手段と、
前記ビデオブロックの全出力値を決定するための手段と、
縮約変換係数行列を決定するための手段と、ここにおいて、前記縮約変換係数行列が、完全変換係数行列の同じ内部領域のゼロまたは非ゼロ値の内部領域とゼロ値の外部領域とを備える、ここにおいて、前記縮約変換係数行列と前記完全変換係数行列とが、同じサイズを有する、
前記縮約変換係数行列を使用して前記ビデオブロックの部分出力値を決定するための手段と、
前記全出力値および部分出力値に基づいて前記縮約変換係数行列を使用してピクセル領域から係数領域に前記ビデオブロックを変換するための手段と、
前記変換されたビデオブロックを符号化するための手段と
を備える、装置。
[C27]
前記ビデオブロックが、複数のルーマピクセル値を備え、前記ルーマピクセル値の方形を合計することによって前記全出力値を決定するための手段をさらに備える、C31に記載の装置。
[C28]
前記縮約変換係数行列を使用して前記ビデオブロックを変換し、前記変換されたブロック内の値の方形を合計することによって、前記ビデオブロックの前記部分出力を決定するための手段をさらに備える、C31に記載の装置。
[C29]
前記部分出力がしきい値と前記全出力との積よりも小さいとき、前記縮約変換係数行列を使用して前記ピクセル領域から前記係数領域に前記ビデオブロックを変換するための手段をさらに備える、C31に記載の装置。
[C30]
前記部分出力が前記積以上であるとき、前記完全変換係数行列を使用して前記ピクセル領域から前記係数領域に前記ビデオブロックを変換するための手段をさらに備える、C29に記載の装置。

Claims (30)

  1. ビデオブロックを記憶するように構成されたメモリと、
    前記メモリと通信しているプロセッサであって、
    前記ビデオブロックの全出力値を決定することと、
    縮約変換係数行列を決定することと、ここにおいて、前記縮約変換係数行列が、完全変換係数行列の同じ内部領域のゼロまたは非ゼロ値の内部領域とゼロ値の外部領域とを備える、ここにおいて、前記縮約変換係数行列と前記完全変換係数行列とが、同じサイズを有する、
    前記縮約変換係数行列を使用して前記ビデオブロックの部分出力値を決定することと、
    前記全出力値および部分出力値に基づいて前記縮約変換係数行列を使用してピクセル領域から係数領域に前記ビデオブロックを変換することと、
    前記変換されたビデオブロックを符号化することと
    を行うように構成されたプロセッサと
    を備える、ビデオエンコーダ。
  2. 前記ビデオブロックが、複数のルーマピクセル値を備える、ここにおいて、前記プロセッサが、前記ルーマピクセル値の方形を合計することによって前記全出力値を決定するように構成された、請求項1に記載のビデオエンコーダ。
  3. 前記ビデオブロックが、32ピクセル×32ピクセルのサイズを有する、請求項1に記載のビデオエンコーダ。
  4. 前記完全変換係数行列が、32個の係数×32個の係数のサイズを有する、ここにおいて、前記縮約変換係数行列内部領域が、前記完全変換係数行列の左上の16×16の係数値と同じである、請求項1に記載のビデオエンコーダ。
  5. 前記プロセッサが、前記メモリ中に前記完全変換係数行列を記憶し、前記内部領域の外側のすべての係数値をゼロに変換することによって前記縮約変換係数行列を決定するようにさらに構成された、請求項1に記載のビデオエンコーダ。
  6. 前記プロセッサが、前記内部領域内にある前記完全変換係数行列の前記値のみを記憶することによって前記縮約変換係数行列を決定するようにさらに構成された、請求項1に記載のビデオエンコーダ。
  7. 前記プロセッサが、前記縮約変換係数行列を使用して前記ビデオブロックを変換し、前記変換されたブロック内の値の方形を合計することによって、前記ビデオブロックの前記部分出力を決定するようにさらに構成された、請求項1に記載のビデオエンコーダ。
  8. 前記プロセッサは、前記部分出力がしきい値と前記全出力との積よりも小さいとき、前記縮約変換係数行列を使用して前記ピクセル領域から前記係数領域に前記ビデオブロックを変換するようにさらに構成された、請求項1に記載のビデオエンコーダ。
  9. 前記プロセッサは、前記部分出力が前記積以上であるとき、前記完全変換係数行列を使用して前記ピクセル領域から前記係数領域に前記ビデオブロックを変換するようにさらに構成された、請求項8に記載のビデオエンコーダ。
  10. 前記プロセッサは、前記部分出力が前記積以上であるとき、前記内部領域サイズ、位置、またはその両方を変更するようにさらに構成された、請求項8に記載のビデオエンコーダ。
  11. ビデオを符号化する方法であって、
    ビデオブロックを記憶することと、
    前記ビデオブロックの全出力値を決定することと、
    縮約変換係数行列を決定することと、ここにおいて、前記縮約変換係数行列が、完全変換係数行列の同じ内部領域のゼロまたは非ゼロ値の内部領域とゼロ値の外部領域とを備える、ここにおいて、前記縮約変換係数行列と前記完全変換係数行列とが、同じサイズを有する、
    前記縮約変換係数行列を使用して前記ビデオブロックの部分出力値を決定することと、
    前記全出力値および部分出力値に基づいて前記縮約変換係数行列を使用してピクセル領域から係数領域に前記ビデオブロックを変換することと、
    前記変換されたビデオブロックを符号化することと
    を備える方法。
  12. 前記ビデオブロックが、複数のルーマピクセル値を備え、前記方法が、前記ルーマピクセル値の方形を合計することによって前記全出力値を決定することをさらに備える、請求項11に記載の方法。
  13. 前記ビデオブロックが、32ピクセル×32ピクセルのサイズを有する、請求項11に記載の方法。
  14. 前記完全変換係数行列が、32個の係数×32個の係数のサイズを有する、ここにおいて、前記縮約変換係数行列内部領域が、前記完全変換係数行列の左上の16×16の係数値と同じである、請求項11に記載の方法。
  15. 前記完全変換係数行列を記憶し、前記内部領域の外側のすべての係数値をゼロに変換することによって前記縮約変換係数行列を決定することをさらに備える、請求項11に記載の方法。
  16. 前記内部領域内にある前記完全変換係数行列の前記値のみを記憶することによって前記縮約変換係数行列を決定することをさらに備える、請求項11に記載の方法。
  17. 前記縮約変換係数行列を使用して前記ビデオブロックを変換し、前記変換されたブロック内の値の方形を合計することによって、前記ビデオブロックの前記部分出力を決定することをさらに備える、請求項11に記載の方法。
  18. 前記部分出力がしきい値と前記全出力との積よりも小さいとき、前記縮約変換係数行列を使用して前記ピクセル領域から前記係数領域に前記ビデオブロックを変換することをさらに備える、請求項11に記載の方法。
  19. 前記部分出力が前記積以上であるとき、前記完全変換係数行列を使用して前記ピクセル領域から前記係数領域に前記ビデオブロックを変換することをさらに備える、請求項18に記載の方法。
  20. 前記部分出力が前記積以上であるとき、前記内部領域サイズ、位置、またはその両方を変更することをさらに備える、請求項18に記載の方法。
  21. 実行されたとき、装置に、
    ビデオブロックを記憶することと、
    前記ビデオブロックの全出力値を決定することと、
    縮約変換係数行列を決定することと、ここにおいて、前記縮約変換係数行列が、完全変換係数行列の同じ内部領域のゼロまたは非ゼロ値の内部領域とゼロ値の外部領域とを備える、ここにおいて、前記縮約変換係数行列と前記完全変換係数行列とが、同じサイズを有する、
    前記縮約変換係数行列を使用して前記ビデオブロックの部分出力値を決定することと、
    前記全出力値および部分出力値に基づいて前記縮約変換係数行列を使用してピクセル領域から係数領域に前記ビデオブロックを変換することと、
    前記変換されたビデオブロックを符号化することと
    を行わせるコードを備える非一時的コンピュータ可読媒体。
  22. 前記ビデオブロックが、複数のルーマピクセル値を備え、実行されたとき、前記装置に、前記ルーマピクセル値の方形を合計することによって前記全出力値を決定することを行わせるコードをさらに備える、請求項21に記載のコンピュータ可読媒体。
  23. 実行されたとき、前記装置に、前記縮約変換係数行列を使用して前記ビデオブロックを変換し、前記変換されたブロック内の値の方形を合計することによって、前記ビデオブロックの前記部分出力を決定することを行わせるコードをさらに備える、請求項21に記載のコンピュータ可読媒体。
  24. 実行されたとき、前記装置に、前記部分出力がしきい値と前記全出力との積よりも小さいとき、前記縮約変換係数行列を使用して前記ピクセル領域から前記係数領域に前記ビデオブロックを変換することを行わせるコードをさらに備える、請求項21に記載のコンピュータ可読媒体。
  25. 実行されたとき、前記装置に、前記部分出力が前記積以上であるとき、前記完全変換係数行列を使用して前記ピクセル領域から前記係数領域に前記ビデオブロックを変換することを行わせるコードをさらに備える、請求項24に記載のコンピュータ可読媒体。
  26. ビデオを符号化するための装置であって、
    ビデオブロックを記憶するための手段と、
    前記ビデオブロックの全出力値を決定するための手段と、
    縮約変換係数行列を決定するための手段と、ここにおいて、前記縮約変換係数行列が、完全変換係数行列の同じ内部領域のゼロまたは非ゼロ値の内部領域とゼロ値の外部領域とを備える、ここにおいて、前記縮約変換係数行列と前記完全変換係数行列とが、同じサイズを有する、
    前記縮約変換係数行列を使用して前記ビデオブロックの部分出力値を決定するための手段と、
    前記全出力値および部分出力値に基づいて前記縮約変換係数行列を使用してピクセル領域から係数領域に前記ビデオブロックを変換するための手段と、
    前記変換されたビデオブロックを符号化するための手段と
    を備える、装置。
  27. 前記ビデオブロックが、複数のルーマピクセル値を備え、前記ルーマピクセル値の方形を合計することによって前記全出力値を決定するための手段をさらに備える、請求項31に記載の装置。
  28. 前記縮約変換係数行列を使用して前記ビデオブロックを変換し、前記変換されたブロック内の値の方形を合計することによって、前記ビデオブロックの前記部分出力を決定するための手段をさらに備える、請求項31に記載の装置。
  29. 前記部分出力がしきい値と前記全出力との積よりも小さいとき、前記縮約変換係数行列を使用して前記ピクセル領域から前記係数領域に前記ビデオブロックを変換するための手段をさらに備える、請求項31に記載の装置。
  30. 前記部分出力が前記積以上であるとき、前記完全変換係数行列を使用して前記ピクセル領域から前記係数領域に前記ビデオブロックを変換するための手段をさらに備える、請求項29に記載の装置。
JP2016557580A 2014-03-17 2015-03-12 ゼロアウトされた係数を使用した低複雑な順変換のためのシステムおよび方法 Ceased JP2017513342A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/216,086 US9432696B2 (en) 2014-03-17 2014-03-17 Systems and methods for low complexity forward transforms using zeroed-out coefficients
US14/216,086 2014-03-17
PCT/US2015/020177 WO2015183375A2 (en) 2014-03-17 2015-03-12 Systems and methods for low complexity forward transforms using zeroed-out coefficients

Publications (1)

Publication Number Publication Date
JP2017513342A true JP2017513342A (ja) 2017-05-25

Family

ID=54070452

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016557580A Ceased JP2017513342A (ja) 2014-03-17 2015-03-12 ゼロアウトされた係数を使用した低複雑な順変換のためのシステムおよび方法

Country Status (6)

Country Link
US (1) US9432696B2 (ja)
EP (1) EP3120547A2 (ja)
JP (1) JP2017513342A (ja)
KR (1) KR20160134702A (ja)
CN (1) CN106105206B (ja)
WO (1) WO2015183375A2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019188097A1 (ja) * 2018-03-28 2019-10-03 ソニー株式会社 画像処理装置及び画像処理方法
JP2019176421A (ja) * 2018-03-29 2019-10-10 Kddi株式会社 画像復号装置、画像符号化装置、画像処理システム、画像復号方法及びプログラム
WO2020184229A1 (ja) * 2019-03-11 2020-09-17 キヤノン株式会社 画像符号化装置、画像符号化方法、及びプログラム
WO2022158147A1 (ja) * 2021-01-25 2022-07-28 日本電気株式会社 映像符号化装置および映像符号化方法
JPWO2023058254A1 (ja) * 2021-10-06 2023-04-13

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9516345B2 (en) 2014-03-17 2016-12-06 Qualcomm Incorporated Systems and methods for low complexity forward transforms using mesh-based calculations
US10531123B2 (en) * 2015-03-06 2020-01-07 Korea Advanced Institute Of Science And Technology Image encoding and decoding method based on low-complexity transformation, and apparatus using same
US9998746B2 (en) 2016-02-10 2018-06-12 Amazon Technologies, Inc. Video decoder memory optimization
KR102728583B1 (ko) * 2016-04-29 2024-11-11 세종대학교산학협력단 영상 신호 부호화/복호화 방법 및 장치
WO2017188784A2 (ko) 2016-04-29 2017-11-02 세종대학교 산학협력단 영상 신호 부호화/복호화 방법 및 장치
CN109328461B (zh) 2016-04-29 2023-09-05 世宗大学校产学协力团 视频信号编码/解码方法和设备
AU2017264000A1 (en) * 2016-05-13 2018-11-22 Sony Corporation Image processing device and method
EP3270595A1 (en) * 2016-07-15 2018-01-17 Thomson Licensing Method and apparatus for last coefficient coding for adaptive transform based video compression
AU2016231584A1 (en) * 2016-09-22 2018-04-05 Canon Kabushiki Kaisha Method, apparatus and system for encoding and decoding video data
US10567800B2 (en) 2016-11-29 2020-02-18 Qualcomm Incorporated Transform hardware architecture for video coding
CN115834876B (zh) * 2017-12-21 2025-08-08 Lg电子株式会社 解码和编码设备、存储比特流的介质和数据发送设备
CN112166614B (zh) 2018-03-27 2023-07-14 株式会社Kt 用于处理视频信号的方法和设备
KR20240040133A (ko) * 2018-04-01 2024-03-27 엘지전자 주식회사 분할된 블록에 2차 변환을 적용하여 비디오 신호를 처리하는 방법 및 장치
US10542448B2 (en) * 2018-04-05 2020-01-21 Lg Electronics Inc. Method for measurement reporting and device supporting the same
HRP20230521T1 (hr) 2018-06-03 2023-08-04 Lg Electronics Inc. Postupak i uređaj za obradu video signala pomoću smanjene transformacije
CN118972569A (zh) * 2018-06-08 2024-11-15 株式会社Kt 对图像进行解码和编码的方法以及用于发送压缩视频数据的设备
KR102030384B1 (ko) 2018-06-19 2019-11-08 광운대학교 산학협력단 잔차 계수 부호화/복호화 방법 및 장치
CN119743599A (zh) 2018-06-11 2025-04-01 韩华视觉株式会社 用于对图像进行解码和编码的方法以及非暂态计算机可读介质
KR102390731B1 (ko) * 2018-06-19 2022-04-25 한화테크윈 주식회사 잔차 계수 부호화/복호화 방법 및 장치
CN119893093A (zh) * 2018-07-13 2025-04-25 韩国电子通信研究院 对图像进行编码/解码的方法以及记录介质
TWI738077B (zh) 2018-10-08 2021-09-01 新加坡商聯發科技(新加坡)私人有限公司 圖像以及視訊編解碼中最後有效係數的編解碼方法以及裝置
US11128866B2 (en) * 2018-10-18 2021-09-21 Qualcomm Incorporated Scans and last coefficient position coding for zero-out transforms
KR20210093336A (ko) * 2018-11-27 2021-07-27 오피 솔루션즈, 엘엘씨 픽처들에 대한 블록-기반 공간 활동 측정들
WO2020130514A1 (ko) * 2018-12-17 2020-06-25 엘지전자 주식회사 고주파 제로잉을 기반으로 변환 계수 스캔 순서를 결정하는 방법 및 장치
CA3274552A1 (en) * 2018-12-19 2025-10-31 Lg Electronics Inc. Video coding method on basis of secondary transform, and device for same
US11677955B2 (en) * 2019-01-15 2023-06-13 Lg Electronics Inc. Image decoding method for coding residual information on basis of high frequency zeroing in image coding system, and device therefor
CN109788289B (zh) 2019-02-26 2021-01-01 北京大学深圳研究生院 一种反量化方法、系统、设备及计算机可读介质
CN109831670B (zh) * 2019-02-26 2020-04-24 北京大学深圳研究生院 一种反量化方法、系统、设备及计算机可读介质
JP7267785B2 (ja) * 2019-03-11 2023-05-02 キヤノン株式会社 画像復号装置、画像復号方法、及びプログラム
JP2020150338A (ja) * 2019-03-11 2020-09-17 キヤノン株式会社 画像復号装置、画像復号方法、及びプログラム
HUE071617T2 (hu) 2019-03-12 2025-09-28 Lg Electronics Inc Transzformáció alapú képkódoló berendezés
CN113892269A (zh) * 2019-05-29 2022-01-04 韩国电子通信研究院 图像编码/解码方法和设备、以及存储有比特流的记录介质
CN114009023B (zh) * 2019-06-19 2023-09-15 Lg电子株式会社 基于变换的图像编码方法及其装置
WO2021034100A1 (ko) * 2019-08-19 2021-02-25 엘지전자 주식회사 영상 코딩 시스템에서 무손실 코딩을 적용하는 영상 디코딩 방법 및 그 장치
JP7444970B2 (ja) * 2019-08-20 2024-03-06 北京字節跳動網絡技術有限公司 デフォルトおよびユーザ定義のスケーリング行列の使用法
US11388439B2 (en) * 2019-10-21 2022-07-12 Google Llc Sparse matrix representation using a boundary of non-zero coefficients
MX2022006209A (es) 2019-11-21 2022-06-22 Beijing Dajia Internet Information Tech Co Ltd Metodos y aparatos sobre se?alizacion de transformadas y coeficientes.
CN115315944B (zh) * 2020-03-07 2025-06-13 抖音视界有限公司 视频编解码中的隐式多变换集信令通知
WO2022037700A1 (en) 2020-08-21 2022-02-24 Beijing Bytedance Network Technology Co., Ltd. Coding mode dependent selection of transform skip mode
CN116601953A (zh) 2020-11-24 2023-08-15 抖音视界有限公司 编解码视频中的位置相关系数重新排序
US12407832B2 (en) 2021-06-11 2025-09-02 Sony Group Corporation Information processing device and method
CN118077198A (zh) * 2021-09-29 2024-05-24 交互数字Ce专利控股有限公司 用于对视频进行编码/解码的方法和装置
CN114222132B (zh) * 2022-01-13 2024-05-14 北京达佳互联信息技术有限公司 视频解码反变换方法及装置
CN114827630B (zh) * 2022-03-11 2023-06-06 华南理工大学 基于频域分布学习cu深度划分方法、系统、装置及介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06209432A (ja) * 1992-10-07 1994-07-26 Daewoo Electron Co Ltd 多重映像表示機能を有する高品位tv受信機のための映像信号処理方法およびそのシステム
JP2003069996A (ja) * 2001-08-23 2003-03-07 Mitsubishi Electric Corp 画像情報量圧縮装置及び画像情報量圧縮方法
JP2008507161A (ja) * 2004-05-07 2008-03-06 ウィス・テクノロジーズ・インコーポレーテッド ビデオ処理用雑音フィルタ
JP2008154060A (ja) * 2006-12-19 2008-07-03 Toshiba Corp 動画像符号化装置
JP2013543317A (ja) * 2010-10-01 2013-11-28 クゥアルコム・インコーポレイテッド ジョイントコンテキストモデルを使用した係数のエントロピー符号化

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE9103380L (sv) 1991-11-15 1993-03-08 Televerket Foerfarande och apparat foer bildkodning med oeverhoppning av bilder och/eller komponenter
CA2156889C (en) 1994-09-30 1999-11-02 Edward L. Schwartz Method and apparatus for encoding and decoding data
US7062098B1 (en) 2000-05-12 2006-06-13 International Business Machines Corporation Method and apparatus for the scaling down of data
JP4230188B2 (ja) 2002-06-06 2009-02-25 パナソニック株式会社 可変長符号化方法および可変長復号化方法
US6795584B2 (en) 2002-10-03 2004-09-21 Nokia Corporation Context-based adaptive variable length coding for adaptive block transforms
US7379608B2 (en) 2003-12-04 2008-05-27 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung, E.V. Arithmetic coding for transforming video and picture data units
US20090028239A1 (en) 2005-05-03 2009-01-29 Bernhard Schuur Moving picture encoding method, moving picture decoding method and apparatuses using the methods
US8606023B2 (en) 2006-06-26 2013-12-10 Qualcomm Incorporated Reduction of errors during computation of inverse discrete cosine transform
US8571340B2 (en) 2006-06-26 2013-10-29 Qualcomm Incorporated Efficient fixed-point approximations of forward and inverse discrete cosine transforms
US20080031325A1 (en) 2006-08-03 2008-02-07 Yingyong Qi Mesh-based video compression with domain transformation
US8594176B2 (en) * 2007-03-06 2013-11-26 Microsoft Corporation Streaming media codec with transform coefficient bounding
US7535387B1 (en) 2007-09-10 2009-05-19 Xilinx, Inc. Methods and systems for implementing context adaptive binary arithmetic coding
WO2009045683A1 (en) * 2007-09-28 2009-04-09 Athanasios Leontaris Video compression and tranmission techniques
US8369422B2 (en) 2007-10-16 2013-02-05 Thomson Licensing Methods and apparatus for artifact removal for bit depth scalability
US8891615B2 (en) 2008-01-08 2014-11-18 Qualcomm Incorporated Quantization based on rate-distortion modeling for CABAC coders
KR101375668B1 (ko) 2008-03-17 2014-03-18 삼성전자주식회사 변환 계수의 부호화, 복호화 방법 및 장치
EP2257072A1 (en) 2009-05-27 2010-12-01 Nxp B.V. Image and video coding
TW201132129A (en) 2009-08-06 2011-09-16 Panasonic Corp Encoding method, decoding method, encoding device and decoding device
KR101457894B1 (ko) * 2009-10-28 2014-11-05 삼성전자주식회사 영상 부호화 방법 및 장치, 복호화 방법 및 장치
US9793921B2 (en) 2010-05-12 2017-10-17 Thomson Licensing Dtv Methods and apparatus for unified significance map coding
US9185422B2 (en) 2010-07-15 2015-11-10 Qualcomm Incorporated Variable localized bit-depth increase for fixed-point transforms in video coding
WO2012044075A2 (ko) 2010-09-28 2012-04-05 삼성전자 주식회사 영상의 변환 방법 및 장치, 역변환 방법 및 장치
US9378185B2 (en) 2010-09-30 2016-06-28 Texas Instruments Incorporated Transform and quantization architecture for video coding and decoding
US20130003856A1 (en) 2011-07-01 2013-01-03 Samsung Electronics Co. Ltd. Mode-dependent transforms for residual coding with low latency
US10642921B2 (en) 2011-11-03 2020-05-05 Texas Instruments Incorporated Unified forward and inverse transform architecture
TW201335769A (zh) 2011-11-07 2013-09-01 Vid Scale Inc 使用奇偶整數轉換影像處理
US9179162B2 (en) 2011-12-02 2015-11-03 Futurewei Technologies, Inc. Image transform zero coefficient selection and zero-skip transmission for arbitrary shape transform coding
CN103179426A (zh) * 2011-12-21 2013-06-26 联咏科技股份有限公司 自动检测图像格式的方法与应用其的播放方法
US9131210B2 (en) 2012-03-16 2015-09-08 Texas Instruments Incorporated Low-complexity two-dimensional (2D) separable transform design with transpose buffer management
US9516345B2 (en) 2014-03-17 2016-12-06 Qualcomm Incorporated Systems and methods for low complexity forward transforms using mesh-based calculations

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06209432A (ja) * 1992-10-07 1994-07-26 Daewoo Electron Co Ltd 多重映像表示機能を有する高品位tv受信機のための映像信号処理方法およびそのシステム
JP2003069996A (ja) * 2001-08-23 2003-03-07 Mitsubishi Electric Corp 画像情報量圧縮装置及び画像情報量圧縮方法
JP2008507161A (ja) * 2004-05-07 2008-03-06 ウィス・テクノロジーズ・インコーポレーテッド ビデオ処理用雑音フィルタ
JP2008154060A (ja) * 2006-12-19 2008-07-03 Toshiba Corp 動画像符号化装置
JP2013543317A (ja) * 2010-10-01 2013-11-28 クゥアルコム・インコーポレイテッド ジョイントコンテキストモデルを使用した係数のエントロピー符号化

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023133553A (ja) * 2018-03-28 2023-09-22 ソニーグループ株式会社 画像処理装置及び画像処理方法
JP7521662B2 (ja) 2018-03-28 2024-07-24 ソニーグループ株式会社 画像処理装置及び画像処理方法
JPWO2019188097A1 (ja) * 2018-03-28 2021-04-30 ソニー株式会社 画像処理装置及び画像処理方法
JP7334726B2 (ja) 2018-03-28 2023-08-29 ソニーグループ株式会社 画像処理装置及び画像処理方法
US12177439B2 (en) 2018-03-28 2024-12-24 Sony Group Corporation Image processing device and image processing method for efficiently generating or signaling quantizing matrices
WO2019188097A1 (ja) * 2018-03-28 2019-10-03 ソニー株式会社 画像処理装置及び画像処理方法
JP7109961B2 (ja) 2018-03-29 2022-08-01 Kddi株式会社 画像復号装置、画像符号化装置、画像処理システム、画像復号方法及びプログラム
JP2019176421A (ja) * 2018-03-29 2019-10-10 Kddi株式会社 画像復号装置、画像符号化装置、画像処理システム、画像復号方法及びプログラム
WO2020184229A1 (ja) * 2019-03-11 2020-09-17 キヤノン株式会社 画像符号化装置、画像符号化方法、及びプログラム
US11985352B2 (en) 2019-03-11 2024-05-14 Canon Kabushiki Kaisha Image coding apparatus, image coding method, and storage media
WO2022158147A1 (ja) * 2021-01-25 2022-07-28 日本電気株式会社 映像符号化装置および映像符号化方法
US12278954B2 (en) 2021-01-25 2025-04-15 Nec Corporation Video coding device and video coding method
WO2023058254A1 (ja) * 2021-10-06 2023-04-13 日本電気株式会社 映像符号化装置、方法およびプログラム
JPWO2023058254A1 (ja) * 2021-10-06 2023-04-13
JP7683719B2 (ja) 2021-10-06 2025-05-27 日本電気株式会社 映像符号化装置、方法およびプログラム

Also Published As

Publication number Publication date
CN106105206A (zh) 2016-11-09
US20150264403A1 (en) 2015-09-17
EP3120547A2 (en) 2017-01-25
CN106105206B (zh) 2019-06-04
US9432696B2 (en) 2016-08-30
WO2015183375A3 (en) 2016-01-21
KR20160134702A (ko) 2016-11-23
WO2015183375A2 (en) 2015-12-03

Similar Documents

Publication Publication Date Title
US9432696B2 (en) Systems and methods for low complexity forward transforms using zeroed-out coefficients
JP6284954B2 (ja) イントラ予測のためのモード決定の簡略化
JP6903644B2 (ja) ビデオコーディングのために位置依存の予測組合せを使用する改善されたビデオイントラ予測
JP6081499B2 (ja) 変換係数コーディングのためのコンテキスト導出における走査ベーススライディングウィンドウ
JP6151446B2 (ja) ビデオコーディングのための高精度明示的重み付け予測
JP6293756B2 (ja) スケーラブルビデオ符号化における変換基準の調整
JP6239609B2 (ja) ビデオコーディングのための長期参照ピクチャをシグナリングすること
TWI527440B (zh) 在視訊寫碼中針對高效率視訊寫碼(hevc)延伸之多層之低複雜度支援
JP6042526B2 (ja) ビデオコーディングのための最後の位置コーディングのためのコンテキストの導出
JP6352391B2 (ja) Shvcのための複数のベースレイヤ参照ピクチャ
JP2018125863A (ja) ビデオプロパティの指示
JP6193370B2 (ja) 適応差分領域空間および時間参照再構成およびスムージング
JP2018537908A (ja) ビデオデータの符号情報をコーディングすること
JP6199371B2 (ja) ビデオ・コーディングのためのインタ・レイヤ・テクスチャ予測
JP2016534644A (ja) イントラブロックコピーのための残差予測
JP2017519447A (ja) ビデオコーディングのためのイントラブロックコピーブロックベクトルシグナリング
JP2017523685A (ja) イントラブロックコピーイングのためのブロックベクトルコーディング
JP2016535490A (ja) 適応インター色成分残差予測
JP2015511472A (ja) ビデオコード化におけるコードブックを使用したループフィルタパラメータのコード化
JP2017513311A (ja) 残差差分パルス符号変調のための量子化プロセス
JP6224851B2 (ja) 低複雑度符号化および背景検出のためのシステムおよび方法
TW201921938A (zh) 具有在用於視訊寫碼之隨機存取組態中之未來參考訊框之可調適圖像群組結構
CN107113433A (zh) 基于动态模式决策分支化的低复杂性译码
JP2018536344A (ja) 並列算術コーディング技法
JP6466349B2 (ja) スケーラブルビデオコーディングのための空間動きベクトルスケーリング

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161116

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180215

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181226

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190108

A045 Written measure of dismissal of application [lapsed due to lack of payment]

Free format text: JAPANESE INTERMEDIATE CODE: A045

Effective date: 20190528