JP6661699B2 - ビデオ符号化における構文の2値化とコンテキスト適応型符号化の方法と装置 - Google Patents

ビデオ符号化における構文の2値化とコンテキスト適応型符号化の方法と装置 Download PDF

Info

Publication number
JP6661699B2
JP6661699B2 JP2018108394A JP2018108394A JP6661699B2 JP 6661699 B2 JP6661699 B2 JP 6661699B2 JP 2018108394 A JP2018108394 A JP 2018108394A JP 2018108394 A JP2018108394 A JP 2018108394A JP 6661699 B2 JP6661699 B2 JP 6661699B2
Authority
JP
Japan
Prior art keywords
binary
index
current
palette index
palette
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
JP2018108394A
Other languages
English (en)
Other versions
JP2018170771A (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.)
HFI Innovation Inc
Original Assignee
HFI Innovation Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by HFI Innovation Inc filed Critical HFI Innovation Inc
Publication of JP2018170771A publication Critical patent/JP2018170771A/ja
Application granted granted Critical
Publication of JP6661699B2 publication Critical patent/JP6661699B2/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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/93Run-length coding

Description

この出願は、2014年6月20日に出願された米国特許仮出願番号62/014970、2014年6月26日に出願された米国特許仮出願番号62/017401、2014年7月3日に出願された米国特許仮出願番号62/020518、および、2014年7月7日に出願された米国特許仮出願番号62/021287から優先権を主張する。これら米国特許仮出願は、参照によって本願に引用される。
本発明は、ビデオ符号化に関連する構文のエントロピー符号化に関する。特に、本発明は、ビデオ符号化に関する構文の2値化とコンテキスト適応型符号化の技術に関する。
高効率ビデオ符号化(HEVC)は、近年発展している新しい符号化基準である。高効率ビデオ符号化(HEVC)システムにおいて、H.264/AVCの固定サイズのマクロブロックは、符号化ユニット(CU)という名のフレキシブルブロックによって置き換えられる。CU中の画素は、同じ符号化パラメータを共有して、符号化効率を改善する。CUは、HEVCにおいて、符号化ツリーユニット(CTU)とも称される最大CU(LCU)から始まる。符号化ユニットの概念に加え、予測ユニット(PU)の概念もHEVCに導入される。一旦、CU階層ツリーの分割が行われると、各リーフCUは、予測タイプとPU分割にしたがって、さらに、一つ以上の予測ユニット(PU)に分割される。
コンテキスト適応型2値算術符号化(CABAC)は、先進型ビデオ符号化、たとえば、H.264とHEVC中に幅広く用いられている高効率エントロピー符号化ツールである。たとえば、HEVC基準の各種構文要素が、CABACモードで符号化される。このとき、エントロピー符号化は、基礎の構文要素に関連するコンテキストに基づいて、適応的に、2値化構文要素に適用される。図1は、CABACプロセスを示すブロック図である。CABACエンジン中の演算コーダーはバイナリシンボル値だけを符号化することができるので、CABACプロセスは、2値化部(110)を用いて、構文要素の値を2進列に変換する必要がある。この変換プロセスは、一般に、2値化と称される。符号化プロセス中、確率モデルが、異なるコンテキストの符号化シンボルから徐々に組み立てられる。コンテキストモデラー(120)はモデリングの目的を果たす。通常のコンテキストベースの符号化期間中、2値演算符号器に相当するレギュラー符号化エンジン(130)が用いられる。次のバイナリシンボルを符号化するモデリングコンテキストの選択は、符号化情報により決定される。シンボルはコンテキストモデリング段階無しで符号化することも可能であり、複雑性を減少させるために、バイパスモードと一般的に称される等しい確率分布を採用する。バイパスシンボルに対しては、バイパス符号化エンジン(140)が用いられる。図1に示されるように、スイッチ(S1、S2、S3)を用いることにより、データフローの行き先をレギュラーCABAモードとバイパスモードとの間で切り替える。レギュラーCABACモードが選択されるとき、スイッチは上方コンタクトの方に切り替えられる。図1に示されるように、バイパスモードが選択されるとき、スイッチは下方コンタクトの方に切り替えられる。
JCT標準化組織は、現在、HEVCスクリーンコンテンツ向け符号化(SCC)拡張を開発している過程にある。連続した色調を有する従来の加工しないビデオと対照的に、スクリーンコンテンツビデオは、通常、少量のパイロットカラーと鋭角および境界を含む。いくつかの新しいツールが現在研究されていて、未来のHEVC SCC拡張に採用される可能性がある。
HEVCレンジ拡張(RExt)の初期開発中、既に、パレットベース符号化に取り組むいくつかの提案がなされている。例えば、JCTVC−N0247(Guo et al., “RCE3: Results of Test 3.1 on Palette Mode for Screen Content Coding”, Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 14th Meeting: Vienna, AT, 25 July - 2 Aug. 2013 Document: JCTVC-N0247)、及びJCTVC−O0218(Guo et al., “Evaluation of Palette Mode Coding on HM-12.0+RExt-4.1”, Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 15th Meeting: Geneva, CH, 23 Oct. - 1 Nov. 2013, Document: JCTVC-O0218)には、パレット予測と共有技術が開示されている。JCTVC−N0247において、各カラーコンポーネントのパレットが構築、および、送信される。パレットが、左側隣接CUから予測(あるいは、シェア)されて、ビットレートを減少させる。その後、それらのパレットインデックスを用いて、所定のブロック中の全画素が符号化される。JCTVC−N0247による符号化プロセスの例は次の通りである。
1.パレットの送信:カラーインデックステーブルサイズがまず送信され、次に、パレットエレメンツが送信される。
2.画素値の送信:CU中の画素が、ラスター走査順序で符号化される。一つ以上の画素の各群において、まず、ランベースモードのフラグが送信されて、“ラン”モードまたは“上方コピー”モードが用いられるかどうかを示す。
2.1 Index_Mode:Index_Modeにおいて、まず、パレットインデックスがシグナリングされて、次に、ラン値を示す“palette_run”(たとえば、M)が続く。ラン値は、M個のサンプルの総数がすべて、Index_Modeを用いて符号化されることを示す。ビットストリームでシグナリングされるのと同じパレットインデックスを有するので、それ以上の情報は、現在の位置および続くM個の位置に送信される必要がない。パレットインデックス(たとえば、i)は、さらに、全部で3個のカラーコンポーネントによりシェアされてもよく、それは、YUVカラースペースの場合において、再構成された画素値が(Y,U,V)=(palette[i],palette[i],palette[i])であることを意味する。
2.2 Copy_Above_Mode:Copy_Above_Modeにおいて、値“copy_run”(たとえば、N)が送信される。これは、続くN個の位置(現在のものを含む)について、パレットインデックスは、上方ロウ中の対応するパレットインデックスと同じであることを示す。
3.剰余の送信:ステージ2で送信されるパレットインデックスが画素値に変換され、予測として用いられる。剰余情報は、HEVC剰余コーディングを用いて送信され、且つ、再構成の予測に加えられる。
一般のビデオ符号化と共に、スクリーンコンテンツ向け符号化においてパレットモード符号化ブロックに対して生成される構文要素に関連する符号化効率をさらに改善する方法を開発することが望まれる。
ビデオ符号化システムにおいて生成されるソースシンボルをエントロピー符号化及びエントロピー復号化する方法と装置を開示する。本発明によれば、まず、現在のシンボル値についてMSB(最上位ビット)インデックス、および、任意のリファインメントビットが決定される。単項コードあるいは短縮単項コードを用いて、現在のシンボル値のMSBインデックスに関連するプレフィックス部を2値化することにより第1の2進列が生成される。さらに、もしリファインメントビットが存在する場合、固定長コードあるいは短縮2進コードを用いて、現在のシンボル値の1つ以上のリファインメントビットに対応するサフィックス部を2値化することにより、第2の2進列が生成される。第1の2進列は、CABAC(コンテキスト適応型2値算術符号化)を用いて符号化される。第2の2進列が存在する場合、第2の2進列もCABACを用いて符号化される。
プレフィックス部は、MSBインデックスプラス1に対応してもよい。また、xがゼロより大きい場合、プレフィックス部は(floor(log2(x)+1)であり、xが0である場合、プレフィックス部は0であってもよい。ここで、xは前記現在のシンボル値を示し、floor(y)は、y以下の最大整数を出力するfloor関数であり、log2()は、2を底とする対数関数である。第1の2進列の2値が閾値T以下の2値インデックスを有する場合、当該2値はレギュラーCABACモードで符号化されてもよい。第1の2進列の2値が閾値Tより大きい2値インデックスを有する場合、当該2値はバイパスモードで符号化されてもよい。
1つの実施形態において、現在のソースシンボルは、SCC(スクリーンコンテンツ向け符号化)のパレットモード符号化ブロック中の連続的に繰り返すパレットインデックスのランレングスマイナス1を示す。第1の2進列は、(floor(log2((MaxPaletteRun))+1)に等しい最大値を有する短縮単項コードを用いてプレフィックス部を2値化することにより導出される。ここで、MaxPaletteRunは、現在の符号化ユニット(CU)中の残りのまだ符号化されていない画素の数のマイナス1に等しい。第2の2進列は、(MaxPaletteRun−(1<<(palette_run_msb_id_plus1−1)))に等しい最大を有する短縮2進コードを用いてサフィックス部を2値化することにより導出される。ここで、MaxPaletteRunは、現在の符号化ユニット(CU)中の残りのまだ符号化されていない画素の数のマイナス1に等しく、palette_run_msb_id_plus1は、プレフィックス部の値を示す。
CABACは、連続的に繰り返すパレットインデックスのランタイプが条件とされていてもよく、レギュラーCABACモードは、第1の2進列、あるいは、第2の2進列の1つ以上の2値に適用されてもよい。例えば、現在のソースシンボルは、上方ロウ中の連続第1インデックスの第1ランレングスマイナス1を表す構文Copy_Above_Mode、あるいは、同じロウ中の連続第2インデックスの第2ランレングスマイナス1を表す構文Index_Modeに対応していてもよい。ゼロに等しい2値インデックスを有する第1の2進列の2値は、3個のコンテキストを有するレギュラーCABACモードで符号化される。パレットインデックスが第1閾値T1より小さい場合、第1コンテキストが選択される。パレットインデックスが第1閾値T1以上で、且つ、第2閾値T2より小さい場合、第2コンテキストが選択される。パレットインデックスが第2閾値T2以上である場合、第3コンテキストが選択される。第2閾値T2は、第1閾値T1より大きい。例えば、第1閾値T1は2であり、第2閾値T2は4あるいは8である。
現在のソースシンボルは、二次元符号付きあるいは符号なしのソースベクトルの第1コンポーネント、あるいは、第2コンポーネントの絶対値に対応していてもよい。また、プレフィックス部は、サフィックス部及び符号ビットよりも前に符号化される。
本発明の別の実施形態において、インデックスモードに対し、現在のブロックを通してあるスキャニング順序で、現在のパレットインデックスと同じパレットインデックスを有する連続した画素の数が決定される。2値化方法を用いて、連続した画素の数マイナス1が2値文字列に変換される。現在のパレットインデックスに応じて適応的に選択されるコンテキストに従って、2値文字列のうち少なくとも1つの2値に対してレギュラーCABACモードを適用することにより、コンテキスト適応型2値算術符号化(CABAC)による2値文字列の符号化が行われる。対応する復号プロセスも開示される。例えば、デコーダは、インデックスモードに対応する現在のソースシンボルに関する現在のブロックの圧縮データを含む入力された符号化ビットストリームを受け取る。現在のランモードに対応する現在のパレットインデックスが決定される。そして、現在のパレットインデックスに応じて適応的に選択されるコンテキストに従って、2値文字列のうち少なくとも1つの2値に対してレギュラーCABACモードを適用することにより、コンテキスト適応型2値算術符号化(CABAC)による2値文字列の復号化が行われる。2値化方法を用いて、2値文字列が、現在のパレットインデックスと同じパレットインデックスを有する連続した画素の数に関連するランレングス値に変換される。ここで、ランレングス値は、連続した画素の数マイナス1に対応する。デコーダ側において、現在のパレットインデックスは、入力された符号化ビットストリームから構文解析されるパレットインデックス、あるいは、再構成パレットインデックスに対応していてもよい。
CABAC(コンテキスト適応型2値算術符号化)のブロック図である。ソース構文は、レギュラーCABACモード、あるいは、バイパスモードを用いて、適応的に符号化される。 本発明の一実施形態に係るソースシンボルのエントロピー符号化システムのフローチャートである。ソースシンボルはプレフィックス部及びサフィックス部で表され、プレフィックス部及びサフィックス部の2進列はCABACを用いて符号化される。 本発明の一実施形態に係るソースシンボルのエントロピー復号化システムのフローチャートである。ソースシンボルはプレフィックス部及びサフィックス部で表され、プレフィックス部及びサフィックス部の2進列はCABACを用いて符号化される。
以下の記述は、本発明を実現する最適なモードである。この記述は、本発明の一般原則を説明することを目的とするものであり、本発明を限定するものではない。本発明の範囲は、特許請求の範囲によって決定される。
本発明は、ビデオ符号化等のソースデータ圧縮システムにおいて生成されるソースシンボルの普遍的なエントロピー符号化方法を開示する。本方法は、ソースシンボルに対応する符号なしの値を、最上位ビット(MSB)部分とその値のリファインメントビット部分の2つの部分からなるバイナリー形式で表す。MSB部分中の各要素には、インデックスが割り当てられる。結果として得られるコード名は、プレフィックス部とサフィックス部の連結となる。プレフィックス部は、シンボル値のMSBインデックスに関連する。一実施形態において、MSB部分は、floor(log2(x))にしたがって決定される。xは、ソースシンボルに関連する符号なしの値に対応する。floor(y)は、y以下の最大整数を出力するfloor関数である。log2(x)は2を底とする対数関数である。この例において、対応するMSB部分は、x=0の場合に無意味になる。したがって、“msb_id_plus1”により表されるMSB部分プラス1が導入される。符号なしのシンボルxのMSBプラス1、つまり“msb_id_plus1”は次のように導出される。
Figure 0006661699
最大構文値が知られている場合、プレフィックス部は、可変長さコード、たとえば、単項コードあるいは短縮単項コードを用いて符号化される。所定のシンボル値に関して、サフィックス部は存在するかもしれないし、存在しないかもしれない。サフィックス部はリファインメントビットを表す。msb_id_plus1>1の場合、サフィックス部は存在する。refinement_bitsにより示されるリファインメントビットの値は、固定長のバイナリーコード、あるいは、短縮2進コードを用いて2値化される。たとえば、最大構文値が知られている場合、リファインメントビットの値は、(“msb_id_plus1”−1)、あるいは、短縮2進コードに等しい文字列長さを有する文字列により示される。復号された構文値xは、以下にしたがって、復号されたプレフィックス部(すなわち、(“msb_id_plus1”−1))と復号されたサフィックス部(すなわち、“refinement_bits”)に基づいて導出される。
Figure 0006661699
表1は、本発明の実施形態を組み込んだ2値化プロセスによるシンボル値0〜31に対応するコード名2値文字列(2進列とも称される)を示す。“msb_id_plus1”の値は、式(1)に基づいて導出される。リファインメントビットの長さは(“msb_id_plus1”−1)にしたがって決定される。本発明による2値化プロセスは、上述の2値化プロセスを、符号付きシンボル値の絶対値プラス符号化情報に適用することによって、符号付きソースシンボルに適用することもできる。さらに、2値化プロセスを各ベクトルコンポーネントに用いることにより、2値化プロセスを、多次元ソースデータ、たとえば、ベクトルに適用することもできる。
Figure 0006661699
本発明によれば、“msb_id_plus1”に関して得られた2値文字列は、コンテキスト適応型2値算術符号化(CABAC)により符号化される。プレフィックス部は、更に複雑なコンテキストモデリングスキームにより、CABACで符号化される。本発明によれば、リファインメントと符号ビットは、より簡潔なコンテキストモデリングスキームで、あるいは、バイパスモードで符号化される。一実施形態において、プレフィックス部2値文字列は、閾値T以下である2値インデックス値を有する2値についてはCABACモードで符号化され、それ以外はバイパスモードで符号化される。一実施形態において、文脈選択は、2値インデックスに基づいて行われる。また、隣接インデックス値を有するいくつかの2値は、同じコンテキストをシェアすることができる。別の実施形態において、Tは、ビットストリーム構文解析スループット制約と符号化効率要求に基づいて、適応的に選択される。低い閾値Tの場合、より多くのシンボルがバイパスモードで符号化されるので、低い符号化効率の代わりに、ビットストリーム構文解析スループットを増加させる。閾値Tも、現在の符号化ユニット(CU)中の符号化CABAC2値の消費に応じて調整される。たとえば、現在の符号化ユニットにおいてより小さいCABAC符号化2値が望まれる場合、小さい閾値Tが用いられる。いくつかの実施形態において、閾値Tは、CUサイズに応じて適応的に選択される。たとえば、パレット符号化がCUに適用される場合、大きいCUサイズは、ランモードにおいて、長いランレングスになる。この場合、さらなる符号化効率向上のために、大きい閾値が用いられる。
本発明は、普遍的符号化ツールとして開発され、多様な符号化統計に対応する異なる構文タイプのエントロピー符号化に役立つ。本発明は、特に、イントラブロックコピー(IntraBC)、パレット符号化、および、イントラ文字列コピーに例示される新たな符号化ツールに由来する、混合したビデオコンテンツタイプと多数の新しい構文タイプを有するスクリーンコンテンツ向け符号化に有益である。表2は、本発明の実施形態を組み込んだコンテキストベース符号化を用いた、符号なしソースシンボルの符号化/復号化を示す構文表である。異なるコンテキストモデリングスキームは、入力パラメータ“syntaxType”により特定される異なる構文タイプに使用される。表2に示されるように、構文“msb_id_plus1”により示されるプレフィックス部がまずシグナリングされる。“msb_id_plus1”の値が1より大きい場合、構文“refinement_bits”がシグナリングされる。言い換えれば、“msb_id_plus1”の値が0か1の場合、サフィックス部はシグナリングされない。
Figure 0006661699
上記で開示されるMSBインデックスのコンテキストベース符号化は、符号化プロセス期間中に生成される各種構文要素に適用可能である。たとえば、HEVC RExtで定められるスクリーンコンテンツ向け符号化(SCC)において、ブロック中のカラーインデックスは、“Run”モードを用いて符号化されてもよい。“Run”モードが選択されるとき、現在のパレットランモードにおいて連続的に繰り返す画素の数マイナス1がシグナリングされる。前述のように、Index_ModeとCopy_Above_Modeとで示される2種類の“Run”モードがある。一実施形態において、プレフィックス部とサフィックス部の両方を、最大ラン値“MaxPaletteRun”を用いて短縮シグナリングで符号化する。ここで、“MaxPaletteRun”は、現在の符号化ユニット(CU)中の残りのまだ符号化されていない画素の数量のマイナス1に等しい。結果として得られるプレフィックス構文“palette_run_msb_id_plus1”は、cMax=floor(log2((MaxPaletteRun))+1の短縮単項コードを用いて符号化される。ここで、関数floor(x)は、x以下である最大整数を出力する。サフィックス構文“palette_run_refinement_bits”は、cMax=MaxPaletteRun−(1<<(palette_run_msb_id_plus1−1))を有する短縮2進コードを用いて符号化される。さらに、プレフィックス“palette_run_msb_id_plus1”は、コンテキストベース符号化を用いて符号化される。ここで、コンテキストは、2値インデックスに基づいて形成される。二個の別々のコンテキストセットは、それぞれ、Copy_Above_Modeに等しい“palette_run_type_flag”とIndex_Modeに使用される。
バイパスモードは、閾値Trより大きいインデックス値を有する2値を符号化するのに用いられる。たとえば、Trは、4か6に等しい。“palette_run_type_flag”がIndex_Modeに等しく、現在のパレットインデックスが大きいとき、パレットランレングスマイナス1は、通常、0に等しい。よって、2値インデックス0のコンテキストモデリングは、さらに、Index_Modeランタイプについて、現在のパレットインデックス“paletteIndex”が条件とされている。一実施形態において、(paletteIndex<T1)に対し、第1コンテキスト(すなわち、コンテキストインデックス=0)が選択される。(T1<=paletteIndex<T2)に対し、第2コンテキスト(すなわち、コンテキストインデックス=1)が選択される。(T2<=paletteIndex)に対し、第3コンテキスト(すなわち、コンテキストインデックス=1)が選択される。閾値T2は閾値T1より大きい。T1とT2の値は、適当に選択される。たとえば、T1は2に等しく、T2は、4か8に等しい。
表3は、プレフィックス“palette_run_msb_id_plus1”のコンテキストベース符号化における文脈選択のマッピング表である。文脈選択は、冗長性除去による符号化された修正パレットインデックスに対応する構文解析パレットインデックスが条件とされる。文脈選択も、パレットテーブルにより用いられる実際のパレットインデックスに対応する再構成パレットインデックスが条件とされている。一実施形態において、“palette_run_type_flag”がCopy_Index_Modeに等しく、構文解析パレットインデックス値が閾値Tsより大きいとき、パレットラン符号化はスキップされる。この場合、パレットランレングスマイナス1が0になると推定される。一実施形態において、Tsは、現在のCU中のパレットカラーの数量から導出される。閾値Tr、T1、T2、あるいは、Tsは、SPS(sequence parameter set)、PPS(picture parameter set)、スライスヘッダー、および/あるいは、パレットモード符号化CUでシグナリングされる。
Figure 0006661699
構文要素に関連するMSBインデックスのコンテキストベース符号化の別の例において、得られたプレフィックス構文“palette_index_msb_id_plus1”は、cMax=floor(log2((MaxPaletteIdx))+1を有する短縮単項コードを用いて符号化される。サフィックス構文“palette_index_refinement_bits”は、cMax=MaxPaletteIdx−(1<<(palette_index_msb_id_plus1−1))を有する短縮2進コードにより符号化される。エントロピー符号化プレフィックス“palette_index_msb_id_plus1”のコンテキストモデリングは、2値インデックスが条件とされてもよい。エントロピー符号化プレフィックス“palette_index_msb_id_plus1”のコンテキストモデリングは、さらに、MaxPaletteIdxが条件とされてもよい。“MaxPaletteIdx”は、冗長性除去による最大修正パレットインデックスに対応する最大構文解析パレットインデックスを示す。別の実施形態において、“MaxPaletteIdx”は、パレットテーブルにより使用される最大の実際のパレットインデックスに対応する最大の再構成パレットインデックスを表す。表4は、プレフィックス“palette_index_msb_id_plus1”のコンテキストベース符号化における文脈選択のマッピングテーブルを示す。ここで、異なるコンテキストセットは、異なる値のcMax=floor(log2((MaxPaletteIdx))+1を有するCUに用いられてもよい。
Figure 0006661699
上記のコンテキストベースの符号化は、HEVC RExtに関連するスクリーンコンテンツ向け符号化(SCC)に用いられるイントラ文字列コピー(IntraBC)ツール中で使用される参照文字列に関連する別の構文要素にも適用可能である。たとえば、本発明によるコンテキストベース符号化は、構文要素dictionary_pred_length_minus1、dictionay_pred_offset_minus1、及び(dictionay_pred_offsetX、dictionay_pred_offsetY)のそれぞれで表される長さマイナス1、オフセットマイナス1、及びオフセットベクトルを表すMSBインデックスに適用可能である。長さの符号化において、残りのまだ符号化されていない画素の数マイナス1に等しい最大ラン値を用いてプレフィックス部とサフィックス部を符号化するために短縮シグナリングが用いられてもよい。オフセットベクトルの符号化において、本発明によるコンテキストベースの符号化は、各ベクトルコンポーネントの絶対値に適用可能である。表5から表7は、上述の構文要素のそれぞれで表される長さマイナス1、オフセットマイナス1、及びオフセットベクトル(x,y)に関する文脈選択のマッピング表である。
Figure 0006661699
Figure 0006661699
Figure 0006661699
インデックスモードにおいて、現在のパレットインデックスとランレングスがシグナリングされる。パレットインデックスは、通常、対応するランレングスの前にシグナリングされる。本発明の別の実施形態において、対応するランレングスは、パレットインデックスに基づいて、コンテキスト適応型符号化される。たとえば、インデックスモードに対し、現在のブロックを通してあるスキャニング順序で、現在のパレットインデックスと同じパレットインデックスを有する連続した画素の数が決定される。連続した画素の数のマイナス1は、2値化方法を用いて、2値文字列に変換される。同じパレットインデックスに基づいて適応的に選択されるコンテキストにしたがって、レギュラーCABACモードを、2値文字列の少なくとも一つの2値に適用することにより、コンテキスト適応型2値算術符号化(CABAC)による2値文字列の符号化が行われる。対応する復号化プロセスは、エンコーダにより実行されるこれらのステップを実行する。たとえば、デコーダは、インデックスモードに対応する現在のソースシンボルに関する現在のブロックの圧縮データを含む入力符号化ビットストリームを受けとる。現在のランモードに関する現在のパレットインデックスが決定される。その後、現在のパレットインデックスに基づいて適応的に選択されるコンテキストにしたがって、レギュラーCABACモードを、2値文字列の少なくとも一つの2値に適用することにより、コンテキスト適応型2値算術符号化(CABAC)による2値文字列の復号化が行われる。2値文字列は、2値化方法を用いて、現在のパレットインデックスと同じパレットインデックスを有する連続した画素の数に関連するランレングス値に変換される。ランレングス値は、連続した画素の数のマイナス1に対応する。現在のブロックを通してあるスキャニング順序で、現在のパレットインデックスを用いて、符号化された連続画素が再構成される。デコーダ側で、現在のパレットインデックスは、入力符号化ビットストリームから構文解析されるパレットインデックス、あるいは、再構成パレットインデックスに対応する。
図2は、本発明の一実施形態によるソースシンボルのエントロピー符号化システムのフローチャートである。ソースシンボルは、プレフィックス部及びサフィックス部で表される。プレフィックス部及びサフィックス部の2進列は、CABACを用いて符号化される。工程210において、システムは、一連のシンボル値に属する現在のシンボル値を有する現在のソースシンボルを受けとる。入力データは、符号化される現在のブロックの画素データ、あるいは、カラーインデックスに対応する。入力データは、メモリ(たとえば、コンピュータメモリ、バッファ(RAMやDRAM)、あるいは、その他の媒体)、あるいは、プロセッサから取得される。工程220において、現在のシンボル値についてMSB(最上位ビット)インデックスと任意のリファインメントビットが決定される。工程230において、単項コードあるいは短縮単項コードを用いて、現在のシンボル値のMSBインデックスに関連するプレフィックス部を2値化することにより、第1の2進列が導出される。工程240において、もしリファインメントビットが存在する場合、固定長コードあるいは短縮2進コードを用いて、現在のシンボル値の1つ以上のリファインメントビットに対応するサフィックス部を2値化することにより、第2の2進列が導出される。工程250において、第1の2進列はCABAC(コンテキスト適応型2値算術符号化)を用いて符号化される。第2の2進列が存在する場合、第2の2進列もCABACを用いて符号化される。
図3は、本発明の一実施形態に係るソースシンボルのエントロピー復号化システムのフローチャートである。ソースシンボルは、プレフィックス部及びサフィックス部で表される。プレフィックス部及びサフィックス部の2進列は、CABACを用いて符号化される。ステップ310において、システムは、現在のソースシンボルに関する圧縮データを含む入力符号化ビットストリームを受けとる。入力符号化ビットストリームは、メモリ(たとえば、コンピュータメモリ、バッファ(RAMやDRAM)、あるいは、その他の媒体)、あるいは、プロセッサから取得される。工程320において、符号化されたビットストリームは、CABAC(コンテキスト適応型2値算術符号化)を用いて復号化され、第1の2進列、および、もしあれば第2の2進列を回復する。工程330において、現在のソースシンボルの現在のシンボル値のMSB(最上位ビット)インデックスに関連するプレフィックス部は、単項コードあるいは短縮単項コードを用いて第1の2進列を復号化することにより回復される。工程340において、もし第2の2進列が存在する場合、現在のシンボル値の1つ以上のリファインメントビットに対応するサフィックス部は、固定長コードあるいは短縮2進コードを用いて第2の2進列を復号化することにより回復される。工程350において、現在のシンボル値のMSBインデックスと、もしリファインメントビットが存在する場合は現在のシンボル値のリファインメントビットとに基づいて、現在のソースシンボルが回復される。
上記に示されたフローチャートは、本発明に係るプレフィックス部とサフィックス部を用いたエントロピー符号化を説明する。当業者は、本発明の精神と領域を脱しない範囲内で、各ステップを修正、再アレンジ、分割、結合して、本発明を実行することができる。本開示において、特定の構文と語義が用いられて、例を説明し、本発明の実施形態を実行する。当業者は、本発明の精神と領域を脱しない範囲内で、構文と語義を、等価の構文と語義と置き換えることにより、本発明を実施する。
上記の説明により、当業者は、特定のアプリケーションとその要求のコンテキストに記述される通り、本発明を行うことができる。当業者なら、記述された具体例への各種修正が理解でき、ここで定義される一般原則は別の実施例にも応用できる。よって、本発明は、記述される特定の実施例に制限することを目的としておらず、原理と新規特徴と一致する最大範囲に一致する。上述の記述において、本発明の十分な理解を提供するため、各種特定の詳細が説明される。当業者なら、本発明が行えることが理解できる。
上述の本発明の実施形態は、各種ハードウェア、ソフトウェアコード、または、それらの組み合わせで実行される。たとえば、本発明の実施形態は、画像圧縮チップに整合される回路、または、画像圧縮ソフトウェアに整合されるプログラムコードで、上述の処理を実行する。本発明の実施形態は、デジタルシグナルプロセッサ(DSP)で実行されるプログラムコードで、上述の処理を実行する。本発明は、さらに、コンピュータプロセッサ、デジタルシグナルプロセッサ、マイクロプロセッサ、または、フィールドプログラマブルゲートアレイ(FPGA)により実行される複数の機能を含む。これらのプロセッサは、本発明により具体化される特定の方法を定義する機械読み取り可能ソフトウェアコード、または、ファームウェアコードを実行することにより、本発明による特定のタスクを実行するように設定される。ソフトウェアコード、または、ファームウェアコードは、異なるプログラミング言語、および、異なるフォーマット、または、スタイルで開発される。ソフトウェアコードは、さらに、異なるターゲットプラットフォームにコンパイルされる。しかし、本発明によるタスクを実行するソフトウェアコードの異なるコードフォーマット、スタイル、および、言語、および、設定コードのその他の手段は、本発明の精神を逸脱しない。
本発明では好ましい実施例を前述の通り開示したが、これらは決して本発明に限定するものではなく、当該技術を熟知する者なら誰でも、本発明の精神と領域を脱しない範囲内で各種の変動や潤色を加えることができ、従って本発明の保護範囲は、特許請求の範囲で指定した内容を基準とする。

Claims (3)

  1. パレットインデックスマップを符号化する方法であって、
    現在のブロックについてのパレットインデックスマップを受け取る工程と、
    前記現在のブロックを通してあるスキャニング順序で、現在のパレットインデックスと同じパレットインデックスを有する連続した画素の数を決定する工程と、
    2値化方法を用いて、前記連続した画素の数マイナス1を2値文字列に変換する工程と、
    前記現在のパレットインデックスと前記2値文字列のうち少なくとも1つの2値の2値インデックスに応じて適応的に選択されるコンテキストに従って、前記2値文字列のうち前記少なくとも1つの2値に対してレギュラーCABACモードを適用することにより、コンテキスト適応型2値算術符号化(CABAC)による前記2値文字列の符号化を行う工程と、
    を有する方法。
  2. パレットインデックスマップを復号化する方法であって、
    インデックスモードに対応する現在のソースシンボルに関する現在のブロックの圧縮データを含む入力された符号化ビットストリームを受け取る工程と、
    現在のランモードに対応する現在のパレットインデックスを決定する工程と、
    前記現在のパレットインデックスと2値文字列のうち少なくとも1つの2値の2値インデックスに応じて適応的に選択されるコンテキストに従って、前記2値文字列のうち前記少なくとも1つの2値に対してレギュラーCABACモードを適用することにより、コンテキスト適応型2値算術符号化(CABAC)による前記2値文字列の復号化を行う工程と、
    2値化方法を用いて、前記2値文字列を、前記現在のパレットインデックスと同じパレットインデックスを有する連続した画素の数に関連するランレングス値に変換する工程と、ここで、前記ランレングス値は、前記連続した画素の数マイナス1に対応し、
    前記現在のブロックを通してあるスキャニング順序で、前記現在のパレットインデックスを用いて前記連続した画素の数を再構成する工程と、
    を有する方法。
  3. 前記現在のパレットインデックスは、前記入力された符号化ビットストリームから構文解析されるパレットインデックス、あるいは、再構成パレットインデックスに対応する
    請求項2に記載の方法。
JP2018108394A 2014-06-20 2018-06-06 ビデオ符号化における構文の2値化とコンテキスト適応型符号化の方法と装置 Active JP6661699B2 (ja)

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
US201462014970P 2014-06-20 2014-06-20
US62/014,970 2014-06-20
US201462017401P 2014-06-26 2014-06-26
US62/017,401 2014-06-26
US201462020518P 2014-07-03 2014-07-03
US62/020,518 2014-07-03
US201462021287P 2014-07-07 2014-07-07
US62/021,287 2014-07-07

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2016573768A Division JP6352452B2 (ja) 2014-06-20 2015-06-18 ビデオ符号化における構文の2値化とコンテキスト適応型符号化の方法と装置

Publications (2)

Publication Number Publication Date
JP2018170771A JP2018170771A (ja) 2018-11-01
JP6661699B2 true JP6661699B2 (ja) 2020-03-11

Family

ID=54934881

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2016573768A Active JP6352452B2 (ja) 2014-06-20 2015-06-18 ビデオ符号化における構文の2値化とコンテキスト適応型符号化の方法と装置
JP2018108394A Active JP6661699B2 (ja) 2014-06-20 2018-06-06 ビデオ符号化における構文の2値化とコンテキスト適応型符号化の方法と装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2016573768A Active JP6352452B2 (ja) 2014-06-20 2015-06-18 ビデオ符号化における構文の2値化とコンテキスト適応型符号化の方法と装置

Country Status (7)

Country Link
US (2) US10382759B2 (ja)
EP (1) EP3138288B1 (ja)
JP (2) JP6352452B2 (ja)
KR (2) KR101943805B1 (ja)
CN (2) CN106416246B (ja)
CA (2) CA2950818C (ja)
WO (1) WO2015192779A1 (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9503717B2 (en) 2012-01-09 2016-11-22 Texas Instruments Incorporated Context adaptive binary arithmetic coding (CABAC) with scalable throughput and coding efficiency
GB2521828A (en) * 2013-12-23 2015-07-08 Sony Corp Data encoding and decoding
CN107079151B (zh) * 2014-09-26 2020-06-05 株式会社Kt 用于处理视频信号的方法和设备
CN107079163B (zh) * 2014-10-20 2020-06-05 株式会社Kt 用于处理视频信号的方法和设备
WO2016114583A1 (ko) * 2015-01-15 2016-07-21 주식회사 케이티 비디오 신호 처리 방법 및 장치
WO2016122253A1 (ko) * 2015-01-29 2016-08-04 주식회사 케이티 비디오 신호 처리 방법 및 장치
CN111970515B (zh) * 2015-01-29 2024-03-29 株式会社Kt 对视频信号进行编解码的方法
US20160234494A1 (en) * 2015-02-10 2016-08-11 Qualcomm Incorporated Restriction on palette block size in video coding
CN112839225B (zh) * 2015-04-02 2024-03-29 株式会社Kt 对视频信号进行编解码的方法
CN107770541A (zh) * 2016-08-21 2018-03-06 上海天荷电子信息有限公司 设截断值对一组编码参数进行编码的数据压缩方法和装置
CN108989825B (zh) * 2018-07-18 2021-05-07 北京奇艺世纪科技有限公司 一种算术编码方法、装置及电子设备
CN113170197B (zh) * 2018-12-06 2023-07-18 Lg电子株式会社 基于二次变换的图像编码方法及其装置
CN113228685B (zh) 2018-12-19 2023-08-04 Lg电子株式会社 用于基于二次变换编码图像的方法及其装置
JP7101885B2 (ja) 2019-05-30 2022-07-15 三菱電機株式会社 パワー半導体モジュール及び電力変換装置
US11284073B2 (en) 2019-07-08 2022-03-22 Hyundai Motor Company Method and apparatus for intra prediction coding of video data involving matrix based intra-prediction
US11076151B2 (en) * 2019-09-30 2021-07-27 Ati Technologies Ulc Hierarchical histogram calculation with application to palette table derivation
KR20230018532A (ko) * 2019-10-09 2023-02-07 베이징 다지아 인터넷 인포메이션 테크놀로지 컴퍼니 리미티드 광 흐름에 의한 예측 개선, 양방향 광 흐름 및 디코더 측 움직임 벡터 개선을 위한 방법들 및 장치들
CN114079780A (zh) * 2020-08-20 2022-02-22 腾讯科技(深圳)有限公司 视频解码方法、视频编码方法、装置、设备及存储介质
CN112532990B (zh) * 2020-11-23 2024-03-08 绍兴文理学院 一种串长度参数编码、解码方法和装置
CN115086664A (zh) * 2021-03-13 2022-09-20 腾讯科技(深圳)有限公司 未匹配像素的解码方法、编码方法、解码器以及编码器
CN113422964A (zh) * 2021-06-04 2021-09-21 绍兴市北大信息技术科创中心 一种串长度参数编解码方法和装置

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2900004A1 (fr) 2006-04-18 2007-10-19 Thomson Licensing Sas Procede et dispositif de decodage arithmetique
EP1988703A1 (en) * 2007-05-02 2008-11-05 TTPCOM Limited Image transformation
CN101350882B (zh) * 2007-07-17 2010-04-14 鸿富锦精密工业(深圳)有限公司 图片增色系统及方法
US7903873B2 (en) * 2007-09-13 2011-03-08 Microsoft Corporation Textual image coding
US8457425B2 (en) * 2009-06-09 2013-06-04 Sony Corporation Embedded graphics coding for images with sparse histograms
WO2012134246A2 (ko) 2011-04-01 2012-10-04 엘지전자 주식회사 엔트로피 디코딩 방법 및 이를 이용하는 디코딩 장치
CA2806796C (en) 2011-06-24 2020-08-25 Panasonic Corporation Image coding and decoding using two-part horizontal and two-part vertical components of motion difference vectors
CN105554510B (zh) 2011-06-28 2019-06-28 三星电子株式会社 对视频进行解码的方法和设备
MX2013015212A (es) 2011-08-04 2014-03-21 Mediatek Inc Metodo y aparato para la binarizacion reordenada de elementos de sintaxis en la codificacion aritmetica binaria adaptativa basada en el contexto.
WO2013106987A1 (en) 2012-01-16 2013-07-25 Mediatek Singapore Pte. Ltd. Methods and apparatuses of bypass coding and reducing contexts for some syntax elements
US20130336386A1 (en) * 2012-06-18 2013-12-19 Qualcomm Incorporated Sample adaptive offset (sao) coding
CN102750385B (zh) * 2012-06-29 2014-05-07 南京邮电大学 基于标签检索的相关性—质量排序图像检索方法
US11259020B2 (en) * 2013-04-05 2022-02-22 Qualcomm Incorporated Determining palettes in palette-based video coding
CN105659606B (zh) * 2013-10-14 2019-06-18 微软技术许可有限责任公司 用于视频和图像编码和解码的方法、系统和介质
US9826242B2 (en) * 2014-03-14 2017-11-21 Qualcomm Incorporated Palette-based video coding
US10750198B2 (en) * 2014-05-22 2020-08-18 Qualcomm Incorporated Maximum palette parameters in palette-based video coding
US10291940B2 (en) 2014-05-23 2019-05-14 Qualcomm Incorporated Coding runs with escape in palette-based video coding
US10158866B2 (en) 2014-09-26 2018-12-18 Qualcomm Incorporated Parsing dependency reduction for palette index coding

Also Published As

Publication number Publication date
CA2950818C (en) 2020-12-22
JP2017525220A (ja) 2017-08-31
US11082695B2 (en) 2021-08-03
KR20170008288A (ko) 2017-01-23
CN110691244B (zh) 2022-07-08
US10382759B2 (en) 2019-08-13
JP6352452B2 (ja) 2018-07-04
JP2018170771A (ja) 2018-11-01
WO2015192779A1 (en) 2015-12-23
EP3138288A1 (en) 2017-03-08
CA3077920C (en) 2021-11-09
CN110691244A (zh) 2020-01-14
EP3138288B1 (en) 2020-12-23
CN106416246A (zh) 2017-02-15
CA2950818A1 (en) 2015-12-23
US20190306508A1 (en) 2019-10-03
US20180205951A1 (en) 2018-07-19
EP3138288A4 (en) 2018-03-28
CA3077920A1 (en) 2015-12-23
KR20180021229A (ko) 2018-02-28
KR101887798B1 (ko) 2018-08-10
KR101943805B1 (ko) 2019-01-29
CN106416246B (zh) 2019-09-17

Similar Documents

Publication Publication Date Title
JP6661699B2 (ja) ビデオ符号化における構文の2値化とコンテキスト適応型符号化の方法と装置
JP7224257B2 (ja) ビデオ符号化におけるパレットモードコンテキスト符号化、および、2値化の方法
US10506234B2 (en) Method of run-length coding for palette predictor
US9860548B2 (en) Method and apparatus for palette table prediction and signaling
EP3342169B1 (en) Method and apparatus of palette index map coding for screen content coding
EP3266217B1 (en) Method and apparatus for video or image decoding using palette coding mode and method for video or image coding

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180606

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190719

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190730

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20191028

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191210

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200212

R150 Certificate of patent or registration of utility model

Ref document number: 6661699

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