JP5201035B2 - Image encoding device - Google Patents
Image encoding device Download PDFInfo
- Publication number
- JP5201035B2 JP5201035B2 JP2009064721A JP2009064721A JP5201035B2 JP 5201035 B2 JP5201035 B2 JP 5201035B2 JP 2009064721 A JP2009064721 A JP 2009064721A JP 2009064721 A JP2009064721 A JP 2009064721A JP 5201035 B2 JP5201035 B2 JP 5201035B2
- Authority
- JP
- Japan
- Prior art keywords
- code
- code amount
- subband
- image
- discarded
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Description
本発明は、ウエーブレット変換とエントロピー符号化により画像データを圧縮する画像符号化装置に関する。 The present invention relates to an image coding apparatus that compresses image data by wavelet transform and entropy coding.
JPEG2000は、画像データをウエーブレット変換して量子化し、量子化後のデータをビットプレーン単位でモデリング化した後、算術符号化の一種であるMQ符号化を行う画像符号化方式である。従来のJPEGの方式に比べて符号化効率がよく、またウエーブレット変換を採用しているためブロックノイズが発生しにくいという特徴がある。 JPEG2000 is an image coding method in which image data is wavelet transformed and quantized, and the quantized data is modeled in bit plane units, and then MQ coding, which is a kind of arithmetic coding, is performed. Compared with the conventional JPEG method, the coding efficiency is good, and since wavelet conversion is adopted, block noise is hardly generated.
さらに、MQ符号化後、ビットプレーン(正確には、パスと呼ばれるサブビットプレーン)単位で符号を破棄するポスト量子化後に最終のコードストリームを生成できるため、符号量制御が比較的簡単に実現できるという利点もある。一般的に、符号量制御方法としては、指定された符号量内で最も良い画質となる画像、すなわち、入力画像との誤差が最も少ない画像が復号されるような符号が得られるように、レート・歪最適化の手法が採用されることが多い。 Furthermore, after MQ coding, a final code stream can be generated after post-quantization in which codes are discarded in units of bit planes (more precisely, sub-bit planes called paths), so that code amount control can be realized relatively easily. There is also an advantage. In general, the code amount control method is such that a rate is obtained so that an image with the best image quality within a specified code amount, that is, a code that decodes an image with the least error from the input image can be obtained.・ Strain optimization techniques are often adopted.
しかし、厳密にレート・歪の制御を実施すると、処理時間が長くなり、また、必要となるメモリ量も多い。これらの問題解決のために、特許文献1(特許第4064279号)において、サブバンド毎に破棄するビットプレーンを記述したテーブルを複数用意して、MQ符号化後の符号量に基づいて最適なテーブルを選択する方式が提案されている。 However, strictly controlling the rate and distortion increases the processing time and requires a large amount of memory. In order to solve these problems, in Patent Document 1 (Japanese Patent No. 4064279), a plurality of tables describing bit planes to be discarded for each subband are prepared, and the optimum table is based on the code amount after MQ coding. A method of selecting is proposed.
図17には、従来技術の、サブバンド毎に破棄するビットプレーンを記述したテーブルを複数用意して、MQ符号化後の符号量に基づいて最適なテーブルを選択する符号量制御手段を備えた画像符号化装置の構成例が示されている。この構成例では、ウエーブレット係数データ、MQ符号データなどの異なる種類のデータを同一のメモリ2に一時的に格納する。この場合、複数の機能ブロック間のメモリ2へのアクセスを調停するための調停回路がメモリ前段に設けられる。また、当然ウエーブレット係数データ、MQ符号データなどデータごとに別のメモリを用意することも可能である。
FIG. 17 includes a code amount control unit that prepares a plurality of tables describing bit planes to be discarded for each subband and selects an optimum table based on the code amount after MQ coding. A configuration example of an image encoding device is shown. In this configuration example, different types of data such as wavelet coefficient data and MQ code data are temporarily stored in the
入力された画像データは、2次元ウエーブレット変換によりサブバンド毎のウエーブレット係数データへと変換され、メモリ2に格納される。画像データがカラー画像のものである場合、ウエーブレット変換は輝度(Y)データ、色差(Cb、Cr)データに対して独立に施され、結果は、図18(1)に示すように、各色成分(以下、コンポーネントという。)におけるサブバンド毎にメモリ2に格納される。
The input image data is converted into wavelet coefficient data for each subband by two-dimensional wavelet conversion, and stored in the
各サブバンドの係数データはさらにコードブロックと呼ばれる矩形領域に分割され、このコードブロック単位で量子化された後、ビットプレーン分割されMQ符号化される。 The coefficient data of each subband is further divided into rectangular areas called code blocks, quantized in units of this code block, and then divided into bit planes and subjected to MQ coding.
図18(2)では、画像データを2次元ウエーブレット変換により5段階のフィルタリング(分割レベル5)でサブバンド毎の係数データに変換し、さらに各サブバンドを32×32の大きさのコードブロックに分割した例を示す。5LL〜3HHのようにサブバンド大きさが32×32より小さい場合、それらのサブバンドは分割されず一つのコードブロックとして処理される。 In FIG. 18 (2), image data is converted into coefficient data for each subband by two-stage wavelet transform (division level 5) by two-dimensional wavelet transform, and each subband is a code block having a size of 32 × 32. An example of division is shown below. When the subband size is smaller than 32 × 32 such as 5LL to 3HH, these subbands are not divided and processed as one code block.
図18(3)は、ビットプレーン分割の概念を示す図である。コードブロックに含まれる係数データは絶対値として表され、同じビット位置にある32×32個のビットをビットプレーンとし、そのビットプレーンには非0のデータがあるがそれより上位側は全てのビットが0であるようなビットプレーンから最下位のビットプレーンまで、順次MQ符号化される。図18(3)の例は、最上位からビットプレーン番号がBp+1のビットプレーンまでのデータが全て0であり(これらはゼロビットプレーンと呼ばれる)、ビットプレーン番号Bpのビットプレーンに初めて非0のデータがある場合である。この時、ビットプレーンBpからビットプレーン1までのデータがMQ符号化される。
FIG. 18 (3) is a diagram illustrating the concept of bit plane division. The coefficient data included in the code block is expressed as an absolute value, and 32 × 32 bits at the same bit position are used as a bit plane, and there is non-zero data in the bit plane, but all bits are higher than that. MQ coding is sequentially performed from the bit plane in which is 0 to the lowest bit plane. In the example of FIG. 18 (3), all data from the most significant bit to the bit plane with the bit plane number Bp + 1 is 0 (these are called zero bit planes), and the bit plane with the bit plane number Bp is the first non-zero. This is when there is data. At this time, the data from the bit plane Bp to the
さらに、一つのビットプレーンのビットデータは、復号時に画質に与える影響によって3つのパスと呼ばれるサブビットプレーンに分けられ、影響が大きいと思われるパスに属するデータから優先して符号化が行われる。この様子を図18(4)に示す。各ビットプレーンで、最初に符号化されるビットが「significance propagation」と呼ばれるパスに属するビット、2番目に符号化されるのが、「magnitude refinement」と呼ばれるパスに属するビット、最後に符号化されるビットは、上記のいずれにも属さない「cleanup」と呼ばれるパスに属するビットである。符号化される最上位のビットプレーン(図18(4)のビットプレーンBp)に含まれるビットは全てcleanupパスに含まれるため、一つのコードブロックにおいて符号化の対象となるパスの数は、
3×(Bp−1)+1=3×Bp−2
となる。
Further, the bit data of one bit plane is divided into sub-bit planes called three paths depending on the influence on the image quality at the time of decoding, and encoding is performed with priority over data belonging to a path that seems to have a large influence. This situation is shown in FIG. In each bit plane, the first encoded bit is a bit belonging to a path called “significance propagation”, the second encoded is a bit belonging to a path called “magnitude refinement”, and the last encoded bit These bits belong to a path called “cleanup” that does not belong to any of the above. Since all bits included in the most significant bit plane to be encoded (bit plane Bp in FIG. 18 (4)) are included in the cleanup path, the number of paths to be encoded in one code block is
3 × (Bp−1) + 1 = 3 × Bp−2
It becomes.
MQ符号化の結果であるMQ符号は、図19に示すように、各コンポーネント、各サブバンドに含まれるコードブロック毎に、メモリ2に格納される。同時に、符号化に必要な情報として、そのコードブロックのゼロビットプレーン数(#ZBP)、符号化されたパス数(#CP)、パス毎のMQ符号の符号量(len)もメモリ上に格納される。
As shown in FIG. 19, the MQ code that is the result of the MQ coding is stored in the
MQ符号化と同時に、符号量制御用に全体符号量(Q)とパス毎の符号削減量(Σlen)のデータが生成される。全体符号量は、全てのコードブロックの符号化が完了した時点でのMQ符号の符号量であり、パス毎の符号削減量は、各コンポーネントの各サブバンドに含まれる全てのコードブロックに関して、同じパス番号のパスに関して符号量(len)を合計したものである。 Simultaneously with the MQ coding, data of the total code amount (Q) and the code reduction amount (Σlen) for each pass is generated for code amount control. The total code amount is the code amount of the MQ code at the time when encoding of all code blocks is completed, and the code reduction amount for each pass is the same for all code blocks included in each subband of each component. This is the sum of the code amount (len) for the pass of the pass number.
図20(1)は、符号化制御/ビットプレーン分割部24、MQ符号化部26、符号量算出部16のより詳細なブロック図を示す。符号化制御/ビットプレーン分割部24部は、ウエーブレット終了後、各コンポーネント、各サブバンドのコードブロック毎に量子化後の係数を読み込み、ビットプレーン分割してビットプレーンデータをMQ符号化部26に入力し、同時に符号量算出部16での符号量算出動作を制御する。図20(2)は、符号化制御/ビットプレーン分割部24の制御フローを示す。ここで、Cはコンポーネント番号(Y、Cb、Cr)を、SBはサブバンド番号(実際のサブバンド名と番号との対応は、図20(3)に示すものである)を、CBはコードブロック番号を示す。サブバンドに含まれるコードブロック数の最大値は、画像サイズとウエーブレットの分割レベルが決まれば、コンポーネント(C)、サブバンド(SB)毎に決定される。このことを、
Cblast(C、SB)
と表す。図20(2)のフローでは、スタート後、Y5LL→Y5HL→Y5LH→…→Cr1HHの順に、それぞれのサブバンドで、コードブロックデータの読み込みとコードブロック単位でのMQ符号化を行う。コードブロックデータの読み込みでは、処理するコードブロックに含まれるウエーブレット係数データをメモリ2から読み込み、量子化後ビットレーン分割用メモリに書き込むと同時に、そのコードブロックに含まれる量子化後の係数データで最大のビットプレーン数、すなわち、そのコードブロックで符号化するビットプレーン数(Bp)を求める。図21に、符号化ビットプレーン数算出回路32を示す。量子化後の係数データ(Q)のビットが、qn〜q1に接続されF/F34に入力される。F/F34の出力と次の係数データとのビット毎のORをF/F34に入力することで全てのコードブロックを通して“1”となるビットがF/F34に記憶され、それをプライオリティエンコーダーでエンコードすることで、最も上位側で“1”となっているビットを求めることができる。
FIG. 20 (1) shows a more detailed block diagram of the encoding control /
Cblast (C, SB)
It expresses. In the flow of FIG. 20 (2), after starting, code block data is read and MQ coding is performed in units of code blocks in each subband in the order of Y5LL → Y5HL → Y5LH →... → Cr1HH. In reading the code block data, the wavelet coefficient data included in the code block to be processed is read from the
図22は、コードブロック単位でのMQ符号化の処理フローを示す。スタート後、符号化ビットプレーン数(Bp)より符号化パス数(CP)を算出する(S2202)。符号化するビットプレーンがあれば(S2204)、そのビットプレーンをビットレーン分割用メモリから読み出し、MQ符号化部26ではcleanupパスとしてビットモデリング、MQ符号化を行う(S2206)。このパスの符号化が終った時点で、パスの符号化を終了したことを示すpendを“1”にする(S2208)。この信号は、符号量算出部16にてパス毎の符号量を算出する際に利用される。符号化したパスが最後の符号化パスであれば処理を終了し(S2210)、それ以外の場合は次のビットプレーンの符号化を行う。最上位以外のビットプレーンは、「significance propagation」、「magnitude refinement」、「cleanup」の3つのパスでMQ符号化されるので、符号化制御部24のフローは、ビットレーン分割用メモリからのビットプレーンの読み出し、MQ符号化を3回実施する。MQ符号化部26はそれぞれのパスに対してビットモデリング、MQ符号化を行う。さらに、一つのパスでの符号化が終了するたびに、pendを“1”にする(S2216、S2222)。cleanupパスでの符号化が終了すると、全てのパスの符号化が終了したかを確認し(S2210)、まだ、終了していない場合は,次のビットプレーンの符号化を実施する。
FIG. 22 shows a processing flow of MQ coding in units of code blocks. After the start, the number of coded passes (CP) is calculated from the number of coded bit planes (Bp) (S2202). If there is a bit plane to be encoded (S2204), the bit plane is read from the bit lane dividing memory, and the
図23(1)は、符号量算出部16の内部回路を示す。valid信号はMQ符号化部26で生成され、MQ符号データが有効となるタイミングでアサートされる。符号量算出部16では、このvalid信号をカウントすることで全体符号量(Q)とパス毎の符号削減量(Σlen)を算出する。全体符号量(Q)は画像全体にわたってvalidのアサート回数をカウントすることで算出される。パス毎の符号削減量(Σlen)は、コードブロックの符号化でアサートされるvalid信号をカウントし、一つのパスの符号化が終了する(pendが“1”となる)時点で、メモリの該当するコンポーネント、サブバンド、パスをアドレスとする領域に格納するが、この時、それまでに符号化された同じアドレスに格納されている符号削減量をメモリから読み出し、それと前記のカウント値を加算した値を書き込む。これにより、符号削減量のデータは、図23(2)に示すように、コンポーネント毎、サブバンド毎、パス毎にメモリに格納される。
FIG. 23 (1) shows an internal circuit of the code
MQ符号化が終了すると、符号量制御を行った後、最終のコードストリームが生成される。JPEG2000では、MQ符号化後の符号データを全て使うのではなく、所定の符号量に合わせ込むためパス単位で符号を破棄するポスト量子化を行った後、残ったパスの符号で最終のコードストリームを生成する。ここでは、トランケーションテーブルを用いた符号量制御の方法について説明する。 When MQ encoding is completed, the final code stream is generated after code amount control is performed. JPEG2000 does not use all the encoded data after MQ encoding, but performs post-quantization that discards the code in units of paths in order to match a predetermined code amount, and then uses the remaining path codes to generate the final code stream. Is generated. Here, a method of code amount control using a truncation table will be described.
図24は、トランケーションテーブルの例を示す。トランケーションテーブルとは、MQ符号化後の符号を使って最終のコードストリームを生成する際に破棄するパスの数をサブバンド毎に記述したテーブルである。図24での数字は、該当するサブバンドに属するコードブロックの下位から何パス分の符号を破棄して最終のコードストリームを生成するか、を示している。例えば、テーブル番号T0のテーブルは、コンポーネントCbのサブバンド1HHに含まれる全コードブロックで、最下位の1パス分の符号が破棄されることを示す。さらに、いずれか一つのサブバンドで破棄するパスの数が1だけ大きくなった複数のテーブルを用意し、テーブル番号の小さい方から順に並べる。図24の例では、テーブル番号T2のテーブルは、T1のテーブルに比べてコンポーネントCb、サブバンド1HHで破棄するパスの数が1だけ大きくなっている。 FIG. 24 shows an example of the truncation table. The truncation table is a table in which the number of paths to be discarded when generating the final code stream using the code after MQ coding is described for each subband. The numbers in FIG. 24 indicate how many codes from the lower order of the code blocks belonging to the corresponding subband are discarded to generate the final code stream. For example, the table with the table number T0 indicates that the code for the lowest one pass is discarded in all code blocks included in the subband 1HH of the component Cb. Furthermore, a plurality of tables in which the number of paths to be discarded in any one subband is increased by one are prepared and arranged in order from the smallest table number. In the example of FIG. 24, the table number T2 has a larger number of paths to be discarded by the component Cb and subband 1HH by one than the table of T1.
図17のレートコントロール回路部18では、符号量算出部16で生成された全体符号量(Q)とパス毎の符号削減量(Σlen)を使って、最終の符号量が設定符号量(N)を越えない範囲で最大となるようなテーブルを複数のトランケーションテーブル(T0、T1、・・・)から1つ選択する。図25に、レートコントロール回路部18の制御フローの例を示す。図25における変数は、それぞれ以下の内容である。
スタート後、各変数を初期化し(S2502)、全体符号量(Q)と設定符号量(N)を比較する(S2504)。全体符号量の方が大きい場合、トランケーションテーブルを選択するフローに入る。まず、それまで選択されていたコンポーネント、サブバンド毎の破棄するパス数をTPBに移し(TPB←TP)、新たにメモリ2からテーブル番号Tのデータを読み込みコンポーネント、サブバンド毎の破棄するパス数をTPに設定する(TP←TBL(T))(S2506)。次に、TPとTPBで破棄するパス数が異なる(S2508)サブバンドを探索する。TPとTPBでは必ず値が1違っているサブバンドが存在し、それに該当するサブバンドのパス番号CPの符号削減量を符号量算出部16のメモリより読み出し(S2510)、全体の符号量(Q)より引いて(S2512)設定符号量(N)と比較する(S2514)。もし、全体の符号量(Q)の方が大きければ(S2514・YES)、Tの値をインクリメントして(S2518)同じ処理を繰り返す。設定符号量(N)が大きければ(S2514・NO)、最終のトランケーションパス数(TP)をパケット回路生成回路に出力して処理を終了する。
After starting, each variable is initialized (S2502), and the total code amount (Q) is compared with the set code amount (N) (S2504). When the total code amount is larger, the flow for selecting a truncation table is entered. First, the number of paths to be discarded for each component and subband that has been selected is moved to TPB (TPB ← TP), and data of table number T is newly read from the
レートコントロール回路部18で選択されたトランケーションテーブルに従い、パケット生成回路20、符号形成部22で最終的なコードストリームが生成される。
According to the truncation table selected by the rate
ここで、MQ符号化は、JPEG2000に関する処理の中で、最も負荷の掛かる工程である。にもかかわらず、MQ符号化後の符号量は、実際に符号化を行ってみるまでは正確な値が分からないため、符号量制御を行うためには、上記に示したように画像全体に対するMQ符号化を行う必要がある。その結果、MQ符号化までは行われたが、所定の符号量になるように制御された最終のコードストリームでは使用されなかった符号が存在することになる。 Here, MQ coding is the most burdensome process among the processes related to JPEG2000. Nevertheless, since the amount of code after MQ coding is not known until it is actually coded, in order to control the amount of code, as shown above, It is necessary to perform MQ encoding. As a result, there are codes that have been used up to MQ coding but have not been used in the final code stream controlled to have a predetermined code amount.
予めサブバンド毎に決められたビットプレーンのみMQ符号化を実施することで、符号化処理全体を高速化することも可能であるが、この場合、画像によっては本来必要となるべきビットプレーンが符号化されず、最終のコードストリームに含まれなくなり画質の低下を招く可能性がある。 It is possible to speed up the entire encoding process by performing MQ encoding only on the bit planes determined in advance for each subband. In this case, however, the bit plane that should be originally required depending on the image is encoded. May not be included in the final code stream and may lead to degradation of image quality.
また、特許文献2(特許第40003628号)の装置では、周波数変換後の係数データをビットプレーン単位に分割し、各ビットプレーンでの最初に非0となるデータの個数を算出して符号量を推定した後、符号化を予測されたビットプレーンのみ符号化することで処理の効率化を図っている。しかし、この方法で推定された符号量のみで符号化されるビットプレーンが決められ、符号量制御が行われたとしても、結果として最適な画質が得られない可能性がある。 In the apparatus of Patent Document 2 (Patent No. 40003628), the coefficient data after frequency conversion is divided into bit plane units, and the number of data that becomes non-zero first in each bit plane is calculated to calculate the code amount. After the estimation, only the bit plane that is predicted to be encoded is encoded to improve processing efficiency. However, even if the bit plane to be encoded is determined only by the code amount estimated by this method and the code amount is controlled, there is a possibility that the optimum image quality cannot be obtained as a result.
なお、本出願の先行文献として、以下のようなものが挙げられる。 In addition, the following are mentioned as prior literature of this application.
サブバンド毎に破棄するビットプレーンを記述したテーブルを複数用意して、MQ符号化後の符号量に基づいて最適なテーブルを選択する方式を開示するものとして、特許文献1が挙げられる。
また、周波数変換後の係数データをコードブロックに分割し、そのビットプレーンにおける値が非0で、それより上位のビットプレーンにおける値が0であるような係数データの数をビットプレーン毎に計数し、その値に基づいて推定符号量を求め、その推定符号量を所定の目標符号量となるまで加算して符号化対象となるビットプレーンを予測し、その符号化対象となったビットプレーンを算術符号化し、生成された算術符号より符号化コードストリームを生成する画像符号化装置を開示するものとして、特許文献2が挙げられる。
Also, the coefficient data after frequency conversion is divided into code blocks, and the number of coefficient data whose value in the bit plane is non-zero and the value in the higher bit plane is 0 is counted for each bit plane. Then, an estimated code amount is obtained based on the value, and the estimated code amount is added until a predetermined target code amount is obtained to predict a bit plane to be encoded, and the bit plane to be encoded is arithmetically calculated.
また、連続画像、動画像の符号化で、時間的に直前の画像の同一位置にある符号ブロックで選択された符号化ビットプレーン数に基づいて、符号化するビットプレーンを計算する画像符号化装置を開示するものとして、特許文献3が挙げられる。
Also, an image encoding device that calculates a bit plane to be encoded based on the number of encoded bit planes selected in a code block at the same position of the immediately preceding image in time encoding in continuous image and moving image
本発明は、画質に与える影響を最小限に押さえながら、最終のコードストリームで使用されない符号を予測してMQ符号化を実施しないことで処理の高速化を図る画像符号化装置を提供することを目的とする。 The present invention provides an image encoding device that increases the processing speed by predicting a code that is not used in the final code stream and performing MQ encoding while minimizing the influence on image quality. Objective.
本発明は、上記の目的を達成するために為されたものである。本発明に係る請求項1に記載の画像符号化装置は、
画像データを周波数変換する周波数変換手段と、
上記周波数変換後の係数データをコードブロックと呼ばれる矩形領域に分割後ビットプレーン毎に符号化するビットプレーン符号化手段と、
上記ビットプレーン符号化後の符号に対して破棄するビットプレーン数の組み合わせを記述した複数個のテーブルを、格納する格納手段と、
上記複数個のテーブルより所定の符号量以下になるような一組のテーブルを選択することで符号量を制御する符号量制御手段を備える画像符号化装置において、
更に、所定のサブバンドに含まれるコードブロックの符号化が終了した時点での符号量を利用して画像全体を符号化した際に選択される一組のテーブルを予測するテーブル選択結果予測手段と、
その予測結果に基づいて残りのサブバンドに含まれるコードブロックで符号化するビットプレーンを決定するように符号化手段を制御する符号化ビットプレーン制御手段を備える。
The present invention has been made to achieve the above object. An image encoding apparatus according to
A frequency conversion means for converting the frequency of the image data;
Bit plane encoding means for encoding the coefficient data after frequency conversion into a rectangular area called a code block for each bit plane after being divided;
Storage means for storing a plurality of tables describing combinations of the number of bit planes to be discarded with respect to the code after bit plane encoding;
In an image encoding device including code amount control means for controlling a code amount by selecting a set of tables that are equal to or less than a predetermined code amount from the plurality of tables,
Furthermore, table selection result prediction means for predicting a set of tables selected when the entire image is encoded using the code amount at the time when the encoding of the code block included in the predetermined subband is completed; ,
Coding bit plane control means is provided for controlling the coding means so as to determine bit planes to be coded with code blocks included in the remaining subbands based on the prediction result.
本発明に係る請求項2に記載の画像符号化装置は、
請求項1に記載の画像符号化装置において、
符号量制御で用いる設定符号量と上記所定のサブバンドの大きさより該当するサブバンドに割り当てられる予測符号量を算出し、
上記サブバンドに含まれるコードブロックの符号化が終了した時点でのビットプレーン毎の符号量を使って、符号量制御で使用する破棄するビットプレーン数の組み合わせを記述した複数個のテーブルから、上記サブバンドの符号量の合計が上記予測符号量を下回らない範囲で最大の破棄ビットプレーン数となるテーブルを選択し、
残りのサブバンドに含まれるコードブロックに対しては上記選択されたテーブルに記述された該当するサブバンドでの破棄するビットプレーン数を使って符号化する。
An image encoding apparatus according to
The image encoding device according to
From the set code amount used in the code amount control and the size of the predetermined subband, a prediction code amount assigned to the corresponding subband is calculated,
From the plurality of tables describing combinations of the number of bit planes to be discarded to be used in the code amount control, using the code amount for each bit plane when the encoding of the code block included in the subband is completed, Select the table with the maximum number of discarded bitplanes in the range where the total subband code amount does not fall below the predicted code amount,
Code blocks included in the remaining subbands are encoded using the number of bitplanes discarded in the corresponding subband described in the selected table.
本発明に係る請求項3に記載の画像符号化装置は、
請求項2に記載の画像符号化装置において、
サブバンド毎のウエーブレット係数データの平均値を使って上記符号化されたサブバンドに割り当てられる予測符号量を算出する。
An image encoding apparatus according to
The image encoding device according to
Using the average value of the wavelet coefficient data for each subband, the prediction code amount allocated to the coded subband is calculated.
本発明に係る請求項4に記載の画像符号化装置は、
請求項2に記載の画像符号化装置において、
先に符号化したサブバンドのみを対象にした破棄するビットプレーン数の組み合わせと、それらの各テーブルに対応する上記符号量制御で使用するテーブルを特定するデータを記述した複数個の第2のテーブルを使用してテーブル選択結果予測を行う。
An image encoding apparatus according to
The image encoding device according to
A plurality of second tables describing a combination of the number of bit planes to be discarded only for the previously encoded subbands and data specifying the table used in the code amount control corresponding to each table. Use to predict the table selection result.
本発明に係る請求項5に記載の画像符号化装置は、
請求項2に記載の画像符号化装置において、
予め定められた計算式を使って破棄するビットプレーン数を算出してテーブル選択結果予測を行う。
An image encoding apparatus according to
The image encoding device according to
A table selection result prediction is performed by calculating the number of bit planes to be discarded using a predetermined calculation formula.
本発明の画像符号化装置は、途中のサブバンドまでの符号化が終了した時点での符号量の情報を使って最終的なコードストリームで破棄されると予想されるパスを予測し、その結果に基づいて残りのサブバンドを符号化するパス数を減らすので、画像に依存せず画質に影響しない範囲で符号化処理の高速化を図ることができる。 The image encoding apparatus according to the present invention predicts a path that is expected to be discarded in the final code stream by using the information of the code amount at the time when encoding up to the middle subband is completed, and the result Since the number of passes for encoding the remaining subbands is reduced based on the above, the encoding process can be speeded up in a range that does not depend on the image and does not affect the image quality.
また、本発明の画像符号化装置は、選択結果予測手段として符号量制御で使用するテーブルを利用するので、この機能追加に伴う回路の増加量、制御手段の変更量を最小限に抑えることができる。 In addition, since the image encoding apparatus of the present invention uses a table used for code amount control as a selection result predicting unit, it is possible to minimize the amount of increase in circuit and the amount of change of the control unit due to this function addition. it can.
また、本発明の画像符号化装置は、画像全体のウエーブレット変換の結果を使って予め符号化されたサブバンドに割り当てられる符号量を算出するので、予測結果の精度が向上する。 In addition, the image coding apparatus of the present invention calculates the code amount allocated to the subbands encoded in advance using the result of wavelet transform of the entire image, so that the accuracy of the prediction result is improved.
また、本発明の画像符号化装置は、予め符号化されたサブバンドだけに対応する破棄するパス数が記載されたテーブルを使って選択結果予測を行うので、選択結果予測に要する時間を短くすることができる。 In addition, the image coding apparatus according to the present invention performs selection result prediction using a table in which the number of passes to be discarded corresponding to only pre-encoded subbands is described, so that the time required for selection result prediction is shortened. be able to.
更に、本発明の画像符号化装置は、テーブルを使用する代わりに与えられた簡単な演算式よりサブバンドでの破棄するパス数を算出するので、回路規模を削減できる。 Furthermore, the image encoding apparatus of the present invention calculates the number of paths to be discarded in the subband from a simple arithmetic expression given instead of using a table, so that the circuit scale can be reduced.
以下、図面を参照しつつ、本発明に係る好適な実施形態を説明する。 Hereinafter, preferred embodiments of the present invention will be described with reference to the drawings.
《第1の実施形態》
図1は、本発明の第1の実施形態に係るテーブル選択結果予測手段を備えた画像符号化装置のブロック図である。本実施形態では、選択結果予測回路28は、所定のサブバンドのMQ符号化が終った時点で、符号量算出部16の結果と、メモリ2上に格納されているトランケーションテーブル8を使って最終的な符号ストリームでは破棄されると予想されるパスを予測し、符号化制御部24はその予測結果に基づいて残りのサブバンドのMQ符号化を実施する。
<< First Embodiment >>
FIG. 1 is a block diagram of an image coding apparatus including a table selection result prediction unit according to the first embodiment of the present invention. In the present embodiment, the selection
図2は、このときの符号化制御部24の動作フローを示す。このフローは、カラー画像を分割レベル5でウエーブレット変換し、Y、Cb、Cr(C=1、2、3)の各コンポーネントで5LLから3HHまでのサブバンド(SB=1、2、・・・、10)のMQ符号化が終了した時点で選択結果予測を行い、残りの2HLから1HHのサブバンドに関しては予測結果に基づいてMQ符号化を実施する。
FIG. 2 shows an operation flow of the
図2内の“A”で示されるフロー前半部は、Y、Cb、Crの各コンポーネントで5LLから3HHのサブバンドまでをMQ符号化するフローである。その動作内容は、図20(2)に示す従来技術のものと同じである。図2内の“B”で示されるフロー後半部は、選択結果を予想し、その結果に基づいて残りのサブバンドをMQ符号化するフローである。つまり、図2の動作フローと図20(2)の動作フローとは
[1]Y、Cb、Crの各コンポーネントで5LLから3HHのサブバンドまでのMQ符号化が終了した時点で、選択結果予測処理(S218)が入っていること、及び、
[2]残りの2HLから1HHのサブバンドの符号化においては予測の結果である破棄される符号化パス数を考慮した符号化処理を行っていること
の2点が異なっている。以下では、この2点に関して説明する。
The first half of the flow indicated by “A” in FIG. 2 is a flow of MQ encoding from 5LL to 3HH subbands with each component of Y, Cb, and Cr. The content of the operation is the same as that of the prior art shown in FIG. The latter half of the flow indicated by “B” in FIG. 2 is a flow for predicting the selection result and MQ coding the remaining subbands based on the result. That is, the operation flow of FIG. 2 and the operation flow of FIG. 20 (2) are [1] selection result prediction at the time when MQ coding from 5LL to 3HH sub-bands is completed for each component Y, Cb, and Cr. Process (S218) is included, and
[2] The remaining 2HL to 1HH subbands are different in that encoding processing is performed in consideration of the number of encoding passes to be discarded, which is a prediction result. Hereinafter, these two points will be described.
まず、選択結果予測処理(S218)に関しての説明を行う。
ここでは、C=1、2、3、SB=1(5LL)〜10(3HH)に記述されているパスを破棄しても符号量がある目標値より小さくならないテーブルであって、SB=1(5LL)〜10(3HH)の値が最も大きく、SB=11(2HL)〜16(1HH)の値が最も小さくなるテーブルを選択し、そのテーブルのSB=11(2HL)〜16(1HH)の値を予測値とする。図3は、上記の関係を模式的に示したものである。ここで5LL〜3HHまでのサブバンドに関してはMQ符号化を終了しており、斜線部の符号量の合計はある目標値を超えているものとする。テーブル番号TaからTbのテーブルでは5LL〜3HHまでの内容が同じであり、Tb+1のテーブルでは符号量が目標値より小さくなり、Ta−1のテーブルでは5LL〜3HHまでの内容が異なるとき、予測値としてTaのテーブルが選択される。
First, the selection result prediction process (S218) will be described.
Here, even if the paths described in C = 1, 2, 3, and SB = 1 (5LL) to 10 (3HH) are discarded, the code amount does not become smaller than a target value, and SB = 1 A table having the largest value of (5LL) to 10 (3HH) and the smallest value of SB = 11 (2HL) to 16 (1HH) is selected, and SB = 11 (2HL) to 16 (1HH) of the table is selected. Is the predicted value. FIG. 3 schematically shows the above relationship. Here, it is assumed that MQ coding is finished for subbands from 5LL to 3HH, and the total code amount in the shaded area exceeds a certain target value. The table numbers Ta to Tb have the same contents from 5LL to 3HH, the Tb + 1 table has a smaller code amount than the target value, and the Ta-1 table has different contents from 5LL to 3HH. The Ta table is selected.
図4は、選択結果予測の動作フローを示す。図4における変数は、それぞれ以下の内容である。
TP、TPBは、全てのコンポーネント、サブバンドで破棄するパスが0となるように初期化される(S402)。
FIG. 4 shows an operation flow for predicting the selection result. The variables in FIG. 4 have the following contents, respectively.
TP and TPB are initialized so that the path to be discarded in all components and subbands is 0 (S402).
図4のフローにおいて、スタートし、各変数の初期化(S402)が終った後、設定符号量(N)より選択結果予測に使用する予測符号量(Nsub)を算出する(S404)。算出方法としては、画像全体のウエーブレット係数の個数とMQ符号化を終ったサブバンドのウエーブレット係数の個数の比を使用できる。本実施形態では、分割レベル5で3HHまでのサブバンドの符号化が終った時点で選択結果予測を行うが、符号化の終ったサブバンドのウエーブレット係数の個数は全体の1/16となり、予測符号量をN×P=1/16×Nとすること、若しくは、各サブバンドの係数データの数と平均値を使って予測符号量を算出することも可能である。図5のテーブルでは、各サブバンドの係数データの数とその平均値、さらに、各サブバンドにウエイトを設定してそれらをサブバンド毎に掛け合わせ、それらの5LL〜3HHの合計と、2HL〜1HHの合計の比でPの値を決定している。
In the flow of FIG. 4, after starting and initializing each variable (S402), a prediction code amount (Nsub) used for selection result prediction is calculated from the set code amount (N) (S404). As a calculation method, the ratio of the number of wavelet coefficients of the entire image and the number of wavelet coefficients of the subband after MQ coding can be used. In the present embodiment, the selection result prediction is performed at the time when the sub-band encoding up to 3HH is finished at the
図4に戻って、まず、全体符号量(Q)と予測符号量(Nsub)を比較し(S406)、全体符号量(Q)の方が小さければ、選択結果予測処理を終了する。このとき、TPBの値がTsubに設定される(S432)ので、破棄されるパス数は0となり、以降のMQ符号化においては全てのパスが符号化される。 Returning to FIG. 4, first, the total code amount (Q) and the predicted code amount (Nsub) are compared (S406). If the total code amount (Q) is smaller, the selection result prediction process is terminated. At this time, since the value of TPB is set to Tsub (S432), the number of paths to be discarded becomes 0, and all paths are encoded in the subsequent MQ encoding.
S406にて、全体符号量(Q)が大きい場合は以下の処理が繰り返される。
[1]メモリ2からテーブル番号Tのトランケーションテーブルを読み込みTPに設定する(S408)。
[2]C=1、2、3、SB=1(5LL)〜10(3HH)の範囲で、TPとTPBの値に差がないかを確認する(S410)。
[3]TPとTPBで差がある場合、
[3−1]差のあるサブバンドの破棄するパス数をパス番号CPとする(S412)。
[3−2]Qから該当するパスのパス毎の符号削減量(Σlen(C、SB、CP))を引く(S414)。
[3−3]Qと予測符号量(Nsub)を比較し(S416)、Qの方が小さければTPBの値をTsubに設定し(S432)処理を終了する。
[3−4]Qの方が大きければ、Tを1インクリメントし、TPの値をTPBに設定して(S420)、上記[1]に戻る。
[4]TPとTPBで差がない場合、Tを1インクリメントして(S426)、上記[1]に戻る。
In S406, when the total code amount (Q) is large, the following processing is repeated.
[1] The truncation table with the table number T is read from the
[2] In the range of C = 1, 2, 3, and SB = 1 (5LL) to 10 (3HH), it is confirmed whether there is a difference between the values of TP and TPB (S410).
[3] When there is a difference between TP and TPB,
[3-1] The number of paths discarded in subbands having a difference is set as a path number CP (S412).
[3-2] A code reduction amount (Σlen (C, SB, CP)) for each path of the corresponding path is subtracted from Q (S414).
[3-3] Q and the predicted code amount (Nsub) are compared (S416). If Q is smaller, the value of TPB is set to Tsub (S432), and the process is terminated.
[3-4] If Q is larger, T is incremented by 1, the value of TP is set to TPB (S420), and the process returns to [1] above.
[4] If there is no difference between TP and TPB, T is incremented by 1 (S426), and the process returns to [1] above.
次に、図6は、破棄される符号化パス数を考慮したMQ符号化処理のフローである。各変数、動作内容は以下の通りである。
図6のフローにおいて、スタート後、Bp、Tsubを使ってBN、CPの初期値とCplastと決定する(S602)。CPの初期値よりCPlastが大きい場合(S604・YES)、このコードブロックには符号化の対象となるパスが無いことになりフローを終了する。
CPが大きい場合(S604・NO)、以下の手順を繰り返す。
[1]ビットプレーン分割メモリからビットプレーン番号BNのビットプレーンデータを読み出して、MQ符号化部26でMQ符号化する(cleanupパス)(S606)。
[2]cleanupパスの符号化が終了した時点でpendをアサートする(S608)。
[3]処理したパス(CP)が最後のパス(Cplast)であった場合(S610・YES)、処理を終了する。
[4]CP、BNをデクリメントする(S612)。
[5]ビットプレーン分割メモリからビットプレーン番号BNのビットプレーンデータを読み出して、MQ符号化部26でMQ符号化する(significance propagationパス)(S614)。
[6]significance propagationパスの符号化が終了した時点でpendをアサートする(S618)。
[7]処理したパス(CP)が最後のパス(Cplast)であった場合(S620・YES)、処理を終了する。
[8]CPをデクリメント(BNは変更しない)する(S622)。
[9]ビットプレーン分割メモリからビットプレーン番号BNのビットプレーンデータを読み出して、MQ符号化部26でMQ符号化する(magnitude refinementパス)(S624)。
[10]magnitude refinementパスの符号化が終了した時点でpendをアサートする(S626)。
[11]処理したパス(CP)が最後のパス(Cplast)であった場合(S628・YES)、処理を終了する。
[12]CPをデクリメント(BNは変更しない)し(S630)、上記[1]に戻る(S606)。
In the flow of FIG. 6, after the start, the initial values of BN and CP and Cplast are determined using Bp and Tsub (S602). If CPlast is greater than the initial CP value (YES in S604), there is no path to be encoded in this code block, and the flow ends.
When CP is large (S604 / NO), the following procedure is repeated.
[1] The bit plane data of the bit plane number BN is read from the bit plane division memory, and is MQ encoded by the MQ encoder 26 (cleanup pass) (S606).
[2] Pend is asserted when encoding of the cleanup pass is completed (S608).
[3] If the processed path (CP) is the last path (Cplast) (S610, YES), the process ends.
[4] CP and BN are decremented (S612).
[5] The bit plane data of the bit plane number BN is read from the bit plane division memory, and is MQ encoded by the MQ encoder 26 (significance propagation path) (S614).
[6] Pend is asserted when the encoding of the signature propagation path is completed (S618).
[7] If the processed path (CP) is the last path (Cplast) (S620 / YES), the process ends.
[8] The CP is decremented (BN is not changed) (S622).
[9] The bit plane data of the bit plane number BN is read from the bit plane division memory, and is MQ encoded by the MQ encoder 26 (magnitude refinement pass) (S624).
[10] Pend is asserted at the point when encoding of the magnesium refinement path is completed (S626).
[11] If the processed path (CP) is the last path (Cplast) (YES in S628), the process ends.
[12] The CP is decremented (BN is not changed) (S630), and the process returns to [1] (S606).
上記の処理により、図2のフロー後半部“B”のMQ符号化では、最終のコードストリームで破棄されると予想されるパスに関して予め符号化を行わないようにすることができる。 With the above processing, in the MQ encoding of the latter half “B” of the flow in FIG. 2, it is possible to prevent encoding in advance for a path that is expected to be discarded in the final code stream.
《第2の実施形態》
符号量制御で使用するトランケーションテーブル8には、全てのサブバンドに関しての破棄するパス数が記載されているが、前後する2つのテーブル間で、選択結果予測で使用するサブバンドでの破棄するパス数に差が無い場合がある。このことにより、図4の動作フローのように、C=1、2、3、SB=1(5LL)〜10(3HH)の範囲で、TPとTPBの値に差があることを確認し、もし差がない場合はそのテーブルは使用せず次のテーブルを読み込むという動作が必要となり、その分、選択結果予測に時間がかかることになる。
<< Second Embodiment >>
In the truncation table 8 used for code amount control, the number of paths to be discarded for all subbands is described, but the paths to be discarded in the subband used in the selection result prediction between the two preceding and following tables. There may be no difference in number. This confirms that there is a difference between the values of TP and TPB in the range of C = 1, 2, 3, and SB = 1 (5LL) to 10 (3HH) as in the operation flow of FIG. If there is no difference, it is necessary to read the next table without using that table, and it takes time to predict the selection result.
図7のテーブル例を用いて詳細に説明する。図7のテーブル例は、メモリ2に格納されているトランケーションテーブル例の一部を抜き出したものである。T196からT197では、Cb4LHの破棄するパス数が1増え、その後、T197からT207まで、C=1、2、3、SB=1(5LL)〜10(3HH)のサブバンドは、同じ値を取る。T208はT207に比べ、Y1LHで破棄するパス数が1増え、C=1、2、3、SB=1(5LL)〜10(3HH)は同じ値となっている。このテーブルを用いて選択結果予測を行った場合、T198からT207までは、実際に使用されないにもかかわらずメモリからの読み込み動作、前のテーブルと設定されたパス数を比較する動作が必要となる。
This will be described in detail with reference to the table example of FIG. The table example of FIG. 7 is a part of the truncation table example stored in the
図9に示す選択結果予測の動作フロー、及び、図8に示すテーブルは、上記図7のトランケーションテーブル8に対して、次に選択結果予測で使用するテーブルまでのオフセット値(ΔT)を追加することで、上記の問題を解決する方法における、本発明の第2の実施形態の選択結果予測の動作フロー及びトランケーションテーブル例である。 The selection result prediction operation flow shown in FIG. 9 and the table shown in FIG. 8 add an offset value (ΔT) to the table used in the selection result prediction to the truncation table 8 in FIG. Thus, in the method for solving the above problem, there are an operation flow and a truncation table example of selection result prediction according to the second embodiment of the present invention.
図8のテーブルでは、T197には、次にC=1、2、3、SB=1(5LL)〜10(3HH)のサブバンドでのパス数に差のあるT209までのオフセット値(ΔT)=12が与えられている。また、図9のフローでは、テーブル番号を単純にインクリメントする(図4・S420参照)のではなくオフセット値(ΔT)を加算する(S920)。このことにより、次に読み込むテーブルには、現在のテーブルに比べ選択結果予測の対象となるサブバンドのパス数に1の差があることになるので、不必要なテーブルの読み込みが発生しない。 In the table of FIG. 8, T197 includes an offset value (ΔT) up to T209 that has a difference in the number of paths in subbands C = 1, 2, 3, and SB = 1 (5LL) to 10 (3HH). = 12 is given. In the flow of FIG. 9, the table number is not simply incremented (see FIG. 4, S420), but an offset value (ΔT) is added (S920). As a result, the next table to be read has a difference of 1 in the number of sub-band paths to be subjected to selection result prediction compared to the current table, so unnecessary reading of the table does not occur.
図10は、選択結果予測用に別にテーブルを持つことで上記の問題を解決する、画像符号化装置のブロック図である。この例では、選択結果予測回路28は、メモリ2のトランケーションテーブル8ではなく、メモリ3(予測用テーブル)30に格納された予測用テーブルを使用する。図11は、予測用テーブルの例を示し、図12は、この例での選択結果予測の動作フローを示している。図11に示されるように、予測用テーブルは、C=1、2、3、SB=5LL〜3HHの各サブバンドでの破棄するパスが記述されており、前後する2つのテーブル間では、いずれかのサブバンドで、破棄するパス数の値が必ず1違う。また、メモリ2に格納されているトランケーションテーブルと、C=1、2、3、SB=5LL〜3HHの破棄するパス数が同じで、且つ、番号が最も小さいテーブルの番号(TA)も記載されている。
FIG. 10 is a block diagram of an image coding apparatus that solves the above problem by having a separate table for prediction of selection results. In this example, the selection
図12に示す選択結果予測の動作フローに対して、追加される変数は以下の通りである。
最終的に選択されたテーブルに記載されているTAの値を使って、メモリ2に格納されているトランケーションテーブル8を読み込み(TPB←TBL(TAB))(S1226)、以降に符号化するサブバンドで破棄されるパス数としている(Tsub(C,SB)←TPB(C,SB))(S1228)。また、図13のようにTAの値の記述が無い予測用テーブルも使用することができる。このとき、最終的に選択されたテーブルに記載されている各コンポーネントの3HHの破棄されるパス数を、以降に符号化するサブバンドで破棄されるパス数とすればよい。
The truncation table 8 stored in the
更に、選択結果予測でテーブルを使用する代わりに、予め与えられた計算式を使って、破棄されるパス数を近似的に計算して予測値を求めることも可能である。図14は、この方法による選択結果予測を行う、画像符号化装置のブロック図である。また、図15は、図14に示す画像符号化装置における選択結果予測の動作フローを示す。この例では、図16(1)に示す
yt=K×(x−10)+t (t=1、2、3・・・)
という直線式と、図16(2)の整数化演算式を用いて選択結果予測を行う。図16(1)において、“K”は直線の傾きを示し、所定の値が与えられるとする。また、図16(2)における“floor[yi]”は、“yi”を超えない最大の整数を表す。ただし、ここでは説明を簡単にするために、コンポーネントをYのみとしている。Yt(SB)は破棄されるパス数であり、t=1、2、・・・とインクリメントすることで、SBが同じでも破棄されるパス数が大きくなる。
Furthermore, instead of using a table for prediction of the selection result, it is also possible to obtain a predicted value by approximately calculating the number of paths to be discarded using a calculation formula given in advance. FIG. 14 is a block diagram of an image coding apparatus that performs selection result prediction according to this method. FIG. 15 shows an operation flow of selection result prediction in the image encoding device shown in FIG. In this example, yt = K × (x−10) + t (t = 1, 2, 3,...) Shown in FIG.
The selection result prediction is performed using the linear formula and the integer calculation formula of FIG. In FIG. 16A, “K” indicates the slope of a straight line, and a predetermined value is given. Further, “floor [yi]” in FIG. 16B represents the maximum integer that does not exceed “yi”. However, in order to simplify the description here, the component is only Y. Yt (SB) is the number of paths to be discarded. By incrementing t = 1, 2,..., The number of paths to be discarded increases even if the SB is the same.
図15に示す動作フローにおいて、初期化後の基本的なフローは以下のとおりである。
[1]計算式としてYt(SB)を使用する。
[2]いずれかのサブバンドでTP(SB)とYt(SB)の値に差がないかを確認する(S1510)。
[3]TPとYtで差がある場合(S1510・YES)、
[3−1]差のあるサブバンドのYt(SB)をTP(SP)、CPとする(S1512)。
[3−2]Qから該当するパスのパス毎の符号削減量(Σlen(SB、CP))を引く(S1514)。
[3−3]Qと予測符号量(Nsub)を比較し(S1516)、Qの方が小さければ(S1516・NO)TPBの値をTsubに設定し処理を終了する。
[3−4]Qの方が大きい場合(S1516・YES)、下記[4]に移る。
[4]TPとTPBで差がない場合(S1510・NO)、あるいは、(3−4)でQの方が大きかった場合(S1516・YES)、
[4−1]SB≠1なら、SBをデクリメントして(S1520)、上記[1]に戻る。
[4−2]SB=1であり、すでにtが最大値(Tmax)である場合(S1522・YES)は処理を終了し、それ以外の場合(S1522・NO)はtをインクリメントして(S1524)上記[1]に戻る。
In the operation flow shown in FIG. 15, the basic flow after initialization is as follows.
[1] Yt (SB) is used as a calculation formula.
[2] It is checked whether there is a difference between the values of TP (SB) and Yt (SB) in any subband (S1510).
[3] When there is a difference between TP and Yt (S1510 / YES),
[3-1] Let Yt (SB) of subbands with differences be TP (SP) and CP (S1512).
[3-2] The code reduction amount (Σlen (SB, CP)) for each path of the corresponding path is subtracted from Q (S1514).
[3-3] Q and the predicted code amount (Nsub) are compared (S1516). If Q is smaller (S1516, NO), the value of TPB is set to Tsub, and the process ends.
[3-4] When Q is larger (YES in S1516), the process proceeds to [4] below.
[4] When there is no difference between TP and TPB (S1510, NO), or when Q is larger in (3-4) (S1516, YES),
[4-1] If SB ≠ 1, SB is decremented (S1520), and the process returns to [1] above.
[4-2] If SB = 1 and t is already at the maximum value (Tmax) (S1522 / YES), the process is terminated. Otherwise (S1522 / NO), t is incremented (S1524). ) Return to [1] above.
以降、予測値(符号化するサブバンドで破棄されるパス)は、Yt−1(SB)を計算式とし、SB=11(2HL)、12(2LH)、・・・16(1HH)を計算することで求められる。 Thereafter, the predicted value (path discarded in the subband to be encoded) is Yt−1 (SB), and SB = 11 (2HL), 12 (2LH),... 16 (1HH) is calculated. Is required.
2・・・メモリ、12・・・ウエーブレット変換部、16・・・符号量算出部、18・・・レートコントロール回路部、20・・・パケット生成回路、22・・・符号形成部、24・・・符号化制御部、26・・・MQ符号化部、28・・・選択結果予測回路。
DESCRIPTION OF
Claims (5)
上記周波数変換後の係数データをコードブロックと呼ばれる矩形領域に分割後ビットプレーン毎に符号化するビットプレーン符号化手段と、
上記ビットプレーン符号化後の符号に対して破棄するビットプレーン数の組み合わせを記述した複数個のテーブルを、格納する格納手段と、
上記複数個のテーブルより所定の符号量以下になるような一組のテーブルを選択することで符号量を制御する符号量制御手段を備える画像符号化装置において、
更に、所定のサブバンドに含まれるコードブロックの符号化が終了した時点での符号量を利用して画像全体を符号化した際に選択される一組のテーブルを予測するテーブル選択結果予測手段と、
その予測結果に基づいて残りのサブバンドに含まれるコードブロックで符号化するビットプレーンを決定するように符号化手段を制御する符号化ビットプレーン制御手段を備える画像符号化装置。 A frequency conversion means for converting the frequency of the image data;
Bit plane encoding means for encoding the coefficient data after frequency conversion into a rectangular area called a code block for each bit plane after being divided;
Storage means for storing a plurality of tables describing combinations of the number of bit planes to be discarded with respect to the code after bit plane encoding;
In an image encoding device including code amount control means for controlling a code amount by selecting a set of tables that are equal to or less than a predetermined code amount from the plurality of tables,
Furthermore, table selection result prediction means for predicting a set of tables selected when the entire image is encoded using the code amount at the time when the encoding of the code block included in the predetermined subband is completed; ,
An image coding apparatus comprising coding bit plane control means for controlling coding means so as to determine bit planes to be coded with code blocks included in the remaining subbands based on the prediction result.
符号量制御で用いる設定符号量と上記所定のサブバンドの大きさより該当するサブバンドに割り当てられる予測符号量を算出し、
上記サブバンドに含まれるコードブロックの符号化が終了した時点でのビットプレーン毎の符号量を使って、符号量制御で使用する破棄するビットプレーン数の組み合わせを記述した複数個のテーブルから、上記サブバンドの符号量の合計が上記予測符号量を下回らない範囲で最大の破棄ビットプレーン数となるテーブルを選択し、
残りのサブバンドに含まれるコードブロックに対しては上記選択されたテーブルに記述された該当するサブバンドでの破棄するビットプレーン数を使って符号化する画像符号化装置。 The image encoding device according to claim 1,
From the set code amount used in the code amount control and the size of the predetermined subband, a prediction code amount assigned to the corresponding subband is calculated,
From the plurality of tables describing combinations of the number of bit planes to be discarded to be used in the code amount control, using the code amount for each bit plane when the encoding of the code block included in the subband is completed, Select the table with the maximum number of discarded bitplanes in the range where the total subband code amount does not fall below the predicted code amount,
An image encoding device that encodes the code blocks included in the remaining subbands using the number of bit planes discarded in the corresponding subband described in the selected table.
サブバンド毎のウエーブレット係数データの平均値を使って上記符号化されたサブバンドに割り当てられる予測符号量を算出する画像符号化装置。 The image encoding device according to claim 2,
An image coding apparatus for calculating a prediction code amount allocated to the coded subband using an average value of wavelet coefficient data for each subband.
先に符号化したサブバンドのみを対象にした破棄するビットプレーン数の組み合わせと、それらの各テーブルに対応する上記符号量制御で使用するテーブルを特定するデータを記述した複数個の第2のテーブルを使用してテーブル選択結果予測を行う画像符号化装置。 The image encoding device according to claim 2,
A plurality of second tables describing a combination of the number of bit planes to be discarded only for the previously encoded subbands and data specifying the table used in the code amount control corresponding to each table. An image encoding device that performs table selection result prediction using the.
予め定められた計算式を使って破棄するビットプレーン数を算出してテーブル選択結果予測を行う画像符号化装置。 The image encoding device according to claim 2,
An image encoding apparatus that predicts a table selection result by calculating the number of bit planes to be discarded using a predetermined calculation formula.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2009064721A JP5201035B2 (en) | 2009-03-17 | 2009-03-17 | Image encoding device |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2009064721A JP5201035B2 (en) | 2009-03-17 | 2009-03-17 | Image encoding device |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2010219914A JP2010219914A (en) | 2010-09-30 |
| JP5201035B2 true JP5201035B2 (en) | 2013-06-05 |
Family
ID=42978258
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2009064721A Expired - Fee Related JP5201035B2 (en) | 2009-03-17 | 2009-03-17 | Image encoding device |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP5201035B2 (en) |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP4090975B2 (en) * | 2003-09-30 | 2008-05-28 | 株式会社リコー | Image processing device |
| JP2008228208A (en) * | 2007-03-15 | 2008-09-25 | Ricoh Co Ltd | Image coding method, image coding apparatus, image coding circuit, information recording medium, and computer program |
-
2009
- 2009-03-17 JP JP2009064721A patent/JP5201035B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2010219914A (en) | 2010-09-30 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4569840B2 (en) | Image coding apparatus and image coding method | |
| EP2120461B1 (en) | Code quantity estimating method and device, their program, and recording medium | |
| CN1251176C (en) | Transmission system including at least a coder | |
| US9093065B2 (en) | Method and device for transcoding audio signals exclduing transformation coefficients below −60 decibels | |
| JP5486597B2 (en) | Encoding method, encoding apparatus, encoding program, and recording medium | |
| JP7380835B2 (en) | Sound signal downmix method, sound signal encoding method, sound signal downmix device, sound signal encoding device, program and recording medium | |
| CA3131690A1 (en) | Method and apparatus for generating from a coefficient domain representation of hoa signals a mixed spatial/coefficient domain representation of said hoa signals | |
| JP5201035B2 (en) | Image encoding device | |
| CN1980393A (en) | Image coding device, method and computer program | |
| JP4374448B2 (en) | Multi-channel signal encoding method, decoding method thereof, apparatus, program and recording medium thereof | |
| JP2009004848A (en) | Mixing device | |
| JP4086196B2 (en) | Image encoding apparatus, program, and storage medium | |
| CN101627626A (en) | Motion vector selection | |
| JP2008118307A (en) | Encoding apparatus and control method thereof | |
| US7460722B2 (en) | Encoding of digital data with determination of sample path | |
| WO2005043919A1 (en) | Image decoding apparatus and image decoding method | |
| US7742645B2 (en) | Encoding device and method | |
| WO2004047305A1 (en) | Digital signal processing method, processor thereof, program thereof, and recording medium containing the program | |
| Song et al. | Pipelined discrete wavelet transform architecture scanning dual lines | |
| JP4369946B2 (en) | DIGITAL SIGNAL PROCESSING METHOD, PROGRAM THEREOF, AND RECORDING MEDIUM CONTAINING THE PROGRAM | |
| CN1914670A (en) | Predictive coding method | |
| EP1683364A1 (en) | Packetization of variable bit rate encoded data based on rate control | |
| JP2002094992A (en) | Coded data length detecting device and method, and image coding device | |
| JP5244479B2 (en) | Image coding apparatus and image coding method | |
| KR20100104220A (en) | Apparatus and method for efficient implementation of the rate-distortion optimized mode decision algorithm |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120228 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120621 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20121227 |
|
| 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: 20130115 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130128 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160222 Year of fee payment: 3 |
|
| LAPS | Cancellation because of no payment of annual fees |