JP2010213059A - Image encoding apparatus and image encoding method - Google Patents

Image encoding apparatus and image encoding method Download PDF

Info

Publication number
JP2010213059A
JP2010213059A JP2009057801A JP2009057801A JP2010213059A JP 2010213059 A JP2010213059 A JP 2010213059A JP 2009057801 A JP2009057801 A JP 2009057801A JP 2009057801 A JP2009057801 A JP 2009057801A JP 2010213059 A JP2010213059 A JP 2010213059A
Authority
JP
Japan
Prior art keywords
image
size
code block
encoding
vertical
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
JP2009057801A
Other languages
Japanese (ja)
Other versions
JP5201019B2 (en
Inventor
Tamon Sadasue
多聞 貞末
Hiroyuki Sakuyama
宏幸 作山
Junichi Hara
潤一 原
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2009057801A priority Critical patent/JP5201019B2/en
Publication of JP2010213059A publication Critical patent/JP2010213059A/en
Application granted granted Critical
Publication of JP5201019B2 publication Critical patent/JP5201019B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide an image encoding apparatus capable of encoding a high-resolution image under a limitation in memory capacity. <P>SOLUTION: The image encoding apparatus performing wavelet transform processing using a coefficient line buffer, comprises: an image input section 201 for inputting an image to be encoded; a code block size determining section 202 for determining the longitudinal size of a code block being the minimum unit of encoding, on the basis of the lateral size of the image input by the image input section 201; and an image encoding section 203 for encoding the image using the size of the code block determined by the code block size determining section 202. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

本発明は、画像をJPEG2000方式で符号化する画像符号化装置及び画像符号化方法に関するものであり、特に、画像を符号化する際に、ラインベースウェーブレット変換を用い、圧縮効率を落とさずにメモリ容量の制限の下で効率的に圧縮する画像符号化装置及び画像符号化方法に関するものである。   The present invention relates to an image encoding apparatus and an image encoding method for encoding an image using the JPEG2000 method, and in particular, when encoding an image, a line-based wavelet transform is used and a memory without reducing compression efficiency. The present invention relates to an image encoding apparatus and an image encoding method for efficiently compressing data under capacity limitations.

静止画像の圧縮方式として、従来広く用いられているJPEG(Joint Photographic Experts Group)よりも高画質、且つ多機能化の図られたJPEG2000の基本方式(part1)がISO/IEC 15444−1,ITU−T T.800で標準化されている。JPEG2000は、高圧縮率で画質向上が図られたのが特徴的で、符号量制御が容易で符号データ上の編集も可能であり、従来のJPEGに比べて機能性が高い。   As a still image compression method, the basic method (part 1) of JPEG 2000, which has higher image quality and more functions than the widely used JPEG (Joint Photographic Experts Group), is ISO / IEC 15444-1, ITU- TT 800 is standardized. JPEG2000 is characterized in that the image quality is improved at a high compression rate, the code amount control is easy, the code data can be edited, and the functionality is higher than that of the conventional JPEG.

JPEG2000符号化方式には、ウェーブレット変換が採用されている。ウェーブレット変換は、従来のJPEGで用いられている離散コサイン変換(DCT)のようなブロック単位の処理ではなく、画像全体に対して適用する周波数変換処理である。特許文献1には、ウェーブレット変換方式を利用した効果的な符号化及び復号化の方法が開示されている。ウェーブレット変換による方式を採用する際に、原画像における矩形領域に対応した各サブバンドの領域を一つの符号化単位としており、ラインバッファの容量が分解レベルで決定される。   The JPEG2000 encoding method employs wavelet transform. The wavelet transform is a frequency transform process applied to the entire image, not a block unit process such as the discrete cosine transform (DCT) used in the conventional JPEG. Patent Document 1 discloses an effective encoding and decoding method using a wavelet transform method. When adopting a method based on wavelet transform, each subband region corresponding to a rectangular region in the original image is set as one encoding unit, and the capacity of the line buffer is determined at the decomposition level.

ウェーブレット変換は画像全体に対して適用する周波数変換処理であるため、単純に実装すると、画像サイズの分だけの画素値もしくは変換係数を保持するためのバッファが処理過程を通して必要になってしまう。   Since the wavelet transform is a frequency transform process applied to the entire image, if it is simply implemented, a buffer for holding pixel values or transform coefficients corresponding to the image size is required throughout the process.

これに対する解決策として、非特許文献2に記されたようなラインベースウェーブレット処理方式がある。ラインベースウェーブレット処理は、ウェーブレット変換のタップ数に応じた必要最小限のバッファ(ラインメモリ)に、逐次画素値もしくは変換係数をストアして変換処理を行う手法である。ラインベースでウェーブレット変換された後、これらの係数は、同時に全てを保持するのではなく、逐次エントロピー符号化してしまうことで係数用のバッファの空きを作ることができる。そのため、これが消費メモリ量の大幅な削減の効果を生み出す。   As a solution to this, there is a line-based wavelet processing method as described in Non-Patent Document 2. The line-based wavelet processing is a technique for performing conversion processing by sequentially storing pixel values or conversion coefficients in a minimum necessary buffer (line memory) corresponding to the number of taps of wavelet conversion. After the line-based wavelet transform, these coefficients are not held all at the same time, but are sequentially entropy-coded to make a buffer space for the coefficients. Therefore, this creates the effect of greatly reducing the amount of memory consumed.

また、ラインベースでウェーブレット変換を行う方法に関しては、特許文献2によっても開示されている。特許文献2によれば、ウェーブレット変換に必要なバッファが、画像全体分に相当するバッファではなく、画像の縦のサイズに依存しないライン数によるラインバッファで済むという効果があると記載されている。   A method for performing wavelet transform on a line basis is also disclosed in Patent Document 2. According to Patent Document 2, it is described that a buffer necessary for wavelet transform is not a buffer corresponding to the entire image but a line buffer having the number of lines that does not depend on the vertical size of the image.

しかしながら、ラインベースウェーブレットを用いた場合でも、係数バッファの保持方法、ウェーブレット変換の分解レベル、符号化を実行する単位などによって、必要なバッファ量、即ち消費メモリ量が変化することになる。また、特許文献2にはラインベースでウェーブレット変換を行う方法が示されているが、コードブロックサイズの制御に関する記述はなされておらず、利用可能なバッファの制限下で圧縮する方法に関する記述もなされていない。   However, even when a line-based wavelet is used, the required buffer amount, that is, the amount of memory consumed varies depending on the coefficient buffer holding method, the wavelet transform decomposition level, the unit for executing encoding, and the like. Patent Document 2 discloses a method for performing wavelet transform on a line basis, but there is no description regarding control of the code block size, and there is also description regarding a method of compression under the limitation of available buffers. Not.

近年ではデジタルカメラや複写機などが処理する画像の解像度が非常に高くなっており、ラインベースウェーブレットを用いる場合でも、その消費メモリは、画像全体を処理するウェーブレットより遥かに小さいとはいえ、ラインでの処理が大きくなれば消費メモリも大きくなってしまうという問題が残る。   In recent years, the resolution of images processed by digital cameras, copiers, etc. has become very high, and even when using line-based wavelets, the memory consumed is much smaller than that of wavelets that process the entire image. The problem remains that the amount of memory consumed increases as the processing in the process increases.

また、このようなデジタルカメラ、デジタルスキャナ、複合機などの機器では、搭載されているメモリが小さいだけでなく、使用できるメモリに制限がある場合が多く、入力され得るどんな画像に対しても、使用できるメモリ容量内で正常に動作するように制御することが求められる。   In addition, in such devices as digital cameras, digital scanners, multifunction devices, etc., not only the installed memory is small, but there are many cases where the memory that can be used is limited, and for any image that can be input, Control is required to operate normally within the available memory capacity.

本発明は、前述した問題点に鑑みてなされたものであって、ラインベースウェーブレットを用いてJPEG2000方式で画像を符号化する際に、画像の圧縮効率を落とさずにメモリ容量の制限の下で、効率的な画像符号化を実現することをその目的の一つとする。   The present invention has been made in view of the above-described problems. When an image is encoded by the JPEG2000 system using a line-based wavelet, the memory capacity is limited without reducing the compression efficiency of the image. One of the purposes is to realize efficient image coding.

前述した課題を解決し、目的を達成するために、本発明にかかる画像符号化装置は、係数ラインバッファを用いたウェーブレット変換の処理を行う画像符号化装置において、符号化の対象となる画像を入力する画像入力手段と、画像入力手段で入力した画像の横方向のサイズに基づいて、符号化の最小単位であるコードブロックの縦方向のサイズを決定するコードブロックサイズ決定手段と、コードブロックサイズ決定手段で決定したコードブロックのサイズを用いて画像の符号化を行う画像符号化手段と、を備える。   In order to solve the above-described problems and achieve the object, an image encoding apparatus according to the present invention is an image encoding apparatus that performs wavelet transform processing using a coefficient line buffer. An image input means for inputting, a code block size determining means for determining a vertical size of a code block which is a minimum unit of encoding based on a horizontal size of an image input by the image input means, and a code block size Image encoding means for encoding an image using the code block size determined by the determining means.

本発明によれば、ラインベースのウェーブレット変換を用いて画像を符号化するので、画像処理を行う際に、使用可能なメモリ容量内で画像を処理することができ、省メモリを実現することができ、且つ、コードブロックが入力画像のサイズに応じて適切に設定されるので、画像の圧縮効率を落とさずに、メモリ容量の制限下で効率的な画像符号化を実現することができる、という効果を奏する。   According to the present invention, since an image is encoded using line-based wavelet transform, when performing image processing, the image can be processed within a usable memory capacity, and memory saving can be realized. In addition, since the code block is appropriately set according to the size of the input image, it is possible to realize efficient image coding under the limitation of the memory capacity without reducing the compression efficiency of the image. There is an effect.

図1は、JPEG2000の基本的な符号化と復号のアルゴリズムを説明するためのブロック図である。FIG. 1 is a block diagram for explaining basic encoding and decoding algorithms of JPEG2000. 図2は、一段のサブバンド分割(順変換)とデインターリーブ(逆変換)後のサブバンドの係数について示した図である。FIG. 2 is a diagram illustrating subband coefficients after one-stage subband division (forward conversion) and deinterleaving (inverse conversion). 図3は、画像分割における画像、タイル、サブバンド、プリシンクト、コードブロックの関係を示す図である。FIG. 3 is a diagram showing the relationship among images, tiles, subbands, precincts, and code blocks in image division. 図4は、コードブロックとビットプレーンの符号化順について示した図である。FIG. 4 is a diagram illustrating the coding order of code blocks and bit planes. 図5は、デコンポジションレベルが2であり、プリシンクトサイズとサブバンドサイズを同等としたときのレイヤとそれに含まれるパケットの例を示した図である。FIG. 5 is a diagram illustrating an example of a layer and a packet included in the layer when the decomposition level is 2 and the precinct size is equal to the subband size. 図6は、JPEG2000におけるパケットの属性の階層のプログレッション順を示した図である。FIG. 6 is a diagram showing the progression order of packet attribute hierarchies in JPEG2000. 図7は、本発明の第1の実施形態にかかるPCのハードウェア構成を示すブロック図である。FIG. 7 is a block diagram showing a hardware configuration of the PC according to the first embodiment of the present invention. 図8は、第1の実施形態にかかる画像符号化装置の符号化処理を示すブロック図である。FIG. 8 is a block diagram illustrating an encoding process of the image encoding device according to the first embodiment. 図9は、第1の実施形態にかかるラインベースウェーブレットのウインドウを示す図である。FIG. 9 is a diagram illustrating a line-based wavelet window according to the first embodiment. 図10は、第1の実施形態にかかるラインベースウェーブレット変換を示す概念図である。FIG. 10 is a conceptual diagram showing line-based wavelet transform according to the first embodiment. 図11は、第1の実施形態にかかるラインベースウェーブレット変換によるエントロピー符号化の処理を示すフローチャートである。FIG. 11 is a flowchart showing entropy encoding processing by line-based wavelet transform according to the first embodiment. 図12は、LLサブバンドについて、次段へのサブバンド分解の処理を示すフローチャートである。FIG. 12 is a flowchart showing subband decomposition processing to the next stage for the LL subband. 図13は、ウェーブレット変換と符号化に関する機能ブロック図である。FIG. 13 is a functional block diagram relating to wavelet transform and encoding. 図14は、本発明にかかるラインベース符号化での係数バッファの確保例について示した図である。FIG. 14 is a diagram showing an example of securing a coefficient buffer in line-based encoding according to the present invention. 図15は、JPEG2000のコードブロックサイズに対する制約を示すテーブル図である。FIG. 15 is a table showing restrictions on the code block size of JPEG2000. 図16は、サイズの異なる二つの画像とそのコードブロックサイズの例を示した図である。FIG. 16 is a diagram illustrating an example of two images having different sizes and their code block sizes. 図17は、サイズの異なる二つの画像とそのコードブロックサイズの例を示した図である。FIG. 17 is a diagram illustrating an example of two images having different sizes and their code block sizes. 図18は、本発明の第4の実施形態にかかる画像符号化装置の符号化処理を示すブロック図である。FIG. 18 is a block diagram illustrating an encoding process of the image encoding device according to the fourth embodiment of the present invention. 図19は、プリシンクト分割にかかるプリシンクトの分割単位について示した図である。FIG. 19 is a diagram showing a precinct division unit related to precinct division.

以下、添付図面を参照して、この発明にかかる画像符号化装置及び画像符号化方法の最良の実施形態を詳細に説明する。この実施形態により、この発明が限定されるものではない。また、下記実施形態における構成要素には、当業者が容易に想定できるもの、または実質的に同一のものが含まれる。   DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Exemplary embodiments of an image encoding device and an image encoding method according to the present invention are explained in detail below with reference to the accompanying drawings. The present invention is not limited to the embodiments. In addition, constituent elements in the following embodiments include those that can be easily assumed by those skilled in the art or those that are substantially the same.

図1〜6を参照して、JPEG2000の符号化処理の概要について説明する。なお、JPEG2000方式の変換式などの詳細については、非特許文献1を参照することによって得られる。JPEG2000は、画像圧縮方式の一つであって、従来広く用いられてきたJPEGを発展させた仕様であり、標準化・規格化されている。前述したように、ウェーブレット変換方式を採用しており、周波数帯域に分かれた縦横の周波数成分を量子化、符号化して圧縮を行う。詳細には、1次元の波を低周波成分と高周波成分に分割することがウェーブレットの作用であり、逆変換では低周波成分と高周波成分の組から元の信号を復元する。画像のような2次元のデータをウェーブレット変換すると、画像が行×列のデータの集合と捉えられるため、その各行又は各列に対して変換がなされる。   An overview of JPEG2000 encoding processing will be described with reference to FIGS. The details of the JPEG2000 conversion formula and the like can be obtained by referring to Non-Patent Document 1. JPEG2000 is one of image compression methods, and is a specification developed from JPEG, which has been widely used in the past, and has been standardized and standardized. As described above, the wavelet transform method is employed, and compression is performed by quantizing and encoding the vertical and horizontal frequency components divided into frequency bands. Specifically, the action of the wavelet is to divide a one-dimensional wave into a low-frequency component and a high-frequency component, and the original signal is restored from the combination of the low-frequency component and the high-frequency component in inverse transformation. When two-dimensional data such as an image is subjected to wavelet transform, the image is regarded as a set of row × column data, and therefore, the transformation is performed for each row or each column.

図1は、本発明にかかるJPEG2000の基本的な符号化と復号化のアルゴリズムを説明するためのブロック図である。   FIG. 1 is a block diagram for explaining a basic encoding and decoding algorithm of JPEG2000 according to the present invention.

まず、画像は重複しない矩形領域(タイル)に分割され(分割数≧1)、タイル単位で処理される(画像全体を1つのタイルとして処理することも可能である)。次に、タイルはRGBの3コンポーネントで構成されるカラー画像を符号化する際に、分割されたタイルを輝度及び色差のコンポーネントへの色変換が施される。色変換部1では、RGB画像を輝度色差系のYCrCb画像に変換することにより、カラー画像の圧縮効率を高める処理を行うことができる。色変換は、カラー画像を効率良く圧縮するために行うものである。色変換には、可逆と非可逆の2つの方法が定義されている。   First, the image is divided into rectangular regions (tiles) that do not overlap (number of divisions ≧ 1) and processed in units of tiles (the entire image can be processed as one tile). Next, when the tile encodes a color image composed of three RGB components, the divided tiles are subjected to color conversion into luminance and color difference components. The color conversion unit 1 can perform processing for increasing the compression efficiency of a color image by converting the RGB image into a luminance-chrominance YCrCb image. Color conversion is performed in order to efficiently compress a color image. Two methods of reversible and irreversible are defined for color conversion.

色変換されたコンポ−ネントは、2次元ウェーブレット変換部2において、ウェーブレット変換が施され、後述する4つのサブバンドに分割される。量子化部3では、量子化が行われ、エントロピー符号化部4、タグ処理部5を経て、符号化データが生成される。この処理が順変換で行われるのが符号化(圧縮)であり、逆変換で行われるのが復号(伸張)である。   The color-converted component is subjected to wavelet transform in the two-dimensional wavelet transform unit 2 and divided into four subbands described later. In the quantization unit 3, quantization is performed, and encoded data is generated via the entropy encoding unit 4 and the tag processing unit 5. This processing is performed by forward conversion in encoding (compression), and in reverse conversion is performed by decoding (decompression).

JPEG2000のウェーブレット変換においては、整数型では5×3フィルタ、実数型では9×7フィルタが採用されている。可逆5×3フィルタの特徴は、変換のために使用される係数が整数であること、及び変換後の係数を丸め処理によって整数にすることである。   In the JPEG2000 wavelet transform, an integer type 5 × 3 filter and a real number type 9 × 7 filter are employed. The feature of the reversible 5 × 3 filter is that the coefficients used for conversion are integers, and the converted coefficients are converted into integers by rounding.

ここで、可逆5×3フィルタの変換式を式(1)に示す。
順変換
Y(2n+1)=X(2n+1)-floor((X(2n)+X(2n+2))/2) [step 1]
Y(2n)=X(2n)+floor((Y(2n-1)+Y(2n+1)+2)/2) [step 2]
逆変換 ・・・(1)
X(2n)=Y(2n)-floor((Y(2n-1)+Y(2n+1)+2)/4) [step 1]
X(2n+1)=Y(2n+1)+floor((X(2n)+X(2n+2))/2) [step 2]
Here, the conversion formula of the reversible 5 × 3 filter is shown in Formula (1).
Forward conversion
Y (2n + 1) = X (2n + 1) -floor ((X (2n) + X (2n + 2)) / 2) [step 1]
Y (2n) = X (2n) + floor ((Y (2n-1) + Y (2n + 1) +2) / 2) [step 2]
Inverse transformation (1)
X (2n) = Y (2n) -floor ((Y (2n-1) + Y (2n + 1) +2) / 4) [step 1]
X (2n + 1) = Y (2n + 1) + floor ((X (2n) + X (2n + 2)) / 2) [step 2]

また、可逆5×3フィルタとは反対に、非可逆9×7フィルタの特徴は、変換のために使用される係数が実数であること及び変換後の係数に対して丸め処理を行わないことである。以下、非可逆9×7フィルタの変換式を式(2)に示す。
順変換
Y(2n+1)=X(2n+1)+α*(X(2n)+X(2n+2)) [step 1]
Y(2n)=X(2n)+β*(Y(2n-1)+Y(2n+1)) [step 2]
Y(2n+1)=Y(2n+1)+γ*(Y(2n)+Y(2n+2)) [step 3]
Y(2n)=Y(2n)+δ*(Y(2n-1)+Y(2n+1)) [step 4]
Y(2n+1)=Κ*Y(2n+1) [step 5]
Y(2n)=(1/Κ)*Y(2n) [step 6]
逆変換・・・(2)
X(2n)=Κ*Y(2n) [step 1]
X(2n+1)=(1/Κ)*Y(2n+1) [step 2]
X(2n)=X(2n)-δ*(X(2n-1)+X(2n+1)) [step 3]
X(2n+1)=X(2n+1)-γ*(X(2n)+X(2n+2)) [step 4]
X(2n)=X(2n)-β*(X(2n-1)+X(2n+1)) [step 5]
X(2n+1)=X(2n+1)-α*(X(2n)+X(2n+2)) [step 6]
但し、α=-1.586134342059924
β=-0.052980118572961
γ=0.882911075530934
δ=0.443506852043971
Κ=1.230174104914001
In contrast to the reversible 5 × 3 filter, the feature of the irreversible 9 × 7 filter is that the coefficients used for the conversion are real numbers and that the converted coefficients are not rounded. is there. Hereinafter, the conversion formula of the irreversible 9 × 7 filter is shown in Formula (2).
Forward conversion
Y (2n + 1) = X (2n + 1) + α * (X (2n) + X (2n + 2)) [step 1]
Y (2n) = X (2n) + β * (Y (2n-1) + Y (2n + 1)) [step 2]
Y (2n + 1) = Y (2n + 1) + γ * (Y (2n) + Y (2n + 2)) [step 3]
Y (2n) = Y (2n) + δ * (Y (2n-1) + Y (2n + 1)) [step 4]
Y (2n + 1) = Κ * Y (2n + 1) [step 5]
Y (2n) = (1 / Κ) * Y (2n) [step 6]
Inverse transformation (2)
X (2n) = Κ * Y (2n) [step 1]
X (2n + 1) = (1 / Κ) * Y (2n + 1) [step 2]
X (2n) = X (2n) -δ * (X (2n-1) + X (2n + 1)) [step 3]
X (2n + 1) = X (2n + 1) -γ * (X (2n) + X (2n + 2)) [step 4]
X (2n) = X (2n) -β * (X (2n-1) + X (2n + 1)) [step 5]
X (2n + 1) = X (2n + 1) -α * (X (2n) + X (2n + 2)) [step 6]
However, α = -1.586134342059924
β = -0.052980118572961
γ = 0.882911075530934
δ = 0.443506852043971
Κ = 1.230174104914001

図2は、一段のサブバンド分割(順変換)とデインターリーブ(逆変換)後のサブバンドの係数について示した図である。ウェーブレット変換によって、元の画像はHH,HL,LH,LLの4つのサブバンドに分割される。前述したように、2次元ウェーブレット変換では、縦方向の変換と横方向の変換を順に行うため、それぞれ2分の1サイズに分割され、結果的に4分の1サイズのサブバンドが4つ形成される。分割された4つのサブバンドの中から、LLサブバンドに対して再帰的にウェーブレット変換が行われ、再帰的ウェーブレット変換(デコンポジション)が繰り返されると、最終的に1つのサブバンドLLと複数のサブバンドHL,LH,HHが生成されることとなる。   FIG. 2 is a diagram illustrating subband coefficients after one-stage subband division (forward conversion) and deinterleaving (inverse conversion). By the wavelet transform, the original image is divided into four subbands HH, HL, LH, and LL. As described above, in the two-dimensional wavelet transform, the vertical direction conversion and the horizontal direction conversion are sequentially performed. Therefore, each of the two-dimensional wavelet transforms is divided into half sizes, resulting in the formation of four quarter-size subbands. Is done. When the wavelet transform is recursively performed on the LL subband from among the divided four subbands, and the recursive wavelet transform (decomposition) is repeated, finally one subband LL and a plurality of subbands Subbands HL, LH, and HH are generated.

順変換における変換後の係数は1/2に間引きされ、係数の数は変換前に対して水平方向、垂直方向ともに1/2の数になるが、HH、HL、LH、LLの4つのサブバンドに分解されるため、変換前と変換後で係数の数は変わらない。この分解をLL成分に対して再帰的に繰り返すことによって、JPEG2000の周波数分解が実現される。   The coefficients after conversion in the forward conversion are decimated to ½, and the number of coefficients is ½ in both the horizontal direction and the vertical direction with respect to the pre-conversion, but there are four subs of HH, HL, LH, and LL. Since it is decomposed into bands, the number of coefficients does not change before and after conversion. By repeating this decomposition recursively for the LL component, JPEG2000 frequency decomposition is realized.

図3は、画像分割における画像、タイル、サブバンド、プリシンクト、及びコードブロックの関係を示した図である。プリシンクトとは、サブバンドを矩形に分割したものであって、同じデコンポジションレベルのサブバンドHL,LH,HHの空間的に同じ位置にある3つの領域の組が1つのプリシンクトとして扱われる。ただし、LLサブバンドは、1つの領域が1つのプリシンクトとして扱われる。プリシンクトのサイズはサブバンドと同じサイズにすることができ、プリシンクトを分割した矩形領域がコードブロックである。ここで、コードブロックとは符号化の単位であり、エントロピー符号化はコードブロックごとに独立に行われる。物理的な大きさの序列は、画像≧タイル>サブバンド≧プリシンクト≧コードブロックとなる。   FIG. 3 is a diagram illustrating the relationship among images, tiles, subbands, precincts, and code blocks in image division. The precinct is a subband divided into rectangles, and a set of three regions at the same spatial position of subbands HL, LH, and HH having the same decomposition level is treated as one precinct. However, in the LL subband, one area is treated as one precinct. The size of the precinct can be the same as that of the subband, and the rectangular area into which the precinct is divided is a code block. Here, the code block is a unit of encoding, and entropy encoding is performed independently for each code block. The physical size order is image ≧ tile> subband ≧ precinct ≧ code block.

図4は、コードブロックとビットプレーンについての符号化順を示した図である。サブバンド分割がなされたことによって、コードブロック毎に、且つビットプレーン順に、係数のエントロピー符号化(ビットプレーン符号化)が行われる。プリシンクトに含まれる全てのコードブロックからビットプレーンの符号の一部を取り出して集め、ヘッダのついたものをパケットと呼ぶ。取り出した符号は、例えば、全てのコードブロックのMSBから、3枚目までのビットプレーンの符号を集めたものであってもよい。また、符号の一部は「空(から)」の状態であっても良いので、パケットの中身が符号的には「空(から)」ということもある。パケットのヘッダには、当該パケットに含まれる符号に関する情報が含まれており、各パケットは独立に扱うことができる。パケットは符号の単位である。   FIG. 4 is a diagram illustrating an encoding order for a code block and a bit plane. By performing subband division, coefficient entropy coding (bit-plane coding) is performed for each code block and in bit-plane order. A part of the code of the bit plane is extracted from all the code blocks included in the precinct and collected, and the one with the header is called a packet. The extracted code may be, for example, a collection of the code of bit planes up to the third one from the MSB of all code blocks. In addition, since a part of the code may be in an “empty” state, the contents of the packet may be “empty” from a code point of view. The header of the packet includes information regarding the code included in the packet, and each packet can be handled independently. A packet is a unit of code.

そして全てのプリシンクト(即ち、全てのコードブロック、全てのサブバンドと同じ)のパケットを集めると、画像全域の符号の一部(例えば、画像全域のウェーブレット係数のMSBから3枚目までのビットプレーンの符号)が生成されるが、これをレイヤと呼ぶ。レイヤは画像全体のビットプレーンの符号の一部であるので、復号されるレイヤ数が多いほど当該画像の画質は良好になる。すなわち、レイヤはビット深さ方向に形成された画質の単位である。すべてのレイヤが集められることによって、画像全体のビットプレーンが符号化されることとなる。   When packets of all precincts (ie, all code blocks and all subbands) are collected, a part of the code of the entire image area (for example, the MSB to the third bit plane of the wavelet coefficients of the entire image area) Is called a layer. Since the layer is a part of the code of the bit plane of the entire image, the image quality of the image becomes better as the number of decoded layers increases. That is, the layer is a unit of image quality formed in the bit depth direction. By collecting all the layers, the bit plane of the entire image is encoded.

図5は、デコンポジションレベルが2であり、プリシンクトサイズとサブバンドサイズを同等としたときのレイヤと、それに含まれるパケットの例を示した図である。パケットは、プリシンクトを単位とするものであるから、プリシンクトがサブバンドと同じであるとした場合、サブバンドHL〜HHをまたいだものとなる。また、説明を明瞭にするために、図中において、いくつかのパケットを太線で囲んだ。   FIG. 5 is a diagram illustrating an example of a layer and a packet included in the layer when the decomposition level is 2 and the precinct size is equal to the subband size. Since the packet is based on the precinct, when the precinct is the same as the subband, the packet spans the subbands HL to HH. Further, in order to clarify the explanation, some packets are surrounded by thick lines in the figure.

図6は、JPEG2000におけるパケットの属性の階層のプログレッション順を示した図である。生成されたパケット及びレイヤの区切りに従って、パケットを並べる作業を符号形成という。即ち、パケットは、どのコンポ−ネントに属するか、どの解像度レベルに属するか、どのプリシンクト(場所)に属するか、どのレイヤに属するか、という4つの属性を有する。パケットの配列とは、どの属性の順に階層的に並べるかを意味するものである。該配列順をプログレッションオーダとよび、図6を参照すると、5通りの配列順が示されている。   FIG. 6 is a diagram showing the progression order of packet attribute hierarchies in JPEG2000. The operation of arranging packets according to the generated packet and layer division is called code formation. That is, a packet has four attributes, which component belongs to, which resolution level belongs to which precinct (location), and which layer belongs to. The packet arrangement means which attributes are arranged in a hierarchical order. The arrangement order is called a progression order, and referring to FIG. 6, five arrangement orders are shown.

次に、エンコーダがプログレッション順にパケットを並べる様子、およびデコーダがプログレッション順にパケットの属性を解釈する様子の例を示す。コンポーネントをC、解像度レベルをR、プリシンクトをP、レイヤをLとすると、LRCPプログレッションの場合、L、R、C、Pの順にネストされた次のようなforループ
for (レイヤ){
for (解像度レベル){
for (コンポ−ネント){
for (プリシンクト){
エンコード時:パケットを配置
デコード時:パケットの属性を解釈




という階層順に、エンコード時にパケットが配列され、デコード時には、パケットの解釈がなされる。各パケットはパケットヘッダを有する。パケットヘッダに含まれる情報には、そのパケットが空かどうか、そのパケットにどのコードブロックが含まれるか、そのパケットに含まれる各コードブロックのゼロビットプレーン数、そのパケットに含まれる各コードブロック符号のコーディングパス数(ビットプレーン数)、そのパケットに含まれる各コードブロックの符号長などが含まれる。
Next, an example of how the encoder arranges packets in the order of progression and how the decoder interprets the attributes of the packets in the order of progression is shown. If the component is C, the resolution level is R, the precinct is P, and the layer is L, in the case of LRCP progression, the following for loop nested in the order of L, R, C, P
for (layer) {
for (resolution level) {
for (component) {
for (Precinct) {
Encoding: Place packet
When decoding: Interpret packet attributes}
}
}
}
In the hierarchical order, packets are arranged at the time of encoding, and packets are interpreted at the time of decoding. Each packet has a packet header. The information included in the packet header includes whether the packet is empty, which code block is included in the packet, the number of zero bit planes in each code block included in the packet, and the code block code included in the packet. The number of coding passes (number of bit planes), the code length of each code block included in the packet, and the like are included.

しかしながら、パケットヘッダにはレイヤ番号や解像度番号等の記載はなく、デコード時に、そのパケットがどのレイヤのどの解像度であるかを判別するには、メインヘッダ中のCODマーカに記載されたプログレッションオーダから上記forループを形成し、そのパケットに含まれる各コードブロックの符号長の和からパケットの切れ目を判別し、各パケットが、forループ内のどの位置でハンドリングされたかを見ればよい。即ち、パケットヘッダ中の符号長さえ読み出すことができれば、エントロピー符号自体をデコードしなくても、次のパケットを検出することができる。従って、任意のパケットにアクセスできることを意味する。   However, there is no description of the layer number, resolution number, etc. in the packet header, and in order to determine which layer of which resolution the packet is at the time of decoding, from the progression order described in the COD marker in the main header. The for loop may be formed, a packet break may be determined from the sum of the code lengths of the code blocks included in the packet, and it may be determined at which position in the for loop each packet is handled. That is, as long as the code length in the packet header can be read, the next packet can be detected without decoding the entropy code itself. Therefore, it means that any packet can be accessed.

(第1の実施形態)
本発明における第1の実施形態では、ウェーブレット変換方式を用いるJPEG2000による符号化方式において、係数ラインバッファを用いたウェーブレット変換方式を採用して、画像の符号化処理を行う画像符号化装置について説明する。
(First embodiment)
In the first embodiment of the present invention, an image encoding apparatus that performs an image encoding process using a wavelet transform method using a coefficient line buffer in a JPEG2000 encoding method that uses a wavelet transform method will be described. .

図7は、第1の実施形態にかかるパーソナルコンピュータ(PC)のハードウェア構成を示すブロック図である。本実施形態にかかるPC100は、CPU(Central Processing Unit)101、RAM(Random Access Memory)102、HDD(Hard Disk Drive)103等をシステムバス104により相互接続した一般的なPCである。なお、本実施形態では、画像符号化装置を備える一般的なPCについて説明したが、PCに限られず、MFP(Multi Function Peripheral)、デジタル複写機、プリンタ、ファクシミリ、スキャナ機能付コピーなどの画像符号化処理を行うものであれば、本実施形態の画像符号化装置を適用することができる。   FIG. 7 is a block diagram illustrating a hardware configuration of the personal computer (PC) according to the first embodiment. A PC 100 according to this embodiment is a general PC in which a CPU (Central Processing Unit) 101, a RAM (Random Access Memory) 102, an HDD (Hard Disk Drive) 103, and the like are interconnected by a system bus 104. In this embodiment, a general PC provided with an image encoding device has been described. However, the present invention is not limited to a PC, and image codes such as MFP (Multi Function Peripheral), digital copiers, printers, facsimiles, and copies with scanner functions are used. The image encoding apparatus according to the present embodiment can be applied as long as it can perform the encoding process.

CPU101は、PC100の全体を制御するためのマイクロプロセッサである。RAM102は、各種データを書換え可能に記憶する性質を有していることから、CPU101の作業エリアとして機能し、バッファ等の役割を果たす。HDD103は、画像やCPU101により実行される各種プログラムを記憶する情報記録媒体である。   The CPU 101 is a microprocessor for controlling the entire PC 100. Since the RAM 102 has a property of storing various data in a rewritable manner, the RAM 102 functions as a work area for the CPU 101 and functions as a buffer. The HDD 103 is an information recording medium that stores images and various programs executed by the CPU 101.

なお、情報記録媒体としては、HDD103のみならず、CD(Compact Disk)−ROM、DVD(Digital Versatile Disk)などの各種の光ディスク、各種光磁気ディスク、フレキシブルディスクなどの各種磁気ディスク等、半導体メモリ等の各種方式のメディアを用いることができる。また、図示しない外部I/F装置を介してインターネットなどのネットワークからプログラムをダウンロードし、HDD103にインストールするようにしてもよい。このような場合に、送信側のサーバでプログラムを記憶している記憶装置も、本発明における情報記録媒体である。なお、プログラムは、所定のOS(Operating System)上で動作するものであってもよい。その場合には、後述する各種処理の一部の実行をOSに肩代わりさせるものであってもよい。または、所定のアプリケーションソフトやOSなどを構成する一群のプログラムファイルの一部として含まれるものであってもよい。   As the information recording medium, not only the HDD 103 but also various optical disks such as CD (Compact Disk) -ROM and DVD (Digital Versatile Disk), various magnetic disks such as various magneto-optical disks and flexible disks, semiconductor memory, etc. Various types of media can be used. Alternatively, the program may be downloaded from a network such as the Internet via an external I / F device (not shown) and installed in the HDD 103. In such a case, the storage device that stores the program on the server on the transmission side is also an information recording medium in the present invention. The program may operate on a predetermined OS (Operating System). In that case, the OS may take over some of the various processes described below. Alternatively, it may be included as part of a group of program files that constitute predetermined application software, OS, or the like.

このシステム全体の動作を制御するCPU101は、このシステムの主記憶装置として使用されるHDD103に記憶されたプログラムに基づいて、各種処理を実行する。   The CPU 101 that controls the operation of the entire system executes various processes based on programs stored in the HDD 103 used as the main storage device of the system.

次に、PC100のHDD103に記憶されているプログラムがCPU101に実行させる機能のうち、本実施形態のPC100が備える特長的な機能について説明する。   Next, among the functions that the program stored in the HDD 103 of the PC 100 causes the CPU 101 to execute, the characteristic functions provided in the PC 100 of this embodiment will be described.

まず、図7を参照して、PC100が備える特長的な機能の概略について説明する。(1)HDD103より、処理対象となる原画像がCPU101からの命令によってRAM102に読み込まれる。(2)CPU101は、RAM102上の原画像を読み込み、後述するように、本実施形態のコードブロックサイズを決定し、ウェーブレット変換を用いた符号化を行う。(3)CPU101は、符号化されたデータをRAM102上の別の領域に書き込む。(4)CPU101からの命令によってその符号化されたデータがHDD103に保存される。   First, with reference to FIG. 7, an outline of characteristic functions provided in the PC 100 will be described. (1) From the HDD 103, an original image to be processed is read into the RAM 102 by a command from the CPU 101. (2) The CPU 101 reads the original image on the RAM 102, determines the code block size of the present embodiment, and performs encoding using wavelet transform, as will be described later. (3) The CPU 101 writes the encoded data in another area on the RAM 102. (4) The encoded data is stored in the HDD 103 according to a command from the CPU 101.

図8は、本実施形態にかかる画像符号化装置の符号化処理を示すブロック図である。図8によれば、画像入力部201は、符号化の対象となるRAM102に読み込まれた画像を入力画像として入力する。コードブロックサイズ決定部202は、画像入力部201で入力した画像のサイズ(画像の横方向のサイズ)を取り込み、画像のサイズに基づいて、符号化の最小単位であるコードブロックの縦方向のサイズを決定する。画像符号化部203は、画像入力部201から画像を入力し、コードブロックサイズ決定部202で決定したコードブロックのサイズを用いて、入力画像にウェーブレット変換処理を行い、入力画像の符号化を行う。ここで、画像符号化部203において行われる符号化処理は、量子化、係数ビットモデリング、エントロピー符号化の全ての符号化工程を行う処理である。符号化処理された画像は、一旦RAM102に書き込まれて、HDD103上の所定の領域に書き込まれる。   FIG. 8 is a block diagram illustrating an encoding process of the image encoding device according to the present embodiment. According to FIG. 8, the image input unit 201 inputs an image read into the RAM 102 to be encoded as an input image. The code block size determining unit 202 takes in the size of the image (the size in the horizontal direction of the image) input by the image input unit 201 and, based on the size of the image, the size in the vertical direction of the code block that is the minimum unit of encoding To decide. The image encoding unit 203 inputs an image from the image input unit 201, performs wavelet transform processing on the input image using the code block size determined by the code block size determination unit 202, and encodes the input image. . Here, the encoding process performed in the image encoding unit 203 is a process for performing all encoding steps of quantization, coefficient bit modeling, and entropy encoding. The encoded image is temporarily written in the RAM 102 and written in a predetermined area on the HDD 103.

次に、本実施形態のラインベース符号化について詳細に説明する。図9は、本実施形態にかかるラインベースウェーブレットのウインドウを表した図である。ラインベースウェーブレットは、前述したように、画像全体分の係数バッファを用意してウェーブレット変換を施す方法とは異なり、図9のように、画像を横方向に短冊状に切り出し、縦方向にLの長さを持つウインドウに対して順にウェーブレット変換を行う方法である。ここで、係数バッファは画像全体分を保持する必要はなく、同時に数ライン分の係数バッファを保持すれば良い。   Next, line-based encoding according to this embodiment will be described in detail. FIG. 9 is a view showing a line-based wavelet window according to the present embodiment. As described above, the line-based wavelet is different from the method in which the coefficient buffer for the entire image is prepared and wavelet transform is performed. As shown in FIG. 9, the image is cut into strips in the horizontal direction and L in the vertical direction. This is a method of performing wavelet transform in order on a window having a length. Here, it is not necessary for the coefficient buffer to hold the entire image, and it is sufficient to hold coefficient buffers for several lines at the same time.

図10は、本実施形態にかかるラインベースウェーブレット変換について示した図である。図10について詳細に説明すると、まずLラインの画像データ(図10の入力画素)をラインバッファに読み込む。ここで、入力画像の画素値に対して色変換を行う場合には、色変換後の各プレーンの画素値をLラインのラインバッファに展開する。次に、この画像データに対して垂直方向のウェーブレット変換を行うと、ハイパスフィルタ及びローパスフィルタによって、垂直方向ハイパス成分と垂直方向ローパス成分に分解される。このとき、Lの値はウェーブレット変換に用いるフィルタサイズ以上の値である必要がある。   FIG. 10 is a diagram illustrating the line-based wavelet transform according to the present embodiment. 10 will be described in detail. First, L-line image data (input pixels in FIG. 10) is read into the line buffer. Here, when color conversion is performed on the pixel value of the input image, the pixel value of each plane after color conversion is developed in a line buffer of L lines. Next, when vertical wavelet transform is performed on the image data, the image data is decomposed into a vertical high-pass component and a vertical low-pass component by a high-pass filter and a low-pass filter. At this time, the value of L needs to be larger than the filter size used for the wavelet transform.

次に、垂直方向ハイパス成分と垂直方向ローパス成分のそれぞれに対して、水平方向のウェーブレット変換を行う。この結果として生成されるのが、サブバンドHH、HL、LH、LLの係数成分であり、画像全体に同時にウェーブレット変換を行った場合に生成されるサブバンド係数成分と同じものである。図10ではウェーブレット変換に9×7フィルタを用いた例を示している。   Next, horizontal wavelet transform is performed on each of the vertical high-pass component and the vertical low-pass component. As a result, the coefficient components of the subbands HH, HL, LH, and LL are generated, which are the same as the subband coefficient components generated when the wavelet transform is simultaneously performed on the entire image. FIG. 10 shows an example in which a 9 × 7 filter is used for wavelet transform.

図10におけるフィルタの長さをFとすると、Fラインの画素値(もしくは色変換後の画素値)を読み込み、1ラインのサブバンドHH、HL、LH、LL成分を出力する。例えば、(F+K)ラインを一度に読み込んだ場合、一度に(1+K)ラインの各サブバンド信号が出力されることになる。生成されたサブバンド信号のうち、HH、HL、LHサブバンド信号はさらに分解がなされないため、HH、HL、LHのサブバンド信号については符号化ステップへ進むこととなる(図11参照)。一方、生成されたサブバンドのうち、LLサブバンドは、さらに次段のウェーブレット変換が行われ、下位の分解レベルのサブバンド信号に分解される。   If the length of the filter in FIG. 10 is F, the pixel value of the F line (or the pixel value after color conversion) is read, and one-line subbands HH, HL, LH, and LL components are output. For example, when the (F + K) line is read at a time, each subband signal of the (1 + K) line is output at a time. Among the generated subband signals, the HH, HL, and LH subband signals are not further decomposed, and therefore the HH, HL, and LH subband signals proceed to the encoding step (see FIG. 11). On the other hand, among the generated subbands, the LL subband is further subjected to the next wavelet transform to be decomposed into subband signals of lower decomposition levels.

図11は、本実施形態にかかるラインベースウェーブレット変換によるエントロピー符号化の処理を示すフローチャートである。ここでは、HH、HL、LHのサブバンド信号のラインベース符号化処理について、フローチャートに従って簡単に説明する。   FIG. 11 is a flowchart showing entropy encoding processing by line-based wavelet transform according to the present embodiment. Here, the line-based encoding processing of HH, HL, and LH subband signals will be briefly described with reference to a flowchart.

最初に、画像から短冊状に切り出した、画像の続くL行を係数バッファに読み込む(ステップS1101)。読み込まれた係数バッファのデータに対して、ウェーブレット変換を行う(ステップS1102)。ここで、エントロピー符号化を行う単位は、コードブロックごとであるため、コードブロック分の係数が生成される必要がある。ウェーブレット変換がなされた係数は、コードブロック単位の係数が生成されるまでメモリに蓄えられる。係数は画像のラインで出力され、コードブロックの縦方向のサイズに対して十分な変換係数が生成されれば(ステップS1103,Yes)、サブバンド係数は量子化される(ステップS1104)。量子化されたサブバンド係数は、ビットモデリングを行い(ステップS1105)、エントロピー符号化する処理が行われる(ステップS1106)。一方、コードブロックサイズに対して、十分な変換係数が生成されなければ(ステップS1103,No)、ステップS1101に戻り、続く係数バッファの読み込み処理が行われる。以上が、一段のウェーブレット変換についての処理である。   First, L lines following the image cut out in a strip shape from the image are read into the coefficient buffer (step S1101). Wavelet transform is performed on the read coefficient buffer data (step S1102). Here, since the unit for performing entropy coding is for each code block, it is necessary to generate coefficients for the code block. The coefficients subjected to the wavelet transform are stored in a memory until a coefficient for each code block is generated. The coefficients are output on the image line, and if sufficient transform coefficients are generated for the vertical size of the code block (step S1103, Yes), the subband coefficients are quantized (step S1104). The quantized subband coefficients are subjected to bit modeling (step S1105) and subjected to entropy coding (step S1106). On the other hand, if a sufficient transform coefficient is not generated for the code block size (step S1103, No), the process returns to step S1101, and the subsequent coefficient buffer reading process is performed. The above is the process for one-stage wavelet transform.

図12は、LLサブバンドについて、次段のサブバンド分解の処理を示すフローチャートである。以下、LLサブバンドの処理を簡単に説明する。図11のフローチャートと同様に、まず、画像から短冊状に切り出したL行を係数バッファに読み込み(ステップS1201)、係数バッファのデータに対してウェーブレット変換を行う(ステップS1202)。次に、前述したようにLLサブバンド信号については、さらに次段のウェーブレット変換が施されるため、再分解に十分なLLサブバンド係数が生成されれば(ステップS1203,Yes)、LLサブバンド係数のウェーブレット変換が行われて下位の分解レベルに分解される(ステップS1204)。再分解に十分とされるLLサブバンド係数が生成されなければ(ステップS1203,No)、ステップS1201に戻り、続く係数バッファの読み込み処理が行われる。ここで、最大分解レベルまで達したLLサブバンド成分は、他のHH、HL、LHサブバンドと同様に図11のフローチャートの流れに従って符号化される。   FIG. 12 is a flowchart showing the subband decomposition process of the next stage for the LL subband. Hereinafter, the processing of the LL subband will be briefly described. As in the flowchart of FIG. 11, first, L rows cut out in a strip shape from an image are read into the coefficient buffer (step S1201), and wavelet transform is performed on the data in the coefficient buffer (step S1202). Next, as described above, the LL subband signal is further subjected to the next wavelet transform. Therefore, if LL subband coefficients sufficient for re-decomposition are generated (step S1203, Yes), the LL subband signal is generated. A coefficient wavelet transform is performed to decompose the coefficient into lower decomposition levels (step S1204). If an LL subband coefficient sufficient for re-decomposition is not generated (step S1203, No), the process returns to step S1201, and the subsequent coefficient buffer reading process is performed. Here, the LL subband component that has reached the maximum resolution level is encoded according to the flow of the flowchart of FIG. 11 in the same manner as other HH, HL, and LH subbands.

図13は、ウェーブレット変換と符号化に関する機能ブロック図である。図13に示すように、ウェーブレット変換され、サブバンド分解された各係数は、HH、HL、LH、LL係数バッファに蓄えられる。係数バッファに蓄えられた係数のうち、HH、HL、LHの係数は符号化部へ入力され、符号が生成される。LLサブバンドの係数については、次段のウェーブレット変換がなされる。   FIG. 13 is a functional block diagram relating to wavelet transform and encoding. As shown in FIG. 13, the coefficients subjected to wavelet transform and subband decomposition are stored in HH, HL, LH, and LL coefficient buffers. Among the coefficients stored in the coefficient buffer, the HH, HL, and LH coefficients are input to the encoding unit, and a code is generated. For the coefficients of the LL subband, the next wavelet transform is performed.

次に、本実施形態のラインベース符号化に伴う係数バッファの確保例について説明する。図14は、本実施形態におけるラインベース符号化に伴う係数バッファの確保例を示した図である。例として、分解レベルが3の場合は、多段ウェーブレット変換の過程において、複数のサブバンド1HH、1HL、1LH、1LL、2HH、2HL、2LH、2LL、3HH、3HL、3LH、3LLのサブバンド係数が生成される。   Next, an example of securing a coefficient buffer associated with line-based encoding according to the present embodiment will be described. FIG. 14 is a diagram illustrating an example of securing a coefficient buffer associated with line-based encoding in the present embodiment. For example, when the decomposition level is 3, the subband coefficients of a plurality of subbands 1HH, 1HL, 1LH, 1LL, 2HH, 2HL, 2LH, 2LL, 3HH, 3HL, 3LH, and 3LL are obtained in the multistage wavelet transform process. Generated.

ラインベースウェーブレット変換ではなく、画像全体に適用されるようなウェーブレット変換を用いる場合は、複数のサブバンド係数が同時にメモリに展開される。しかし、ラインベースウェーブレット変換によれば、コードブロックごとに処理が行われるため、同時にメモリに展開されるのは、各サブバンドのコードブロックの縦サイズに相当するライン分とすることができる。   When using wavelet transform that is applied to the entire image instead of line-based wavelet transform, a plurality of subband coefficients are simultaneously developed in the memory. However, according to the line-based wavelet transform, since processing is performed for each code block, it is possible to develop a line corresponding to the vertical size of the code block of each subband at the same time.

例えば、コードブロックサイズが32*32であるとすると、全てのサブバンドに関して、それぞれ32ラインずつの係数バッファを同時に保持することとなる。32ライン分の係数が蓄積されたHH、HL、LHサブバンドは、随時エントロピー符号化までがなされ、符号が生成されるとメモリ上で保持する必要が無くなり、その部分が上書きされる。ここで、古いラインから優先的に上書きされる32ラインの循環バッファを用いることが望ましい。   For example, if the code block size is 32 * 32, 32 lines of coefficient buffers are simultaneously held for all subbands. The HH, HL, and LH subbands in which the coefficients for 32 lines are accumulated are subjected to entropy coding at any time, and when the codes are generated, there is no need to hold them in the memory, and the portions are overwritten. Here, it is desirable to use a 32-line circular buffer preferentially overwritten from the old line.

また、1LL、2LLサブバンドのサブバンド係数は、再帰的にウェーブレット変換されるため、必ずしも32ラインを必要とはしない。但し、さらにウェーブレット変換がなされるため、ウェーブレット変換に必要なフィルタサイズのラインバッファを備えることが必要である。ここでも、ウェーブレット変換の際のウィンドウサイズに応じて、循環バッファを用いることが望ましい。   Further, since the subband coefficients of the 1LL and 2LL subbands are recursively wavelet transformed, 32 lines are not necessarily required. However, since wavelet transformation is further performed, it is necessary to provide a line buffer having a filter size necessary for wavelet transformation. Again, it is desirable to use a circular buffer depending on the window size at the time of wavelet transform.

前述した係数バッファを用いる場合、ラインベースウェーブレット変換の処理の過程において必要なメモリ量は、入力画像の入力方向に対する横方向のサイズ(横サイズ)と、コードブロックの縦方向のサイズ(縦サイズ)によって決定される。   When the coefficient buffer described above is used, the amount of memory required in the process of line-based wavelet transform is the size in the horizontal direction (horizontal size) relative to the input direction of the input image and the size in the vertical direction of the code block (vertical size). Determined by.

ここで、コードブロックの縦方向のサイズを算出する方法について説明する。入力画像の横方向のサイズをW、コードブロックの縦方向のサイズをCv、入力された画素(もしくは色変換後の画素)の精度をPバイト、分解レベルをn、サブバンド係数の精度をBytesCoeffバイトとすると、ウェーブレット変換を行う際に画素値(もしくはLL成分)をL行ずつ読み込むウィンドウラインバッファと、同時に全てのサブバンド係数を保持する係数バッファの合計から計算されるメモリ使用量は、式(3)のように算出できる。

Figure 2010213059
よって、上記式(3)を用いて、使用可能なメモリ使用量と画像横サイズから、コードブロックの縦方向の最大サイズを算出することが望ましい。 Here, a method for calculating the vertical size of the code block will be described. The horizontal size of the input image is W, the vertical size of the code block is C v , the accuracy of the input pixel (or pixel after color conversion) is P bytes, the resolution level is n, and the accuracy of the subband coefficients is When Bytes Coeff bytes are used, the memory usage calculated from the sum of the window line buffer that reads pixel values (or LL components) line by line when performing wavelet transform and the coefficient buffer that holds all subband coefficients at the same time is And can be calculated as shown in Equation (3).
Figure 2010213059
Therefore, it is desirable to calculate the maximum size of the code block in the vertical direction from the usable memory usage and the horizontal size of the image using the above equation (3).

ここで、コードブロックサイズには一定の制限が設けられる。図15は、JPEG2000のコードブロックサイズに対する制限を示すテーブル図である。図15に示されたように、コードブロックサイズは、算出した最大コードブロックサイズを超えず、2のべき乗であって、縦サイズと横サイズにおける2のべき乗の指数の和が12以下である値を選択することが望ましい。   Here, there is a certain restriction on the code block size. FIG. 15 is a table showing restrictions on the code block size of JPEG2000. As shown in FIG. 15, the code block size does not exceed the calculated maximum code block size and is a power of 2, and the sum of exponents of powers of 2 in the vertical size and the horizontal size is 12 or less. It is desirable to select.

本実施形態にかかる画像符号化装置によれば、入力画像の横サイズによって符号化の最小単位であるコードブロックの縦方向のサイズを決定するので、使用可能なメモリ容量内で画像を処理することができ、高解像度の画像に対しても省メモリを実現することができる。また、入力画像の横サイズを用いて、ウェーブレット変換処理に利用可能なメモリ領域の最大容量から、コードブロックの縦方向のサイズを算出するようにしたので、画像の符号化効率を落とさずに、メモリ容量の制限下で効率的な符号化を実現することができる。   According to the image coding apparatus according to the present embodiment, since the vertical size of the code block, which is the minimum unit of coding, is determined by the horizontal size of the input image, the image is processed within the usable memory capacity. Thus, memory saving can be realized even for high-resolution images. In addition, since the horizontal size of the input image is used to calculate the vertical size of the code block from the maximum capacity of the memory area that can be used for the wavelet transform process, without reducing the encoding efficiency of the image, Efficient encoding can be realized under the limitation of memory capacity.

(第2の実施形態)
本発明の第2の実施形態では、コードブロックの縦方向のサイズを決定する際、第1の入力画像の横方向のサイズより第2の入力画像の横方向のサイズが大きい場合、第1の画像に用いるコードブロックの縦方向のサイズより第2の画像に用いるコードブロックの縦方向のサイズを小さくする画像符号化装置について説明する。
(Second Embodiment)
In the second embodiment of the present invention, when determining the vertical size of the code block, if the horizontal size of the second input image is larger than the horizontal size of the first input image, An image coding apparatus that reduces the size of the code block used for the second image in the vertical direction from the size of the code block used for the image will be described.

本実施形態においても、第1の実施形態で説明した一般的なハードウェア構成を有するPCが用いられる(図7参照)。また、第1の実施形態で示した画像符号化装置の符号化処理の機能を同様に有する(図8参照)。   Also in this embodiment, a PC having the general hardware configuration described in the first embodiment is used (see FIG. 7). Moreover, it similarly has the function of the encoding process of the image encoding device shown in the first embodiment (see FIG. 8).

画像を横方向に短冊状に切り出したラインを基準とした係数ラインバッファを用いるラインベースウェーブレット変換であれば、横サイズが非常に大きい画像を処理する場合に、ウェーブレット変換の係数バッファとして大量の作業用メモリが必要となる。そのために、入力画像の横サイズに応じて、コードブロックサイズを決定することが望ましい。   A line-based wavelet transform that uses a coefficient line buffer based on a line obtained by cutting an image into a strip in the horizontal direction. When processing images with very large horizontal sizes, a large amount of work can be done as a wavelet transform coefficient buffer. Memory is required. Therefore, it is desirable to determine the code block size according to the horizontal size of the input image.

図16は、サイズの異なる二つの画像とそれらのコードブロックサイズの例を示した図である。図16に示すように、例えば、入力画像の横サイズが2048画素である画像1を符号化するときには、コードブロックの縦サイズが64であるコードブロックを用いて符号化する。また、入力画像の横サイズが4096の画像2を符号化するときには、コードブロックの縦サイズが32であるコードブロックを用いて符号化する。   FIG. 16 is a diagram illustrating an example of two images having different sizes and their code block sizes. As shown in FIG. 16, for example, when encoding an image 1 in which the horizontal size of the input image is 2048 pixels, the code block is encoded using a code block having a vertical size of 64. In addition, when the image 2 in which the horizontal size of the input image is 4096 is encoded, the code block is encoded using the code block whose vertical size is 32.

このように、相対的に横方向に長い画像2の場合は、コードブロックの縦サイズが32に制限されるため、縦サイズ64のコードブロックサイズを使用した場合と比較して、ラインベースによる大量の作業用メモリが発生するのを抑えることができる。画像1の処理時においても、画像2の処理時においても、処理時に必要とされる作業用メモリが大きく変化することがないため、安定して画像の符号化を行うことができる。   In this way, in the case of the image 2 that is relatively long in the horizontal direction, the vertical size of the code block is limited to 32, so that a large amount of line base is used compared to the case where the code block size of the vertical size 64 is used. Generation of the working memory can be suppressed. Since the working memory required at the time of processing does not change greatly during the processing of the image 1 and the processing of the image 2, the image can be stably encoded.

本実施形態によれば、画像サイズの違いによって、メモリで処理される係数バッファの量が増加するのを抑えることができるため、画像サイズの違いによる影響を受けることなく、安定的な画像符号化処理を実現することができる。   According to the present embodiment, it is possible to suppress an increase in the amount of coefficient buffers processed in the memory due to a difference in image size, so that stable image coding is not affected by the difference in image size. Processing can be realized.

(第3の実施形態)
本発明の第3の実施形態では、コードブロックの縦方向のサイズを決定する際、第1の入力画像の横方向のサイズより第2の入力画像の横方向のサイズが大きい場合、コードブロックの面積を保ったままで、第1の画像に用いるコードブロックの縦方向のサイズより第2の画像に用いるコードブロックの縦方向のサイズを小さくする画像符号化装置について説明する。
(Third embodiment)
In the third embodiment of the present invention, when determining the vertical size of the code block, if the horizontal size of the second input image is larger than the horizontal size of the first input image, the code block An image encoding apparatus will be described in which the size of the code block used for the second image is made smaller than the size of the code block used for the first image while maintaining the area.

本実施形態においても、第1の実施形態で説明した一般的なハードウェア構成を有するPCが用いられる(図7参照)。また、第1の実施形態で示した画像符号化装置の符号化処理の機能を同様に有する(図8参照)。   Also in this embodiment, a PC having the general hardware configuration described in the first embodiment is used (see FIG. 7). Moreover, it similarly has the function of the encoding process of the image encoding device shown in the first embodiment (see FIG. 8).

コードブロックサイズは、エントロピー符号化の効率に影響を及ぼす。コードブロック毎にエントロピー符号化のコンテクストが初期化されるためである。そのため、コードブロックサイズを決定する際には、コードブロックに含まれる係数の数が少なくなり過ぎてはいけない。64*64のサイズや32*32のサイズが適当な大きさであることが経験的に分かっている。   The code block size affects the efficiency of entropy coding. This is because the context of entropy coding is initialized for each code block. Therefore, when determining the code block size, the number of coefficients included in the code block must not be too small. It has been empirically found that the size of 64 * 64 and the size of 32 * 32 are appropriate.

例えば、図17に示すように、二種類の入力画像があり、相対的に横方向のサイズが短い画像と長い画像を符号化する場合を考える。図17に示されたように、入力画像の横方向のサイズが2048画素である画像1及び横方向のサイズが4096画素の画像2を符号化する。画像1を符号化する場合には、コードブロックサイズを縦64*横32とし、入力方向に対して縦長の矩形となる。また、画像2を符号化する場合には、コードブロックサイズを縦32*横64とし、入力方向に対して横長の矩形となる。   For example, as shown in FIG. 17, consider a case where there are two types of input images and an image having a relatively short horizontal size and a long image are encoded. As shown in FIG. 17, an image 1 in which the horizontal size of the input image is 2048 pixels and an image 2 in which the horizontal size is 4096 pixels are encoded. When the image 1 is encoded, the code block size is 64 * 32 in length and becomes a vertically long rectangle with respect to the input direction. Also, when encoding image 2, the code block size is 32 * 64 in length and becomes a rectangle that is horizontally long in the input direction.

コードブロックの縦方向のサイズを決定する際に、第1の入力画像の横方向のサイズより第2の入力画像の横方向のサイズが大きい場合、コードブロックの面積を一定に保ったままで、第1の画像に用いるコードブロックの縦方向のサイズより第2の画像に用いるコードブロックの縦方向のサイズを小さくする。即ち、コードブロックの面積が一定に保たれたまま、コードブロックの縦方向のサイズを小さくするので、コードブロックの横方向のサイズが大きくなることを意味する。   When determining the vertical size of the code block, if the horizontal size of the second input image is larger than the horizontal size of the first input image, the code block area is kept constant, The vertical size of the code block used for the second image is made smaller than the vertical size of the code block used for the first image. That is, since the code block size is reduced while the code block area is kept constant, it means that the code block size is increased.

このように、コードブロックの面積を一定にして縦方向のサイズを調整することによって、コードブロックに含まれる係数の数を減らすことなく一定に保つことができ、消費メモリの増加を防ぐことができる。   Thus, by adjusting the vertical size while keeping the area of the code block constant, the code block can be kept constant without reducing the number of coefficients included in the code block, and an increase in memory consumption can be prevented. .

なお、第1〜第3の実施形態において用いた入力画像の横方向のサイズを入力画像の縦方向のサイズとしてもよく、その際にコードブロックの縦方向のサイズは、コードブロックの横方向のサイズとしてもよい。換言すれば、入力画像の横方向を入力画像の縦方向に、コードブロックサイズの縦方向をコードブロックの横方向に、コードブロックサイズの横方向をコードブロックの縦方向に、置き換えてもよい。   The horizontal size of the input image used in the first to third embodiments may be the vertical size of the input image. In this case, the vertical size of the code block is the horizontal size of the code block. It is good also as a size. In other words, the horizontal direction of the input image may be replaced with the vertical direction of the input image, the vertical direction of the code block size may be replaced with the horizontal direction of the code block, and the horizontal direction of the code block size may be replaced with the vertical direction of the code block.

(第4の実施形態)
前述した第1〜3の実施形態では、サブバンド全体を分割して符号化する形態、即ち、主にプリシンクト分割を行わずに符号化する形態について説明した。第4の実施形態においては、プリシンクト分割を用いて画像を符号化する画像符号化装置について説明する。
(Fourth embodiment)
In the above-described first to third embodiments, the form in which the entire subband is divided and encoded, that is, the form in which encoding is performed without mainly performing the precinct division has been described. In the fourth embodiment, an image encoding apparatus that encodes an image using precinct division will be described.

本実施形態においても、第1の実施形態で説明した一般的なハードウェア構成を有するPCが用いられる(図7参照)。   Also in this embodiment, a PC having the general hardware configuration described in the first embodiment is used (see FIG. 7).

図18は、本実施形態にかかる画像符号化装置の符号化処理を示すブロック図である。図18によれば、画像入力部301は、符号化の対象となるRAM102に読み込まれた画像を入力画像として入力する。プリシンクトサイズ決定部302は、画像入力部301で入力した画像のサイズ(画像の横方向のサイズ)を取り込み、画像のサイズに基づいて、サブバンド係数空間で分割する単位であるプリシンクトの縦方向のサイズを決定する。画像符号化部303は、画像入力部301から画像を入力し、プリシンクトサイズ決定部302で決定したプリシンクトのサイズを用いて、入力画像にウェーブレット変換処理を行い、入力画像の符号化を行う。ここで、画像符号化部303において行われる符号化処理は、量子化、係数ビットモデリング、エントロピー符号化の全ての符号化工程を行う処理である。符号化処理された画像は、一旦RAM102に書き込まれて、HDD103上の所定の領域に書き込まれる。   FIG. 18 is a block diagram illustrating an encoding process of the image encoding device according to the present embodiment. According to FIG. 18, the image input unit 301 inputs an image read into the RAM 102 to be encoded as an input image. The precinct size determination unit 302 takes in the size of the image input in the image input unit 301 (the size in the horizontal direction of the image), and based on the image size, the precinct size determination unit 302 divides the precinct size in the subband coefficient space. Determine the size of the direction. The image encoding unit 303 inputs an image from the image input unit 301, performs wavelet transform processing on the input image using the precinct size determined by the precinct size determination unit 302, and encodes the input image. . Here, the encoding process performed in the image encoding unit 303 is a process for performing all encoding steps of quantization, coefficient bit modeling, and entropy encoding. The encoded image is temporarily written in the RAM 102 and written in a predetermined area on the HDD 103.

前述したように、コードブロックは、プリシンクトの矩形領域を超えないように切り取られる。即ち、コードブロックのサイズはプリシンクトのサイズを超えないため、本実施形態によれば、コードブロックサイズを変更することなく、プリシンクトサイズを変更することで、消費メモリの増加を抑えることができる。   As described above, the code block is cut out so as not to exceed the rectangular area of the precinct. That is, since the size of the code block does not exceed the size of the precinct, according to the present embodiment, it is possible to suppress an increase in memory consumption by changing the precinct size without changing the code block size. .

例えば、コードブロックサイズを64*64で一定の値をとるように設定する場合、入力画像の横方向のサイズが大きい場合は、例えば、32*32のプリシンクトサイズによってプリシンクト分割を行うと、プリシンクトサイズを超えるサブバンド係数を保持しておく必要はないので、コードブロックの縦方向のサイズを小さくした場合と同様の係数バッファ量の削減効果が得られる。   For example, when the code block size is set to be a constant value of 64 * 64, and the horizontal size of the input image is large, for example, when precinct division is performed with a precinct size of 32 * 32, Since it is not necessary to hold subband coefficients exceeding the precinct size, the same effect of reducing the coefficient buffer amount as when the code block vertical size is reduced can be obtained.

ここで、プリシンクト分割を行う際には、図19に示すような制約が設けられる。図19によれば、プリシンクトは、(0,0)を原点として水平方向に2のPPxべき乗、垂直方向に2のPPyべき乗の大きさで分割される。また、プリシンクト分割は各分解レベルに対して独立にプリシンクトサイズを決定することができる。全分解レベルにおいて同じプリシンクトサイズを用いてもよいし、特定の分解レベルのみをプリシンクト分割するということであってもよい。   Here, when precinct division is performed, restrictions as shown in FIG. 19 are provided. According to FIG. 19, the precinct is divided by the magnitude of PPx power of 2 in the horizontal direction and PPy power of 2 in the vertical direction with (0, 0) as the origin. Also, the precinct division can determine the precinct size independently for each decomposition level. The same precinct size may be used for all decomposition levels, or only a specific decomposition level may be precinct divided.

分解レベルが0である、即ち最大解像度を有するサブバンドは、1ラインに含まれる係数の数が最も多いので、分解レベル0のサブバンドを32*32などの適切なサイズでプリシンクト分割することが省メモリには最も効果的となる。   A subband having a resolution level of 0, that is, a subband having the maximum resolution has the largest number of coefficients included in one line, and therefore, a subband having a resolution level of 0 may be precinct divided by an appropriate size such as 32 * 32. It is most effective for saving memory.

本実施形態によれば、コードブロックサイズを一定に保ったままで、コードブロックサイズを変更することなく、プリシンクトサイズを決定することで消費メモリの増加を抑えた画像符号化処理を行うことができる。   According to the present embodiment, it is possible to perform image encoding processing that suppresses an increase in memory consumption by determining the precinct size without changing the code block size while keeping the code block size constant. it can.

以上、本発明について実施形態を用いて説明したが、前述した実施形態に多様な変更または改良を加えることができる。   As described above, the present invention has been described using the embodiment, but various modifications or improvements can be added to the above-described embodiment.

100 PC
101 CPU
102 RAM
103 HDD
104 システムバス
201、301 画像入力部
202 コードブロックサイズ決定部
203、303 画像符号化部
302 プリシンクトサイズ決定部
100 PC
101 CPU
102 RAM
103 HDD
104 System bus 201, 301 Image input unit 202 Code block size determining unit 203, 303 Image encoding unit 302 Precinct size determining unit

特開2005−295540号公報JP 2005-295540 A 特開2000−299863号公報JP 2000-299863 A

ISO/IEC 15444−1,ITU−T T.800 JPEG 2000ISO / IEC 15444-1, ITU-T TT. 800 JPEG 2000 Christos Chrysafis,Antonio Ortega著 「Line Based, Reduced Memory, Wavelet Image Compression」,IEEE Transactions on Image Processing,p398−407, 1998年Christos Chrysafis, Antonio Ortega, "Line Based, Reduced Memory, Wavelet Image Compression", IEEE Transactions on Image Processing, p 398-407.

Claims (11)

係数ラインバッファを用いたウェーブレット変換の処理を行う画像符号化装置において、
符号化の対象となる画像を入力する画像入力手段と、
前記画像入力手段で入力した画像の横方向のサイズに基づいて、符号化の最小単位であるコードブロックの縦方向のサイズを決定するコードブロックサイズ決定手段と、
前記コードブロックサイズ決定手段で決定したコードブロックのサイズを用いて画像の符号化を行う画像符号化手段と、
を備えることを特徴とする画像符号化装置。
In an image encoding device that performs wavelet transform processing using a coefficient line buffer,
An image input means for inputting an image to be encoded;
Code block size determining means for determining a vertical size of a code block which is a minimum unit of encoding based on a horizontal size of an image input by the image input means;
Image encoding means for encoding an image using the code block size determined by the code block size determining means;
An image encoding device comprising:
前記コードブロックサイズ決定手段は、前記画像入力手段で入力した画像の横方向のサイズを用いて、ウェーブレット変換処理に利用可能なメモリ領域の最大容量から、前記コードブロックの縦方向のサイズを算出することを特徴とする請求項1に記載の画像符号化装置。   The code block size determining means calculates the vertical size of the code block from the maximum capacity of the memory area available for wavelet transform processing using the horizontal size of the image input by the image input means. The image coding apparatus according to claim 1. 前記コードブロックサイズ決定手段は、前記コードブロックの縦方向のサイズを決定する際に、前記画像入力手段で入力した第1の画像の横方向のサイズより第2の画像の横方向のサイズが大きい場合、前記第1の画像に用いるコードブロックの縦方向のサイズより前記第2の画像に用いるコードブロックの縦方向のサイズを小さくすることを特徴とする請求項1または2に記載の画像符号化装置。   When the code block size determining unit determines the vertical size of the code block, the horizontal size of the second image is larger than the horizontal size of the first image input by the image input unit. 3. The image encoding according to claim 1, wherein the vertical size of the code block used for the second image is smaller than the vertical size of the code block used for the first image. apparatus. 前記コードブロックサイズ決定手段は、前記コードブロックの縦方向のサイズを決定する際に、前記画像入力手段で入力した第1の画像の横方向のサイズより第2の画像の横方向のサイズが大きい場合、前記コードブロックの面積を保ったままで、前記第1の画像に用いるコードブロックの縦方向のサイズより前記第2の画像に用いるコードブロックの縦方向のサイズを小さくすることを特徴とする請求項1〜3のいずれか一つに記載の画像符号化装置。   When the code block size determining unit determines the vertical size of the code block, the horizontal size of the second image is larger than the horizontal size of the first image input by the image input unit. In this case, the vertical size of the code block used for the second image is made smaller than the vertical size of the code block used for the first image while maintaining the area of the code block. Item 4. The image encoding device according to any one of Items 1 to 3. 前記コードブロックサイズ決定手段は、前記ウェーブレット変換によって生成される全てのサブバンドにおいて、前記コードブロックの縦方向のサイズ以上のライン数のバッファを用いて、前記画像入力手段で入力した画像の横方向のサイズに基づいて、前記コードブロックの縦方向のサイズを決定することを特徴とする請求項1または2に記載の画像符号化装置。   The code block size determination means uses a buffer having a number of lines equal to or larger than the vertical size of the code block in all subbands generated by the wavelet transform, and the horizontal direction of the image input by the image input means The image coding apparatus according to claim 1 or 2, wherein a size of the code block in a vertical direction is determined based on a size of the code block. 前記コードブロックサイズ決定手段は、前記ウェーブレット変換によって生成される全てのサブバンドにおいて、前記コードブロックの縦方向のサイズ以上のライン数のバッファを用いて、前記画像入力手段で入力した画像の横方向のサイズに基づいて、前記コードブロックの縦方向のサイズと同時に横方向のサイズを決定することを特徴とする請求項1または2に記載の画像符号化装置。   The code block size determination means uses a buffer having a number of lines equal to or larger than the vertical size of the code block in all subbands generated by the wavelet transform, and the horizontal direction of the image input by the image input means The image coding apparatus according to claim 1 or 2, wherein a size in the horizontal direction is determined simultaneously with a size in the vertical direction of the code block based on the size of the code block. 前記コードブロックの縦方向のサイズは、前記ウェーブレット変換の処理に用いるフィルタサイズ以上の値であることを特徴とする請求項1〜6のいずれか一つに記載の画像符号化装置。   The image coding apparatus according to claim 1, wherein a size of the code block in a vertical direction is a value equal to or larger than a filter size used for the wavelet transform process. 前記横方向のサイズを縦方向のサイズに、且つ、前記縦方向のサイズを横方向のサイズに置き換えて構成されたことを特徴とする請求項1〜7のいずれか一つに記載の画像符号化装置。   8. The image code according to claim 1, wherein the horizontal size is replaced with a vertical size, and the vertical size is replaced with a horizontal size. Device. 係数ラインバッファを用いたウェーブレット変換の処理を行う画像符号化装置において、
符号化の対象となる画像を入力する画像入力手段と、
前記画像入力手段で入力した画像の横方向のサイズに基づいて、サブバンド係数空間で分割する単位であるプリシンクトの縦方向のサイズを決定するプリシンクトサイズ決定手段と、
前記プリシンクトサイズ決定手段で決定したプリシンクトのサイズを用いて画像の符号化を行う画像符号化手段と、
を備えることを特徴とする画像符号化装置。
In an image encoding device that performs wavelet transform processing using a coefficient line buffer,
An image input means for inputting an image to be encoded;
Precinct size determining means for determining a vertical size of a precinct, which is a unit divided in a subband coefficient space, based on a horizontal size of an image input by the image input means;
Image encoding means for encoding an image using the size of the precinct determined by the precinct size determining means;
An image encoding device comprising:
画像符号化方式として、JPEG2000方式を用いたことを特徴とする請求項1〜9のいずれか一つに記載の画像符号化装置。   The image encoding apparatus according to claim 1, wherein the image encoding method is a JPEG2000 method. 請求項1〜10のいずれか一つに記載の画像符号化装置において実行される画像符号化方法。   The image coding method performed in the image coding apparatus as described in any one of Claims 1-10.
JP2009057801A 2009-03-11 2009-03-11 Image coding apparatus and image coding method Expired - Fee Related JP5201019B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009057801A JP5201019B2 (en) 2009-03-11 2009-03-11 Image coding apparatus and image coding method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009057801A JP5201019B2 (en) 2009-03-11 2009-03-11 Image coding apparatus and image coding method

Publications (2)

Publication Number Publication Date
JP2010213059A true JP2010213059A (en) 2010-09-24
JP5201019B2 JP5201019B2 (en) 2013-06-05

Family

ID=42972772

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009057801A Expired - Fee Related JP5201019B2 (en) 2009-03-11 2009-03-11 Image coding apparatus and image coding method

Country Status (1)

Country Link
JP (1) JP5201019B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8805107B2 (en) 2011-05-30 2014-08-12 Fujifilm Corporation Image data coding apparatus, method of controlling operation of same, and program therefor
JP2020526947A (en) * 2017-07-07 2020-08-31 キヤノン株式会社 Methods, devices, and programs for decoding video bitstreams

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003051952A (en) * 2001-08-06 2003-02-21 Fuji Xerox Co Ltd Image processing apparatus
JP2004357154A (en) * 2003-05-30 2004-12-16 Minolta Co Ltd Data processing unit
JP2006129447A (en) * 2004-09-29 2006-05-18 Ricoh Co Ltd Image processor, image processing method, and image processing program
JP2006262294A (en) * 2005-03-18 2006-09-28 Ricoh Co Ltd Image processing apparatus, image processing method, program, and recording medium

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003051952A (en) * 2001-08-06 2003-02-21 Fuji Xerox Co Ltd Image processing apparatus
JP2004357154A (en) * 2003-05-30 2004-12-16 Minolta Co Ltd Data processing unit
JP2006129447A (en) * 2004-09-29 2006-05-18 Ricoh Co Ltd Image processor, image processing method, and image processing program
JP2006262294A (en) * 2005-03-18 2006-09-28 Ricoh Co Ltd Image processing apparatus, image processing method, program, and recording medium

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8805107B2 (en) 2011-05-30 2014-08-12 Fujifilm Corporation Image data coding apparatus, method of controlling operation of same, and program therefor
JP2020526947A (en) * 2017-07-07 2020-08-31 キヤノン株式会社 Methods, devices, and programs for decoding video bitstreams

Also Published As

Publication number Publication date
JP5201019B2 (en) 2013-06-05

Similar Documents

Publication Publication Date Title
JP4177583B2 (en) Wavelet processing system, method and computer program
US7565020B2 (en) System and method for image coding employing a hybrid directional prediction and wavelet lifting
CN100401778C (en) Fast CODEC with high compression ratio and minimal required resources
EP1218824A1 (en) System and method for transmitting a digital image over a communication network
US20090245668A1 (en) Picture encoding apparatus and method, program and recording medium
WO1999053429A1 (en) Multiresolution compressed image management system and method
JP5469127B2 (en) Image data encoding apparatus, operation control method thereof, and program thereof
JP4349816B2 (en) Image processing apparatus, image compression apparatus, image processing method, image compression method, program, and recording medium
JP2004248152A (en) Image compressor, image decompressor, image compressing metod, image decompressing metod, program, and recording medium
US8611686B2 (en) Coding apparatus and method
JP2004242290A (en) Image processing apparatus and image processing method, image edit processing system, image processing program, and storage medium
JP4671354B2 (en) Image compression apparatus and image compression method
JP5088607B2 (en) Method for reducing defects introduced in digital video data to be printed
US9521431B2 (en) Method and a system for wavelet based processing
JP5201019B2 (en) Image coding apparatus and image coding method
JP2005039793A (en) Image encoding device, program, and storage medium
JP2007142614A (en) Image processing apparatus and method, program, and information recording medium
JP4489474B2 (en) Image processing apparatus, program, and recording medium
JP5843450B2 (en) Image processing apparatus and control method thereof
JP2006086579A (en) Image processing apparatus, program and storage medium
JP2004289333A (en) Data processing apparatus, data processing method, program, and recording medium
JP4114144B2 (en) Image encoding device, image encoding program, and image decoding program
JP4137458B2 (en) Fixed-length image encoding device
JP4055994B2 (en) Image processing apparatus, image processing method, program, and recording medium
Aguzzi et al. A new algorithm for the embedding of a prediction mechanism into the JPEG2000 coding chain

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120130

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120620

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121227

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130115

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130128

R151 Written notification of patent or utility model registration

Ref document number: 5201019

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

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

Free format text: PAYMENT UNTIL: 20160222

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees