JP6336058B2 - ビデオ及び画像符号化及び復号のためのベースカラーインデックスマップモードの機能 - Google Patents

ビデオ及び画像符号化及び復号のためのベースカラーインデックスマップモードの機能 Download PDF

Info

Publication number
JP6336058B2
JP6336058B2 JP2016522740A JP2016522740A JP6336058B2 JP 6336058 B2 JP6336058 B2 JP 6336058B2 JP 2016522740 A JP2016522740 A JP 2016522740A JP 2016522740 A JP2016522740 A JP 2016522740A JP 6336058 B2 JP6336058 B2 JP 6336058B2
Authority
JP
Japan
Prior art keywords
index
value
values
packed
decoder
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
JP2016522740A
Other languages
English (en)
Other versions
JP2016541144A (ja
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.)
Microsoft Corp
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of JP2016541144A publication Critical patent/JP2016541144A/ja
Application granted granted Critical
Publication of JP6336058B2 publication Critical patent/JP6336058B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/124Quantisation
    • H04N19/126Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • 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/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • 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/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • 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/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/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

Description

技術者は、圧縮(ソースコーディング又はソース符号化とも呼ばれる)を使用して、デジタルビデオのビットレートを減少させる。圧縮は、ビデオ情報をより低ビットレート形式に変換することにより、ビデオ情報の格納及び転送コストを減少させる。圧縮解除(復号とも呼ばれる)は、圧縮形式から元の情報のバージョンを再構築する。「コーデック」はエンコーダ/デコーダシステムである。
この20年の間に、ITU-T H.261、H.262(MPEG-2又はISO/TEC13818-2)、H.263及びH.264(MPEG-4 AVC又はISO/IEC14496-10)規格、MPEG-1(ISO/IEC11172-2)及びMPEG-4ビジュアル(ISO/IEC14496-2)規格、並びにSMPTE421M規格を含め、様々なビデオコーデック規格が採用されてきた。より最近では、HEVC規格(ITU-T H.265又はISO/IEC23008-2)も承認されている。(例えばスケーラブルなビデオ符号化/復号のため、サンプルビット深度又はクロマサンプリングレートに関してより高い忠実性のビデオ符号化/復号のため、あるいはマルチビュー符号化/復号のための)HEVC規格に対する拡張が、現在開発中である。ビデオコーデック規格は典型的に、符号化ビデオビットストリームのシンタックスについて、特定の機能が符号化及び復号に使用されるときに、そのビットストリーム内のパラメータを詳述するオプションを定義する。多くの場合において、ビデオコーデック規格はまた、復号の際に適合した結果をもたらすよう、デコーダが実行すべき復号操作に関する詳細も提供する。コーデック規格に加えて、様々な独自のコーデックフォーマットが、符号化ビデオビットストリームのシンタックス及び対応する復号操作について他のオプションを定義する。
ベースカラーインデックスマップ(「BCIM:base color index map」)モードでは、ビデオエンコーダは、ベースカラーを表すインデックス値を使用してサンプル値を符号化する。インデックス値は各々、サンプル値の中の異なる値(「ベースカラー」)に関連付けられる。例えば8×8ブロックが、そのブロックの64個のサンプル値の中で4つの異なる値を有する場合、エンコーダは、4つの異なるインデックス値をこれらの4つのベースカラーに割り当てる。符号化中に、サンプル値は、対応するインデックス値と置換される。エンコーダは、ベースカラーに対するインデックス値のマッピング(「ベースカラーテーブル」)並びにサンプル値を表すインデックス値の配置についてのデータ(「インデックスマップ」)を符号化して伝達(signal)する。デコーダは、ベースカラーへのインデックス値のマッピングを受け取って、復号する。そのマッピングを使用して、デコーダは、インデックスマップ内のインデックス値を、元のサンプル値のベースカラーと置き換える。
BCIMモードは、スクリーンキャプチャコンテンツのように、特定の「人工的に」作成されるビデオコンテンツを符号化するときに有益であり得る。スクリーンキャプチャコンテンツは、典型的に、自然のビデオと比べて、特徴的なサンプル値をほとんど使用しない繰り返しの構造(例えばグラフィクス、テキスト文字)を含む。これは、BCIMについて性能を向上させる機会を提供する。
HEVC規格及びHEVC規格のための何らかの参照ソフトウェアにおける実装のためのBCIMモードの現在の設計は、幾つかの問題を有する。例えばBCIMは、ベースカラーマッピング及びインデックスマップのために多くの新たなシンタックス要素及びシンタックス構造を必要とし、これは実装を複雑にする。また、ベースカラーマッピング及びインデックスマップの符号化/復号に対するアプローチは、既にHEVC規格に含まれているものと異なるツールを使用することがあり、これもやはり実装を複雑にする。また、ベースカラーテーブル及びインデックスマップの符号化は非効率的である。
簡潔に言うと、詳細な説明は、ベースカラーインデックスマップ(「BCIM」)モードにおける技術革新を提示する。例えばこの技術革新の一部は、非BCIMモードにおける変換係数及びBCIMモードにおけるインデックスマップの要素のためにシンタックス構造を再使用することに関する。これは、BCIMモードをサポートするために行われる修正の数を減らすことができる。他の技術革新は、インデックス値のマッピング又はインデックスマップの要素の予測のためのストラテジに関し、これは、BCIMモードの符号化効率を向上させることができる。更に他の技術革新は、BCIMモードにおける例外値の処理に関する。
ベースカラーインデックスマップモードのための本技術革新は、方法の一部として、方法を実行するよう適合されるコンピューティングデバイスの一部として、あるいはコンピューティングデバイスに方法を実行させるためのコンピュータ実行可能命令を格納する有形のコンピュータ読取可能媒体の一部として実装され得る。様々な技術革新を組み合わせて又は別個に使用することができる。
本発明の前述及び他の目的、特徴及び利点は、添付の図面と関連して進められる以下の詳細な説明から、より明らかになるであろう。
幾つかの説明される実施形態を実装することができる例示のコンピューティングシステムの図である。
幾つかの説明される実施形態を実装することができる例示のネットワーク環境の図である。 幾つかの説明される実施形態を実装することができる例示のネットワーク環境の図である。
例示のエンコーダシステムのブロック図であり、このエンコーダシステムとともに、幾つかの説明される実施形態を実装することができる。
例示のデコーダシステムのブロック図であり、このデコーダシステムとともに、幾つかの説明される実施形態を実装することができる。
例示のビデオエンコーダを示す図であり、このビデオエンコーダとともに、幾つかの説明される実施形態を実装することができる。 例示のビデオエンコーダを示す図であり、このビデオエンコーダとともに、幾つかの説明される実施形態を実装することができる。
例示のビデオデコーダを示す図であり、このビデオエンコーダとともに、幾つかの説明される実施形態を実装することができる。
ピクチャのブロックについてのベースカラーインデックスマップモードを示すチャートである。
同じ係数符号化シンタックス構造を使用してインデックスマップの要素又は変換係数を伝達するときの、符号化処理中の例示の処理フローを示す図である。 同じ係数符号化シンタックス構造を使用してインデックスマップの要素又は変換係数を伝達するときの、復号処理中の例示の処理フローを示す図である。
インデックスマップの要素又は変換係数を選択的に表す係数符号化シンタックス構造を使用する、符号化処理の一般化した技術を示すフローチャートである。 インデックスマップの要素又は変換係数を選択的に表す係数符号化シンタックス構造を使用する、復号処理の一般化した技術を示すフローチャートである。
インデックスマップの要素又は変換係数を選択的に表す係数符号化シンタックス構造を使用する、復号処理の例示の技術のフローチャートである。
インデックス値のパック・インデックス値へのマッピングと、パック・インデックス値のインデックス値へのマッピングを示すチャートである。
符号化中にベースカラーのインデックス値をマッピングする一般化した技術を示すフローチャートである。 復号中にベースカラーのインデックス値をマッピングする一般化した技術を示すフローチャートである。
符号化中の減算処理と復号中の加算処理を使用する、インデックスマップの要素の予測を示すチャートである。 符号化中の減算処理と復号中の加算処理を使用する、インデックスマップの要素の予測を示すチャートである。
符号化中にXOR演算を使用するインデックスマップの要素の予測と、復号中にXOR演算を使用する要素の対応する再構築を示すチャートである。
符号化中のインデックスマップの要素の予測のための一般化した技術を示すフローチャートである。 復号中のインデックスマップの要素の予測のための一般化した技術を示すフローチャートである。
符号化中のBCIMモードの例外値及びインデックス値の処理を示すチャートである。 復号中のBCIMモードの例外値及びインデックス値の処理を示すチャートである。
BCIMモードでインデックス値及び例外値を使用して符号化するための一般化した技術を示すフローチャートである。 BCIMモードでインデックス値及び例外値を使用して復号するための一般化した技術を示すフローチャートである。
BCIMモードでインデックス値及び例外値を使用する例示の技術を示すフローチャートである。
詳細な説明は、符号化及び/又は復号中のベースカラーインデックスマップ(「BCIM」)モードの使用における技術革新を提示する。特に、この詳細な説明は、BCIMモードにおけるインデックスマップの要素についてのデータを伝達する代わりに、変換係数に対して適合されるシンタックス構造を再使用し、BCIMモードにいてインデックス値をマッピングし、インデックスマップの要素の予測及びBCIMモードにおける例外値の処理のための技術革新を提示する。これらの技術革新の一部は、BCIMモードをサポートするために行われる修正の数を減らすことによって実装を簡単にする。他の技術革新は、BCIMモードの符号化効率を向上させる。
本明細書で説明される動作は、適所に、ビデオエンコーダ又はビデオデコーダによって実行されるように説明されるが、多くの場合、これらの動作を、別のタイプのメディア処理ツール(例えば画像エンコーダ、画像デコーダ)によって実行することができる。
本明細書で説明される技術革新の一部は、HEVC規格に固有のシンタックス要素及び操作に関連して説明される。例えばHEVC規格のドラフトバージョンのJCTVC-N1005「High Efficiency Video Coding(HEVC)Range Extensions Text Specification:Draft4」、JCTVC-N1005、2013年7月を参照する。本明細書で説明される技術革新を他の規格又フォーマットについて実装することもできる。
より具体的には、本明細書で説明される例に対する様々な代替も可能である。例えば本明細書で説明される方法の一部を、説明される方法の動作の順序を変更することによって、特定の方法の動作を分割し、繰り返し又は省略すること等によって変えることができる。開示される技術の様々な側面を、組み合わせて又は別個に使用することができる。異なる実施形態は、説明される技術革新のうちの1つ又は複数を使用する。本明細書で説明される技術革新の一部は、背景技術において示した問題の1つ又は複数に対処する。典型的に所与の技術/ツールは、必ずしも全ての上記問題を解決するものではない。
I.例示のコンピューティングシステム
図1は、開示される技術革新の幾つかが実装され得る、適切なコンピューティングシステム(100)の一般化した例を図示している。この技術革新は、多様な汎用又は専用のコンピューティングシステムにおいて実装されてよいので、コンピューティングシステム(100)は、使用又は機能の範囲に関して如何なる限定を示唆するようにも意図されていない。
図1に関連して、コンピューティングシステム(100)は、1つ以上の処理ユニット(110、115)及びメモリ(120、125)を含む。処理ユニット(110、115)はコンピュータ実行可能命令を実行する。処理ユニットは、汎用の中央処理ユニット(CPU)、特定用途向け集積回路(ASIC)のプロセッサ又は任意の他のタイプのプロセッサとすることができる。マルチ処理システムでは、マルチ処理ユニットが、コンピュータ実行可能命令を実行して処理能力を向上させる。例えば図1は、中央処理ユニット(110)だけでなく、グラフィック処理ユニット又はコプロセッシングユニット(115)も図示している。有形のメモリ(120、125)は、処理ユニットによってアクセス可能な揮発性メモリ(例えばレジスタ、キャッシュ、RAM)、不揮発性メモリ(例えばROM、EEPROM、フラッシュメモリ等)又はこれらの2つの何らかの組合せであってよい。メモリ(120、125)は、処理ユニットによる実行に適したコンピュータ実行可能命令の形で、BCIMモードのための1つ以上の技術革新を実装するソフトウェア(180)を格納する。
コンピューティングシステムは、更なる特徴を有してもよい。例えばコンピューティングシステム(100)は、記憶装置(140)、1つ以上の入力デバイス(150)、1つ以上の出力デバイス(160)及び1つ以上の通信接続部(170)を含む。バスやコントローラ、ネットワーク等の相互接続機構(図示せず)が、コンピューティングシステム(100)のコンポーネントを相互接続する。典型的に、オペレーティングシステムソフトウェア(図示せず)は、コンピューティングシステム(100)内で実行している他のソフトウェアのための動作環境を提供し、コンピューティングシステム(100)のコンポーネントの動作を調整する。
有形の記憶装置(140)は、取外し可能であっても取外し不可能であってもよく、磁気ディスク、磁気テープ若しくはカセット、CD-ROM、DVD又は情報を格納するのに使用することができ、かつコンピューティングシステム(100)内でアクセス可能な任意の他の媒体を含む。記憶装置(140)は、BCIMモードのための1つ以上の技術革新を実装するソフトウェア(180)のための命令を格納する。
入力デバイス(150)は、キーボード、マウス、ペン又はトラックボール等のタッチ入力デバイス、音声入力デバイス、スキャニングデバイス、あるいはコンピューティングシステム(100)へ入力を提供する別のデバイスであってよい。ビデオの場合、入力デバイス(150)は、カメラ、ビデオカード、TVチューナカード、あるいはアナログ若しくはデジタル形式のビデオ入力を受け入れる同様のデバイス又はコンピューティングシステム(100)へビデオサンプルを読み出すCD-ROM又はCD-RWであってよい。出力デバイス(160)は、ディスプレイ、プリンタ、スピーカ、CDライター又はコンピューティングシステム(100)からの出力を提供する別のデバイスであってよい。
通信接続部(170)は、通信媒体を介して別のコンピューティングエンティティとの通信を可能にする。通信媒体は、コンピュータ実行可能命令、オーディオ又はビデオ入力又は出力、あるいは他のデータ等の情報を変調データ信号内で伝達する。変調データ信号は、信号内に情報を符号化するように設定又は変更された特性の1つ以上を有する信号である。限定ではなく例として、通信媒体は、電気、光学、RF又は他の担体を使用することができる。
本技術革新は、コンピュータ読取可能媒体の一般的な文脈で説明することができる。コンピュータ読取可能媒体は、コンピューティング環境内でアクセスすることができる任意の利用可能な有形の媒体である。限定でなく例として、コンピューティングシステム(100)では、コンピュータ読取可能媒体は、メモリ(120、125)、記憶装置(140)及び上記の任意の組合せを含む。
本技術革新は、プログラムモジュールに含まれるもののように、コンピューティングシステム内で対象の実際のプロセッサ又は仮想プロセッサ上で実行されるコンピュータ実行可能命令の一般的な文脈で説明することができる。一般に、プログラムモジュールは、特定のタスクを実行するか、特定の抽象データタイプを実装する、ルーチン、プログラム、ライブラリ、オブジェクト、クラス、コンポーネント、データ構造等を含む。プログラムモジュールの機能は、様々な実施形態において望まれるように、プログラムモジュール間で組み合わされてもよく、あるいは分割されてもよい。プログラムモジュールのためのコンピュータ実行可能命令は、ローカル又は分散コンピューティングシステム内で実行され得る。
「システム」及び「デバイス」という用語は本明細書では交換可能に使用される。文脈がそうでないことを明らかに示さないに限り、いずれの用語もコンピューティングシステム又はコンピューティングデバイスのタイプに関するいかなる限定も示唆しない。一般に、コンピューティングシステム又はコンピューティングデバイスはローカルとすることも分散させることもでき、専用のハードウェア及び/又は汎用のハードウェアと、本明細書で説明される機能を実装するソフトウェアとの任意の組合せを含むことができる。
また、開示される方法は、これらの開示される方法のいずれかを実行するように構成された専用のコンピューティングハードウェアを使用して実装されることもある。例えば開示される方法は、開示される方法のいずれかを実装するよう特別に設計又は構成される、集積回路(例えばASIC(ASICデジタル信号処理ユニット(「DSP」)等)、グラフィクス処理ユニット(「GPU」)又はフィールドプログラマブルゲートアレイ(「FPGA」)等のプログラマブル論理回路(「PLD」))によって実装され得る。
提示の目的で、詳細な説明は「決定する」及び「使用する」等の用語を使用して、コンピューティングシステムにおけるコンピュータの動作を説明する。これらの用語は、コンピュータによって実行される動作の高レベルな抽象化であり、人間によって実行される動作と混同されるべきではない。これらの用語に対応する実際のコンピュータの動作は実装に応じて変化する。
II.例示のネットワーク環境
図2a及び図2bは、ビデオエンコーダ(220)及びビデオデコーダ(270)を含む例示のネットワーク環境(201、202)を示す。エンコーダ(220)及びデコーダ(270)は、ネットワーク(250)上で適切な通信プロトコルを使用して接続される。ネットワーク(250)は、インターネット又は別のコンピュータネットワークを含むことができる。
図2aに示されるネットワーク環境(201)では、各リアルタイム通信(「RTC」)ツール(210)は、双方向通信のためのエンコーダ(220)とデコーダ(270)の双方を含む。所与のエンコーダ(220)は、HEVC規格、SMPTE 421M規格、ISO-IEC14496-10規格(H.264又はAVCとしても知られる)、別の規格又は独自のフォーマットの変形又は拡張に準拠した出力を生成し、この場合、対応するデコーダ(270)がエンコーダ(220)からの符号化データを受け入れる。双方向通信は、ビデオ会議、ビデオ電話又は他の二者通信シナリオの一部とすることができる。図2aのネットワーク環境(201)は、2つのリアルタイム通信ツール(210)を含むが、ネットワーク環境(201)は代わりに、多者通信に参加する3つ以上のリアルタイム通信ツール(210)を含むことができる。
リアルタイム通信ツール(210)は、エンコーダ(220)による符号化を管理する。図3は、リアルタイム通信ツール(210)に含まれ得る例示のエンコーダシステム(300)を示す。あるいは、リアルタイム通信ツール(210)は別のエンコーダシステムを使用する。リアルタイム通信ツール(210)は、デコーダ(270)による復号も管理する。図4は、リアルタイム通信ツール(210)に含まれ得る例示のデコーダシステム(400)を示す。あるいは、リアルタイム通信ツール(210)は別のデコーダシステムを使用する。
図2bに示されるネットワーク環境(202)では、符号化ツール(212)は、デコーダ(270)を含め複数の再生ツール(214)への配信用にビデオを符号化する、エンコーダ(220)を含む。一方向通信は、ビデオ監視システム、ウェブカメラモニタリングシステム、リモートデスクトップ会議プレゼンテーション、あるいはビデオが符号化され、ある場所から1つ以上の他の場所に送信される他のシナリオのために提供され得る。図2bのネットワーク環境(202)は、2つの再生ツール(214)を含むが、ネットワーク環境(202)は、より多くの又はより少ない再生ツール(214)を含むことができる。一般に、再生ツール(214)は、符号化ツール(212)と通信して、再生ツール(214)が受け取るべきビデオのストリームを決定する。再生ツール(214)は、ストリームを受け取り、受け取った符号化データを適切な期間の間バッファして、復号及び再生を開始する。
図3は、符号化ツール(212)に含まれ得る例示のエンコーダシステム(300)を示す。あるいは、符号化ツール(212)は別のエンコーダシステムを使用する。符号化ツール(212)は、1つ以上の再生ツール(214)との接続を管理するためのサーバ側のコントローラロジックを含むこともできる。図4は、再生ツール(214)に含まれ得る例示のデコーダシステム(400)を示す。あるいは、再生ツール(214)は別のデコーダシステムを使用する。再生ツール(214)は、符号化ツール(212)との接続を管理するためのクライアント側のコントローラロジックを含むこともできる。
III.例示のエンコーダシステム
図3は、例示のエンコーダシステム(300)のブロック図であり、このエンコーダシステム(300)とともに、幾つかの説明される実施形態が実装され得る。エンコーダシステム(300)は、リアルタイム通信用の低遅延符号化モード、トランスコーディングモード及びファイル又はストリームからのメディア再生のための標準の符号化モードを含め複数の符号化モードのいずれかで動作する能力を有する、汎用の符号化ツールとすることができ、あるいは1つのそのような符号化モード用に適合される専用の符号化ツールとすることもできる。エンコーダシステム(300)は、オペレーティングシステムモジュールとして、アプリケーションライブラリとして、あるいはスタンドアロンアプリケーションとして実装され得る。全体として、エンコーダシステム(300)は、ビデオソースからのソースビデオフレーム(311)のシーケンスを受け取り、チャネル(390)への出力として符号化データを生成する。チャネルへ出力される符号化データは、BCIMモードを使用して符号化されるコンテンツを含むことができる。
ビデオソース(310)は、カメラ、チューナカード、記憶媒体又は他のデジタルビデオソースとすることができる。ビデオソース(310)は、例えば30フレーム毎秒のフレームレートでビデオフレームのシーケンスを生成する。本明細書で使用されるとき、「フレーム」という用語は、ソース、符号化又は再構築された画像データを指す。プログレッシブビデオでは、フレームはプログレッシブビデオフレームである。インタレースビデオの場合、例示の実施形態では、インタレースビデオフレームは、符号化の前にデインタレースされる。あるいは、2つの相補的なインタレースビデオフィールドが、デインタレースビデオフレーム又は別個のフィールドとして符号化される。プログレッシブビデオフレームを示すことに加えて、「フレーム」又は「ピクチャ」は、単一のペアでないビデオフィールド、ビデオフィールドの相補的なペア、所与の時間のビデオオブジェクトを表すビデオオブジェクト面又は大きな画像の関心領域を示すことができる。ビデオオブジェクト面又は領域は、あるシーンの複数のオブジェクト又は領域を含む大きな画像の一部とすることができる。
到着ソースフレーム(311)は、複数のフレームバッファ記憶エリア(321、322...32n)を含む、ソースフレーム一時メモリ記憶エリア(320)に格納される。フレームバッファ(321、322等)は、ソースフレーム記憶エリア(320)内に1つのソースフレームを保持する。ソースフレーム(311)の1つ以上がフレームバッファ(321、322等)内に格納された後、フレームセレクタ(330)は、ソースフレーム記憶エリア(32)から個々のソースフレームを周期的に選択する。エンコーダ(340)への入力のためにフレームセレクタ(330)によってフレームが選択される順序は、フレームがビデオソース(310)によって生成される順序と異なってよく、例えばあるフレームは、時間的に後方予測を容易にするために先行し得る。エンコーダ(340)の前に、エンコーダシステム(300)は、符号化の前に、選択されたフレーム(331)の事前処理(例えばフィルタリング)を実行するプリプロセッサ(図示せず)を含むことができる。事前処理は、符号化のために第1の及び第2のコンポーネントへの色空間変換も含むことができる。典型的に、符号化の前に、ビデオはYUI等の色空間へ変換されており、この色空間において、ルマ(Y)コンポーネントのサンプル値は、明るさ又は強さの値を表し、クロマ(U、V)コンポーネントのサンプル値は、色差値(color-difference value)を表す。クロマサンプル値は、より低いクロマサンプリングレート(例えばYUV4:2:0フォーマットの)へサブサンプリングされてよく、あるいはクロマサンプル値はルマサンプル値と同じ解像度(例えばYUV4:4:4フォーマット)を有してもよい。あるいは、ビデオを別のフォーマット(例えばRGB4:4:4フォーマット)で符号化することもできる。
エンコーダ(340)は、選択されたフレーム(331)を符号化して符号化フレーム(341)を生成し、また、メモリ管理制御操作(「MMCO:memory management control operation」)信号(342)又は参照ピクチャセット(「RPS:reference picture set」)情報も生成する。現在のフレームが符号化された最初のフレームでない場合、その符号化処理を実行するとき、エンコーダ(340)は、復号フレーム一時メモリ記憶エリア(360)内に格納されている1つ以上の以前に符号化/復号されたフレーム(369)を使用してよい。そのような格納済みの復号フレーム(369)は、現在のソースフレーム(331)のコンテンツのインターフレーム予測の参照フレームとして使用される。一般に、エンコーダ(340)は、タイルへの区分、イントラ予測推定及び予測、動き推定及び補償、周波数変換、量子化及びエントロピー符号化のような、符号化タスクを実行する複数の符号化モジュールを含む。エンコーダ(340)によって実行される正確な操作は、圧縮フォーマットに応じて変化し得る。出力の符号化データのフォーマットは、HEVCフォーマット、Windows(登録商標)メディアビデオフォーマット、VC-1フォーマット、MPEG-xフォーマット(例えばMPEG-1、MPEG-2又はMPEG-4)、H.26xフォーマット(例えばH.261、H.262、H.263、H.264)又は別のフォーマットの変形又は拡張とすることができる。
エンコーダ(340)は、フレームを、同じサイズ又は異なるサイズの複数のタイルに区分することができる。例えばエンコーダ(340)は、フレームを、タイル境界により、フレーム内のタイルの水平境界及び垂直境界を定義するタイル行及びタイル列に沿って分割し、この場合、各タイルは矩形領域である。タイルはしばしば、並行処理のためのオプションを改善するのに使用される。フレームを1つ以上のスライスとして編成することもでき、この場合、1つのスライスは、全体のフレームとすることも、フレームの領域とすることもできる。スライスを、フレーム内の他のスライスと独立に復号することができ、これはエラー耐性を改善する。スライス又はタイルのコンテンツは更に、符号化及び復号のために、サンプルのブロック又は他のセットに更に区分される。
HEVC規格によるシンタックスでは、エンコーダは、フレーム(又はスライス若しくはタイル)のコンテンツを符号化ツリー・ユニットに分割することができる。符号化ツリー・ユニット(「CTU:coding tree unit」)は、ルマ符号化ツリー・ブロック(「CTB:coding tree block」)として編成されるルマサンプル値と、2つのクロマCTBとして編成される、対応するクロマサンプル値とを含む。CTU(及びそのCTB)のサイズは、エンコーダによって選択され、例えば64×64、32×32又は16×16サンプルとすることができる。CTUは1つ以上の符号化ユニットを含む。符号化ユニット(「CU:coding unit」)は、1つのルマ符号化ブロック(「CB:coding block」)と、2つの対応するクロマCBとを有する。例えば64×64ルマCTBと2つの64×64クロマCTBとを有するCTU(YUV4:4:4フォーマット)を、各CUが32×32ルマCBと2つの32×32クロマCBとを有し、各CUが場合によっては、より小さなCUに更に分割される、4つのCUに分割することができる。あるいは、別の例として、64×64ルマCTBと2つの32×32クロマCTBを有するCTU(YUV4:2:0フォーマット)を、各CUが32×32ルマCBと2つの16×16クロマCBとを有し、各CUが場合によっては、より小さなCUに更に分割される、4つのCUに分割することができる。最小許容サイズのCU(例えば8×8、16×16)をビットストリーム内で伝達することができる。
一般に、CUは、インター又はイントラ等の予測モードを有する。CUは、(予測モード詳細等のような)予測情報の伝達及び/又は予測処理のために1つ以上の予測ユニットを含む。予測ユニット(「PU:prediction unit」)は、ルマ予測ブロック(「PB:prediction block」)と2つのクロマPBを有する。イントラ予測されるCUでは、PUは、CUが最小のサイズ(例えば8×8)でなければ、CUと同じサイズを有する。この場合、CUを、4つのより小さいPU(例えば最小のCUのサイズが8×8の場合は、それぞれ4×4)に分割することができ、あるいはPUは、CUのシンタックス要素によって示されるように、最小のCUサイズを有することができる。CUは、残差符号化/復号のために1つ以上の変換ユニットも有し、この場合、変換ユニット(「TU:transform unit」)は、変換ブロック(「TB:transform block」)と2つのクロマTBを有する。イントラ予測CU内のPUは、(サイズがPUに等しい)単一のTU又は複数のTUを含み得る。本明細書で使用されるとき、「ブロック」という用語は、コンテキストに応じて、CB、PB、TB又は他のセットのサンプル値を示すことができる。エンコーダは、ビデオをどのようにCTU、CU、PU、TU等に区分すべきかを決める。
図3に戻ると、エンコーダは、フレーム(331)内の他の以前に再構築されたサンプル値からの予測に関して、ソースフレーム(331)のイントラ符号化ブロックを表す。ブロックについてのイントラ空間予測では、イントラピクチャ推定器は、隣接する再構築されたサンプル値の、ブロックへの外挿(extrapolation)を推定する。イントラ予測推定器は、エントロピー符号化される予測情報(イントラ空間予測についての予測モード(方向))を出力する。イントラ予測の予測器は、予測情報を適用して、イントラ予測値を決定する。BCIMモードでは、エンコーダは、インデックス値についてのベースカラーテーブルを使用し、かつインデックスマップの要素を使用して、ブロックのサンプル値のうちのベースカラーのインデックス値によりイントラ符号化ブロックを表す。エンコーダは、下述されるように、インデックス値を使用せずに、BCIMモードのブロック内の例外値を表すこともできる。
エンコーダ(340)は、参照フレームからの予測に関して、ソースフレーム(331)のインター符号化された予測ブロックを表す。動き推定器は、1つ以上の参照フレーム(369)に関して、ブロックの動きを推定する。複数の参照フレームを使用するとき、複数の参照フレームは、異なる時間方向からのものとすることも、同じ時間方向からのものとすることもできる。動き補償される予測参照領域は、現在のフレームのサンプルのブロックについて動き補償された予測値を生成するのに使用される、参照フレーム内のサンプルの領域である。動き推定器は、動きベクトル情報等のような、エントロピー符号化される動き情報を出力する。動き補償器は、動きベクトルを参照フレーム(369)に適用して、動き補償された推定値を決定する。
非BCIMモードでは、エンコーダは、ブロックの予測値(イントラ又はインター)と対応する元の値との間の差(もしあれば)を決定する。これらの予測残差値は、周波数変換、量子化及びエントロピー符号化を使用して更に符号化される。例えばエンコーダ(340)は、ピクチャ、タイル、スライス及び/又はビデオの他の部分について量子化パラメータ(「QP」)の値を設定し、これに応じて変換係数を量子化する。BCIMモードでは、エンコーダは、例外値を処理するときの特定の量子化操作を除いて、変換及び量子化操作をスキップする。
エンコーダ(340)のエントロピーコーダは、量子化された変換係数の値だけでなく、特定のサイド情報(例えば動きベクトル情報、QP値、モード決定、パラメータ選択)も圧縮する。特に、エントロピーコーダは、係数符号化シンタックス構造を使用して、インデックスマップの要素のデータを圧縮することができる。典型的なエントロピー符号化技術には、Exp-Golomb符号化、算術符号化、差分符号化、ハフマン符号化、ランレングス符号化、可変長−可変長(「V2V」)符号化、可変長−固定長(「V2F」)符号化、LZ符号化、ディクショナリ符号化、PIPE(probability interval partitioning entropy)符号化及び上記の組合せが含まれる。エントロピーコーダは、異なる種類の情報に異なる符号化技術を使用することができ、特定の符号化技術における複数のコードテーブルの中から選択することができる。
符号化フレーム(341)及びMMCO/RPS情報(342)は、復号処理エミュレータ(350)によって処理される。復号処理エミュレータ(350)は、例えばタスクを復号して参照フレームを再構築する、デコーダの機能の一部を実装する。復号処理エミュレータ(350)はMMCO/RPS情報(342)を使用して、符号化すべき後続フレームのインターフレーム予測における参照フレームとして使用するために、所与の符号化フレーム(341)を再構築して格納する必要があるかどうかを判断する。MMCO/RPS情報(342)が、符号化フレーム(341)を格納する必要があることを示す場合、復号処理エミュレータ(350)は、符号化フレーム(341)を受け取り、対応する復号フレーム(351)を生成するデコーダによって構築されるであろう、復号処理をモデル化する。そのために、エンコーダ(340)が、復号フレーム記憶エリア(360)内に格納されている復号フレーム(369)を使用しているとき、復号処理エミュレータ(350)は、復号処理の一部として、記憶エリア(360)からの復号フレーム(369)も使用する。
復号フレーム一時メモリ記憶エリア(360)は、複数のフレームバッファ記憶エリア(361、362...36n)を含む。復号処理エミュレータ(350)は、参照フレームとしての使用のためにエンコーダ(340)によってもはや必要とされないフレームを有する任意のフレームバッファ(361、362等)を識別するために、MMCO/RPS情報(342)を使用して記憶エリア(360)のコンテンツを管理する。復号処理をモデル化した後、復号処理エミュレータ(350)は、新たに復号されたフレーム(351)を、この方法で識別されたフレームバッファ(361、362等)内に格納する。
符号化フレーム(341)及びMMCO/RPS情報(342)は、一時的な符号化データエリア(370)にバッファされる。符号化データエリア(370)内に集約される符号化データは、基本的な符号化ビデオビットストリーム(elementary coded video bitstream)のシンタックスの一部として、1つ以上のピクチャについての符号化データを含む。符号化データエリア(370)に集約される符号化データは、(例えば1つ以上の補足エンハンスメント情報(「SEI:supplemental enhancement information」)メッセージ又はビデオ使用情報「VUI:video usability information」メッセージ内の1つ以上のパラメータとして)、符号化ビデオデータに関連するメディアメタデータを含むこともできる。
一時的な符号化データエリア(370)からの集約データ(371)は、チャネルエンコーダ(380)によって処理される。チャネルエンコーダ(380)は、(例えばISO/IEC 13818-1のようなメディアストリーム多重化フォーマットに従って)集約データをメディアストリームとしての伝送用にパケット化することができ、この場合、チャネルエンコーダ(380)は、シンタックス要素を、メディア伝送ストリームのシンタックスの一部として追加することができる。あるいは、チャネルエンコーダ(380)は、(例えばISO/IEC 14496-12のようなメディアコンテナフォーマットに従って)集約データをファイルとしての記憶用に編成することができ、この場合、チャネルエンコーダ(380)は、シンタックス要素を、メディア記憶ファイルのシンタックスの一部として追加することができる。あるいは、より一般的に、チャネルエンコーダ(380)は、1つ以上のメディアシステム多重化プロトコル又はトランスポートプロトコルを実装することができ、この場合、チャネルエンコーダ(380)は、シンタックス要素を、プロトコルのシンタックスの一部として追加することができる。チャネルエンコーダ(380)は、出力をチャネル(390)に提供し、このチャネルは、記憶装置、通信接続又は出力用の別のチャネルを表す。
IV.例示のデコーダシステム
図4は、例示のデコーダシステム(400)のブロック図であり、このデコーダシステム(400)とともに、幾つかの説明される実施形態が実装され得る。デコーダシステム(400)は、リアルタイム通信用の低遅延復号モード、ファイル又はストリームからのメディア再生のための標準復号モードを含め、複数の復号モードのいずれかで動作する能力を有する、汎用の復号ツールとすることができ、あるいは1つのそのような復号モードに適合される専用の復号ツールとすることもできる。デコーダシステム(400)は、オペレーティングシステムモジュールとして、アプリケーションライブラリとして、あるいはスタンドアロンアプリケーションとして実装され得る。全体として、デコーダシステム(400)は、チャネル(410)から符号化データを受け取り、出力宛先(490)への出力として再構築フレームを生成する。符号化データは、BCIMモードを使用して符号化されたコンテンツを含むことができる。
デコーダシステム(400)はチャネル(410)を含み、このチャネル(410)は、記憶装置、通信接続又は入力としての符号化データのための別のチャネルを表すことができる。チャネル(410)は、チャネル符号化された符号化データを生成する。チャネルデコーダ(420)は、符号化データを処理することができる。例えばチャネルデコーダ(420)は、(例えばISO/IEC 13818-1のようなメディアストリーム多重化フォーマットに従って)メディアストリームとしての伝送用に集約されているデータをパケット化解除することができ、この場合、チャネルデコーダ(420)は、メディア伝送ストリームのシンタックスの一部として追加されたシンタックス要素を解析することができる。あるいは、チャネルデコーダ(420)は、(例えばISO/IEC 14496-12のようなメディアコンテナフォーマットに従って)ファイルとしての記憶用に集約されている符号化ビデオデータを分けることができ、この場合、チャネルデコーダ(420)は、メディア記憶ファイルのシンタックスの一部として追加されたシンタックス要素を解析することができる。あるいは、より一般的に、チャネルデコーダ(420)は、1つ以上のメディアシステム多重化解除プロトコル又はトランスポートプロトコルを実装することができ、この場合、チャネルデコーダ(420)は、プロトコルのシンタックスの一部として追加されたシンタックス要素を解析することができる。
チャネルデコーダ(420)から出力される符号化データ(421)は、十分な量のそのようなデータを受け取るまで、一時的な符号化データエリア(430)に格納される。符号化データ(421)は、符号化フレーム(431)及びMMCO/RPS情報(432)を含む。符号化データエリア(430)内の符号化データ(421)は、基本的な符号化ビデオビットストリームのシンタックスの一部として、1つ以上のピクチャについての符号化データを含む。符号化データエリア(430)内の符号化データ(421)は、(例えば1つ以上のSEIメッセージ又はVUIメッセージ内の1つ以上のパラメータとして)符号化ビデオデータに関連するメディアメタデータを含むこともできる。
一般的に、符号化データエリア(430)は、符号化データ(421)がデコーダ(450)によって使用されるまで、符号化データ(421)を一時的に格納する。この時点で、符号化フレーム(431)及びMMCO/RPS情報(432)の符号化データが、符号化データエリア(430)からデコーダに転送される。復号処理を継続すると、新たな符号化データが符号化データエリア(430)に追加され、符号化データエリア(430)内に残っている最も古い符号化データがデコーダ(450)に転送される。
デコーダ(450)は周期的に、符号化フレーム(431)を復号して、対応する復号フレーム(451)を生成する。必要に応じて、その復号処理を実行するとき、デコーダ(450)は、1つ以上の以前に復号されたフレーム(469)を、インターフレーム予測のための参照フレームとして使用してよい。デコーダ(450)は、そのような以前に復号されたフレーム(469)を復号フレーム一時メモリ記憶エリア(460)から読み出す。一般に、デコーダ(450)は、エントロピー復号、逆量子化、逆周波数変換、イントラ予測、動き補償及びタイルのマージといった、復号タスクを実行する複数の復号モジュールを含む。デコーダ(450)によって実行される正確な操作は、圧縮フォーマットに応じて変化し得る。
例えばデコーダ(450)は、圧縮フレーム又はフレームのシーケンスについての符号化データを受け取り、復号フレーム(451)を含む出力を生成する。デコーダ(450)では、バッファが、圧縮フレームについての符号化データを適切な時に受け取り、受け取った符号化データをエントロピーデコーダに利用可能にする。エントロピーデコーダは、典型的にはエンコーダで実行されたエントロピー符号化の逆を適用して、エントロピー符号化された量子化データ並びにエントロピー符号化されたサイド情報をエントロピー復号する。動き補償器は、動き情報を1つ以上の参照フレームに適用して、再構築されているフレームの任意のインター符号化されたブロックについて、動き補償された予測値を形成する。イントラ予測モジュールは、現在のブロック値のサンプル値を、隣接する以前に再構築されたサンプル値から空間的に予測することができる。BCIMモードでは、デコーダは、インデックス値のベースカラーテーブルを使用し、かつインデックスマップの要素を使用して、ブロックのサンプル値のうちのベースカラーのインデックス値により、イントラ符号化ブロックを再構築する。
非BCIMモードでは、デコーダ(450)は、予測残差も再構築する。逆量子化器は、エントロピー復号されたデータを量子化する。例えばデコーダ(450)は、ビットストリーム内のシンタックス要素に基づいて、ピクチャ、タイル、スライス及び/又はビデオの他の部分についてQPの値を設定し、それに応じて変換係数を逆量子化する。逆周波数変換器は、量子化された周波数領域データを、空間領域情報に変換する。BCIMモードでは、デコーダは、例外値を復号するときの特定の逆量子化操作を除いて、逆量子化及び逆周波数変換操作をスキップする。インター予測ブロックでは、デコーダ(450)は、再構築された予測残差を動き補償された予測値と組み合わせる。デコーダ(450)は同様に、予測残差をイントラ予測からの予測値と組み合わせることができる。ビデオデコーダ(450)における動き補償のループは、復号フレーム(451)におけるブロック境界の行及び/又は列にわたる不連続性を平滑化する適応的デブロッキングフィルタを含む。
復号フレーム一時メモリ記憶エリア(460)は、複数のフレームバッファ記憶エリア(461、462...46n)を含む。復号フレーム記憶エリア(460)は、復号ピクチャのバッファの例である。デコーダ(450)はMMCO/RPS情報(432)を使用してフレームバッファ(461、462等)を識別し、このフレームバッファは復号フレーム(451)を格納することができる。デコーダ(450)は、そのフレームバッファ内に復号フレーム(451)を格納する。
出力シーケンサ(480)は、MMCO/RPS情報(432)を使用して、出力順で生成すべき次のフレームが、復号フレーム記憶エリア(460)内で利用可能になる時を識別する。出力順で生成すべき次のフレーム(481)が、復号フレーム記憶エリア(460)内で利用可能になると、次のフレーム(481)は、出力シーケンサ(480)によって読み取られて、出力宛先(490)(例えばディスプレイ)へ出力される。一般に、フレームが出力シーケンサ(480)によって復号フレーム記憶エリア(460)から出力される順序は、フレームがデコーダ(450)によって復号される順序と異なってよい。
V.例示のビデオエンコーダ
図5a及び図5bは、一般化したビデオエンコーダ(500)のブロック図であり、このビデオエンコーダとともに、幾つかの説明される実施形態が実装され得る。エンコーダ(500)は、現在のピクチャを含むビデオピクチャのシーケンスを、入力ビデオ信号(505)として受け取り、出力として符号化ビデオビットストリーム(595)内に符号化データを生成する。
エンコーダ(500)は、ブロックベースであり、実装に依存するブロックフォーマットを使用する。ブロックは、異なる段階、例えば予測、周波数変換及び/又はエントロピー符号化段階等に更に細分され得る。例えばピクチャは、64×64ブロック、32×32ブロック又は16×16ブロックに分割され、これは次に、符号化及び復号のためにサンプル値のより小さいブロックに分割され得る。HEVC規格の符号化の実装では、エンコーダは、ピクチャをCTU(CTB)、CU(CB)、PU(PB)及びTU(TB)に分ける。
エンコーダ(500)は、イントラピクチャ符号化及び/又はインターピクチャ符号化を使用してピクチャを圧縮する。エンコーダ(500)のコンポーネントの多くは、イントラピクチャ符号化及びインターピクチャ符号化の双方に使用される。これらのコンポーネントによって実行される正確な操作は、圧縮されている情報のタイプに応じて異なり得る。
タイル化モジュール(510)は任意選択により、ピクチャを同じサイズ又は異なるサイズの複数のタイルに分割する。例えばタイル化モジュール(510)は、ピクチャを、ピクチャ境界により、ピクチャ内のタイルの水平境界及び垂直境界を定義するタイル行及びタイル列に沿って分割し、この場合、各タイルは矩形領域である。タイル化モジュール(510)は、これらのタイルを1つ以上のタイルセットにグループ化することができ、この場合、1つのタイルセットは、上記タイルのうちの1つ以上のタイルのグループである。
一般的な符号化コントロール(520)は、エンコーダ(500)の様々なモジュールから入力ビデオ信号(505)のピクチャ及びフィードバック(図示せず)を受け取る。全体的に、一般的な符号化コントロール(520)は、制御信号(図示せず)を他のモジュール(タイル化モジュール(510)、変換器/スケーラ/量子化器(530)、スケーラ/逆変換器(535)、イントラピクチャ推定器(540)、動き推定器(550)及びイントラ/インタースイッチ等)に提供し、符号化するパラメータを符号化中に設定及び変更する。特に、一般的な符号化コントロール(520)は、符号化中にBCIMモードを使用すべきかどうか及びどのように使用すべきかを決定することができる。一般的な符号化コントロール(520)は、例えば速度ひずみ分析(rate-distortion analysis)を実行して、符号化中に中間結果を評価することもできる。一般的な符号化コントロール(520)は、符号化中に行われた決定を示す一般的な制御データ(522)を生成し、これにより、対応するデコーダは、整合性のある決定を行うことができる。一般的な制御データ(522)は、ヘッダフォーマッタ/エントロピーコーダ(590)に提供される。
現在のピクチャがインターピクチャ予測を使用して予測される場合、動き推定器(550)は、1つ以上の参照ピクチャに関して入力ビデオ信号(505)の現在のピクチャのサンプル値のブロックの動きを推定する。復号ピクチャバッファ(570)は、1つ以上の再構築された、以前に符号化されたピクチャを参照ピクチャとしての使用のためにバッファする。複数の参照ピクチャが使用されるとき、複数の参照ピクチャは、異なる時間方向又は同じ時間方向からのものとすることができる。動き推定器(550)は、サイド情報動きデータ(552)として、動きベクトルデータ及び参照ピクチャ選択データ等を生成する。動きデータ(552)は、ヘッダフォーマッタ/エントロピーコーダ(590)だけでなく、動き補償器(555)にも提供される。
動き補償器(555)は、動きベクトルを、復号ピクチャバッファ(570)からの再構築された参照ピクチャに適用する。動き補償器(555)は、現在のピクチャについて動き補償された予測を生成する。
エンコーダ(500)内の別個の経路において、イントラピクチャ推定器(540)は、入力ビデオ信号(505)の現在のピクチャのサンプル値のブロックについて、どのようにイントラピクチャ予測を実行すべきかを決定する。現在のピクチャは、イントラピクチャ符号化を使用して、全体又は部分的に符号化され得る。イントラ空間予測について、現在のピクチャの再構築(538)の値を使用して、イントラピクチャ推定器(540)は、現在のピクチャの、隣接する以前に再構築されたサンプル値を、どのように空間的に予測すべきかを決定する。
BCIMモードでは、エンコーダ(500)は、インデックス値についてのインデックスマップを使用し、かつインデックスマップの要素を使用して、ブロックのサンプル値のうちベースカラーのインデックス値を用いて、イントラ符号化ブロックを表す。
イントラピクチャ推定器(540)は、サイド情報として、イントラ予測が空間予測又はBCIMモードを使用するかどうかを示す情報(例えばイントラブロックごと又は特定の予測モード方向のイントラブロックごとのフラグ値)や(例えば特定の空間予測について)予測モード方向を示す情報等のような、イントラ予測データ(542)を生成する。イントラ予測データ(542)は、ヘッダフォーマッタ/エントロピーコーダ(590)並びにイントラピクチャ予測器(545)に提供される。イントラ予測データ(542)に従って、イントラピクチャ予測器(545)は、現在のピクチャの隣接する以前に再構築されたサンプル値から、現在のピクチャの現在のブロックのサンプル値を空間的に予測するか、BCIMモードのブロックのサンプル値を再構築する。
非BCIMモードでは、イントラ/インタースイッチは、動き補償された予測又はイントラピクチャ予測の値を、所与のブロックについての予測(558)として使用するために選択する。非BCIMモードでは、予測(558)のブロックと、入力ビデオ信号(505)の元の現在のピクチャの対応する部分との間の差(もしあれば)が、残差(518)の値を提供する。現在のピクチャの再構築の間、再構築された残差値を、予測(558)と組み合わせて、ビデオ信号(505)からの元のコンテンツの再構築(538)を生成する。しかしながら、ロスのある圧縮では、一部の情報が依然としてビデオ信号(505)から失われる。
変換器/スケーラ/量子化器(530)では、非BCIMモードのために、周波数変換器が、空間領域のビデオ情報を周波数領域(すなわち、スペクトル、変換)データに変換する。ブロックベースのビデオ符号化のために、周波数変換器は、離散コサイン変換(「DCT」)、その整数近似又は別のタイプの順方向変換を予測残差データのブロック(例えば予測(558)がヌルの場合はサンプル値データ)に適用し、周波数変換係数のブロックを生成する。エンコーダ(500)は、そのような変換ステップをスキップすることを指示することもできる。スケーラ/量子化器は、変換係数をスケールして量子化する。例えば量子化器は、フレームごとに、タイルごとに、スライスごとに、ブロックごとに又は他の単位で変化するステップサイズで、非均一のスケーラ量子化を周波数領域データに適用する。量子化された変換係数データ(532)は、ヘッダフォーマッタ/エントロピーコーダ(590)へ提供される。
スケーラ/逆変換器(535)では、非BCIMモードのために、スケーラ/逆量子化器が、量子化された変換係数に対して逆スケーリング及び逆量子化を実行する。逆周波数変換器は、逆周波数変換を実行して、再構築された予測残差及びサンプル値のブロックを生成する。エンコーダ(500)は、再構築された残差(例えば動き補償された予測値、イントラピクチャ予測値)を予測(558)の値と組み合わせて、再構築(538)を形成する。
イントラピクチャ予測のために、再構築(538)の値を、イントラピクチャ推定器(540)及びイントラピクチャ予測器(545)へ供給することができる。また、再構築(538)の値を、後続のピクチャの動き補償された予測に使用することができる。再構築(538)の値を更にフィルタすることができる。フィルタリングコントロール(560)は、ビデオ信号(505)の所与のピクチャについて、デブロックフィルタリング及びサンプル適応型オフセット(SAO:sample adaptive offset)フィルタリングを再構築(538)の値に対してどのように実行すべきかを決定する。フィルタリングコントロール(560)は、ヘッダフォーマッタ/エントロピーコーダ(590)及びマージャ/フィルタ(565)へ提供されるフィルタ制御データ(562)を生成する。
マージャ/フィルタ(565)では、エンコーダ(500)は、異なるタイルからのコンテンツをマージして、ピクチャの再構築バージョンにする。エンコーダ(500)は、フレーム内の境界にわたる不連続性を適応的に平滑化するよう、フィルタ制御データ(562)に従って、デブロックフィルタリング及びSAOフィルタリングを選択的に実行する。タイル境界は、エンコーダ(500)の設定に応じて選択的に、フィルタされることも、全くフィルタされないこともあり、エンコーダ(500)は、そのようなフィルタリングが適用されたか否かを示すシンタックスを符号化ビットストリームにおいて提供することができる。復号ピクチャバッファ(570)は、後続の動き補償された予測で使用するために再構築された現在のピクチャをバッファする。
ヘッダフォーマッタ/エントロピーコーダ(590)は、一般的な制御データ(522)、量子化された変換係数データ(532)、イントラ予測データ(542)及びパック・インデックス値、動きデータ(552)及びフィルタ制御データ(562)をフォーマット及び/又はエントロピー符号化する。例えばヘッダフォーマッタ/エントロピーコーダ(590)は、係数符号化シンタックス構造の様々なシンタックス要素のエントロピー符号化のために、コンテキスト適応型二値算術符号化方式(「CABAC:context-adaptive binary arithmetic coding」)を使用する。
ヘッダフォーマッタ/エントロピーコーダ(590)は、符号化ビデオビットストリーム(595)で符号化データを提供する。符号化ビデオビットストリーム(595)のフォーマットは、HEVCフォーマット、Windows(登録商標)メディアビデオフォーマット、VC-1フォーマット、MPEG-xフォーマット(例えばMPEG-1、MPEG-2又はMPEG-4)、H.26xフォーマット(例えばH.261、H.262、H.263、H.264)又は別のフォーマットの変形又は拡張とすることができる。
所望の圧縮の実装及びタイプに応じて、エンコーダのモジュールを追加し、省略し、複数のモジュールへ分割し、他のモジュールと組み合わせ、かつ/又は同様のモジュールと置換することができる。代替的な実施形態では、異なるモジュール及び/又はモジュールの他の構成を用いるエンコーダは、説明される技術の1つ以上を実行する。エンコーダの具体的な実施形態は、典型的にエンコーダ(500)の変形又は補足バージョンを使用する。エンコーダ(500)内のモジュール間に示される関係は、エンコーダ内における情報の一般的な流れを示し、他の関係は簡潔性のために示されていない。
VI.例示のビデオデコーダ
図6は、一般化されたデコーダ(600)のブロック図であり、このデコーダとともに幾つかの説明される実施形態が実装され得る。デコーダ(600)は、符号化ビデオビットストリーム(605)内の符号化データを受け取り、再構築ビデオ(695)についてのピクチャを含む出力を生成する。符号化ビデオビットストリーム(605)のフォーマットは、HEVCフォーマット、Windows(登録商標)メディアビデオフォーマット、VC-1フォーマット、MPEG-xフォーマット(例えばMPEG-1、MPEG-2又はMPEG-4)、H.26xフォーマット(例えばH.261、H.262、H.263、H.264)又は別のフォーマットの変形又は拡張とすることができる。
デコーダ(600)は、ブロックベースであり、実装に依存するブロックフォーマットを使用する。ブロックは、異なる段階等に更に細分され得る。例えばピクチャは、64×64ブロック、32×32ブロック又は16×16ブロックに分割され、これは次にサンプル値のより小さいブロックに分割され得る。HEVC規格の復号の実装では、ピクチャがCTU(CTB)、CU(CB)、PU(PB)及びTU(TB)に分けられる。
デコーダ(600)は、イントラピクチャ復号及び/又はインターピクチャ復号を使用してピクチャを圧縮解除する。デコーダ(600)のコンポーネントの多くは、イントラピクチャ復号及びインターピクチャ復号の双方に使用される。これらのコンポーネントによって実行される正確な操作は、圧縮解除されている情報のタイプに応じて異なり得る。
バッファは、符号化ビデオビットストリーム(605)で符号化データを受け取り、受け取った符号化データをパーサ/エントロピーデコーダ(610)に利用可能にする。パーサ/エントロピーデコーダ(610)は、典型的にはエンコーダ(500)で実行されたエントロピー符号化の逆(例えばコンテキスト適応型二値算術復号)を適用して、エントロピー符号化された量子化データをエントロピー復号する。例えばパーサ/エントロピーデコーダ(610)は、係数符号化シンタックス構造の様々なシンタックス要素のエントロピー復号のために、コンテキスト適応型二値算術符号化方式を使用する。解析及びエントロピー復号の結果として、パーサ/エントロピーデコーダ(610)は、一般的な制御データ(622)、量子化された変換係数データ(632)、イントラ予測データ(642)及びパック・インデックス値、動きデータ(652)及びフィルタ制御データ(662)を生成する。
一般的な復号コントロール(620)は、一般的な制御データ(622)を受け取り、制御信号(図示せず)を他のモジュール(スケーラ/逆変換器(635)、イントラピクチャ予測器(645)、動き補償器(655)及びイントラ/インタースイッチ等)に提供し、復号するパラメータを復号処理中に設定及び変更する。
現在のピクチャがインターピクチャ予測を使用して予測される場合、動き補償器(655)は、動きベクトルデータ及び参照ピクチャ選択データ等のような動きデータ(652)を受け取る。動き補償器(655)は、動きベクトルを、復号ピクチャバッファ(670)からの再構築された参照ピクチャに適用する。動き補償器(655)は、現在のピクチャのインター符号化ブロックについて、動き補償された予測を生成する。復号ピクチャバッファ(670)は、参照ピクチャとしての使用のために、1つ以上の以前に再構築されたピクチャを格納する。
デコーダ(600)内の別個の経路において、イントラ予測の予測器(645)は、例えばイントラ予測が空間予測を使用するか又はBCIMモードを使用するかどうかを示す情報(例えばイントラブロックごと又は特定の予測モード方向のイントラブロックごとのフラグ値)、(例えば特定の空間予測について)予測モード方向を示す情報等のような、イントラ予測データ(642)を受け取る。イントラ空間予測のために、現在のピクチャの再構築(638)の値を使用して、予測モードデータに従って、イントラピクチャ予測器(645)は、現在のピクチャの隣接する以前に再構築されたサンプル値から、現在のピクチャの現在のブロックのサンプル値を空間的に予測する。BCIMモードでは、デコーダは、インデックス値についてのベースカラーテーブルを使用し、かつインデックスマップの要素を使用して、ブロックのサンプル値のうちのベースカラーのインデックス値を用いて、イントラ符号化ブロックを再構築する。
非BCIMモードでは、イントラ/インタースイッチは、動き補償された予測又はイントラピクチャ予測の値を、所与のブロックについての予測(658)として使用するために選択する。例えばHEVCシンタックスに従うとき、イントラ/インタースイッチは、イントラ予測されたCU及びインター予測されたCUを含み得るピクチャのCUについて、符号化されたシンタックス要素に基づいて制御され得る。デコーダ(600)は、予測(658)を、再構築された残差値と組み合わせて、ビデオ信号からコンテンツの再構築(638)を生成する。
残差を再構築するために、非BCIMモードでは、スケーラ/逆変換器(635)は、量子化された変換係数データ(632)を受け取って処理する。スケーラ/逆変換器(635)では、スケーラ/逆量子化器が、量子化された変換係数に対して逆スケーリング及び逆量子化を実行する。逆周波数変換器は、逆周波数変換を実行して、再構築された予測残差又はサンプル値のブロックを生成する。例えば逆周波数変換器は、逆ブロック変換を周波数変換係数に適用して、サンプル値データ又は予測残差データを生成する。逆周波数変換は、逆DCT、その整数近似又は別のタイプの逆周波数変換とすることができる。
イントラピクチャ予測のために、再構築(638)の値を、イントラピクチャ予測器(645)へ供給することができる。インターピクチャ予測のために、再構築(638)の値を更にフィルタすることができる。マージャ/フィルタ(665)では、デコーダ(600)は、異なるタイルからのコンテンツを、ピクチャの再構築バージョンへマージする。デコーダ(600)は、フレーム内の境界にわたる不連続性を適応的に平滑化するよう、フィルタ制御データ(662)及びフィルタ適応についてのルールに従って、デブロックフィルタリング及びSAOフィルタリングを選択的に実行する。タイル境界は、デコーダ(600)の設定又は符号化ビットストリームデータ内のシンタックス指示に従って、選択的にフィルタされることもあり、全くフィルタされないこともある。復号ピクチャバッファ(670)は、後続の動き補償された予測での使用のために再構築された現在のピクチャをバッファする。
デコーダ(600)は、事後処理デブロックフィルタも含むことができる。事後処理デブロックフィルタは任意選択で、再構築されたピクチャにおける不連続性を平滑化する。他のフィルタリング(例えばリング解除(de-ring)フィルタリング)も、事後処理フィルタリングの一部として適用され得る。
所望の圧縮解除の実装及びタイプに応じて、デコーダのモジュールを追加し、省略し、複数のモジュールへ分割し、他のモジュールと組み合わせ、かつ/又は同様のモジュールと置換することができる。代替的な実施形態では、異なるモジュール及び/又はモジュールの他の構成を用いるデコーダが、説明される技術の1つ以上を実行する。デコーダの具体的な実施形態は、典型的にデコーダ(600)の変形又は補足バージョンを使用する。デコーダ(600)内のモジュール間に示される関係は、デコーダ内における情報の一般的な流れを示し、他の関係は簡潔性のために示されていない。
VII.ベースカラーインデックスマップモードのための技術革新
このセクションは、ベースカラーインデックスマップ(「BCIM」)モードのための様々な技術革新を提示する。これらの技術革新の一部は、BCIMモードにおける変換係数又はインデックスマップデータのための係数符号化シンタックス構造の再利用に関し、他の技術革新は、BCIMモードにおけるインデックス値のマッピング又は予測に関する。更に他の革新は、BCIMモードにおける例外値の処理に関する。これらの技術革新は、速度ひずみ性能及び/又は符号化若しくは復号の計算効率に関してより効果的なBCIMモードを促進することができる。特に、BCIMモードを使用することは、例えば画面キャプチャコンテンツのように、特定の「人工的に」作られたビデオコンテンツを符号化するときに、速度ひずみ性能を改善することができる。画面キャプチャコンテンツは典型的に、繰り返し構造(例えばグラフィクス、テキスト文字)を含み、これらの構造は、性能を向上させるようイントラBC予測のための機会を提供する。画面キャプチャコンテンツは、低クロマサンプリング解像度(例えばYUV4:2:0)のフォーマットでエンコードされてもよいが、通常は、高クロマサンプリング解像度(例えばYUV4:4:4又はRGB4:4:4)で符号化される。
A.ベースカラーインデックスマップモード−序論
BCIMモードでは、ビデオエンコーダ又は画像エンコーダは、ベースカラーを表すインデックス値を使用してサンプル値を符号化する。インデックス値の各々は、サンプル値のうちの異なる値(「ベースカラー」)に関連付けられる。符号化中に、サンプル値は、対応するインデックス値と置換される。エンコーダは、インデックス値と対応するベースカラーとのテーブル(「ベースカラーテーブル」)、並びにサンプル値を表すインデックス値の配置(「インデックスマップ」)を符号化し、伝達する。ビデオデコーダ又は画像デコーダは、インデックス値と対応するベースカラーとのテーブルを受け取って復号する。ベースカラーテーブルを使用して、ベースカラーは、インデックスマップの値を、元のサンプル値のベースカラーと置き換える。
図7は、次元i、j(0≦i≦7、0≦j≦7)の2次元配置のサンプル値sのブロック(710)を示す図である。図7では、サンプル値sは、画面キャプチャコンテンツの強さ又は明るさを表す。サンプル値sは、均一な値と強いパターンのセクションを含む。ブロック(710)は、サンプル値26、85、41、127、168及び200を含む。
エンコーダは、インデックス値を対応するベースカラーに割り当てるベースカラーテーブル(720)を作成する。図7の例では、インデックス値0がサンプル値200に割り当てられ、インデックス値1がサンプル値168に割り当てられ、以下同様である。エンコーダは、より一般的なサンプル値が、より低いインデックス値を有し、あまり一般的でないサンプル値がより高いインデックス値を有するように、ピクチャ内における発生の可能性に従って、インデックス値をベースカラーに割り当てることができ、これは、より低いインデックス値がより少ないビットで表される場合に、より効率的な符号化を生じる傾向がある。あるいは、エンコーダは、インデックスマップのインデックス値における冗長性を利用する予測のように、後の処理に依拠して、ブロックがスキャンされるときの出現の順序に従って、インデックス値をベースカラーに割り当てることができる。ベースカラーテーブル(720)はルックアップテーブル又は他のデータ構造として実装され得る。
図7は、サンプル値sが、対応するインデックス値nで置換されるブロック(730)を示す。サンプル値をインデックス値で置換する処理はロスがない。あるいは、ロスのある圧縮の変形では、正確な合致が得られない場合、サンプル値を、そのサンプル値に最も近いベースカラーを表すインデックス値で置換することができる。これは、ベースカラーテーブル(720)のサイズを縮小させることができるが、知覚可能なひずみも導入する。インデックス値で表されないサンプル値(いわゆる例外値)に対処する別の手法を以下に説明する。
エンコーダは、ベースカラーテーブル(720)、並びに、インデックス値nのブロック(730)を表す要素を有するインデックスマップを符号化し、出力する。例えばエンコーダは、以下で説明されるように、係数符号化シンタックス構造を使用してブロック(730)の要素を表す。符号化の一部として、ブロック(730)のインデックス値nを、更なるマッピング操作及び/又は予測により処理することができる。
復号中に、デコーダは、ベースカラーテーブル(720)及びインデックスマップのデータを受け取り、復号する。例えばデコーダは、以下で説明されるように、係数符号化シンタックス構造からブロック(730)の要素を復号する。復号の一部として、ブロック(730)のインデックス値nを、更なるマッピング操作及び/又は予測により処理することができる。デコーダは次いで、図7に図示されるように、ベースカラーテーブル(720)を使用してマッピング処理を反対にする。
図7の例では、エンコーダは、8×8ブロックのサンプル値について、ベースカラーテーブル(720)を作成する。あるいは、ブロックは、別のサイズ(例えば4×4、16×16、32×32又は64×64)を有する。より一般的には、ブロックはm×nのブロックであり、この場合、m及びnは等しい値を有することも、異なる値を有することもできる。あるいは、エンコーダは、スライス、タイル、全体のピクチャ、ピクチャのグループ又はビデオシーケンスのサンプル値についてベースカラーマッピングを作成することができる。
B.係数符号化シンタックス構造の再使用
一部の例示の実装では、ビデオエンコーダ又は画像エンコーダは、BCIMモードデータを伝達する代わりに、変換係数情報を伝達するのに通常使用されるシンタックス構造を用いる。特に、エンコーダは、係数符号化シンタックス構造を再使用して、BCIMモードでインデックスマップ情報を伝達する。
図8は、符号化中におけるこのアプローチの処理フロー(800)を示す。エンコーダは、空間領域値(810)のブロックを受け取る。空間領域値(810)はサンプル値とすることができる。あるいは、空間領域値(810)は、インターピクチャ予測又はイントラピクチャ予測の後の予測残差とすることができる。エンコーダは、BCIMモードと非BCIMモードの双方で同じ係数符号化シンタックス構造を使用して、BCIMモードにおける符号化操作を適用し、あるいは非BCIMモードにおける操作を適用することができる。
BCIMモードでは、エンコーダは、空間領域値(810)(例えばサンプル値)をインデックス値(830)にマップし(812)、空間領域値(810)を対応するインデックス値(830)で置換する。エンコーダは更に、例えば次のセクションで説明されるように、インデックス値をインデックスマップのパック・インデックス値(840)にマップする。BCIMモードにおけるマッピング操作(812、832)は、(一部の実装では、例外値の符号化を除いて)量子化又は変換操作を含まない。エンコーダは、インデックスマップのパック・インデックス値(840)を伝達するよう、係数符号化シンタックス構造(890)を使用してベースカラーテーブル及びインデックスマップの要素を符号化する(842)。
非BCIMモードでは、エンコーダは、周波数変換を空間領域値(810)(例えば残差値)に適用し(814)、これにより変換係数(860)を生じ、エンコーダはこの変換係数を量子化する(862)。あるいは、変換及び/又は量子化をスキップする。量子化された変換係数(870)は次いで、係数符号化シンタックス構造(890)を使用して符号化される。
HEVCシンタックスに従う一部の例示の実施形態では、係数符号化シンタックス構造は、残差_符号化シンタックス構造(residual_coding syntax structure)である。JCTVC-N1005のセクション7.3.8.11及び7.4.9.11を参照されたい。BCIMモードでは、エンコーダは、インデックスマップの要素(例えば以下で説明されるように、インデックス値、パック・インデックス値、インデックス残差値又はパック・インデックス残差値)が量子化された変換係数であるかのように、これらのインデックスマップの要素を処理する。特に、エンコーダは、ブロック内の最後の非ゼロ係数の位置を伝達する。ブロックは、4×4ブロック、8×8ブロック、16×16ブロック又は32×32ブロックとすることができる。ブロック内の値の4×4グループごとに、エンコーダは、その4×4グループが少なくとも1つの非ゼロの係数を有するかどうかを示すフラグを伝達する。少なくとも1つの非ゼロの係数を有する4×4グループでは、エンコーダは、どの係数が非ゼロ値を有するかを示すフラグを伝達し、次いで非ゼロの係数についてのレベル情報と(多くの場合)符号情報を伝達する。エンコーダはCABACを使用して、残差_符号化シンタックス構造の様々な要素を符号化する。あるいは、別の係数符号化シンタックス構造が使用される。例えばH.264規格、VC-1規格又は別の規格若しくは独自のフォーマットのシンタックスに従う係数符号化シンタックス構造を使用することができる。
図9は、復号中のこのアプローチの処理フロー(900)を示す。デコーダは、係数符号化シンタックス構造(990)を受け取る。デコーダは、BCIMモードと非BCIMモードの双方で同じ係数符号化シンタックス構造を使用して、BCIMモードにおける操作を適用し、あるいは非BCIMモードにおける操作を適用することができる。
BCIMモードでは、デコーダは、ベースカラーテーブルを復号し(942)、係数符号化シンタックス構造(990)を使用してインデックスマップの要素も復号する(942)。これは、インデックスマップについてパック・インデックス値(940)を生成する。デコーダは、例えば次のセクションで説明されるように、パック・インデックス値(940)をインデックスマップのインデックス値(930)にマップする(932)。デコーダは次いで、インデックス値(930)を、ブロックの空間領域値(910)(例えばサンプル値)にマップする(912)。BCIMモードにおけるマッピング操作(912、932)は、(一部の実装では、例外値の復号処理を除いて)量子化又は逆変換操作を含まない。
非BCIMモードでは、デコーダは、係数符号化シンタックス構造(990)を使用して伝達された、量子化された変換係数(970)を復号する(972)。デコーダは、量子化された変換係数を逆量子化(962)し、逆周波数変換を適用(914)して、空間領域値(910)(例えば予測残差)を再構築することができる。あるいは、逆量子化及び/又は逆変換はスキップされる。デコーダは、次いでインターピクチャ予測又はイントラピクチャ予測(図示せず)を実行して、再構築された残差値を予測値(図示せず)と組み合わせることができる。
図10は、インデックスマップの要素又は変換係数を選択的に表すよう係数符号化シンタックス構造を使用する符号化について、一般化した技術(1000)を図示する。技術(1000)は、図3又は図5a及び図5bに関連して説明したようなエンコーダによって、あるいは別のエンコーダによって実行され得る。
エンコーダは、ブロックのインデックスマップの要素又はそのブロックの変換係数を選択的に表すよう、ブロックの係数符号化シンタックス構造を使用して、データを符号化する(1010)。例えば係数符号化構造が、非BCIMモードで変換係数のために使用される場合、エンコーダは、(a)ブロックの残差値を計算し、(b)その残差値に対して周波数変換を実行して、変換係数を生成し、(c)変換係数を量子化し、(d)結果として得られる値を係数符号化シンタックス構造内で符号化する。あるいは、係数符号化構造が、BCIMモードでインデックスマップのために使用される場合、エンコーダは、(a)そのブロックのサンプル値をインデックス値にマップし、この場合、インデックス値の各々がベースカラーを表し、(b)インデックス値を、パック・インデックス値又はパック・インデックス残差値にマップし、(c)結果として得られる値を係数符号化シンタックス構造内で符号化する。
BCIMモードでは、インデックスマップは、ブロックについてのパック・インデックス値を含むことができ、この場合、パック・インデックス値の各々は、ベースカラーを表し、係数符号化シンタックス構造へパックされるインデックス値である。あるいは、インデックスマップは、ブロックについてのパック・インデックス残差値を含むことができ、この場合、パック・インデックス残差値の各々は、ベースカラーを表し、係数符号化シンタックス構造へパックされる。パック・インデックス残差値は、インデックス値と予測インデックス値との間の差に基づくインデックス残差値とすることができ、あるいはパック・インデックス残差値は、パック・インデックス値と予測パック・インデックス値との間の差に基づくことができる。インデックスマップは、いずれのベースカラーも表さない1つ以上の例外値も含むことができ、この例外値は、以下で説明されるように処理され得る。
エンコーダは、符号化データを出力する(1020)。例えばHEVCシンタックスに従う実装では、符号化データは、インデックスマップの要素又は変換係数についての残差_符号化シンタックス構造を含むことができる。あるいは、符号化データは何らかの他の方法でフォーマットされる。エンコーダは別のブロックについて技術(1000)を繰り返すことができる。
図11は、インデックスマップの要素又は変換係数を選択的に表す係数符号化シンタックス構造を使用する復号について、一般化した技術(1100)を図示する。技術(1100)は、図4又は図6に関連して説明したようなデコーダによって、あるいは別のデコーダによって実行され得る。
デコーダは、符号化データを受け取る(1110)。例えばHEVCシンタックスに従う実装では、符号化データは、インデックスマップの要素又は変換係数についての残差_符号化シンタックス構造を含むことができる。あるいは、符号化データは何らかの他の方法でフォーマットされる。
デコーダは、ブロックのインデックスマップの要素又はブロックの変換係数を選択的に表す、ブロックについての係数符号化シンタックス構造を使用して符号化データを復号する(1120)。例えば係数符号化構造が非BCIMモードで変換係数のために使用される場合、デコーダは、(a)係数符号化シンタックス構造からの変換係数の値を復号し、(b)変換係数を逆量子化し、(c)変換係数に対して逆周波数変換を実行して、ブロックについての残差値を取得し、(d)残差値を予測値と組み合わせて、そのブロックについてのサンプル値を再構築する。あるいは、係数符号化構造がBCIMモードでインデックスマップのために使用される場合、デコーダは、(a)係数符号化シンタックス構造からインデックスマップの値を復号し、(b)パック・インデックス値又はパック・インデックス残差値をインデックス値にマップし、ここで、インデックス値の各々はベースカラーを表し、(c)インデックス値をブロックのサンプル値にマップする。
BCIMモードでは、インデックスマップは、ブロックについてのパック・インデックス値を含むことができ、この場合、パック・インデックス値の各々は、ベースカラーを表し、係数符号化シンタックス構造へパックされるインデックス値である。あるいは、インデックスマップは、ブロックについてのパック・インデックス残差値を含むことができ、この場合、パック・インデックス残差値の各々は、ベースカラーを表し、係数符号化シンタックス構造へパックされる。パック・インデックス残差値は、インデックス値と予測インデックス値との間の差に基づくインデックス残差値とすることができ、あるいはパック・インデックス残差値は、パック・インデックス値と予測パック・インデックス値との間の差に基づくことができる。インデックスマップは、いずれのベースカラーも表さない1つ以上の例外値も含むことができ、この例外値は以下で説明されるように処理され得る。
デコーダは、別のブロックについて技術(1100)を繰り返すことができる。
図12は、インデックスマップの要素又は変換係数を選択的に表す係数符号化シンタックス構造を使用する復号について、より具体的な例示の技術(1200)を示す。技術(1200)は、図4又は図6に関連して説明したようなデコーダによって、あるいは別のデコーダによって実行され得る。
デコーダは、ブロックについての係数符号化シンタックス構造を受け取る(1210)。例えばHEVCシンタックスに従う実装では、係数符号化シンタックス構造は、残差_符号化シンタックス構造である。あるいは、係数符号化シンタックス構造は何らかの他の方法で編成される。
デコーダは、ブロックのモードがBCIMであるかどうかを確認する(1220)。例えばデコーダは、ブロックについて1つ以上のシンタックス要素の値を確認する。HEVCシンタックスに従う実装では、ブロックがBCIMモードのブロックであるかどうかを示すシンタックス要素は、PUに伝達され得る。あるいは、シンタックス要素は、CU,CB、PB、TU又はTBに伝達される。
ブロックがBCIMブロックである場合、デコーダは、そのブロックの係数符号化構造からインデックスマップの要素を復号する(1240)。ブロックがBCIMブロックでない場合、デコーダは、そのブロックの係数符号化シンタックス構造から変換係数を復号する(1230)。例えばデコーダは、図9又は図11に関連して説明される動作を実行する。
デコーダは、次のブロックに継続すべきかどうかを確認する(1250)。次のブロックに継続する場合、デコーダは、次のブロックの係数符号化シンタックス構造を受け取る(1210)。
C.パック・インデックス値へのインデックス値のマッピング
インデックス値を変換係数であるかのように伝達するために、エンコーダは、インデックス値nをパック・インデックス値npackedにマップする。復号中に、デコーダは、パック・インデックス値npackedをインデックス値nにマップし返す。エンコーダ及びデコーダは、インデックス値nとパック・インデックス値npackedとの間をマッピングするときに様々なストラテジに従うことができる。
例えばエンコーダは単に、インデックス値をパック・インデックス値として使用することができる。すなわち、符号化中はnpacked=nであり、復号中はn=npackedである。その簡潔性に加えて、このアプローチの1つの利点は、パック・インデックス値は常に負でないので、パック・インデックス値npackedの符号、を伝達される符号化データから省略することができることにある。
第2の例示のアプローチとして、デコーダは、次のようにインデックス値nをパック・インデックス値npackedにマップすることができる:
n%2が0の場合、npacked=-(n/2)であり;
そうでない場合、npacked=(n+1)/2である。
ここで、「%」はMOD演算子を表し、x%yは、xをyで割ったときの余りである。「/」は、その結果をゼロへ切り捨てる割り算を表す。デコーダは、次のようにパック・インデックス値npackedをインデックス値nにマップし返すことができる。
npacked≦0の場合、n=-2*npackedであり;
そうでない場合、n=2*npacked−1である。
図13は、このアプローチによる、インデックス値のパック・インデックス値へのマッピングと、パック・インデックス値のインデックス値へのマッピング返しとを示す。ブロック(1310)内のインデックス値nは、符号化中にブロック(1330)内のパック・インデックス値にマップされ、これは、復号中にブロック(1310)内のインデックス値nにマッピングし返される。0…5の範囲のインデックス値は、-2…3の範囲のパック・インデックス値にマップされ、またその逆も行われる。
第2の例示のアプローチの変形では、エンコーダは、偶数のインデックス値を非負の数にマップして、奇数を負の値にマップし、デコーダはそのマッピングの逆を行う。符号化中のマッピングでは:
n%2が0の場合、npacked=(n/2)であり;
そうでない場合、npacked=-(n+1)/2である。
復号では、
npacked≧0の場合、n=2*npackedであり;
そうでない場合、n=-2*npacked-1である。
第3の例示のアプローチとして、異なるカラーコンポーネント(例えばYUV4:4:4フォーマットのビデオのルマ及びクロマコンポーネント)のインデックス値を、ピクセルの単一のパック・インデックス値にマップすることができる。例えばルマサンプルをルマインデックス値nyにマップし、2つの対応するクロマサンプルが、2つのクロマインデックス値nu及びnvにマップされる。インデックス値ny、nu及びnvの各々を表すのに使用されるビット数はnbitsであり、単一のパック・インデックス値npacked,combined(3*nbitsを有する)は、次のように決定することができる:
npacked,combined=nv<<(2*nbits)+nu<<nbits+nv
ここで、「<<」は、左ビットシフト操作を表す。復号では、インデックス値インデックス値ny、nu及びnvは、パック・インデックス値npacked,combinedの適切なビットの値を識別するビットマスク操作及びビットシフト操作を使用して、次のように再構築され得る:
nv=npacked,combined>>(2*nbits)
nu=(npacked,combined>>nbits)&((1<<nbits)-1)
nv=npacked,combined&((1<<nbits)-1)
ここで、「>>」は右ビットシフト操作を表し、「&」は、ビットワイズのAND操作を表す。インデックス値ny、nu及びnvの順序は、復号中のマッピング操作に対する変化に対応して、符号化中のマッピング操作において変化し得る。また、インデックス値ny、nu及びnvは、符号化中及び復号中のマッピング操作に対する変化に対応して、異なるビット数を有することができる。
あるいは、Yコンポーネントのcountyベースカラーと、Uコンポーネントについてcountuベースカラーと、Vコンポーネントについてcountvベースカラーが存在する場合、単一のパック・インデックス値を、次のように決定することができる:
npacked,combined=nv*(county*countu)+nu*county+ny
復号では、インデックス値ny、nu及びnvを、次のように再構築することができる:
nv=npacked,combined%county
nu=(npacked,combined/county)%countu
nv=npacked,combined/(county*countu)
ここで、「/」は、結果をゼロへ切り捨てる割り算を表す。やはり、インデックス値ny、nu及びnvの順序は、どのカウント変数が使用されるかについての変化に対応して異なり得る。
あるいは、エンコーダ及びデコーダは、インデックス値nとパック・インデックス値npackedとの間をマッピングする際に異なるアプローチを使用する。
図14は、符号化中にベースカラーのインデックス値をマッピングする技術(1400)を示す。技術(1400)は、図3又は図5a及び図5bに関連して説明されるようなエンコーダにより、あるいは別のエンコーダによって実行され得る。
エンコーダは、サンプル値をベースカラーのインデックス値にマップする(1410)。例えばエンコーダは、上述のようなベースカラーテーブルを使用して、ルマ又はクロマのサンプル値をインデックス値にマップする。
エンコーダは次いで、インデックス値を、係数符号化シンタックス構造のパック・インデックス値の少なくとも一部にマップする(1420)。例えばエンコーダは、例えば上述の第1のマッピングアプローチのように、インデックス値に基づいてパック・インデックス値を設定する。あるいは、別の例として、インデックス値が偶数である場合、エンコーダは、2で割ったインデックス値に基づいてパック・インデックス値を設定するが、そうでない場合は、エンコーダは、(例えば上述の第2のマッピングアプローチのように)インデックス値に1を足して2で割った値に基づいて、パック・インデックス値を設定する。あるいは、別の例として、エンコーダは、例えば上述の第3のマッピングアプローチのように、インデックス値を使用してパック・インデックス値の一部を設定し、この場合、パック・インデックス値を、1つのルマインデックス値と複数のクロマインデックス値とに基づいて設定する。
エンコーダは次いで、下述されるように、パック・インデックス値及び予測パック・インデックス値に基づいて、パック・インデックス残差値を決定することができる。あるいは、パック・インデックス残差値にマップされるインデックス値は、インデックス残差値とすることができる。
エンコーダは、次のサンプル値に継続すべきかどうか確認する(1430)。継続する場合、エンコーダは、次のサンプル値を次のインデックス値にマップする(1410)。エンコーダは、ブロックのサンプル値を通してラスタスキャンパターン(raster scan pattern)で進めることができる。あるいは、第3のアプローチでは、エンコーダは、1つのルマブロックと複数のクロマブロック内の対応する位置のサンプル値をインデックス値にマップすることができ、次いでこれらのインデックス値をパック・インデックス値にマップすることができる。
図15は、復号中にベースカラーのインデックス値をマッピングする技術(1500)を示す。技術(1500)は、図4又は図6に関連して説明されるようなデコーダにより、あるいは別のデコーダによって実行され得る。
デコーダは、係数符号化シンタックス構造のパック・インデックス値の少なくとも一部を、ベースカラーのインデックス値にマップする(1510)。例えばデコーダは、例えば上述の第1のマッピングアプローチのように、パック・インデックス値に基づいてインデックス値を設定する。あるいは、別の例として、パック・インデックス値がゼロとの所与の関係を有する場合、デコーダは、パック・インデックス値の2倍に基づいてインデックス値を設定するが、そうでない場合、デコーダは、(例えば上述の第2のマッピングアプローチのように)パック・インデックス値の2倍から1を引いた値に基づいて、インデックス値を設定する。あるいは、別の例として、デコーダは、例えば上述の第3のマッピングアプローチのように、パック・インデックス値の一部を使用してインデックス値を設定し、この場合、1つのルマインデックス値と複数のクロマインデックス値がパック・インデックス値に基づいて設定される。
デコーダは、インデックス値をサンプル値にマップする(1520)。例えばデコーダは、上述のようなベースカラーテーブルを使用して、ルマ又はクロマインデックス値をサンプル値にマップする。
マッピング操作の前に、デコーダは、所与のパック・インデックス値を予測して、次いで、パック・インデックス残差値を予測パック・インデックス値と組み合わせて、パック・インデックス値を再構築することができる。あるいは、再構築されるインデックス値はインデックス残差値とすることができる。
デコーダは、次のインデックス値に継続すべきかどうか確認する(1530)。継続する場合、デコーダは、係数符号化シンタックス構造のパック・インデックス値の少なくとも一部を、ベースカラーの次のインデックス値にマップする(1510)。デコーダは、ブロックのインデックス値を通してラスタスキャンパターンで進めることができる。あるいは、第3のアプローチでは、デコーダは、パック・インデックス値を、ルマブロック及びクロマブロック内の対応する位置の複数のインデックス値にマップすることができ、次いでこれらのインデックス値をサンプル値にマップすることができる。
D.インデックスマップの要素の予測
エンコーダ及びデコーダは、インデックスマップの要素の予測も使用することができる。予測がうまく機能すると、インデックス残差値(又はパック・インデックス残差値)の多くは、値ゼロを有する。この予測は、少ないビットを使用してゼロに近い値を符号化するため、典型的なエントロピー符号化スキームにおける符号化効率を向上させる。
図16は、次元i、j(0≦i≦7、0≦j≦7)のインデックス値nのブロック(1610)を示す。あるいは、予測は別のサイズのブロック(例えば4×4、16×16又は32×32)に適用される。符号化中に、エンコーダは、1つ以上の隣接するインデックス値からインデックス値ごとに所与のインデックス値n(i,j)を予測する。予測の方向は、水平方向、垂直方向、右下斜め方向又は何らかの他の方向とすることができる。図16では、例えば予測の方向は垂直であり、インデックス残差値nresidのブロック(1630)を生じる。インデックス値n(i,j)は、同じ列内の先行するインデックス値n(i,j-1)を使用して予測される。インデックス残差値は単に、2つの値の差:nresid(i,j)=n(i,j)−n(i,j-1)である。同様に、水平予測では、インデックス残差値は、インデックス値と、予測インデックス値としてのその左隣のインデックス値との間の差:nresid(i,j)=n(i,j)−n(i-1,j)である。45度下向きの角度における斜め方向の予測では、インデックス残差値を、nresid(i,j)=n(i,j)−(n(i,j-1)+n(i-1,j))>>1として計算することができ、あるいはnresid(i,j)=n(i,j)−n(i-1,j-1)として計算することができる。他の斜め方向の予測も同様に、予測の角度に応じて、隣接するインデックス値をブレンドすることができる。ブロックのエッジ(例えばi<0及び/又はj<0)における予測では、隣接するインデックス値は、値ゼロを有するか、デフォルト値を与えられ得る(例えば2で割ったインデックス値の数)。復号中に、デコーダは、(予測の方向に応じて)同じ予測インデックス値を決定し、予測インデックス値をインデックス残差値と組み合わせる。垂直予測では、n(i,j)=nresid(i,j)+n(i,j-1)である。水平予測では、n(i,j)=nresid(i,j)+n(i-1,j)である。45度下向きの角度の斜め方向の予測では、n(i,j)=nresid(i,j)+(n(i,j-1)+n(i-1,j))>>1又はn(i,j)=nresid(i,j)+n(i-1,j-1)である。他の斜め方向の予測も同様に、予測の角度に応じて、隣接するインデックス値をブレンドすることができる。
図16では、予測は、インデックス値がパック・インデックス値にマップされる前に適用される。あるいは、予測は、インデックス値がパック・インデックス値にマップされた後に適用される。
図17は、次元i、j(0≦i≦7、0≦j≦7)のパック・インデックス値npackedのブロック(1710)を示す。あるいは、予測は別のサイズのブロック(例えば4×4、16×16又は32×32)に適用される。符号化中に、エンコーダは、1つ以上の隣接するパック・インデックス値からパック・インデックス値ごとに所与のパック・インデックス値npacked(i,j)を予測する。予測の方向は、水平方向、垂直方向、右下斜め方向又は何らかの他の方向とすることができる。図17では、例えば予測の方向は垂直であり、パック・インデックス残差値npacked,residのブロック(1730)を生じる。パック・インデックス値npacked(i,j)は、同じ列内の先行するパック・インデックス値npacked(i,j-1)を使用して予測される。パック・インデックス残差値は単に、2つの値の差:npacked,resid(i,j)=npacked(i,j)−npacked(i,j-1)である。同様に、水平予測では、パック・インデックス残差値は、パック・インデックス値と、予測インデックス値としてのその左隣のパック・インデックス値との間の差:npacked,resid(i,j)=npacked(i,j)−npacked(i-1,j)である。45度下向きの角度における斜め方向の予測では、パック・インデックス残差値を、npacked,resid(i,j)=npacked(i,j)−(npacked(i,j-1)+npacked(i-1,j))>>1として計算することができ、あるいはnpacked,resid(i,j)=npacked(i,j)−npacked(i-1,j-1)として計算することができる。他の斜め方向の予測も同様に、予測の角度に応じて、隣接するインデックス値をブレンドすることができる。ブロックのエッジ(例えばi<0及び/又はj<0)における予測では、隣接するパック・インデックス値は、値ゼロを有するか、デフォルト値を与えられ得る(例えば2で割ったインデックス値の数)。復号中に、デコーダは、(予測の方向に応じて)同じ予測パック・インデックス値を決定し、予測パック・インデックス値をパック・インデックス残差値と組み合わせる。垂直予測では、npacked(i,j)=npacked,resid(i,j)+npacked(i,j-1)である。水平予測では、npacked(i,j)=npacked,resid(i,j)+npacked(i-1,j)である。45度下向きの角度の斜め方向の予測では、npacked(i,j)=nresid(i,j)+(npacked(i,j-1)+npacked(i-1,j))>>1又はnpacked(i,j)=npacked,resid(i,j)+n(i-1,j-1)である。他の斜め方向の予測も同様に、予測の角度に応じて、隣接するインデックス値をブレンドすることができる。
予測の以前の例では、符号化中に減算演算が使用され、復号中に加算演算が使用される。代替として、エンコーダは、予測においてビットワイズの排他的OR(XOR)演算を使用することができる。
パック・インデックス値を予測すると、エンコーダは、パック・インデックス残差値を、パック・インデックス値XORその予測したパック・インデックス値として決定する。インデックス値を予測すると、エンコーダは、インデックス残差値を、インデックス値XORその予測したインデックス値として決定する。残差値はデコーダに伝達される。予測値は、予測の方向(例えば水平、垂直、斜め)に依存し得る。
パック・インデックス値を予測すると、デコーダは、パック・インデックス値を、そのパック・インデックス残差値XOR予測したパック・インデックス値として決定する。インデックス値を予測すると、デコーダは、インデックス値を、そのインデックス残差値XORその予測したインデックス値として決定する。やはり、予測値は、予測の方向(例えば水平、垂直、斜め)に依存し得る。
図18は、符号化及び復号中にXOR演算を使用する予測を例示する。パック・インデックス値は7であり、(1つ以上の隣接するパック・インデックス値に基づく)予測インデックス値は6である。符号化中に、エンコーダはパック・インデックス残差は1であると決定する:00000001=00000111 XOR 00000110。復号中に、デコーダは、パック・インデックス値7をパック・インデックス残差値と予測パック・インデックス値から再構築する:00000111=00000001 XOR 00000110。
値、予測値及び残差値の全てのビット値に適用する代わりに、予測演算(減算、XOR又はその他)を、ビットのサブセットに適用することができる。例えばXOR演算を、インデックス値とその予測値の最下位(lowest)のpビットに適用することができる。pmaskは(1<<p)-1であると仮定する。エンコーダは、インデックス残差値nresid(i,j)=(n(i,j)>>p<<p)+(npredicted(i,j)&pmask)XOR(n(i,j)&pmask)を決定し、ここで、npredicted(i,j)は、n(i,j-1)又はn(i-1,j)とするか、あるいは予測の方向に応じて何らかの他の予測値とすることができる。残差値はデコーダに伝えられる。デコーダは、インデックス値n(i,j)=(nresid(i,j)>>p<<p)+(nresid(i,j)&pmask)XOR(npredicted(i,j)&pmask)を決定する。同じ演算を予測パック・インデックス値に適用することができる。部分ビットに対する演算を、値の最下位ビット、最上位ビット又は中間ビットに適用することができる。予測演算の対象とされるビットは、連続であっても非連続であってもよい。
HEVCシンタックスに従う実装では、エンコーダ及びデコーダは、インデックスマップの要素を予測する代わりに、残差値を予測するのに通常使用される符号化ツールを再使用することができる。特に、残差値に変換が適用されないとき(量子化は適用されても適用されなくてもよいが)、エンコーダ及びデコーダは、そのツールを使用して、隣接する残差値から残差値を予測することができる。その使用を伝達するための符号化ツール及びシンタックスを、インデックスマップの要素に適用することもできる。
図19は、符号化中のインデックスマップの要素の予測のための技術(1900)を示している。この技術(1900)は、図3又は図5a及び図5bに関連して説明したようなエンコーダ又は別のエンコーダによって実行され得る。
エンコーダは、データを符号化する(1910)。具体的には、予測を使用してブロックについてのインデックスマップの要素を符号化する。例えばインデックスマップがインデックス残差値を含むとき、エンコーダは、ベースカラーを表すインデックス値を予測し、次いで、インデックス値及び予測インデックス値に基づいてインデックス残差値を決定する。あるいは、インデックスマップがパック・インデックス残差値を含むとき、エンコーダは、パック・インデックス値を予測し(この場合、パック・インデックス値は、ベースカラーを表し、係数符号化シンタックス構造にパックされるインデックス値である)、次いでパック・インデックス残差値を、パック・インデックス値及び予測したパック・インデックス値に基づいて決定する。予測を伴う符号化は、値の全てのビット又は値の一部のビットに対する減算演算、XOR演算又は他の演算を含むことができる。
エンコーダは、符号化データを出力する(1920)。エンコーダは、次のブロックに継続するかどうかを確認する(1930)。次のブロックに継続する場合、エンコーダは、次のブロックについてのインデックスマップの要素を符号化すること(1910)により継続する。
図20は、復号中のインデックスマップの要素の予測のための技術(2000)を示している。この技術(2000)は、図4又は図6に関連して説明したようなデコーダ又は別のデコーダによって実行され得る。
デコーダは、符号化データを受け取り(2010)、符号化データを復号する(2020)。具体的には、デコーダは、予測を使用してブロックについてのインデックスマップの要素を復号する。例えばインデックスマップがインデックス残差値を含むとき、デコーダは、ベースカラーを表すインデックス値を予測し、次いで、インデックス残差値及び予測したインデックス値を組み合わせる。あるいは、インデックスマップがパック・インデックス残差値を含むとき、デコーダは、パック・インデックス値を予測し(この場合、パック・インデックス値は、ベースカラーを表し、係数符号化シンタックス構造にパックされるインデックス値である)、次いでパック・インデックス残差値及び予測したパック・インデックス値を組み合わせる。予測を伴う復号処理は、値の全てのビット又は値の一部のビットに対する加算演算、XOR演算又は他の演算を含むことができる。
デコーダは、次のブロックに継続するかどうかを確認する(2030)。次のブロックに継続する場合、デコーダは、次のブロックについての符号化データを受け取ること(2010)により継続する。
E.例外値の処理
BCIMモードを使用するとき、ベースカラーテーブルにおいて、エンコーダ及びデコーダは、インデックス値を、ブロック内で使用される全て異なるサンプル値に割り当てることができる。一部の場合において、これは、特にインデックス値があまり頻繁に使用されないときに、伝えることが非効率的なベースカラーテーブルを生じる可能性がある。特定のベースカラーがブロック内でめったに現れない場合、インデックス値をそのベースカラーに割り当てる価値がない可能性がある。
一部の例示の実装において、エンコーダ及びデコーダは、幾つかのアプローチのうちのいずれかを使用して、ブロック内でめったに生じないベースカラーに対処することができる。これらの珍しいベースカラーのうちの1つを伴う「例外」値は、インデックス値を使用して符号化及び復号されない。
あるアプローチでは、エンコーダが例外値を識別するとき、エンコーダは、ベースカラーテーブル内のインデックス値で表される最も近いベースカラーを決定する。エンコーダは、最も近いベースカラーのインデックス値を使用して例外値を表す。デコーダは、例外値を、ベースカラーテーブル内のインデックス値に関連付けられるサンプル値として再構築する。このアプローチは、ロスのある圧縮タイプであり、場合によっては、相当なひずみにつながる可能性がある。
別のアプローチでは、エンコーダは、例外値を、量子化され得るサンプル値として直接的に伝達する。例えばエンコーダは、ベースカラーテーブルについて可能な最も高いパック・インデックス値hを決定し、この最も高いパック・インデックス値は、マッピングに使用されるアプローチに依存する。npacked=nであるとき、値hはnpackedの最も高い値である。nの奇数値がnpacked=(n+1)/2に従ってマップされるとき、値hはやはりnpackedの最も高い値である。
エンコーダは、例外値をe=s/q+h+1と表し、この場合、qは量子化パラメータであり、「/」は、ゼロへの切捨てを伴う割り算を表す。量子化が適用されない場合、q=1であり、割り算の演算をスキップすることができる。デコーダ側では、パック・インデックス値npackedがh以下の場合、デコーダは、上述のように、マッピング操作及びベースカラーテーブルを使用して、パック・インデックス値npackedからサンプル値sを復号する。しかしながら、パック化インデックス値がhより大きい場合、パック・インデックス値は、実際に例外値eであり、サンプル値は、s’’=(e-h-1)*qとして再構築される。
図21a及び図21bは、それぞれ符号化及び復号中におけるBCIMモードの例外値及びインデックス値の処理(2100)を図示している。図21aでは、サンプル値sのブロック(2110)は、ベースカラー:85、41、200、168、127、26についてインデックス値で表される幾つかのサンプル値を含む。これらの値は、図21aに示されるベースカラーテーブルを使用して、BCIMモードで符号化される。
ブロック(2110)は、ブロック内に頻繁には生じず、したがってベースカラーのインデックス値で表されない2つの値も含む。これらの2つの例外値、すなわち179と29は、量子化パラメータq(図21a及び図21bでは、q=4)及び最も高いパック・インデックス値h(図21a及び図21bでは、h=3)を使用して符号化される。hの値はインデックス値の範囲に依存する。qの値は、ブロックごと、スライスごと、タイルごと、ピクチャごと等で変わり得る。パック・インデックス値及び例外値eのブロック(2130)に示されるように、サンプル値179は、例外値49=(181/4)+3+1として符号化され、サンプル値29は、例外値11=(29/4)+3+1として符号化される。
図21bに示されるように、復号中に、3より大きいパック・インデックス値はいずれも例外値として処理される。例外値49は、サンプル値180=(49-3-1)*4として再構築され、例外値11は、サンプル値28=(11-3-1)*4として再構築される。ブロック(2150)のほとんどの値は、図21bに示されるベースカラーテーブル及びマッピング操作を使用してBCIMモードで復号される。
図22は、BCIMモードでインデックス値及び例外値を使用して符号化するための一般化した技術(2200)を示す。技術(2200)は、図3又は図5a及び図5bに関連して説明されるようなエンコーダにより、あるいは別のエンコーダによって実行され得る。
エンコーダは、各々がベースカラーを表す1つ以上のインデックス値と、いずれのベースカラーも表さない1つ以上の例外値とを使用して、ブロックのデータを符号化する(2210)。例えばエンコーダは、上述のように、パック・インデックス値又はパック・インデックス残差値を使用して、ブロックのサンプル値の一部を符号化する。また、エンコーダは、そのサンプル値の一部を例外値として符号化する。例えばエンコーダは、量子化パラメータ及び最も高いパック・インデックス値を使用して、サンプル値を例外値と置換する。
エンコーダは、符号化データを出力する(2220)。エンコーダは、次のブロックに継続すべきかどうかを確認する(2230)。次のブロックに継続する場合、エンコーダは次のブロックのデータを符号化すること(2210)によって継続する。
図23は、BCIMモードでインデックス値及び例外値を使用して復号するための一般化した技術(2300)を示す。技術(2300)は、図4又は図6に関連して説明されるようなデコーダにより、あるいは別のデコーダによって実行され得る。
デコーダは、符号化データを受け取り(2310)、符号化データを復号する。特に、デコーダは、各々がベースカラーを表す1つ以上のインデックス値を復号する。1つ以上のインデックス値は、パック・インデックス値又はパック・インデックス残差値とすることができる。デコーダは、いずれのベースカラーも表さない1つ以上の例外値も復号する。例えば例外値のうちの1つについて、デコーダは、例外値、量子化パラメータ及び最も高いパック・インデックス値を使用して、サンプル値を再構築する。
デコーダは、次のブロックに継続すべきかどうかを確認する(2330)。次のブロックに継続する場合、デコーダは次のブロックの復号化データを受け取ること(2310)によって継続する。
図24は、BCIMモードのブロックの復号中にインデックス値及び例外値を使用する、より具体的な技術(2400)を示す。技術(2400)は、図4又は図6に関連して説明されるようなデコーダにより、あるいは別のデコーダによって実行され得る。
ブロックのパック・インデックス値について、デコーダは、値が閾値を超えているかどうかを確認する(2420)。例えば閾値は、パック・インデックス値について最も高い可能性のある値である。パック・インデックス値が閾値を超えている場合、デコーダは、その値を例外値として処理する(2440)。そうでなければ、デコーダは、マッピング操作及びベースカラーテーブルを使用して、その値を処理する(2430)。デコーダは次いで、ブロック内の別の値を継続すべきかどうかを確認する(2450)。継続する場合、デコーダは、次の値をどのように復号すべきかを確認する(2520)。
前述の例において、閾値は、最も高いパック・インデックス残差に基づく。あるいは、パック・インデックス残差値を使用するとき、閾値は、パック・インデックス値とその予測パック・インデックス値との間の最大の可能性のある差異に依存する、最も高い可能性のあるパック・インデックス残差値に基づく。
開示される発明の原理が適用され得る多くの可能性のある実施形態の観点において、例示される実施形態は、本発明の好適な例に過ぎず、本発明の範囲を限定するものとして解釈されるべきでないことを認識されたい。むしろ、本発明の範囲は、以下の特許請求の範囲により定められる。したがって、特許請求の範囲内及び精神内にあるものを本発明として請求する。

Claims (9)

  1. 1つ以上の処理ユニット及びメモリを備えるコンピューティングデバイスであって、当該コンピューティングデバイスは、ビデオ又は画像のエンコーダを実装し、該エンコーダは、
    イントラピクチャ圧縮を使用してピクチャのユニットについてのデータを符号化する、符号化ステップであって、前記ユニットは1つ以上のブロックを含み、該符号化ステップは、ベースカラーテーブルとインデックスマップを使用し、前記ベースカラーテーブルは、1つ以上のインデックス値を1つ以上の対応するベースカラーに割り当て、前記インデックスマップは、前記1つ以上のインデックス値のうちの少なくとも1つ前記ベースカラーテーブル内の前記1つ以上の対応するベースカラーのいずれのベースカラーも表さない1つ以上の例外値を含み、例外値に対応するサンプル値は、量子化パラメータを使用して符号化され、最も高い可能性のあるインデックス値で指定される、符号化ステップと;
    前記符号化されたデータを出力するステップと;
    を備える動作を実行するように構成される、コンピューティングデバイス。
  2. 前記1つ以上のインデックス値は、パック・インデックス値又はパック・インデックス残差値である、
    請求項1に記載のコンピューティングデバイス。
  3. 前記ユニットは、符号化ユニットであり、前記符号化ユニットは、イントラ予測の予測モードを有する、
    請求項1に記載のコンピューティングデバイス。
  4. 前記符号化されたデータは、前記イントラ予測が空間予測モードを使用したか、ベースカラーインデックスマップモードを使用したかを示すフラグ値を有する、
    請求項に記載のコンピューティングデバイス。
  5. 前記符号化ステップは、隣接するインデックス値を使用して前記インデックスマップ内の所与のインデックス値を予測するステップを含む、
    請求項1に記載のコンピューティングデバイス。
  6. 前記隣接するインデックス値は、前記インデックスマップ内の前記所与のインデックス値より上である、
    請求項に記載のコンピューティングデバイス。
  7. ビデオデコーダ又は画像デコーダを有するコンピューティングデバイスにおいて、
    ピクチャのユニットについての符号化データを受け取るステップであって、前記ユニットはイントラピクチャ圧縮を使用して符号化されており、前記ユニットは1つ以上のブロックを含む、ステップと;
    前記符号化データを復号する復号ステップであって、該復号ステップは、ベースカラーテーブルとインデックスマップを使用し、前記ベースカラーテーブルは、1つ以上のインデックス値を1つ以上の対応するベースカラーに割り当て、前記インデックスマップは、前記1つ以上のインデックス値のうちの少なくとも1つと、前記ベースカラーテーブル内の前記1つ以上の対応するベースカラーのいずれのベースカラーも表さない1つ以上の例外値を含み、例外値に対応するサンプル値は、量子化パラメータを使用して復号され、最も高い可能性のあるインデックス値で指定される、復号ステップと;
    を備える、方法。
  8. 前記1つ以上のインデックス値は、パック・インデックス値又はパック・インデックス残差値である、
    請求項に記載の方法。
  9. コンピューティングデバイスに、
    ピクチャのユニットについての符号化データを受け取るステップであって、前記ユニットはイントラピクチャ圧縮を使用して符号化されており、前記ユニットは1つ以上のブロックを含む、ステップと;
    前記符号化データを復号する復号ステップであって、該復号ステップは、ベースカラーテーブルとインデックスマップを使用し、前記ベースカラーテーブルは、1つ以上のインデックス値を1つ以上の対応するベースカラーに割り当て、前記インデックスマップは、前記1つ以上のインデックス値のうちの少なくとも1つと、前記ベースカラーテーブル内の前記1つ以上の対応するベースカラーのいずれのベースカラーも表さない1つ以上の例外値とを含み、例外値に対応するサンプル値は、量子化パラメータを使用して復号され、最も高い可能性のあるインデックス値で指定される、復号ステップと;
    を含む動作を実行させる、コンピュータプログラム。
JP2016522740A 2013-10-14 2013-10-14 ビデオ及び画像符号化及び復号のためのベースカラーインデックスマップモードの機能 Active JP6336058B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2013/085166 WO2015054812A1 (en) 2013-10-14 2013-10-14 Features of base color index map mode for video and image coding and decoding

Publications (2)

Publication Number Publication Date
JP2016541144A JP2016541144A (ja) 2016-12-28
JP6336058B2 true JP6336058B2 (ja) 2018-06-06

Family

ID=52827519

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016522740A Active JP6336058B2 (ja) 2013-10-14 2013-10-14 ビデオ及び画像符号化及び復号のためのベースカラーインデックスマップモードの機能

Country Status (11)

Country Link
US (4) US10506254B2 (ja)
EP (2) EP3720132A1 (ja)
JP (1) JP6336058B2 (ja)
KR (2) KR102275639B1 (ja)
CN (1) CN105659606B (ja)
AU (1) AU2013403225B2 (ja)
BR (1) BR112016008044A8 (ja)
CA (1) CA2925183C (ja)
MX (1) MX368934B (ja)
RU (1) RU2666635C2 (ja)
WO (1) WO2015054812A1 (ja)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2925183C (en) 2013-10-14 2020-03-10 Microsoft Technology Licensing, Llc Features of base color index map mode for video and image coding and decoding
RU2654129C2 (ru) 2013-10-14 2018-05-16 МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи Функциональные возможности режима внутреннего предсказания с блочным копированием для кодирования и декодирования видео и изображений
CN105659602B (zh) 2013-10-14 2019-10-08 微软技术许可有限责任公司 用于视频和图像编码的帧内块复制预测模式的编码器侧选项
US10291827B2 (en) * 2013-11-22 2019-05-14 Futurewei Technologies, Inc. Advanced screen content coding solution
BR112016015080A2 (pt) 2014-01-03 2017-08-08 Microsoft Technology Licensing Llc Predição de vetor de bloco em codificação / decodificação de vídeo e imagem
US10390034B2 (en) 2014-01-03 2019-08-20 Microsoft Technology Licensing, Llc Innovations in block vector prediction and estimation of reconstructed sample values within an overlap area
US11284103B2 (en) 2014-01-17 2022-03-22 Microsoft Technology Licensing, Llc Intra block copy prediction with asymmetric partitions and encoder-side search patterns, search ranges and approaches to partitioning
US10542274B2 (en) 2014-02-21 2020-01-21 Microsoft Technology Licensing, Llc Dictionary encoding and decoding of screen content
WO2015143351A1 (en) 2014-03-21 2015-09-24 Futurewei Technologies, Inc. Advanced screen content coding with improved color table and index map coding methods
CN105100814B (zh) 2014-05-06 2020-07-14 同济大学 图像编码、解码方法及装置
US10091512B2 (en) 2014-05-23 2018-10-02 Futurewei Technologies, Inc. Advanced screen content coding with improved palette table and index map coding methods
KR102413529B1 (ko) 2014-06-19 2022-06-24 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 통합된 인트라 블록 카피 및 인터 예측 모드
CA2950818C (en) * 2014-06-20 2020-12-22 Hfi Innovation Inc. Method and apparatus of binarization and context-adaptive coding for syntax in video coding
RU2679201C2 (ru) 2014-09-30 2019-02-06 МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи Правила для режимов внутрикадрового прогнозирования, когда активируется волновая параллельная обработка данных
CN106664405B (zh) 2015-06-09 2020-06-09 微软技术许可有限责任公司 用调色板模式对经逸出编码的像素的稳健编码/解码
US10986349B2 (en) 2017-12-29 2021-04-20 Microsoft Technology Licensing, Llc Constraints on locations of reference blocks for intra block copy prediction
US10491897B2 (en) * 2018-04-13 2019-11-26 Google Llc Spatially adaptive quantization-aware deblocking filter
CN108632630B (zh) * 2018-05-28 2020-03-31 中国科学技术大学 一种结合位运算和概率预测的二值图像编码方法
EP3861732A4 (en) * 2018-10-01 2022-07-06 OP Solutions, LLC EXPONENTIAL PARTITIONING METHODS AND SYSTEMS
US20200367209A1 (en) * 2019-05-16 2020-11-19 Mediatek Singapore Pte. Ltd. HARQ Offset And Reduced Bi-Field Size In DAI Signaling For Compact DCI In Mobile Communications
CN112118449B (zh) * 2019-06-21 2022-03-25 腾讯科技(深圳)有限公司 一种图像压缩与解压缩的方法及装置
CN112969074B (zh) * 2021-02-01 2021-11-16 西南交通大学 一种应用于静态霍夫曼表的全并行频数排序生成方法

Family Cites Families (234)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2114404B (en) 1982-01-28 1986-07-02 British Broadcasting Corp Generating a colour video signal representative of a stored picture
JPH087553B2 (ja) 1988-10-27 1996-01-29 インターナショナル・ビジネス・マシーンズ・コーポレーション 色画像量子化方法及び装置
US5706290A (en) 1994-12-15 1998-01-06 Shaw; Venson Method and apparatus including system architecture for multimedia communication
US8505108B2 (en) 1993-11-18 2013-08-06 Digimarc Corporation Authentication using a digital watermark
US5508942A (en) 1993-11-24 1996-04-16 Intel Corporation Intra/inter decision rules for encoding and decoding video signals
US5999189A (en) 1995-08-04 1999-12-07 Microsoft Corporation Image compression to reduce pixel and texture memory requirements in a real-time image generator
US6389162B2 (en) 1996-02-15 2002-05-14 Canon Kabushiki Kaisha Image processing apparatus and method and medium
CN1238857C (zh) 1999-04-02 2006-01-25 松下电器产业株式会社 光盘的记录方法和再现方法
JP2001251507A (ja) 2000-03-03 2001-09-14 Fujitsu Ltd 画像処理装置
US6701012B1 (en) 2000-07-24 2004-03-02 Sharp Laboratories Of America, Inc. Out-of-layer pixel generation for a decomposed-image layer
US6748116B1 (en) 2000-08-22 2004-06-08 Airzip, Inc. Apparatus and method for compressing and decompressing image files
DE10049571C1 (de) 2000-10-06 2002-06-13 Siemens Ag Verfahren und Anordnung zum Übertragen eines Vektors
US7023924B1 (en) 2000-12-28 2006-04-04 Emc Corporation Method of pausing an MPEG coded video stream
US6853755B2 (en) 2001-03-28 2005-02-08 Sharp Laboratories Of America, Inc. Method and apparatus for adaptive compression of scanned documents
US7031540B2 (en) 2001-09-12 2006-04-18 Mobitv, Inc. Transformation to increase the lempel-ziv compressibility of images with minimal visual distortion
US7120196B2 (en) 2002-04-29 2006-10-10 Ess Technology, Inc. Intra-prediction using intra-macroblock motion compensation
PT1467491E (pt) 2002-05-02 2007-03-30 Fraunhofer Ges Forschung Codificação aritmética de coeficientes de transformação
US7289674B2 (en) 2002-06-11 2007-10-30 Nokia Corporation Spatial prediction based intra coding
US7085420B2 (en) 2002-06-28 2006-08-01 Microsoft Corporation Text detection in continuous tone image segments
US7016547B1 (en) 2002-06-28 2006-03-21 Microsoft Corporation Adaptive entropy encoding/decoding for screen capture content
US7072512B2 (en) 2002-07-23 2006-07-04 Microsoft Corporation Segmentation of digital video and images into continuous tone and palettized regions
DE10301362B4 (de) 2003-01-16 2005-06-09 GEMAC-Gesellschaft für Mikroelektronikanwendung Chemnitz mbH Blockdatenkompressionssystem, bestehend aus einer Kompressionseinrichtung und einer Dekompressionseinrichtung, und Verfahren zur schnellen Blockdatenkompression mit Multi-Byte-Suche
US7373005B2 (en) 2003-04-10 2008-05-13 Micron Technology, Inc. Compression system for integrated sensor devices
WO2005022920A1 (en) 2003-08-26 2005-03-10 Thomson Licensing S.A. Method and apparatus for encoding hybrid intra-inter coded blocks
US7317839B2 (en) 2003-09-07 2008-01-08 Microsoft Corporation Chroma motion vector derivation for interlaced forward-predicted fields
US7724827B2 (en) 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
US8472792B2 (en) 2003-12-08 2013-06-25 Divx, Llc Multimedia distribution system
US7519274B2 (en) 2003-12-08 2009-04-14 Divx, Inc. File format for multiple track digital data
KR101044934B1 (ko) 2003-12-18 2011-06-28 삼성전자주식회사 움직임 벡터 추정방법 및 부호화 모드 결정방법
US8036271B2 (en) * 2004-02-24 2011-10-11 Lsi Corporation Method and apparatus for determining a second picture for temporal direct-mode block prediction
US8116374B2 (en) 2004-05-07 2012-02-14 Broadcom Corporation Method and system for generating a transform size syntax element for video decoding
JP4418762B2 (ja) 2004-05-07 2010-02-24 キヤノン株式会社 画像符号化装置及び画像復号装置及びそれらの制御方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
WO2006012383A2 (en) 2004-07-20 2006-02-02 Qualcomm Incorporated Method and apparatus for motion vector prediction in temporal video compression
JP2006140758A (ja) 2004-11-12 2006-06-01 Toshiba Corp 動画像符号化方法、動画像符号化装置および動画像符号化プログラム
US7720154B2 (en) 2004-11-12 2010-05-18 Industrial Technology Research Institute System and method for fast variable-size motion estimation
US20060282855A1 (en) 2005-05-05 2006-12-14 Digital Display Innovations, Llc Multiple remote display system
KR100716999B1 (ko) 2005-06-03 2007-05-10 삼성전자주식회사 영상의 대칭성을 이용한 인트라 예측 방법, 이를 이용한영상의 복호화, 부호화 방법 및 장치
KR101211665B1 (ko) 2005-08-12 2012-12-12 삼성전자주식회사 영상의 인트라 예측 부호화, 복호화 방법 및 장치
JP2007053561A (ja) 2005-08-17 2007-03-01 Matsushita Electric Ind Co Ltd 画像符号化装置および画像符号化方法
RU2407223C2 (ru) * 2005-08-19 2010-12-20 Телефонактиеболагет Лм Эрикссон (Пабл) Сжатие текстуры на основании двух оттенков с модифицированной яркостью
US7986844B2 (en) 2005-11-22 2011-07-26 Intel Corporation Optimized video compression using hashing function
US7956930B2 (en) 2006-01-06 2011-06-07 Microsoft Corporation Resampling and picture resizing operations for multi-resolution video coding and decoding
US8582905B2 (en) 2006-01-31 2013-11-12 Qualcomm Incorporated Methods and systems for rate control within an encoding device
CN101026761B (zh) 2006-02-17 2010-05-12 中国科学院自动化研究所 一种具有最小误差的快速变尺寸块匹配的运动估计方法
US7668382B2 (en) 2006-02-24 2010-02-23 Microsoft Corporation Block-based fast image compression
US7616816B2 (en) 2006-03-20 2009-11-10 Sarnoff Corporation System and method for mission-driven visual information retrieval and organization
EP2011342B1 (en) 2006-04-14 2017-06-28 Nxp B.V. Motion estimation at image borders
US7965861B2 (en) 2006-04-26 2011-06-21 The Board Of Regents Of The University Of Texas System Methods and systems for digital image security
EP2039171B1 (en) 2006-07-07 2016-10-05 Telefonaktiebolaget LM Ericsson (publ) Weighted prediction for video coding
US8472527B2 (en) 2006-09-13 2013-06-25 Texas Instruments Incorporated Hierarchical motion estimation using original frame for sub-sampled reference
EP2070334A1 (en) 2006-09-22 2009-06-17 THOMSON Licensing Method and apparatus for multiple pass video coding and decoding
FR2906433B1 (fr) 2006-09-22 2009-02-27 Canon Kk Procedes et dispositifs de codage et de decodage d'images, programme d'ordinateur les mettant en oeuvre et support d'informaton permettant de les mettre en oeuvre
US20080084924A1 (en) 2006-10-05 2008-04-10 Donald Martin Monro Matching pursuits basis selection design
US8170101B2 (en) 2006-10-27 2012-05-01 Sharp Laboratories Of America, Inc. Methods and systems for low-complexity data compression
US8218641B2 (en) 2006-10-31 2012-07-10 Sony Computer Entertainment Inc. Picture encoding using same-picture reference for pixel reconstruction
US7907783B2 (en) 2007-01-24 2011-03-15 Samsung Electronics Co., Ltd. Apparatus and method of matching symbols in a text image coding and decoding system
CN100527842C (zh) 2007-01-26 2009-08-12 清华大学 基于背景的运动估计编码方法
US8031937B2 (en) 2007-04-04 2011-10-04 Telefonaktiebolaget Lm Ericsson (Publ) Frame buffer compression and decompression method for graphics rendering
US7903873B2 (en) 2007-09-13 2011-03-08 Microsoft Corporation Textual image coding
CN101420606A (zh) 2007-10-23 2009-04-29 青岛海信电器股份有限公司 图像处理方法和装置
KR101365444B1 (ko) 2007-11-19 2014-02-21 삼성전자주식회사 영상의 해상도의 조정을 통하여 동영상을 효율적으로부호화/복호화하는 방법 및 장치
JP2009147807A (ja) 2007-12-17 2009-07-02 Fujifilm Corp 画像処理装置
CN101232619B (zh) 2008-01-25 2011-05-11 浙江大学 嵌入帧内编码块的视频编码方法
TWI375472B (en) 2008-02-04 2012-10-21 Ind Tech Res Inst Intra prediction method for luma block of video
JP2009260473A (ja) 2008-04-14 2009-11-05 Canon Inc 色処理方法及び装置、プログラム、記録媒体
JP2010035137A (ja) 2008-07-01 2010-02-12 Sony Corp 画像処理装置および方法、並びにプログラム
CN102113326A (zh) 2008-08-04 2011-06-29 杜比实验室特许公司 重叠块差异估计和补偿体系结构
US8213503B2 (en) 2008-09-05 2012-07-03 Microsoft Corporation Skip modes for inter-layer residual video coding and decoding
US8385404B2 (en) 2008-09-11 2013-02-26 Google Inc. System and method for video encoding using constructed reference frame
US8254704B2 (en) 2008-10-30 2012-08-28 Microsoft Corporation Remote computing platforms providing high-fidelity display and interactivity for clients
US8180165B2 (en) 2008-12-19 2012-05-15 Microsoft Corp. Accelerated screen codec
TW201028018A (en) 2009-01-07 2010-07-16 Ind Tech Res Inst Encoder, decoder, encoding method and decoding method
CA2750735C (en) 2009-02-02 2018-09-18 Calgary Scientific Inc. Image data transmission
RU2420021C2 (ru) 2009-03-24 2011-05-27 Корпорация "САМСУНГ ЭЛЕКТРОНИКС Ко., Лтд." Способ сжатия изображений и видеопоследовательностей
WO2010149554A1 (en) 2009-06-22 2010-12-29 Thomson Licensing Process for matching pursuit based coding of video data for a sequence of images
CN101626512A (zh) 2009-08-11 2010-01-13 北京交通大学 一种基于相关性优化准则的多描述视频编码方法及装置
JP5321426B2 (ja) 2009-11-26 2013-10-23 株式会社Jvcケンウッド 画像符号化装置、画像復号化装置、画像符号化方法、及び画像復号化方法
KR101623124B1 (ko) 2009-12-03 2016-05-24 에스케이 텔레콤주식회사 비디오 인코딩 장치 및 그 인코딩 방법, 비디오 디코딩 장치 및 그 디코딩 방법, 및 거기에 이용되는 방향적 인트라 예측방법
US20110194613A1 (en) 2010-02-11 2011-08-11 Qualcomm Incorporated Video coding with large macroblocks
EP2553927B1 (fr) 2010-03-31 2018-11-28 Orange Procedes et dispositifs de codage et de decodage d'une sequence d'images mettant en oeuvre une prediction par compensation de mouvement avant, et programme d'ordinateur correspondant
US8619857B2 (en) 2010-04-09 2013-12-31 Sharp Laboratories Of America, Inc. Methods and systems for intra prediction
CN105472386B (zh) 2010-04-09 2018-09-18 Lg电子株式会社 处理视频数据的方法和装置
US8644375B2 (en) 2010-04-09 2014-02-04 Sharp Laboratories Of America, Inc. Methods and systems for intra prediction
KR20110123651A (ko) 2010-05-07 2011-11-15 한국전자통신연구원 생략 부호화를 이용한 영상 부호화 및 복호화 장치 및 그 방법
KR101484281B1 (ko) 2010-07-09 2015-01-21 삼성전자주식회사 블록 병합을 이용한 비디오 부호화 방법 및 그 장치, 블록 병합을 이용한 비디오 복호화 방법 및 그 장치
ES2729031T3 (es) 2010-07-14 2019-10-29 Ntt Docomo Inc Intra-predicción de baja complejidad para codificación de vídeo
SI2636218T1 (sl) 2010-11-04 2021-12-31 Ge Video Compression, Llc Kodiranje slike, ki podpira združevanje blokov in preskakovalni način
KR101756442B1 (ko) 2010-11-29 2017-07-11 에스케이텔레콤 주식회사 인트라예측모드의 중복성을 최소화하기 위한 영상 부호화/복호화 방법 및 장치
US20120163457A1 (en) 2010-12-28 2012-06-28 Viktor Wahadaniah Moving picture decoding method, moving picture coding method, moving picture decoding apparatus, moving picture coding apparatus, and moving picture coding and decoding apparatus
US8767835B2 (en) 2010-12-28 2014-07-01 Mitsubishi Electric Research Laboratories, Inc. Method for coding videos using dictionaries
KR20120080122A (ko) 2011-01-06 2012-07-16 삼성전자주식회사 경쟁 기반의 다시점 비디오 부호화/복호화 장치 및 방법
US8913662B2 (en) 2011-01-06 2014-12-16 Qualcomm Incorporated Indicating intra-prediction mode selection for video coding using CABAC
PL2768145T3 (pl) 2011-01-14 2016-07-29 Ge Video Compression Llc Schemat kodowania i dekodowania entropijnego
US9532066B2 (en) 2011-01-21 2016-12-27 Qualcomm Incorporated Motion vector prediction
US9319716B2 (en) 2011-01-27 2016-04-19 Qualcomm Incorporated Performing motion vector prediction for video coding
US9288501B2 (en) 2011-03-08 2016-03-15 Qualcomm Incorporated Motion vector predictors (MVPs) for bi-predictive inter mode in video coding
KR101532665B1 (ko) 2011-03-14 2015-07-09 미디어텍 인크. 시간적 움직임 백터 예측을 도출하기 위한 방법 및 장치
US8693547B2 (en) 2011-04-06 2014-04-08 Google Inc. Apparatus and method for coding using motion vector segmentation
EP2702561A1 (en) * 2011-04-29 2014-03-05 Telefonaktiebolaget LM Ericsson (PUBL) Encoder, decoder and methods thereof for texture compression
US20120281760A1 (en) 2011-05-04 2012-11-08 Hyung Joon Kim Iterative Grid-Pattern Motion Search
CN102137263B (zh) 2011-05-09 2013-07-03 松日数码发展(深圳)有限公司 基于cnm关键帧分类的分布式视频编码及解码方法
US20120294353A1 (en) 2011-05-16 2012-11-22 Mediatek Inc. Apparatus and Method of Sample Adaptive Offset for Luma and Chroma Components
CN102238391B (zh) 2011-05-25 2016-12-07 深圳市云宙多媒体技术有限公司 一种预测编码方法、装置
CN103688533B (zh) 2011-06-20 2015-12-23 联发科技(新加坡)私人有限公司 可减少行存储器的色度帧内预测方法及装置
EP3223523A1 (en) 2011-06-24 2017-09-27 HFI Innovation Inc. Method and apparatus for removing redundancy in motion vector predictors
CA2842646C (en) 2011-06-27 2018-09-04 Panasonic Corporation Image decoding method, image coding method, image decoding apparatus, image coding apparatus, and image coding and decoding apparatus
US9060173B2 (en) 2011-06-30 2015-06-16 Sharp Kabushiki Kaisha Context initialization based on decoder picture buffer
WO2013003823A1 (en) 2011-06-30 2013-01-03 Huawei Technologies, Co., Ltd. Lossless coding and associated signaling methods for compound video
US9516349B2 (en) 2011-07-12 2016-12-06 Futurewei Technologies, Inc. Pixel-based intra prediction for coding in HEVC
CN102223541B (zh) 2011-07-14 2013-07-03 北京工业大学 一种混合图像的编码方法
EP2745519B1 (en) 2011-08-17 2017-09-27 MediaTek Singapore Pte Ltd. Method and apparatus for intra prediction using non-square blocks
BR112014004914B1 (pt) 2011-08-29 2022-04-12 Ibex Pt Holdings Co., Ltd Método de codificação de uma imagem em um modo amvp
US8804816B2 (en) 2011-08-30 2014-08-12 Microsoft Corporation Video encoding enhancements
US9578336B2 (en) 2011-08-31 2017-02-21 Texas Instruments Incorporated Hybrid video and graphics system with automatic content detection process, and other circuits, processes, and systems
US9484952B2 (en) 2011-11-03 2016-11-01 Qualcomm Incorporated Context state and probability initialization for context adaptive entropy coding
US10390046B2 (en) 2011-11-07 2019-08-20 Qualcomm Incorporated Coding significant coefficient information in transform skip mode
WO2013070960A2 (en) 2011-11-08 2013-05-16 General Instrument Corporation Devices and methods for sample adaptive offset coding and/or signaling
US20130121417A1 (en) 2011-11-16 2013-05-16 Qualcomm Incorporated Constrained reference picture sets in wave front parallel processing of video data
EP2781091B1 (en) 2011-11-18 2020-04-08 GE Video Compression, LLC Multi-view coding with efficient residual handling
US9883203B2 (en) 2011-11-18 2018-01-30 Qualcomm Incorporated Adaptive overlapped block motion compensation
KR20140120891A (ko) 2011-12-20 2014-10-14 모토로라 모빌리티 엘엘씨 효율적인 변환 유닛 인코딩을 위한 방법 및 장치
US9762904B2 (en) 2011-12-22 2017-09-12 Qualcomm Incorporated Performing motion vector prediction for video coding
US20130163664A1 (en) 2011-12-22 2013-06-27 Qualcomm Incorporated Unified partition mode table for intra-mode coding
US9900615B2 (en) 2011-12-28 2018-02-20 Microsoft Technology Licensing, Llc Representative motion information for temporal motion prediction in video encoding and decoding
WO2013102293A1 (en) 2012-01-04 2013-07-11 Mediatek Singapore Pte. Ltd. Improvements of luma-based chroma intra prediction
US9451252B2 (en) 2012-01-14 2016-09-20 Qualcomm Incorporated Coding parameter sets and NAL unit headers for video coding
US9749661B2 (en) 2012-01-18 2017-08-29 Qualcomm Incorporated Sub-streams for wavefront parallel processing in video coding
JP2013150173A (ja) 2012-01-19 2013-08-01 Sony Corp 画像処理装置および方法
KR101863179B1 (ko) 2012-01-20 2018-05-31 지이 비디오 컴프레션, 엘엘씨 병렬 처리, 전송 디멀티플렉서 및 비디오 비트스트림을 허용하는 코딩 개념
US9210438B2 (en) 2012-01-20 2015-12-08 Sony Corporation Logical intra mode naming in HEVC video coding
JP2013150215A (ja) 2012-01-20 2013-08-01 Fujitsu Ltd 動画像復号装置、動画像符号化装置、動画像復号方法、動画像符号化方法、動画像復号プログラム及び動画像符号化プログラム
US20130188718A1 (en) 2012-01-20 2013-07-25 Qualcomm Incorporated Motion prediction in svc without including a temporally neighboring block motion vector in a candidate list
US10244246B2 (en) 2012-02-02 2019-03-26 Texas Instruments Incorporated Sub-pictures for pixel rate balancing on multi-core platforms
WO2013128010A2 (en) 2012-03-02 2013-09-06 Canon Kabushiki Kaisha Method and devices for encoding a sequence of images into a scalable video bit-stream, and decoding a corresponding scalable video bit-stream
US8737824B1 (en) 2012-03-09 2014-05-27 Google Inc. Adaptively encoding a media stream with compound prediction
US9503720B2 (en) 2012-03-16 2016-11-22 Qualcomm Incorporated Motion vector coding and bi-prediction in HEVC and its extensions
JP2015515806A (ja) 2012-03-26 2015-05-28 ユークリッド・ディスカバリーズ・エルエルシーEuclid Discoveries,Llc コンテキストベースの映像符号化及び映像復号化
US20130258052A1 (en) 2012-03-28 2013-10-03 Qualcomm Incorporated Inter-view residual prediction in 3d video coding
US10129540B2 (en) 2012-04-10 2018-11-13 Texas Instruments Incorporated Reduced complexity coefficient transmission for adaptive loop filtering (ALF) in video coding
US9838684B2 (en) 2012-04-11 2017-12-05 Qualcomm Incorporated Wavefront parallel processing for video coding
US20130272409A1 (en) 2012-04-12 2013-10-17 Qualcomm Incorporated Bandwidth reduction in video coding through applying the same reference index
EP2842327A4 (en) 2012-04-24 2016-10-12 Mediatek Inc METHOD AND APPARATUS FOR DETECTING MOTION VECTORS FOR THREE DIMENSIONAL VIDEO CODING
US9521410B2 (en) 2012-04-26 2016-12-13 Qualcomm Incorporated Quantization parameter (QP) coding in video coding
GB2501535A (en) 2012-04-26 2013-10-30 Sony Corp Chrominance Processing in High Efficiency Video Codecs
US20130294524A1 (en) 2012-05-04 2013-11-07 Qualcomm Incorporated Transform skipping and lossless coding unification
CN102752595B (zh) 2012-06-29 2014-07-09 香港应用科技研究院有限公司 用于深度图编码和解码的混合型跳过模式
US9621905B2 (en) 2012-06-29 2017-04-11 Qualcomm Incorporated Tiles and wavefront parallel processing
US9414054B2 (en) 2012-07-02 2016-08-09 Microsoft Technology Licensing, Llc Control and use of chroma quantization parameter values
US9591302B2 (en) 2012-07-02 2017-03-07 Microsoft Technology Licensing, Llc Use of chroma quantization parameter offsets in deblocking
US9716892B2 (en) 2012-07-02 2017-07-25 Qualcomm Incorporated Video parameter set including session negotiation information
US9264713B2 (en) 2012-07-11 2016-02-16 Qualcomm Incorporated Rotation of prediction residual blocks in video coding with transform skipping
US9467692B2 (en) 2012-08-31 2016-10-11 Qualcomm Incorporated Intra prediction improvements for scalable video coding
US20140071235A1 (en) 2012-09-13 2014-03-13 Qualcomm Incorporated Inter-view motion prediction for 3d video
KR102063239B1 (ko) 2012-09-26 2020-01-07 벨로스 미디어 인터내셔널 리미티드 화상 복호 방법, 화상 부호화 방법, 화상 복호 장치, 화상 부호화 장치 및 화상 부호화 복호 장치
EP2904795A4 (en) 2012-10-03 2016-09-07 Mediatek Inc METHOD AND APPARATUS FOR THE HEREDITY OF MOTION INFORMATION IN THREE-DIMENSIONAL VIDEO CODING
US9615090B2 (en) 2012-12-28 2017-04-04 Qualcomm Incorporated Parsing syntax elements in three-dimensional video coding
US9826244B2 (en) 2013-01-08 2017-11-21 Qualcomm Incorporated Device and method for scalable coding of video information based on high efficiency video coding
EP2944080B1 (en) 2013-01-11 2018-09-12 HFI Innovation Inc. Method and apparatus for efficient coding of depth lookup table
US9800857B2 (en) 2013-03-08 2017-10-24 Qualcomm Incorporated Inter-view residual prediction in multi-view or 3-dimensional video coding
US9516306B2 (en) 2013-03-27 2016-12-06 Qualcomm Incorporated Depth coding modes signaling of depth data for 3D-HEVC
US10904551B2 (en) 2013-04-05 2021-01-26 Texas Instruments Incorporated Video coding using intra block copy
US9654777B2 (en) * 2013-04-05 2017-05-16 Qualcomm Incorporated Determining palette indices in palette-based video coding
CN103237226B (zh) 2013-04-07 2016-08-03 宁波大学 一种立体视频宏块丢失错误隐藏方法
WO2014166104A1 (en) 2013-04-12 2014-10-16 Mediatek Singapore Pte. Ltd. Removal of parsing dependency for illumination compensation
US9609336B2 (en) 2013-04-16 2017-03-28 Fastvdo Llc Adaptive coding, transmission and efficient display of multimedia (acted)
CN103281538B (zh) 2013-06-06 2016-01-13 上海交通大学 基于滚动哈希和块级别帧内预测的帧内编码方法
US9787989B2 (en) 2013-06-11 2017-10-10 Blackberry Limited Intra-coding mode-dependent quantization tuning
CN111800640B (zh) 2013-06-13 2023-11-10 上海天荷电子信息有限公司 方向交替变换来回扫描串匹配的图像编码解码方法和装置
CN105393542B (zh) 2013-06-18 2019-04-09 Vid拓展公司 Hevc扩展的层间参数集
US10015515B2 (en) 2013-06-21 2018-07-03 Qualcomm Incorporated Intra prediction from a predictive block
US9128680B2 (en) * 2013-06-27 2015-09-08 Cal-Comp Electronics & Communications Company Limited Casing structure and electronic device using the same
GB2516422A (en) 2013-07-09 2015-01-28 Sony Corp Data encoding and decoding
US20150016533A1 (en) 2013-07-12 2015-01-15 Qualcomm Incorporated Intra motion compensation extensions
US9558567B2 (en) 2013-07-12 2017-01-31 Qualcomm Incorporated Palette prediction in palette-based video coding
US9756347B2 (en) * 2013-07-23 2017-09-05 Futurewei Technologies, Inc. Screen content coding systems and methods
CN112383781B (zh) 2013-08-16 2023-05-02 上海天荷电子信息有限公司 参考块的位置决定其重构阶段的块匹配编解码方法和装置
CN103428498A (zh) 2013-08-21 2013-12-04 江苏新瑞峰信息科技有限公司 一种无损图像压缩系统
US10313682B2 (en) 2013-08-26 2019-06-04 Qualcomm Incorporated Determining regions when performing intra block copying
US20170155899A1 (en) 2013-09-07 2017-06-01 Tongji University Image compression method and apparatus using matching
US20150071357A1 (en) 2013-09-12 2015-03-12 Qualcomm Incorporated Partial intra block copying for video coding
AU2013228045A1 (en) 2013-09-13 2015-04-02 Canon Kabushiki Kaisha Method, apparatus and system for encoding and decoding video data
CN105659602B (zh) 2013-10-14 2019-10-08 微软技术许可有限责任公司 用于视频和图像编码的帧内块复制预测模式的编码器侧选项
CA2925183C (en) 2013-10-14 2020-03-10 Microsoft Technology Licensing, Llc Features of base color index map mode for video and image coding and decoding
RU2654129C2 (ru) 2013-10-14 2018-05-16 МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи Функциональные возможности режима внутреннего предсказания с блочным копированием для кодирования и декодирования видео и изображений
US20150110181A1 (en) 2013-10-18 2015-04-23 Samsung Electronics Co., Ltd. Methods for palette prediction and intra block copy padding
US10291827B2 (en) 2013-11-22 2019-05-14 Futurewei Technologies, Inc. Advanced screen content coding solution
EP3080991B1 (en) 2013-12-10 2020-02-12 Canon Kabushiki Kaisha Improved palette mode in hevc
JP6465890B2 (ja) 2013-12-10 2019-02-06 キヤノン株式会社 画素ブロックの符号化または復号の方法および装置
CN110336999B (zh) 2013-12-18 2021-09-03 寰发股份有限公司 利用调色板编码的编码视频数据区块的方法和装置
US10972742B2 (en) 2013-12-19 2021-04-06 Canon Kabushiki Kaisha Encoding process using a palette mode
GB2521606A (en) 2013-12-20 2015-07-01 Canon Kk Method and apparatus for transition encoding in video coding and decoding
KR20160102067A (ko) 2013-12-30 2016-08-26 퀄컴 인코포레이티드 3d 비디오 코딩에서의 델타 dc 잔차 코딩의 단순화
US9872040B2 (en) * 2014-01-02 2018-01-16 Qualcomm Incorporated Color index coding for palette-based video coding
US10055189B2 (en) 2014-01-02 2018-08-21 Vid Scale, Inc. Two-dimensional palette coding for screen content coding
BR112016015080A2 (pt) 2014-01-03 2017-08-08 Microsoft Technology Licensing Llc Predição de vetor de bloco em codificação / decodificação de vídeo e imagem
US10390034B2 (en) 2014-01-03 2019-08-20 Microsoft Technology Licensing, Llc Innovations in block vector prediction and estimation of reconstructed sample values within an overlap area
US9883197B2 (en) 2014-01-09 2018-01-30 Qualcomm Incorporated Intra prediction of chroma blocks using the same vector
US11284103B2 (en) 2014-01-17 2022-03-22 Microsoft Technology Licensing, Llc Intra block copy prediction with asymmetric partitions and encoder-side search patterns, search ranges and approaches to partitioning
GB2522844A (en) 2014-01-29 2015-08-12 Sony Corp Data encoding and decoding
US9699468B2 (en) 2014-02-10 2017-07-04 Microsoft Technology Licensing, Llc Adaptive screen and video coding scheme
US20150237356A1 (en) 2014-02-18 2015-08-20 Microsoft Corporation Host encoder for hardware-accelerated video encoding
US10542274B2 (en) 2014-02-21 2020-01-21 Microsoft Technology Licensing, Llc Dictionary encoding and decoding of screen content
CA2939431C (en) 2014-03-04 2020-09-22 Microsoft Techology Licensing, Llc Block flipping and skip mode in intra block copy prediction
EP3114838B1 (en) 2014-03-04 2018-02-07 Microsoft Technology Licensing, LLC Hash table construction and availability checking for hash-based block matching
US20150262404A1 (en) 2014-03-13 2015-09-17 Huawei Technologies Co., Ltd. Screen Content And Mixed Content Coding
CN106105229B (zh) 2014-03-14 2019-03-15 寰发股份有限公司 使用调色板编码来编码视频数据的块的方法及装置
CN106165424B (zh) 2014-03-14 2019-08-16 Vid拓展公司 用于调色板解码及编码视频数据的方法、解码器及编码器
EP3120561B1 (en) 2014-03-16 2023-09-06 VID SCALE, Inc. Method and apparatus for the signaling of lossless video coding
CA2942737A1 (en) 2014-03-17 2015-09-24 Nokia Technologies Oy Method and technical equipment for video encoding and decoding
US20150264348A1 (en) 2014-03-17 2015-09-17 Qualcomm Incorporated Dictionary coding of video content
US10477232B2 (en) 2014-03-21 2019-11-12 Qualcomm Incorporated Search region determination for intra block copy in video coding
US9654806B2 (en) 2014-03-26 2017-05-16 Qualcomm Incorporated Determining palette size, palette entries and filtering of palette coded blocks in video coding
CN103957412B (zh) 2014-05-06 2017-04-12 北京大学 一种针对屏幕视频帧间残差的基础色索引映射算法
KR20170002611A (ko) 2014-05-09 2017-01-06 노키아 테크놀로지스 오와이 팔레트 코딩을 사용하는 비디오 인코딩 및 디코딩을 위한 방법 및 기술 장비
US10264285B2 (en) 2014-05-22 2019-04-16 Qualcomm Incorporated Coding runs in palette-based video coding
US10038915B2 (en) 2014-05-22 2018-07-31 Qualcomm Incorporated Escape sample coding in palette-based video coding
US10750198B2 (en) 2014-05-22 2020-08-18 Qualcomm Incorporated Maximum palette parameters in palette-based video coding
US11323733B2 (en) 2014-05-23 2022-05-03 Qualcomm Incorporated Predictor palette initialization in palette-based video coding
US10382749B2 (en) 2014-05-23 2019-08-13 Qualcomm Incorporated Coding run values based on palette index in palette-based video coding
US10291940B2 (en) 2014-05-23 2019-05-14 Qualcomm Incorporated Coding runs with escape in palette-based video coding
AU2014202921B2 (en) 2014-05-29 2017-02-02 Canon Kabushiki Kaisha Method, apparatus and system for de-blocking a block of video samples
US9924175B2 (en) 2014-06-11 2018-03-20 Qualcomm Incorporated Determining application of deblocking filtering to palette coded blocks in video coding
US10136141B2 (en) 2014-06-11 2018-11-20 Qualcomm Incorporated Determining quantization parameter (QP) values and delta QP values for palette coded blocks in video coding
KR102413529B1 (ko) 2014-06-19 2022-06-24 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 통합된 인트라 블록 카피 및 인터 예측 모드
WO2015194187A1 (en) 2014-06-20 2015-12-23 Sharp Kabushiki Kaisha Harmonized palette coding
US20150381994A1 (en) 2014-06-27 2015-12-31 Futurewei Technologies, Inc. Advanced screen content coding with improved palette table and index map coding methods
US10412387B2 (en) 2014-08-22 2019-09-10 Qualcomm Incorporated Unified intra-block copy and inter-prediction
AU2014216056A1 (en) 2014-08-25 2016-03-10 Canon Kabushiki Kaisha Method, apparatus and system for predicting a block of video samples
RU2679201C2 (ru) 2014-09-30 2019-02-06 МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи Правила для режимов внутрикадрового прогнозирования, когда активируется волновая параллельная обработка данных
US20160112713A1 (en) 2014-10-20 2016-04-21 Google Inc. Mapping spherical image to 2d representations
US9591325B2 (en) 2015-01-27 2017-03-07 Microsoft Technology Licensing, Llc Special case handling for merged chroma blocks in intra block copy prediction mode
CN107548556A (zh) 2015-04-21 2018-01-05 Vid拓展公司 基于艺术意图的视频译码
CN106664405B (zh) 2015-06-09 2020-06-09 微软技术许可有限责任公司 用调色板模式对经逸出编码的像素的稳健编码/解码
US9704270B1 (en) 2015-07-30 2017-07-11 Teradici Corporation Method and apparatus for rasterizing and encoding vector graphics

Also Published As

Publication number Publication date
BR112016008044A8 (pt) 2020-03-17
CA2925183A1 (en) 2015-04-23
JP2016541144A (ja) 2016-12-28
US11252437B2 (en) 2022-02-15
KR20210083403A (ko) 2021-07-06
RU2016114272A (ru) 2017-10-18
AU2013403225A1 (en) 2016-04-07
WO2015054812A1 (en) 2015-04-23
CN105659606B (zh) 2019-06-18
EP3720132A1 (en) 2020-10-07
US20200084472A1 (en) 2020-03-12
RU2666635C2 (ru) 2018-09-11
AU2013403225B2 (en) 2018-06-14
US20200228834A1 (en) 2020-07-16
CN105659606A (zh) 2016-06-08
US10506254B2 (en) 2019-12-10
EP3058740B1 (en) 2020-06-03
CA2925183C (en) 2020-03-10
KR20160070771A (ko) 2016-06-20
KR102318785B1 (ko) 2021-10-27
KR102275639B1 (ko) 2021-07-08
US10652576B2 (en) 2020-05-12
MX2016004707A (es) 2016-07-18
US20160277760A1 (en) 2016-09-22
EP3058740A4 (en) 2017-05-17
EP3058740A1 (en) 2016-08-24
MX368934B (es) 2019-10-22
US20220132163A1 (en) 2022-04-28

Similar Documents

Publication Publication Date Title
JP6336058B2 (ja) ビデオ及び画像符号化及び復号のためのベースカラーインデックスマップモードの機能
KR102401946B1 (ko) 인트라 블록 카피 예측에서의 스킵 모드 및 블록 플립핑
CN106664405B (zh) 用调色板模式对经逸出编码的像素的稳健编码/解码
CN105917650B (zh) 视频和图像编/解码的方法、计算设备及计算机可读介质
JP6359101B2 (ja) ビデオ及び画像の符号化及び復号のためのイントラブロックコピー予測モードの特徴
CN107409212B (zh) 使用变换系数的逐渐更新进行编码和解码的方法及设备
EP3114840A1 (en) Dictionary encoding and decoding of screen content
WO2015054816A1 (en) Encoder-side options for base color index map mode for video and image coding
JP2018088715A (ja) イントラブロックコピー予測におけるブロック反転及びスキップモード

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160928

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160928

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170822

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170912

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171211

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: 20180403

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180501

R150 Certificate of patent or registration of utility model

Ref document number: 6336058

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250