JP2007300455A - 算術符号化装置、および算術符号化装置におけるコンテキストテーブル初期化方法 - Google Patents
算術符号化装置、および算術符号化装置におけるコンテキストテーブル初期化方法 Download PDFInfo
- Publication number
- JP2007300455A JP2007300455A JP2006127336A JP2006127336A JP2007300455A JP 2007300455 A JP2007300455 A JP 2007300455A JP 2006127336 A JP2006127336 A JP 2006127336A JP 2006127336 A JP2006127336 A JP 2006127336A JP 2007300455 A JP2007300455 A JP 2007300455A
- Authority
- JP
- Japan
- Prior art keywords
- code amount
- slice
- context table
- activity
- arithmetic
- 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.)
- Withdrawn
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
【課題】算術符号化処理を高速化すること。
【解決手段】目標符号量決定部205は、現在のスライス算術符号化が終了する前に、符号量カウント部222からの既に終了した算術符号化による符号量に基づいて次のスライスの目標符号量を決定する。量子化パラメータ決定部206は、次のスライスの目標符号量に基づいて次のスライスの量子化パラメータを決定する。コンテキストテーブル初期化部209は、次のスライスの量子化パラメータに基づいて現在のスライスの算術符号化が終了する前に次のスライスで使用するコンテキストテーブル213あるいは214を初期化する。これにより、コンテキストテーブル213あるいは214の初期化のための時間をスライス毎の算術符号化処理の間に特別確保する必要がなくなり、算術符号化処理を高速化することができる。
【選択図】図1
【解決手段】目標符号量決定部205は、現在のスライス算術符号化が終了する前に、符号量カウント部222からの既に終了した算術符号化による符号量に基づいて次のスライスの目標符号量を決定する。量子化パラメータ決定部206は、次のスライスの目標符号量に基づいて次のスライスの量子化パラメータを決定する。コンテキストテーブル初期化部209は、次のスライスの量子化パラメータに基づいて現在のスライスの算術符号化が終了する前に次のスライスで使用するコンテキストテーブル213あるいは214を初期化する。これにより、コンテキストテーブル213あるいは214の初期化のための時間をスライス毎の算術符号化処理の間に特別確保する必要がなくなり、算術符号化処理を高速化することができる。
【選択図】図1
Description
本発明は、コンテキストテーブルをスライス毎に初期化し、符号化の対象となるシンタックス要素別にコンテキストテーブルを切り替えて動画像をエントロピー符号化する算術符号化装置、および算術符号化装置におけるコンテキストテーブル初期化方法に関するもので、特に、信号の発生確率を0と1の区間に適合させてその区間に含まれる小数の値で信号を表現する算術符号化のコンテキストテーブルの初期化に関し、特にH.264/AVC符号化標準で規定されるCABAC(Context Adaptive Binary Arithmetic Coding)のコンテキストテーブルの初期化に関するものである。
従来、動画像の高能率圧縮符号化方式としてISOで規格策定されたMPEG2(ISO/IEC13818−2)ビデオ符号化方式がデジタル放送やDVDの符号化方式に採用され広く普及している。近年はBluRayやHD−DVDと呼ばれる次世代の記録メディア方式が策定され、30Mpbs〜40Mpbsの高いビットレートで動画像を記録再生する方式であることから注目を集めている。これらの新しい記録メディアは記憶容量が大きく、転送レートが高いことが特徴であるが、それだけでなくビデオの圧縮符号化方式としてH.264/AVC符号化方式を採用していることも特徴の1つである。
H.264/AVC符号化方式の正式な名称はTIU−T勧告H.264あるいはISO/IEC14496−10(MPEG4パート10)Advanced Video Codingであり、動き補償予測による予測誤差を離散コサイン変換(DCT変換)して適応量子化した後にエントロピー符号化を行って符号量圧縮を行う符号化方式である。特にエントロピー符号化方式にCAVLC(Context Adaptive Variable Length Coding)と、CABAC(Context Adaptive Binary Arithmetic Coding)との2つの方式が用意されており、従来のVCL符号化に比べて符号化効率が改善されている。とりわけ算術符号化方式であるCABACは符号化効率が高く、より少ない符号量で画像データを圧縮することができる符号化方式である。
ここで、算術符号化方式について説明する。3ビットのビット列(0,0,1)からなる信号列を算術符号化する場合、まず最下位のビット値1を取り出し、このビットの発生確率を定義した図8のコンテキストテーブルから1の発生確率を知る。このビット列(0,0,1)の個々のビットはそれぞれコンテキストが異なる設定なので、図8のコンテキストテーブルを1ビット毎に切り替えて適用する。
つまり、図8に示すように、1の発生確率が0.6であり優勢なシンボルであったとすると、図9に示すように、区間[0,1]の下側の0から0.6の区間[0、0.6]にこの1を割り当てる。次にビット列(0,0.1)の真ん中のビット0を取り出し、このビットの発生確率を定義したコンテキストテーブルから0の発生確率0.3を知る。これは劣勢シンボルである。これを、図9に示すように、区間[0、0.6]の上側から0.3の比率となる区間[0.42,0.6]に0を割り当てる。最後にビット列(0,0,1)の最上位のビット0を取り出し、このビットの発生確率を定義したコンテキストテーブルから0の発生確率0.8を知る。これを、図9に示すように、区間[0.42,0.6]の下から0.8の比率の区間[0.42,0.564]に1を割り当てる。区間0.42から0.564に含まれる小数でデジタルのビット量を最小にする小数値は0.5である。0.5はビット列で示すと1であり、元のビット列が3ビットであったものが算術符号化することによって1ビットに圧縮されている。図9は、この3ビットの算術符号化の流れを示している。
これが算術符号の基本的な考え方であるが、H.264/AVCのCABAC符号化では、例えば、図10に示す構成でエントロピー符号化器を構成する。符号化の対象であるシンタックス要素は、シンタックスに従った種々の変数シンボルや予測誤差を示す係数データである。これらの変数や係数は多値であるので、まず最初に2値化器102で2値化されビット列に変換される。この2値化には、Unary BinarizationやTruncated Unary Binarization,あるいはConcatenated Unary/k−th Order Exponential Golomb Binarizatioが適用される。同時に変数や係数は発生確率テーブルが個別に用意されており、画像をマクロブロックに分割して符号化する場合に隣接のマクロブロックの情報を使ってより期待する発生確率が発生しやすいように周辺情報を加味してコンテキスト別にシンボルの発生確率を定義したコンテキストテーブルがコンテキストモデラ101によって選択され、その確率値に従って2値化されたビン値が算術符号化器103でビットストリームに符号化される。
コンテキストテーブルは、学習効果を持たせるために符号化した際に優勢シンボルが発生した場合には、そのコンテキストの発生確率をより高くするように修正されて以降の符号化の時により最適な符号効率で符号化が行われるように修正される。
逆に劣勢シンボルが出現した場合は、コンテキストテーブルの発生確率はより低くなるように修正される。ところでデジタル伝送の形態によってはデータの伝送誤りが発生する場合が想定される。算術符号化されたビットストリームを復号する場合、最初のビットから逐次複合化していかないと値の復元ができない特性をもっている。この特性はもし符号の途中に伝送誤りで生じたビット誤りがあった場合、それ以降の値の正確な復元は不可能である。
そこで、動画像の1フレームを1スライス、場合によっては1フレームを複数のスライスに分割し、このスライス毎にコンテキストテーブルを初期化して伝送誤りの耐性を高めるようにH.264/AVCのCABAC規格で規定されている。CABACにおいては460のコンテキストが用意されているため、スライス毎にこのコンテキストテーブルを初期化しなければならない。
なお、従来の算術符号化装置において、コンテキストテーブルの初期化を高速化するものがある(例えば、特許文献1参照)。
特開平6−319046号公報
ところで、算術符号化は、その性質上1ビットの値を1ビット毎に順次符号化処理しなければならず、複数ビットをまとめて符号化したり、符号化しているビットより先のビットを先行して符号化することができないため、ハードウェア回路で算術符号化装置を構成する場合には並列処理回路を構成できず、多くのクロックサイクルが必要となる。
そのため、処理全体のサイクル数を削減するためにコンテキストの初期化時間をできるだけ短縮する必要があり、特に、マルチスライス構成とした場合にその要求は高くなる。
このように、CABAC規格においては上述したように伝送誤りの耐性を高めるためスライス毎にコンテキストテーブルを初期化する必要があるが、上述の特許文献1に記載の算術符号化装置では、スライス毎にコンテキストテーブルを初期化する方法までは開示されていないので、算術符号化処理を高速化することもできない、という問題があった。
そこで、本発明は、算術符号化処理を高速化することができる算術符号化装置および算術符号化装置におけるコンテキストテーブル初期化方法を提供することを目的とする。
前記目的を達成するため本発明の算術符号化装置では、コンテキストテーブルをスライス毎に初期化して算術符号化をする算術符号化装置であって、現在のスライスの前記算術符号化が終了する前に、既に終了した前記算術符号化による符号量に基づいて、次のスライスの目標符号量を決定する目標符合量決定部と、前記目標符合量決定部によって決定された次のスライスの目標符号量に基づいて次のスライスの量子化パラメータを決定する量子化パラメータ決定部と、前記量子化パラメータ決定部によって決定された次のスライスの量子化パラメータに基づいて、現在のスライスの算術符号化が終了する前に次のスライスで使用する前記コンテキストテーブルを初期化するコンテキストテーブル初期化部と、を有するものである。
ここで、前記目標符合量決定部は、現在のスライスの前記算術符号化が終了する前に、前記算術符号化をしている現在のスライスの途中までの符号量と、前記現在のスライスの途中までの符号量から予測した当該現在のスライスの残りの符号量とに基づいて、次のスライスの目標符号量を決定する、ようにしても良い。
また、前記目標符合量決定部は、現在のスライスの前記算術符号化が終了する前に、前記算術符号化をしている現在のスライスの途中までの符号量と、既に前記算術符号化が終了している符号化済みの隣接マクロブロックの符号量から予測した当該現在のスライスの残りの符号量とに基づいて、次のスライスの目標符号量を決定する、ようにしても良い。
また、さらに、入力画像のアクティビティを算出するアクティビティ算出部と、マクロブロック毎に算術符号化後の符号量をカウントする符号量カウント部と、マクロブロック毎に前記アクティビティと前記符号量とを対応させて記憶するアクティビティ・符号量記憶部と、前記アクティビティ算出部によって前記アクティビティが算出された場合、算出されたアクティビティと類似するアクティビティが前記アクティビティ・符号量記憶部に記憶されているか否かを検索し、類似するアクティビティが記憶されている場合、当該類似するアクティビティに対応する前記符号量を読み出す類似アクティビティ検索部と、を有し、前記目標符合量決定部は、現在のスライスの前記算術符号化が終了する前に、前記類似アクティビティ検索部によって読み出された前記類似するアクティビティに対応する前記符号量に基づいて、次のスライスの目標符号量を決定する、ようにして良い。
また、本発明の算術符号化装置におけるコンテキストテーブル初期化方法は、コンテキストテーブルをスライス毎に初期化して算術符号化をする算術符号化装置におけるコンテキストテーブル初期化方法であって、現在のスライスの前記算術符号化が終了する前に、既に終了した前記算術符号化による符号量に基づいて次のスライスの目標符号量を決定し、次のスライスの目標符号量に基づいて次のスライスの量子化パラメータを決定し、次のスライスの量子化パラメータに基づいて現在のスライスの算術符号化が終了する前に次のスライスで使用する前記コンテキストテーブルを初期化する、ものである。
本発明の算術符号装置および算術符号化装置におけるコンテキストテーブル初期化方法によれば、現在のスライスの算術符号化が終了する前に、既に終了した算術符号化による符号量に基づいて次のスライスの目標符号量を決定し、次のスライスの目標符号量に基づいて次のスライスの量子化パラメータを決定し、次のスライスの量子化パラメータに基づいて現在のスライスの算術符号化が終了する前に次のスライスで使用するコンテキストテーブルを初期化するので、コンテキストテーブルの初期化のための時間をスライス毎の算術符号化処理の間に特別確保する必要がなくなり、算術符号化処理を高速化することができる。
本発明の実施の形態は、CABAC方式の算術符号化装置、およびその算術符号化装置におけるコンテキストテーブルの初期化方法に関し、符号化が完了していないマクロブロックの符号量をすでに符号化した符号化済み部分であるマクロブロックの符号量から予測することによって、現在のスライスの算術符号化が終了する前に次のスライスの量子化パラメータの初期sliceQPを決定してコンテキストテーブルを初期化することにより、コンテキストテーブルの初期化のための時間をスライス毎の算術符号化処理の間に特別確保する必要をなくし、算術符号化処理の高速化を実現するものである。
実施の形態1.
図1は、本発明に係る算術符号化装置を有する符号化装置の構成例を示す図である。
図1は、本発明に係る算術符号化装置を有する符号化装置の構成例を示す図である。
図1において、この符号化装置は、アクティビティ算出部201、画像入力部202、スライスタイプ制御部203、フレームバッファ204、目標符号量決定部205、量子化パラメータ決定部206、画面内予測部207、動き補償予測部208、コンテキストテーブル初期化部209、INTRA/INTER判定部210、初期化コンテキストテーブルの切り替え部211、直交変換器212、第1のコンテキストテーブル213、第2のコンテキストテーブル214、量子化器215、コンテキストテーブル切り替え部216、2値化器217、コンテキストモデラ218、逆量子化器219、算術符号化器220、逆直交変換器221、符号量カウント部222、ストリームバッファ223、デブロックフィルタ224、切り替えタイミング制御部225、全体処理タイミング生成部226を有している。
次に、図1に示す符号化装置の動作を説明する。まずは、算術符号化器220が算術符号化処理を行うまでの動作について説明する。
(算術符号化処理までの動作)
(算術符号化処理までの動作)
図1に示す本実施の形態の符号化装置では、動画像の符号化を行うためにデジタル化されたビデオ信号が画像入力部202に入力される。入力されるビデオ信号は、高精細画像の符号化を行う場合、画像サイズが1280×720で画像周期が60フレームのプログレッシブ画像や画像サイズが1920×1080で画像周期が60フィールドのインターレース画像が入力画像となる。
また、本実施の形態の符号化装置では、H.264/AVC符号化方式で符号化を行うので、符号化対象となるフレーム画像の時間的に先行したフレーム画像を参照画像として予測誤差を求めると同時に、符号化対象となるフレーム画像の時間的に後続のフレーム画像を参照画像として予測誤差を求めるバイプレディクティブ・スライス(Bスライス)の符号化を行うため、入力画像の複数フレームを一度フレームバッファ204に記憶して、時間的に前後するフレームの参照が可能なように記憶される。
H.264/AVC符号化方式において、一般的にビデオ信号の画像を構成するフレームまたはフィールドを符号化の1単位として取り扱うが、この1画面をさらに複数のスライスに分割して符号化することが可能である。本実施の形態1では、説明の簡単のため1フレームを構成する1画面を複数のスライスに分割することなく、1フレーム=1スライスとして説明するが、本発明では、これに限らず、複数のスライスに分割するマルチスライスの符号化に適応可能である。
H.264/AVC符号化方式の特徴の1つは、イントラ符号化と呼ばれる画面内符号化に画面内予測符号を採用している点である。1スライスの符号化を行う場合、マクロブロックと呼ぶ16×16の正方画素を単位として画像の予測誤差検出、直交変換、量子化を行う。
画面内予測部207では、フレームバッファ204に保持され入力信号を、マクロブロック単位でブロックに隣接する上側あるいは左側の画素を参照画素として同一面内の予測を行い、入力画像と予測画像の予測誤差が最小になる予測方法を決し、決定した予測方法によって生成された画像を予測画像としてINTRA/INTER判定部210に送る。
これに対して、動き補償予測部208は、従来から知られているMPGE1やMPEG2符号化方式と同じように、複数フレーム間の画像の動きを利用して参照画像の動き補償予測による予測誤差が最小となる参照画像を探索し、これを予測画像としてINTRA/INTER判定部210に送る。
フレーム間予測による符号化効率は画面内予測に比べて効率が高い。画面内符号化をイントラ(INTRA)符号、動き補償によるフレーム間符号をインター(INTER)符号と呼ぶが、H.264/AVCでは同一のスライスの中で、マクロブロック単位でイントラとインターの符号化が混在することが可能なので、INTRA/INTER判定部210でどちらが符号化効率が高いかを判断して符号量が少ない符号化方式を選択する。
INTRA/INTER判定部210で選択された予測画像は、図示しない差分器により入力画像との予測誤差が算出された後、直交変換器212で係数に変換される。H.264/AVCでは、直交変換にDCTが採用されているので、直交変換されると、DCT係数となる。
DCT係数は、さらに符号量を削減するために量子化器215にて量子化される。量子化された係数のデータ量は、量子化パラメータの一つである量子化ステップ幅に大きく依存する。量子化ステップを大きくしてDCT係数を粗く量子化すると、量子化後の係数データ量は小さくなるので符号化効率が高くなる。これに対して、量子化ステップを小さくしてDCT係数を細かく量子化すると画像品質は良くなるが、量子化後の係数データ量は大きくなるので符号化効率は悪くなる。このように、DCT係数を量子化する量子化ステップを制御することにより、この画像符号化装置により生成されるビットストリームのビット量を制御することが可能となる。
量子化器215にて量子化されたDCT係数は、逆量子化器219で再度DCT係数に戻された後、逆直交変換器221で予測誤差に再変換される。なお、この予測誤差は、図示しない加算器により、INTRA/INTER判定部210で決定した予測部207,208からの予測画像に加算される。
その後、デブロックフィルタ224でブロックノイズが除去され、ブロックノイズが除去された画像は、PスライスやBスライスで参照される参照画像としてフレームバッファ204に戻され記憶される。
ここで、H.264/AVCの符号化には、動き補償予測によるフレーム間予測を用いる双方向予測が可能なバイプレディクティブ・スライス(Bスライス)と、片方向予測が可能なプレディクティブ・スライス(Pスライス)と、面内符号のイントラ・スライス(Iスライス)と、の3種類のスライスが用いられる。
どのようなスライスタイプの出現順序でストリームを構成するかを制御するのがスライスタイプ制御部203である。一例としてIスライスとBスライスの間隔を一定にして「IBBBPBBBPBBBIBBBPBBB・・・」のような順序で符号化を行う。このようなスライスタイプの一定の繰り返しパターンをグループオブピクチャ(GOP)構成と呼ぶ。このGOP構成は、符号化するビットレートに依存する。つまり、ビットレートが低い場合は、符号量をより少なくする必要から、Iスライスの挿入間隔を長く設定する。
符号化する元画像にシーンチェンジがあった場合、BスライスやPスライスで先行するフレームの画像は、現在のシーンと明らかに異なる画像のために予測を行っても適切な予測が行えないのでシーンチェンジを検出する必要がある。
そのため、アクティビティ算出部201は、マクロブロック単位やフレーム単位、スライス単位で画面の複雑度(アクティビティ)を算出する。
スライスタイプ制御部203は、アクティビティ算出部201によって算出されたアクティビティを複数フレームに渡って保持しておき、フレーム間の変化を調べてシーンチェンジの有無を判断する。この結果、シーンチェンジであると判断すると、速やかにIスライスを挿入する。
目標符号量決定部205は、算術符号化器220による算術符号化で発生するストリームの目標ビットレートと、スライスタイプ制御部203からのスライスタイプのGOP構成と、符号量カウント部222からの算術符号化器220における符号化済みの符号量ととを勘案して、スライスの符号量を決定する。なお、スライスの符号量の決定方法については、後で詳述する。また、符号化はマクロブロック単位で行われるので、マクロブロック単位で目標符号量を決定して精度の高い符号量制御を行うこともできる。
そして、量子化パラメータ決定部206は、目標符号量決定部205が決定した目標となる符号量を実現するために、先に説明したようにDCT係数を量子化する量子化パラメータを決定する。
その際、量子化パラメータ値Qから符号量Sを正確に算出できる関数はないので、実際に符号化した符号量と、目標値との比較を行って符号量を制御するループバック制御機能が必要となる。
そこで、符号量カウント部222が、算術符号化器220によって符号化されたビットストリームの符号量をカウントし、目標符号量決定部205にフィードバックする。
なお、算術符号化器220では、量子化されたDCT係数、規格に決められたシンタックスを構成する種々の変数を効率よく符号圧縮するためにエントロピー符号化を行う。ここで、H.264/AVC符号化ではエントロピー符号化には、CAVLC(context adaptive variable length coding)と、CABAC(context-based adaptive binary arithmetic coding)の2種類のエントロピー符号化が用意されており、本実施の形態では、CABACを採用している。CABACは、CAVLCに比べて符号化効率が高いが符号化処理方法も複雑になっており、ハードウェアでCABACによる算術符号化器を実装する場合、高いビットレートでの符号化を実現するには処理速度を優先した構成が必須である。
(算術符号化処理の説明)
(算術符号化処理の説明)
次に、本実施の形態1の算術符号化器220が採用しているCABACの算術符号化処理について説明する。
量子化器215にて量子化されたDCT係数は、2値化器217でバイナライゼーション(2値化)され、算術符号化器220で算術符号化される。算術符号化では、DCT係数だけでなく、ストリームのシンタックスを構成する種々のフラグや動きベクトル情報があるがこれらのシンタックス要素のすべてがCABAC符号化処理の対象であり、当然すべてのシンタックス要素がバイナライゼーション処理される。バイナライゼーションはUnary binarization、Truncated unary binarization、Concatenated unary k-th order Exp-Golomb binaraization、Filxed-length binarizationの4通りの方法が規定されているが、どれを適応するかは符号化して所定のシンタックスで伝送するDCT係数や動きベクトル等のシンタックス要素のコンテキストに依存する。
コンテキストは、シンタックス要素毎に定義されており、発生する確率の高いビット値(valMPS)と、その発生確率を定義した発生確率テーブルを参照するためのインデックス(pStateIdx)との2つの変数を組としてすべてのシンタックス要素に対応するコンテキストをテーブル形式で管理して記憶している。ビット値(valMPS)と、参照インデックス(pStateIdx)との組をコンテキストで分類してテーブル形式で保持するためにコンテキストテーブルと呼ぶ。
また、2値化されたビット値をビン(binVal)と呼ぶが、1つのシンタックス要素が複数個のビンに変換されるので、どのビンを算術符号の対象とするかを識別するためにビンインデックス(binIdx)を用いてビンを特定する。ビンインデックスは、2値化されたビン列のLSB側からbinIdx=0として識別する。
発生確率をできるだけ正しく想定するために、特定のシンタックス要素のコンテキストが複数定義されており、ビンインデックスと隣接情報を用いてどのコンテキストを適応するかを決定する。隣接情報とは、符号化対象となるマクロブロックに隣接するマクロブロック、場合によってはマクロブロックをさらに分割したサブマクロブロックの情報である。また符号化効率の点でIスライスの場合と、それ以外のPスライスおよびBスライスの場合とで、コンテキストが異なるように規定されている。
以上説明したコンテキストの算出を行うのがコンテキストモデラ218である。コンテキストモデラ218によって発生確率の高いビット値(valMPS)と、その発生確率を定義した発生確率テーブルを参照するためのインデックス(pStateIdx)とが決定され、2値化されたビン(binVal)と共に算術符号化器220に供給される。
算術符号化器220では、入力された発生確率の高いビット値の確率と、ビン(binVal)とを用いて算術符号演算を行い、ビットストリームを生成する。算術符号の結果、発生確率の高いビット値がビンとして入力されると、次はより高い発生確率で発生確率の高いビット値(valMPS)が発生するようにコンテキストが更新される。
ここで、算術符号化に用いるコンテキストテーブルは、マクロブロック毎に更新される一方、スライス毎に初期化される。上述したようにマクロブロック毎の学習によってコンテキストテーブルを更新していくため、マクロブロックの算術符号化を行う回数が増えれば増えるほど、符号化効率が高くなる方向に推移する。そのためコンテキストテーブルはできるだけ長く使い続けた方が好ましい。
その一方、伝送系のエラー発生等により符号化されたストリームに誤りが生じてしまうと、コンテキストテーブルも正しく更新されないため、算術符号化の特徴から、受信装置(復号装置)側では、符号エラーが生じた以降の算術符号化処理とは逆の算術復号処理は一切できなくなってしまう。これを回避するためにスライス毎にコンテキストテーブルを所定の方法で初期化する。当然のことながら算術符号化処理と、その逆の算術復号処理とでコンテキストテーブルの初期化の方法は同じである。
コンテキストテーブルの初期化は、コンテキストテーブル毎に規定された初期化関数によって発生確率の高いビット値(valMPS)と、その発生確率を定義した発生確率テーブルを参照するためのインデックス(pStateIdx)と、を生成する。この初期化関数の引数には、下記式(1)に示すように、初期変数テーブルがコンテキストテーブル毎に規定された値が使われると共に、スライスの量子化パラメータの初期値sliceQPが入力される。
(valMPS,pStateIdx)=コンテキスト初期化関数(m,n,sliceQP)・・・式(1)
ここで、コンテキスト初期化関数の引数となる変数m,nは、H.264/AVC規格の初期変数テーブルでコンテキスト毎に規定される変数である。
H.264/AVC符号化のコンテキストテーブルには、460種のコンテキストテーブルが規定されている。そのため、コンテキストテーブルを初期化するためにパイプライン構成を使って効率よく実装する必要があり、効率的に構成された回路で1つのコンテキスト要素を1クロックで処理する構成を実現できた場合でも、460クロックの処理時間を要する。例えば、1マクロブロックの算術符号化の平均処理時間を700ステップと想定すると、1マクロブロックの65%ほどの処理時間に相当する。また、1つのコンテキストの初期に要するステップが2ステップ以上かかる場合には、複数のマクロブロックの算術符号化に相当する時間がコンテキストテーブルの初期化のために必要となる。
よって、スライスの切り替わり毎にコンテキストテーブルの初期化を行うために、スライスの算術符号化の間に、コンテキストテーブルの初期化時間を設けると、本来の算術符号に費やす処理時間が圧迫される結果となる。特に、1フレームを複数のスライスで分割するマルチスライス構成の場合は、1フレームに発生するスライス毎の初期化回数が、スライス数分発生するので、さらに負荷が大きくなってしまう。このように、スライスの切り替わり毎に、コンテキストテーブルを初期化するための専用の時間を用意することは、無駄が多い。
そこで、本実施の形態1では、スライスが変更されるより前に、次に出現するスライスタイプに合わせてコンテキストテーブルを初期化して事前に用意しておき、スライスの切り替わり時には、今まで使っていたコンテキストテーブルから初期化済みの新しいコンテキストテーブルへ時間を空けずに切り替えることによって、コンテキストテーブルを初期化する時間を待つことなく新しいコンテキストテーブルを用いて次のスライスの算術符号化を開始するようにした。
以下、本実施の形態1におけるコンテキストテーブルの初期化処理について詳しく説明する。
(コンテキストテーブルの初期化処理)
(コンテキストテーブルの初期化処理)
先に説明したようにコンテキストテーブルの初期化は、コンテキスト初期化関数(m,n,sliceQP)によって定義される。引数のmとnは、初期変数テーブルで規定されるのでスライスタイプが確定すると一意に決まる。これに対して、スライスの量子化ステップの初期値sliceQPは、現在符号化を行っているスライスの符号化処理が完了しないと、本来確定しない値である。
そこで、本実施の形態1では、現在符号化中のスライスの符号化が完全に終わっていない場合でも、現在算術符号化をしているスライスの符号量に基づいて、すなわち算術符号化をしている現在のスライスの途中までの符号量と、既に算術符号化が終了している現在のスライスの途中までの符号量から予測した当該現在のスライスの残りの符号量とに基づいて、次のスライスの目標符号量を予測して、次のスライスの開始以前に次のスライスで使用するコンテキストテーブルの初期化を完了するようにしている。
図2は、本実施の形態1におけるコンテキストテーブルの初期化のタイミングを示す図である。
本実施の形態1では、図1に示すように、切り替え部211,216が切り替えタイミング制御部225からの切り替えタイミング信号に基づいて、第1のコンテキストテーブル213、第2のコンテキストテーブル214を後述するそれぞれのタイミングで逆に切り替え、一方のコンテキストテーブルを出力するように切り替えている際、コンテキストテーブル初期化部209により他方のコンテキストテーブルを初期化している。
その結果、本実施の形態1では、図2に示すように、スライス毎に、第1のコンテキストテーブル213と、第2のコンテキストテーブル214とを切り替えると共に、第1のコンテキストテーブル213を出力している際、第2のコンテキストテーブル214を初期化し、第2のコンテキストテーブル214を出力している際、第1のコンテキストテーブル213を初期化することができる。
ここで、先に説明したようにコンテキストテーブルの初期化は、コンテキスト初期化関数(m,n,sliceQP)で定義され、スライスの量子化ステップの初期値sliceQPは、現在符号化を行っているスライスの符号化処理が完了しないと、本来は確定しない値である。しかし、本実施の形態1では、図2に示すように、コンテキストテーブルを第1のコンテキストテーブル213、第2のコンテキストテーブル214と2つ設け、切り替え部211,216によりスライス毎に切り替えて使用して、現在算術符号化をしているスライス中のマクロブロックの符号量に基づいて、すなわち算術符号化をしている現在のスライスの途中までの符号量と、既に算術符号化が終了している符号化済み部分の符号量から予測した当該現在のスライスの残りの符号量とに基づいて、次のスライスの目標符号量を予測している。
そのため、本実施の形態1では、なるべく参考にするマクロブロックの符号量が多くなるように、現在算術符号化をしているスライスの終わり付近で、かつ、次のスライスの算術符号化に入る前に当該次のスライスで使用するコンテキストテーブルを初期化している。つまり、本実施の形態1では、図2に示すように、Bスライスの算術符号の際に使用する第2のコンテキストテーブル214の初期化は、第1のコンテキストテーブル213による算術符号をしているIスライスのなるべく終了間際で行ない、Pスライスの算術符号の際に使用する第1のコンテキストテーブル213の初期化は、第2のコンテキストテーブル214による算術符号をしているBスライスのなるべく終了間際で行なうようにしている。
なお、本実施の形態1では、なるべく最新かつ正確なマクロブロックの符号量を参考にできるように、図2に示すように、現在算術符号化をしているスライスの終わり付近で次のスライスで使用するコンテキストテーブルの初期化を開始し、次のスライスの算術符号化に入る直前に当該次のスライスで使用するコンテキストテーブルの初期化が完了するようにコンテキストテーブルの初期化開始タイミングを決定しているが、本発明では、このタイミングに限らず、次のスライスの算術符号化が開始する前に当該次のスライスで使用するコンテキストテーブルの初期化が完了していれば十分であるので、例えば、現在算術符号化をしているスライスの中央付近等で次のスライスで使用するコンテキストテーブルの初期化を開始するようにしても勿論よい。この場合、図2に示す方法に比べ、なるべく最新かつ正確なマクロブロックの符号量を参考にできなくなるが、その分、コンテキストテーブルの初期化時間を確実に確保できることになる。
図3、図4は、本実施の形態1におけるコンテキストテーブルの初期化処理の手順を示すフローチャートである。
なお、図3、図4のフローチャートに示すコンテキストテーブルの初期化処理は、マクロブロック毎に繰り返される処理ループ(S313で“no”の場合)、スライス毎に繰り返される処理ループ(S315で“no”の場合)、GOP毎に繰り返される処理ループ(S315で“yes”の場合)がフィードバックされて構成されている。
まず、本実施の形態1の場合、算術符号化のために、まず最初に、スライスタイプ制御部203はGOP構成を決定する(S301)。GOP構成を決定するとは、Iスライス、Bスライス、Pスライスの出現順序や頻度を決定することである。Iスライスの間隔が15、Pスライスの間隔が5とすると、「IBBBBPBBBBPBBBB IBBBBPBBBBPBBB・・・」が符号化の順序となる。このスライス構成の循環はシーンチェンジ等の特別な要因が無い場合は変更されることなく繰り返される。
次に、スライスタイプ制御部203は、決定された符号化シーケンスに従って符号化を行うために画面内予測部207および動き補償予測部208に対して符号化の指示を与えると共に、決定したGOP構成を目標符号量決定部205へ指示する。
目標符号量決定部205は、スライスタイプ制御部203にてGOPの構成が決まると、スライスタイプ別の符号量比率と、各スライスの目標符合量を決定する(S302)。例えば、目標符号量決定部205は、Iスライス:Pスライス:Bスライス=4:2:1のようにスライスタイプ別の符号量比率を決めると、目標とするビットレートから各スライスで生成すべき目標符号量を決定する。
例えば、目標符号量が40Mpbs、フレーム周波数を30Hzとすると、下記式(2)に示すように、Iスライスは4Mビット、Bスライスは2Mビット、Iスライスは1Mビットの符号量となる。
(I-Slice + P-slice + B-slice)×2 = (4M×1 + 2M×2 + 1M×12)×2 = 40Mビット
…式(2)
…式(2)
ここで、スライスタイプ別の目標符号量が決まると、スライスを構成するマクロブロックの総数からマクロブロック毎の目標符号量も決まる。
しかし、マクロブロックの量子化ステップは、マクロブロックの目標符号量から簡単に算出できない。これは、画像の複雑度がフレーム毎に異なるため画面内予測手段や動き補償予測手段によって生成される予測誤差の変動が大きく、エントロピー符号化を実際に行わないとビットストリームの符号量を正確に見積もることができないからである。
そこで、本実施の形態1では、スライス毎に、すなわち後述する図4のS315にてGOP未終了(S313“no”)と判定される度に、アクティビティ算出部201がフレームバッファ204に格納された入力画像を参照して、入力画像の複雑度を示すアクティビティを算出すると共に(S303)、符号量カウント部222によって今までに発生した符号量の積算値を考慮して、これから符号化するスライスに割り当て可能なビット量を算出してスライスの目標符号量とする(S304)。
そして、量子化パラメータ決定部206が、アクティビティ算出部201にて算出されたアクティビティと、目標符号量決定部205が決定したスライスタイプ別の目標符号量とに基づいて量子化パラメータを決定し、決定した量子化パラメータを量子化器215およびコンテキストテーブル初期化部209へ出力する。
H.264/AVC符号化では、量子化ステップを、量子化パラメータと呼ばれるパラメータで表現しており、量子化ステップが2倍になると量子化パラメータは+6増加する関係にある。量子化パラメータ算出関数の一例を、以下の式(3)に示す。
量子化パラメータ=量子化パラメータ算出関数(目標符号量、アクティビティ)
…式(3)
…式(3)
アクティビティは、画像の活性度や画像の変化の度合いを示すパラメータであり、以下の式(4)に示すように、マクロブロックの輝度平均とマクロブロック各画素の輝度の差分二乗総和(あるいは差分絶対総和)によって算出される。
アクティビティ=Σ(ブロック輝度平均−各画素の輝度)2…式(4)
よって、前記量子化パラメータ算出関数をより具体的に示すと、以下の式(5)のように定義される。式(5)において、基準量子化パラメータは、自然画像を符号化した時に目標符号量を得るための平均的な量子化パラメータの値であり、種々の画像を符号化した実験によって決定される値である。アクティビティの平均値である平均アクティビティも、実験によって求める。
量子化パラメータ=基準量子化パラメータ×(アクティビティ/平均アクティビティ)
…式(5)
…式(5)
しかしながら、この方法により決定された量子化パラメータで量子化を行った場合でも、算術符号化器220でビットストリームを生成すると、必ずしも期待された符号量が発生するとは限らない。
そこで、本実施の形態1では、目標符合量決定部205が、マクロブロック毎、すなわち後述する図4のS313にてスライス未終了(S313“no”)と判定する度に、各マクロブロックの目標符号量の調整と決定を行い(S305)、各マクロブロックの量子化パラメータを決定して(S306)、量子化器215へ出力する。ここで、各マクロブロックの目標符号量の調整とは、マクロブロック毎に符号化で発生した符号量と、目標符号量とを常に比較して、各マクロブロックの目標符号量を超える符号量が発生した場合は、後続のマクロブロックの目標符号量を減らす方向で制御し、その逆に各マクロブロックの目標符合量より少ない符号量が発生した場合は、後続のマクロブロックの目標符号量を増やす方向で制御することをいう。なお、このような符号量の調整は、スライス単位でも実行される(S304)。
これにより、量子化器215は、マクロブロック毎に直交変換器212からのDCT係数を量子化し、ローカルデコードを行う逆量子化器219へ出力する一方、2値化器217へ出力し、2値化されたマクロブロック毎の量子化係数が算術符号化器220で算出符号化される(S307)。
すると、符号量カウント部222が、算術符号化器220で算出符号化されるビットストリームの符号量をカウントして積算をする(S308)。
ところで、本実施の形態1では、図2に示すように、現在のスライスの符号化が完了する以前に次のスライスの目標符号量を決定し、次のスライスの量子化パラメータの初期値sliceQPを決めるようにしている。
そのため、本実施の形態1では、スライスの算術符号化が始まると、全体処理タイミング制御部226が、次のスライスで使用するコンテキストテーブルの初期化開始時間が来るか否かを判断し(ステップS309)、次のスライスで使用するコンテキストテーブルの初期化開始時間が来ていない場合には(ステップS309“no”)、スライスの終了か否かを判断し(S313)、スライスの終了でなければ(S313“no”)、前記ステップS303の処理に戻る。
これに対し、全体処理タイミング制御部226が、次のスライスで使用するコンテキストテーブルの初期化開始時間が来たと判断した場合(ステップS309“yes”)、目標符号量決定部205に次のスライスの目標符号量の算出指示を出力する。
すると、目標符号量決定部205は、全体処理タイミング制御部226からの算出指示により、現在のスライスにおいてすでに符号化が完了して符号量カウント部222にて積算されているマクロブロックの符号量から残りのマクロブロックで生成されると予想される符号量を計算して、現在のスライスで予想する符号量の累計を算出する(S310)。
ここで、現在のスライスで発生する符号量の累計は、例えば、1スライスのマクロブロック数をnとし、スライスで発生すると予測される符号量をSn、すでに発生した符号量をSm、すでに符号化が終わったマクロブロックの数をmとすると、Sn=Sm/m×nで算出される。
そして、目標符号量決定部205は、以上のようにして算出した符号量Snを用いて次のスライスの目標符号量を決定して、量子化パラメータ決定部206へ出力する。ここで、次のスライスの目標符号量を決定する際、現在のスライスで発生すると予想される符号量が目標符号量と誤差が生じる場合は、その差分符号量を次のスライスで一度にリカバリーしたり、GOPを構成する残りのスライスに均等に差分符号を割り振って調整するようにする。
量子化パラメータ決定部206では、目標符号量決定部205にて決定された次のスライスの目標符号量と、アクティビティ算出部201にて算出されたアクティビティとから、次のスライスの量子化パラメータの初期値sliceQPを決定して、コンテキストテーブル初期化部209へ出力する(S311)。
コンテキストテーブル初期化部209は、マクロブロックの符号化と並行して動作可能な構成を有し、量子化パラメータ決定部206より次のスライスの量子化パラメータの初期値sliceQPを受けると、切り替え部211を介して次のスライスに適応されるコンテキストテーブルの初期化を行う(S312)。
そして、このようにして、次のスライスに用いるコンテキストテーブルの初期化が、次のスライスに切り替わり前に完了し、現在のスライスが終了すると(ステップS313“yes”)、全体処理タイミング生成部226は切り換えタイミング制御部225へ指示を送り、切り換えタイミング制御部225は、この指示に基づき切り替え部216に対しテーブル切り換えの指示を送る。
すると、切り替え部216は、現在のスライスが終了した瞬間に、現在のスライス用のコンテキストテーブル(例えば、第1のコンテキストテーブル213)から次のスライス用のコンテキストテーブル(例えば、第2のコンテキストテーブ214)へ切り替える(S314)。これにより、スライスの切り替わり時においても、瞬時に次のスライス用のコンテキストテーブルを用いて次のスライスの第1マクロブロックから算術符号化を開始することが可能となる。
そして、次のスライスの算術符号化が開始されると、図2に示すように、この次のスライスの算出符号化が終了するより前に、前のスライスの算術符号化で使用したコンテキストテーブル(例えば、第1のコンテキストテーブル213)を事前に初期化しておき、この次のスライスの算出符号化が終了した時点で、使用中の第2のコンテキストテーブル(例えば、第2のコンテキストテーブ214)から初期化が完了したコンンテキストテーブル(例えば、第1のコンテキストテーブル213)に切り替えるようにする。
なお、コンテキストテーブルの初期化に要する時間は、コンテキストテーブルの初期化に要するステップ数に依存する。初期化に要するステップ数がNマクロブロックの算術符号化の処理時間に相当する場合は、スライスの最後からNマクロブロック前にコンテキストテーブルの初期化指示が発行されるように構成する。コンテキストテーブルの初期化を開始する時刻や第1および第2のコンテキストテーブルを切り替える時刻は切り替えタイミング制御部225で管理される。また、初期化するコンテキストテーブルの切り替えは、切り替え器211により行われる一方、算術符号化に利用するコンテキストテーブルの切り替えは切り替え器216により行われる。
そして、最後に算術符号化器220は、コンテキストモデラ218によって算出された第1のコンテキストテーブル213、または第2のコンテキストテーブル214に基づくコンテキストを基にビットストリームを生成して、生成したビットストリームをバイトパッキングしてストリームバッファ223に蓄積する。ストリームバッファ223のビットストリームは、ファイルとして蓄積したり、ネットワークを介して送信して消費等される。
以上のように、本実施の形態1の符号化装置によれば、目標符号量決定部205が現在のスライス算術符号化が終了する前に、既に終了した算術符号化による符号量に基づいて次のスライスの目標符号量を決定し、量子化パラメータ決定部206が次のスライスの目標符号量に基づいて次のスライスの量子化パラメータを決定し、コンテキストテーブル初期化部209が次のスライスの量子化パラメータに基づいて現在のスライスの算術符号化が終了する前に次のスライスで使用するコンテキストテーブルを初期化するようにしたので、コンテキストテーブルの初期化のための時間をスライス毎の算術符号化処理の間に特別確保する必要がなくなり、算術符号化処理を高速化することができる。
これにより、少ないクロックサイクルで動作する算術符号化器220が実現できるので、消費電力を削減することができると共に、また決められたクロックサイクルの中でより高いビットレートの算術符号化の符号出力が可能となる。
また、本実施の形態1では、現在のスライスの符号化が完了する前に、目標符号量決定部205が算術符号化をしている現在のスライスの途中までの符号量と、既に算術符号化が終了している現在のスライスの途中までの符号量から予測した当該現在のスライスの残りの符号量とに基づいて次のスライスの目標符号量を決定するようにしたので、確実に次のスライスの目標符号量を決定することができる。
実施の形態2.
次に、本発明の実施の形態2の画像符号化装置について説明する。なお、説明の簡単のために、1スライスが6×2のマクロブロックで構成されるスライスの符号化を例に説明する。なお、本実施の形態2の画像符号化装置は、図1に示す実施の形態1の画像符号化装置と構成が同じであり、図1を参照してその動作を説明する。
次に、本発明の実施の形態2の画像符号化装置について説明する。なお、説明の簡単のために、1スライスが6×2のマクロブロックで構成されるスライスの符号化を例に説明する。なお、本実施の形態2の画像符号化装置は、図1に示す実施の形態1の画像符号化装置と構成が同じであり、図1を参照してその動作を説明する。
図5は、1スライスが6×2のマクロブロックで構成されるスライスの一例を示している。
図5に示すように、このスライスの符号化はマクロブロックMB10まで完了している。マクロブロックMB11の符号化を開始する際に次のスライスへの切り替わり準備として実施の形態1で説明したようにコンテキストテーブルの初期化を開始する指示が発行される。この場合は、未だ符号化を行っていないマクロブロックMB11については上隣のマクロブロック5の符号量をマクロブロックMB11の予測符号量として採用し、マクロブロックMB12の予測符号量は、その上隣のマクロブロック6の符号量を採用する。
これは、隣接したマクロブロックの画素の相関は高いので、実際の符号化によって発生する符号量に対して近い値を取ると予測されるからである。なお、上隣だけでなく、左隣等の隣接しているマクロブロックの発生符号量を採用してもよい。
そして、本実施の形態2の目標符号量決定部205では、このように上隣のマクロブロックの符号量から予測したマクロブロックMB11,12の符号量を、すでに符号化済みのマクロブロックMB1からマクロブロックMB10までの符号量に加算して、次のスライスで発生する総符号量を予測して、量子化パラメータ決定部206へ出力する。符号量カウント手段222で発生した符号量を積算し、すでに発生した符号量を考慮して目標符合量の調整を行う。
本実施の形態2の量子化パラメータ決定部206では、スライスの量子化パラメータの初期値sliceQPを決定し、コンテキストテーブル初期化部209へ出力する。
本実施の形態2のコンテキストテーブル初期化部209では、この量子化パラメータの初期値sliceQPを用いてコンテキストテーブルを初期化することにより、次のスライスで用いる初期化されたコンテキストテーブルを事前に準備することができる。
なお、その後の処理は、前記算術符号化が既に終了している符号化済み部分の符号量に基づいて実施の形態1の場合と同様である。
以上のように、本実施の形態2の画像符号化装置によれば、前記実施の形態1と同様に、目標符号量決定部205が現在のスライス算術符号化が終了する前に、既に終了した算術符号化による符号量に基づいて次のスライスの目標符号量を決定し、量子化パラメータ決定部206が次のスライスの目標符号量に基づいて次のスライスの量子化パラメータを決定し、コンテキストテーブル初期化部209が次のスライスの量子化パラメータに基づいて現在のスライスの算術符号化が終了する前に次のスライスで使用するコンテキストテーブルを初期化するようにしたので、コンテキストテーブルの初期化のための時間をスライス毎の算術符号化処理の間に特別確保する必要がなくなり、算術符号化処理を高速化することができる。
特に、本実施の形態2の画像符号化装置では、スライス内に未符号化のマクロブロックがあっても、空間的に相関の高い隣接するマクロブロックの値を用いてスライスの目標符号量を決定するようにしたので、算術符号化が既に終了している部分の符号量に基づいて算術符号化が完了していない部分の符号量を計算により求める実施の形態1の場合よりも、正確にスライスの目標符号量を決定することができ、適切なスライスの量子化パラメータの初期値SliceQPが決定されるので符号化効率を高めることが可能となる。
実施の形態3.
次に、本発明の実施の形態3の画像符号化装置について説明する。
次に、本発明の実施の形態3の画像符号化装置について説明する。
図6は、実施の形態3の画像符号化装置の構成を示すブロック図である。
図6において、この実施の形態3の画像符号化装置は、図1に示す実施の形態1の画像符号化装置に対し、アクティビティ・符号量記憶部501と、類似アクティビティ検索部502とを設けたものである。そのため、図1に示す実施の形態1の画像符号化装置と同じ構成要素には、同じ符号を付して説明する。
次に、実施の形態3の特徴部分の動作を説明する。
本実施の形態3では、画像入力部202から入力した原画像は、フレームバッファ204に保存されるが、H.264/AVC符号化を行う場合、Bスライスの符号化においては符号化フレームより時間的に前と後のフレームを参照するので複数フレーム枚の原画像をフレームバッファ204に記憶しておく必要がある。
そのため、本実施の形態3では、画像入力部202より原画像がレームバッファ204に入力されると、直ぐにアクティビティ算出部201がマクロブロックのアクティビティを算出して、アクティビティ・符号量記憶部501にアクティビティの値だけを記憶する。
アクティビティ・符号量記憶部501は、例えば、複数フレームに渡るアクティビティと符号量とが記憶できるように構成されたリングバッファ構造のメモリにより構成されており、フレーム番号とマクロブロック位置によってアクティビティと符号量の書き込みあるいは読み出しが行われる。
一方、算術符号化器322にてマクロブロックの算術符号化を行い、符号量カウント部324にてそのマクロブロックの符号量をカウントし、カウントした符号量をアクティビティ・符号量記憶部501におけるそのフレーム番号とマクロブロック番号に該当する符号量記憶領域に記憶する。
図7は、本実施の形態3におけるアクティビティ・符号量記憶部501におけるアクティビティと符号量の記憶状態の一例を示している。
本実施の形態3では、符号量カウント部324は、アクティビティ・符号量記憶部501に、図7に示すようにフレーム番号(n)、マクロブロック番号(x、y)毎に、アクティビティと、符号量とを記憶する。例えば、フレーム番号(n)が“120”、マクロブロック番号(x、y)が(0、0)の場合、アクティビティが“1059”、符号量が“340”を記憶し、フレーム番号(n)が“120”、マクロブロック番号(x、y)が(0、1)の場合、アクティビティが“3208”、符号量が“422”を記憶する。
そして、本実施の形態3の場合、コンテキストテーブルの初期化要求が発生した場合、最初のうち、すなわちアクティビティ・符号量記憶部501にアクティビティと符号量とがあまり記憶されていない場合には、前記実施の形態1または実施の形態2と同様の手順で、コンテキストテーブルの初期化を行う。
そして、本実施の形態3では、前記実施の形態1,2と同様の手順で、所定のスライス数(例えば、5スライス)または所定のマクロブロック数(例えば、100マクロブロック)、さらには所定時間、コンテキストテーブルの初期化が繰り返し行われ、アクティビティ・符号量記憶部501にアクティビティと符号量のサンプルが数多く記憶された場合、全体処理タイミング生成部226から類似アクティビティ検索部502へ動作開始指示が出力される。
すると、類似アクティビティ検索部502は、アクティビティ・符号量記憶部501に記憶されたすでに符号化が完了して符号量とアクティビティとがわかっているマクロブロックから、アクティビティの値が近いマクロブロックを検索して、そのマクロブロックのアクティビティと符号量とを未符号のマクロブロックのアクティビティと、予測される符号量として採用する。なお、符号化中のスライスに未符号のマクロブロックが複数ある場合、類似アクティビティ検索部502は、このようにアクティビティ・符号量記憶部501にアクセスして、以上の操作を繰り返して類似アクティビティを検索して目標符号量決定部205へ出力する。なお、類似するアクティビティがない場合、目標符号量決定部205は、前記実施の形態1または実施の形態2と同様の手順で、次のスライスの目標符号量を算出する。
目標符号量決定部205では、符号量カウント部222からのスライス途中までの符号量と、類似アクティビティ検索部502によってアクティビティ・符号量記憶部501から出力されるアクティビティが類似するマクロブロックのアクティビティおよび符号量とに基づいて、次のスライスで発生する総符号量を予測し、この次のスライスの目標符号量を再設定して量子化パラメータ決定部206へ出力する。
量子化パラメータ決定部206では、目標符号量決定部205からのスライスの目標符号量に基づいて、スライスの量子化パラメータの初期値sliceQPを決定して、コンテキストテーブル初期化部209へ出力する。
コンテキストテーブル初期化部209は、この初期値sliceQPを用いて切り替え部211を介し第1のコンテキストテーブル213あるいは第1のコンテキストテーブル214を初期化することによって、次のスライスで用いる初期化されたコンテキストテーブルを事前に準備することが可能となる。
以上のように、本実施の形態3の画像符号化装置によれば、前記実施の形態1,2と同様に、目標符号量決定部205が現在のスライス算術符号化が終了する前に、既に終了した算術符号化による符号量に基づいて次のスライスの目標符号量を決定し、量子化パラメータ決定部206が次のスライスの目標符号量に基づいて次のスライスの量子化パラメータを決定し、コンテキストテーブル初期化部209が次のスライスの量子化パラメータに基づいて現在のスライスの算術符号化が終了する前に次のスライスで使用するコンテキストテーブルを初期化するようにしたので、コンテキストテーブルの初期化のための時間をスライス毎の算術符号化処理の間に特別確保する必要がなくなり、算術符号化処理を高速化することができる。
特に、本実施の形態3の画像符号化装置では、実施の形態1の構成に対し、アクティビティ・符号量記憶部501および類似アクティビティ検索部502を追加し、画像入力部202より原画像がフレームバッファ204に入力されると、直ぐにアクティビティ算出部201がマクロブロックのアクティビティを算出して、アクティビティ・符号量記憶部501にアクティビティの値だけを記憶しておき、コンテキストテーブルの初期化要求が発生した場合、類似アクティビティ検索部502が未符号のマクロブロックのアクティビティをアクティビティ・符号量記憶部501から呼び出すと共に、すでに符号化が完了して符号量とアクティビティとがわかっているマクロブロックの符号量とアクティビティとからアクティビティの値が近いマクロブロックを検索してそのマクロブロックの符号量を未符号のマクロブロックの予測される符号量として採用するようにしたので、スライス内に未符号化のマクロブロックがあっても、空間的に相関の高い隣接するマクロブロックの値を用いてスライスの目標符号量を決定するようにしたので、算術符号化が既に終了している部分の符号量に基づいて算術符号化が完了していない部分の符号量を計算により求める実施の形態1の場合よりも、正確なスライスの目標符号量を決定でき、適切なスライスの量子化パラメータの初期値SliceQPが決定されるので符号化効率を高めることが可能となる。
なお、前述の実施の形態1〜3では、図1、図6に示すように本発明に係る算術符号化装置をハードウエア的に構成して説明したが、本発明は、このようなハードウエア的な構成に限定されるものではなく、例えば、前述の本実施の形態1〜3の算術符号化装置の機能をソフトウエア的、すなわち図3および図4に示すコンテキストテーブルの初期化処理をコンピュータに実現させるための算術符号化プログラムをCPU等が実行するように構成しても勿論よい。この場合、この算術符号化プログラムは、記録媒体から読み取られてコンピュータに取り込まれてもよいし、通信ネットワークを介してダウンロードされてコンピュータにインストールされるようにしてもよい。
201 アクティビティ算出部
202 画像入力部
203 スライスタイプ制御部
204 フレームバッファ
205 目標符号量決定部
206 量子化パラメータ決定部
207 画面内予測部
208 動き補償予測部
209 コンテキストテーブル初期化部
210 INTRA/INTER判定部
211 切り替え部
212 直交変換器
213 第1のコンテキストテーブル
214 第2のコンテキストテーブル
215 量子化器
216 切り替え部
217 2値化器
218 コンテキストモデラ
219 逆量子化器
220 算術符号化器
221 逆直交変換器
222 符号量カウント部
223 ストリームバッファ
224 デブロックフィルタ
225 切り替えタイミング制御部
226 全体処理タイミング生成部
501 アクティビティ・符号量記憶部
502 類似アクティビティ検索部
202 画像入力部
203 スライスタイプ制御部
204 フレームバッファ
205 目標符号量決定部
206 量子化パラメータ決定部
207 画面内予測部
208 動き補償予測部
209 コンテキストテーブル初期化部
210 INTRA/INTER判定部
211 切り替え部
212 直交変換器
213 第1のコンテキストテーブル
214 第2のコンテキストテーブル
215 量子化器
216 切り替え部
217 2値化器
218 コンテキストモデラ
219 逆量子化器
220 算術符号化器
221 逆直交変換器
222 符号量カウント部
223 ストリームバッファ
224 デブロックフィルタ
225 切り替えタイミング制御部
226 全体処理タイミング生成部
501 アクティビティ・符号量記憶部
502 類似アクティビティ検索部
Claims (5)
- コンテキストテーブルをスライス毎に初期化して算術符号化をする算術符号化装置であって、
現在のスライスの前記算術符号化が終了する前に、既に終了した前記算術符号化による符号量に基づいて、次のスライスの目標符号量を決定する目標符合量決定部と、
前記目標符合量決定部によって決定された次のスライスの目標符号量に基づいて次のスライスの量子化パラメータを決定する量子化パラメータ決定部と、
前記量子化パラメータ決定部によって決定された次のスライスの量子化パラメータに基づいて、現在のスライスの算術符号化が終了する前に次のスライスで使用する前記コンテキストテーブルを初期化するコンテキストテーブル初期化部と、
を有する算術符号化装置。 - 請求項1記載の算術符号化装置において、
前記目標符合量決定部は、
現在のスライスの前記算術符号化が終了する前に、前記算術符号化をしている現在のスライスの途中までの符号量と、前記現在のスライスの途中までの符号量から予測した当該現在のスライスの残りの符号量とに基づいて、次のスライスの目標符号量を決定する、
ことを特徴とする算術符号化装置。 - 請求項1記載の算術符号化装置において、
前記目標符合量決定部は、
現在のスライスの前記算術符号化が終了する前に、前記算術符号化をしている現在のスライスの途中までの符号量と、既に前記算術符号化が終了している符号化済みの隣接マクロブロックの符号量から予測した当該現在のスライスの残りの符号量とに基づいて、次のスライスの目標符号量を決定する、
ことを特徴とする算術符号化装置。 - 請求項1記載の算術符号化装置において、
さらに、
入力画像のアクティビティを算出するアクティビティ算出部と、
マクロブロック毎に算術符号化後の符号量をカウントする符号量カウント部と、
マクロブロック毎に前記アクティビティと前記符号量とを対応させて記憶するアクティビティ・符号量記憶部と、
前記アクティビティ算出部によって前記アクティビティが算出された場合、算出されたアクティビティと類似するアクティビティが前記アクティビティ・符号量記憶部に記憶されているか否かを検索し、類似するアクティビティが記憶されている場合、当該類似するアクティビティに対応する前記符号量を読み出す類似アクティビティ検索部と、を有し、
前記目標符合量決定部は、
現在のスライスの前記算術符号化が終了する前に、前記類似アクティビティ検索部によって読み出された前記類似するアクティビティに対応する前記符号量に基づいて、次のスライスの目標符号量を決定する、
ことを特徴とする算術符号化装置。 - コンテキストテーブルをスライス毎に初期化して算術符号化をする算術符号化装置におけるコンテキストテーブル初期化方法であって、
現在のスライスの前記算術符号化が終了する前に、既に終了した前記算術符号化による符号量に基づいて次のスライスの目標符号量を決定し、
次のスライスの目標符号量に基づいて次のスライスの量子化パラメータを決定し、
次のスライスの量子化パラメータに基づいて現在のスライスの算術符号化が終了する前に、次のスライスで使用する前記コンテキストテーブルを初期化する、算術符号化装置におけるコンテキストテーブル初期化方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006127336A JP2007300455A (ja) | 2006-05-01 | 2006-05-01 | 算術符号化装置、および算術符号化装置におけるコンテキストテーブル初期化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006127336A JP2007300455A (ja) | 2006-05-01 | 2006-05-01 | 算術符号化装置、および算術符号化装置におけるコンテキストテーブル初期化方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007300455A true JP2007300455A (ja) | 2007-11-15 |
Family
ID=38769568
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006127336A Withdrawn JP2007300455A (ja) | 2006-05-01 | 2006-05-01 | 算術符号化装置、および算術符号化装置におけるコンテキストテーブル初期化方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007300455A (ja) |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009171188A (ja) * | 2008-01-16 | 2009-07-30 | Nec Corp | エントロピ符号化器、映像符号化装置、映像符号化方法および映像符号化プログラム |
WO2009119888A1 (en) * | 2008-03-28 | 2009-10-01 | Sharp Kabushiki Kaisha | Methods, devices and systems for parallel video encoding and decoding |
JP2011024001A (ja) * | 2009-07-16 | 2011-02-03 | Nippon Telegr & Teleph Corp <Ntt> | コンテクスト適応エントロピ符号化方法および装置,コンテクスト適応エントロピ復号方法および装置,並びにそれらのプログラム |
JP2011507461A (ja) * | 2007-12-17 | 2011-03-03 | クゥアルコム・インコーポレイテッド | 適応型グループオブピクチャ(agop)構造の決定 |
JP2011055180A (ja) * | 2009-09-01 | 2011-03-17 | Nippon Telegr & Teleph Corp <Ntt> | コンテクスト適応エントロピ符号化方法および装置,コンテクスト適応エントロピ復号方法および装置,並びにそれらのプログラム |
JP2012505576A (ja) * | 2008-10-08 | 2012-03-01 | フラウンホッファー−ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ | 音声復号器、音声符号器、音声信号の復号化方法、音声信号の符号化方法、コンピュータプログラムおよび符号化音声信号 |
US8344917B2 (en) | 2010-09-30 | 2013-01-01 | Sharp Laboratories Of America, Inc. | Methods and systems for context initialization in video coding and decoding |
US8731948B2 (en) | 2008-07-11 | 2014-05-20 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Audio signal synthesizer for selectively performing different patching algorithms |
JP2014520451A (ja) * | 2011-06-16 | 2014-08-21 | フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン | エントロピー符号化におけるコンテキスト初期化 |
JP2014158303A (ja) * | 2010-10-01 | 2014-08-28 | Sharp Corp | 動画像フレームを復号する復号方法 |
JP2014535178A (ja) * | 2011-11-10 | 2014-12-25 | シャープ株式会社 | デコーダピクチャバッファに基づくコンテキスト初期化 |
JP2016119708A (ja) * | 2011-05-04 | 2016-06-30 | カビウム・インコーポレイテッドCavium, Inc. | 小待ち時間レート制御システムおよび方法 |
US9560380B2 (en) | 2011-03-07 | 2017-01-31 | Dolby International Ab | Coding and decoding images using probability data |
US9654783B2 (en) | 2011-06-24 | 2017-05-16 | Dolby International Ab | Method for encoding and decoding images, encoding and decoding device, and corresponding computer programs |
JP2018117363A (ja) * | 2011-02-24 | 2018-07-26 | サン パテント トラスト | 算術復号方法および算術符号化方法 |
US10390076B2 (en) | 2016-03-29 | 2019-08-20 | Mitsubishi Electric Corporation | Image receiving/reproducing device, image generating/transmitting device, display system, image receiving/reproducing method, image generating/transmitting method, and computer readable medium |
US10645388B2 (en) | 2011-06-16 | 2020-05-05 | Ge Video Compression, Llc | Context initialization in entropy coding |
US10674172B2 (en) | 2016-04-19 | 2020-06-02 | Mitsubishi Electric Corporation | Image processing apparatus, image processing method, and computer-readable recording medium |
US10764586B2 (en) | 2017-03-07 | 2020-09-01 | Tencent Technology (Shenzhen) Company Limited | Bit rate allocation method, apparatus, and storage medium for code units in video coding |
CN112369025A (zh) * | 2018-07-02 | 2021-02-12 | 交互数字Vc控股公司 | 基于上下文的二进制算术编码和解码 |
-
2006
- 2006-05-01 JP JP2006127336A patent/JP2007300455A/ja not_active Withdrawn
Cited By (89)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011507461A (ja) * | 2007-12-17 | 2011-03-03 | クゥアルコム・インコーポレイテッド | 適応型グループオブピクチャ(agop)構造の決定 |
US9628811B2 (en) | 2007-12-17 | 2017-04-18 | Qualcomm Incorporated | Adaptive group of pictures (AGOP) structure determination |
JP2009171188A (ja) * | 2008-01-16 | 2009-07-30 | Nec Corp | エントロピ符号化器、映像符号化装置、映像符号化方法および映像符号化プログラム |
US11438634B2 (en) | 2008-03-28 | 2022-09-06 | Dolby International Ab | Methods, devices and systems for parallel video encoding and decoding |
US9681144B2 (en) | 2008-03-28 | 2017-06-13 | Dolby International Ab | Methods, devices and systems for parallel video encoding and decoding |
US9473772B2 (en) | 2008-03-28 | 2016-10-18 | Dolby International Ab | Methods, devices and systems for parallel video encoding and decoding |
US9503745B2 (en) | 2008-03-28 | 2016-11-22 | Dolby International Ab | Methods, devices and systems for parallel video encoding and decoding |
WO2009119888A1 (en) * | 2008-03-28 | 2009-10-01 | Sharp Kabushiki Kaisha | Methods, devices and systems for parallel video encoding and decoding |
US9930369B2 (en) | 2008-03-28 | 2018-03-27 | Dolby International Ab | Methods, devices and systems for parallel video encoding and decoding |
US8542748B2 (en) | 2008-03-28 | 2013-09-24 | Sharp Laboratories Of America, Inc. | Methods and systems for parallel video encoding and decoding |
US10284881B2 (en) | 2008-03-28 | 2019-05-07 | Dolby International Ab | Methods, devices and systems for parallel video encoding and decoding |
US11838558B2 (en) | 2008-03-28 | 2023-12-05 | Dolby International Ab | Methods, devices and systems for parallel video encoding and decoding |
US20140241438A1 (en) | 2008-03-28 | 2014-08-28 | Sharp Kabushiki Kaisha | Methods, devices and systems for parallel video encoding and decoding |
US10652585B2 (en) | 2008-03-28 | 2020-05-12 | Dolby International Ab | Methods, devices and systems for parallel video encoding and decoding |
US8824541B2 (en) | 2008-03-28 | 2014-09-02 | Sharp Kabushiki Kaisha | Methods, devices and systems for parallel video encoding and decoding |
US9681143B2 (en) | 2008-03-28 | 2017-06-13 | Dolby International Ab | Methods, devices and systems for parallel video encoding and decoding |
US10958943B2 (en) | 2008-03-28 | 2021-03-23 | Dolby International Ab | Methods, devices and systems for parallel video encoding and decoding |
JP2011515880A (ja) * | 2008-03-28 | 2011-05-19 | シャープ株式会社 | 動画像の並列的な符号化および復号のための方法、装置、および、システム |
US10522168B2 (en) | 2008-07-11 | 2019-12-31 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Audio signal synthesizer and audio signal encoder |
US10014000B2 (en) | 2008-07-11 | 2018-07-03 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Audio signal encoder and method for generating a data stream having components of an audio signal in a first frequency band, control information and spectral band replication parameters |
US8731948B2 (en) | 2008-07-11 | 2014-05-20 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Audio signal synthesizer for selectively performing different patching algorithms |
JP2013123226A (ja) * | 2008-10-08 | 2013-06-20 | Fraunhofer Ges Zur Foerderung Der Angewandten Forschung Ev | 音声符号器、音声信号の符号化方法、コンピュータプログラムおよびデジタル記憶装置 |
JP2012505576A (ja) * | 2008-10-08 | 2012-03-01 | フラウンホッファー−ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ | 音声復号器、音声符号器、音声信号の復号化方法、音声信号の符号化方法、コンピュータプログラムおよび符号化音声信号 |
JP2011024001A (ja) * | 2009-07-16 | 2011-02-03 | Nippon Telegr & Teleph Corp <Ntt> | コンテクスト適応エントロピ符号化方法および装置,コンテクスト適応エントロピ復号方法および装置,並びにそれらのプログラム |
JP2011055180A (ja) * | 2009-09-01 | 2011-03-17 | Nippon Telegr & Teleph Corp <Ntt> | コンテクスト適応エントロピ符号化方法および装置,コンテクスト適応エントロピ復号方法および装置,並びにそれらのプログラム |
US8344917B2 (en) | 2010-09-30 | 2013-01-01 | Sharp Laboratories Of America, Inc. | Methods and systems for context initialization in video coding and decoding |
US10999579B2 (en) | 2010-10-01 | 2021-05-04 | Velos Media, Llc | Methods and systems for decoding a video bitstream |
US9313514B2 (en) | 2010-10-01 | 2016-04-12 | Sharp Kabushiki Kaisha | Methods and systems for entropy coder initialization |
US10341662B2 (en) | 2010-10-01 | 2019-07-02 | Velos Media, Llc | Methods and systems for entropy coder initialization |
US10659786B2 (en) | 2010-10-01 | 2020-05-19 | Velos Media, Llc | Methods and systems for decoding a video bitstream |
JP2014158303A (ja) * | 2010-10-01 | 2014-08-28 | Sharp Corp | 動画像フレームを復号する復号方法 |
JP2018117363A (ja) * | 2011-02-24 | 2018-07-26 | サン パテント トラスト | 算術復号方法および算術符号化方法 |
US10382784B2 (en) | 2011-03-07 | 2019-08-13 | Dolby International Ab | Method of coding and decoding images, coding and decoding device and computer programs corresponding thereto |
US9628818B2 (en) | 2011-03-07 | 2017-04-18 | Dolby International Ab | Method of coding and decoding images, coding and decoding device and computer programs corresponding thereto |
US11736723B2 (en) | 2011-03-07 | 2023-08-22 | Dolby International Ab | Method of coding and decoding images, coding and decoding device and computer programs corresponding thereto |
US11343535B2 (en) | 2011-03-07 | 2022-05-24 | Dolby International Ab | Method of coding and decoding images, coding and decoding device and computer programs corresponding thereto |
US9560380B2 (en) | 2011-03-07 | 2017-01-31 | Dolby International Ab | Coding and decoding images using probability data |
US10681376B2 (en) | 2011-03-07 | 2020-06-09 | Dolby International Ab | Method of coding and decoding images, coding and decoding device and computer programs corresponding thereto |
JP2016119708A (ja) * | 2011-05-04 | 2016-06-30 | カビウム・インコーポレイテッドCavium, Inc. | 小待ち時間レート制御システムおよび方法 |
US10021393B2 (en) | 2011-06-16 | 2018-07-10 | Ge Video Compression, Llc | Entropy coding of motion vector differences |
US10630988B2 (en) | 2011-06-16 | 2020-04-21 | Ge Video Compression, Llc | Entropy coding of motion vector differences |
US9973761B2 (en) | 2011-06-16 | 2018-05-15 | Ge Video Compression, Llc | Context initialization in entropy coding |
US9930371B2 (en) | 2011-06-16 | 2018-03-27 | Ge Video Compression, Llc | Entropy coding of motion vector differences |
US9930370B2 (en) | 2011-06-16 | 2018-03-27 | Ge Video Compression, Llc | Entropy coding of motion vector differences |
US12069267B2 (en) | 2011-06-16 | 2024-08-20 | Ge Video Compression, Llc | Context initialization in entropy coding |
US9918090B2 (en) | 2011-06-16 | 2018-03-13 | Ge Video Compression, Llc | Entropy coding supporting mode switching |
US10057603B2 (en) | 2011-06-16 | 2018-08-21 | Ge Video Compression, Llc | Entropy coding supporting mode switching |
US10063858B2 (en) | 2011-06-16 | 2018-08-28 | Ge Video Compression, Llc | Entropy coding of motion vector differences |
JP2018186527A (ja) * | 2011-06-16 | 2018-11-22 | ジーイー ビデオ コンプレッション エルエルシー | エントロピー符号化におけるコンテキスト初期化 |
US10148962B2 (en) | 2011-06-16 | 2018-12-04 | Ge Video Compression, Llc | Entropy coding of motion vector differences |
US10230954B2 (en) | 2011-06-16 | 2019-03-12 | Ge Video Compression, Llp | Entropy coding of motion vector differences |
US9918104B2 (en) | 2011-06-16 | 2018-03-13 | Ge Video Compression, Llc | Entropy coding of motion vector differences |
US10298964B2 (en) | 2011-06-16 | 2019-05-21 | Ge Video Compression, Llc | Entropy coding of motion vector differences |
US10306232B2 (en) | 2011-06-16 | 2019-05-28 | Ge Video Compression, Llc | Entropy coding of motion vector differences |
US10313672B2 (en) | 2011-06-16 | 2019-06-04 | Ge Video Compression, Llc | Entropy coding supporting mode switching |
JP2014520451A (ja) * | 2011-06-16 | 2014-08-21 | フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン | エントロピー符号化におけるコンテキスト初期化 |
US11838511B2 (en) | 2011-06-16 | 2023-12-05 | Ge Video Compression, Llc | Entropy coding supporting mode switching |
US9768804B1 (en) | 2011-06-16 | 2017-09-19 | Ge Video Compression, Llc | Context initialization in entropy coding |
US11533485B2 (en) | 2011-06-16 | 2022-12-20 | Ge Video Compression, Llc | Entropy coding of motion vector differences |
US10425644B2 (en) | 2011-06-16 | 2019-09-24 | Ge Video Compression, Llc | Entropy coding of motion vector differences |
US10432940B2 (en) | 2011-06-16 | 2019-10-01 | Ge Video Compression, Llc | Entropy coding of motion vector differences |
US10432939B2 (en) | 2011-06-16 | 2019-10-01 | Ge Video Compression, Llc | Entropy coding supporting mode switching |
US10440364B2 (en) | 2011-06-16 | 2019-10-08 | Ge Video Compression, Llc | Context initialization in entropy coding |
US9762913B2 (en) | 2011-06-16 | 2017-09-12 | Ge Video Compression, Llc | Context initialization in entropy coding |
US9936227B2 (en) | 2011-06-16 | 2018-04-03 | Ge Video Compression, Llc | Entropy coding of motion vector differences |
US10630987B2 (en) | 2011-06-16 | 2020-04-21 | Ge Video Compression, Llc | Entropy coding supporting mode switching |
US10645388B2 (en) | 2011-06-16 | 2020-05-05 | Ge Video Compression, Llc | Context initialization in entropy coding |
US9743090B2 (en) | 2011-06-16 | 2017-08-22 | Ge Video Compression, Llc | Entropy coding of motion vector differences |
US9729883B2 (en) | 2011-06-16 | 2017-08-08 | Ge Video Compression, Llc | Entropy coding of motion vector differences |
US11516474B2 (en) | 2011-06-16 | 2022-11-29 | Ge Video Compression, Llc | Context initialization in entropy coding |
US9455744B2 (en) | 2011-06-16 | 2016-09-27 | Ge Video Compression, Llc | Context initialization in entropy coding |
JP7100836B2 (ja) | 2011-06-16 | 2022-07-14 | ジーイー ビデオ コンプレッション エルエルシー | エントロピー符号化におけるコンテキスト初期化 |
US9596475B2 (en) | 2011-06-16 | 2017-03-14 | Ge Video Compression, Llc | Entropy coding of motion vector differences |
US10819982B2 (en) | 2011-06-16 | 2020-10-27 | Ge Video Compression, Llc | Entropy coding supporting mode switching |
US11277614B2 (en) | 2011-06-16 | 2022-03-15 | Ge Video Compression, Llc | Entropy coding supporting mode switching |
JP2021108479A (ja) * | 2011-06-16 | 2021-07-29 | ジーイー ビデオ コンプレッション エルエルシー | エントロピー符号化におけるコンテキスト初期化 |
US9628827B2 (en) | 2011-06-16 | 2017-04-18 | Ge Video Compression, Llc | Context initialization in entropy coding |
US11012695B2 (en) | 2011-06-16 | 2021-05-18 | Ge Video Compression, Llc | Context initialization in entropy coding |
US9654783B2 (en) | 2011-06-24 | 2017-05-16 | Dolby International Ab | Method for encoding and decoding images, encoding and decoding device, and corresponding computer programs |
US10694186B2 (en) | 2011-06-24 | 2020-06-23 | Dolby International Ab | Method of coding and decoding images, coding and decoding device and computer programs corresponding thereto |
US9661335B2 (en) | 2011-06-24 | 2017-05-23 | Dolby International Ab | Method of coding and decoding images, coding and decoding device and computer programs corresponding thereto |
US10362311B2 (en) | 2011-06-24 | 2019-07-23 | Dolby International Ab | Method of coding and decoding images, coding and decoding device and computer programs corresponding thereto |
US9848196B2 (en) | 2011-06-24 | 2017-12-19 | Dolby International Ab | Method of coding and decoding images, coding and decoding device and computer programs corresponding thereto |
US10033999B2 (en) | 2011-06-24 | 2018-07-24 | Dolby International Ab | Method of coding and decoding images, coding and decoding device and computer programs corresponding thereto |
JP2014535178A (ja) * | 2011-11-10 | 2014-12-25 | シャープ株式会社 | デコーダピクチャバッファに基づくコンテキスト初期化 |
US10390076B2 (en) | 2016-03-29 | 2019-08-20 | Mitsubishi Electric Corporation | Image receiving/reproducing device, image generating/transmitting device, display system, image receiving/reproducing method, image generating/transmitting method, and computer readable medium |
US10674172B2 (en) | 2016-04-19 | 2020-06-02 | Mitsubishi Electric Corporation | Image processing apparatus, image processing method, and computer-readable recording medium |
US10764586B2 (en) | 2017-03-07 | 2020-09-01 | Tencent Technology (Shenzhen) Company Limited | Bit rate allocation method, apparatus, and storage medium for code units in video coding |
CN112369025A (zh) * | 2018-07-02 | 2021-02-12 | 交互数字Vc控股公司 | 基于上下文的二进制算术编码和解码 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2007300455A (ja) | 算術符号化装置、および算術符号化装置におけるコンテキストテーブル初期化方法 | |
EP3331243B1 (en) | Image prediction method and device | |
KR101548470B1 (ko) | 비디오 코딩을 위한 적응 파라미터 셋트들 | |
KR100585901B1 (ko) | 디지털 신호 부호화 장치, 디지털 신호 복호 장치, 디지털신호 산술 부호화 방법 및 디지털 신호 산술 복호 방법 | |
CN101682773B (zh) | 用于对视频数据进行熵编码和熵解码的方法和设备 | |
KR102115049B1 (ko) | 계수 그룹들 및 계수 스캔들을 위한 계수 코딩 | |
EP2647203B1 (en) | Separately coding the position of a last significant coefficient of a video block in video coding | |
KR101772740B1 (ko) | Cabac 계수 레벨 코딩에 대한 처리량 향상 | |
JP6129969B2 (ja) | スケーラブルビデオコード化における代替変換 | |
EP2656608B1 (en) | Using a most probable scanning order to efficiently code scanning order information for a video block in video coding | |
KR101874945B1 (ko) | 향상된 엔트로피 인코딩 및 디코딩을 위한 방법 및 장치 | |
US20130195199A1 (en) | Residual quad tree (rqt) coding for video coding | |
US20060176953A1 (en) | Method and system for video encoding with rate control | |
WO2013158629A1 (en) | Sign hiding techniques for quantized transform coefficients in video coding | |
KR20110071231A (ko) | 부호화 방법, 복호화 방법 및 장치 | |
EP2777258A1 (en) | Binarization of prediction residuals for lossless video coding | |
WO2014005092A1 (en) | Sign hiding techniques for quantized transform coefficients in video coding | |
CN102986211A (zh) | 视频编码中的速率控制 | |
KR20170028905A (ko) | 팔레트 모드 코딩을 위한 방법 | |
CN114009049A (zh) | 用于针对视频译码的低频不可分离变换信令的上下文建模 | |
JP2022501870A (ja) | ビデオ符号化及び復号化 | |
WO2013155486A1 (en) | Group flag in transform coefficient coding for video coding | |
KR20040098631A (ko) | 디지털 비디오 컨텐트를 위한 적응적 범용 가변 길이코드워드 코딩 | |
KR20170046112A (ko) | 예측 모드에 기초한 변환 생략 정보의 엔트로피 복호화 방법 및 장치 | |
US10382750B2 (en) | Region-based processing of predicted pixels |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080630 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20091117 |