JP2008131526A - 動画像符号化装置及び動画像符号化プログラム - Google Patents

動画像符号化装置及び動画像符号化プログラム Download PDF

Info

Publication number
JP2008131526A
JP2008131526A JP2006316521A JP2006316521A JP2008131526A JP 2008131526 A JP2008131526 A JP 2008131526A JP 2006316521 A JP2006316521 A JP 2006316521A JP 2006316521 A JP2006316521 A JP 2006316521A JP 2008131526 A JP2008131526 A JP 2008131526A
Authority
JP
Japan
Prior art keywords
signal
section
probability
value
input
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.)
Pending
Application number
JP2006316521A
Other languages
English (en)
Inventor
Hiroyuki Kurashige
宏之 倉重
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.)
Victor Company of Japan Ltd
Original Assignee
Victor Company of Japan Ltd
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 Victor Company of Japan Ltd filed Critical Victor Company of Japan Ltd
Priority to JP2006316521A priority Critical patent/JP2008131526A/ja
Publication of JP2008131526A publication Critical patent/JP2008131526A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

【課題】従来のCABACの算術符号化では、確率更新処理に続いてその結果を用いて再正規化処理を行うので、演算器を有効に活用した処理時間の短縮ができない。
【解決手段】時間t0において、最初のbinValのb0に対して、最初の確率更新P0がなされる。次に、時間t1において、上記P0の結果を受けて上記b0の再正規化R0を行う。同時に、時間t1において、上記b0に対する区間算出E0、及びb1に対する確率更新P1の各処理を連続して行う。以下、同様の動作が繰り返される。本発明では区間算出処理のみを独立に行うことができるため、区間算出処理を再正規化処理と並行して行うことで、再正規化のときに確率更新の待ち時間がなくなるので、再正規化の処理が常に行われ、演算器を常に動作させることができ、その結果処理時間を短縮できる。
【選択図】図7

Description

本発明は動画像符号化装置及び動画像符号化プログラムに係り、特に動画像をコンテキスト適応2値算術符号化(CABAC)によりエントロピー符号化する動画像符号化装置及び動画像符号化プログラムに関する。
近年、インターネットやDVD(Digital versatile Disc)レコーダなどの普及により、デジタル表現された動画像はますます一般的になっている。動画像を少ない符号量で効率的に表現する手法として、MPEG(Moving Picture Experts Group)などに代表される直交変換・エントロピー符号化方式が広く用いられている。しかし、従来のエントロピー符号化方式であるハフマン符号化は、符号化するシンボルに対して整数個のビットを割り当てることしかできないので、更なる符号化効率の向上に限界があった。
そこで、動画像符号化方式の新たな規格であるH.264/MPEG4−AVCにおいては、エントロピー符号化方式にCABAC(Context Adaptive Binary Arithmetic Coding;コンテキスト適応型2値算術符号化)と呼ばれる算術符号化方式が導入された(例えば、非特許文献1参照)。この算術符号化方式は、情報の統計的な特徴に適応させ、またコンテキストというものを用いて情報間の統計的な特徴に適応させ、符号化するシンボルに対して非整数個のビットを割り当てることによって符号長を理論的に限界のエントロピーに近づけることができるので、高い符号化効率を実現できる。
CABACを始めとする算術符号化の基本原理について、図10の例を用いて説明する。算術符号化は、再帰的な区間分割により成り立つ。まず、t0(初期状態)において、確率の数直線(0,1)を用意する。そして、簡単のためシンボルを2値とすると、t1において、シンボルS∋{0,1}に対する出現確率p0とp1に応じて数直線を区間に分割し、そのシンボルにあたる区間を選択する。これをt2以降において、再帰的に繰り返し、対応する区間を符号とする。このとき、出現確率が高い方のシンボルをMPS(Most Probable Symbol)、出現確率が低い方のシンボルをLPS(Least Probable Symbol)という。本例の場合、MPS=0,LPS=1である。
しかし、この基本原理のみでは、算術符号化を実現することは困難である。なぜなら、数直線の区間を再帰的に分割して次第に区間が狭くなることで、その区間を表現するために際限なくビットを必要とするからである。そこで、実際の算術符号化では、区間分割によって区間が狭くなった時、再正規化(renormalization)と呼ばれる処理によって区間を2倍に広げるようにしている。同時に、符号化結果を逐次出力することで、算術符号化を実現している。再正規化は、必要なだけ繰り返し行われる。
算術符号化は、高い符号化効率を達成できる一方、ハフマン符号化と比較してその演算量が多くなるので、演算量の削減や処理時間の短縮が強く求められている。そこで、処理時間を短縮する手法として、MPSとLPSを符号化する場合について、シンボル値とシンボル出現確率の新たな2通りの更新値を算出し、符号化結果が確定した後に、算出された2通りの更新値のうちいずれか適する方の更新値を選択する符号化装置が提案されている(例えば、特許文献1参照)。
また、区間分割を計算するビット領域の長さを予め拡張しておき、拡張した領域の分だけ再正規化による確率区間の拡大を一度に行い、その後で拡張領域のデータをまとめて符号出力する符号化装置が提案されている(例えば、特許文献2参照)。
ISO/IEC 14496-10:2004, Information technology--Coding of audio−visual objects--Part 10:Advanced Video Coding 特開2005−130099号公報 特開2005−184232号公報
しかし、前述の特許文献1に記載の符号化装置は、符号化結果が確定するまで確率状態の更新ができないため、処理の並列化による効果が十分でなく、算術符号化の処理時間を短縮することに限界がある。
一方、前述の特許文献2に記載の符号化装置は、区間分割を計算するビット領域の長さを予め拡張しておく必要がある。その上、拡張領域のデータをまとめて符号出力することにより、符号化処理が特定の時間に偏って演算器が動作する時間と動作しない時間とができるので、演算器を有効に活用した処理時間の短縮ができない。そのため、特許文献2に記載の符号化装置では、算術符号化の処理時間を更に短縮することが課題である。
本発明は以上の点に鑑みなされたもので、MPSとLPSのうち符号化シンボルである方のみを処理し、符号化結果が確定する前に確率状態の更新値を求めると共に、演算器が常に動作する構成をとることにより、算術符号化の処理時間を更に短縮し得る動画像符号化装置及び動画像符号化プログラムを提供することを目的とする。
上記の目的を達成するため、本発明の動画像符号化装置は、符号化対象の動画像信号と参照画像信号との間の動き予測信号を生成し、動画像信号と動き予測信号との差分信号に対して、所定画素数の符号化単位で直交変換及び量子化をして得られた量子化後信号に対して、算術符号化回路によりエントロピー符号化を行って符号化信号を生成する動画像符号化装置において、上記の算術符号化回路を、
量子化後信号を2値信号に変換する2値化部と、量子化後信号であるシンボルに基づいて、出現確率が高いシンボルが示すシンボル値とシンボル出現確率の情報をインデックス化した、コンテキストインデックスを出力するコンテキスト生成部と、2値信号とコンテキストインデックスとを入力として受け、所定の数直線の区間を、コンテキストインデックスと2値信号の値に基づいて分割することを再帰的に繰り返す確率更新処理と、確率更新処理により分割された区間の幅が所定値以下に狭くなった時に区間の幅を所定値よりも広げる再正規化処理と、区間の幅と区間の下限値とを算出する区間算出処理とを行って符号化信号を出力する際に、或る入力時点の第1の入力2値信号に対する再正規化処理と並行して、第1の入力2値信号に対する区間算出処理と、その区間算出処理により算出した区間の幅及び区間の下限値と第1の入力2値信号に続いて入力される第2の入力2値信号に対するコンテキストインデックスと2値信号の値とを用いて処理する確率更新処理とを連続して行う算術符号化部とを有する構成としたことを特徴とする。
また、上記の目的を達成するため、本発明の動画像符号化プログラムは、符号化対象の動画像信号と参照画像信号との間の動き予測信号を生成し、動画像信号と動き予測信号との差分信号に対して、所定画素数の符号化単位で直交変換及び量子化をして得られた量子化後信号に対して、算術符号化回路によりエントロピー符号化を行って符号化信号を生成する処理を、コンピュータを用いて行う動画像符号化プログラムにおいて、コンピュータに、
量子化後信号を2値信号に変換する第1のステップと、量子化後信号であるシンボルに基づいて、出現確率が高いシンボルが示すシンボル値とシンボル出現確率の情報をインデックス化した、コンテキストインデックスを出力する第2のステップと、2値信号とコンテキストインデックスとを入力として受け、所定の数直線の区間を、コンテキストインデックスと2値信号の値に基づいて分割することを再帰的に繰り返す確率更新処理と、確率更新処理により分割された区間の幅が所定値以下に狭くなった時に区間の幅を所定値よりも広げる再正規化処理と、区間の幅と区間の下限値とを算出する区間算出処理とを行って符号化信号を出力する際に、或る入力時点の第1の入力2値信号に対する再正規化処理と並行して、第1の入力2値信号に対する区間算出処理と、その区間算出処理により算出した区間の幅及び区間の下限値と第1の入力2値信号に続いて入力される第2の入力2値信号に対するコンテキストインデックスと2値信号の値とを用いて処理する確率更新処理とを連続して行う第3のステップとを実行させて算術符号化を行うことを特徴とする。
本発明の動画像符号化装置及び動画像符号化プログラムでは、或る入力時点の第1の入力2値信号に対する再正規化処理と並行して、第1の入力2値信号に対する区間算出処理と、その区間算出処理により算出した区間の幅及び区間の下限値と第1の入力2値信号に続いて入力される第2の入力2値信号に対するコンテキストインデックスと2値信号の値とを用いて処理する確率更新処理とを連続して行うようにしたため、再正規化のときに確率更新の待ち時間がなくなるので、再正規化の処理が常に行われ、演算器を常に動作させることができる。
本発明によれば、区間算出処理を再正規化処理と並行して(並列に)行うことで、再正規化のときに確率更新の待ち時間がなくなるので、再正規化の処理が常に行われ、演算器を常に動作させることができるようにしたため、演算器の使用効率が上がるので、ソフトウェア的には、並列処理が可能であれば処理時間を短縮することが可能となり、また、ハードウェア的には、並列処理を組むことによって、処理時間を短縮することが可能となる。
次に、本発明の実施の形態について図面と共に説明する。図1は本発明になる動画像符号化装置の一実施の形態のブロック図を示す。この実施の形態は、算術符号化回路23の構成に特徴がある。図1において、符号化対象の動画像信号は減算器11において、必要に応じてスイッチ22を介して供給されるイントラ予測部21による画面内予測信号、あるいはME(動き推定)部19による動き推定・MC(動き補償)部20による画面間予測信号との差分が、所定の符号化単位(例えば、フレーム、マクロブロック、複数のマクロブロックをまとめたスライス、あるいはブロックなど)でとられた後、直交変換器12に供給されて、例えば離散コサイン変換(DCT:Discrete Cosine Transform)等の直交変換されて直交変換係数とされる。
なお、上記のマクロブロックは横16画素、縦16画素(以下、16×16と表記、他の画素数の場合も同様の表記とする)、16×8、8×16、8×8などの複数の種類(MBタイプ)が存在しており、このMBタイプに応じて、16×16、16×8、8×16、8×8の各領域(ブロック)に分割して取り扱うことができる。
上記の直交変換係数は量子化器13に供給されて量子化された後、逆量子化器14及び後述する算術符号化回路23にそれぞれ供給される。量子化器13から出力された量子化後信号は、逆量子化器14で逆量子化され、更に逆直交変換器15で逆直交変換されて復号差分画像データにされた後、加算器16でイントラ予測部21あるいはME部19・MC部20からの予測画像信号と加算されて復号画像データとされる。この復号画像データは、デブロックフィルタ17でブロック歪みを除去するための所定のフィルタ処理が施された後メモリ18に格納される。
イントラ予測部21は符号化対象の動画像信号に基づいて、またME部19、MC部20は符号化対象の動画像信号とメモリ18からの復号画像データとに基づいて、公知の予測方法によりそれぞれ予測が行われる。
算術符号化回路23は、本実施の形態特有の構成により、量子化器13からの量子化後信号などの文脈エレメント(SE;Syntax Element)に基づいて、エントロピー符号化の一種である算術符号化処理を行い、処理結果の符号化信号が出力される。
次に、本実施の形態の要部である算術符号化回路23について更に詳細に説明する。図2は算術符号化回路23の一実施の形態のブロック図を示す。同図に示すように、算術符号化回路23は、コンテキスト生成部231、2値化部232及び算術符号化部233から構成され、CABACによる算術符号化を行って得た符号化データをバイトスタッフィング部31に供給する。本実施の形態は、算術符号化部233の構成に特徴がある。
CABACによる算術符号化は、以下の手順によりなされる。まず、符号化しようとする信号である文脈エレメントSE(Syntax Element)30がコンテキスト生成部231及び2値化部232にそれぞれ入力される。コンテキスト生成部231においては、入力された信号SEに関するMPSのシンボル値とシンボル出現確率の情報をインデックス化し、コンテキストインデックスctxldxを出力する。また、2値化部232においては、入力された信号SEを2値化してバイナリ列binとし、そのバイナリ列binを1ビットずつbinValとして出力する。
そして、上記のctxldx及びbinValが算術符号化部233にそれぞれ入力され、算術符号化がなされ(詳細は後述)、得られた符号化結果はバイトスタッフィング部31に出力される。最後にバイトスタッフィング部31にて、必要に応じて非特許文献1の規格を満たすフォーマットに合わされ、符号化信号であるバイトストリームBS(Byte Stream)32として出力される。
次に、算術符号化部233の動作について詳述する。まず、CABACにおける算術符号化の区間分割に用いる変数について、図3を用いて説明する。CABACによる符号化では、MPS及びLPSに対して、確率区間の下限値codILow及びその区間coldRangeが図3(A)、(B)に示すように定められている。ここで、確率区間の下限値codILowは10ビット、区間codIRangeは9ビットである。また、valMPSは、MPSがシンボルS∋{0,1}のいずれかを示すもので、コンテキストインデックスctxldxにより与えられる。図3(A)はvalMPSがbinValと等しい場合の各変数を示し、同図(B)はvalMPSがbinValと等しくない場合(すなわち、binVal!=valMPS)の各変数を示す。
CABACには、エンコード・デシジョン(EncodeDecision),エンコード・バイパス(EncodeBypass),エンコード・ターミネイト(EncodeTerminate)の3種類の方法があり、SEの種類に応じて決められている。このうちSEが係数の正負を示すcoeff_sign_flagの時などに使用する算術符号化エンコード・バイパス(EncodeBypass)、及びSEがスライスの終端を示すend_of_slice_flagの時に使用する算術符号化エンコード・ターミネイト(EncodeTerminate)の2つは、特殊な場合の算術符号化である。
特殊な場合でない時に使用する算術符号化エンコード・デシジョン(EncodeDecision)については、図4のフローチャートに従ってなされる。このフローチャートは、コンテキスト生成部231からのctxldx及び2値化部232からのbinValが入力されるたびに繰り返される。また、図4のフローチャートで示される非特許文献1に記載の算術符号化エンコード・デシジョン(EncodeDecision)は、確率更新部S10による処理と、再正規化部S20(RenormE)による処理とからなる。再正規化部S20(RenormE)は、図5のフローチャートにより実行される再正規化処理を表す。さらに、図5のステップS23、S28に示す「PutBit」は非特許文献1に記載の公知の符号出力処理を表す。
非特許文献1に記載の算術符号化エンコード・デシジョン(EncodeDecision)の確率更新部S10による処理では、まず、codIrangeの値を右へ6ビットシフトし、その下位2ビットをとった値をqCodIRangedxとし、規定されたテーブル値rangeTabLPSを用いてLPSの確率幅codIRangeLPSを求めると共に、codIRangeをMPSの確率幅に変更する(図4のステップS11)。
続いて、入力シンボルbinValとvalMPSとが不一致であるかどうか判定し(図4のステップS12)、binValとvalMPSとが等しい(一致する)場合は、入力シンボルbinがMPSのときであり、規格で規定しているテーブル値transIdxMPSによって状態を遷移させ、pStateIdxを更新する(図4のステップS17)。pStateIdxはMPSの発生確率を持つテーブルのテーブル番号であり、その値が大きいほど、MPSの高い発生確率に対応するようにされている。
一方、binValとvalMPSとが不一致の場合は、入力シンボルbinがLPSのときであり、codILowとcodIRangeとを加算した値をcodILowに代入し、codIRangeLPSをcodIRangeに代入する(図4のステップS13)。ステップS13に続いて、pStateIdxが0でないかどうか判定され(図4のステップS14)、pStateIdxが0である場合は(1−valMPS)の値をvalMPSに代入する(図4のステップS15)。ステップS15の処理後、又はステップS14でpStateIdxが0でないと判定した場合は、pStateIdxの値を更新する(図4のステップS16)。ステップS16又はS17の処理後に、再正規化部(RenormE)による再正規化処理が実行される(図4のステップS20)。
ステップS20の再正規化処理では、図5のフローチャートに示すように、まず区間codIRangeが予め設定された第1の所定値(0x100)よりも小さいかどうか判定し(図5のステップS21)、所定値よりも小さいときは確率区間の下限値codILowが第1の所定値(0x100)より小さいかどうか判定し(図5のステップS22)、所定値以上であるときは確率区間の下限値codILowが第2の所定値(0x200)以上であるかどうか判定する(図5のステップS24)。
codILowが第2の所定値未満であるときはcodILowをcodILowから第1の所定値を減算した値に更新した後(図5のステップS25)、キャリーオーバー対策の変数であるbitOutstandingの値を1加算して更新する(図5のステップS26)。一方、codILowが第2の所定値以上であるときはcodILowをcodILowから第2の所定値を減算した値に更新した後(図5のステップS27)、PutBit(1)の処理を行う(図5のステップS28)。また、ステップS22で確率区間の下限値codILowが第1の所定値未満であると判定されたときはPutBit(0)の処理を行う(図5のステップS23)。前述したように、上記の「PutBit(0)」、「PutBit(1)」は非特許文献1に記載の公知の符号出力処理を表し、その詳細の説明は本発明と直接の関係が無く、また公知であるので省略する。キャリーオーバー対策も同様である。
ステップS23、S26、又はS28の処理に続いて、区間codIRangeを1ビット左へシフトして2倍とした値に更新すると共に、確率区間の下限値codILowも1ビット左へシフトして2倍とした値に更新する(図5のステップS29)。その後、ステップS21の処理に戻る。
次に、非特許文献1に記載の算術符号化エンコード・デシジョン(EncodeDecision)における処理の流れと本実施の形態の処理の流れとの差異について説明する。いま、図4の点線で囲まれた確率更新部S10による処理を確率更新P、図5に示す再正規化処理を再正規化Rとする。さらに、前述の各記号P,Rに添字をつけることで、符号化処理の順を表すものとする。加えて、符号化処理の時間tの経過をt0,t1,t2,・・・とし、2値化部232から入力されるbinValを符号化順にb0,b1,b2,・・・として表すものとする。
これらの記号を用いて、非特許文献1に記載の従来の算術符号化の流れを表すと、確率更新Pの処理の流れは図6(A)に、再正規化の処理の流れは同図(B)のようになる。まず、時間t0において、b0に対して確率更新P0がなされる。次に、時間t1において、確率更新P0の結果を受けて、b0の再正規化R0を行う。そして、時間t2において、再正規化R0によって計算されたcodIRange及びcodILowの値を受けて、b1に対する確率更新P1の処理がなされる。以下、同様の動作が繰り返される。
これに対し、本実施の形態の算術符号化は、区間算出処理を再正規化処理と並列に行うことによってなされる。説明のため、上記と同様に、図4の点線で囲まれた処理S10を確率更新Pとする。また、図5の処理を再正規化R、同図中のステップS29の処理を区間算出処理Eとする。さらに、前述の各記号P,R,Eに添字をつけることで、符号化処理の順を表すものとする。加えて、符号化処理の時間tの経過をt0,t1,t2,・・・とし、binValを符号化順にb0,b1,b2,・・・として表すものとする。
これらの記号を用いて、本実施の形態の算術符号化の流れを表すと、確率更新Pと区間算出Eの処理の流れは図7(A)に示され、再正規化の処理の流れは同図(B)に示される。この図7を用いて具体的に説明する。まず、時間t0において、最初のbinValのb0に対して、最初の確率更新P0がなされる。次に、時間t1において、上記P0の結果を受けて上記b0の再正規化R0を行う。同時に、時間t1において、上記b0に対する区間算出E0、及びb1に対する確率更新P1の各処理を連続して行う。
同様に、時間t2では、上記P1の結果を受けて2番目のbinValのb1に対して再正規化R1を行う。同時に、時間t2において、上記b1に対する区間算出E1、及びb2に対する確率更新P2の各処理を連続して行う。以下、同様の動作が繰り返される。
非特許文献1に記載のRenormE(図5)によると、区間算出処理は再正規化処理に包含されているので、区間算出処理のみを行うことはできない。しかし、本実施の形態では、図7に示したように区間算出処理のみを独立に行うことができる。この区間算出処理のみを独立に行うことができる理由について、以下、詳細に説明する。
本実施の形態において、b0に対する再正規化R0の処理と並行して、b0に対する区間算出E0の処理を独立に行う方法を述べる。ここで、ビット列の最も上位のビットをMSB(Most Significant Bit)、ビット列の最も下位のビットをLSB(Least Significant Bit)という。区間算出E0の処理は、図5のフローチャートにより、確率区間codIRangeが下記に示すステップS21の条件を満たす間は繰り返し処理がなされる。
codIRange<0x100
上記の条件を満たさなくなり、区間算出の処理が終了した後のcodIRangeの値は、次のようにして求めることができる。すなわち、9ビットである確率区間codIRangeのMSBに最も近い“1”を特定し、その位置がLSBから数えてposビット目である(ただしLSBを0ビット目)とすると、そのcodIRangeを(9−pos−1)ビットだけ左へシフトすることで区間算出の処理が終了した後のcodIRangeの値を求めることができる。これを数式で表すと
codIRange=codIRange<<(9−pos−1) (1)
となる。
あるいは、以下のようにして求めることができる。いま、確率区間codIRangeを、
Figure 2008131526
とする。ここで、Riは、codIRangeのi番目のビットであり、MSBはi=8、LSBはi=0の場合である。これに対し、
Figure 2008131526
を定義すると、
codIRange=codIRange・M (2)
である。なお、数2に示すように、Mはビット列rと、ビット列rを反転したものに1を加算した値とのANDをとった値を示す。
また、区間算出の処理が終了した後の確率区間の下限値codILowの値は、区間codIRangeとほぼ同様にして求めることができる。その方法を以下に述べる。図5において、codILowの値を求めるパターンは3種類ある。
(1)codILow<0x100の場合、codILowは変化しない(図5のステップS22、S23、S29)。
(2)(1)でなく、かつ、codILow<0x200である場合、
codILow=codILow−0x100
として求める(図5のステップS22、S24、S25)。しかし、このときのcodILowは、
0x100≦codILow<0x200
であるから、ステップS25でcodILowの下位8ビットの値を求めているに過ぎない。
(3)(1)でも(2)でもない場合、
codILow=codILow−0x200
として求める(図5のステップS22、S24、S27)。しかし、このときのcodILowは、
codILow≧0x200
であるから、ステップS27でcodlLowの下位9ビットの値を求めているに過ぎない。
従って、上記(1)〜(3)のいずれのパターンにおいても、上述した確率の区間codIRangeと同じ式を計算し、ビットマスクして或る特定のビットを取り出すようにすればよい。ここで、確率区間の下限値codILowのM以上のビットが全て“1”でない限り、区間算出の処理が終了した後の値がcodILow≧0x200とはならないことを考えれば、0x1FFによりビットマスクすればよいことが分かる。すなわち、次式が成立する。
Figure 2008131526
この数3に示す(3)式の確率区間の下限値codILowは、図5のフローチャートによる再正規化処理の最終結果を示す。なお、0x1FFによりビットマスクせずに、確率区間の下限値codILowから0x200を引く、つまり
Figure 2008131526
としてもよい。
これにより、b0に対する区間算出E0の処理が終了した後の区間codIRange及び確率区間の下限値codILowの値は、b0に対する再正規化R0の処理が終了する前に求めることができる。
よって、本実施の形態によれば、b0に対する図5のフローチャートによる再正規化R0の処理と並行して、b0に対する(1)式又は(2)式による確率の区間codIRangeの算出と、b0に対する数3で示す(3)式による確率区間の下限値codILowの算出を行う区間算出E0の処理と、それに続いてE0の処理により求めたcodIRange及びcodILowの値と、b0の次の信号b1に対するbinVal及びctxldxとを用いた図4中のS10による確率更新P1の処理とを行うことができる。
ゆえに、本実施の形態によれば、再正規化処理の前に確率更新の待ち時間がないので、再正規化の処理が常に行われ、演算器を常に動作させることができる。以上が、図7の時間t1における動作である。時間t2以降、同様のタイミングで順次処理を行う。
このようにして、本実施の形態によれば、MPSとLPSのうち符号化シンボルである方のみを処理し、符号化結果が確定する前に確率状態の更新値を求めることができる。また、区間算出処理を再正規化処理と並行して(並列に)行うことで、再正規化処理の前に確率更新の待ち時間がなくなるので、再正規化の処理が常に行われ、演算器を常に動作させることができる。
その結果、演算器の使用効率が上がるので、ソフトウェア的には、並列処理が可能であれば処理時間を短縮することが可能となる。また、ハードウェア的には、並列処理を組むことによって、処理時間を短縮することが可能となる。
上記の実施形態における図5の再正規化処理について、ステップS21における条件判定(再正規化処理のループ回数の制御)にcodIRangeの値を用いたが、数2で示した式中のMの値を用いてもよい。また、上記の実施の形態において示したビットマスクの方法により、再正規化処理のcodILowを計算してもよい。換言すると、図5のステップS22からステップS29の直前までのいずれのループを通っても、ステップS29において
Figure 2008131526
として計算してもよい。
なお、上述のエンコード・デシジョン(EncodeDecision)により算術符号化されたデータを復号化するには、図8及び図9のフローチャートに従って処理を行う。ただし、図4〜図9のフローチャートのうち、算術復号化は非特許文献1の規格の範囲であるが、算術符号化はあくまで参考のための説明(informative)であり、規格の範囲ではない。
復号化部では、図8のフローチャートに示すデコード・デシジョン(DecodeDecision)テーブルを引いて復号化対象のシンボルのMPSの区間幅を求め(図8のステップS31)、確率区間の下限値が確率の区間以上であるかどうか判定し(図8のステップS32)、区間以上であれば、LPSシンボルをデコード結果として出力し(図8のステップS33)、LPSのオフセット値をMPSの区間幅を使って求める(図8のステップS34)。
そして、MPSとLPSのシンボルが逆になるかどうか判定し(図8のステップS35)、逆にならない場合は次のシンボルを復号化する際のLPSの区間幅を変える(図8のステップS37)。ステップS35で逆になると判定した場合は、そのシンボルを逆にし(図8のステップS36)、ステップS37に進む。一方、ステップS32で確率区間の下限値が確率の区間未満であると判定したときは、MPSシンボルをデコード結果として出力し(図8のステップS38)、次のシンボルを復号化する際のMPSの区間幅を変える(図8のステップS39)。
上記のステップS37又はS39の処理終了後、RenomeDの処理が行われる(図8のステップS40)。このRenomeDの処理は図9のフローチャートに従って行われる。すなわち、まず、区間幅(codIRange)が所定値より小さいかどうか判定し(図9のステップS41)、小さいときには区間幅を2倍にし、また1ビットを読み込む(図9のステップS42)。大きい時には処理を終了する。
なお、本発明は以上の実施の形態の処理をコンピュータにより実行させる算術符号化プログラムも含むものである。この場合、算術符号化プログラムは記録媒体に記録されてコンピュータに取り込まれてもよいし、ネットワークを介して配信してコンピュータにダウンロードしてもよい。
本発明の動画像符号化装置の一実施の形態のブロック図である。 図1の要部である算術符号化回路の一実施の形態のブロック図である。 CABACにおける算術符号化の区間分割に用いる変数を説明する図である。 CABACにおける算術符号化EncodeDecisionの処理の流れを示すフローチャートである。 図4の中にある再正規化RenormEの処理の流れを示すフローチャートである。 非特許文献1に記載のEncodeDecisionによる算術符号化の処理を行った場合のタイムチャートである。 本発明の一実施の形態によりEncodeDecisionの算術符号化の処理を行った場合のタイムチャートである。 EncodeDecisionによって符号化された場合の復号化処理である、算術復号化DecodeDecisionの処理の流れを示すフローチャートである。 図8の中にある再正規化RenormDの処理の流れを示すフローチャートである。 算術符号化の基本原理を説明するための図である。
符号の説明
12 直交変換器
13 量子化器
19 ME部
20 MC部
21 イントラ予測部
22 算術符号化回路
30 SE
231 コンテキスト生成部
232 2値化部
233 算術符号化部
31 バイトスタッフィング部
S10 確率更新処理
S20 再正規化処理
P0、P1、P2 確率更新
R0、R1 再正規化
E0、E1 区間算出

Claims (2)

  1. 符号化対象の動画像信号と参照画像信号との間の動き予測信号を生成し、前記動画像信号と前記動き予測信号との差分信号に対して、所定画素数の符号化単位で直交変換及び量子化をして得られた量子化後信号に対して、算術符号化回路によりエントロピー符号化を行って符号化信号を生成する動画像符号化装置において、
    前記算術符号化回路を、
    前記量子化後信号を2値信号に変換する2値化部と、
    前記量子化後信号であるシンボルに基づいて、出現確率が高いシンボルが示すシンボル値とシンボル出現確率の情報をインデックス化した、コンテキストインデックスを出力するコンテキスト生成部と、
    前記2値信号と前記コンテキストインデックスとを入力として受け、所定の数直線の区間を、前記コンテキストインデックスと前記2値信号の値に基づいて分割することを再帰的に繰り返す確率更新処理と、前記確率更新処理により分割された前記区間の幅が所定値以下に狭くなった時に前記区間の幅を前記所定値よりも広げる再正規化処理と、前記区間の幅と前記区間の下限値とを算出する区間算出処理とを行って前記符号化信号を出力する際に、或る入力時点の第1の入力2値信号に対する前記再正規化処理と並行して、前記第1の入力2値信号に対する前記区間算出処理と、その区間算出処理により算出した前記区間の幅及び前記区間の下限値と前記第1の入力2値信号に続いて入力される第2の入力2値信号に対する前記コンテキストインデックスと該2値信号の値とを用いて処理する前記確率更新処理とを連続して行う算術符号化部と
    を有する構成としたことを特徴とする動画像符号化装置。
  2. 符号化対象の動画像信号と参照画像信号との間の動き予測信号を生成し、前記動画像信号と前記動き予測信号との差分信号に対して、所定画素数の符号化単位で直交変換及び量子化をして得られた量子化後信号に対して、算術符号化回路によりエントロピー符号化を行って符号化信号を生成する処理を、コンピュータを用いて行う動画像符号化プログラムにおいて、
    前記コンピュータに、
    前記量子化後信号を2値信号に変換する第1のステップと、
    前記量子化後信号であるシンボルに基づいて、出現確率が高いシンボルが示すシンボル値とシンボル出現確率の情報をインデックス化した、コンテキストインデックスを出力する第2のステップと、
    前記2値信号と前記コンテキストインデックスとを入力として受け、所定の数直線の区間を、前記コンテキストインデックスと前記2値信号の値に基づいて分割することを再帰的に繰り返す確率更新処理と、前記確率更新処理により分割された前記区間の幅が所定値以下に狭くなった時に前記区間の幅を前記所定値よりも広げる再正規化処理と、前記区間の幅と前記区間の下限値とを算出する区間算出処理とを行って前記符号化信号を出力する際に、或る入力時点の第1の入力2値信号に対する前記再正規化処理と並行して、前記第1の入力2値信号に対する前記区間算出処理と、その区間算出処理により算出した前記区間の幅及び前記区間の下限値と前記第1の入力2値信号に続いて入力される第2の入力2値信号に対する前記コンテキストインデックスと該2値信号の値とを用いて処理する前記確率更新処理とを連続して行う第3のステップと
    を実行させて前記算術符号化を行うことを特徴とする動画像符号化プログラム。
JP2006316521A 2006-11-24 2006-11-24 動画像符号化装置及び動画像符号化プログラム Pending JP2008131526A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006316521A JP2008131526A (ja) 2006-11-24 2006-11-24 動画像符号化装置及び動画像符号化プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006316521A JP2008131526A (ja) 2006-11-24 2006-11-24 動画像符号化装置及び動画像符号化プログラム

Publications (1)

Publication Number Publication Date
JP2008131526A true JP2008131526A (ja) 2008-06-05

Family

ID=39556905

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006316521A Pending JP2008131526A (ja) 2006-11-24 2006-11-24 動画像符号化装置及び動画像符号化プログラム

Country Status (1)

Country Link
JP (1) JP2008131526A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106537914A (zh) * 2014-06-29 2017-03-22 Lg 电子株式会社 通过限制的进位运算来执行算术编译的方法和设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106537914A (zh) * 2014-06-29 2017-03-22 Lg 电子株式会社 通过限制的进位运算来执行算术编译的方法和设备
CN106537914B (zh) * 2014-06-29 2019-10-11 Lg 电子株式会社 通过限制的进位运算来执行算术编译的方法和设备

Similar Documents

Publication Publication Date Title
RU2637879C2 (ru) Кодирование и декодирование значащих коэффициентов в зависимости от параметра указанных значащих коэффициентов
US8018996B2 (en) Arithmetic decoding apparatus and method
JP4717780B2 (ja) 符号化装置及びその制御方法
US20140286417A1 (en) Data encoding and decoding
JP2010251946A (ja) 画像符号化装置、方法およびプログラム、並びに、画像復号装置、方法およびプログラム
JP2006054877A (ja) 適応算術復号化方法及び適応算術復号化装置
US7528749B2 (en) Decoding apparatus and decoding method
JP2007116436A (ja) 符号化装置及び復号化装置
JPWO2008065814A1 (ja) 符号化装置
US8254700B1 (en) Optimized method and system for entropy coding
JP2017507519A (ja) データ符号化及び復号化
US10554988B2 (en) Binary arithmetic coding with parameterized probability estimation finite state machines
JP6681383B2 (ja) エンコーダ、デコーダ、および方法
Lee et al. An effective algorithm and architecture for the high-throughput lossless compression of high-resolution images
JP2010178319A (ja) 画像符号化装置及び画像符号化方法
JP2009021775A (ja) 符号化装置及び符号化方法
JP2008011431A (ja) 画像符号化装置
JP2012089917A (ja) 符号化装置および方法、並びにプログラム
CN110035288B (zh) 对视频序列进行编码的方法、编码装置和存储介质
GB2496210A (en) Context adaptive (CABAC) data encoding and decoding
JP2008118303A (ja) 復号装置及び復号方法
JP2007074337A (ja) 符号化装置及び符号化方法
JP2008311803A (ja) 算術復号方法、算術復号装置及び算術復号プログラム
JP2008131526A (ja) 動画像符号化装置及び動画像符号化プログラム
JP2002064821A (ja) 動画像情報の圧縮方法およびそのシステム