JP2007267340A - Image encoder - Google Patents

Image encoder Download PDF

Info

Publication number
JP2007267340A
JP2007267340A JP2006093389A JP2006093389A JP2007267340A JP 2007267340 A JP2007267340 A JP 2007267340A JP 2006093389 A JP2006093389 A JP 2006093389A JP 2006093389 A JP2006093389 A JP 2006093389A JP 2007267340 A JP2007267340 A JP 2007267340A
Authority
JP
Japan
Prior art keywords
code amount
encoding
code
total
specific component
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.)
Granted
Application number
JP2006093389A
Other languages
Japanese (ja)
Other versions
JP4680112B2 (en
Inventor
Ikuro Ueno
幾朗 上野
Ryuta Suzuki
隆太 鈴木
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2006093389A priority Critical patent/JP4680112B2/en
Priority to US11/508,218 priority patent/US7720297B2/en
Publication of JP2007267340A publication Critical patent/JP2007267340A/en
Application granted granted Critical
Publication of JP4680112B2 publication Critical patent/JP4680112B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • H04N19/64Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission
    • H04N19/647Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission using significance based coding, e.g. Embedded Zerotrees of Wavelets [EZW] or Set Partitioning in Hierarchical Trees [SPIHT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/115Selection of the code volume for a coding unit prior to coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output

Abstract

<P>PROBLEM TO BE SOLVED: To reduce an operation amount and to evade extreme deviation of a code amount by executing encoding and rate control so that the code amount becomes an upper limit value or less and a lower limit value or more at specified parts in the compression encoding of frames. <P>SOLUTION: The image encoder comprises: an entropy encoding means 103 for outputting code data for each encoding path on the basis of control information, a rate control information extraction means 105 for judging the continuation and end of the encoding path on the basis of the calculation of distortion and the code amount needed for the rate control, and a code data extraction means 106 for extracting the code data to an encoding end path on the basis of the control information. The rate control information extraction means 105 comprises: calculation means 111 and 112 for calculating the distortion and the code amount generated by the encoding of the respective encoding paths; a calculation means 114 for calculating an inclination based on the relation of the distortion and the code amount; and an encoding path deriving means 115 for outputting the control information so that the total code amount of entire components is settled to be a target code amount or less, and the total code amount of the specified component is settled to be a prescribed maximum value or less on the basis of the inclination, the total code amount of the entire components, and the total code amount of the specified component. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

この発明は、フレーム内の特定成分への符号量配分を、指定された下限値以上または上限値以下に制限するレート制御が可能な画像符号化装置に関するものである。   The present invention relates to an image coding apparatus capable of rate control for limiting the code amount distribution to a specific component in a frame to a specified lower limit value or more or an upper limit value or less.

現在、インターネットを中心に静止画像符号化アルゴリズムJPEGが広く普及しているが、一方で次世代の符号化方式としてさらなる性能改善、機能付加の要求を背景として、1997年より新たにJPEG2000プロジェクトがISOとITUの合同機関によりスタートした。2000年12月には同JPEG2000アルゴリズムの基本方式を定めるパート1についてその主要な技術内容が確定した。以下に、勧告書(ISO/IEC 15444−1:2000)に従ってJPEG2000符号化アルゴリズムの基本方式の概略を説明する。   Currently, the still image coding algorithm JPEG is widespread mainly on the Internet, but on the other hand, the JPEG2000 project has been newly launched since 1997 against the background of further performance improvement and function addition as the next generation coding method. And started by a joint organization of ITU. In December 2000, the main technical content of Part 1 that defines the basic method of the JPEG2000 algorithm was finalized. The outline of the basic scheme of the JPEG2000 encoding algorithm will be described below according to the recommendation (ISO / IEC 154444-1: 2000).

まず、入力される画像信号は、ウェーブレット変換部で2次元のウェーブレット変換が施され、複数のサブバンドに帯域分割される。ここで、2次元のウェーブレット変換は1次元のウェーブレット変換の組み合わせとして実現される。つまり、垂直方向の一次元ウェーブレット変換を列毎に順次行う処理と水平方向の一次元ウェーブレット変換をライン毎に順次行う処理である。ここで、1次元のウェーブレット変換は、所定の特性を持つローパスフィルタとハイパスフィルタおよびダウンサンプラから構成されるものである。   First, an input image signal is subjected to two-dimensional wavelet transform by a wavelet transform unit, and is divided into a plurality of subbands. Here, the two-dimensional wavelet transform is realized as a combination of the one-dimensional wavelet transform. That is, a process of sequentially performing vertical one-dimensional wavelet transform for each column and a process of sequentially performing horizontal one-dimensional wavelet transform for each line. Here, the one-dimensional wavelet transform is composed of a low-pass filter, a high-pass filter, and a down sampler having predetermined characteristics.

こうして生成された2次元のウェーブレット変換係数は、低域成分をL、高域成分をHとし、水平方向の変換を1文字目、垂直副走査方向の変換を2文字目で表現することで、LL、HL、LH、HHと表現される。また、これらの帯域分割された成分はサブバンドと呼ばれている。ここで、水平、垂直方向の低域成分(LL成分)は再帰的にウェーブレット変換が施される。再帰的に施される各ウェーブレット変換の回数を分解レベルと称し、そのレベルは、LL、HL、LH、HHの前に記載される。即ち、ウェーブレット変換の分解回数2の場合には、最低解像度成分の分解レベルは2となり、反対に最高解像度成分のHL,LH,HHの分解レベルは1になる。   The two-dimensional wavelet transform coefficient generated in this way is expressed by expressing the low-frequency component as L, the high-frequency component as H, the horizontal conversion by the first character, and the vertical sub-scanning conversion by the second character. Expressed as LL, HL, LH, HH. These band-divided components are called subbands. Here, the horizontal and vertical low-frequency components (LL components) are recursively subjected to wavelet transform. The number of wavelet transforms recursively applied is called a decomposition level, and the level is described before LL, HL, LH, and HH. In other words, when the number of wavelet transform decompositions is 2, the decomposition level of the lowest resolution component is 2, whereas the decomposition level of HL, LH, and HH of the highest resolution component is 1.

次に、各サブバンドにおけるウェーブレット変換係数は、サブバンド毎に設定された量子化ステップサイズにより量子化される。   Next, the wavelet transform coefficient in each subband is quantized with a quantization step size set for each subband.

次に、各サブバンドの量子化後のウェーブレット変換係数をコードブロックと呼ばれる固定サイズの領域に分割した後、多値データからなるコードブロックを2値のビットプレーン表現に変換し、各ビットプレーンを3通りの符号化パス(Significant Propagation Decoding Pass,Magnitude Refinement Pass,Cleanup Pass)に分割する。   Next, after the wavelet transform coefficients after quantization of each subband are divided into fixed-size areas called code blocks, the code block consisting of multi-value data is converted into a binary bit plane representation, and each bit plane is converted to It is divided into three encoding passes (Significant Propagation Decoding Pass, Magnitude Refinement Pass, and Cleanup Pass).

3つの符号化パスから出力される2値信号は、それぞれの符号化パス毎にコンテクストモデリングが行われ、エントロピー符号化が行われる。   The binary signal output from the three coding passes is subjected to context modeling for each coding pass and subjected to entropy coding.

また、エントロピー符号化処理と並行して、各コードブロックに於いて符号化パス毎の符号量と歪情報を計算する。   In parallel with the entropy encoding process, the code amount and distortion information for each encoding pass are calculated in each code block.

最後に、ラグランジェの乗数法を用いて画質劣化(歪)を最小にしながら、目標とする符号サイズ以下に符号量を調整するレート制御が行われる。   Finally, rate control is performed to adjust the code amount to a target code size or less while minimizing image quality degradation (distortion) using the Lagrange multiplier method.

レート制御の方法は、標準化されているわけではなくアプリケーションに応じて任意の方法を使うことができるが、以下に勧告書(ISO/ITU 15444−1:2000)J.14.3に参考情報として記載されているレート制御部のメカニズムについて概略を説明する。   The rate control method is not standardized, and any method can be used according to the application, but the following is recommended by the recommendation (ISO / ITU 15444-1: 2000) An outline of the mechanism of the rate control unit described as reference information in 14.3 will be described.

この方法では、各コードブロックiにおける切り捨てポイントをni、各切捨てポイントまでの符号量をR(i,ni)、歪をD(i,ni)とした時、ラグランジェの乗数法を使い、次式(1)を最大にする切捨てポイントによって生ずる画面全体での総符号量Rが目標符号量Rmaxの範囲内であることを満足するまで変数λを調整する。
Σ(R(i,ni)−λD(i,ni)) (1)
In this method, when the truncation point in each code block i is ni, the code amount up to each truncation point is R (i, ni), and the distortion is D (i, ni), the Lagrange multiplier method is used. The variable λ is adjusted until the total code amount R in the entire screen generated by the truncation point that maximizes the expression (1) is within the target code amount Rmax.
Σ (R (i, ni) −λD (i, ni)) (1)

ここで、歪とは、ある符号化パスまでの符号を送った時に再生画像の平均二乗誤差が符号データを伝送しない時と比較してどれだけ減少したかを示すもので、厳密に言えば、歪の減少量ということになる。従って、符号化前は、歪Dは0、最終ビットプレーンまで符号化すると、歪Dは平均二乗誤差に等しくなる。   Here, the distortion indicates how much the mean square error of the reproduced image is reduced compared to when the code data is not transmitted when a code up to a certain coding pass is sent. Strictly speaking, This is the amount of distortion reduction. Therefore, before encoding, when distortion D is 0 and encoding is performed up to the final bit plane, distortion D becomes equal to the mean square error.

式(1)を最大にする切捨てポイントを見つけることは、各コードブロックの符号量Rと歪DをRD曲線としてグラフに表した時、その接線の傾きがλ−1となる切り捨てポイントを見つけることと等価である。2つのコードブロックc1、c2において、接線の傾きがλ−1となる切り捨てポイントがnc1、nc2で、その切捨てポイントまでの符号量がR(c1,nc1),R(c2,nc2)となる場合、このようなRを全てのコードブロックに対して加算しRmaxと比較する。これをコードブロック毎に見た場合、(R(i,ni)−λD(i,ni))を最大化する切捨てポイントniを次のように見つける必要がある。 Finding the truncation point that maximizes the expression (1) is to find the truncation point at which the slope of the tangent line becomes λ −1 when the code amount R and distortion D of each code block are represented as an RD curve. Is equivalent to In the two code blocks c1 and c2, the truncation points where the slope of the tangent is λ −1 are nc1 and nc2, and the code amounts up to the truncation points are R (c1, nc1) and R (c2, nc2) Such R is added to all code blocks and compared with Rmax. When this is seen for each code block, it is necessary to find a truncation point ni that maximizes (R (i, ni) −λD (i, ni)) as follows.

Set ni=0
For k=1,2,3,・・・
Set ΔR(i,k)=R(i,k)−R(i,ni)
and ΔD(i,k)=D(i,k)−D(i,ni)
If(ΔD(i,k)/ΔR(i,k))>λ−1 then set ni=k
Set ni = 0
For k = 1, 2, 3, ...
Set ΔR (i, k) = R (i, k) −R (i, ni)
and ΔD (i, k) = D (i, k) −D (i, ni)
If (ΔD (i, k) / ΔR (i, k))> λ −1 then set ni = k

ところが、このアルゴリズムでは、多数のλに対して前記処理を実行しなければ切捨てポイントniを求めることができない。そこで、傾きS(i,k)=ΔD(i,k)/ΔR(i,k)がkについて単調減少になるように予め補正しておく。具体的には、次のように処理を行う。   However, with this algorithm, the truncation point ni cannot be obtained unless the above processing is executed for a large number of λs. Therefore, the inclination S (i, k) = ΔD (i, k) / ΔR (i, k) is corrected in advance so as to monotonically decrease with respect to k. Specifically, the process is performed as follows.

(1)set Ni={n} (i.e. the set of all truncation point)
(2)Set p=0
(3)For k=1,2,3,・・・,kmax
If k belongs to Ni
Set ΔR(i,k)=R(i,k)−R(i,p),
and ΔD(i,k)=D(i,k)−D(i,p)
Set S(i,k)=ΔD(i,k)/ΔR(i,k)
If p≠0 and S(i,k)>S(i,p),
then remove p from Ni, and go to step (2)
Otherwise, set p=k
(1) set Ni = {n} (ie the set of all truncation point)
(2) Set p = 0
(3) For k = 1, 2, 3,..., Kmax
If k belongs to Ni
Set ΔR (i, k) = R (i, k) −R (i, p),
and ΔD (i, k) = D (i, k) −D (i, p)
Set S (i, k) = ΔD (i, k) / ΔR (i, k)
If p ≠ 0 and S (i, k)> S (i, p),
then remove p from Ni, and go to step (2)
Otherwise, set p = k

この処理により、与えられたλに対する切捨てポイントの最適化は、S(i,k)>λ−1 を満たすNiにおける最大のkとすればよい。 This process optimization truncation points for lambda given, may be the largest k in Ni satisfying S (i, k)> λ -1.

全てのコードブロックでこれらの情報の導出が完了したら、目標符号量Rmaxとなるような符号データを作成する。具体的には、あるλに対する総符号量Rsumに対してRsum≦Rmaxを満たす最大のRsumを与えるλを見つけることになる。ここで、あるλに対する総符号量は各コードブロックに於いて切捨てポイントを一意に求め、その切捨てポイントまでの符号データの総和を算出して初めてわかる。そこで、Rsum≦Rmaxを満たす最大のRsumを与えるλを見つけるには、通常は、λの複数の候補に対する総符号量を算出して、所望の値に近い総符号量を与えるλを収束演算により算出する。λが求まったら、そのλに対応する切捨てポイントまでの符号データを全てのコードブロックから集めて、更に各コードブロックにおける符号化パス数を付加情報として付け加え、最終的な符号データを構成する。こうして、目標符号量Rmaxのもとで歪みを最小とする符号データを生成することができる。   When the derivation of such information is completed for all the code blocks, code data is generated so that the target code amount Rmax is obtained. Specifically, λ that gives the maximum Rsum that satisfies Rsum ≦ Rmax with respect to the total code amount Rsum for a certain λ is found. Here, the total code amount for a certain λ can be found only after the cut point is uniquely determined in each code block and the sum of the code data up to the cut point is calculated. Therefore, in order to find λ that gives the maximum Rsum satisfying Rsum ≦ Rmax, generally, the total code amount for a plurality of candidates of λ is calculated, and λ that gives the total code amount close to a desired value is calculated by a convergence operation. calculate. When λ is obtained, the code data up to the cut-off point corresponding to the λ is collected from all the code blocks, and the number of coding passes in each code block is added as additional information to form the final code data. In this way, code data that minimizes distortion under the target code amount Rmax can be generated.

以上のようなJPEG2000国際標準規格は、ISOやITU−T等の標準化機関を通して入手することができる。また、JPEG2000の最新情報については、http://www.jpeg.orgを参照することにより入手することができる。   The JPEG2000 international standard as described above can be obtained through a standardization organization such as ISO or ITU-T. The latest information on JPEG2000 can be obtained by referring to http://www.jpeg.org.

また、この種の画像符号化装置として、総符号量が一定量オーバーした場合でも各ブロックへの符号量配分が均等になるようにしたものがある(例えば、特許文献1参照)。   Further, as this type of image encoding device, there is one in which the code amount distribution to each block is made uniform even when the total code amount exceeds a certain amount (see, for example, Patent Document 1).

また、量子化幅に依存しない付加的な符号量配分を考慮することで、局部的な符号配分量の不足を解消してフレーム毎の符号量適正化を図ったものがある(例えば、特許文献2参照)。   In addition, by considering additional code amount distribution that does not depend on the quantization width, there is a method that solves the shortage of local code distribution amount and optimizes the code amount for each frame (for example, Patent Documents). 2).

また、周波数特性を利用して符号量分配を決定するようにしたものがある(例えば、特許文献3参照)。   In addition, there is one in which code amount distribution is determined using frequency characteristics (see, for example, Patent Document 3).

また、画像の視覚的特性に応じてI,P及びBピクチャでの符号化により発生する情報量が画質的に最適になるように各符号化方法の目標情報量を算出し配分するようにしたものがある(例えば、特許文献4参照)。   Also, the target information amount of each encoding method is calculated and distributed so that the amount of information generated by encoding with I, P, and B pictures is optimized in accordance with the visual characteristics of the image. There are some (see, for example, Patent Document 4).

さらに、符号量対歪の傾きを計算する除算処理を効率化することにより高符号化処理を可能にするものがある(例えば、特許文献5参照)。   Furthermore, there is a technique that enables high coding processing by improving the efficiency of division processing for calculating the slope of code amount versus distortion (for example, see Patent Document 5).

特開平09−252477号公報JP 09-252477 A 特開平10−108179号公報JP-A-10-108179 特開2003−230162号公報JP 2003-230162 A 特開2005−303362号公報Japanese Patent Laying-Open No. 2005-303362 特開2005−109917号公報JP 2005-109917 A

前記のレート制御方法では、ある総符号量のもと画面全体で符号化歪が最小となる符号割り当てを行うため、画像によっては特定成分に大部分の符号が集中してしまい、デコーダによっては破綻を起こす可能性もある。逆に、画像によっては、特定成分の符号量が非常に少なくなり、たとえ画面全体で符号化歪を最小するという観点からは最適だとしても、部分的に主観画質が劣化するという可能性がある。   In the rate control method described above, code allocation that minimizes coding distortion over the entire screen with a certain total code amount is performed, so that most codes are concentrated on specific components depending on the image, and some decoders fail. May also occur. On the other hand, depending on the image, the code amount of the specific component is very small, and even if it is optimal from the viewpoint of minimizing coding distortion in the entire screen, there is a possibility that the subjective image quality will partially deteriorate. .

また、前記の方法で特定成分の符号量を制限する場合、収束演算により符号量配分を決定した後、特定成分の符号量が規定の最大値から最小値の範囲を外れていた場合には、再度、特定成分を除いて収束演算により符号量配分を再度決定する必要がある。特定成分が複数ある場合には、符号量配分のやり直しの回数がさらに増え、演算量が増大するという問題点があった。   In addition, when the code amount of the specific component is limited by the above method, after the code amount distribution is determined by the convergence calculation, when the code amount of the specific component is out of the minimum value range from the specified maximum value, Again, it is necessary to determine the code amount distribution again by the convergence calculation excluding the specific component. When there are a plurality of specific components, there is a problem that the number of code amount allocations is further increased and the amount of calculation increases.

この発明は前記のような問題点を解決するためになされたもので、各コードブロックでその傾きがパラメータλ−1より大きい符号化パスだけを符号化する処理をλの値を変えて順に行っていく中で、特定成分の符号量を監視することにより1パスでの符号化とレート制御を行い、演算量を低減し、極端な符号量の偏りを回避することができる画像符号化装置を得ることを目的とする。 The present invention has been made to solve the above-described problems. In each code block, the process of encoding only the coding pass whose slope is larger than the parameter λ −1 is sequentially performed by changing the value of λ. In this process, an image encoding device capable of performing encoding and rate control in one pass by monitoring the code amount of a specific component, reducing the amount of calculation, and avoiding an extreme code amount bias. The purpose is to obtain.

この発明に係る画像符号化装置は、2次元信号を複数のコードブロックに分割し、コードブロックをビットプレーンに分解し、各ビットプレーンを一つ以上の符号化パスに分割し、制御情報に基づいて符号化パス毎に符号化して符号データを出力するエントロピー符号化手段と、前記エントロピー符号化手段からの符号データを格納する符号メモリと、レート制御に必要な歪と符号量の計算に基づいて符号化パスの続行及び終了を判断するレート制御情報抽出手段と、前記レート制御情報抽出手段からの制御情報に基づいて符号化終了パスまでの符号データを前記符号メモリから抽出し符号ストリームとして出力する符号データ抽出手段とを備え、前記レート制御情報抽出手段は、各符号化パスの符号化により生じる歪を算出する歪計算手段と、各符号化パスの符号量を算出する符号量計算手段と、前記歪計算手段からの歪と前記符号量計算手段からの符号量とから各コードブロックにおける歪と符号量の関係に基づく傾きを算出する傾き計算手段と、前記傾き、全成分の総符号量、特定成分の総符号量に基づいて全成分の総符号量が目標符号量以下でかつ特定成分の総符号量が所定の最大値以下に収まるよう各符号化を制御する制御情報を前記エントロピー符号化手段及び前記符号データ抽出手段に出力する符号化パス導出手段とを有するものである。   The image encoding device according to the present invention divides a two-dimensional signal into a plurality of code blocks, decomposes the code block into bit planes, divides each bit plane into one or more encoding passes, and based on control information An entropy encoding means for encoding and outputting code data for each encoding pass, a code memory for storing code data from the entropy encoding means, and calculation of distortion and code amount necessary for rate control Rate control information extraction means for determining the continuation and termination of the coding pass, and code data up to the coding end pass are extracted from the code memory based on the control information from the rate control information extraction means and output as a code stream A rate calculation information extracting unit that calculates a distortion caused by encoding of each encoding pass. A code amount calculating means for calculating the code amount of each coding pass, and a slope based on the relationship between the distortion and the code amount in each code block from the distortion from the distortion calculating means and the code amount from the code amount calculating means. Inclination calculation means for calculating, based on the inclination, the total code amount of all components, and the total code amount of specific components, the total code amount of all components is equal to or less than the target code amount, and the total code amount of specific components is a predetermined maximum value The encoding path deriving unit outputs control information for controlling each encoding to the entropy encoding unit and the code data extraction unit so as to be within the following range.

この発明によれば、各コードブロックでその傾きがパラメータλ−1より大きい符号化パスだけを符号化する処理をλの値を変えて順次行う中で、特定成分の符号量を監視することにより1パスでの符号化とレート制御を行い、演算量を低減し、極端な符号量の偏りを回避することができる。 According to the present invention, the code amount of the specific component is monitored while the process of encoding only the coding pass whose slope is larger than the parameter λ −1 in each code block is sequentially performed by changing the value of λ. It is possible to perform encoding and rate control in one pass, reduce the amount of calculation, and avoid an extreme bias in code amount.

実施の形態1.
この発明の実施の形態では、符号化を実行するにあたり、特定成分の符号量が予め指定した最大値以内とするようにレート制御する方法を示す。ここで、特定成分とは、RGBの3つのカラー成分のうちR成分のみ、最低解像度成分のみなどのように指定することを意味する。
Embodiment 1 FIG.
The embodiment of the present invention shows a method for rate control so that the code amount of a specific component is within a maximum value specified in advance when encoding is performed. Here, the specific component means that only the R component, the lowest resolution component, etc. are specified among the three color components of RGB.

図1は、この発明の実施の形態1に係る画像符号化装置の構成を示すブロック図である。図1に示される画像符号化装置は、入力画像信号に対し2次元ウェーブレット変換を再帰的に施すウェーブレット変換手段101と、ウェーブレット変換手段101によって生成されたウェーブレット変換係数を予め設定された量子化ステップサイズで量子化処理する量子化手段102と、量子化されたウェーブレット変換係数をビットプレーンに分解し2値算術符号化するエントロピー符号化手段103と、エントロピー符号化された符号データを一時的に格納する符号メモリ104と、レート制御に必要な歪と符号量を計算し、どのパスまで符号化を実行し、どのパスで符号化を終了するかを判断するレート制御情報抽出手段105と、レート制御情報抽出手段105から出力される符号化終了パスに応じ符号化終了パスまでの符号データを符号メモリ104から抽出し、符号ストリームとして出力する符号データ抽出手段106とを備える。   FIG. 1 is a block diagram showing a configuration of an image coding apparatus according to Embodiment 1 of the present invention. 1 includes a wavelet transform unit 101 that recursively performs two-dimensional wavelet transform on an input image signal, and a quantization step in which wavelet transform coefficients generated by the wavelet transform unit 101 are set in advance. Quantization means 102 that performs quantization processing by size, entropy encoding means 103 that decomposes the quantized wavelet transform coefficients into bit planes and performs binary arithmetic encoding, and temporarily stores the entropy encoded code data A code memory 104, a rate control information extraction unit 105 that calculates distortion and code amount necessary for rate control, determines to which path encoding is to be performed, and which path is to be encoded, rate control Code data up to the encoding end pass according to the encoding end pass output from the information extraction means 105. Extracting from the code memory 104, and a code data extracting means 106 for output as a code stream.

図2は、図1に示されるレート制御情報抽出手段105の構成を示すブロック図である。図2に示すように、レート制御情報抽出手段105は、量子化手段102からの出力に基づいて符号化パス毎に歪を計算する歪計算手段111と、エントロピー符号化手段103からの出力に基づいて符号化パス毎に符号量をカウントする符号量計算手段112と、歪計算手段111からの歪データと符号量計算手段112からの符号量データ及びその傾き等を符号化パス毎に記憶するレート歪メモリ113と、符号量対歪の傾きを算出する傾き計算手段114と、符号化パスで符号化を継続するか否かを判断し、符号化すべき符号化パスを導出してその結果としての制御情報をエントロピー符号化手段103及び符号データ抽出手段106に出力する符号化パス導出手段115とを有する。   FIG. 2 is a block diagram showing the configuration of the rate control information extracting means 105 shown in FIG. As shown in FIG. 2, the rate control information extraction unit 105 is based on the distortion calculation unit 111 that calculates distortion for each coding pass based on the output from the quantization unit 102 and the output from the entropy encoding unit 103. A code amount calculation unit 112 that counts the code amount for each coding pass, and a rate at which the distortion data from the distortion calculation unit 111, the code amount data from the code amount calculation unit 112, the inclination thereof, and the like are stored for each coding pass. The distortion memory 113, the inclination calculation means 114 for calculating the inclination of the code amount versus distortion, and whether or not to continue the encoding in the encoding pass, the encoding pass to be encoded is derived and the result is A coding path deriving unit 115 that outputs the control information to the entropy coding unit 103 and the code data extraction unit 106;

次に動作について説明する。まず、図1において、例えば、イメージスキャナやデジタルカメラ、もしくはネットワークや記憶媒体等の画像入力装置(図示せず)からの画像信号は、ウェーブレット変換手段101で1次元のウェーブレット変換が垂直方向、水平方向の両方向に対して2次元的に施され、サブバンドに帯域分割される。ここで、1次元のウェーブレット変換は、低域通過フィルタと高域通過フィルタのフィルタバンクによって実現される。図3は、図1に示されるウェーブレット変換手段101により、2次元のウェーブレット変換を2回再帰的に施した例である。図中、先頭の数字は分解レベルを表しており、続くLまたはHの2つの英字は、水平方向、垂直方向のフィルタの種類を表している。Lは低域通過フィルタを、Hは高域通過フィルタを施した結果を表している。また、「再帰的に」ウェーブレット変換を2回施すと言うことは、まず、第1回目のウェーブレット変換により、1LL,1HL,1LH,1HHが生成されると、その1LLに対して2回目のウェーブレット変換を施し、2LL,2HL,2LH,2HHを生成することを意味している。   Next, the operation will be described. First, in FIG. 1, for example, an image signal from an image input device (not shown) such as an image scanner, a digital camera, or a network or a storage medium is converted into a vertical and horizontal one-dimensional wavelet transform by a wavelet transform unit 101. It is applied two-dimensionally in both directions, and is divided into subbands. Here, the one-dimensional wavelet transform is realized by a filter bank of a low-pass filter and a high-pass filter. FIG. 3 shows an example in which two-dimensional wavelet transformation is recursively performed twice by the wavelet transformation means 101 shown in FIG. In the figure, the first number represents the decomposition level, and the following two alphabetic characters L or H represent the types of filters in the horizontal and vertical directions. L represents a low-pass filter, and H represents the result of applying a high-pass filter. In addition, “recursively” performing wavelet transform twice means that when 1LL, 1HL, 1LH, and 1HH are first generated by the first wavelet transform, the second wavelet transform is performed on the 1LL. This means that 2LL, 2HL, 2LH, and 2HH are generated by conversion.

量子化処理手段102では、サブバンド毎に設定された量子化ステップサイズによりウェーブレット変換係数を量子化する。   The quantization processing means 102 quantizes the wavelet transform coefficient with the quantization step size set for each subband.

エントロピー符号化手段103では、各サブバンドのウェーブレット変換係数をコードブロックと呼ばれる固定サイズの矩形領域に分割した後、多値データからなるそれぞれのコードブロックを2値のビットプレーンに変換する。通常、このコードブロックの大きさは、64×64、32×32などのサイズに設定される。   The entropy encoding unit 103 divides the wavelet transform coefficients of each subband into fixed-size rectangular areas called code blocks, and then converts each code block made up of multi-value data into a binary bit plane. Usually, the size of the code block is set to a size of 64 × 64, 32 × 32, or the like.

ここで、図4を用いてビットプレーンの分解について詳しく説明する。図4(a)は、4×4のコードブロックの一例を表している。これらのデータに対して、正負を表す1ビットの信号と絶対値の表現に変換し、それらのデータを縦方向に2進表現した結果を各行単位に並べたものが図4(b)となる。次に、図4(b)に対して同一のビット番号のビットを集めたものが図4(c)となる。ここで、最下位ビット(LSB:Least Significant Bit)を第0ビット、最上位ビット(MSB:Most Significant Bit)を第3ビットとした時、第0ビットで集めたものを第0ビットプレーン、第1ビットで集めたものを第1ビットプレーン、第2ビットで集めたものを第2ビットプレーン、第3ビットで集めたものを第3ビットプレーンとしている。これ以外にも正負を表すビットの集まりとして符号ビットプレーンを作成する。   Here, the decomposition of the bit plane will be described in detail with reference to FIG. FIG. 4A shows an example of a 4 × 4 code block. FIG. 4B shows the result of converting these data into a 1-bit signal representing the positive and negative and the representation of the absolute value, and arranging the data in binary representation in the vertical direction for each row. . Next, FIG. 4C shows a collection of bits having the same bit numbers as in FIG. 4B. Here, when the least significant bit (LSB) is the 0th bit and the most significant bit (MSB) is the 3rd bit, the 0th bit plane is a collection of the 0th bit. A collection of 1 bits is a first bit plane, a collection of 2 bits is a second bit plane, and a collection of 3 bits is a third bit plane. In addition to this, a sign bit plane is created as a collection of bits representing positive and negative.

エントロピー符号化手段103では、ビットプレーン内の各ビットを、そのコンテクストに応じて、3通りの符号化パス、シグニフィカントプロパゲーションデコーディングパス(Significant Propagation Decoding Pass)、マグニチュードリファインメントパス(Magnitude Refinement Pass)、クリーンナップパス(Cleanup Pass)に分割する。   In the entropy encoding means 103, each bit in the bit plane is divided into three types of encoding pass, Significant Propagation Decoding Pass, and Magnitude Refinement Pass according to the context. And divide it into Cleanup Pass.

エントロピー符号化手段103は、次に、それぞれの符号化パス毎に算術符号化のためのコンテクストモデリングを行う。但し、MSBプレーンから数えて全て0となるビットプレーンは、コンテクストモデリング、符号化は行わず、全て0のビットプレーンの数をヘッダに書くだけとする。そして、最初に1が出現したビットプレーンについては、全てのビットがクリーンナップパスに分類されるが、その他のビットプレーンについては、前述したように3種類の符号化パスに分類される。   Next, the entropy encoding means 103 performs context modeling for arithmetic encoding for each encoding pass. However, bit planes that are all 0 from the MSB plane are not subjected to context modeling and encoding, and only the number of all 0 bit planes is written in the header. For the bit plane in which 1 appears first, all bits are classified as a cleanup pass, while the other bit planes are classified into three types of encoding passes as described above.

図5には、コードブロックのビットプレーン数が6で、有効なビットプレーン数が4の場合の例を示している。コンテクストモデリングが終了すると、算術符号によるエントロピー符号化が行われる。   FIG. 5 shows an example in which the number of bit planes in the code block is 6 and the number of effective bit planes is 4. When the context modeling is completed, entropy coding using arithmetic codes is performed.

エントロピー符号化処理と並行して、レート制御情報抽出手段105内の歪計算手段111では、各コードブロックにおいてあるパスの符号化が終了する度にその符号化パスと一つ前の前符号化パスにおける歪Dの差分ΔD、その累積値D=D+ΔDを計算する。ここで、歪とは、ある符号化パスまでの符号を送った時に再生画像の平均二乗誤差が符号データを伝送しない時と比較してどれだけ減少したかを示すもので、厳密に言えば符号化歪の減少量ということになる。従って、最終ビットプレーンまで差分ΔDを累積すると、その平均二乗誤差に等しくなる。差分ΔDの計算方法は、JPEG2000勧告書(ISO/ITU 15444−1:2000)AnnexJに紹介されている手法などを使用することが可能である。   In parallel with the entropy encoding process, the distortion calculation unit 111 in the rate control information extraction unit 105 performs the encoding pass and the previous previous encoding pass every time encoding of a certain path in each code block is completed. The difference ΔD of the distortion D at, and its accumulated value D = D + ΔD are calculated. Here, the distortion indicates how much the mean square error of the reproduced image is reduced when a code up to a certain coding pass is transmitted compared to when the code data is not transmitted. That is, the amount of reduction in deformation. Therefore, accumulating the difference ΔD up to the last bit plane is equal to the mean square error. As a calculation method of the difference ΔD, a method introduced in Annex J of JPEG2000 recommendation (ISO / ITU 15444-1: 2000) can be used.

また、前記歪計算手段111の処理と同時に、符号量計算手段112では、各コードブロックにおいてあるパスの符号化が終了する度にその符号化パスでの出力バイト数ΔR、その累積値R=R+ΔRを算出する。これらの歪D、符号量Rは、タイル番号、分解レベル、サブバンド、コードブロック、符号化パス等々のインデックスが付与された後、レート歪メモリ113に格納される。   Simultaneously with the processing of the distortion calculation unit 111, the code amount calculation unit 112 causes the number of output bytes ΔR in the coding pass and the accumulated value R = R + ΔR each time encoding of a certain path is completed in each code block. Is calculated. These distortion D and code amount R are stored in the rate distortion memory 113 after being assigned indexes such as tile numbers, decomposition levels, subbands, code blocks, and encoding passes.

また、傾き計算手段114では、符号量データR、歪データDからその傾きSを計算し、レート歪メモリ113に対して、歪データ、符号量データと同一の符号化パスの傾きであることがわかる位置に格納する。これにより、レート歪メモリ113には、図6に示すようにデータが格納される。   In addition, the slope calculation unit 114 calculates the slope S from the code amount data R and distortion data D, and the rate distortion memory 113 has the same coding path slope as the distortion data and code amount data. Store it in a location where it can be seen. As a result, data is stored in the rate distortion memory 113 as shown in FIG.

さらに、符号化パス導出手段115では、傾きS、パラメータλ(以下、レート制御パラメータ)から、そのコードブロックでの符号化を更なるパスまで続行するか否かを判断し、判断結果をエントロピー符号化手段103に送る。また、符号化パス導出手段115は、符号化対象コードブロックが特定成分に含まれ、特定成分の総符号量が指定された最大値に達していれば、そのコードブロックの符号化はスキップするようエントロピー符号化手段103に指示する。   Further, the coding path deriving unit 115 determines whether or not to continue the encoding in the code block from the slope S and the parameter λ (hereinafter, rate control parameter) to a further path, and the determination result is an entropy code. Sent to the digitizing means 103. Also, the encoding pass deriving unit 115 skips the encoding of the code block if the encoding target code block is included in the specific component and the total code amount of the specific component has reached the specified maximum value. Instructs the entropy encoding means 103.

符号化を続行するならば、エントロピー符号化手段103では、次のパスを符号化し、レート制御情報抽出手段105では、その符号化パスでの出力バイト数ΔR、歪Dの差分ΔDから、傾き計算手段114において傾きSを算出し、再度、符号化を更なるパスまで続行するか否かを判断する。符号化を続行しないならば、符号化終了の情報をエントロピー符号化手段103に、符号化終了パスを符号データ抽出手段106に送る。レート制御に関わる符号化の制御については、後でフローチャートを使って詳しく説明する。   If the encoding is continued, the entropy encoding unit 103 encodes the next pass, and the rate control information extraction unit 105 calculates the slope from the output byte number ΔR and distortion D difference ΔD in the encoding pass. The means 114 calculates the slope S and again determines whether or not to continue the encoding until a further pass. If the encoding is not continued, the encoding end information is sent to the entropy encoding means 103 and the encoding end pass is sent to the code data extraction means 106. The encoding control related to the rate control will be described in detail later using a flowchart.

符号データ抽出手段106では、符号メモリ104から、各コードブロックにおける符号化終了パスから定まるパスまでの符号データを読み込み、各コードブロックに含まれる符号化パス数を付加情報として付け加えた後、それらを指定された順に並べて、所定のヘッダ情報を付加した上で符号ストリームとして出力する。   The code data extracting means 106 reads code data from the code memory 104 from the encoding end pass to the determined path from the code memory 104, adds the number of encoding passes included in each code block as additional information, and then adds them. Arrange in the specified order, add predetermined header information, and output as a code stream.

ここで、レート制御情報抽出手段105、エントロピー符号化手段103における処理の詳細を説明する。この処理方法では、予めレート制御パラメータλの候補を複数用意しておき、あるパラメータλを満足する符号化パスまでの符号化を全コードブロックに関して行う。その際、符号量が目標量に達しているか否かを判断して、達していれば符号化終了、達していなければ次のパラメータλの候補を設定して、そのパラメータλを全コードブロックが満足するまで符号化を再度実行する。ここで、全コードブロックの総符号量だけでなく、予め指定した特定成分のコードブロックの総符号量も監視する。もし、特定成分の符号量が予め指定した最大値に達した場合には、特定成分への符号割り当てはその最大値として確定し、それ以降、特定成分への符号量は増やさないものとする。このように、パラメータλを徐々に変化させて符号化を行う処理を総符号量が目標量に達するまで行う。あるレート制御パラメータλを満足するか否かは、各パスの終了時点でRD曲線の傾きSを算出し、傾きSがλ−1に達したか否かで判断する。 Here, details of processing in the rate control information extraction unit 105 and the entropy encoding unit 103 will be described. In this processing method, a plurality of rate control parameter λ candidates are prepared in advance, and encoding is performed for all code blocks up to an encoding pass that satisfies a certain parameter λ. At that time, it is determined whether or not the code amount has reached the target amount. If it has reached, the encoding is completed. If not, the next parameter λ candidate is set, and the parameter λ is set for all code blocks. Encode again until satisfied. Here, not only the total code amount of all code blocks but also the total code amount of code blocks of a specific component designated in advance is monitored. If the code amount of the specific component reaches the maximum value designated in advance, the code allocation to the specific component is determined as the maximum value, and thereafter, the code amount to the specific component is not increased. In this way, the process of encoding by gradually changing the parameter λ is performed until the total code amount reaches the target amount. Whether or not a certain rate control parameter λ is satisfied is determined by calculating the slope S of the RD curve at the end of each path and determining whether or not the slope S has reached λ −1 .

以下、符号化すべきパスの決定方法を、主にレート制御情報抽出手段105内の符号化パス導出手段115の動作内容である、図7に示すフローチャートを参照して説明する。レート制御パラメータの候補λ(t)は、予め以下のように設定しておく。
λ(t)={λ(0),λ(1),λ(2),・・・,λ(tmax)}
(λ(t)<λ(t+1))
Hereinafter, a method for determining a path to be encoded will be described with reference to a flowchart shown in FIG. 7 which is mainly an operation content of the encoded path deriving unit 115 in the rate control information extracting unit 105. The rate control parameter candidate λ (t) is set in advance as follows.
λ (t) = {λ (0), λ (1), λ (2),..., λ (tmax)}
(Λ (t) <λ (t + 1))

また、レート制御パラメータλのインデックスtの初期値をt=0(t=0〜tmax)、コードブロックのインデックスi=0(i=0〜imax)、総符号量のカウンタRsum=0,特定成分の総符号量のカウンタPsum=0,各コードブロックにおける符号化パスを記憶する変数k(i)を全てコードブロックについて−1(ゼロビットプレーンをスキップした次のパスのインデックスが0、k(i)=−1〜kmax、カウンタの都合上、初期値はk(i)=−1とする)とする。   The initial value of the index t of the rate control parameter λ is t = 0 (t = 0 to tmax), the code block index i = 0 (i = 0 to imax), the total code amount counter Rsum = 0, the specific component The total code amount counter Psum = 0, the variable k (i) for storing the coding pass in each code block is all −1 for the code block (the index of the next pass skipping the zero bit plane is 0, k (i ) = − 1 to kmax, and the initial value is k (i) = − 1 for the convenience of the counter.

なお、ブロック図にそのメモリを図示はしないが、k(i)はコードブロック毎に記憶する変数であり、レート制御パラメータのインデックスt、コードブロックのインデックスi、総符号量のカウンタRsum、Psumは全コードブロックで共通な変数とする。   Although the memory is not shown in the block diagram, k (i) is a variable stored for each code block. The index t of the rate control parameter, the index i of the code block, and the counters Rsum and Psum of the total code amount are Variables common to all code blocks.

また、あるコードブロックで符号化を更に進めるか否かを示す更新フラグをCflag(i)=1(i=0〜imax)とする。最初は、全ての符号化ブロックでレート制御パラメータλのインデックスtをインクリメントし、符号化途中で特定成分の総符号量が指定の最大値を越えた場合には、特定成分に属する符号化ブロックの更新フラグを0とし、それ以降、符号化を行わないようにする。目標総符号量Rmax、特定成分符号量の最大値Pmaxは予め指定され、符号化パス導出手段115内部に記憶しておくものとする。   In addition, an update flag indicating whether or not the encoding is further advanced in a certain code block is Cflag (i) = 1 (i = 0 to imax). Initially, the index t of the rate control parameter λ is incremented for all coding blocks, and when the total code amount of the specific component exceeds the specified maximum value during coding, the coding block belonging to the specific component The update flag is set to 0, and encoding is not performed thereafter. It is assumed that the target total code amount Rmax and the maximum value Pmax of the specific component code amount are specified in advance and stored in the coding path deriving unit 115.

まず、ステップ701において、更新フラグCflag(i)を使いコードブロックiで次の符号化パスを符号化するか否かを判定する。最初は、すべてのコードブロックで符号化を行うが、特定成分の符号量が指定した符号量を超えた後には、特定成分に属するコードブロックの更新フラグを0として、それ以上、レート制御パラメータを更新しないようにする。ステップ702において、更新フラグCflag(i)が1の場合には、符号化対象となる符号化パスをk(i)に設定し、ステップ703において、コードブロックiの符号化パスk(i)を符号化する。   First, in step 701, it is determined whether or not the next encoding pass is to be encoded with the code block i using the update flag Cflag (i). Initially, encoding is performed for all code blocks. After the code amount of the specific component exceeds the specified code amount, the update flag of the code block belonging to the specific component is set to 0, and the rate control parameter is set further. Do not update. In step 702, when the update flag Cflag (i) is 1, the encoding pass to be encoded is set to k (i), and in step 703, the encoding pass k (i) of the code block i is set. Encode.

符号化後、歪計算手段111で算出したその符号化パスと一つ前の前符号化パスにおける歪Dの差分ΔD、符号量計算手段112で算出したその符号化パスでの符号量ΔRなど、レート歪メモリ113に保存されたレートと歪の関係を使い、ステップ704において、パスk(i)の傾きS(i,k(i))を算出する。   After encoding, the difference ΔD between the encoding pass calculated by the distortion calculation unit 111 and the previous previous encoding pass ΔD, the code amount ΔR in the encoding pass calculated by the code amount calculation unit 112, etc. Using the relationship between the rate and distortion stored in the rate distortion memory 113, the slope S (i, k (i)) of the path k (i) is calculated in step 704.

ステップ705において、特定成分の総符号量Psumを算出する。図には示さないが、各コードブロックが特定成分に属するか否かを判定する情報を符号化パス導出手段115内部に有しており、特定成分のコードブロックが符号化されるたびに、符号化パス導出手段115で特定成分の総符号量Psumに符号化対象となる符号化パスの符号量ΔRを加算することにより、特定成分の総符号量を算出する。ステップ706においては、符号化パス導出手段115で総符号量Rsumに符号化対象となる符号化パスの符号量ΔRを加算することにより、総符号量を算出する。   In step 705, the total code amount Psum of the specific component is calculated. Although not shown in the figure, information for determining whether or not each code block belongs to a specific component is included in the coding path deriving means 115, and each time a code block of a specific component is encoded The total code amount of the specific component is calculated by adding the code amount ΔR of the encoding pass to be encoded to the total code amount Psum of the specific component by the conversion path deriving unit 115. In step 706, the coding pass deriving unit 115 adds the code amount ΔR of the coding pass to be coded to the total code amount Rsum, thereby calculating the total code amount.

次に、ステップ707において、特定成分の符号量Psumと特定成分符号量の最大値Pmaxとを比較する。Psum>Pmaxならば、ステップ708において、特定成分に属する全てのコードブロックについてその更新フラグをCflag=0として、これ以降、特定成分のコードブロックについて符号化を行わないようにする。また、パスk(i)で最大値Pmaxを越えたので、現コードブロックの最終符号化パスを除くために、ステップ709において、最終符号化パスのインデックスをk(i)−1とし、総符号量のカウンタから最終符号化パスの符号量ΔRを差し引く。   Next, in step 707, the code amount Psum of the specific component is compared with the maximum value Pmax of the specific component code amount. If Psum> Pmax, in step 708, the update flag is set to Cflag = 0 for all code blocks belonging to the specific component, and thereafter, the code block of the specific component is not encoded. Since the maximum value Pmax is exceeded in pass k (i), in order to exclude the final coding pass of the current code block, in step 709, the index of the final coding pass is set to k (i) -1, and the total code The code amount ΔR of the final coding pass is subtracted from the amount counter.

もし、Psum≦Pmaxならば、このまま更新フラグの変更は行わずに符号化を続行する。ステップ710において、総符号量Rsumを目標総符号量Rmaxと比較し、総符号量Rsumが目標総符号量Rmaxに達していたならば、符号化はここの時点で終了し、各コードブロックで、どのパスまで符号化したかを示す情報k(i)を符号データ抽出手段106に送る。ステップ712では、パスk(i)で最大値Pmaxを越えたので、現コードブロックの最終符号化パスを除くために、最終符号化パスのインデックスをk(i)−1とする。   If Psum ≦ Pmax, encoding is continued without changing the update flag. In step 710, the total code amount Rsum is compared with the target total code amount Rmax. If the total code amount Rsum has reached the target total code amount Rmax, the encoding ends at this point, and in each code block, Information k (i) indicating to which path is encoded is sent to the code data extraction means 106. In step 712, since the maximum value Pmax is exceeded in pass k (i), the index of the final coding pass is set to k (i) -1 in order to exclude the final coding pass of the current code block.

総符号量Rsumが目標総符号量Rmaxに達していないならば、ステップ711において、現符号化パスでの傾きS(i,k(i))と傾き閾値であるλ(t)−1との大小を比較し、傾きSが大きければ、さらに次のパスを符号化する(ステップ711→ステップ702)。傾きSがλ(t)−1未満になったならば、符号化済みのパスの符号データをメモリに一旦保存し、このコードブロックの符号化を中断し、コードブロックのインデックスiをインクリメントして、次のコードブロックの符号化に処理を移す(ステップ711→ステップ713→ステップ714→ステップ701)。フローチャートには示さないが、ここで、符号化パスがそのコードブロックの最終符号化パスであった場合にも、次のコードブロックの処理に移るものとする。 If the total code amount Rsum does not reach the target total code amount Rmax, in step 711, the slope S (i, k (i)) in the current coding pass and the slope threshold value λ (t) −1 are calculated. If the slope S is large, the next pass is encoded (step 711 → step 702). If the slope S is less than λ (t) −1 , the encoded path code data is temporarily stored in the memory, the encoding of this code block is interrupted, and the code block index i is incremented. Then, the processing shifts to encoding of the next code block (step 711 → step 713 → step 714 → step 701). Although not shown in the flowchart, it is assumed here that even when the encoding pass is the final encoding pass of the code block, the processing of the next code block is performed.

次のコードブロックでも同様に傾きがλ(t)−1未満となるまで符号化を行う。これを全てのコードブロックに対して行った後、パラメータλのインデックスtをインクリメントして傾き閾値λ(t)−1を減少させ、λを次の候補に設定して、再度全コードブロックの符号化を傾きがλ(t)−1未満となるまで行う(ステップ711→ステップ713→ステップ715→ステップ701)。なお、ステップ715において、λ(t)を更新しても、S(i、k(i))<λ(t)−1となる、つまり、更新後のλが既に符号化済みの符号化パスにおける傾きより大きい場合がある。その場合、フローチャートには示していないが、ステップ713までジャンプしてそのブロックの符号化をパスし、次のコードブロックの符号化に移る。 In the next code block as well, encoding is performed until the slope becomes less than λ (t) −1 . After this is performed for all the code blocks, the index t of the parameter λ is incremented to decrease the slope threshold λ (t) −1 , λ is set as the next candidate, and the codes of all the code blocks are again set. Until the slope becomes less than λ (t) −1 (step 711 → step 713 → step 715 → step 701). In step 715, even if λ (t) is updated, S (i, k (i)) <λ (t) −1 , that is, the updated λ is already encoded. May be greater than the slope at. In this case, although not shown in the flowchart, the process jumps to step 713 to pass the encoding of the block, and proceeds to the encoding of the next code block.

次に、どのようにλを変化させてレート配分を決定するかを図8の例を使って示す。この例では、RGB3成分からなる画像データを総符合量の目標値Rmax=100として符号化を行う。R、G、B各成分の総符号量をそれぞれR0、R1、R2とし、R成分の符号量の最大値Pmaxを40とする。   Next, how the rate distribution is determined by changing λ will be described using the example of FIG. In this example, image data composed of RGB three components is encoded with the total code amount target value Rmax = 100. The total code amounts of the R, G, and B components are R0, R1, and R2, respectively, and the maximum value Pmax of the R component code amount is 40.

最初にλ−1=100からスタートし、各コードブロックで傾きがS<λ−1=100となるまで符号化を続ける。これを全コードブロックに対して実行した段階で総符号量Rsum=55であった。総符号量Rsumが目標総符号量Rmaxに満たないので、λを一段階下げλ−1=90として、再度、各コードブロックで傾きがS<λ−1=90となるまで符号化を続ける。これを全コードブロックに対して実行した段階で総符号量Rsum=62であった。 Initially starting from lambda -1 = 100, continued coding until the slope becomes S <λ -1 = 100 in each code block. When this was executed for all code blocks, the total code amount Rsum = 55. Since the total amount of code Rsum is less than the target total code amount Rmax, the lambda as a step down lambda -1 = 90, again, it continued coding until the slope becomes S <λ -1 = 90 in each code block. When this was executed for all code blocks, the total code amount Rsum = 62.

まだ、総符号量Rsumが目標総符号量Rmaxに満たないので、λを一段階下げλ−1=80とした時、途中でR成分の符号量がその最大値40を超えてしまったので、R成分に属するコードブロックについてはそれ以降符号化を行わないこととする。特定成分について最大値40を越えない最大の符号量は39であった。G成分、B成分については符号化を続行し、R成分を除く全コードブロックで傾きSがS<λ−1=80を満たすまで符号化を続ける。λ−1=80符号化が終了した段階で総符号量Rsum=69であった。表中、更新を停止したために値が変わらない数値を網掛けで示す。 Since the total code amount Rsum is still less than the target total code amount Rmax, when λ is lowered by one step and λ −1 = 80, the code amount of the R component has exceeded its maximum value 40 on the way. The code block belonging to the R component is not encoded thereafter. The maximum code amount that does not exceed the maximum value 40 for the specific component was 39. Encoding is continued for the G component and B component, and is continued until the slope S satisfies S <λ −1 = 80 in all code blocks excluding the R component. λ −1 = 80 When the encoding was completed, the total code amount Rsum = 69. In the table, the values that do not change because the update is stopped are shaded.

まだ、総符号量Rsumが目標総符号量Rmaxに満たないので、λを次の値70として、符号化を行う。この場合も、R成分については更なる符号化は行わない。G成分、B成分については全コードブロックで傾きSがS<70を満たすまで符号化を続ける。λ−1=70符号化が終了した段階で総符号量Rsum=79であった。 Since the total code amount Rsum is still less than the target total code amount Rmax, encoding is performed with λ as the next value 70. In this case as well, no further encoding is performed on the R component. Encoding for the G component and B component is continued until the slope S satisfies S <70 in all code blocks. λ −1 = 70 When the encoding was completed, the total code amount Rsum = 79.

これでもRsumが目標総符号量Rmaxに満たないので、λを次の値60として、符号化を行う。この符号化の最中、総符号量がRmax=100に達したので、その時点で符号化を終了する。目標総符号量Rmaxを越えない最大の符号量は、R1=30,R2=30であった。以上の処理により、R,G,B各成分への符号量割り当ては、それぞれ、39,30,30、総符号量は99となる。   Even in this case, since Rsum is less than the target total code amount Rmax, encoding is performed with λ as the next value 60. During this encoding, since the total code amount has reached Rmax = 100, the encoding ends at that time. The maximum code amount not exceeding the target total code amount Rmax was R1 = 30 and R2 = 30. Through the above processing, the code amount allocation to the R, G, and B components is 39, 30, and 30, respectively, and the total code amount is 99.

本実施の形態1では、特定成分の符号量が最大符号量となるか否かを監視して、特定成分の符号量を制限しているが、必ずしも符号量である必要はなく、例えば特定成分の符号化歪を監視して特定成分の符号化歪を指定した値以下とするように制限することも可能である。また、本実施の形態1では、特定成分を1種類としたが、複数の特定成分を設定してそれらの最大値を設定することも可能である。例えば、RGB3成分からなる画像データにおいて、それぞれの成分の総符号量を監視することにより、各色成分の総符号量を制限することも可能である。   In the first embodiment, whether or not the code amount of the specific component is the maximum code amount is monitored and the code amount of the specific component is limited. However, the code amount is not necessarily limited. It is also possible to limit the coding distortion of a specific component to a specified value or less by monitoring the coding distortion. In the first embodiment, one type of specific component is used. However, it is also possible to set a plurality of specific components and set their maximum values. For example, it is also possible to limit the total code amount of each color component by monitoring the total code amount of each component in image data composed of RGB three components.

前記のように、特定成分の符号量を最大値以下とすることにより、リソースの少ない小型の復号器でも復号が可能となり、復号器に要するコスト削減につながる。また、従来の技術として示した全ての符号化パスを符号化した上で収束演算により目標総符号量を満足する傾きλを探す収束演算を実施する方法で特定成分の符号量を制限した場合、特定成分の符号量が最小値に満たないと、適切なλを探索する収束演算が再度必要となる。これに対し、本実施の形態1では、特定成分の符号量を監視して、各符号化パスの符号化を続行するか否かを決定するだけで済むので、符号化処理量の低減にも有効であるといえる。   As described above, by setting the code amount of the specific component to be equal to or less than the maximum value, decoding can be performed even with a small decoder having few resources, leading to cost reduction of the decoder. In addition, when the code amount of a specific component is limited by a method of performing a convergence operation that searches for a gradient λ that satisfies the target total code amount by performing a convergence operation after encoding all the encoding passes shown as the conventional technology, If the code amount of the specific component is less than the minimum value, a convergence operation for searching for an appropriate λ is required again. On the other hand, in the first embodiment, it is only necessary to monitor the code amount of a specific component and determine whether or not to continue the encoding of each encoding pass. It can be said that it is effective.

実施の形態2.
上述した実施の形態1では、特定成分の符号量が指定された最大値以下となるように制限する方法を示したが、この実施の形態2では、特定成分の符号量が指定された最小値以上となるように制限する方法を説明する。
Embodiment 2. FIG.
In the first embodiment described above, the method of limiting the code amount of the specific component to be equal to or less than the specified maximum value has been described. However, in the second embodiment, the minimum value in which the code amount of the specific component is specified. A method of restricting to the above will be described.

実施の形態2に係る画像符号化装置の構成は、図1に示す実施の形態1に係る構成と同様なので、その説明は省略し、図1のレート制御情報抽出手段105、エントロピー符号化手段103における処理の詳細を説明する。この方法では、予めレート制御パラメータλの候補を複数用意しておき、あるλを満足する符号化パスまでの符号化を全コードブロックに関して行う。その際、符号量が目標量に達しているか否かを判断して、達していれば符号化終了、達していなければ、次のλの候補を設定して、そのλを全コードブロックが満足するまで符号化を再度実行する。   Since the configuration of the image encoding apparatus according to Embodiment 2 is the same as that according to Embodiment 1 shown in FIG. 1, the description thereof is omitted, and rate control information extraction means 105 and entropy encoding means 103 in FIG. Details of the process will be described. In this method, a plurality of rate control parameter λ candidates are prepared in advance, and encoding is performed for all code blocks up to an encoding pass that satisfies a certain λ. At that time, it is determined whether or not the code amount has reached the target amount. If it has reached, the encoding is completed. If not, the next candidate for λ is set and all code blocks satisfy that λ. Encoding is performed again until

ここで、総符号量が目標値に達した後に、特定成分の総符号量が予め指定した最小値を越えたか否かを判断し、最小値以上ならば符号化を終了する。最小値以下の場合は、特定成分に属するコードブロックのみ、符号量が最小値を越えるまで実行する。特定成分への符号量割り当ては、その段階で終了する。   Here, after the total code amount reaches the target value, it is determined whether or not the total code amount of the specific component exceeds a predetermined minimum value. If the total code amount exceeds the minimum value, the encoding ends. If it is less than the minimum value, only the code block belonging to the specific component is executed until the code amount exceeds the minimum value. The code amount allocation to the specific component ends at that stage.

次に、特定成分以外のコードブロックに対し、先ほどとは逆の順序で(λが小さくなるように)λの値を設定し、λ−1を上回る傾きを持つ符号化パスまでをその符号化ブロックの符号データとする。これらのλを順次下げる処理を、総符号量が目標総符号量を下回るまで行う。 Next, for the code block other than the specific component, the value of λ is set in the reverse order to the previous one (so that λ becomes small), and the coding pass having a slope exceeding λ −1 is encoded. The code data of the block. The process of sequentially lowering λ is performed until the total code amount falls below the target total code amount.

以下、符号化すべきパスの決定方法を、主にレート制御情報抽出手段105内の符号化パス導出手段115の動作内容である、図9から図11に示すフローチャートを参照して説明する。レート制御パラメータの候補λ(t)は、予め以下のように設定しておく。
λ(t)={λ(0),λ(1),λ(2),・・・,λ(tmax)}
(λ(t)<λ(t+1))
Hereinafter, a method for determining a path to be encoded will be described with reference to the flowcharts shown in FIGS. 9 to 11 which are mainly the operation contents of the encoded path deriving unit 115 in the rate control information extracting unit 105. The rate control parameter candidate λ (t) is set in advance as follows.
λ (t) = {λ (0), λ (1), λ (2),..., λ (tmax)}
(Λ (t) <λ (t + 1))

また、レート制御パラメータのインデックスtの初期値をt=0(t=0〜tmax)、コードブロックのインデックスi=0(i=0〜imax)、総符号量のカウンタRsum=0,特定成分の総符号量のカウンタPsum=0,各コードブロックにおける符号化パスを記憶する変数k(i)を全てコードブロックについて−1(ゼロビットプレーンをスキップした次のパスのインデックスが0、k(i)=−1〜kmax、カウンタの都合上、初期値はk(i)=−1とする)とする。   The initial value of the rate control parameter index t is t = 0 (t = 0 to tmax), the code block index i = 0 (i = 0 to imax), the total code amount counter Rsum = 0, the specific component The total code amount counter Psum = 0, the variable k (i) for storing the coding pass in each code block is all −1 for the code block (the index of the next pass skipping the zero bit plane is 0, k (i) = −1 to kmax, and the initial value is k (i) = − 1 for the convenience of the counter).

なお、ブロック図にそのメモリを図示はしないが、k(i)はコードブロック毎に記憶する変数であり、レート制御パラメータのインデックスt、コードブロックのインデックスi、総符号量のカウンタRsum、Psumは全コードブロックで共通な変数とする。   Although the memory is not shown in the block diagram, k (i) is a variable stored for each code block. The index t of the rate control parameter, the index i of the code block, and the counters Rsum and Psum of the total code amount are Variables common to all code blocks.

また、あるコードブロックで符号化を更に進めるか否かを示す更新フラグをCflag(i)=1(i=0〜imax)とする。目標総符号量Rmax、特定成分符号量の最小値Pminは予め指定され、符号化パス導出手段115内部に記憶しておくものとする。   In addition, an update flag indicating whether or not the encoding is further advanced in a certain code block is Cflag (i) = 1 (i = 0 to imax). It is assumed that the target total code amount Rmax and the specific component code amount minimum value Pmin are specified in advance and stored in the coding path deriving unit 115.

まず、ステップ902において、符号化対象となる符号化パスをk(i)に設定し、ステップ903において、符号化パスk(i)を符号化する。符号化後、歪計算手段111で算出したその符号化パスと一つ前の前符号化パスにおける歪Dの差分ΔD、符号量計算手段112で算出したその符号化パスでの符号量ΔRなど、レート歪メモリ113に保存されたレートと歪の関係を使い、ステップ904において、パスk(i)の傾きS(i,k(i))を算出する。   First, in step 902, the encoding pass to be encoded is set to k (i), and in step 903, the encoding pass k (i) is encoded. After encoding, the difference ΔD between the encoding pass calculated by the distortion calculation unit 111 and the previous previous encoding pass ΔD, the code amount ΔR in the encoding pass calculated by the code amount calculation unit 112, etc. Using the relationship between the rate and distortion stored in the rate distortion memory 113, the slope S (i, k (i)) of the path k (i) is calculated in step 904.

ステップ905において、特定成分の総符号量Psumを算出する。図には示さないが、各コードブロックが特定成分に属するか否かを判定する情報を符号化パス導出手段115内部に有しており、特定成分のコードブロックが符号化されるたびに、符号化パス導出手段115で特定成分の総符号量Psumに符号化対象となる符号化パスの符号量ΔRを加算することにより、特定成分の総符号量を算出する。ステップ906においては、符号化パス導出手段115で総符号量Rsumに符号化対象となる符号化パスの符号量ΔRを加算することにより、全成分の総符号量を算出する。   In step 905, the total code amount Psum of the specific component is calculated. Although not shown in the figure, information for determining whether or not each code block belongs to a specific component is included in the coding path deriving means 115, and each time a code block of a specific component is encoded, The total code amount of the specific component is calculated by adding the code amount ΔR of the encoding pass to be encoded to the total code amount Psum of the specific component by the conversion path deriving unit 115. In step 906, the coding pass deriving unit 115 adds the code amount ΔR of the coding pass to be coded to the total code amount Rsum, thereby calculating the total code amount of all components.

次に、ステップ907において、総符号量Rsumと総符号量目標値Rmaxを比較する。総符号量が目標総符号量に達していないならば、ステップ911において、現符号化パスでの傾きS(i,k)とλ(t)−1との大小を判断し、傾きSが大きければ、さらに次のパスを符号化する(ステップ911→ステップ902)。傾きSがλ(t) −1未満になったならば、符号化済みのパスの符号データをメモリに一旦保存し、このコードブロックの符号化を中断し、コードブロックインデックスiをインクリメントして、次のコードブロックの符号化に処理を移す(ステップ911→ステップ912→ステップ913→ステップ902)。なお、フローチャートには示さないが、ここで符号化パスがそのコードブロックの最終符号化パスであった場合にも、次のコードブロックの処理に移るものとする。 Next, in step 907, the total code amount Rsum is compared with the total code amount target value Rmax. If the total code amount does not reach the target total code amount, in step 911, the magnitude of the slope S (i, k) and λ (t) −1 in the current coding pass is determined, and the slope S is large. For example, the next pass is encoded (step 911 → step 902). If the slope S is less than λ (t) −1 , the encoded pass code data is temporarily stored in the memory, the encoding of this code block is interrupted, and the code block index i is incremented. The processing shifts to encoding of the next code block (step 911 → step 912 → step 913 → step 902). Although not shown in the flowchart, even when the coding pass is the final coding pass of the code block, the process proceeds to the next code block.

次のコードブロックでも同様に傾きがλ(t)−1未満となるまで符号化を行う。これを全てのコードブロックに対して行った後、λインデックスtをインクリメントし、λを次の候補に設定して、再度全コードブロックの符号化を傾きがλ(t)−1未満となるまで行う(ステップ911→ステップ912→ステップ914→ステップ902)。なお、ステップ914において、λ(t)を更新しても、S(i、k(i))<λ(t)−1となる、つまり更新後のλが既に符号化済みの符号化パスにおける傾きより大きい場合がある。その場合、フローチャートには示していないが、ステップ912までジャンプしてそのブロックの符号化をパスし、次のコードブロックの符号化に移る。 In the next code block as well, encoding is performed until the slope becomes less than λ (t) −1 . After this is performed for all code blocks, λ index t is incremented, λ is set as the next candidate, and encoding of all code blocks is performed again until the slope becomes less than λ (t) −1. Perform (Step 911 → Step 912 → Step 914 → Step 902). In step 914, even if λ (t) is updated, S (i, k (i)) <λ (t) −1 , that is, the updated λ is already encoded. It may be larger than the slope. In that case, although not shown in the flowchart, the process jumps to step 912 to pass the encoding of the block, and proceeds to the encoding of the next code block.

次に、ステップ907において、Rsum>Rmaxと判断された場合には、ステップ908で現コードブロックの最終符号化パスを除くために最終符号化パスのインデックスをk(i)−1とし、総符号量のカウンタから最終符号化パスの符号量ΔRを差し引く。ステップ909において、特定成分の総符号量Psumとその最小値Pminとを比較し、特定成分の総符号量Psumが最小値Pmin以上ならば符号化は終了する。   Next, if it is determined in step 907 that Rsum> Rmax, in order to exclude the final coding pass of the current code block in step 908, the index of the final coding pass is set to k (i) -1, and the total code The code amount ΔR of the final coding pass is subtracted from the amount counter. In step 909, the total code amount Psum of the specific component is compared with the minimum value Pmin, and if the total code amount Psum of the specific component is equal to or greater than the minimum value Pmin, the encoding ends.

特定成分の総符号量Psumと最小値Pmin未満の場合には、これ以降、特定成分に属するコードブロックのみ総符号量Psumがその最小値Pminを超えるまで符号化を続行する。ステップ910で、現在のコードブロックのインデックスi、レート制御パラメータλのインデックスtをistop、tstopに一旦保存し、図10のステップ1001に移行し、特定成分のコードブロックの更新フラグを1に、その他のコードブロックの更新フラグを0に設定する。以下のステップ1002からステップ1012までの処理は、特定成分のコードブロックだけを符号化対象としていることを除いて、ほぼステップ902〜ステップ914までの処理と同様であるので詳しい説明は省略する。符号化を実行中、ステップ1008で特定成分の総符号量Psumが最小値Pminを超えたと判定されたら、ステップ1002〜ステップ1012からなるループを抜ける。これで特定成分に関しては、符号ストリームとして出力される符号化パスは確定する。   If the total code amount Psum of the specific component is less than the minimum value Pmin, encoding is continued until the total code amount Psum exceeds the minimum value Pmin only for code blocks belonging to the specific component. In step 910, the index i of the current code block and the index t of the rate control parameter λ are temporarily stored in isstop and tstop, then the process proceeds to step 1001 in FIG. 10, the update flag of the code block of the specific component is set to 1, and others The update flag of the code block is set to 0. The following processing from step 1002 to step 1012 is substantially the same as the processing from step 902 to step 914 except that only the code block of the specific component is the object to be encoded, so detailed description will be omitted. If it is determined in step 1008 that the total code amount Psum of the specific component has exceeded the minimum value Pmin during encoding, the loop consisting of step 1002 to step 1012 is exited. As a result, for the specific component, the coding pass output as the code stream is determined.

次の段階では、特定成分以外のコードブロックで総符号量が目標値となるまで符号化パスを切り捨てる。レート制御パラメータ、符号化するコードブロックのインデックスを特定成分のコードブロックの符号化を停止した段階まで戻すため、ステップ1013で保存してあったレート制御パラメータλのインデックス、コードブロックのインデックスをt、iに設定し、図11に移行し、ステップ1101において、特定成分のコードブロックの更新フラグを0に、特定成分以外は1に設定する。ここからは、符号化を進めた時とは逆の走査順で符号化パスを、全成分の総符号量Rsumが目標値Rmax以下となるまで切り捨てていく。   In the next stage, the coding pass is truncated until the total code amount reaches the target value in the code blocks other than the specific component. In order to return the rate control parameter and the index of the code block to be encoded to the stage where the encoding of the code block of the specific component is stopped, the index of the rate control parameter λ and the index of the code block stored in step 1013 are set to t, 11, the process proceeds to FIG. 11. In step 1101, the update flag of the code block of the specific component is set to 0, and other than the specific component is set to 1. From here, the coding pass is rounded down in the scanning order opposite to when the coding is advanced until the total code amount Rsum of all components becomes equal to or less than the target value Rmax.

まず、ステップ1102において、あるコードブロックで符号化を更に進めるか否かを示す更新フラグをCflag(i)=1(i=0〜imax)とする。ステップ1103では、符号化パスを一つ削除して、ステップ1104でその傾きをレート歪メモリ113から読み出す(符号化は既に終わっているので必要ない)。ステップ1105でその時点での全成分の総符号量Rsumを算出し、ステップ1106で総符号量Rsumと目標値Rmaxとを比較し、総符号量Rsumが目標値Rmax以下ならば、この時点で符号化パス決定の処理は終了する。各コードブロックで、どのパスまでを符号ストリームとして出力するかを示す情報k(i)を符号データ抽出手段106に送る。   First, in step 1102, an update flag indicating whether or not encoding is further advanced in a certain code block is set to Cflag (i) = 1 (i = 0 to imax). In step 1103, one coding pass is deleted, and in step 1104, the gradient is read from the rate distortion memory 113 (encoding is already completed, so it is not necessary). In step 1105, the total code amount Rsum of all components at that time is calculated. In step 1106, the total code amount Rsum is compared with the target value Rmax. If the total code amount Rsum is equal to or less than the target value Rmax, the code is encoded at this time. The process of determining the conversion path ends. Information k (i) indicating which path is output as a code stream in each code block is sent to the code data extraction means 106.

総符号量Rsumが目標値Rmaxより大きい場合、ステップ1107において、現符号化パスでの傾きS(i,k)とλ(t)−1との大小を比較し、傾きSが小さければ、ステップ1103にリターンしさらに次のパスを符号化する。傾きSがλ(t) −1以上になったならば、ステップ1108及びステップ1109を介してコードブロックインデックスiをデクリメントして、ステップ1102にリターンし次のコードブロックに処理を移す。フローチャートには示さないが、符号化パスがそのコードブロックの最初の符号化パスであった場合にも、次のコードブロックの処理に移るものとする。次のコードブロックでも同様に傾きがλ(t)−1以上となるまで処理を行う。これを全てのコードブロックに対して行った後、ステップ1110において、レート制御パラメータλのインデックスtをデクリメントして傾き閾値を増加させ、λを次の候補に設定して、再度特定成分以外のコードブロックを走査する。 If the total code amount Rsum is larger than the target value Rmax, in step 1107, the magnitudes of the slopes S (i, k) and λ (t) −1 in the current coding pass are compared. Returning to 1103, the next pass is further encoded. If the slope S becomes equal to or larger than λ (t) −1 , the code block index i is decremented through steps 1108 and 1109, the process returns to step 1102, and the processing is moved to the next code block. Although not shown in the flowchart, even when the coding pass is the first coding pass of the code block, the processing of the next code block is assumed. Similarly, the next code block is processed until the inclination becomes λ (t) −1 or more. After this is performed for all code blocks, in step 1110, the index t of the rate control parameter λ is decremented to increase the slope threshold, λ is set as the next candidate, and the code other than the specific component is again set. Scan the block.

次に、どのようにλを変化させてレート配分を決定するかを図12の例を使って示す。この例では、RGB3成分からなる画像データを総符合量の目標値Rmax=100として符号化を行う。R、G、B各成分の総符号量をそれぞれRO、R1、R2とし、R成分の符号量の最小値Pminを30とする。   Next, how the rate distribution is determined by changing λ will be described using the example of FIG. In this example, image data composed of RGB three components is encoded with the total code amount target value Rmax = 100. Assume that the total code amounts of the R, G, and B components are RO, R1, and R2, respectively, and the minimum value Pmin of the R component is 30.

最初にλ−1=100からスタートし、各コードブロックで傾きがS<λ−1=100となるまで符号化を続ける。これを全コードブロックに対して実行した段階で総符号量Rsum=85であった。まだ、Rsumが目標総符号量に満たないので、λを一段階下げλ−1=90として、再度、各コードブロックで傾きがS<λ−1=90となるまで符号化を続ける。これを全コードブロックに対して実行した段階で総符号量Rsum=92であった。 Initially starting from lambda -1 = 100, continued coding until the slope becomes S <λ -1 = 100 in each code block. When this was executed for all code blocks, the total code amount Rsum = 85. Yet, because Rsum is less than the target total code amount, the lambda as a step down lambda -1 = 90, again, it continued coding until the slope becomes S <λ -1 = 90 in each code block. When this was executed for all code blocks, the total code amount Rsum = 92.

まだ、Rsumが目標総符号量に満たないので、λを一段階下げλ−1=80とした時、ある符号化パスを符号化した段階で総符号量が目標値100以下で最大となる99となった。しかし、特定成分の符号量がその最小値に満たないので、これ以降、特定成分に属するコードブロックのみ符号化を続行する。λ−1=80として、特定成分の全コードブロックを符号化した段階で特定成分の符号量は22となった。表中、更新を停止したために値が変わらない数値を網掛けで示す。 Since Rsum is still less than the target total code amount, when λ is reduced by one step and λ −1 = 80, the total code amount becomes the maximum when the target value is 100 or less at the stage where a certain encoding pass is encoded 99. It became. However, since the code amount of the specific component is less than the minimum value, encoding is continued only for code blocks belonging to the specific component. As λ -1 = 80, the code amount of the specific component at the stage of encoding the entire coding blocks of a particular component became 22. In the table, the values that do not change because the update is stopped are shaded.

特定成分の符号量が最小値の30に満たないので、λを一段階下げλ−1=70として符号化を続ける。これを特定成分全コードブロックに対して実行した段階で特定成分の総符号量Psum=25であった。Psumが最小値30に満たないので、更にλを一段階下げλ−1=80とした時、途中で特定成分の総符号量が最小値31を越えたので、この段階で特定成分の符号化を終了する。 Since the code amount of the specific component is less than the minimum value of 30, the encoding is continued with λ lowered by one step and λ −1 = 70. When this was executed for all code blocks of the specific component, the total code amount Psum of the specific component was 25. Since Psum is less than the minimum value 30, when λ is further lowered by one step and λ −1 = 80, the total code amount of the specific component exceeds the minimum value 31 on the way. Exit.

これ以降、特定成分以外での切り捨て符号化パスを決定する。特定成分以外のコードブロックで傾きがλ−1=80未満の符号化パスを切り捨てたところ、総符号量は108であった。総符号量目標値100より大きいので、λを一段階上げλ−1=90として符号化パスを切り捨てたところ、総符号量は104であった。まだ、総符号量目標値100より大きいので、λを一段階上げλ−1=100として符号化パスを切り捨てたところ、途中で総符号量が目標値の100を下回ったので、その時点で処理を終了する。以上の処理により、全コードブロックにおいて符号データとして出力すべき符号化パスが定まり、R,G,B各成分への符号量割り当ては、それぞれ、31,34,34、総符号量は99となる。 Thereafter, a truncation encoding pass other than the specific component is determined. When a coding block other than the specific component with a slope of less than λ −1 = 80 was discarded, the total code amount was 108. Since it is larger than the total code amount target value 100, when λ is increased by one step and λ −1 = 90 and the encoding pass is truncated, the total code amount is 104. Since it is still larger than the total code amount target value 100, when λ is increased by one step and λ −1 = 100 and the encoding pass is discarded, the total code amount falls below the target value 100 on the way. Exit. With the above processing, the encoding pass to be output as code data in all code blocks is determined, the code amount allocation to each of the R, G, and B components is 31, 34, and 34, respectively, and the total code amount is 99. .

本実施の形態2では、特定成分符号量が最小符号量以上となるよう、特定成分の符号量を制限しているが、必ずしも符号量である必要はなく、例えば特定成分の符号化歪を監視して特定成分の符号化歪を指定した値以上とするように制限することも可能である。また、本実施の形態2では、特定成分を1種類としたが、複数の特定成分を設定してそれらの最小値を設定することも可能である。例えば、RGB3成分からなる画像データにおいて、それぞれの成分の総符号量を監視することにより、各色成分の総符号量を制限することも可能である。   In the second embodiment, the code amount of the specific component is limited so that the specific component code amount is equal to or larger than the minimum code amount. However, the code amount is not necessarily limited, and for example, the coding distortion of the specific component is monitored. Thus, it is possible to limit the coding distortion of a specific component to a specified value or more. In the second embodiment, one type of specific component is used, but it is also possible to set a plurality of specific components and set their minimum values. For example, it is also possible to limit the total code amount of each color component by monitoring the total code amount of each component in image data composed of RGB three components.

また、本実施の形態2では、特定成分符号量が最小符号量以上となるよう、特定成分の符号量を制限しているが、実施の形態1で説明した特定成分符号量が最大符号量以下となる方法と組み合わせ、特定成分の符号量が最小符号量以上でかつ最大符号量以下となるように制御することも可能である。このためには、図9のステップ906と907の間で、図7のステップ707の処理と同様に特定成分の符号量が最大値を越えたか否かを判断し、最大値を超えた場合、図7のステップ708、ステップ709と同様の処理を行い、それ以降、特定成分に属するコードブロックについては符号化を実行しないようにすればよい。   In the second embodiment, the code amount of the specific component is limited so that the specific component code amount is equal to or greater than the minimum code amount. However, the specific component code amount described in the first embodiment is less than or equal to the maximum code amount. It is also possible to control so that the code amount of the specific component is not less than the minimum code amount and not more than the maximum code amount in combination with the above method. For this purpose, it is determined whether or not the code amount of the specific component exceeds the maximum value between steps 906 and 907 in FIG. 9 as in the process of step 707 in FIG. Processing similar to that in step 708 and step 709 in FIG. 7 is performed, and thereafter, the code block belonging to the specific component may not be encoded.

従来の技術として示した単純に画面全体の平均2乗誤差を最小化する方法では、場合によっては特定成分の符号量配分が極端に小さくなり、主観的な画質が劣化することもあった。前記のように、特定成分の符号量を最小値以上とすることが保証されれば、特定成分の画質が極端に劣化するという状況が回避でき、画質の向上につながる。   In the method of simply minimizing the mean square error of the entire screen shown as the conventional technique, the code amount distribution of the specific component may become extremely small in some cases, and the subjective image quality may be deteriorated. As described above, if it is ensured that the code amount of the specific component is equal to or larger than the minimum value, a situation in which the image quality of the specific component is extremely deteriorated can be avoided, and the image quality is improved.

また、従来の技術として示した全ての符号化パスを符号化した上で収束演算により目標総符号量を満足する傾きλを探す収束演算を実施する方法で特定成分の符号量を制限とした場合、特定成分の符号量が最小値に満たないと、適切なλを探索する収束演算が再度必要となる。これに対し、本実施の形態2では、特定成分の符号量を監視して、各符号化パスの符号化を続行するか否かを決定するだけで済むので、符号化処理量の低減にも有効であるといえる。   In addition, when the coding amount of a specific component is limited by the method of performing the convergence calculation that searches for the gradient λ that satisfies the target total code amount by performing the convergence calculation after encoding all the encoding passes shown as the conventional technology If the code amount of the specific component is less than the minimum value, a convergence operation for searching for an appropriate λ is required again. On the other hand, in the second embodiment, it is only necessary to monitor the code amount of a specific component and determine whether or not to continue the encoding of each encoding pass. It can be said that it is effective.

この発明の実施の形態1に係る画像符号化装置の構成を示すブロック図である。It is a block diagram which shows the structure of the image coding apparatus which concerns on Embodiment 1 of this invention. 図1に示されるレート制御情報抽出手段105の構成を示すブロック図である。It is a block diagram which shows the structure of the rate control information extraction means 105 shown by FIG. 図1に示されるウェーブレット変換手段101により分解レベル2までウェーブレット変換をした時のサブバンドを示す図である。It is a figure which shows a subband when wavelet transform is carried out to the decomposition level 2 by the wavelet transform means 101 shown in FIG. 図1に示されるエントロピー符号化手段103によるビットプレーンの分解を説明する図であり、(a)は、4×4のコードブロックの一例を表し、(b)は、(a)に示すデータを、正負を表す1ビットの信号と絶対値の表現に変換し、それらのデータを縦方向に2進表現した結果を各行単位に並べた例を表し、(c)は(b)に示すデータ対して同一のビット番号のビットを集めた例をそれぞれ示す。It is a figure explaining decomposition | disassembly of the bit plane by the entropy encoding means 103 shown by FIG. 1, (a) represents an example of a 4x4 code block, (b) represents the data shown to (a). , A 1-bit signal representing positive and negative values and an absolute value representation, and the result of binary representation of the data in the vertical direction is arranged in units of rows, and (c) represents the data shown in (b). Examples of collecting the same bit number are shown below. 図1に示されるエントロピー符号化手段103によるビットプレーンから符号化パスへの分解を説明する図である。It is a figure explaining decomposition | disassembly from the bit plane to an encoding pass by the entropy encoding means 103 shown by FIG. 図2に示されるレート歪メモリ113に格納されるデータを示す図である。It is a figure which shows the data stored in the rate distortion memory 113 shown by FIG. この発明の実施の形態1における画像符号化装置の処理を示すフローチャートである。It is a flowchart which shows the process of the image coding apparatus in Embodiment 1 of this invention. この発明の実施の形態1における符号化の順序を説明する図である。It is a figure explaining the order of the encoding in Embodiment 1 of this invention. この発明の実施の形態2における画像符号化装置の処理を示すフローチャートである。It is a flowchart which shows the process of the image coding apparatus in Embodiment 2 of this invention. 図9に続く処理を示すフローチャートである。10 is a flowchart illustrating processing subsequent to FIG. 9. 図10に続く処理を示すフローチャートである。It is a flowchart which shows the process following FIG. この発明の実施の形態2における符号化の順序を説明する図である。It is a figure explaining the order of the encoding in Embodiment 2 of this invention.

符号の説明Explanation of symbols

101 ウェーブレット変換手段、102 量子化手段、103 エントロピー符号化手段、104 符号メモリ、105 レート制御情報抽出手段、106 符号データ抽出手段、111 歪計算手段、112 符号量計算手段、113 レート歪メモリ、114 傾き計算手段、115 符号化パス導出手段。   101 wavelet transform means, 102 quantization means, 103 entropy coding means, 104 code memory, 105 rate control information extraction means, 106 code data extraction means, 111 distortion calculation means, 112 code amount calculation means, 113 rate distortion memory, 114 Inclination calculation means, 115 Coding path derivation means.

Claims (4)

2次元信号を複数のコードブロックに分割し、コードブロックをビットプレーンに分解し、各ビットプレーンを一つ以上の符号化パスに分割し、制御情報に基づいて符号化パス毎に符号化して符号データを出力するエントロピー符号化手段と、
前記エントロピー符号化手段からの符号データを格納する符号メモリと、
レート制御に必要な歪と符号量の計算に基づいて符号化パスの続行及び終了を判断するレート制御情報抽出手段と、
前記レート制御情報抽出手段からの制御情報に基づいて符号化終了パスまでの符号データを前記符号メモリから抽出し符号ストリームとして出力する符号データ抽出手段と
を備え、
前記レート制御情報抽出手段は、
各符号化パスの符号化により生じる歪を算出する歪計算手段と、
各符号化パスの符号量を算出する符号量計算手段と、
前記歪計算手段からの歪と前記符号量計算手段からの符号量とから各コードブロックにおける歪と符号量の関係に基づく傾きを算出する傾き計算手段と、
前記傾き、全成分の総符号量、特定成分の総符号量に基づいて全成分の総符号量が目標符号量以下でかつ特定成分の総符号量が所定の最大値以下に収まるよう各符号化を制御する制御情報を前記エントロピー符号化手段及び前記符号データ抽出手段に出力する符号化パス導出手段と
を有する画像符号化装置。
A two-dimensional signal is divided into a plurality of code blocks, the code block is decomposed into bit planes, each bit plane is divided into one or more coding passes, and coding is performed for each coding pass based on control information. Entropy encoding means for outputting data;
A code memory for storing code data from the entropy encoding means;
Rate control information extraction means for determining the continuation and termination of the coding pass based on the calculation of distortion and code amount necessary for rate control;
Code data extraction means for extracting code data up to an encoding end pass from the code memory based on control information from the rate control information extraction means and outputting it as a code stream;
The rate control information extraction means includes:
Distortion calculating means for calculating distortion caused by encoding of each encoding pass;
Code amount calculation means for calculating the code amount of each coding pass;
An inclination calculating means for calculating an inclination based on the relationship between the distortion and the code amount in each code block from the distortion from the distortion calculating means and the code amount from the code amount calculating means;
Based on the slope, the total code amount of all the components, and the total code amount of the specific component, each encoding is performed so that the total code amount of all the components is less than the target code amount and the total code amount of the specific component is less than a predetermined maximum value. An image encoding apparatus comprising: an encoding path deriving unit that outputs control information for controlling the entropy encoding unit and the code data extracting unit.
請求項1に記載の画像符号化装置において、
前記符号化パス導出手段は、
前記傾きが所定の傾き閾値を越える符号化パスを符号化し、
前記全成分の総符号量が前記目標符号量に達しない場合には、前記傾き閾値を減少させて、それ以前に符号化されていない符号化パスをさらに符号化する処理を、前記全成分の総符号量が前記目標符号量に達するまで繰り返し制御し、
符号化の途中で指定した前記特定成分の総符号量が前記最大値を越えた場合には、それ以降、特定成分に属するコードブロックの符号化を行わないよう符号化を制御する
ことを特徴とする画像符号化装置。
The image encoding device according to claim 1,
The encoding path derivation means includes:
Encoding a coding pass in which the slope exceeds a predetermined slope threshold;
When the total code amount of all the components does not reach the target code amount, the inclination threshold is decreased, and a process of further encoding a coding path that has not been encoded before is performed. Control repeatedly until the total code amount reaches the target code amount,
When the total code amount of the specific component specified in the middle of encoding exceeds the maximum value, the encoding is controlled so that the code block belonging to the specific component is not encoded thereafter. An image encoding device.
請求項1に記載の画像符号化装置において、
前記符号化パス導出手段は、
前記傾きが所定の傾き閾値を越える符号化パスを符号化し、
前記全成分の総符号量が前記目標符号量に達しない場合には、前記傾き閾値を減少させて、それ以前に符号化されていない符号化パスをさらに符号化する処理を、前記全成分の総符号量が前記目標符号量に達するまで繰り返し制御し、
前記全成分の総符号量が前記目標符号量に達した段階で、前記特定成分の総符号量が所定の最小値に満たない場合には、特定成分に属するコードブロックのみの符号化を、前記最小値を越えるまでさらに続けるよう符号化を制御し、
その後、特定成分以外のコードブロックについてのみ、前記傾き閾値を増加させて、前記傾き閾値に満たない符号化パスを符号ストリームから削除する処理を前記全成分の総符号量が前記目標符号量を下回るまで行い、前記全成分の総符号量が前記目標符号量を下回った時点での符号化パスを、最終出力パスとして決定する
ことを特徴とする画像符号化装置。
The image encoding device according to claim 1,
The encoding path derivation means includes:
Encoding a coding pass in which the slope exceeds a predetermined slope threshold;
When the total code amount of all the components does not reach the target code amount, the inclination threshold is decreased, and a process of further encoding a coding path that has not been encoded before is performed. Control repeatedly until the total code amount reaches the target code amount,
When the total code amount of all the components reaches the target code amount and the total code amount of the specific component is less than a predetermined minimum value, encoding of only the code block belonging to the specific component is performed, Control the encoding to continue until the minimum value is exceeded,
After that, only for code blocks other than the specific component, the process of increasing the gradient threshold and deleting the coding pass that does not satisfy the gradient threshold from the code stream is such that the total code amount of all the components is less than the target code amount And an encoding pass when the total code amount of all the components falls below the target code amount is determined as a final output pass.
請求項1に記載の画像符号化装置において、
前記符号化パス導出手段は、
前記傾きが所定の傾き閾値を越える符号化パスを符号化し、
前記全成分の総符号量が前記目標符号量に達しない場合には、前記傾き閾値を減少させて、それ以前に符号化されていない符号化パスをさらに符号化する処理を、前記全成分の総符号量が前記目標符号量に達するまで繰り返し制御し、
符号化の途中で指定した前記特定成分の総符号量が前記最大値を越えた場合には、それ以降、特定成分に属するコードブロックの符号化を行わないよう符号化を制御し、
前記全成分の総符号量が前記目標符号量に達した段階で、前記特定成分の総符号量が所定の最小値に満たない場合には、特定成分に属するコードブロックのみの符号化を、前記最小値を越えるまでさらに続けるよう符号化を制御し、
その後、特定成分以外のコードブロックについてのみ、前記傾き閾値を増加させて、前記傾き閾値に満たない符号化パスを符号ストリームから削除する処理を前記全成分の総符号量が前記目標符号量を下回るまで行い、前記全成分の総符号量が前記目標符号量を下回った時点での符号化パスを、最終出力パスとして決定する
ことを特徴とする画像符号化装置。
The image encoding device according to claim 1,
The encoding path derivation means includes:
Encoding a coding pass in which the slope exceeds a predetermined slope threshold;
When the total code amount of all the components does not reach the target code amount, the inclination threshold is decreased, and a process of further encoding a coding path that has not been encoded before is performed. Control repeatedly until the total code amount reaches the target code amount,
When the total code amount of the specific component specified during the encoding exceeds the maximum value, the encoding is controlled so as not to code the code block belonging to the specific component thereafter.
When the total code amount of all the components reaches the target code amount and the total code amount of the specific component is less than a predetermined minimum value, encoding of only the code block belonging to the specific component is performed, Control the encoding to continue until the minimum value is exceeded,
After that, only for code blocks other than the specific component, the process of increasing the gradient threshold and deleting the coding pass that does not satisfy the gradient threshold from the code stream is such that the total code amount of all the components is less than the target code amount And an encoding pass when the total code amount of all the components falls below the target code amount is determined as a final output pass.
JP2006093389A 2006-03-30 2006-03-30 Image encoding device Expired - Fee Related JP4680112B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006093389A JP4680112B2 (en) 2006-03-30 2006-03-30 Image encoding device
US11/508,218 US7720297B2 (en) 2006-03-30 2006-08-23 Image coding apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006093389A JP4680112B2 (en) 2006-03-30 2006-03-30 Image encoding device

Publications (2)

Publication Number Publication Date
JP2007267340A true JP2007267340A (en) 2007-10-11
JP4680112B2 JP4680112B2 (en) 2011-05-11

Family

ID=38558996

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006093389A Expired - Fee Related JP4680112B2 (en) 2006-03-30 2006-03-30 Image encoding device

Country Status (2)

Country Link
US (1) US7720297B2 (en)
JP (1) JP4680112B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10260895B2 (en) * 2016-11-23 2019-04-16 Hyundai Motor Company Apparatus and method for controlling path of vehicle

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8259814B2 (en) * 2008-11-12 2012-09-04 Cisco Technology, Inc. Processing of a video program having plural processed representations of a single video signal for reconstruction and output
US9445131B1 (en) * 2015-01-23 2016-09-13 Faroudja Enterprises, Inc. De-blocking and de-banding filter with adjustable filter strength for video and image processing
US20190253624A1 (en) * 2017-07-17 2019-08-15 Ki Baek Kim Image data encoding/decoding method and apparatus
KR102531386B1 (en) 2016-10-04 2023-05-12 주식회사 비원영상기술연구소 Image data encoding/decoding method and apparatus

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0984009A (en) * 1995-09-07 1997-03-28 Konica Corp Image compression coding method and image compression coding device
JP2003125206A (en) * 2001-10-12 2003-04-25 Canon Inc Image processor, method, computer program and storage medium
JP2004336254A (en) * 2003-05-02 2004-11-25 Sony Corp Device and method for encoding image
JP2005101862A (en) * 2003-09-24 2005-04-14 Canon Inc Image coding apparatus and image coding method
JP2005109917A (en) * 2003-09-30 2005-04-21 Mitsubishi Electric Corp Image coder and image coding method
WO2005112427A1 (en) * 2004-05-17 2005-11-24 Mitsubishi Denki Kabushiki Kaisha Image encoder

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09252477A (en) 1996-03-15 1997-09-22 Toshiba Corp Image coder
JP3934712B2 (en) 1996-09-27 2007-06-20 日本ビクター株式会社 Video signal encoding method and apparatus
JP3771175B2 (en) 2002-01-31 2006-04-26 株式会社リコー Image coding apparatus, image coding method, image coding program, and recording medium recording image coding program
JP3961870B2 (en) * 2002-04-30 2007-08-22 株式会社リコー Image processing method, image processing apparatus, and image processing program
US7280597B2 (en) * 2003-06-24 2007-10-09 Mitsubishi Electric Research Laboratories, Inc. System and method for determining coding modes, DCT types and quantizers for video coding
JP4090975B2 (en) * 2003-09-30 2008-05-28 株式会社リコー Image processing device
JP4273996B2 (en) * 2004-02-23 2009-06-03 ソニー株式会社 Image encoding apparatus and method, and image decoding apparatus and method
JP2005303362A (en) 2004-04-06 2005-10-27 Mitsubishi Electric Corp Image coder and program

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0984009A (en) * 1995-09-07 1997-03-28 Konica Corp Image compression coding method and image compression coding device
JP2003125206A (en) * 2001-10-12 2003-04-25 Canon Inc Image processor, method, computer program and storage medium
JP2004336254A (en) * 2003-05-02 2004-11-25 Sony Corp Device and method for encoding image
JP2005101862A (en) * 2003-09-24 2005-04-14 Canon Inc Image coding apparatus and image coding method
JP2005109917A (en) * 2003-09-30 2005-04-21 Mitsubishi Electric Corp Image coder and image coding method
WO2005112427A1 (en) * 2004-05-17 2005-11-24 Mitsubishi Denki Kabushiki Kaisha Image encoder

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10260895B2 (en) * 2016-11-23 2019-04-16 Hyundai Motor Company Apparatus and method for controlling path of vehicle

Also Published As

Publication number Publication date
US7720297B2 (en) 2010-05-18
JP4680112B2 (en) 2011-05-11
US20070230803A1 (en) 2007-10-04

Similar Documents

Publication Publication Date Title
JP4273996B2 (en) Image encoding apparatus and method, and image decoding apparatus and method
JP4365957B2 (en) Image processing method and apparatus and storage medium
JP5700970B2 (en) Decoding method of encoded data stream representing image sequence and encoding method of image sequence
JP4656190B2 (en) Information processing apparatus and method
US20080170625A1 (en) Per block breakpoint determining for hybrid variable length coding
US8576915B2 (en) Position coding for context-based adaptive variable length coding
US20120057788A1 (en) Image processing apparatus and method
KR20130056190A (en) Methods and devices for encoding and decoding transform domain filters
JP4680112B2 (en) Image encoding device
JP7390788B2 (en) Image encoding device and its control method and program
JP2017192078A (en) Picture encoder and control method thereof
KR100918377B1 (en) Method for compressing image
JP4322920B2 (en) Image encoding device
JP4003628B2 (en) Image encoding apparatus and method, and program
CN114025166A (en) Video compression method, electronic device and computer-readable storage medium
US7646926B2 (en) Image encoding apparatus
JP4309220B2 (en) Image coding apparatus and image coding method
JP2005229441A (en) Image coding equipment and method therefor, and image decoding equipment and method therefor
JP2019068385A (en) Encoder, control method thereof, and control program, and imaging apparatus
JP2000201353A (en) Image encoding method, image encoder and storage medium in which image encoding program is stored
JP4579049B2 (en) Image decoding apparatus and image decoding system
JP4367113B2 (en) Image coding apparatus and method
JP2018033044A (en) Image encoder and control method and program thereof
KR101259063B1 (en) A image processing device and blocking effect removal method of the same
JP2004350034A (en) Image encoding device and method and image decoding device and method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080731

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100817

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100915

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20101005

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20101209

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101227

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20110111

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110202

R150 Certificate of patent or registration of utility model

Ref document number: 4680112

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140210

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees