[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP7073536B2 - 復号化または符号化の方法、装置および媒体 - Google Patents

復号化または符号化の方法、装置および媒体 Download PDF

Info

Publication number
JP7073536B2
JP7073536B2 JP2020563843A JP2020563843A JP7073536B2 JP 7073536 B2 JP7073536 B2 JP 7073536B2 JP 2020563843 A JP2020563843 A JP 2020563843A JP 2020563843 A JP2020563843 A JP 2020563843A JP 7073536 B2 JP7073536 B2 JP 7073536B2
Authority
JP
Japan
Prior art keywords
transform
data block
target data
block
transformation
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.)
Active
Application number
JP2020563843A
Other languages
English (en)
Other versions
JP2021513302A (ja
Inventor
ツァオ,シン
リ,シアン
リィウ,シャン
Original Assignee
テンセント・アメリカ・エルエルシー
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 テンセント・アメリカ・エルエルシー filed Critical テンセント・アメリカ・エルエルシー
Publication of JP2021513302A publication Critical patent/JP2021513302A/ja
Application granted granted Critical
Publication of JP7073536B2 publication Critical patent/JP7073536B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/147Discrete orthonormal transforms, e.g. discrete cosine transform, discrete sine transform, and variations therefrom, e.g. modified discrete cosine transform, integer transforms approximating the discrete cosine transform
    • 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/156Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
    • 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/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
    • H04N19/625Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Mathematics (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

[関連出願への相互参照]
本願は、2018年2月5日に米国特許&商標庁に提出された米国仮出願第62/626,539号からの優先権および2018年12月28日に米国特許&商標庁に提出された米国仮出願第16/235,395号からの優先権を主張し、それらの開示の全体が参照により本明細書に組み込まれる。
[技術分野]
本開示は、ビデオ圧縮技術に関するものである。特に、本開示は、高効率ビデオ符号化(HEVC:High Efficiency Video Coding)に勝るビデオ符号化/復号化技術を含む次世代ビデオ符号化技術に関するものである。特に、本開示は、現在のHEVC規格(現在の拡張機能を含む)の圧縮能力を著しく超える圧縮能力を有する将来のビデオ符号化技術の規格化への潜在的なニーズに関するものである。非特許文献1で論じられているように、HEVCの能力を超えるビデオ符号化技術を探索するために、共同探索モデル(JEM:Joint Exploration Model)が開発された。JEMの比較的新しいバージョンは、JEM-7.0であり、JVET-G1001のアルゴリズム説明を有する。開示された主題は、JEM 7.0のコンテキストおよびJEM-7.0の変更において使用されてもよい。より具体的には、本開示の一態様は、例えば64ポイント、128ポイント、256ポイント、さらに256ポイント以上の変換などの大規模変換のための、低複雑度変換スキームに基づいて符号化または復号化するための方法、デバイス、およびコンピュータ媒体に関するものである。
関連技術の説明
動き補償を有するフレーム間画像予測を使用するビデオ符号化および復号化が何十年も知られている。圧縮されていないデジタルビデオは、一連の画像によって形成されることができ、各画像が、例えば1920×1080の輝度サンプルおよび関連された色度サンプルの空間的次元を有する。この一連の画像は、例えば1秒間に60枚の画像または60ヘルツ(Hz)の固定または可変の画像レート(非公式にはフレームレートとして知られている)を有することができる。圧縮されていないビデオには、非常に高いビットレート要件がある。例えば、サンプル毎の8ビットの1080p60 4:2:0のビデオ(60Hzのフレームレートでの1920x1080の輝度サンプル解像度)は、1.5Gbit/sの帯域幅に近い必要がある。このようなビデオは、一時間で600GB以上の記憶空間を必要とする。
ビデオ符号化および復号化の1つの目的は、入力ビデオ信号における冗長情報を圧縮により低減することである。圧縮は、上記の帯域幅または記憶空間に対する要件を低減することを助けることができ、いくつかの場合では、二桁以上程度を低減することができる。無損失性および損失性の圧縮、ならびに両方の組み合わせは、いずれも使用されることができる。無損失性の圧縮とは、元の信号の正確なコピーを圧縮された元の信号から再構築することができる、という技術を指す。損失性の圧縮が使用される場合、再構築された信号は、元の信号と同一ではない可能性があるが、元の信号と再構築された信号との間の歪みが十分に小さいので、再構築された信号が予想されるアプリケーションに利用されることができる。ビデオの場合、損失性の圧縮は広く使われている。許容される歪みの量は、アプリケーションに依存し、例えば、あるストリーミングアプリケーションを消費するユーザは、テレビジョン配信アプリケーションのユーザより、高い歪みを許容することができる。実現可能な圧縮比は、より高い許可/許容可能な歪みがより高い圧縮比を生成することができる、ということを反映している。
当業者は、通常、ビデオ圧縮/解凍技術を理解する。一般的に、ビデオまたは画像データを圧縮するために、一連の機能ステップを実行することで、圧縮されたビデオまたは画像ファイルを生成する。(例えば、360°カメラによって捕捉された)360°画像などのような画像は、圧縮に適しているかもしれないが、読みやすいために、ビデオファイルの圧縮について説明する。圧縮されたビデオファイルを生成するために、従来の規格(例えば、H.264、 H.265)で、ビデオソースから受信された、圧縮されていないビデオサンプルストリームを分割または解析して、2つ以上の参照画像のサンプルブロックを生成することができる。
BI(双方向)予測は、予測されるサンプルブロックのような予測ユニット(PU:prediction unit)を、2つ以上の参照画像の2つの動き補償されたサンプルブロックから予測することができる、という技術に関することができる。BI予測は、まず、動的画像専門家グループ-1(MPEG-1:Moving Picture Experts Group-1)のビデオ符号化規格に導入され、また、MPEG-2の部分2(またはH.262)およびH.264とH.265などのような他のビデオ符号化技術と規格にも含まれている。
圧縮されたビデオファイルを解凍する場合、BI予測されたPUのサンプルの再構築の期間に、各参照ブロックからの、運動補償されて補間された入力サンプルを、各参照ブロックのために異なることができる重み付け因子で乗算することができ、そして、2つの参照ブロックのこのような重み付けされたサンプル値を追加することで、再構築中のサンプルを生成することができる。このようなサンプルを、ループフィルタリングのようなメカニズムによってさらに処理することができる。
MPEG-1とMPEG-2では、再構築中のPUが属する画像と、2つの参照画像との間の相対的な時間的距離に基づいて、重み付け因子を決定することができる。これは可能であり、MPEG-1とMPEG-2では、2つの参照するIまたはP画像のうちの1つが「過去」にあり、もう1つが、再構築中のB画像の「将来」(呈示順序の観点から)にあるためであり、また、MPEG-1とMPEG-2では、その参照画像に関連して、再構築中の、いかなる画像に対して確立された、明確に定義されたタイミング関係が存在しているためである。
H.264から始めて、BI予測された画像の参照画像の選択概念が緩和され、これによって、参照画像は、呈示順序ではなく、復号化順序においてより早く出現する必要があるだけになる。さらに、H.264もH.265も、時間領域での制約/固定された画像間隔を必要としないという点で、時間の概念も緩和された。したがって、デコーダは、ビットストリームで利用可能なタイミング情報に基づいて、重み付け因子を再計算することができない。その代わりに、H.264とH.265は、BI予測された画像の参照サンプルの重み付け因子とする、デフォルト値である0.5を含む。このデフォルト値は、pred_weight_table()として知られているスライスヘッダーで使用可能な構文によって書き換えられる。デフォルト値である0.5、または、pred_weight_tableにおける情報は、与えられたスライスにおけるすべてのBI予測されたPUに適用することができる。
大規模変換(32ポイント以上の変換)が付加的な符号化利得をもたらすという実験的証拠がある。しかしながら、大規模変換をビデオコーデックに導入することは、計算のコストおよび複雑度(例えば、付加的な乗算の数および付加的な乗算器)を増加することがある。さらに、大規模変換をビデオコーデックに導入することは、付加的なメモリ負担を増加し、この付加的なメモリ負担には、1)最大の変換サイズが水平かつ垂直に2倍(2x)で増加した場合、パイプラインのバッファサイズが4倍(4x)で増加することと、2)大規模変換が、変換カーネルを記憶するために付加的なメモリを必要とすることと、が含まれている。
DCT-2、DCT-3、DST-2、DST-3を含むDCT-2ファミリーにおける変換に対して調整段階を適用することによって、JEM 7における異なるタイプの離散コサイン変換(DCT:Discete Cosine Transform)と離散サイン変換(DST:Discrete Sine Transform)を近似する方法が提案され、また、前記の調整段階とは、比較的少ない動作カウントを必要とする疎行列を使用している行列乗算を指す。非特許文献1では、2N+1ポイントの離散フーリエ変換(DFT:Discete Fourier Transform)を使用して、NポイントのDST-7を実現する方法が提案された。
しかしながら、適応型マルチコア変換(AMT:Adaptive Multiple core Transform)における付加的な変換タイプは、複雑度と実施コストを増加することがある。これは、実際に実行するために、付加的な変換コアをオンチップメモリに記憶する必要があり、また、変換タイプを1つのブロックから他のブロックへ切り替える際に、変換コアをロードする必要がある、からである。HEVCでは、より小規模なDCT-2変換がより大規模なDCT-2変換の一部となっており、そのことが、異なるサイズの変換を実行するために同じロジックを再利用するのをサポートする。しかしながら、AMTを利用すると、このような特徴はなくなっている。DCT-2以外で、より大規模な変換のためにより小規模な変換を再利用することはできず、これは、異なるサイズの変換を実行するために異なるロジックを設計する必要があることがある、ということを意味する。
関連技術リスト
非特許文献1とは、ITU-T SG16 WP3とISO/IEC JTC1/SC29/WG11の共同ビデオ探索チームが、2017年7月13日~21日に、イタリア・トリノで開催された第7回の会議で、JVET-G100を提案し、作者が「J.Chen、E.Alshina、G.J.Sullivan、J.-R.OhmとJ.Boyce」であり、名称が「Algorithm Description of Joint Exploration Test Model 7 (JEM 7)、共同探索テストモデル7(JEM 7)のアルゴリズム記述」である。
本開示の一態様によれば、符号化または復号化の方法は、符号化または復号化されるターゲットデータブロックである音声、ビデオまたは画像のデータブロックに関する情報を受信することを、含むことができる。符号化または復号化の方法は、ターゲットデータブロックのデータブロックサイズの幅または高さのうちの少なくとも1つが所定の閾値以上であるかどうかを決定することを、さらに含むことができる。符号化または復号化の方法は、ターゲットデータブロックのデータブロックサイズの幅または高さのうちの少なくとも1つが所定の閾値以上である場合、ターゲットデータブロックの符号化または復号化を実行するが、ターゲットデータブロックのデータブロックサイズの幅または高さのうちの少なくとも1つに対応するサイズを有する大規模変換を適用する代わりに、ターゲットデータブロックの第1部分に第1変換を適用することを、さらに含むことができる。
符号化または復号化の方法は、ターゲットデータブロックの第2部分に第1変換または第2変換を適用することを、さらに含むことができる。符号化または復号化の方法は、第1変換と第2変換のうちの少なくとも1つが所定の閾値より小さいサイズを有する低複雑度変換であることを、さらに含むことができる。
本開示の一態様によれば、装置は、コンピュータプログラムコードを記憶するように構成される少なくとも1つのメモリと、前記少なくとも1つのメモリにアクセスして、前記コンピュータプログラムコードに従って動作するように構成される少なくとも1つのプロセッサとを含むことができる。前記コンピュータプログラムコードは、複数の適用コード(例えば、第1適用コード、第2適用コード、第3適用コード、および第4適用コードなど)を含むことができる。
第1適用コードは、少なくとも1つのプロセッサに、符号化または復号化されるターゲットデータブロックである音声、ビデオまたは画像のデータブロックに関する情報を受信させるように構成されることができる。第2適用コードは、少なくとも1つのプロセッサに、ターゲットデータブロックのデータブロックサイズの幅または高さのうちの少なくとも1つが所定の閾値以上であるかどうかを決定させるように構成されることができる。
第3適用コードは、少なくとも1つのプロセッサに、ターゲットデータブロックのデータブロックサイズの幅または高さのうちの少なくとも1つが所定の閾値以上である場合、ターゲットデータブロックの符号化または復号化動作を実行させるが、ターゲットデータブロックのデータブロックサイズの幅または高さのうちの少なくとも1つに対応するサイズを有する大規模変換を適用させる代わりに、ターゲットデータブロックの第1部分に第1変換を適用させ、ターゲットデータブロックの第2部分に第1変換または第2変換を適用させるように構成されることができる。装置は、第1変換と第2変換のうちの少なくとも1つが所定の閾値より小さいサイズを有する低複雑度変換であること、をさらに含むことができる。
本開示の一態様によれば、非一時的なコンピュータ読み取り可能な記憶媒体は、1つ以上のプロセッサに多くのステップを実行させる命令を記憶することができる。前記多くのステップは、符号化または復号化されるターゲットデータブロックである音声、ビデオまたは画像のデータブロックに関する情報を受信するステップを、含むことができる。前記多くのステップは、ターゲットデータブロックのデータブロックサイズの幅または高さのうちの少なくとも1つが所定の閾値以上であるかどうかを決定するステップを、さらに含むことができる。
前記多くのステップは、ターゲットデータブロックのデータブロックサイズの幅または高さのうちの少なくとも1つが所定の閾値以上である場合、ターゲットデータブロックの符号化または復号化を実行するが、ターゲットデータブロックのデータブロックサイズの幅または高さのうちの少なくとも1つに対応するサイズを有する大規模変換を適用する代わりに、ターゲットデータブロックの第1部分に第1変換をタ適用し、ターゲットデータブロックの第2部分に第1変換または第2変換を適用するステップを、さらに含むことができる。前記多くのステップは、第1変換と第2変換のうちの少なくとも1つが所定の閾値より小さいサイズを有する低複雑度変換であることを、さらに含むことができる。
開示された主題の更なる特徴、性質、および様々な利点は、以下の詳細な説明および添付図面からより明らかになり、ここで、
一実施形態による通信システムの簡略化されたブロック図の概略図である。
一実施形態によるストリーミングシステムの簡略化されたブロック図の概略図である。
一実施形態によるデコーダの簡略化されたブロック図の概略図である。
一実施形態によるエンコーダの簡略化されたブロック図の概略図である。
一実施形態による符号化または復号化の例示的方法の概略図である。
四分木プラス二分木(QTBT:QudTree plus Binary Tree)を使用してブロック分割を行う例を示す図である。
図6Aのブロック分割に対応するツリーを示す図である。
一実施形態によるコンピュータシステムの概略図である。
図1は、本開示の実施形態による通信システム(100)の簡略化されたブロック図を示す。通信システム(100)は、ネットワーク(150)を介して相互接続された、少なくとも2つの端末(110、120)を含むことができる。データの単方向伝送について、第1端末(110)は、ネットワーク(150)を介して他の端末(120)に送信するために、ローカル位置でビデオデータを符号化することができる。第2端末(120)は、ネットワーク(150)から他の端末の符号化されたビデオデータを受信し、符号化されたデータを復号化して、復元されたビデオデータを表示することができる。単方向データ伝送は、メディアサービングアプリケーションでは一般的である。
図1は、例えば、ビデオ会議中に発生する可能性がある、符号化されたビデオの双方向伝送をサポートする第2ペアの端末(130、140)を示す。データの双方向伝送の場合、各端末(130、140)は、)は、ネットワーク(150)を介して他の端末に送信するために、ローカルで捕捉されたビデオデータを符号化することができる。各端末(130、140)は、他の端末によって送信された、符号化されたビデオデータを受信することもでき、符号化されたデータを復号化することができ、また復元されたビデオデータをローカルの表示デバイスに表示することもできる。
図1において、端末(110~140)は、ラップトップ110、サーバ120、およびスマートフォン130と140として示されてもよいが、本開示の原理は、これに限定されていない。本開示の実施形態は、ラップトップコンピュータ、タブレットコンピュータ、メディアプレーヤおよび/または専用のビデオ会議機器を含むが、これらに限定されていない他の機器を有するアプリケーションを見つける。ネットワーク(150)は、符号化されたビデオデータを端末(110~140)で送信する任意の数のネットワークを表し、例えば、有線および/または無線の通信ネットワークを含む。通信ネットワーク(150)は、回線交換および/またはパケット交換のチャネルでデータを交換することができる。代表的なネットワークは、電気通信ネットワーク、ローカルエリアネットワーク、ワイドエリアネットワークおよび/またはインターネットを含む。本議論の目的のために、ネットワーク(150)のアーキテクチャおよびトポロジは、以下に本明細書で説明されない限り、本開示の動作にとって重要ではない場合がある。
図2は、開示された主題に対するアプリケーションの例として、ストリーミング環境におけるビデオエンコーダおよびデコーダの配置を示す。開示された主題は、例えば、光ディスク(CD:Compect Disc)、高密度デジタルビデオディスク(DVD:Digital Video Disc)、メモリスティックなどを含むデジタルメディアへの圧縮されたビデオの記憶、ビデオ会議、デジタルTVなどを含む、他のビデオサポートアプリケーションにも同等に適用可能である。
ストリーミングシステムは、捕捉サブシステム(213)を含むことができ、この捕捉サブシステムが、例えばデジタルカメラなどのビデオソース(201)を含むことができ、圧縮されていないビデオサンプルストリーム(202)を作成することができる。符号化されたビデオビットストリームと比較する際に、高いデータボリュームを強調するために太い線で描かれたサンプルストリーム(202)は、カメラ(201)に結合されたエンコーダ(203)によって処理されることができる。エンコーダ(203)は、以下で詳細に説明するように、開示された主題の様々な態様を可能にするかまたは実現するために、ハードウェア(例えば、プロセッサ、または回路とメモリ)、ソフトウェア、またはそれらの組み合わせを含むことができる。サンプルストリームと比較する際により低いデータボリュームを強調するために細い線で描かれた、符号化されたビデオビットストリーム(204)は、将来の使用のためにストリーミングサーバ(205)に記憶されることができる。1つ以上のストリーミングクライアント(206、208)は、ストリーミングサーバ(205)にアクセスして、符号化されたビデオビットストリーム(204)のコピー(207、209)を検索することができる。クライアント(206)は、ビデオデコーダ(210)を含むことができ、このビデオデコーダ(210)は、伝入される、符号化されたビデオビットストリーム(207)のコピーを復号化して、伝出される、ビデオサンプルストリーム(211)を作成することができ、このビデオサンプルストリーム(211)が、ディスプレイ(212)または他のレンダリングデバイス(図示せず)に表示されることができる。
図3は、本開示の実施形態によるビデオデコーダ(210)の機能ブロック図を示す。図3に示すように、受信機(310)は、ビデオデコーダ(210)によって復号化される1つ以上の符号化されたビデオシーケンスを受信することができ、同じまたは別の実施形態では、一度に1つの符号化されたビデオシーケンスを受信することができ、ここで、各符号化されたビデオシーケンスの復号化が、他の符号化されたビデオシーケンスから独立している。符号化されたビデオシーケンスは、チャネル(312)から受信されることができ、このチャネルが、符号化されたビデオデータを記憶する記憶デバイスへのハードウェア/ソフトウェアのリンクであってもよい。受信機(310)は、それぞれの使用エンティティ(図示せず)に転送されることができる、例えば符号化されたオーディオデータおよび/または補助のデータストリームなどの他のデータとともに、符号化されたビデオデータを受信することができる。受信機(310)は、符号化されたビデオシーケンスを他のデータから分離することができる。ネットワークジッタを防止するために、バッファメモリ(315)は、受信機(310)とエントロピーデコーダ/解析器(Parser)(320)(以後の「解析器」)との間に結合されることができる。受信機(310)が十分な帯域幅および制御可能性を有するストア/フォワードデバイスからまたは等時性同期ネットワークからデータを受信する場合、バッファメモリ(315)は、必要ではないかまたは小さくでもよい。インターネットなどのベストエフォートパケットネットワークで使用するために、バッファメモリ(315)は、必要になる場合があり、比較的大きくすることができ、有利には適応性のサイズにすることができる。
ビデオデコーダ(310)は、エントロピー符号化されたビデオシーケンスからシンボル(321)を再構築するための解析器(320)を含むことができる。これらのシンボルのカテゴリには、ビデオデコーダ(210)の動作を管理するために使用される情報と、デコーダの不可欠な部分ではないが、図2および図3に示すように、そのデコーダに結合されることができるディスプレイ(212)などのレンダリングデバイスを制御するための潜在的な情報とが含まれる。レンダリングデバイスの制御情報は、補助拡張情報(SEI:Supplemental Enhancement Information)メッセージまたはビデオユーザビリティ情報(VUI:Video Usability Information)パラメータセットフラグメント(図示せず)の形であってもよい。解析器(320)は、受信された、符号化されたビデオシーケンスに対して解析/エントロピー復号化を行うことができる。符号化されたビデオシーケンスの符号化は、ビデオ符号化技術または規格に従うことができて、当業者に知られている原理に従うことができ、可変長符号化、ハフマン符号化(Huffman coding)、コンテキスト感度を有するかまたは有しないかの算術符号化などを含む。解析器(320)は、グループに対応する少なくとも1つのパラメータに基づいて、符号化されたビデオシーケンスから、ビデオデコーダにおける画素のサブグループのうちの少なくとも1つのためのサブグループパラメータのセットを、抽出することができる。サブグループは、画像のグループ(GOP:Group of Pictures)、画像、タイル、スライス、マクロブロック、符号化ユニット(CU:Coding Unit)、ブロック、変換ユニット(TU:Trans form Unit)、予測ユニット(PU:Prection Unit)などを含むことができる。エントロピーデコーダ/解析器は、変換係数、量子化器パラメータ値、動きベクトルなどの情報を符号化されたビデオシーケンスから抽出することもできる。
解析器(320)は、シンボル(321)を作成するために、バッファメモリ(315)から受信されたビデオシーケンスに対してエントロピー復号化/解析動作を実行することができる。シンボル(321)の再構築は、符号化されたビデオ画像またはその一部(例えば、レーム間画像およびフレーム内画像、フレーム間ブロックおよびフレーム内ブロック)のタイプ、および他の要因に応じて、複数の異なるユニットに関連することができる。どのようなユニットに関連するか、およびどのように関連するかは、解析器(320)によって、符号化されたビデオシーケンスから解析されたサブグループ制御情報によって制御されることができる。解析器(320)と以下の複数のユニットの間との間のそのようなサブグループ制御情報のフローは明確にするために説明されていない。
既に言及された機能ブロックに加えて、ビデオデコーダ210は、以下に説明するように、いくつかの機能ユニットに概念的に細分化されることができる。商業的制約で動作する実際の実施形態では、これらのユニットの多くは、互いに密接に相互作用し、少なくとも部分的には互いに統合されることができる。しかしながら、開示された主題を説明する目的のために、以下の機能ユニットへの概念的な細分が適切である。
第1ユニットは、スケーラ/逆変換ユニット(351)であってもよい。スケーラ/逆変換ユニット(351)は、量子化された変換係数と、どのような変換を使用するか、データブロックサイズ、量子化因子、量子化スケーリング行列などを含む制御情報とを、シンボル(321)として解析器(320)から受信することができる。スケーラ/逆変換ユニット(351)は、アグリゲータ(355)に入力できるサンプル値を含むブロックを出力することができる。
いくつかの場合では、スケーラ/逆変換ユニット(351)の出力サンプルは、フレーム内符号化ブロックに属することができ、即ち、このフレーム内符号化ブロックは、以前に再構築された画像からの予測情報を使用していないが、現在の画像の以前に再構築された部分からの予測情報を使用できるブロックである。このような予測情報は、フレーム内画像予測ユニット(352)によって提供されてもよい。いくつかの場合では、フレーム内画像予測ユニット(352)は、現在の(部分的に再構築された)画像(356)から抽出された、周囲の既に再構築された情報を使用して、再構築中のブロックと同じサイズおよび形状のブロックを生成する。アグリゲータ(355)は、いくつかの場合では、サンプルごとに基づいて、フレーム内予測ユニット(352)によって生成された予測情報を、スケーラ/逆変換ユニット(351)によって提供される出力サンプル情報に追加する。
他の場合では、スケーラ/逆変換ユニット(351)の出力サンプルは、フレーム間符号化されたブロックおよび潜在的に動き補償されたブロックに属することができる。このような場合、動き補償予測ユニット(353)は、参照画像メモリ(357)にアクセスして、予測に用いられるサンプルを抽出することができる。抽出されたサンプルが、ブロックに関連するシンボル(321)に従って動き補償された後、これらのサンプルは、出力サンプル情報を生成するために、アグリゲータ(355)によってスケーラ/逆変換ユニットの出力(この場合、残差サンプルまたは残差信号と呼ばれる)に追加されることができる。動き補償ユニットが予測サンプルを抽出するときの参照画像メモリ内のアドレスは、例えば、X、Yおよび参照画像成分を有することができるシンボル(321)の形で、動き補償ユニットに利用可能な動きベクトルによって制御されることができる。動き補償は、サブサンプルの正確な運動ベクトルが使用中であるときに、参照画像メモリから抽出されたサンプル値の補間、運動ベクトル予測メカニズムなどを含むこともできる。
アグリゲータ(355)の出力サンプルは、ループフィルタユニット(356)において様々なループフィルタリング技術によって採用されてもよい。ビデオ圧縮技術は、符号化されたビデオビットストリームに含まれ、解析器(320)からのシンボル(321)としてループフィルタユニット(356)に利用可能になるパラメータによって制御されるループ内フィルタ技術を含みことができ、また、符号化された画像または符号化されたビデオシーケンスの前の部分(復号化順序で)を復号化する期間で得られたメタ情報に応答し、および、以前に再構築されてループフィルタされたサンプル値に応答することもできる。
ループフィルタユニット(356)の出力は、レンダリングデバイス(212)に出力することができ、および、将来のフレーム間画像予測で使用するために参照画像メモリ(357)に記憶することができるサンプルストリームとすることができる。
特定の符号化された画像は、一旦完全に再構築されると、将来の予測のための参考画像として使用されることができる。例えば、符号化された画像が一旦完全に再構築され、かつ、符号化された画像が(例えば、解析器(320)によって)参照画像として識別されると、現在の参照画像(356)は、参照画像バッファ(357)の一部となることができ、また、後続の符号化された画像の再構築を開始する前に、新しい現在の画像メモリを再割り当てすることができる。
ビデオデコーダ320は、例えばITU-T REC. H.265などの規格における所定のビデオ圧縮技術に従って復号化動作を実行することができる。符号化されたビデオシーケンスは、ビデオ圧縮技術ドキュメントまたは規格において、特に、それらのプロファイルドキュメントにおいて指定されたビデオ圧縮技術または規格の構文に従うという意味で、使用されているビデオ圧縮技術または規格によって指定された構文に従うことができる。符号化されたビデオシーケンスの複雑さが、ビデオ圧縮技術または規格の階層によって定義された範囲内にあることもコンプライアンスに必要である。いくつかの場合では、階層は、最大画像サイズ、最大フレームレート、(例えば、毎秒メガ(mega)個のサンプルを単位として測定された)最大再構築サンプルレート、および/または最大参照画像サイズを制限する。階層によって設定された制限は、いくつかの場合では、仮想参照デコーダ(HRD:Hypthetical Reference Decoder)仕様と、符号化されたビデオシーケンスにおいて信号で通知されたHRDバッファ管理のメタデータとによって、さらに限定されることができる。
一実施形態では、受信機(310)は、符号化されたビデオとともに付加(冗長)的なデータを受信することができる。付加的なデータは、符号化されたビデオシーケンスの一部として含まれることができる。付加的なデータは、データを適切に復号化し、および/または、元のビデオデータをより正確に再構築するために、ビデオデコーダ(320)によって使用されることができる。付加的なデータは、例えば、時間的、空間的、または信号雑音比(SNR:signal noise ratio)拡張層、冗長スライス、冗長画像、前方誤り訂正符号などの形式にすることができる。
図4は、本開示の一実施形態によるビデオエンコーダ(203)の機能ブロック図である。
エンコーダ(203)は、エンコーダ(203)によって符号化されるビデオ画像を捕捉することができるビデオソース(201)(それはエンコーダの一部ではない)から、ビデオサンプルを受信することができる。
ビデオソース(201)は、エンコーダ(203)によって符号化されるソースビデオシーケンスをデジタルビデオサンプルストリームの形で提供することができ、前記タルビデオサンプルストリームは、任意の適切なビット深度(例えば、8ビット、10ビット、12ビット、…)、任意の色空間(例えば、BT.601 Y CrCB、RGB…)、および任意の適切なサンプリング構造(例えば、Y CrCb 4:2:0、Y CrCb 4:4:4)を有することができる。メディアサービスシステムでは、ビデオソース(201)は、以前に準備されたビデオを記憶する記憶デバイスであってもよく、この記憶デバイスは、メモリとプロセッサとを含むことができる。ビデオ会議システムでは、ビデオソース(201)は、ローカル画像情報をビデオシーケンスとして捕捉するカメラを含むことができる。ビデオデータは、順番に見られるときに動きを与える複数の個別の画像として提供されることができる。画像自体は、空間画素アレイとして構成されてもよく、ここで、各画素は、使用中のサンプリング構造、色空間などに応じて、1つ以上のサンプルを含むことができる。当業者は、画素とサンプルとの間の関係を容易に理解することができる。以下の説明は、サンプルに焦点を当てる。
一実施形態によれば、エンコーダ(203)は、リアルタイムで、またはアプリケーションによって要求される任意の他の時間制約の下で、ソースビデオシーケンスの画像を符号化して圧縮し、符号化されたビデオシーケンス(443)にすることができる。適切な符号化速度を実施することは、コントローラ(450)の1つの機能である。コントローラは、以下で説明するように他の機能ユニットを制御し、これらのユニットに機能的に結合される。結合は、明瞭にするために図示されていない。コントローラによって設定されたパラメータは、レート制御関連パラメータ(例えば、画像スキップ、量子化器、レート歪み最適化技術のλ(ラムダ)値)、画像サイズ、画像グループ(GOP:group of pictures)レイアウト、最大動きベクトル探索範囲などを含むことができる。当業者は、コントローラ(450)の他の機能を容易に識別することができ、これらの機能が、特定のシステム設計のために最適化されたビデオエンコーダ(203)に関係するからである。
いくつかのビデオエンコーダは、当業者が容易に認識する符号化ループで動作する。過度に簡単化された説明として、符号化ループは、エンコーダ(430)(以下、「ソースコーダ」)の符号化部分と、エンコーダ(203)に埋め込まれた(ローカル)デコーダ(433)とによって構成されることができ、前記エンコーダ(430)は、符号化される入力画像と、参照画像とに基づいてシンボルを作成することを担当し、前記デコーダ(433)は、(リモート)デコーダによってサンプルデータを作成するようにシンボルを再構築してサンプルデータを作成する(開示された主題で考慮されているビデオ圧縮技術では、シンボルと符号化されたビデオビットストリームとの間の任意の圧縮が無損失であるため)。再構築されたサンプルストリームは、参照画像メモリ(434)に入力される。シンボルストリームの復号化により、デコーダの場所(ローカルまたはリモート)に関係なくビット正確な結果が得られるため、参照画像バッファのコンテンツは、ローカルエンコーダとリモートエンコーダとの間でもビットで正確に対応する。言い換えれば、エンコーダの予測部分が「見た」参照画像サンプルは、デコーダが復号化期間に予測を使用する際に「見た」サンプル値と全く同じである。この参照画像の同期性の基本原理(および、例えばチャネル誤差の原因で同期性を維持できない場合に生じるドリフト)は、当業者によく知られている。
「ローカル」デコーダ(433)の動作は、既に図3に関連して以上で詳細に説明された、「リモート」デコーダ(210)の動作と同じであってもよい。しかし、図3をさらに簡単に参照すると、シンボルが利用可能であり、かつ、エントロピーコーダ(445)および解析器(320)によって符号化されたビデオシーケンスへのシンボルの符号化/復号化が無損失であることができるため、(チャネル(312)、受信機(310)、バッファ(315)および解析器(320)を含む)デコーダ(210)のエントロピー復号化部分は、ローカルデコーダ(433)で完全に実行されていない可能性がある。
この時点で、デコーダに存在する解析/エントロピー復号化以外のいかなるデコーダ技術も、対応するエンコーダにおいて、実質的に同一の機能形式で必ず存在する必要がある、ということが観察されている。エンコーダ技術の説明は、説明されたデコーダ技術の逆である。特定の領域だけで、より詳細な説明が必要であり、以下で提供される。
その動作の一部として、ソースコーダ(430)は、動き補償予測符号化を実行することができ、前記動き補償予測符号化は、ビデオシーケンスから「参照フレーム」として指定された1つ以上の以前に符号化されたフレームを参照して、入力フレームを予測的に符号化する。このようにして、符号化エンジン(432)は、入力フレームの画素ブロックと、入力フレームに対する予測参照として選択されることができる参照フレームの画素ブロックとの間の差分を符号化する。
ローカルビデオデコーダ(433)は、ソースコーダ(430)によって作成されたシンボルに基づいて、参照フレームとして指定されることができるフレームの符号化されたビデオデータを復号化することができる。符号化エンジン(432)の動作は、有利には損失性のプロセスであってもよい。符号化されたビデオデータがビデオデコーダ(図4に示されない)で復号化されることができる場合、再構築されたビデオシーケンスは、通常、いくつかの誤差を伴うソースビデオシーケンスのレプリカであってもよい。ローカルビデオデコーダ(433)は、参照フレームに対してビデオデコーダによって実行されることができる復号化プロセスを複製して、再構築された参照フレームを参照画像キャッシュ(434)に記憶させることができる。このようにして、エンコーダ(203)は、遠端ビデオデコーダによって得られる(伝送誤差が存在しない)再構築された参照フレームと共通のコンテンツを有する再構築された参照フレームのコピーを、ローカルに記憶することができる。
予測器(435)は、符号化エンジン(432)に対して予測検索を実行することができる。すなわち、符号化される新しいフレームについて、予測器(435)は、新しい画像の適切な予測参照として機能するサンプルデータ(候補参照画素ブロックとして)または特定のメタデータ、例えば参照画像動きベクトル、ブロック形状などについて、参照画像メモリ(434)を検索することができる。予測器(435)は、適切な予測参照を見つけるために、サンプルブロックに基づいて、画素ブロックごとに動作することができる。いくつかの場合では、予測器(435)によって得られた検索結果によって決定されるように、入力画像は、参照画像メモリ(434)に記憶された複数の参照画像から引き出された予測参照を有することができる。
コントローラ(450)は、例えば、ビデオデータを符号化するために使用されるパラメータおよびサブグループパラメータの設定を含む、ビデオコーダ(430)の符号化動作を管理することができる。
上述のすべての機能ユニットの出力は、エントロピーコーダ(445)においてエントロピー符号化されることができる。エントロピーコーダは、ハフマン符号化、可変長符号化、算術符号化などのような、当業者に知られている技術に従って、シンボルを無損失で圧縮することにより、様々な機能ユニットによって生成されたシンボルを符号化されたビデオシーケンスに変換することができる。
送信機(440)は、符号化されたビデオデータを記憶する記憶デバイスへのハードウェア/ソフトウェアリンクであることができる通信チャネル(460)を介した送信に備えるために、エントロピーコーダ(445)によって作成された、符号化されたビデオシーケンスをバッファリングすることができる。送信機(440)は、ビデオコーダ(430)からの符号化されたビデオデータを、送信される他のデータ、例えば、符号化されたオーディオデータおよび/または補助データストリーム(ソースは図示せず)とマージすることができる。
コントローラ(450)は、ビデオエンコーダ(203)の動作を管理することができる。符号化する期間、コントローラ(450)は、各符号化された画像に、特定の符号化された画像タイプを割り当てることができ、これは、それぞれの画像に適用できる符号化技術に影響を与える可能性がある。例えば、画像は、たとえばフレーム内画像(I画像)、予測画像(P画像)、双方向予測画像(B画像)の中から、以下のフレームタイプのいずれかとして割り当てられることが多い。
フレーム内画像(I画像)は、シーケンス内の任意の他のフレームを予測ソースとして使用せずに、符号化および復号化されることができるものであってもよい。いくつかのビデオコーデックは、例えば、独立デコーダリフレッシュ(IDR:Independent Decoder Refresh)画像などの異なるタイプのフレーム内画像を許容する。当業者は、I画像の変種およびそれらのそれぞれのアプリケーションおよび特徴を理解している。
予測画像(P画像)は、多くとも1つの動きベクトルおよび参照インデックスを使用して各データブロックのサンプル値を予測するフレーム内予測またはフレーム間予測を、使用して符号化および復号化され得るものであってもよい。
双方向予測画像(B画像)は、多くとも2つの動きベクトルおよび参照インデックスを使用して各データブロックのサンプル値を予測するフレーム内予測またはフレーム間予測を使用して、符号化および復号化され得るものであってもよい。同様に、複数の予測画像は、単一のブロックの再構築に2つ以上の参照画像および関連されたメタデータを使用することができる。
ソース画像は、一般的に、複数のサンプルデータブロック(例えば、それぞれ4x4、8x8、4x8、または16x16個のサンプルのブロック)に空間的に細分化され、ブロックごとに符号化されることができる。これらのデータブロックは、データブロックのそれぞれの画像に適用される符号化割り当てによって決定されるように、他の(既に符号化された)データブロックを参照して予測的に符号化されることができる。例えば、I画像のブロックは、非予測的に符号化されてもよく、またはそれらが同じ画像の既に符号化されたブロックを参照して予測的に符号化されてもよい(空間予測またはフレーム内予測)。P画像の画素ブロックは、1つ前に符号化された参照画像を参照して、空間的予測を介してまたは時間的予測を介して予測的に符号化されてもよい。B画像のブロックは、1つまたは2つ前に符号化された参照画像を参照して、空間予測または時間領域予測を介して予測的に符号化されてもい。
ビデオコーダ(203)は、例えばITU-T REC.H.265などのような所定のビデオ符号化技術または規格に従って、符号化動作を実行することができる。その動作において、ビデオコーダ(203)は、入力ビデオシーケンスにおける時間的および空間的冗長性を利用する予測符号化動作を含む、さまざまな圧縮動作を実行することができる。したがって、符号化されたビデオデータは、使用されるビデオ符号化技術または規格によって指定された構文に従うことができる。
一実施形態では、送信機(440)は、符号化されたビデオとともに、付加的なデータを送信することができる。ビデオコーダ(430)は、そのようなデータを、符号化されたビデオシーケンスの一部として含むことができる。付加的なデータは、時間的/空間的/SNR拡張層、冗長画像やスライスなどの他の形式の冗長データ、補足拡張情報(SEI:Supplementary Enhancement Information)メッセージ、視覚ユーザビリティ情報(VUI:Visual Usability Information)パラメータセットフラグメントなどを含むことができる。
上述したように、符号化されたビデオシーケンスの符号化は、ビデオ符号化技術または規格に従うことができて、当業者に知られている原理に従うことができ、可変長符号化、ハフマン符号化、コンテキスト感度を有するかまたは有しないかの算術符号化などを含む。いくつかのストリーミングシステムでは、ビデオビットストリーム(204、207、209)は、特定のビデオ符号化/圧縮規格に従って符号化されることができる。それらの規格の例は、H.265のITU-T HEVC推薦を含む。
上述したように、JEM 7.0は、より高い圧縮能力を提供する。以下のセクション1.1および1.2は、この開示に関連するJEM-7.0の変更を説明する。
セクション1.1: QTBTブロックの分割構造
HEVCでは、符号化ツリーとして示される四分木構造を使用して、符号化ツリーユニット(CTU:Coding Tree Unitを、符号化ユニット(CU:Coding Unit)に分割することで、各種の局所特性を適応させる。CUレベルでは、フレーム間画像予測(時間)またはフレーム内画像(空間)予測を用いて画像領域を符号化する判定が行われる。予測ユニット(PU:Prection Unit)の分割タイプにより、各Cuをさらに1つ、2つまたは4つのPUに分割することができる。1つのPUの内部では、同じ予測処理を適用することができ、また、PUに基づいて、関連情報をデコーダに送信することができる。PUの分割タイプに基づいて予測処理を適用して残差データブロックを取得した後、CUの符号化ツリーと類似する他の四分木構造に従って、CUを変換ユニット(TU:Transform Unit)に分割することができる。HEVC構造の重要な特徴の1つは、CU、PUとTUを含む複数の分割概念を持つということである。
QTBT構造は、複数の分割タイプの概念を去除し、即ち、CU、PUとTU概念の分離を去除し、また、CUの分割形状のより多くの柔軟性をサポートする。QTBTブロック構造では、CUは、正方形または長方形を有することができる。図6Aに示すように、まず、四分木構造によって符号化ツリーユニット(CTU)を分割することができる。さらに、二分木構造によって四分木のリーフノードを分割することができる。二分木分割では、2つの分割タイプ(対称水平分割と対称垂直分割)が存在する。二分木のリーフノードは、符号化ユニット(CU)と呼ばれ、この分割は、さらなる分割なしで、予測および変換処理に用いられる。言い換えれば、QTBTの符号化ブロック構造では、CU、PUとTUは、同じブロックサイズを有する。
JEMでは、CUは、異なる色成分の符号化ブロック(CB)から構成される場合があり、例えば、4:2:0色度フォーマットのPおよびBスライスの場合、1つのCUが1つの輝度CBと2つの色度CBを含み、単一成分のCBから構成される場合があり、例えば、Iスライスの場合、1つのCUが1つの輝度CBのみまたはちょうど2つの色度CBを含む。
QTBTの分割スキームに対して、以下のパラメータを定義することができる。
CTUサイズは、四分木のルートノードのサイズであり、HEVCにおける同じ概念である。
MinQTSizeは、許可された最小の四分木のリーフノードのサイズである。
MaxBTSizeは、許可された最大の二分木のルートノードのサイズである。
MaxBTDepthは、許可された最大の二分木の深さである。
MinBTSizeは、許可された最小の二分木のリーフノードのサイズである。
QTBTの分割構造の1つの例では、CTUサイズを色度サンプルの2つの対応する64×64のブロックを有する128×128の輝度サンプルに設定することができ、MaxBTSizeを16×16に設定することができ、MinQTSizeを64×64に設定することができ、(幅および高さのための)MinBTSizeを4×4に設定することができ、かつ、MaxBTDepthを4に設定することができる。まず、四分木のリーフノードを生成するために、四分木分割をCTUに適用することができる。四分木のリーフノードは、16×16(即ち、MinQTSize)から128×128(即ち、CTUサイズ)までのサイズを有することができる。また、四分木のリーフノードが128×128のサイズである場合は、サイズがMaxBTSize(即ち、64×64)を超えるため、二分木によって更に分割されない。そうでない場合は、四分木のリーフノードは、二分木によって更に分割されることができる。したがって、四分木のリーフノードも、二分木のルートノードであり、また、それが、二分木の深さ「0」を有する。二分木の深さがMaxBTDepth(即ち、4)に達する場合、さらなる分割は考慮されない。二分木のノードがMinBTSize(即ち、4)に等しい幅を有する場合、さらなる水平分割は考慮されない。同様に、二分木のノードがMinBTSizeと等しい高さを有する場合、さらなる垂直分割は考慮されない。
二進木のリーフノードは、更なる分割なしに、予測および変換処理によってさらに処理される。JEMでは、最大のCTUサイズは256×256個の輝度サンプルである。
図6Aは、四分木プラス二分木(QTBT)を使用することによるブロック分割の例を示し、図6Bは、図6Aのブロック分割の対応するツリー表現を示す。図6Aにおいて、実線は、四分木分割を示し、破線は、二分木分割を示す。二分木の各分割(即ち、非リーフ)ノードにおいて、どの分割タイプ(即ち、水平または垂直)を使用するかを示す1つのフラグを信号で通知し、ここで、0は、水平分割を示し、1は、垂直分割を示す。四分木の分割については、分割タイプを指示する必要がない。これは、四分木分割が常に、データブロックを水平かつ垂直に分割することで、等しいサイズを有する4つのサブブロックを生成するためである。
また、QTBTスキームは、輝度と色度が個別のQTBT構造を有する能力をサポートしている。現在、PスライスとBスライスについて、1つのCTUにおける輝度CTBと色度CTBは、同じQTBT構造を共有する。しかしながら、Iスライスについて、輝度CTBをQTBT構造に従ってCUに分割し、色度CTBを別のQTBT構造に従って色度CUに分割する。これは、IスライスにおけるCUが、輝度成分の符号化データブロックまたは2つの色度成分の符号化ブロックから構成され、PスライスまたはBスライスにおけるCUが、3つの色成分の符号化ブロックのすべてから構成される、ということを意味する。
HEVCでは、動き補償のメモリアクセスを低減するために、小さいブロックのフレーム間予測を制限し、これにより、4×8と8×4のブロックは、双方向予測をサポートしていないし、4×4のブロックは、フレーム間予測をサポートしていない。JEMのQTBTでは、これらの制限は削除された。
セクション1.2: 高周波数ゼロ設定による大きいブロックサイズの変換
JEMでは、大きいブロックサイズの変換(128×128のサイズまで)が実現されることは、主に、より高い解像度のビデオ(例えば1080pおよび4Kシーケンス)に使用されることができる。サイズ(幅または高さ、または幅と高さの両方)が64以上である変換ブロックについて、高周波変換係数をゼロ設定して、これにより、より低周波数の係数のみが維持される。例えば、M×Nの変換ブロック(Mをブロック幅として、Nをブロック高さとする)については、Mが64以上である場合、変換係数の左側の32列のみが保持される。同様に、Nが64以上である場合、変換係数の上部の32行のみが保持される。大きいブロックに対して変換スキップモードを使用する場合、いかなる値もゼロ設定せずに、ブロック全体を使用する。
セクション1.3:適応マルチコア変換
既にHEVCに使用されているDCT-2と4×4 DST-7に加えて、フレーム間およびフレーム内符号化データブロックの残差符号化に対して、適応多重変換(AMT、または拡張された多重変換(EMT:Enhanced Multiple Transform)として知られている)スキームが提案された。AMTは、HEVCにおける現在の変換に加えて、DCT/DSTファミリーから選択された複数の変換を使用することができる。新しく導入された変換行列は、DST-7、DCT-8、DST-1、およびDCT-5を含むことができる。表1は、選択されたDST/DCTの例示的なベース関数を以下に示す。
Figure 0007073536000001
変換行列の直交性を維持するために、変換行列は、HEVCにおける変換行列よりも正確に量子化され得る。変換された係数の中間値を16ビットの範囲内に維持するために、水平変換後かつ垂直変換後に、現在のHEVC変換で使用されている右シフトと比較して、すべての係数をさらに2ビットだけ右にシフトすることができる。AMTは、幅および高さが64以下である符号化ユニット(CU:coding unit)に適用されることができ、また、AMTが適用されるかどうかは、CUレベルフラグによって制御されることができる。CUレベルフラグが0に等しい場合、DCT-2をCUに適用して残差を符号化することができる。AMTが実現されたCU内の輝度符号化ブロックについて、使用される水平変換と垂直変換を識別するために、2つの付加的なフラグを信号で通知することができる。HEVCでは、JEMにおいて、変換スキップモードを用いてブロックの残差を符号化することができる。構文符号化の冗長を避けるために、CUレベルAMTフラグがゼロに等しくない場合、変換レベルスキップフラグは、信号で通知されていない。
フレーム内の残差符号化について、異なるフレーム内予測モードの異なる残差統計情報のために、モード依存の変換候補選択プロセスを使用することができる。以下の表2に示すように、3つの変換サブセットを定義し、以下の表3に説明するように、フレーム内予測モードに基づいて変換サブセットを選択することができる。
Figure 0007073536000002
サブセット概念に関しては、まず、CUレベルAMTフラグが1に等しいCUのフレーム内予測モードを使用して、表3に基づいて、変換サブセットを識別することができる。その後、各水平および垂直変換について、明示的に信号で通知されるフラグに基づいて、表2によって識別された変換サブセットにおける2つの変換候補のうちの1つを選択することができる。
Figure 0007073536000003
しかし、フレーム間予測残差について、DST-7とDCT-8によって構成される1つの変換セットだけが、すべてのフレーム間モードのために、および、水平かつ垂直変換のために使用されることができる。エンコーダ側では、AMTの複雑さが比較的高く、これは、ブルートフォース検索を使用する場合、各残差ブロックのレート歪みコストに対して、合計5つの異なる変換候補(DCT-IIおよび4つの多重変換候補)を評価する必要があるからである。エンコーダ側の複雑さ問題を軽減するために、JEMにおけるアルゴリズム加速のために、いくつかの最適化方法が設計される。
大規模変換(32ポイント以上の変換)が付加的な符号化利得をもたらす実験的証拠がある。しかしながら、大規模変換をビデオコーデックに導入することは、計算のコストおよび複雑さを増加させ、例えば、付加的な数量の乗算および付加的な乗算器を増加させる。さらに、大規模変換をビデオコーデックに導入することは、付加的なメモリ負担を増加させ、1)最大の変換サイズが水平かつ垂直に2倍(2x)増加した場合、パイプラインのバッファサイズは、4倍(4x)増加することと、2)大規模変換は、変換カーネルを記憶するために付加的なメモリを必要とすることと、が含まれている。
以下に説明する方法は、別々に使用してもよく、または、任意の順序で組み合わせて使用してもよい。
大規模変換について、伝統的なDCT-IIを適用する代わりに、低複雑さの無乗算変換を適用することができる。さらに、この例では、変換カーネルは非常に簡単であり、これにより、変換カーネルを記憶するために必要なメモリは大きくないか、または、簡単なパターンを使用してカーネルを導出することができる。
大規模変換は、128ポイント、256ポイントと512ポイントの変換、および/または任意の変換サイズの64ポイント以上の変換、または32ポイント以上の変換を含むことができるが、これらに限定されない。低複雑さの無乗算変換は、変換コアが1と-1のみからなるアダマール変換(Hadamard transform)と、変換コアが2の累乗のみからなる変換を含むことができるが、これらに限定されていない。アダマール・ウォルシュ(Hadamard Walsh)変換は、一般的に、アダマール変換またはウォルシュ変換とも呼ばれ、これらの用語は、本明細書で交換的に使用されてもよく、同じ変換を意味する。
他の変換サイズの同じ量子化スキームを再利用するために、低複雑さの無乗算変換コアをスケーリングすることができる。1つの例では、HEVCでは、K*K’が単位行列であることを満たす直交変換コアKを使用して、Nポイント変換コアを64*sqrt(N)でスケーリングすることができる。この場合、大規模変換を適用するときに、Nポイント変換コアを64*sqrt(N)でスケーリングする。
また、大規模変換を異なってスケーリングすることができ、それに応じて、水平かつ垂直変換後の内部丸め動作(右シフト)を調整して、異なるスケーリングに一致させることができる。例えば、アダマール・ウォルシュ変換を使用する場合、水平かつ垂直変換後の右シフトビットは、異なるスケーリング因子に従って減少される。
1つの例では、最新のHEVC参照SW HMでは、順方向水平変換後の右シフトは(log2(Width)+bitDepth+6)-15であり、順方向垂直変換後の右シフトは(log2(Height)+6)である。提案された方法を使用して、大規模変換は、変換コアが1と-1からなるアダマール・ウォルシュ変換である場合、前方水平変換後の右シフトは(log2(Width)+bitDepth+6)-21であり、前方垂直変換後の右シフトはlog2(Height)である。従って、HEVCでは、逆垂直変換後の右シフトは7であり、逆水平変換後の右シフトは20-bitDepthである。
提案された方法を使用して、大規模変換は、変換コアが1と-1からなるアダマール・ウォルシュ変換である場合、逆垂直変換後の右シフトは1であり、逆水平変換後の右シフトは14-bitDepthである。
また、大規模変換は、他の変換サイズと異なってスケーリングされ、異なる量子化スキームが適用されてもよい。
他の変換(DCTを含むが、これに限定されていない)に組み合わせて、低複雑さの乗算変換を使用することができる。1つの例では、128×M、M×128、256×MまたはM×256ブロックに対して、128ポイント/256ポイントの大規模変換を適用する代わりに、まず、X×Y変換を、各々の非オーバーラップのN×Nブロックに適用して、その後、X×Y変換によって生成された変換係数に対して、別の変換を適用してもよいし、ここでは、XとYは、2、4、8、16、32または64であってもよい。第1変換であるX×Y変換および/または第2変換は、低複雑さの無乗算変換または他の変換(DCT/DST、KLT(Karhunen-Loeve Transform)などを含むが、これらに限定されていない)であってもよい。
もう1つの例では、128×M、M×128、256×MまたはM×256ブロックに対して、128ポイント/256ポイントの大規模変換を適用する代わりに、ブロックを因子sでサブサンプリングすることができる。例えば、sが2に等しい場合、これは、ブロックが2でサブサンプリングされ、偶数サンプルが1つのブロックを構成し、奇数サンプルがほかの1つのブロックを構成する、ということを意味する。サブサンプリングは、水平/垂直方向のいずれか/両方に適用されることができる。
エンコーダ側では、サブサンプリングされた各ブロックに対して第1変換を適用し、サブサンプリングされた各ブロックに対して変換係数を生成し、その後、変換係数を重み付けて加算して、他の変換係数ブロックを生成することができ、この他の変換係数ブロックは、さらに量子化されてエントロピー符号化される。
デコーダ側では、逆量子化された変換ブロックを逆変換し、また、残差ブロックを元のブロックサイズにアップサンプリングすることができる。
さらに、異なるブロックサイズに対して、異なるゼロ設定方法を実行することができる。具体的には、異なるブロックサイズに対して、異なる数のゼロ設定された変換係数を適用することができ、より大規模な変換に対して、より小さい数の変換係数が非ゼロ設定することを許容する。1つのサンプルでは、128ポイント変換に対して、最初の64、32、16、8、4、2または1つの変換係数のみを使用して、残りの係数をゼロ設定してもよい。別のサンプルでは、256ポイント変換に対して、最初の128、64、32、16、8、4、2または1つの変換係数のみを使用して、残りの係数をゼロ設定してもよい。1つの代表的な選択は、128ポイント変換に対して、最初の16つの係数のみを保持し、256ポイント変換に対して、最初の4つの係数のみを保持し、これにより、より大規模な変換において、より小さい数の非ゼロ係数を許容する、ということである。
ゼロ設定された変換係数の数は、いくつかの符号化された情報に依存することができ、フレーム内/フレーム間符号化、画像解像度、時間層、量子化パラメータ(QP:Quautization Parameeter)、変換タイプ、および輝度/色度成分を含むが、これらに限定されていない。
非正方変換MxNを適用する場合については、Mポイント変換に対して、最初のm個の係数のみを保持し、Nポイント変換に対して、最初のn個の係数を保持すると仮定と仮定すると、非正方変換MxNに対して、左上のmxn個の係数を保持する。1つの例では、64ポイント、128ポイントおよび256ポイント変換に対して、最初の32、16および4つの変換係数をそれぞれ保持することができる。それから、128x32の変換に対して、左上の16x32個の変換係数を保持することができ、残りの係数はゼロとすることができる。64x128の変換に対して、左上の32x16個の変換係数を保持することができ、残りの係数はゼロとすることができる。16x256の変換に対して、左上の16x4個の変換係数を保持することができ、残りの係数はゼロとすることができる。
水平/垂直方向に対して1つの変換係数のみを保持し、また、残りの係数をすべてゼロ設定すると、これは、符号化されたブロックフラグ(CBF:Coded Block Flag)がゼロではない場合、水平/垂直方向の最後の位置は1でなければならず、従って、符号化する必要がない、ということを意味する。
あるいは、水平/垂直方向の全ての変換係数がゼロである場合、符号化されたブロックフラグ(CBF)は常にゼロであり、CBFを信号で通知する必要がなく、また、変換係数の解析、逆量子化または逆変換を行う必要がない、ということを意味する。
1つの例では、32x256のブロックに対して、ゼロ設定は32ポイント変換に適用されないが、256ポイント変換に対して、すべての変換係数はゼロであるため、この場合、32x256ブロックに対して、CBFは常にゼロである。
また、非ゼロ変換係数の数はブロック領域のサイズに依存し、また、各ブロックサイズについて、左上の変換係数のどの部分(即ち、mXn)を非ゼロとして保持することができるかが予め定義された。一実施形態では、mとnは、それぞれ、MとNの小数であってもよい。例えば、m=M>>k、かつ、n=N>>j、ここでは、kとjは、1、2、3または任意の非負整数に等しくてもよい。別の例では、m=M/k、かつ、n=N/jであり、ここでは、kとjは、1、2、3または任意の正整数に等しくてもよいし、mとnが、最も近い整数に丸められる(切り上げまたは切り下げ)。パラメータKとJは、互いに等しくてもよく、あるいは異なってもよいし、予め定義されてもよく、あるいはスライスヘッダー、画像パラメータセット(PPS:Picture Parameter Set)、シーケンスパラメータセット(SPS:sequence parameter set)または他の符号化領域ヘッダーにおいて信号で通知されてもよい。
また、大規模変換を水平および/または垂直方向に適用する必要がある場合、MxNの大規模変換を適用する代わりに、複数のより小さいブロックサイズの変換を水平および/または垂直方向に適用することができ、また、各々のより小さいブロックサイズの変換に対してゼロ設定を適用して、結果を重み付けて加算することで、ブロック全体の変換係数を生成することができる。大規模な逆変換を水平および/または垂直方向に適用する必要がある場合、MxNの大規模な逆変換を適用する代わりに、より小さいブロックサイズの変換を適用して、より小さいブロックサイズの変換をMxNにアップサンプリングすることで、ブロック全体の残差を生成することができる。
1つの例では、左上の32x32個の係数のみがゼロではない64x64の逆量子化された変換係数ブロック、逆の64x64変換を適用することができ、また、64x64の残差ブロックを生成することができる。その後、64x64の残差ブロックをアップサンプリングすることで、128x256の残差ブロックを生成することができる。アップサンプリングプロセスは、64x64の残差ブロックを128x256の残差ブロックにコピーまたはインタリーブすることによって実行されてもよいし、あるいは、所定のアップサンプリングフィルタを使用することによって実行されてもよい。アップサンプリングフィルタは、動き補償のサブペル画素を生成するために使用されるNタップキュービック補間フィルタ、NタップDCT補間フィルタ、または補間フィルタを含むが、これに限定されない。
図5を参照して、簡単な第1例では、低複雑度変換を使用する符号化または復号化の方法を採用する方法は、図5に示す以下のステップを含むことができる。ステップ501では、符号化または復号化されるターゲットブロックである音声、ビデオまたは画像のブロックに関する情報を受信する。図5の方法は、ステップ502を含むこともでき、ステップ502が、ターゲットブロックのブロックサイズの幅または高さのうちの少なくとも1つが予め定められた閾値以上であるかどうかを判定する、ということを含む。
図5に示すように、ステップ502の判定がYESである場合(ターゲットブロックサイズ>閾値)、ステップ503を実行する。ステップ503は、ターゲットブロックのブロックサイズの幅または高さのうちの少なくとも1つが予め定められた閾値以上である場合、ターゲットブロックの符号化または復号化を実行するが、ターゲットブロックのブロックサイズの幅または高さのうちの少なくとも1つに対応するサイズを有する大規模変換を適用していないし、また、ターゲットブロックの第1部分に第1変換を適用して、ターゲットブロックの第2部分に第1変換または第2変換を適用すること、を含む。ステップ502の判定がNOである場合、ステップ504を実行する。ステップ504は、ターゲットブロックサイズに対応するサイズを有する変換を使用することを含むことができる。図5の方法は、第1変換および第2変換のうちの少なくとも1つが予め定められた閾値より小さいサイズを有する低複雑度変換である、ことを含むこともできる。図5に示す方法は、1つ以上のプロセッサによって実行される処理ステップ501~504をも含むこともできる。図5に示す方法は、1つ以上のプロセッサによって、ステップ501~504の実行前または実行中に、事前に低複雑度データ構造をメモリに記憶する、ことを含むこともできる。
図5に示す方法は、低複雑度変換が、変換コアが1と-1のみからなるアダマール変換と、変換コアが2の累乗のみからなる予め定められた変換とのうちの1つである、ことを含むこともできる。
図5に示す方法は、より低い周波数変換係数のみを維持するように、高周波数変換係数をゼロ設定する、ことをさらに含むことができる。
図5に示す方法は、低複雑度変換のスケーリングは、低複雑度変換のサイズと異なる他の変換サイズの同じ量子化スキームを再利用することにより、K*K’を満たす、単位行列である、直交変換コアKを使用して、Nポイント変換コアを64*sqrt(N)でスケーリングすることを含むこともでき、これによって、低複雑度変換を適用する場合、Nポイント変換コアが64*sqrt(N)でスケーリングされる。
図5に示す方法は、低複雑度変換が、変換コアが1と-1のみからなるアダマール-ウォルシュ変換と、変換コアが2の累乗のみからなる変換とのうちの1つである、ことを含むこともができ、さらに、低複雑度変換をスケーリングすることによって量子化スキームを生成し、低複雑度変換がアダマール-ウォルシュ変換ではない場合、生成された量子化スキームを使用して、ターゲットブロックを符号化または復号化するようにする情報を生成または送信し、低複雑度変換がアダマール-ウォルシュ変換である場合、(I)大規模変換でのスケーリングの差を補償するためにシフトを実行することによって量子化スキームを調整し、かつ(ii)調整された量子化スキームを使用して、ターゲットブロックを符号化または復号化するようにする情報を生成または送信し、ここで、復号化が、ターゲットブロックを逆変換して、逆量子化された変換ブロックを導出し、残差ブロックを元のブロックサイズにアップサンプリングすることを含む、ということをさらに含むこともできる。
図5に示す方法は、低複雑度変換がアダマール-ウォルシュ変換であり、また、大規模変換のスケーリング比が異なるので、水平および垂直変換後の少なくともの右シフト演算を含む内部丸め演算をそれに応じて調整して、異なるスケーリングに適合させる、ということを含むこともできる。図5に示す方法は、まず、各々の非オーバーラップのNxNのブロックに、XxY変換を適用し、ここで、XおよびYが2、4、8、16、32、または64であってもよく、その後、XxY変換によって生成された変換係数の上部に第2変換を適用し、ここで、第1変換であるXxYおよび/または第2変換が低複雑度変換である、ということを含むこともできる。
図5に示す方法は、ブロックサイズの幅および高さのうちの少なくとも1つが128に等しいターゲットブロックに対して、128ポイント変換について、最初の64、32、16、8、4、2または1つの変換係数のみを使用し、残りの係数をゼロ設定する、ということを含むこともできる。
図5に示す方法は、128xM、Mx128、256xMまたはMx256のブロックに対して、128ポイント/256ポイントの大規模変換を適用する代わりに、因子Sによってブロックをサブサンプリングし、偶数サンプルが1つのブロックを構成し、奇数サンプルが別のブロックを構成し、サブサンプリングを水平/垂直方向のいずれか/両方に適用し、符号化が、各々のサブサンプリングされたブロックに対して第1変換を適用し、各々のサブサンプリングされたブロックの変換係数を生成し、またその後、変換係数を重み付けて加算することで、他の変換係数ブロックを生成し、該他の変換係数ブロックをさらに量子化してエントロピー符号化することを含み、復号化が、逆量子化された変換ブロックを逆変換し、残差ブロックを元のブロックサイズにアップサンプリングすることを含む、ということを含むこともできる。
図5に示す方法は、大規模変換を水平および/または垂直方向に適用する必要がある場合、MxNの大規模変換を適用する代わりに、複数のより小さいブロックサイズの変換を水平および/または垂直方向に適用し、各々のより小さいブロックサイズの変換に対してゼロ設定を適用して、結果を重み付けて加算することで、ブロック全体の変換係数を生成し、逆の大規模変換を水平および/または垂直方向に適用する必要がある場合、MxNの逆の大規模変換を適用する代わりに、より小さいブロックサイズの変換を適用し、そして、MxNにアップサンプリングして、ブロック全体の残差を生成する、ということを含むこともできる。
コンピュータ読み取り可能な令を有するコンピュータソフトウェアを実行することができる1つ以上のプロセッサによって、符号化/復号化技術を実施することができ、このコンピュータソフトウェアは、1つ以上のコンピュータ読み取り可能な媒体(例えば、ハードディスクドライブ)に物理的に記憶されてもよい。例えば、図7は、開示された主題のいくつかの実施形態を実現するのに適したコンピュータシステム700を示す。
コンピュータソフトウェアは、任意の適切なマシンコードまたはコンピュータ言語を使用して符号化されてもよく、アセンブリ、コンパイル、リンクなどのメカニズムによって命令を含むコードを作成してもよいし、この命令は、コンピュータ中央処理ユニット(CPU:computer central processing unit)、グラフィック処理ユニット(GPU:Graphics Processing Unit)などによって直接的に実行されてもよく、または解釈、マイクロコードなどによって実行されてもよい。
命令は、例えば、パーソナルコンピュータ、タブレットコンピュータ、サーバ、スマートフォン、ゲームデバイス、オブジェクトネットワークデバイス(internet of things devices)などを含む、様々なタイプのコンピュータまたはそのコンポーネントで実行されてもよい。
図7に示されるコンピュータシステム700のコンポーネントは、本質的に例示的なものであり、本開示の実施形態を実現するコンピュータソフトウェアの使用範囲または機能に関するいかなる制限も示唆することが意図されていない。コンポーネントの構成は、コンピュータシステム700の例示的な実施形態に示されているコンポーネントのいずれかまたは組み合わせに関連する任意の依存性または要件を有すると解釈されるべきではない。
コンピュータシステム700は、いくつかのヒューマンインターフェース入力デバイスを含むことができる。このようなヒューマンインターフェース入力デバイスは、例えば、触覚入力(例えば、キーストローク、スワイプ、データグローブの動き)、オーディオ入力(例えば、音声、拍手など)、視覚入力(例えば、ジェスチャーなど)、嗅覚入力(図示せず)によって、1人以上のユーザによる入力に応答することができる。ヒューマンインターフェース入力デバイスは、例えばオーディオ(例えば、音声、音楽、環境音など)、画像(例えば、スキャンされた画像、静止画像カメラから得られた写真画像など)、ビデオ(例えば、2次元ビデオ、立体映像を含む3次元ビデオなど)などの、人間による意識的な入力に必ずしも直接関連しているとは限らない、特定のメディアを捕捉するために使用されることもできる。
ヒューマンインターフェース入力デバイスは、キーボード701、マウス702、トラックパッド703、タッチスクリーン710、データグローブ704、ジョイスティック705、マイクロホン706、スキャナ707、カメラ708のうちの1つまたは複数を含むことができる(そのうちの1つだけが図示された)。
コンピュータシステム700はまた、いくつかのヒューマンインターフェース出力デバイスを含むことができる。そのようなヒューマンインターフェース出力デバイスは、例えば、触覚出力、音、光、および嗅覚/味覚によって、1人以上のユーザの感覚を刺激することができる。このようなヒューマンインターフェース出力デバイスは、触覚出力デバイス(例えば、タッチスクリーン710、データグローブ704、ジョイスティック705による触覚フィードバックであるが、入力デバイスとして作用しない触覚フィードバックデバイスであってもよい)、オーディオ出力デバイス(例えば、スピーカ709、ヘッドホン(図示せず))、視覚出力デバイス(例えば、CRTスクリーン、LCDスクリーン、プラズマスクリーン、OLEDスクリーンを含むスクリーン710であり、各々は、タッチスクリーン入力機能を備えてもよく、あるいは備えていなくてもよく、各々は、触覚フィードバック機能を備えてもよく、あるいは備えていなくてもよいし、これらのいくつかは、ステレオグラフィック出力、仮想現実メガネ(図示せず)、ホログラフィックディスプレイとスモークタンク(図示せず)、およびプリンタ(図示せず)などによって、2次元の視覚出力または3次元以上の視覚出力を出力することができる。
コンピュータシステム700は、例えば、CD/DVDを有するCD/DVD ROM/RW 720を含む光学媒体または類似の媒体721、サムドライブ722、リムーバブルハードドライブまたはソリッドステートドライブ723、テープおよびフロッピーディスク(図示せず)などのレガシー磁気媒体、セキュリティドングル(図示せず)などの特殊なROM/ASIC/PLDベースのデバイスなどのような、人間がアクセス可能な記憶デバイスおよびそれらに関連する媒体を含むことができる。
当業者はまた、ここで開示されている主題に関連して使用される「コンピュータ読み取り可能な媒体」という用語が、伝送媒体、搬送波、または他の一時的な信号を包含しないことを理解すべきである。
コンピュータシステム700はまた、1つ以上の通信ネットワークへのインターフェースを含むことができる。ネットワークは、例えば、無線、有線、光学的であってもよい。ネットワークはさらに、ローカルネットワーク、広域ネットワーク、大都市圏ネットワーク、車両用ネットワークおよび産業用ネットワーク、リアルタイムネットワーク、遅延耐性ネットワークなどであってもよい。ネットワークの例は、イーサネット(登録商標)、無線LAN、セルラーネットワーク(GSM(登録商標)、3G、4G、5G、LTEなど)などのLAN、テレビケーブルまたは無線広域デジタルネットワーク(有線テレビ、衛星テレビ、地上放送テレビを含む)、車両用ネットワークおよび産業用ネットワーク(CANBusを含む)などを含む。いくつかのネットワークは、一般に、いくつかの汎用データポートまたは周辺バス(749)(例えば、コンピュータシステム700のUSBポート)に接続された外部ネットワークインターフェースアダプタが必要であり、他のシステムは、通常、以下に説明するようにシステムバスに接続することによって、コンピュータシステム700のコアに統合される(例えば、イーサネットインターフェースからPCコンピュータシステムへ、またはセルラーネットワークインターフェースからスマートフォンコンピュータシステムへ)。これらのネットワークのいずれかを使用して、コンピュータシステム700は、他のエンティティと通信することができる。このような通信は、単方向の受信のみ(例えば、放送TV)、単方向の送信のみ(例えば、CANバスから特定のCANバスデバイスへ)、あるいは、双方向の、例えばローカルまたは広域デジタルネットワークを使用して他のコンピュータシステムへの通信であってもよい。上記のように、特定のプロトコルおよびプロトコルスタックは、それらのネットワークおよびネットワークインターフェースのそれぞれで使用されることができる。
上記のヒューマンインターフェースデバイス、ヒューマンアクセス可能な記憶デバイス、およびネットワークインターフェースは、コンピュータシステム700のコア740に接続されることができる。
コア740は、1つ以上の中央処理ユニット(CPU)741、画像処理ユニット(GPU)742、フィールドプログラマブルゲートエリア(FPGA)743の形式の専用プログラマブル処理ユニット、特定のタスクのためのハードウェア加速器744などを含むことができる。これらのデバイスは、リードオンリーメモリ(ROM)745、ランダムアクセスメモリ746、例えば内部の非ユーザアクセスハードドライブ、SSDなどの内部大容量ストレージ747などとともに、システムバス748を介して接続されてもよい。いくつかのコンピュータシステムでは、システムバス748は、付加的なCPU、GPUなどによって拡張を可能にするために、1つ以上の物理的プラグの形でアクセスすることができる。周辺デバイスは、コアのシステムバス748に直接に接続されてもよく、または周辺バス749を介して接続されてもよい。周辺バスのアーキテクチャは、外部コントローラインターフェース(PCI)、汎用シリアルバス(USB)などを含む。
CPU 741、GPU 742、FPGA 743、および加速器744は、いくつかの命令を実行することができ、これらの命令を組み合わせて上記のコンピュータコードを構成することができる。そのコンピュータコードは、ROM 745またはRAM 746に記憶されることができる。また、一時的なデータは、RAM 746に記憶されることができる一方、永久的なデータは、例えば内部大容量ストレージ747に記憶されることができる。1つ以上のCPU 741、GPU 742、大容量ストレージ747、ROM 745、RAM 746などと密接に関連することができる、高速ストレージを使用することにより、任意のメモリデバイスに対する高速記憶および検索が可能になる。
コンピュータ読み取り可能な媒体は、様々なコンピュータ実行された動作を実行するためのコンピュータコードを有することができる。媒体およびコンピュータコードは、本開示の目的のために特別に設計および構成されたものであってもよく、またはコンピュータソフトウェア分野の技術者によって知られ、利用可能な媒体およびコードであってもよい。
限定ではなく例として、アーキテクチャ700、特にコア740を有するコンピュータシステムは、1つ以上の有形な、コンピュータ読み取り可能な媒体に具体化されたソフトウェアを実行する、(CPU、GPU、FPGA、加速器などを含む)プロセッサの結果として機能を提供することができる。このようなコンピュータ読み取り可能な媒体は、上述したようにユーザがアクセス可能な大容量ストレージに関連する媒体であり、コア内部大容量ストレージ747またはROM 745などの、不揮発性コア740を有する特定のストレージであってもよい。本開示の様々な実施形態を実現するソフトウェアは、そのようなデバイスに記憶され、コア740によって実行されてもよい。コンピュータ読み取り可能な媒体は、特定のニーズに応じて、1つ以上のメモリデバイスまたはチップを含むことができる。このソフトウェアは、コア740、具体的にはその中のプロセッサ(CPU、GPU、FPGAなどを含む)に、RAM 746に記憶されているデータ構造を定義することと、ソフトウェアによって定義されたプロセスに従ってこのようなデータ構造を変更することとを含む、ここで説明された特定のプロセスまたは特定のプロセスの特定の部分を実行させることができる。加えてまたは代替として、コンピュータシステムは、ロジックハードワイヤまたは他の方式で回路(例えば、加速器744)で具体化された結果としての機能を提供することができ、この回路は、ソフトウェアの代わりに動作しまたはソフトウェアと一緒に動作して、ここで説明された特定のプロセスまたは特定のプロセスの特定の部分を実行してもよい。適切な場合には、ソフトウェアへの参照はロジックを含むことができ、逆もまた然りである。適切な場合には、コンピュータ読み取り可能な媒体への参照は、実行のソフトウェアを記憶する回路(例えば、集積回路(IC)など)、実行のロジックを具体化する回路、またはその両方を兼ね備えることができる。本開示は、ハードウェアとソフトウェアの任意の適切な組み合わせを包含する。
本開示は、いくつかの例示的な実施形態について説明したが、本開示の範囲内にある変更、置換、および様々な均等置換が存在している。したがって、当業者は、本明細書では明示的に示されていないか、または説明されていないが、本開示の原則を具体化しているので、本開示の精神および範囲内ある、様々なシステムおよび方法を設計することができる、ということを理解されたい。

Claims (12)

  1. 少なくとも1つのメモリと、少なくとも1つのプロセッサとを含む装置によって実行される方法であって、
    前記少なくとも1つのプロセッサが、音声、ビデオまたは画像のデータブロックに関する情報を受信するステップであって、前記データブロックは、符号化または復号化するためのターゲットデータブロックであるステップと、
    前記少なくとも1つのプロセッサが、前記ターゲットデータブロックのブロックサイズの幅または高さのうちの少なくとも1つが所定の閾値以上であるかどうかを決定するステップと、
    前記ターゲットデータブロックのブロックサイズの幅または高さのうちの前記少なくとも1つが所定の閾値以上である場合、前記少なくとも1つのプロセッサが、前記ターゲットデータブロックの符号化または復号化を実行するが、大規模変換を適用する代わりに、前記ターゲットデータブロックの第1部分に第1変換を適用し、前記ターゲットデータブロックの前記第1部分とは異なる第2部分に前記第1変換または前記第1変換とは異なる第2変換を適用するステップであって、前記第1変換と前記第2変換のうちの少なくとも1つが、前記所定の閾値より小さいサイズを有する低複雑度変換であり、大規模変換とは前記ターゲットデータブロックのブロックサイズの幅または高さのうちの前記少なくとも1つに対応するサイズを有する変換であり、前記低複雑度変換は、変換コアが1と-1のみからなるアダマール変換(Hadamard transform)と、前記変換コアが2の累乗のみからなる所定の変換とのうちの1つである、
    ステップと、
    を含み、
    前記低複雑度変換はスケーリングすることにより、前記低複雑度変換のサイズとは異なる別の変換サイズの同じ量子化スキームを再利用し、前記低複雑度変換のNポイント変換コアが、K*K’が単位行列となる直交変換コアKを使用して64*sqrt(N)でスケーリングされる、
    ことを特徴とする方法。
  2. 前記少なくとも1つのプロセッサは、より低周波数の変換係数のみを維持するように、高周波数変換係数をゼロ設定するステップ、
    をさらに含むことを特徴とする請求項1に記載の方法。
  3. 少なくとも1つのメモリと、少なくとも1つのプロセッサとを含む装置によって実行される方法であって、
    前記少なくとも1つのプロセッサが、音声、ビデオまたは画像のデータブロックに関する情報を受信するステップであって、前記データブロックは、符号化または復号化するためのターゲットデータブロックであるステップと、
    前記少なくとも1つのプロセッサが、前記ターゲットデータブロックのブロックサイズの幅または高さのうちの少なくとも1つが所定の閾値以上であるかどうかを決定するステップと、
    前記ターゲットデータブロックのブロックサイズの幅または高さのうちの前記少なくとも1つが所定の閾値以上である場合、前記少なくとも1つのプロセッサが、前記ターゲットデータブロックの符号化または復号化を実行するが、大規模変換を適用する代わりに、前記ターゲットデータブロックの第1部分に第1変換を適用し、前記ターゲットデータブロックの前記第1部分とは異なる第2部分に前記第1変換または前記第1変換とは異なる第2変換を適用するステップであって、前記第1変換と前記第2変換のうちの少なくとも1つが、前記所定の閾値より小さいサイズを有する低複雑度変換であり、大規模変換とは前記ターゲットデータブロックのブロックサイズの幅または高さのうちの前記少なくとも1つに対応するサイズを有する変換であり、前記低複雑度変換は、変換コアが1と-1のみからなるアダマール変換(Hadamard transform)と、前記変換コアが2の累乗のみからなる所定の変換とのうちの1つである、
    ステップと、
    を含み、
    前記方法は、
    前記少なくとも1つのプロセッサが、前記低複雑度変換をスケーリングすることにより量子化スキームを生成するステップと、
    前記低複雑度変換が前記アダマール変換ではない場合、前記少なくとも1つのプロセッサが、生成された量子化スキームを使用して前記ターゲットデータブロックを符号化または復号化するようにする情報を生成または転送するステップと、
    前記低複雑度変換が前記アダマール変換である場合、前記少なくとも1つのプロセッサが、(i)大規模変換でのスケーリングの差を補償するためにシフトを実行することによって前記量子化スキームを調整し、(ii)調整された量子化スキームを使用して前記ターゲットデータブロックを符号化または復号化するようにする情報を生成または転送するステップであって、ここで、前記復号化は、前記ターゲットデータブロックを逆変換して逆量子化された変換ブロックを導出することを含み、符号化においてサブサンプリングが適用されていた場合には残差ブロックを元のブロックサイズにアップサンプリングすることをさらに含む、ステップ、
    をさらに含むことを特徴とする方法。
  4. 前記ブロックサイズの幅および高さのうちの少なくとも1つが128に等しいターゲットデータブロックに対して、128ポイント変換について、前記少なくとも1つのプロセッサは、最初の64、32、16、8、4、2または1つの変換係数のみを使用し、残りの係数をゼロ設定する、
    ことを特徴とする請求項1ないし3のうちいずれか一項に記載の方法。
  5. 少なくとも1つのメモリと、少なくとも1つのプロセッサとを含む装置によって実行される方法であって、
    前記少なくとも1つのプロセッサが、音声、ビデオまたは画像のデータブロックに関する情報を受信するステップであって、前記データブロックは、符号化または復号化するためのターゲットデータブロックであるステップと、
    前記少なくとも1つのプロセッサが、前記ターゲットデータブロックのブロックサイズの幅または高さのうちの少なくとも1つが所定の閾値以上であるかどうかを決定するステップと、
    前記ターゲットデータブロックのブロックサイズの幅または高さのうちの前記少なくとも1つが所定の閾値以上である場合、前記少なくとも1つのプロセッサが、前記ターゲットデータブロックの符号化または復号化を実行するが、大規模変換を適用する代わりに、前記ターゲットデータブロックの第1部分に第1変換を適用し、前記ターゲットデータブロックの前記第1部分とは異なる第2部分に前記第1変換または前記第1変換とは異なる第2変換を適用するステップであって、前記第1変換と前記第2変換のうちの少なくとも1つが、前記所定の閾値より小さいサイズを有する低複雑度変換であり、大規模変換とは前記ターゲットデータブロックのブロックサイズの幅または高さのうちの前記少なくとも1つに対応するサイズを有する変換であり、前記低複雑度変換は、変換コアが1と-1のみからなるアダマール変換(Hadamard transform)と、前記変換コアが2の累乗のみからなる所定の変換とのうちの1つである、
    ステップと、
    を含み、
    前記少なくとも1つのプロセッサは、大規模変換を水平および/または垂直方向に適用する必要がある場合、MxNの大規模変換を適用する代わりに、複数のより小さいブロックサイズの変換を水平および/または垂直方向に適用し、各々のより小さいブロックサイズの変換に対してゼロ化を適用して、該ゼロ化の結果を重み付けて加算することで、ブロック全体の変換係数を生成し、逆の大規模変換を前記水平および/または垂直方向に適用する必要がある場合、MxNの逆の大規模変換を適用する代わりに、より小さいブロックサイズの変換を適用して、MxNにアップサンプリングすることで、ブロック全体の残差を生成し、ここで、Mはブロックの幅であり、Nはブロックの高さである、
    ことを特徴とする方法。
  6. 装置であって、
    コンピュータプログラムコードを記憶するように構成される少なくとも1つのメモリと、
    前記少なくとも1つのメモリにアクセスして、前記コンピュータプログラムコードに従って動作するように構成される少なくとも1つのプロセッサと、を含み、前記コンピュータプログラムコードは、
    前記少なくとも1つのプロセッサに、音声、ビデオまたは画像のデータブロックに関する情報を受信させる、ように構成される第1適用コードであって、前記データブロックは、符号化または復号化するためのターゲットデータブロックである、第1適用コードと、
    前記少なくとも1つのプロセッサに、前記ターゲットデータブロックのブロックサイズの幅または高さのうちの少なくとも1つが所定の閾値以上であるかどうかを決定させる、ように構成される第2適用コードと、
    前記少なくとも1つのプロセッサに、前記ターゲットデータブロックのブロックサイズの幅または高さのうちの前記少なくとも1つが所定の閾値以上である場合、前記ターゲットデータブロックの符号化または復号化を実行させるが、大規模変換を適用させる代わりに、前記ターゲットデータブロックの第1部分に第1変換を適用させ、前記ターゲットデータブロックの前記第1部分とは異なる第2部分に前記第1変換または前記第1変換とは異なる第2変換を適用させ、ここで、前記第1変換と前記第2変換のうちの少なくとも1つが、前記所定の閾値より小さいサイズを有する低複雑度変換であり、大規模変換とは前記ターゲットデータブロックのブロックサイズの幅または高さのうちの前記少なくとも1つに対応するサイズを有する変換であり、前記低複雑度変換は、変換コアが1と-1のみからなるアダマール変換(Hadamard transform)と、前記変換コアが2の累乗のみからなる所定の変換とのうちの1つである、ように構成される第3適用コードと、を含み、
    前記少なくとも1つのプロセッサに、前記低複雑度変換をスケーリングすることにより前記低複雑度変換のサイズとは異なる別の変換サイズの同じ量子化スキームを再利用させ、ここで、前記低複雑度変換のNポイント変換コアが、K*K’が単位行列となる直交変換コアKを使用して64×sqrt(N)でスケーリングされる、ように構成される第5適用コードをさらに含む、単位行列である、
    ことを特徴とする装置。
  7. 前記少なくとも1つのプロセッサに、より低周波数の変換係数のみが維持されるように、高周波数変換係数をゼロ設定させる、ように構成される第4適用コードをさらに含む、
    ことを特徴とする請求項に記載の装置。
  8. 装置であって、
    コンピュータプログラムコードを記憶するように構成される少なくとも1つのメモリと、
    前記少なくとも1つのメモリにアクセスして、前記コンピュータプログラムコードに従って動作するように構成される少なくとも1つのプロセッサと、を含み、前記コンピュータプログラムコードは、
    前記少なくとも1つのプロセッサに、音声、ビデオまたは画像のデータブロックに関する情報を受信させる、ように構成される第1適用コードであって、前記データブロックは、符号化または復号化するためのターゲットデータブロックである、第1適用コードと、
    前記少なくとも1つのプロセッサに、前記ターゲットデータブロックのブロックサイズの幅または高さのうちの少なくとも1つが所定の閾値以上であるかどうかを決定させる、ように構成される第2適用コードと、
    前記少なくとも1つのプロセッサに、前記ターゲットデータブロックのブロックサイズの幅または高さのうちの前記少なくとも1つが所定の閾値以上である場合、前記ターゲットデータブロックの符号化または復号化を実行させるが、大規模変換を適用させる代わりに、前記ターゲットデータブロックの第1部分に第1変換を適用させ、前記ターゲットデータブロックの前記第1部分とは異なる第2部分に前記第1変換または前記第1変換とは異なる第2変換を適用させ、ここで、前記第1変換と前記第2変換のうちの少なくとも1つが、前記所定の閾値より小さいサイズを有する低複雑度変換であり、大規模変換とは前記ターゲットデータブロックのブロックサイズの幅または高さのうちの前記少なくとも1つに対応するサイズを有する変換であり、前記低複雑度変換は、変換コアが1と-1のみからなるアダマール変換(Hadamard transform)と、前記変換コアが2の累乗のみからなる所定の変換とのうちの1つである、ように構成される第3適用コードと、を含み、
    前記少なくとも1つのプロセッサに、
    前記低複雑度変換をスケーリングすることにより量子化スキームを生成させ、
    前記低複雑度変換が前記アダマール変換ではない場合、生成された量子化スキームを使用して、前記ターゲットデータブロックを符号化または復号化するようにする情報を生成または転送させ、
    前記低複雑度変換が前記アダマール変換である場合、(i)大規模変換でのスケーリングの差を補償するためにシフトを実行することによって前記量子化スキームを調整させ、(ii)調整された量子化スキームを使用して前記ターゲットデータブロックを符号化または復号化するようにする情報を生成または転送させ、ここで、前記復号化は、前記ターゲットデータブロックを逆変換して逆量子化された変換ブロックを導出することを含み、符号化においてサブサンプリングが適用されていた場合には残差ブロックを元のブロックサイズにアップサンプリングすることをさらに含む、ように構成される第5適用コードをさらに含む、
    ことを特徴とする装置。
  9. 前記ブロックサイズの幅および高さのうちの少なくとも1つが128に等しいターゲットデータブロックに対して、128ポイント変換について、最初の64、32、16、8、4、2または1つの変換係数のみを使用し、残りの係数をゼロ設定する、
    ことを特徴とする請求項ないしのうちいずれか一項に記載の装置。
  10. 装置であって、
    コンピュータプログラムコードを記憶するように構成される少なくとも1つのメモリと、
    前記少なくとも1つのメモリにアクセスして、前記コンピュータプログラムコードに従って動作するように構成される少なくとも1つのプロセッサと、を含み、前記コンピュータプログラムコードは、
    前記少なくとも1つのプロセッサに、音声、ビデオまたは画像のデータブロックに関する情報を受信させる、ように構成される第1適用コードであって、前記データブロックは、符号化または復号化するためのターゲットデータブロックである、第1適用コードと、
    前記少なくとも1つのプロセッサに、前記ターゲットデータブロックのブロックサイズの幅または高さのうちの少なくとも1つが所定の閾値以上であるかどうかを決定させる、ように構成される第2適用コードと、
    前記少なくとも1つのプロセッサに、前記ターゲットデータブロックのブロックサイズの幅または高さのうちの前記少なくとも1つが所定の閾値以上である場合、前記ターゲットデータブロックの符号化または復号化を実行させるが、大規模変換を適用させる代わりに、前記ターゲットデータブロックの第1部分に第1変換を適用させ、前記ターゲットデータブロックの前記第1部分とは異なる第2部分に前記第1変換または前記第1変換とは異なる第2変換を適用させ、ここで、前記第1変換と前記第2変換のうちの少なくとも1つが、前記所定の閾値より小さいサイズを有する低複雑度変換であり、大規模変換とは前記ターゲットデータブロックのブロックサイズの幅または高さのうちの前記少なくとも1つに対応するサイズを有する変換であり、前記低複雑度変換は、変換コアが1と-1のみからなるアダマール変換(Hadamard transform)と、前記変換コアが2の累乗のみからなる所定の変換とのうちの1つである、ように構成される第3適用コードと、を含み、
    大規模変換を水平および/または垂直方向に適用する必要がある場合、MxNの大規模変換を適用する代わりに、複数のより小さいブロックサイズの変換を水平および/または垂直方向に適用し、各々のより小さいブロックサイズの変換に対してゼロ化を適用して、該ゼロ化の結果を重み付けて加算することで、ブロック全体の変換係数を生成し、逆の大規模変換を前記水平および/または垂直方向に適用する必要がある場合、MxNの逆の大規模変換を適用する代わりに、より小さいブロックサイズの変換を適用して、MxNにアップサンプリングすることで、ブロック全体の残差を生成し、ここで、Mはブロックの幅であり、Nはブロックの高さである、
    ことを特徴とする装置。
  11. 1つ以上のプロセッサに、
    音声、ビデオまたは画像のデータブロックに関する情報を受信するステップであって、符前記データブロックは、符号化または復号化するためのターゲットデータブロックである、ステップと、
    前記ターゲットデータブロックのブロックサイズの幅または高さのうちの少なくとも1つが所定の閾値以上であるかどうかを決定するステップと、
    前記ターゲットデータブロックのブロックサイズの幅または高さのうちの前記少なくとも1つが所定の閾値以上である場合、前記ターゲットデータブロックの符号化または復号化を実行するが、大規模変換を適用する代わりに、前記ターゲットデータブロックの第1部分に第1変換を適用し、前記ターゲットデータブロックの前記第1部分とは異なる第2部分に前記第1変換または前記第1変換とは異なる第2変換を適用するステップであって、前記第1変換と前記第2変換のうちの少なくとも1つが、前記所定の閾値より小さいサイズを有する低複雑度変換であり、大規模変換とは前記ターゲットデータブロックのブロックサイズの幅または高さのうちの前記少なくとも1つに対応するサイズを有する変換であり、前記低複雑度変換は、変換コアが1と-1のみからなるアダマール変換(Hadamard transform)と、前記変換コアが2の累乗のみからなる所定の変換とのうちの1つであり、
    前記低複雑度変換はスケーリングすることにより、前記低複雑度変換のサイズとは異なる別の変換サイズの同じ量子化スキームを再利用し、前記低複雑度変換のNポイント変換コアが、K*K’が単位行列となる直交変換コアKを使用して64*sqrt(N)でスケーリングされる、ステップとを実行させるための
    コンピュータ・プログラム。
  12. 請求項1~のいずれか1項に記載の方法を、少なくとも1つのメモリと、少なくとも1つのプロセッサとを含む装置に実行させる、
    ことを特徴とするコンピュータ・プログラム。
JP2020563843A 2018-02-05 2019-02-19 復号化または符号化の方法、装置および媒体 Active JP7073536B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201862626539P 2018-02-05 2018-02-05
US62/626,539 2018-02-05
US16/235,395 2018-12-28
US16/235,395 US10812797B2 (en) 2018-02-05 2018-12-28 Method, apparatus and medium for decoding or encoding using a low-complexity transform
PCT/IB2019/051334 WO2019150349A1 (en) 2018-02-05 2019-02-19 Method, apparatus and medium for decoding or encoding

Publications (2)

Publication Number Publication Date
JP2021513302A JP2021513302A (ja) 2021-05-20
JP7073536B2 true JP7073536B2 (ja) 2022-05-23

Family

ID=67475829

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020563843A Active JP7073536B2 (ja) 2018-02-05 2019-02-19 復号化または符号化の方法、装置および媒体

Country Status (6)

Country Link
US (1) US10812797B2 (ja)
EP (1) EP3750318A4 (ja)
JP (1) JP7073536B2 (ja)
KR (1) KR102472689B1 (ja)
CN (1) CN111630864B (ja)
WO (1) WO2019150349A1 (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113411578B (zh) 2016-05-13 2024-04-12 夏普株式会社 图像解码装置及其方法、图像编码装置及其方法
WO2019188466A1 (ja) * 2018-03-30 2019-10-03 ソニー株式会社 画像処理装置および方法
KR102432406B1 (ko) * 2018-09-05 2022-08-12 엘지전자 주식회사 비디오 신호의 부호화/복호화 방법 및 이를 위한 장치
US11418793B2 (en) * 2018-10-04 2022-08-16 Qualcomm Incorporated Adaptive affine motion vector coding
US11128866B2 (en) 2018-10-18 2021-09-21 Qualcomm Incorporated Scans and last coefficient position coding for zero-out transforms
US12095993B2 (en) * 2019-03-10 2024-09-17 Hfi Innovation Inc. Method and apparatus of the quantization matrix computation and representation for video coding
CN113597770B (zh) * 2019-03-12 2023-10-27 Lg 电子株式会社 基于变换的图像编译方法及其装置
EP4459992A1 (en) * 2019-03-15 2024-11-06 Samsung Electronics Co., Ltd. Image encoding method and device, and image decoding method and device
CN113892265A (zh) * 2019-05-30 2022-01-04 夏普株式会社 图像解码装置
MX2022001645A (es) * 2019-08-08 2022-04-06 Lg Electronics Inc Metodo de codificacion de video con base en transformacion, y dispositivo para el mismo.
CN114342398A (zh) * 2019-08-20 2022-04-12 北京字节跳动网络技术有限公司 默认缩放矩阵和用户定义缩放矩阵的使用
US20210084303A1 (en) * 2019-09-12 2021-03-18 Alibaba Group Holding Limited Method and apparatus for coding video data in transform-skip mode
US11206395B2 (en) * 2019-09-24 2021-12-21 Mediatek Inc. Signaling quantization matrix
CN115190306A (zh) * 2021-04-01 2022-10-14 Oppo广东移动通信有限公司 图像处理方法、装置、存储介质及电子设备
CN113286150B (zh) * 2021-05-17 2023-03-24 北京大学深圳研究生院 用于视频编解码的变换编码硬件实现方法、装置及设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120082211A1 (en) 2010-09-30 2012-04-05 Madhukar Budagavi Low Complexity Large Transform
US20140010284A1 (en) 2011-02-25 2014-01-09 Samsung Electronics Co., Ltd. Image transform and inverse transform method, and image encoding and decoding device using same
WO2017039501A1 (en) 2015-09-01 2017-03-09 Telefonaktiebolaget Lm Ericsson (Publ) Spatial improvement of transform blocks

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5128756A (en) * 1990-12-11 1992-07-07 At&T Bell Laboratories High definition television coding arrangement with graceful degradation
US9191260B1 (en) * 1999-04-05 2015-11-17 Lightworks Ii, Llc Method and apparatus to determine a match between signals
US6980596B2 (en) * 2001-11-27 2005-12-27 General Instrument Corporation Macroblock level adaptive frame/field coding for digital video content
US7231090B2 (en) * 2002-10-29 2007-06-12 Winbond Electronics Corp. Method for performing motion estimation with Walsh-Hadamard transform (WHT)
US7379500B2 (en) * 2003-09-30 2008-05-27 Microsoft Corporation Low-complexity 2-power transform for image/video compression
US8155195B2 (en) * 2006-04-07 2012-04-10 Microsoft Corporation Switching distortion metrics during motion estimation
KR101498044B1 (ko) * 2007-01-10 2015-03-05 삼성전자주식회사 매크로 블럭이 적응적으로 부호화된 압축영상에 대한축소영상 생성방법 및 이를 적용한 영상기기
US9288089B2 (en) * 2010-04-30 2016-03-15 Ecole Polytechnique Federale De Lausanne (Epfl) Orthogonal differential vector signaling
US9788019B2 (en) 2011-03-09 2017-10-10 Hfi Innovation Inc. Method and apparatus of transform unit partition with reduced complexity
US20130003856A1 (en) * 2011-07-01 2013-01-03 Samsung Electronics Co. Ltd. Mode-dependent transforms for residual coding with low latency
EP2745519B1 (en) 2011-08-17 2017-09-27 MediaTek Singapore Pte Ltd. Method and apparatus for intra prediction using non-square blocks
KR102061201B1 (ko) * 2012-04-12 2019-12-31 주식회사 골드피크이노베이션즈 블록 정보에 따른 변환 방법 및 이러한 방법을 사용하는 장치
AU2012232992A1 (en) * 2012-09-28 2014-04-17 Canon Kabushiki Kaisha Method, apparatus and system for encoding and decoding the transform units of a coding unit
US20160050440A1 (en) * 2014-08-15 2016-02-18 Ying Liu Low-complexity depth map encoder with quad-tree partitioned compressed sensing
US10306229B2 (en) * 2015-01-26 2019-05-28 Qualcomm Incorporated Enhanced multiple transforms for prediction residual
US20170150176A1 (en) * 2015-11-25 2017-05-25 Qualcomm Incorporated Linear-model prediction with non-square prediction units in video coding
MX2021012481A (es) * 2016-03-16 2022-05-30 Hfi Innovation Inc Metodo y aparato de procesamiento de datos de video con tama?o restringido de bloque en codificacion de video.
US10972733B2 (en) * 2016-07-15 2021-04-06 Qualcomm Incorporated Look-up table for enhanced multiple transform
US10666937B2 (en) * 2016-12-21 2020-05-26 Qualcomm Incorporated Low-complexity sign prediction for video coding
JP6906324B2 (ja) * 2017-02-20 2021-07-21 キヤノン株式会社 符号化装置、符号化方法、及び、プログラム
US10779007B2 (en) * 2017-03-23 2020-09-15 Mediatek Inc. Transform coding of video data
US10659781B2 (en) * 2018-04-02 2020-05-19 Tencent America LLC Concatenated coding units in flexible tree structure
US10536720B2 (en) * 2018-05-07 2020-01-14 Tencent America LLC Method, apparatus and medium for decoding or encoding

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120082211A1 (en) 2010-09-30 2012-04-05 Madhukar Budagavi Low Complexity Large Transform
US20140010284A1 (en) 2011-02-25 2014-01-09 Samsung Electronics Co., Ltd. Image transform and inverse transform method, and image encoding and decoding device using same
WO2017039501A1 (en) 2015-09-01 2017-03-09 Telefonaktiebolaget Lm Ericsson (Publ) Spatial improvement of transform blocks

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Jianle Chen, et al.,Algorithm Description of Joint Exploration Test Model 7 (JEM 7),Joint Video Exploration Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,JVET-G1001-v1,7th Meeting: Torino, IT,2017年08月,pp.28-30
Xiang Li, et al.,Description of SDR video coding technology proposal by Tencent,Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,JVET-J0029-v1,10th Meeting: San Diego, US,2018年04月,pp.5-6

Also Published As

Publication number Publication date
EP3750318A4 (en) 2021-03-31
KR20200134218A (ko) 2020-12-01
JP2021513302A (ja) 2021-05-20
US20190246142A1 (en) 2019-08-08
EP3750318A1 (en) 2020-12-16
CN111630864B (zh) 2024-01-30
KR102472689B1 (ko) 2022-11-30
CN111630864A (zh) 2020-09-04
WO2019150349A1 (en) 2019-08-08
US10812797B2 (en) 2020-10-20

Similar Documents

Publication Publication Date Title
JP7073536B2 (ja) 復号化または符号化の方法、装置および媒体
JP7062788B2 (ja) ビデオを復号する方法、装置およびコンピュータプログラム
JP7053947B2 (ja) ビデオシーケンスを復号する方法、装置及びコンピュータプログラム
JP7213264B2 (ja) デコードまたはエンコードのための方法並びに装置およびコンピュータプログラム
JP7295210B2 (ja) 高速dst-7
JP2022105007A (ja) ビデオ圧縮における複数ラインのフレーム内予測のための方法および装置
JP2022515876A (ja) ビデオデコーディングのための方法、装置、媒体、およびプログラム
JP2021517395A (ja) ビデオ復号方法、装置およびコンピュータプログラム
JP7048755B2 (ja) 柔軟なツリー構造
CN110881127A (zh) 控制残差编码的方法、装置、计算机设备和存储介质
JP2022507314A (ja) 単一レベルの変換分割および適応サブブロック変換を行うための方法、装置、およびプログラム
JP2022515029A (ja) ビデオ復号及び符号化の方法、装置並びにコンピュータプログラム
JP7500732B2 (ja) コンテキスト適応変換セット
JP2022515799A (ja) ビデオ復号の方法および装置、並びにプログラム
CN110784724A (zh) 控制用于解码或编码视频序列的残差编码的方法和装置
CN113316932B (zh) 编解码方法、装置和设备
CN111757122A (zh) 视频解码方法和装置、计算机设备和存储介质
CN113545055A (zh) 视频编解码的方法和装置
CN114365499A (zh) 使用l型划分树的帧内编码
CN118541733A (zh) 位置压缩中的网格顶点分组

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200930

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211026

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220120

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220222

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220330

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220419

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220511

R150 Certificate of patent or registration of utility model

Ref document number: 7073536

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150