JP4879151B2 - Encoder device, decoder device, wavelet transform method, and wavelet inverse transform method - Google Patents
Encoder device, decoder device, wavelet transform method, and wavelet inverse transform method Download PDFInfo
- Publication number
- JP4879151B2 JP4879151B2 JP2007324240A JP2007324240A JP4879151B2 JP 4879151 B2 JP4879151 B2 JP 4879151B2 JP 2007324240 A JP2007324240 A JP 2007324240A JP 2007324240 A JP2007324240 A JP 2007324240A JP 4879151 B2 JP4879151 B2 JP 4879151B2
- Authority
- JP
- Japan
- Prior art keywords
- coefficient
- pixel data
- conversion
- conversion coefficient
- unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Description
本発明はエンコーダ装置、デコーダ装置、ウェーブレット変換方法およびウェーブレット逆変換方法に関し、特に、ラインベース型の5×3可逆ウェーブレット変換を行うエンコーダ装置、デコーダ装置、ウェーブレット変換方法およびウェーブレット逆変換方法に関する。 The present invention relates to an encoder device, a decoder device, a wavelet transform method, and a wavelet inverse transform method, and more particularly, to an encoder device, a decoder device, a wavelet transform method, and a wavelet inverse transform method that perform line-based 5 × 3 reversible wavelet transform.
JPEG(Joint Photographic Experts Group)により2001年1月に規格化されたJPEG2000が知られている。JPEG2000は、従来のJPEGで採用されていた離散コサイン変換(DCT:Discrete Cosine Transform)をウェーブレット変換(DWT:Discrete Wavelet Transform)に置き換えることで、圧縮率を高めた場合のブロックひずみを目立たなくさせる。 JPEG2000 standardized in January 2001 by JPEG (Joint Photographic Experts Group) is known. JPEG2000 replaces discrete cosine transform (DCT) used in conventional JPEG with wavelet transform (DWT) to make block distortion inconspicuous when the compression ratio is increased.
このウェーブレット変換技術については、データ処理の効率化や高速化を図るため、種々の技術が知られている(例えば、特許文献1〜4参照)。
図15は、従来のウェーブレット変換を示す図である。
Regarding this wavelet transform technique, various techniques are known in order to increase the efficiency and speed of data processing (see, for example,
FIG. 15 is a diagram illustrating a conventional wavelet transform.
ウェーブレット変換部75は、垂直方向(列方向)の5×3可逆フィルタ処理を行い、その後、水平方向(行方向)の5×3可逆フィルタ処理を行うことで、変換結果の低周波成分LL、水平成分の高周波成分LH、垂直成分の高周波成分HL、対角成分の高周波成分HHを出力する。すなわち、1方向に対してウェーブレット変換処理を行い、その結果を別方向から再度変換することによって二次元のウェーブレット変換を行っている。なお、図中吹き出しは、画像の変換方向を示している。 The wavelet transform unit 75 performs 5 × 3 reversible filter processing in the vertical direction (column direction), and then performs 5 × 3 reversible filter processing in the horizontal direction (row direction), so that the low-frequency component LL of the transform result is obtained. A horizontal high-frequency component LH, a vertical high-frequency component HL, and a diagonal high-frequency component HH are output. That is, two-dimensional wavelet transformation is performed by performing wavelet transformation processing on one direction and transforming the result from another direction again. Note that balloons in the figure indicate the image conversion direction.
図16は、従来のウェーブレット変換を示す図である。
図16に示すウェーブレット変換部70は、ブロックベースのウェーブレット変換を行う。
FIG. 16 is a diagram illustrating a conventional wavelet transform.
A wavelet transform unit 70 shown in FIG. 16 performs block-based wavelet transform.
ウェーブレット変換部70は、図16中左側からバッファ71、5×3垂直方向可逆フィルタ72、バッファ73および5×3水平方向可逆フィルタ74を備えている。
バッファ71は、入力される原画像データを矩形ブロック領域に分割して格納する。
The wavelet transform unit 70 includes a
The
5×3垂直方向可逆フィルタ72は、バッファ71に格納されているデータに垂直方向のフィルタ処理を施し一次元変換係数を算出する。
ここで、次式(1)、(2)に示すように、奇数列に存在する画素データX(2n+1)の一次元変換係数Y(2n+1)は垂直方向に隣接する3画素分の画素データX(2n)、X(2n+1)、X(2n+2)から算出する。また、偶数列に存在する画素データX(2n)の一次元変換係数Y(2n)は垂直方向に隣接する5画素分の画素データX(2n−2)、X(2n−1)、X(2n)、X(2n+1)、X(2n+2)から算出する。
The 5 × 3 vertical
Here, as shown in the following equations (1) and (2), the one-dimensional conversion coefficient Y (2n + 1) of the pixel data X (2n + 1) existing in the odd-numbered columns is the pixel data X for three pixels adjacent in the vertical direction. (2n), X (2n + 1), and X (2n + 2) are calculated. Further, the one-dimensional conversion coefficient Y (2n) of the pixel data X (2n) existing in the even columns is the pixel data X (2n-2), X (2n-1), X ( 2n), X (2n + 1), and X (2n + 2).
ここで、 here,
(floor演算部分)は、Aを超えない最大の整数値を意味する。
バッファ73は、5×3垂直方向可逆フィルタ72が算出した一次元変換係数を格納する。
(Floor operation part) means the maximum integer value not exceeding A.
The
5×3水平方向可逆フィルタ74は、バッファ73に格納されている一次元変換係数に水平方向のフィルタ処理を施し、二次元変換係数を算出する。
ところで、このようなウェーブレット変換機能を備える半導体集積回路は、携帯端末装置等の小型電子機器に用いられる場合も多く、回路規模を小さくしたいという要請がある。このため、バッファの容量を小さくすることでウェーブレット変換部の小型化を図る技術が知られている。
The 5 × 3 horizontal
By the way, a semiconductor integrated circuit having such a wavelet transform function is often used in a small electronic device such as a portable terminal device, and there is a demand for reducing the circuit scale. For this reason, a technique for reducing the size of the wavelet transform unit by reducing the capacity of the buffer is known.
図17は、ラインバッファを用いたウェーブレット変換部を示す図である。なお、図16と同様の機能を備える部分には同じ符号を付してその説明を省略する。
ウェーブレット変換部80は、リフティング構造を用いたウェーブレット変換を行う。
FIG. 17 is a diagram illustrating a wavelet transform unit using a line buffer. In addition, the same code | symbol is attached | subjected to the part provided with the function similar to FIG. 16, and the description is abbreviate | omitted.
The wavelet transform unit 80 performs wavelet transform using a lifting structure.
ウェーブレット変換部80は、図16に示すバッファ71の代わりにそれぞれ1ライン分(水平1列分)の画素データを保持するラインバッファ71a〜71dを有している。また、バッファ73の代わりに、それぞれ1画素分の画素データを保持するバッファ73a〜73dを有している。
The wavelet transform unit 80 includes
図18は、図17に示すウェーブレット変換部のフィルタ処理を示す図である。
ウェーブレット変換部80に奇数列目(1列目、3列目、・・・)の画素データX(2n+1)が入力されたとき、5×3垂直方向可逆フィルタ72は、以下の処理(奇数列ライン処理)を行う。
FIG. 18 is a diagram showing filter processing of the wavelet transform unit shown in FIG.
When the pixel data X (2n + 1) of the odd-numbered columns (first column, third column,...) Is input to the wavelet transform unit 80, the 5 × 3 vertical
5×3垂直方向可逆フィルタ72は、図18(a)に示すように、今回以前の処理にてラインバッファ71a〜71dにそれぞれ格納された4つの画素データX(2n−3)、X(2n−2)、X(2n−1)、X(2n)、ウェーブレット変換部80に今回入力された画素データX(2n+1)および画素データX(2n+2)で構成される垂直方向に並んだ6画素のうち、画素データX(2n−2)、X(2n−1)、X(2n)の3画素を用いて式(1)に従って一次元変換係数Y(2n−1)を算出し、バッファ73a〜73dのいずれかに格納する。なお、格納位置については後述する。
As shown in FIG. 18A, the 5 × 3 vertical
また、画素データX(2n−2)、X(2n−1)、X(2n)、X(2n+1)を次回以降の処理のためにラインバッファ71a〜71dの、画素データX(2n−3)、X(2n−2)、X(2n−1)、X(2n)が格納されていた部位に格納する(上書きする)。
Further, the pixel data X (2n−2), X (2n−1), X (2n), and X (2n + 1) are converted into the pixel data X (2n−3) of the
一方、ウェーブレット変換部80に偶数列目(2列目、4列目、・・・)の画素データX(2n+2)が入力されたとき、5×3垂直方向可逆フィルタ72は、以下の処理(偶数列ライン処理)を行う。
On the other hand, when the pixel data X (2n + 2) of the even-numbered columns (second column, fourth column,...) Is input to the wavelet transform unit 80, the 5 × 3 vertical
5×3垂直方向可逆フィルタ72は、図18(b)に示すように、ラインバッファ71a〜71dに格納されている画素データX(2n−2)、X(2n−1)、X(2n)、X(2n+1)および画素データX(2n+2)で構成される垂直方向に並んだ5画素を用いて式(2)に従って一次元変換係数Y(2n)を算出し、バッファ73a〜73dのいずれかに格納する。
As shown in FIG. 18B, the 5 × 3 vertical
また、次の(画素データX(2n+3)が入力されたときの)奇数列ライン処理のために、画素データX(2n−1)、X(2n)、X(2n+1)、X(2n+2)を、ラインバッファ71a〜71dの画素データX(2n−2)、X(2n−1)、X(2n)、X(2n+1)が格納されていた部位に格納する(上書きする)。
Further, pixel data X (2n−1), X (2n), X (2n + 1), and X (2n + 2) are processed for odd-numbered line processing (when pixel data X (2n + 3) is input). The pixel data X (2n-2), X (2n-1), X (2n), and X (2n + 1) of the
このようなラインバッファ71a〜71dを用いた構成にすることで、バッファの容量を削減することができる。
次に、一例として偶数列ライン処理の処理フローについて示す。
By adopting a configuration using
Next, as an example, the processing flow of even column line processing is shown.
図19、図20は、偶数列ライン処理の処理フローを示す図である。
偶数列ライン処理においてウェーブレット変換部80は、図19(a)〜(d)に示すように、式(2)に従って、垂直方向に並ぶ5画素から一次元変換係数Y(2n)を計算し、バッファ73a〜73dに逐次格納していく(垂直偶数処理)。なお、図19(a)〜(d)中、各上段の斜線部は、ラインバッファ71a〜71dから読み出した画素データを示し、黒く塗りつぶしてある部分は、入力された画素データを示している。また、各下段の黒く塗りつぶしてある部分は、一次元変換係数を示しており、斜線部は、一次元変換係数がバッファ73a〜73dに格納されたことを示している。
19 and 20 are diagrams showing a processing flow of even column line processing.
In the even-numbered line processing, the wavelet transform unit 80 calculates a one-dimensional transform coefficient Y (2n) from five pixels arranged in the vertical direction according to the equation (2), as shown in FIGS. The data is sequentially stored in the buffers 73a to 73d (vertical even processing). In FIGS. 19A to 19D, the hatched portions in the upper stage indicate pixel data read from the
そして、図20(a)に示すように、4つの一次元変換係数がバッファ73a〜73dに格納されている状態で、一次元変換係数Y(2n)が出力されると、水平方向に並ぶ5画素から二次元変換係数を算出する(水平偶数処理)。次に、図20(a)〜(c)に示すように、水平方向に並ぶ3画素から二次元変換係数を算出する(水平奇数処理)。以降、水平偶数処理と水平奇数処理を交互に行う。 Then, as shown in FIG. 20A, when the one-dimensional conversion coefficient Y (2n) is output in a state where the four one-dimensional conversion coefficients are stored in the buffers 73a to 73d, the horizontal alignment 5 A two-dimensional conversion coefficient is calculated from the pixel (horizontal even processing). Next, as shown in FIGS. 20A to 20C, a two-dimensional conversion coefficient is calculated from three pixels arranged in the horizontal direction (horizontal odd number processing). Thereafter, horizontal even processing and horizontal odd processing are alternately performed.
図21は、従来の他のウェーブレット変換を示す図である。
図21に示すウェーブレット変換部90は、図17に示すウェーブレット変換部80に比べラインバッファおよびバッファの個数がそれぞれ1つずつ少なく構成されている。
FIG. 21 is a diagram illustrating another conventional wavelet transform.
The wavelet transform unit 90 shown in FIG. 21 is configured so that the number of line buffers and buffers is one less than that of the wavelet transform unit 80 shown in FIG.
図22は、図21に示すウェーブレット変換部のフィルタ処理を示す図である。
奇数列ライン処理を行う場合、5×3垂直方向可逆フィルタ72は、画素データX(2n−2)の偶数列ライン処理時に得られた一次元変換係数Y(2n−1)をラインバッファ71a〜71cのいずれかから読み出し、バッファ73a〜73cのいずれかに格納する。
FIG. 22 is a diagram showing filter processing of the wavelet transform unit shown in FIG.
In the case of performing odd column line processing, the 5 × 3 vertical
そして、画素データX(2n)とウェーブレット変換部90に入力される画素データX(2n+1)と一次元変換係数Y(2n−1)とを次の(画素データX(2n+2)が入力されたときの)偶数列ライン処理のためにラインバッファ71a〜71cに格納する。
Then, when the pixel data X (2n), the pixel data X (2n + 1) and the one-dimensional conversion coefficient Y (2n-1) input to the wavelet transform unit 90 are input as the next (pixel data X (2n + 2)) (B) Store in the
また、偶数列ライン処理を行う場合、5×3垂直方向可逆フィルタ72は、奇数列ライン処理時にラインバッファ71a〜71cに格納した画素データX(2n)、X(2n+1)と、ウェーブレット変換部90に入力される画素データX(2n+2)とを用いて一次元変換係数Y(2n+1)を算出する。そして、ラインバッファ71a〜71cに格納した一次元変換係数Y(2n−1)を読み出し、今回算出したY(2n+1)と、画素データX(2n)とを用いて一次元変換係数Y(2n)を算出し、バッファ73a〜73cのいずれかに格納する。そして、次の(画素データX(2n+3)が入力されたときの)奇数列ライン処理のために、画素データX(2n+1)、X(2n+2)と、一次元変換係数Y(2n+1)とを画素データX(2n−1)、X(2n)および一次元変換係数Y(2n−1)が格納されていた部位に書き戻す。このようなウェーブレット変換部90によれば、3つのラインバッファ71a〜71cを用いてウェーブレット変換を行うことができる。
前述したように、ラインバッファの個数を減らすことで、使用メモリ量を削減することができる。
ところで、式(1)に示すように、一次元変換係数を求めるためには、3つの画素データを使用しているため、これ以上ラインバッファを減らそうとすると、可逆ウェーブレット変換を行うことは難しい。例えば、次式(4)を次式(5)のように、また、次式(6)を次式(7)のように近似すれば非可逆変換となってしまうため、誤差が生じる。
As described above, the amount of memory used can be reduced by reducing the number of line buffers.
By the way, as shown in the equation (1), since three pixel data are used to obtain a one-dimensional transformation coefficient, it is difficult to perform a reversible wavelet transformation if the line buffer is further reduced. . For example, if the following equation (4) is approximated as in the following equation (5) and the following equation (6) is approximated as in the following equation (7), an irreversible conversion results in an error.
例えばX(2n+1)=10、X(2n)=−3、X(2n+2)=−1とすると、 For example, if X (2n + 1) = 10, X (2n) =-3, and X (2n + 2) =-1,
一方、 on the other hand,
すなわち、floor演算部分を単純に展開して演算すると、演算結果に誤差が生じるという問題があった。
本発明はこのような点に鑑みてなされたものであり、少ない記憶容量でも精度の高いウェーブレット変換を行うことができるエンコーダ装置、デコーダ装置、ウェーブレット変換方法およびウェーブレット逆変換方法を提供することを目的とする。
That is, there is a problem that if the floor calculation part is simply expanded and calculated, an error occurs in the calculation result.
The present invention has been made in view of these points, and an object thereof is to provide an encoder device, a decoder device, a wavelet transform method, and a wavelet inverse transform method capable of performing highly accurate wavelet transform even with a small storage capacity. And
本発明では上記課題を解決するために、5×3ウェーブレット変換を行うエンコーダ装置1において、入力された画素データX(2n+1)(nは整数)と、画素データX(2n+1)より前に入力され、第1の格納部2に格納され画素データX(2n+1)に隣接する画素データX(2n)とを用いてH成分変換係数Y(2n+1)を規定するための第1の変換係数規定値とH成分変換係数Y(2n+1)の演算結果を補正する第1の変換補正係数とを算出し、画素データX(2n)と、既に処理が行われて第2の格納部3に格納されているH成分変換係数Y(2n−1)とを用いてL成分変換係数Y(2n)を規定するための第2の変換係数規定値とL成分変換係数Y(2n)の演算結果を補正する第2の変換補正係数とを算出し、第1の変換係数規定値と第1の変換補正係数とを第1の格納部2に格納し、第2の変換係数規定値と第2の変換補正係数とを第2の格納部3に格納するフィルタ処理部4、を有することを特徴とするエンコーダ装置1が提供される。
In the present invention, in order to solve the above-described problem, in the
このようなエンコーダ装置1によれば、フィルタ処理部4により、画素データX(2n+1)と画素データX(2n)とを用いて第1の変換係数規定値と第1の変換補正係数とが作成される。また、画素データX(2n)と、H成分変換係数Y(2n−1)とを用いて第2の変換係数規定値と第2の変換補正係数とが作成される。そして、第1の変換係数規定値と第1の変換補正係数とが第1の格納部2に格納され、第2の変換係数規定値と第2の変換補正係数とが第2の格納部3に格納される。
According to such an
また、本発明では上記課題を解決するために、5×3ウェーブレット逆変換を行うデコーダ装置において、入力されたL成分変換係数Y(2n+2)(nは整数)と、前記L成分変換係数Y(2n+2)より前に入力され、第1の格納部に格納され前記L成分変換係数Y(2n+2)に隣接するH成分変換係数Y(2n+1)とを用いて画素データX(2n+2)を規定するための第1の逆変換係数規定値と前記画素データX(2n+2)の演算結果を補正する第1の逆変換補正係数とを算出し、前記H成分変換係数Y(2n+1)と、既に処理が行われて第2の格納部に格納されている画素データX(2n)とを用いて画素データX(2n+1)を規定するための第2の逆変換係数規定値と前記画素データX(2n+1)の演算結果を補正する第2の逆変換補正係数とを算出し、前記第1の逆変換係数規定値と前記第1の逆変換補正係数とを前記第1の格納部に格納し、前記第2の逆変換係数規定値と前記第2の逆変換補正係数とを前記第2の格納部に格納するフィルタ処理部、を有することを特徴とするデコーダ装置が提供される。 Further, in the present invention, in order to solve the above-described problem, in a decoder device that performs 5 × 3 wavelet inverse transform, an input L component transform coefficient Y (2n + 2) (n is an integer) and the L component transform coefficient Y ( In order to define the pixel data X (2n + 2) using the H component conversion coefficient Y (2n + 1) input before 2n + 2) and stored in the first storage unit and adjacent to the L component conversion coefficient Y (2n + 2). The first inverse transform coefficient specified value and the first inverse transform correction coefficient for correcting the calculation result of the pixel data X (2n + 2) are calculated, and the H component transform coefficient Y (2n + 1) is already processed. The second inverse transform coefficient defining value for defining the pixel data X (2n + 1) using the pixel data X (2n) stored in the second storage unit and the pixel data X (2n + 1) Compensate calculation results A second inverse transformation correction coefficient is calculated, the first inverse transformation coefficient prescribed value and the first inverse transformation correction coefficient are stored in the first storage unit, and the second inverse transformation coefficient is stored. There is provided a decoder device comprising a filter processing unit for storing a prescribed value and the second inverse transform correction coefficient in the second storage unit.
このようなデコーダ装置によれば、フィルタ処理部により、L成分変換係数Y(2n+2)とH成分変換係数Y(2n+1)とを用いて第1の逆変換係数規定値と第1の逆変換補正係数とが作成される。また、H成分変換係数Y(2n+1)と画素データX(2n)とを用いて第2の逆変換係数規定値と第2の逆変換補正係数とが作成される。そして、第1の逆変換係数規定値と第1の逆変換補正係数とが第1の格納部に格納され、第2の逆変換係数規定値と第2の逆変換補正係数とが第2の格納部に格納される。 According to such a decoder device, the filter processing unit uses the L component conversion coefficient Y (2n + 2) and the H component conversion coefficient Y (2n + 1) to specify the first inverse conversion coefficient specified value and the first inverse conversion correction. And coefficients are created. Further, the second inverse transformation coefficient prescribed value and the second inverse transformation correction coefficient are created using the H component transformation coefficient Y (2n + 1) and the pixel data X (2n). Then, the first inverse transform coefficient prescribed value and the first inverse transform correction coefficient are stored in the first storage unit, and the second inverse transform coefficient prescribed value and the second inverse transform correction coefficient are the second Stored in the storage unit.
本発明によれば、第1の変換係数規定値と第1の変換補正係数とを第1の格納部に格納し、第2の変換係数規定値と第2の変換補正係数とを第2の格納部に格納しておくようにしたので、後のライン処理において格納した値および係数を用いることで、5×3可逆ウェーブレット変換を行うことができる。これにより、精度の高い画像変換を行うことができ、かつ、回路規模の縮小を図ることができる。 According to the present invention, the first conversion coefficient specified value and the first conversion correction coefficient are stored in the first storage unit, and the second conversion coefficient specified value and the second conversion correction coefficient are stored in the second storage unit. Since it is stored in the storage unit, 5 × 3 reversible wavelet transform can be performed by using values and coefficients stored in the subsequent line processing. As a result, highly accurate image conversion can be performed, and the circuit scale can be reduced.
以下、本発明の実施の形態を、図面を参照して詳細に説明する。
まず、本発明の概要について説明し、その後、実施の形態を説明する。
図1は、本発明の概要を示す図である。
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
First, an outline of the present invention will be described, and then an embodiment will be described.
FIG. 1 is a diagram showing an outline of the present invention.
エンコーダ装置1は、ラインベース型の5×3ウェーブレット変換を行う装置であり、第1の格納部2と、第2の格納部3と、フィルタ処理部4とを有している。
第1の格納部2および第2の格納部3は、それぞれ、外部から入力される原画像の画素データ並びにフィルタ処理部4が出力した値や係数を格納する。
The
The
フィルタ処理部4は、入力された画素データX(2n+1)(nは整数)と、画素データX(2n+1)に隣接する画素データX(2n)とを用いてH成分変換係数Y(2n+1)を規定する(H成分変換係数Y(2n+1)を導出する)ための第1の変換係数規定値(後述する演算値Toddに相当)とH成分変換係数Y(2n+1)の演算結果を補正する第1の変換補正係数(後述する補正値Foddに相当)とを算出する。ここで、画素データX(2n)は、画素データX(2n+1)より前に入力され、第1の格納部2に格納されている。
The
また、フィルタ処理部4は、画素データX(2n)と、既にフィルタ処理部4にて処理が行われて第2の格納部3に格納されているH成分変換係数Y(2n−1)とを用いてL成分変換係数Y(2n)を規定するための第2の変換係数規定値(後述する演算値Tevenに相当)とL成分変換係数Y(2n)の演算結果を補正する第2の変換補正係数(後述する補正値Fevenに相当)とを算出する。
Further, the
そして、フィルタ処理部4は、第1の変換係数規定値と第1の変換補正係数とを第1の格納部2に格納し、第2の変換係数規定値と第2の変換補正係数とを第2の格納部3に格納する。
Then, the
このようなエンコーダ装置1によれば、フィルタ処理部4により、画素データX(2n+1)と画素データX(2n)とを用いて第1の変換係数規定値と第1の変換補正係数とが作成される。また、画素データX(2n)と、H成分変換係数Y(2n−1)とを用いて第2の変換係数規定値と第2の変換補正係数とが作成される。そして、第1の変換係数規定値と第1の変換補正係数とが第1の格納部2に格納され、第2の変換係数規定値と第2の変換補正係数とが第2の格納部3に格納される。
According to such an
以下、本発明の実施の形態を説明する。
図2は、実施の形態のエンコーダ装置を示すブロック図である。
図2に示すJPEG2000エンコーダ100は、ウェーブレット変換部10と、EBCOT部20と、ストリーム生成部30とを有している。
Embodiments of the present invention will be described below.
FIG. 2 is a block diagram illustrating the encoder device according to the embodiment.
A JPEG 2000 encoder 100 shown in FIG. 2 includes a
ウェーブレット変換部10は、ラスタースキャン方式で入力される原画像の画像データを、5×3可逆ウェーブレット変換する。
EBCOT部20は、ウェーブレット変換の出力を圧縮する。
The
The
ストリーム生成部30は、ストリームを生成して出力する。
図3は、実施の形態のウェーブレット変換部の構成を示すブロック図である。
ウェーブレット変換部10は、ラインバッファ11aと、ラインバッファ11bと、5×3垂直方向可逆フィルタ12と、バッファ13aと、バッファ13bと、5×3水平方向可逆フィルタ14とを有している。
The
FIG. 3 is a block diagram illustrating a configuration of the wavelet transform unit according to the embodiment.
The
ラインバッファ11a、11bは、それぞれ原画像の1ライン分の画素データを格納する容量を備えている。
5×3垂直方向可逆フィルタ12は、ラインバッファ11a、11bに格納されている画像データと、入力される画像データとを用いて垂直方向のウェーブレット変換を行って一次元変換係数を算出する。
Each of the line buffers 11a and 11b has a capacity for storing pixel data for one line of the original image.
The 5 × 3 vertical
バッファ13a、13bは、それぞれ1画素分の画素データを格納する容量を備えている。このバッファ13a、13bは、5×3水平方向可逆フィルタ14で使用するデータを格納する。
Each of the
5×3水平方向可逆フィルタ14は、5×3垂直方向可逆フィルタ12と同様の機能を有している。
この5×3水平方向可逆フィルタ14は、バッファ13a、13bに格納されているデータと、5×3垂直方向可逆フィルタ12から出力される一次元変換係数とを用いて水平方向のウェーブレット変換を行って二次元変換係数を算出する。すなわち、ウェーブレット変換部10は、入力される原画素の垂直方向に並ぶ複数の画素データに対してウェーブレット変換処理を行い、その結果得られた一次元変換係数を水平方向に並べ、再度変換することによって二次元のウェーブレット変換を行っている。
The 5 × 3 horizontal
The 5 × 3 horizontal
以下、各フィルタの入力をX(画素位置)、出力をY(画素位置)で示す。つまり、5×3垂直方向可逆フィルタ12は、画素データXを入力し、一次元変換係数Yを出力する。出力された一次元変換係数Yは、5×3水平方向可逆フィルタ14で処理する際に、水平方向の座標に基づき一次元変換係数Xとして置き換え、5×3垂直方向可逆フィルタ12と同様の処理を行い、二次元変換係数Yを出力する。
Hereinafter, the input of each filter is indicated by X (pixel position) and the output is indicated by Y (pixel position). That is, the 5 × 3 vertical
ここで、ラインバッファ11a、11bと5×3垂直方向可逆フィルタ12とがそれぞれ第1の格納部、第2の格納部およびフィルタ処理部に対応する1つの処理単位を構成し、バッファ13a、13bおよび5×3水平方向可逆フィルタ14がそれぞれ第1の格納部、第2の格納部およびフィルタ処理部に対応する1つの処理単位を構成している。
Here, the line buffers 11a and 11b and the 5 × 3 vertical
次に、ウェーブレット変換部10のウェーブレット変換処理について説明する。
図4は、ウェーブレット変換部の処理を概念的に示す図である。ここで、図4(a)は、奇数列ライン処理を示す図であり、図4(b)は、偶数列ライン処理を示す図である。また、図4に示す矢印のうち、点線の矢印は、前回以前に処理を行った部分または、次回以降に処理を行う部分を示しており、実線の矢印は、今回、処理を行う部分を示している。
Next, the wavelet transform process of the
FIG. 4 is a diagram conceptually showing the processing of the wavelet transform unit. Here, FIG. 4A is a diagram illustrating odd column line processing, and FIG. 4B is a diagram illustrating even column line processing. In addition, among the arrows shown in FIG. 4, a dotted arrow indicates a part processed before or last time or a part processed after the next time, and a solid line arrow indicates a part processed this time. ing.
奇数列ライン処理を行う場合、5×3垂直方向可逆フィルタ12は、今回ウェーブレット変換部10に入力された奇数列目の画素データX(2n+1)とラインバッファ11aに格納されている偶数列目の画素データX(2n)とを用いて(垂直方向に並んだ2つの画素データを用いて)一次元変換係数(H成分変換係数)Y(2n+1)を規定するための演算値(第1の変換係数規定値)Toddおよび補正値(第1の変換補正係数)Foddを算出する。
When performing odd column line processing, the 5 × 3 vertical
ここで、演算値Toddおよび補正値Foddは、それぞれ次式(10)、(11)で表される。 Here, the calculated value T odd and the correction value F odd are expressed by the following equations (10) and (11), respectively.
ここで、補正値Foddは、画素データX(2n)の下位1ビット(2で除算した余り)を示している。
そして、演算値Toddおよび補正値Foddは、ともにラインバッファ11aの、画素データX(2n)が格納されていた場所に格納する(上書きする)。
Here, the correction value F odd indicates the lower 1 bit of the pixel data X (2n) (the remainder after division by 2).
The calculated value T odd and the correction value F odd are both stored (overwritten) in the
ここで、演算値Toddのビット数は、画素データX(2n)のビット数に等しく、補正値Foddのビット数は、1ビットであるため、ラインバッファ11aに格納される値の大きさは、画素データのビット数+1ビットである。
Here, the number of bits of the operation value T odd is equal to the number of bits of the pixel data X (2n), and the number of bits of the correction value F odd is 1 bit. Therefore, the value stored in the
このため、ラインバッファ11aの1つの格納領域の大きさは、従来に比べて1ビット多くなる。
また、演算値Toddおよび補正値Foddの算出と同時に、前回以前の処理によってラインバッファ11bに格納されている一次元変換係数Y(2n−1)と、画素データX(2n)とを用いて演算値(第2の変換係数規定値)Tevenおよび補正値(第2の変換補正係数)Fevenを算出する。
For this reason, the size of one storage area of the
Simultaneously with the calculation of the calculated value T odd and the correction value F odd , the one-dimensional conversion coefficient Y (2n−1) and the pixel data X (2n) stored in the
ここで、演算値Tevenおよび補正値Fevenは、それぞれ次式(12)、(13)で表される。 Here, the calculated value T even and the correction value F even are expressed by the following equations (12) and (13), respectively.
ここで、補正値Fevenは、一次元変換係数Y(2n−1)の下位2ビット(4で除算した余り)を示している。
一次元変換係数Y(2n−1)は、5×3水平方向フィルタ14で一次元変換係数X(2n)または一次元変換係数X(2n+1)として処理される。
Here, the correction value F even indicates the lower 2 bits of the one-dimensional conversion coefficient Y (2n−1) (the remainder after division by 4).
The one-dimensional conversion coefficient Y (2n−1) is processed by the 5 × 3
ここで、演算値Tevenのビット数は、一次元変換係数Y(2n−1)のビット数に等しく、補正値Fevenのビット数は、2ビットであるため、ラインバッファ11bに書き込まれる値の大きさは、一次元変換係数のビット数+2ビットである。
Here, since the number of bits of the operation value T even is equal to the number of bits of the one-dimensional conversion coefficient Y (2n-1) and the number of bits of the correction value F even is 2 bits, the value written to the
このため、ラインバッファ11bの1つの格納領域の大きさは、従来に比べて2ビット多くなる。
一方、偶数列ライン処理を行う場合、5×3垂直方向可逆フィルタ12は、今回ウェーブレット変換部10に入力された偶数列目の画素データX(2n+2)と、ラインバッファ11aに格納されている演算値Toddおよび補正値Foddを用いて一次元変換係数Y(2n+1)を算出する。
For this reason, the size of one storage area of the
On the other hand, when the even-column line processing is performed, the 5 × 3 vertical
ここで、一次元変換係数Y(2n+1)は、次式(14)で表される。 Here, the one-dimensional conversion coefficient Y (2n + 1) is expressed by the following equation (14).
また、一次元変換係数Y(2n+1)と、ラインバッファ11bから取得した演算値Tevenおよび補正値Fevenを用いて一次元変換係数Y(2n)を算出する。
ここで、一次元変換係数Y(2n)は、次式(15)で表される。
Further, the one-dimensional conversion coefficient Y (2n) is calculated using the one-dimensional conversion coefficient Y (2n + 1), the calculated value T even and the correction value F even acquired from the
Here, the one-dimensional conversion coefficient Y (2n) is expressed by the following equation (15).
そして、算出した一次元変換係数Y(2n)は、5×3水平方向フィルタ14で一次元変換係数X(2n)または一次元変換係数X(2n+1)として処理される。
その後、画素データX(2n+2)を、ラインバッファ11aの演算値Toddおよび補正値Foddが格納されていた場所に格納し(上書きし)、一次元変換係数Y(2n+1)をラインバッファ11bの演算値Tevenおよび補正値Fevenが格納されていた場所に格納する(上書きする)。
The calculated one-dimensional conversion coefficient Y (2n) is processed by the 5 × 3
Thereafter, the pixel data X (2n + 2) is stored (overwritten) in the
そして、画素データX(2n+3)が入力されたときの奇数列ライン処理時に画素データX(2n+2)および一次元変換係数Y(2n+1)を読み出し、処理を行う。
このようにして、5×3垂直方向可逆フィルタ12は、一次元変換係数Y(2n−1)、Y(2n)、Y(2n+1)、・・・を出力する。この処理の流れは、図19〜図20にて説明した、処理フローの流れと同様の流れになる。すなわち、例えば、垂直奇数位置のラインをウェーブレット変換部10に入力したとき、5×3垂直方向可逆フィルタ12は、ずっと奇数ライン処理を行う。5×3垂直方向可逆フィルタ12から出力された値は、5×3水平方向可逆フィルタ14に入力され、それらは5×3水平方向可逆フィルタ14内で偶数ライン処理と奇数ライン処理を交互に繰り返す。
Then, the pixel data X (2n + 2) and the one-dimensional conversion coefficient Y (2n + 1) are read and processed during odd column line processing when the pixel data X (2n + 3) is input.
In this way, the 5 × 3 vertical
次に、5×3垂直方向可逆フィルタ12および5×3水平方向可逆フィルタ14の内部構成について説明する。なお、5×3垂直方向可逆フィルタ12および5×3水平方向可逆フィルタ14は、処理するデータが異なっているだけで、その構成は等しいため、以下、代表的に5×3垂直方向可逆フィルタ12の内部構成について説明する。
Next, the internal configuration of the 5 × 3 vertical
図5は、5×3垂直方向可逆フィルタの構成を示すブロック図である。
5×3垂直方向可逆フィルタ12は、奇数列ライン処理を行う奇数列ライン処理部12aと、偶数列ライン処理を行う偶数列ライン処理部12bとを有している。
FIG. 5 is a block diagram showing a configuration of a 5 × 3 vertical reversible filter.
The 5 × 3 vertical
図6は、エンコーダの奇数列ライン処理部の構成を示すブロック図である。
奇数列ライン処理部12aは、演算部121aと、演算部122aと、減算部123aと、演算部124aと、演算部125aと、加算部126aとを有している。なお、ここでは一例として、画素データX(2n+1)が入力されたときの処理を示している。
FIG. 6 is a block diagram illustrating a configuration of an odd-numbered line processing unit of the encoder.
The odd-numbered
演算部121aは、ラインバッファ11aから読み出した画素データX(2n)を2で除算し、その除算結果(X(2n)/2)をfloor演算して減算部123aに出力する。
The
演算部122aは、ラインバッファ11aから読み出した画素データX(2n)を2で除算し、その余りX(2n)mod2をラインバッファ11aに出力する。
減算部123aは、入力された画素データX(2n+1)から演算部121aのfloor演算結果を減算し、その減算結果をラインバッファ11aに出力する。
The
The
演算部124aは、ラインバッファ11bから一次元変換係数Y(2n−1)を読み出して4で除算し、その除算結果Y(2n−1)/4をfloor演算して加算部126aに出力する。
The
また、奇数列ライン処理部12aは、ラインバッファ11bから読み出した一次元変換係数Y(2n−1)を出力する。
演算部125aは、ラインバッファ11bから読み出した一次元変換係数Y(2n−1)を4で除算し、その余りY(2n−1)mod4をラインバッファ11bに出力する。
The odd-numbered
The
加算部126aは、演算部124aが出力したfloor演算結果とラインバッファ11aから読み出した画素データX(2n)とを加算し、その加算結果をラインバッファ11bに出力する。
The
ここで、減算部123aが出力する値が演算値Toddとなり、演算部122aが出力する値が補正値Foddとなり、加算部126aが出力する値が演算値Tevenとなり、演算部125aが出力する値が補正値Fevenとなる。
Here, the value output from the
次に、偶数列ライン処理部12bの構成について説明する。
図7は、エンコーダの偶数列ライン処理部の構成を示すブロック図である。
偶数列ライン処理部12bは、演算部121bと、加算部122bと、演算部123bと、演算部124bと、加算部125bと、減算部126bと、演算部127bと、加算部128bと、加算部129bと、演算部130bと、演算部131bと、加算部132bと、加算部133bとを有している。なお、ここでは一例として、画素データX(2n+2)が入力されたときの処理を示している。
Next, the configuration of the even-numbered
FIG. 7 is a block diagram illustrating a configuration of an even-numbered line processing unit of the encoder.
The even-numbered
演算部121bは、入力された画素データX(2n+2)を2で除算し、その余りX(2n+2)mod2を加算部122bに出力する。
加算部122bは、演算部121bが出力した余りX(2n+2)mod2と、ラインバッファ11aから読み出した補正値Foddとを加算し、その加算結果(Fodd+X(2n+2)mod2)を演算部123bに出力する。
The
The
演算部123bは、加算部122bが出力した加算結果(Fodd+X(2n+2)mod2)を2で除算し、その除算結果(Fodd+X(2n+2)mod2)/2をfloor演算して加算部125bに出力する。
The
演算部124bは、入力された画素データX(2n+2)を2で除算し、その除算結果(X(2n+2)/2)をfloor演算して加算部125bに出力する。
加算部125bは、演算部123bが出力したfloor演算結果と演算部124bが出力したfloor演算結果とを加算し、その加算結果を減算部126bに出力する。
The
The
減算部126bは、ラインバッファ11aから読み出した演算値Toddから加算部125bが出力した加算結果を減算し、その減算結果を演算部127bおよび演算部131bに出力する。また加算部133bの演算終了後に、減算部126bの減算結果をラインバッファ11bに格納する(上書きする)。
The subtractor 126b subtracts the addition result output by the
演算部127bは、減算部126bが出力した減算結果を4で除算し、その余りを加算部128bに出力する。
加算部128bは、ラインバッファ11bから読み出した補正値Fevenと、演算部127bが出力した余りとを加算し、その加算結果を加算部129bに出力する。
The
The
加算部129bは、加算部128bが出力した加算結果に2を加算し、その加算結果を演算部130bに出力する。
演算部130bは、加算部129bが出力した加算結果を4で除算し、その除算結果をfloor演算して加算部132bに出力する。
The adding
The
演算部131bは、減算部126bが出力した減算結果を4で除算し、その除算結果をfloor演算して加算部132bに出力する。
加算部132bは、演算部130bが出力したfloor演算結果と演算部131bが出力したfloor演算結果とを加算し、その加算結果を加算部133bに出力する。
The
The
加算部133bは、ラインバッファ11bから読み出した演算値Tevenと加算部132bが出力した加算結果とを加算する。
ここで、減算部126bが出力する減算結果が一次元変換係数Y(2n+1)となり、加算部133bが出力する加算結果が一次元変換係数Y(2n)となる。
The
Here, the subtraction result output from the
また、偶数列ライン処理部12bは、入力された画素データX(2n+2)をラインバッファ11aに格納する(上書きする)。
このようなJPEG2000エンコーダ100によれば、補正値Fodd、Fevenを用いた演算を行うことにより、2つのラインバッファ11a、11bだけでも誤差の生じない5×3ウェーブレット変換を行うことができる。また、1つのラインバッファのデータ格納単位は、多少の例外はあるが、1つのラインバッファは画素データのビット数+1ビット、もう1つのラインバッファは画素データのビット数+2ビットとなる。なお、これは5×3垂直方向可逆フィルタ12の場合で、5×3水平方向可逆フィルタ14では一次変換係数のビット数+1や、一次変換係数のビット数+2というように、つまりはフィルタの入力のビット数+1、+2となる。デコーダでも同様で、フィルタの入力のビット数が基準となる。これにより、従来に比べてラインバッファの容量を削減することができる。
The even column
According to such a
なお、既に述べたように、水平方向のウェーブレット変換については、垂直方向のウェーブレット変換で生成された一次元変換係数群に対して、上記と同様にウェーブレット変換を施せばよい。なお、画面外部のデータが必要になるとき、隣接する画面内部のデータを折り返して用いることは垂直方向のウェーブレット変換の場合と同様である。 As already described, for the horizontal wavelet transform, the wavelet transform may be applied to the one-dimensional transform coefficient group generated by the vertical wavelet transform in the same manner as described above. Note that when data outside the screen is required, the data inside the adjacent screen is folded and used as in the case of the vertical wavelet transform.
なお、本実施の形態では、説明を分かりやすくするために、5×3垂直方向可逆フィルタ12は、奇数列ライン処理部12aおよび偶数列ライン処理部12bが備える各機能ブロックを別個に備えるものとして説明したが、本発明はこれに限らず、奇数列ライン処理部12aおよび偶数列ライン処理部12bが備える各機能ブロックの一部は兼用されていてもよい。
In the present embodiment, in order to make the explanation easy to understand, the 5 × 3 vertical
<デコード処理>
次に、デコード処理について説明する。
図8は、実施の形態のデコーダ装置を示すブロック図である。
<Decoding process>
Next, the decoding process will be described.
FIG. 8 is a block diagram illustrating a decoder device according to the embodiment.
JPEG2000デコーダ200は、JPEG2000エンコーダ100が出力したビットストリームを原画像(復元画像)に復元する。
このJPEG2000デコーダ200は、JPEG2000エンコーダ100の対称形となっており、ストリーム解析部40と、逆EBCOT部50と、ウェーブレット逆変換部60とを有している。
The JPEG 2000 decoder 200 restores the bit stream output from the JPEG 2000 encoder 100 to an original image (restored image).
The JPEG2000 decoder 200 is symmetrical to the JPEG2000 encoder 100, and includes a
図9は、ウェーブレット逆変換部の構成を示すブロック図である。
ウェーブレット逆変換部60は、1列分のデータを格納するラインバッファ61a、61bと、5×3垂直方向可逆フィルタ62と、バッファ63a、63bと、5×3水平方向可逆フィルタ64とを有している。これらラインバッファ61a、61bの機能は、ラインバッファ11a、11bに対応し、5×3垂直方向可逆フィルタ62の機能は、5×3垂直方向可逆フィルタ12に対応し、バッファ63a、63bの機能は、バッファ13a、13bに対応し、5×3水平方向可逆フィルタ64の機能は、5×3水平方向可逆フィルタ14に対応している。
FIG. 9 is a block diagram showing the configuration of the wavelet inverse transform unit.
The wavelet
ここで、ラインバッファ61a、61bと5×3垂直方向可逆フィルタ62とがそれぞれ第1の格納部、第2の格納部およびフィルタ処理部に対応する1つの処理単位を構成し、バッファ63a、63bおよび5×3水平方向可逆フィルタ64がそれぞれ第1の格納部、第2の格納部およびフィルタ処理部に対応する1つの処理単位を構成している。
Here, the line buffers 61a and 61b and the 5 × 3 vertical
このウェーブレット逆変換部60は、ウェーブレット変換部10の動作の逆の動作を行う。すなわち、まず、5×3水平方向可逆フィルタ64が、水平方向のウェーブレット逆変換を行い、次に、5×3垂直方向可逆フィルタ62が、垂直方向のウェーブレット逆変換を行う。
The wavelet
以下、各フィルタの入力をY(画素位置)、出力をX(画素位置)で示す。つまり、5×3水平方向可逆フィルタ64は、二次元変換係数Yを入力し、一次元変換係数Xを出力する。出力された一次元変換係数Xは、5×3垂直方向可逆フィルタ62で処理する際に、垂直方向の座標に基づき一次元変換係数Yとして置き換え、画素データXを出力する。
Hereinafter, the input of each filter is indicated by Y (pixel position) and the output is indicated by X (pixel position). That is, the 5 × 3 horizontal
図10は、ウェーブレット逆変換処理を概念的に示す図である。
次式(16)、(17)に示すように、画素データX(2n)は、垂直方向に隣接する3つの一次元変換係数Y(2n−1)、Y(2n)、Y(2n+1)から算出する。また、画素データX(2n+1)は、垂直方向に隣接する5つの一次元変換係数Y(2n−1)、Y(2n)、Y(2n+1)、Y(2n+2)、Y(2n+3)から算出する。
FIG. 10 is a diagram conceptually illustrating the wavelet inverse transform process.
As shown in the following equations (16) and (17), the pixel data X (2n) is obtained from three one-dimensional conversion coefficients Y (2n−1), Y (2n), and Y (2n + 1) adjacent in the vertical direction. calculate. The pixel data X (2n + 1) is calculated from five one-dimensional conversion coefficients Y (2n−1), Y (2n), Y (2n + 1), Y (2n + 2), and Y (2n + 3) adjacent in the vertical direction. .
次に、ウェーブレット逆変換部60のウェーブレット逆変換処理について説明する。
図11は、ウェーブレット逆変換部の処理を概念的に示す図である。ここで、図11(a)は、偶数列ライン処理を示す図であり、図11(b)は、奇数列ライン処理を示す図である。また、図11に示す矢印のうち、点線の矢印は、前回以前に処理を行った部分または、次回以降に処理を行う部分を示しており、実線の矢印は、今回、処理を行う部分を示している。
Next, the wavelet inverse transformation process of the wavelet
FIG. 11 is a diagram conceptually showing processing of the wavelet inverse transform unit. Here, FIG. 11A is a diagram illustrating even-numbered column line processing, and FIG. 11B is a diagram illustrating odd-numbered column line processing. In addition, among the arrows shown in FIG. 11, a dotted arrow indicates a portion processed before or last time or a portion processed after the next time, and a solid line arrow indicates a portion processed this time. ing.
偶数列ライン処理を行う場合、5×3垂直方向可逆フィルタ62は、今回5×3水平方向可逆フィルタ64から出力された一次元変換係数を置き換えた垂直方向に偶数番目の一次元変換係数Y(2n+2)とラインバッファ61aに格納されている一次元変換係数Y(2n+1)(垂直方向に並んだ2つの一次元変換係数)とを用いて画素データ(L成分逆変換係数)X(2n+2)を規定するための演算値(第1の逆変換係数規定値)TEVENおよび補正値(第1の逆変換補正係数)FEVENを算出する。
When performing even-column line processing, the 5 × 3 vertical
ここで、演算値TEVENおよび補正値FEVENは、それぞれ次式(18)、(19)で表される。 Here, the calculated value T EVEN and the correction value F EVEN are expressed by the following equations (18) and (19), respectively.
ここで、補正値FEVENは、一次元変換係数Y(2n+1)の下位2ビット(4で除算した余り)を示している。
演算値TEVENおよび補正値FEVENは、ともにラインバッファ61aの、一次元変換係数Y(2n+1)が格納されていた場所に格納する(上書きする)。
Here, the correction value F EVEN indicates the lower 2 bits of the one-dimensional conversion coefficient Y (2n + 1) (the remainder after division by 4).
The calculated value T EVEN and the correction value F EVEN are both stored (overwritten) in the
ここで、演算値TEVENのビット数は、一次元変換係数のビット数に等しく、補正値FEVENのビット数は、2ビットであるため、ラインバッファ61aに書き込まれる値の大きさは、一次元変換係数のビット数+2ビットである。
Here, since the number of bits of the operation value T EVEN is equal to the number of bits of the one-dimensional conversion coefficient and the number of bits of the correction value F EVEN is 2 bits, the size of the value written in the
このため、ラインバッファ61aの1つの格納領域の大きさは、従来に比べて2ビット多くなる。
また、演算値TEVENおよび補正値FEVENの算出と同時に、前回以前の処理によってラインバッファ61bに格納されている画素データX(2n)と、一次元変換係数Y(2n+1)とを用いて演算値(第2の逆変換係数規定値)TODDおよび補正値(第2の逆変換補正係数)FODDを算出する。
For this reason, the size of one storage area of the
Simultaneously with the calculation of the calculation value T EVEN and the correction value F EVEN , the calculation is performed using the pixel data X (2n) stored in the
ここで、演算値TODDおよび補正値FODDは、それぞれ次式(20)、(21)で表される。 Here, the calculated value T ODD and the correction value F ODD are expressed by the following equations (20) and (21), respectively.
ここで、補正値FODDは、画素データX(2n)の下位1ビット(2で除算した余り)を示している。
そして、画素データX(2n)を出力し、演算値TODDおよび補正値FODDを、ともに1つのラインバッファ61bの、画素データX(2n)が格納されていた場所に格納する(上書きする)。
Here, the correction value FODD indicates the lower 1 bit (the remainder after division by 2) of the pixel data X (2n).
Then, the pixel data X (2n) is output, and the calculated value T ODD and the correction value F ODD are both stored (overwritten) in the
ここで、演算値TODDのビット数は、一次元変換係数のビット数に等しく、補正値FODDのビット数は、1ビットであるため、ラインバッファ61bに書き込まれる値の大きさは、一次元変換係数のビット数+1ビットである。
Here, since the number of bits of the operation value T ODD is equal to the number of bits of the one-dimensional conversion coefficient and the number of bits of the correction value F ODD is 1 bit, the size of the value written to the
このため、ラインバッファ11bの1つの格納領域の大きさは、従来に比べて1ビット多くなる。
一方、奇数列ライン処理を行う場合、5×3垂直方向可逆フィルタ62は、5×3水平方向可逆フィルタ64から出力された垂直方向に奇数番目の一次元変換係数Y(2n+3)と、ラインバッファ61aに格納されている演算値TEVENおよび補正値FEVENを用いて画素データX(2n+2)を算出する。
For this reason, the size of one storage area of the
On the other hand, when performing odd-column line processing, the 5 × 3 vertical
ここで、画素データX(2n+2)は、次式(22)で表される。 Here, the pixel data X (2n + 2) is expressed by the following equation (22).
また、画素データX(2n+2)と、ラインバッファ61bから取得した演算値TODDおよび補正値FODDを用いて画素データX(2n+1)を算出する。
ここで、画素データX(2n+1)は、次式(23)で表される。
Also, the pixel data X (2n + 1) is calculated using the pixel data X (2n + 2), the calculated value T ODD and the correction value F ODD acquired from the
Here, the pixel data X (2n + 1) is expressed by the following equation (23).
そして、算出した画素データX(2n+1)を出力する。
また、一次元変換係数Y(2n+3)を、ラインバッファ61aの演算値TEVENおよび補正値FEVENが格納されていた場所に格納し(上書きし)、画素データX(2n+2)をラインバッファ61bの演算値TODDおよび補正値FODDが格納されていた場所に格納する(上書きする)。
Then, the calculated pixel data X (2n + 1) is output.
Further, the one-dimensional conversion coefficient Y (2n + 3) is stored (overwritten) at the place where the calculated value T EVEN and the correction value F EVEN of the
そして、一次元変換係数Y(2n+4)が入力されたときの偶数列ライン処理実行時に一次元変換係数Y(2n+3)および画素データX(2n+2)を読み出し、処理を行う。 Then, the one-dimensional conversion coefficient Y (2n + 3) and the pixel data X (2n + 2) are read and processed when the even-numbered line processing is executed when the one-dimensional conversion coefficient Y (2n + 4) is input.
このようにして、5×3垂直方向可逆フィルタ62は、5×3垂直方向可逆フィルタ12と同様に、画素データX(2n−1)、X(2n)、X(2n+1)、・・・を出力する。
In this manner, the 5 × 3 vertical direction
次に、5×3垂直方向可逆フィルタ62および5×3水平方向可逆フィルタ64の内部構成について説明する。なお、5×3垂直方向可逆フィルタ62および5×3水平方向可逆フィルタ64は、処理するデータが異なっているだけで、その構成は等しいため、以下、代表的に5×3垂直方向可逆フィルタ62の内部構成について説明する。
Next, the internal configuration of the 5 × 3 vertical
図12は、ウェーブレット逆変換部の5×3垂直方向可逆フィルタの構成を示すブロック図である。
5×3垂直方向可逆フィルタ62は、偶数列ライン処理を行う偶数列ライン処理部62aと、奇数列ライン処理を行う奇数列ライン処理部62bとを有している。
FIG. 12 is a block diagram showing the configuration of the 5 × 3 vertical reversible filter of the wavelet inverse transform unit.
The 5 × 3 vertical
図13は、デコーダの偶数列ライン処理部の構成を示すブロック図である。なお、ここでは一例として、一次元変換係数Y(2n+2)が入力されたときの処理を示している。
偶数列ライン処理部62aは、演算部621aと、演算部622aと、減算部623aと、演算部624aと、演算部625aと、加算部626aとを有している。
FIG. 13 is a block diagram showing the configuration of the even column line processing unit of the decoder. Here, as an example, processing when a one-dimensional conversion coefficient Y (2n + 2) is input is shown.
The even-numbered
演算部621aは、ラインバッファ61aから読み出した一次元変換係数Y(2n+1)を4で除算し、その除算結果(Y(2n+1)/4)をfloor演算して減算部623aに出力する。
The
演算部622aは、ラインバッファ61aから読み出した一次元変換係数Y(2n+1)を4で除算し、その余りY(2n+1)mod4をラインバッファ61aに出力する。
減算部623aは、一次元変換係数Y(2n+2)から演算部621aが出力したfloor演算結果を減算し、その減算結果をラインバッファ61aに出力する。
The
The
演算部624aは、ラインバッファ61bから読み出した画素データX(2n)を2で除算し、その除算結果(X(2n)/2)をfloor演算して加算部626aに出力する。
The
また、偶数列ライン処理部62aは、ラインバッファ61bから読み出した画素データX(2n)を出力する。
演算部625aは、ラインバッファ61bから読み出した画素データX(2n)を2で除算し、その余りX(2n)mod2をラインバッファ61bに出力する。
The even column
The
加算部626aは、演算部624aが出力したfloor演算結果とラインバッファ61aから読み出した一次元変換係数Y(2n+1)とを加算し、その加算結果をラインバッファ61bに出力する。
The
ここで、減算部623aが出力する値が演算値TEVENとなり、演算部622aが出力する値が補正値FEVENとなり、加算部626aが出力する値が演算値TODDとなり、演算部625aが出力する値が補正値FODDとなる。
Here, the value output from the
次に、奇数列ライン処理部62bの構成について説明する。
図14は、デコーダの奇数列ライン処理部の構成を示すブロック図である。
奇数列ライン処理部62bは、演算部621bと、加算部622bと、加算部623bと、演算部624bと、演算部625bと、加算部626bと、減算部627bと、演算部628bと、加算部629bと、演算部630bと、演算部631bと、加算部632bと、加算部633bとを有している。なお、ここでは一例として、一次元変換係数Y(2n+3)が入力されたときの処理を示している。
Next, the configuration of the odd column
FIG. 14 is a block diagram showing the configuration of the odd-numbered line processing unit of the decoder.
The odd-numbered
演算部621bは、入力された一次元変換係数Y(2n+3)を4で除算し、その余りY(2n+3)mod4を加算部622bに出力する。
加算部622bは、演算部621bが出力した余りY(2n+3)mod4と、ラインバッファ61aから読み出した補正値FEVENとを加算し、その加算結果(FEVEN+Y(2n+3)mod4)を加算部623bに出力する。
The
The
加算部623bは、加算部622bが出力した加算結果に2を加算し、その加算結果を演算部624bに出力する。
演算部624bは、加算部623bが出力した加算結果を4で除算し、その除算結果をfloor演算して加算部626bに出力する。
The
The
演算部625bは、入力された一次元変換係数Y(2n+3)を4で除算し、その除算結果(Y(2n+3)/4)をfloor演算して加算部626bに出力する。
加算部626bは、演算部625bが出力したfloor演算結果と演算部624bが出力したfloor演算結果を加算し、その加算結果を減算部627bに出力する。
The
The
減算部627bは、ラインバッファ61aから読み出した演算値TEVENから加算部626bが出力した加算結果を減算し、その減算結果を演算部628bおよび演算部631bに出力する。また、加算部633bの演算終了後に、減算部627bの減算結果をラインバッファ61bに格納する(上書きする)。
The
演算部628bは、減算部627bが出力した減算結果を2で除算し、その余りを加算部629bに出力する。
加算部629bは、ラインバッファ61bから読み出した演算値FODDと、演算部628bが出力した余りとを加算し、その加算結果を演算部630bに出力する。
The
演算部630bは、加算部629bが出力した加算結果を2で除算し、その除算結果をfloor演算して加算部632bに出力する。
演算部631bは、減算部627bが出力した減算結果を2で除算し、その除算結果をfloor演算して加算部632bに出力する。
The
The
加算部632bは、演算部630bが出力したfloor演算結果と演算部631bが出力したfloor演算結果とを加算し、その加算結果を加算部633bに出力する。
加算部633bは、ラインバッファ61bから読み出した演算値TODDと加算部632bが出力した加算結果とを加算し、その加算結果を出力する。
The
The
ここで、減算部627bが出力する減算結果が画素データX(2n+2)となり、演算加算部633bが出力する加算結果が画素データX(2n+1)となる。
また、奇数列ライン処理部62bは、入力された一次元変換係数Y(2n+3)をラインバッファ61aに格納する(上書きする)。
Here, the subtraction result output from the
The odd-numbered
このようなJPEG2000デコーダ200によれば、JPEG2000エンコーダ100と同様の効果が得られる。すなわち、補正値FODD、FEVENを用いた演算を行うことにより、2つのラインバッファ61a、61bだけでも誤差の生じない可逆5×3ウェーブレット逆変換を行うことができる。
According to such a JPEG2000 decoder 200, the same effect as the JPEG2000 encoder 100 can be obtained. That is, by performing calculations using the correction values F ODD and F EVEN , it is possible to perform reversible 5 × 3 wavelet inverse transformation that does not cause an error even with only the two
以上、本発明のエンコーダ装置、デコーダ装置、ウェーブレット変換方法およびウェーブレット逆変換方法を、図示の実施の形態に基づいて説明したが、本発明はこれに限定されるものではなく、各部の構成は、同様の機能を有する任意の構成のものに置換することができる。また、本発明に、他の任意の構成物や工程が付加されていてもよい。 As described above, the encoder device, the decoder device, the wavelet transform method, and the wavelet inverse transform method of the present invention have been described based on the illustrated embodiment, but the present invention is not limited to this, and the configuration of each unit is as follows. Any structure having a similar function can be substituted. Moreover, other arbitrary structures and processes may be added to the present invention.
また、本発明は、前述した実施の形態のうちの、任意の2以上の構成(特徴)を組み合わせたものであってもよい。
(付記1) 5×3ウェーブレット変換を行うエンコーダ装置において、
入力された画素データX(2n+1)(nは整数)と、前記画素データX(2n+1)より前に入力され、第1の格納部に格納され前記画素データX(2n+1)に隣接する画素データX(2n)とを用いてH成分変換係数Y(2n+1)を規定するための第1の変換係数規定値と前記H成分変換係数Y(2n+1)の演算結果を補正する第1の変換補正係数とを算出し、
前記画素データX(2n)と、既に処理が行われて第2の格納部に格納されているH成分変換係数Y(2n−1)とを用いてL成分変換係数Y(2n)を規定するための第2の変換係数規定値と前記L成分変換係数Y(2n)の演算結果を補正する第2の変換補正係数とを算出し、
前記第1の変換係数規定値と前記第1の変換補正係数とを前記第1の格納部に格納し、前記第2の変換係数規定値と前記第2の変換補正係数とを前記第2の格納部に格納するフィルタ処理部、
を有することを特徴とするエンコーダ装置。
In addition, the present invention may be a combination of any two or more configurations (features) of the above-described embodiments.
(Supplementary Note 1) In an encoder device that performs 5 × 3 wavelet transform,
Input pixel data X (2n + 1) (n is an integer) and pixel data X input before the pixel data X (2n + 1) and stored in the first storage unit and adjacent to the pixel data X (2n + 1) A first conversion coefficient defining value for defining the H component conversion coefficient Y (2n + 1) using (2n) and a first conversion correction coefficient for correcting the calculation result of the H component conversion coefficient Y (2n + 1); To calculate
The L component conversion coefficient Y (2n) is defined using the pixel data X (2n) and the H component conversion coefficient Y (2n-1) already processed and stored in the second storage unit. A second conversion coefficient specified value for calculating the second conversion correction coefficient for correcting the calculation result of the L component conversion coefficient Y (2n),
The first conversion coefficient specified value and the first conversion correction coefficient are stored in the first storage unit, and the second conversion coefficient specified value and the second conversion correction coefficient are stored in the second storage unit. A filter processing unit to be stored in the storage unit;
An encoder device comprising:
(付記2) 前記第1の変換補正係数は、前記第1の変換係数規定値のフロア演算により生ずる誤差を補正する係数であり、前記第2の変換補正係数は、前記第2の変換係数規定値のフロア演算により生ずる誤差を補正する係数であることを特徴とする付記1記載のエンコーダ装置。
(Supplementary Note 2) The first conversion correction coefficient is a coefficient for correcting an error caused by a floor calculation of the first conversion coefficient specified value, and the second conversion correction coefficient is the second conversion coefficient specifying The encoder apparatus according to
(付記3) 前記画素データX(2n+1)は、原画像の奇数列目の画素データであり、前記画素データX(2n)は、前記原画像の偶数列目の画素データであることを特徴とする付記1記載のエンコーダ装置。
(Supplementary Note 3) The pixel data X (2n + 1) is pixel data in an odd-numbered column of an original image, and the pixel data X (2n) is pixel data in an even-numbered column of the original image. The encoder device according to
(付記4) 前記フィルタ処理部は、前記画素データX(2n)および前記画素データX(2n+1)に対し一方向に連なる画素データX(2n+2)が入力されたとき、前記画素データX(2n+2)と前記第1の変換係数規定値と前記第1の変換補正係数とを用いて前記H成分変換係数Y(2n+1)を演算する第1の演算部と、前記H成分変換係数Y(2n+1)と前記第2の格納部から読み出した前記第2の変換係数規定値と前記第2の変換補正係数とを用いて前記L成分変換係数Y(2n)を演算する第2の演算部とを有することを特徴とする付記1記載のエンコーダ装置。
(Supplementary Note 4) When the pixel data X (2n + 2) continuous in one direction with respect to the pixel data X (2n) and the pixel data X (2n + 1) is input to the filter processing unit, the pixel data X (2n + 2) A first calculation unit that calculates the H component conversion coefficient Y (2n + 1) using the first conversion coefficient specified value and the first conversion correction coefficient; and the H component conversion coefficient Y (2n + 1); A second calculation unit that calculates the L component conversion coefficient Y (2n) using the second conversion coefficient specified value read from the second storage unit and the second conversion correction coefficient; The encoder device according to
(付記5) 前記フィルタ処理部は、前記第1の演算部の演算後に前記画素データX(2n+2)を前記第1の格納部に格納し、前記第1の変換係数規定値および前記第1の変換補正係数を作成するときに、前記画素データX(2n+2)を前記画素データX(2n)として読み出し、前記第2の演算部の演算後に前記H成分変換係数Y(2n+1)を前記第2の格納部に格納し、前記第2の変換係数規定値および前記第2の変換補正係数を作成するときに、前記H成分変換係数Y(2n−1)として読み出すことを特徴とする付記4記載のエンコーダ装置。
(Additional remark 5) The said filter process part stores the said pixel data X (2n + 2) in the said 1st storage part after the calculation of a said 1st calculating part, and the said 1st conversion factor prescription | regulation value and said 1st When generating the conversion correction coefficient, the pixel data X (2n + 2) is read as the pixel data X (2n), and the H component conversion coefficient Y (2n + 1) is calculated as the second data after the calculation by the second calculation unit. The
(付記6) 前記第1の格納部および前記第2の格納部は、それぞれ原画像の1行分の画素データを格納する2つのラインバッファの垂直方向に並ぶ2つの領域を構成していることを特徴とする付記1記載のエンコーダ装置。
(Supplementary Note 6) Each of the first storage unit and the second storage unit constitutes two regions arranged in the vertical direction of two line buffers that store pixel data for one row of the original image. The encoder device as set forth in
(付記7) 前記第1の格納部および前記第2の格納部の容量は、高々前記第1の変換係数規定値および前記第1の変換補正係数の合計ビット数または前記第2の変換係数規定値および前記第2の変換補正係数の合計ビット数のいずれか大きい方に等しいことを特徴とする付記1記載のエンコーダ装置。
(Supplementary Note 7) The capacities of the first storage unit and the second storage unit are at most the total number of bits of the first conversion coefficient specified value and the first conversion correction coefficient or the second conversion coefficient specification. The encoder apparatus according to
(付記8) 5×3ウェーブレット逆変換を行うデコーダ装置において、
入力されたL成分変換係数Y(2n+2)(nは整数)と、前記L成分変換係数Y(2n+2)より前に入力され、第1の格納部に格納され前記L成分変換係数Y(2n+2)に隣接するH成分変換係数Y(2n+1)とを用いて画素データX(2n+2)を規定するための第1の逆変換係数規定値と前記画素データX(2n+2)の演算結果を補正する第1の逆変換補正係数とを算出し、
前記H成分変換係数Y(2n+1)と、既に処理が行われて第2の格納部に格納されている画素データX(2n)とを用いて画素データX(2n+1)を規定するための第2の逆変換係数規定値と前記画素データX(2n+1)の演算結果を補正する第2の逆変換補正係数とを算出し、
前記第1の逆変換係数規定値と前記第1の逆変換補正係数とを前記第1の格納部に格納し、前記第2の逆変換係数規定値と前記第2の逆変換補正係数とを前記第2の格納部に格納するフィルタ処理部、
を有することを特徴とするデコーダ装置。
(Supplementary Note 8) In a decoder device that performs 5 × 3 wavelet inverse transformation,
The input L component conversion coefficient Y (2n + 2) (n is an integer) and input before the L component conversion coefficient Y (2n + 2), stored in the first storage unit, and the L component conversion coefficient Y (2n + 2) The first inverse transform coefficient defining value for defining the pixel data X (2n + 2) using the H component transform coefficient Y (2n + 1) adjacent to the first and the calculation result of the pixel data X (2n + 2) are corrected. And the inverse transformation correction coefficient of
A second for defining pixel data X (2n + 1) using the H component conversion coefficient Y (2n + 1) and the pixel data X (2n) already processed and stored in the second storage unit. And a second inverse conversion correction coefficient for correcting the calculation result of the pixel data X (2n + 1),
The first inverse transform coefficient prescribed value and the first inverse transform correction coefficient are stored in the first storage unit, and the second inverse transform coefficient prescribed value and the second inverse transform correction coefficient are obtained. A filter processing unit to be stored in the second storage unit;
A decoder device comprising:
(付記9) 前記第1の逆変換補正係数は、前記第1の逆変換係数規定値のフロア演算により生ずる誤差を補正する係数であり、前記第2の逆変換補正係数は、前記第2の逆変換係数規定値のフロア演算により生ずる誤差を補正する係数であることを特徴とする付記8記載のデコーダ装置。 (Supplementary Note 9) The first inverse transformation correction coefficient is a coefficient for correcting an error caused by floor calculation of the first inverse transformation coefficient specified value, and the second inverse transformation correction coefficient is the second inverse transformation correction coefficient. The decoder device according to appendix 8, wherein the decoder device is a coefficient for correcting an error caused by a floor calculation of the inverse transform coefficient specified value.
(付記10) 前記画素データX(2n+1)は、原画像の奇数列目の画素データであり、前記画素データX(2n)は、前記原画像の偶数列目の画素データであることを特徴とする付記8記載のデコーダ装置。 (Supplementary Note 10) The pixel data X (2n + 1) is pixel data in an odd-numbered column of an original image, and the pixel data X (2n) is pixel data in an even-numbered column of the original image. The decoder device according to appendix 8.
(付記11) 前記フィルタ処理部は、前記H成分変換係数Y(2n+1)および前記L成分変換係数Y(2n+2)に対し一方向に連なるH成分変換係数Y(2n+3)が入力されたとき、前記H成分変換係数Y(2n+3)と前記第1の逆変換係数規定値と前記第1の逆変換補正係数とを用いて前記画素データX(2n+2)を演算する第1の演算部と、
前記画素データX(2n+2)と前記第2の格納部から読み出した前記第2の逆変換係数規定値と前記第2の逆変換補正係数とを用いて前記画素データX(2n+1)を演算する第2の演算部とを有することを特徴とする付記8記載のデコーダ装置。
(Supplementary Note 11) When the H component conversion coefficient Y (2n + 3) continuous in one direction with respect to the H component conversion coefficient Y (2n + 1) and the L component conversion coefficient Y (2n + 2) is input to the filter processing unit, A first calculation unit that calculates the pixel data X (2n + 2) using an H component conversion coefficient Y (2n + 3), the first inverse conversion coefficient specified value, and the first inverse conversion correction coefficient;
The pixel data X (2n + 1) is calculated using the pixel data X (2n + 2), the second inverse transform coefficient specified value read from the second storage unit, and the second inverse transform correction coefficient. 9. The decoder device according to appendix 8, wherein the decoder device comprises two arithmetic units.
(付記12) 前記フィルタ処理部は、前記第1の演算部の演算後に前記H成分変換係数Y(2n+3)を前記第1の格納部に格納し、前記第1の逆変換係数規定値および前記第1の逆変換補正係数を作成するときに、前記H成分変換係数Y(2n+3)を前記H成分変換係数Y(2n+1)として読み出し、前記第2の演算部の演算後に前記画素データX(2n+2)を前記第2の格納部に格納し、前記第2の逆変換係数規定値および前記第2の逆変換補正係数を作成するときに、前記画素データX(2n+2)を前記画素データX(2n)として読み出すことを特徴とする付記11記載のデコーダ装置。 (Additional remark 12) The said filter process part stores the said H component conversion coefficient Y (2n + 3) in the said 1st storage part after the calculation of a said 1st calculating part, and the said 1st inverse conversion coefficient prescription | regulation value and the said When creating the first inverse conversion correction coefficient, the H component conversion coefficient Y (2n + 3) is read as the H component conversion coefficient Y (2n + 1), and the pixel data X (2n + 2) is calculated after the calculation by the second calculation unit. ) Is stored in the second storage unit, and the pixel data X (2n + 2) is converted into the pixel data X (2n) when the second inverse transform coefficient prescribed value and the second inverse transform correction coefficient are created. The decoder device according to appendix 11, wherein the decoder device is read as
(付記13) 前記第1の格納部および前記第2の格納部は、それぞれ原画像の1列分のデータを格納する2つのラインバッファの垂直方向に並ぶ2つの領域を構成していることを特徴とする付記8記載のデコーダ装置。 (Supplementary Note 13) Each of the first storage unit and the second storage unit constitutes two areas arranged in the vertical direction of two line buffers each storing data for one column of the original image. Item 9. The decoder device according to appendix 8.
(付記14) 5×3ウェーブレット変換を行うウェーブレット変換方法において、
入力された画素データX(2n+1)(nは整数)と、前記画素データX(2n+1)より前に入力され、第1の格納部に格納され前記画素データX(2n+1)に隣接する画素データX(2n)とを用いてH成分変換係数Y(2n+1)を規定するための第1の変換係数規定値と前記H成分変換係数Y(2n+1)の演算結果を補正する第1の変換補正係数とを算出し、
前記画素データX(2n)と、既に処理が行われて第2の格納部に格納されているH成分変換係数Y(2n−1)とを用いてL成分変換係数Y(2n)を規定するための第2の変換係数規定値と前記L成分変換係数Y(2n)の演算結果を補正する第2の変換補正係数とを算出し、
前記第1の変換係数規定値と前記第1の変換補正係数とを前記第1の格納部に格納し、前記第2の変換係数規定値と前記第2の変換補正係数とを前記第2の格納部に格納する、
ことを特徴とするウェーブレット変換方法。
(Supplementary Note 14) In the wavelet transform method for performing 5 × 3 wavelet transform,
Input pixel data X (2n + 1) (n is an integer) and pixel data X input before the pixel data X (2n + 1) and stored in the first storage unit and adjacent to the pixel data X (2n + 1) A first conversion coefficient defining value for defining the H component conversion coefficient Y (2n + 1) using (2n) and a first conversion correction coefficient for correcting the calculation result of the H component conversion coefficient Y (2n + 1); To calculate
The L component conversion coefficient Y (2n) is defined using the pixel data X (2n) and the H component conversion coefficient Y (2n-1) already processed and stored in the second storage unit. A second conversion coefficient specified value for calculating the second conversion correction coefficient for correcting the calculation result of the L component conversion coefficient Y (2n),
The first conversion coefficient specified value and the first conversion correction coefficient are stored in the first storage unit, and the second conversion coefficient specified value and the second conversion correction coefficient are stored in the second storage unit. Store in the storage,
A wavelet transform method characterized by that.
(付記15) 5×3ウェーブレット逆変換を行うウェーブレット逆変換方法において、
入力されたL成分変換係数Y(2n+2)(nは整数)と、前記L成分変換係数Y(2n+2)より前に入力され、第1の格納部に格納され前記L成分変換係数Y(2n+2)に隣接するH成分変換係数Y(2n+1)とを用いて画素データX(2n+2)を規定するための第1の逆変換係数規定値と前記画素データX(2n+2)の演算結果を補正する第1の逆変換補正係数とを算出し、
前記H成分変換係数Y(2n+1)と、既に処理が行われて第2の格納部に格納されている画素データX(2n)とを用いて画素データX(2n+1)を規定するための第2の逆変換係数規定値と前記画素データX(2n+1)の演算結果を補正する第2の逆変換補正係数とを算出し、
前記第1の逆変換係数規定値と前記第1の逆変換補正係数とを前記第1の格納部に格納し、前記第2の逆変換係数規定値と前記第2の逆変換補正係数とを前記第2の格納部に格納する、
ことを特徴とするウェーブレット逆変換方法。
(Supplementary Note 15) In the wavelet inverse transform method for performing 5 × 3 wavelet inverse transform,
The input L component conversion coefficient Y (2n + 2) (n is an integer) and input before the L component conversion coefficient Y (2n + 2), stored in the first storage unit, and the L component conversion coefficient Y (2n + 2) The first inverse transform coefficient defining value for defining the pixel data X (2n + 2) using the H component transform coefficient Y (2n + 1) adjacent to the first and the calculation result of the pixel data X (2n + 2) are corrected. And the inverse transformation correction coefficient of
A second for defining pixel data X (2n + 1) using the H component conversion coefficient Y (2n + 1) and the pixel data X (2n) already processed and stored in the second storage unit. And a second inverse conversion correction coefficient for correcting the calculation result of the pixel data X (2n + 1),
The first inverse transform coefficient prescribed value and the first inverse transform correction coefficient are stored in the first storage unit, and the second inverse transform coefficient prescribed value and the second inverse transform correction coefficient are obtained. Storing in the second storage unit;
A wavelet inverse transformation method characterized by that.
1 エンコーダ装置
2 第1の格納部
3 第2の格納部
4 フィルタ処理部
10 ウェーブレット変換部
11a、11b、61a、61b ラインバッファ
12、62 5×3垂直方向可逆フィルタ
12a、62b 奇数列ライン処理部
12b、62a 偶数列ライン処理部
13a、13b、63a、63b バッファ
14、64 5×3水平方向可逆フィルタ
20 EBCOT部
30 ストリーム生成部
40 ストリーム解析部
50 逆EBCOT部
60 ウェーブレット逆変換部
100 JPEG2000エンコーダ
200 JPEG2000デコーダ
DESCRIPTION OF
Claims (10)
入力された画素データX(2n+1)(nは整数)と、前記画素データX(2n+1)より前に入力され、第1の格納部に格納され前記画素データX(2n+1)に隣接する画素データX(2n)とを用いてH成分変換係数Y(2n+1)を規定するための第1の変換係数規定値と前記H成分変換係数Y(2n+1)の演算結果を補正する第1の変換補正係数とを算出し、
前記画素データX(2n)と、既に処理が行われて第2の格納部に格納されているH成分変換係数Y(2n−1)とを用いてL成分変換係数Y(2n)を規定するための第2の変換係数規定値と前記L成分変換係数Y(2n)の演算結果を補正する第2の変換補正係数とを算出し、
前記第1の変換係数規定値と前記第1の変換補正係数とを前記第1の格納部に格納し、前記第2の変換係数規定値と前記第2の変換補正係数とを前記第2の格納部に格納するフィルタ処理部、
を有することを特徴とするエンコーダ装置。 In an encoder device that performs 5 × 3 wavelet transform,
Input pixel data X (2n + 1) (n is an integer) and pixel data X input before the pixel data X (2n + 1) and stored in the first storage unit and adjacent to the pixel data X (2n + 1) A first conversion coefficient defining value for defining the H component conversion coefficient Y (2n + 1) using (2n) and a first conversion correction coefficient for correcting the calculation result of the H component conversion coefficient Y (2n + 1); To calculate
The L component conversion coefficient Y (2n) is defined using the pixel data X (2n) and the H component conversion coefficient Y (2n-1) already processed and stored in the second storage unit. A second conversion coefficient specified value for calculating the second conversion correction coefficient for correcting the calculation result of the L component conversion coefficient Y (2n),
The first conversion coefficient specified value and the first conversion correction coefficient are stored in the first storage unit, and the second conversion coefficient specified value and the second conversion correction coefficient are stored in the second storage unit. A filter processing unit to be stored in the storage unit;
An encoder device comprising:
入力されたL成分変換係数Y(2n+2)(nは整数)と、前記L成分変換係数Y(2n+2)より前に入力され、第1の格納部に格納され前記L成分変換係数Y(2n+2)に隣接するH成分変換係数Y(2n+1)とを用いて画素データX(2n+2)を規定するための第1の逆変換係数規定値と前記画素データX(2n+2)の演算結果を補正する第1の逆変換補正係数とを算出し、
前記H成分変換係数Y(2n+1)と、既に処理が行われて第2の格納部に格納されている画素データX(2n)とを用いて画素データX(2n+1)を規定するための第2の逆変換係数規定値と前記画素データX(2n+1)の演算結果を補正する第2の逆変換補正係数とを算出し、
前記第1の逆変換係数規定値と前記第1の逆変換補正係数とを前記第1の格納部に格納し、前記第2の逆変換係数規定値と前記第2の逆変換補正係数とを前記第2の格納部に格納するフィルタ処理部、
を有することを特徴とするデコーダ装置。 In a decoder device that performs 5 × 3 wavelet inverse transformation,
The input L component conversion coefficient Y (2n + 2) (n is an integer) and input before the L component conversion coefficient Y (2n + 2), stored in the first storage unit, and the L component conversion coefficient Y (2n + 2) The first inverse transform coefficient defining value for defining the pixel data X (2n + 2) using the H component transform coefficient Y (2n + 1) adjacent to the first and the calculation result of the pixel data X (2n + 2) are corrected. And the inverse transformation correction coefficient of
A second for defining pixel data X (2n + 1) using the H component conversion coefficient Y (2n + 1) and the pixel data X (2n) already processed and stored in the second storage unit. And a second inverse conversion correction coefficient for correcting the calculation result of the pixel data X (2n + 1),
The first inverse transform coefficient prescribed value and the first inverse transform correction coefficient are stored in the first storage unit, and the second inverse transform coefficient prescribed value and the second inverse transform correction coefficient are obtained. A filter processing unit to be stored in the second storage unit;
A decoder device comprising:
前記画素データX(2n+2)と前記第2の格納部から読み出した前記第2の逆変換係数規定値と前記第2の逆変換補正係数とを用いて前記画素データX(2n+1)を演算する第2の演算部とを有することを特徴とする請求項5記載のデコーダ装置。 When the H component conversion coefficient Y (2n + 3) continuous in one direction with respect to the H component conversion coefficient Y (2n + 1) and the L component conversion coefficient Y (2n + 2) is input to the filter processing unit, the H component conversion coefficient A first computing unit that computes the pixel data X (2n + 2) using Y (2n + 3), the first inverse transformation coefficient specified value, and the first inverse transformation correction coefficient;
The pixel data X (2n + 1) is calculated using the pixel data X (2n + 2), the second inverse transform coefficient specified value read from the second storage unit, and the second inverse transform correction coefficient. 6. The decoder device according to claim 5, further comprising: 2 arithmetic units.
入力された画素データX(2n+1)(nは整数)と、前記画素データX(2n+1)より前に入力され、第1の格納部に格納され前記画素データX(2n+1)に隣接する画素データX(2n)とを用いてH成分変換係数Y(2n+1)を規定するための第1の変換係数規定値と前記H成分変換係数Y(2n+1)の演算結果を補正する第1の変換補正係数とを算出し、
前記画素データX(2n)と、既に処理が行われて第2の格納部に格納されているH成分変換係数Y(2n−1)とを用いてL成分変換係数Y(2n)を規定するための第2の変換係数規定値と前記L成分変換係数Y(2n)の演算結果を補正する第2の変換補正係数とを算出し、
前記第1の変換係数規定値と前記第1の変換補正係数とを前記第1の格納部に格納し、前記第2の変換係数規定値と前記第2の変換補正係数とを前記第2の格納部に格納する、
ことを特徴とするウェーブレット変換方法。 In the wavelet transform method for performing 5 × 3 wavelet transform,
Input pixel data X (2n + 1) (n is an integer) and pixel data X input before the pixel data X (2n + 1) and stored in the first storage unit and adjacent to the pixel data X (2n + 1) A first conversion coefficient defining value for defining the H component conversion coefficient Y (2n + 1) using (2n) and a first conversion correction coefficient for correcting the calculation result of the H component conversion coefficient Y (2n + 1); To calculate
The L component conversion coefficient Y (2n) is defined using the pixel data X (2n) and the H component conversion coefficient Y (2n-1) already processed and stored in the second storage unit. A second conversion coefficient specified value for calculating the second conversion correction coefficient for correcting the calculation result of the L component conversion coefficient Y (2n),
The first conversion coefficient specified value and the first conversion correction coefficient are stored in the first storage unit, and the second conversion coefficient specified value and the second conversion correction coefficient are stored in the second storage unit. Store in the storage,
A wavelet transform method characterized by that.
入力されたL成分変換係数Y(2n+2)(nは整数)と、前記L成分変換係数Y(2n+2)より前に入力され、第1の格納部に格納され前記L成分変換係数Y(2n+2)に隣接するH成分変換係数Y(2n+1)とを用いて画素データX(2n+2)を規定するための第1の逆変換係数規定値と前記画素データX(2n+2)の演算結果を補正する第1の逆変換補正係数とを算出し、
前記H成分変換係数Y(2n+1)と、既に処理が行われて第2の格納部に格納されている画素データX(2n)とを用いて画素データX(2n+1)を規定するための第2の逆変換係数規定値と前記画素データX(2n+1)の演算結果を補正する第2の逆変換補正係数とを算出し、
前記第1の逆変換係数規定値と前記第1の逆変換補正係数とを前記第1の格納部に格納し、前記第2の逆変換係数規定値と前記第2の逆変換補正係数とを前記第2の格納部に格納する、
ことを特徴とするウェーブレット逆変換方法。 In the wavelet inverse transform method for performing 5 × 3 wavelet inverse transform,
The input L component conversion coefficient Y (2n + 2) (n is an integer) and input before the L component conversion coefficient Y (2n + 2), stored in the first storage unit, and the L component conversion coefficient Y (2n + 2) The first inverse transform coefficient defining value for defining the pixel data X (2n + 2) using the H component transform coefficient Y (2n + 1) adjacent to the first and the calculation result of the pixel data X (2n + 2) are corrected. And the inverse transformation correction coefficient of
A second for defining pixel data X (2n + 1) using the H component conversion coefficient Y (2n + 1) and the pixel data X (2n) already processed and stored in the second storage unit. And a second inverse conversion correction coefficient for correcting the calculation result of the pixel data X (2n + 1),
The first inverse transform coefficient prescribed value and the first inverse transform correction coefficient are stored in the first storage unit, and the second inverse transform coefficient prescribed value and the second inverse transform correction coefficient are obtained. Storing in the second storage unit;
A wavelet inverse transformation method characterized by that.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007324240A JP4879151B2 (en) | 2007-08-17 | 2007-12-17 | Encoder device, decoder device, wavelet transform method, and wavelet inverse transform method |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007212707 | 2007-08-17 | ||
JP2007212707 | 2007-08-17 | ||
JP2007324240A JP4879151B2 (en) | 2007-08-17 | 2007-12-17 | Encoder device, decoder device, wavelet transform method, and wavelet inverse transform method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009071797A JP2009071797A (en) | 2009-04-02 |
JP4879151B2 true JP4879151B2 (en) | 2012-02-22 |
Family
ID=40607558
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007324240A Expired - Fee Related JP4879151B2 (en) | 2007-08-17 | 2007-12-17 | Encoder device, decoder device, wavelet transform method, and wavelet inverse transform method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4879151B2 (en) |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003283839A (en) * | 2002-03-19 | 2003-10-03 | Sanyo Electric Co Ltd | Image transforming method and apparatus |
-
2007
- 2007-12-17 JP JP2007324240A patent/JP4879151B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2009071797A (en) | 2009-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7577308B2 (en) | Image data generation with reduced amount of processing | |
KR101685885B1 (en) | Image processing device, image processing method, and image processing program | |
US20040005006A1 (en) | Image processing apparatus, image processing program and image processing method | |
US20170339432A1 (en) | High efficiency adaptive loop filter processing for video coding | |
JP3948619B2 (en) | Image compression apparatus, image compression method, program, and recording medium | |
JP2002058026A (en) | Device and method for encoding picture and device and method for decoding picture | |
JP4879151B2 (en) | Encoder device, decoder device, wavelet transform method, and wavelet inverse transform method | |
US7197191B2 (en) | Image transformation apparatus and method | |
US7940991B2 (en) | Image signal processing apparatus | |
US20120050820A1 (en) | Image processing apparatus, control method of the same, and program | |
US20090161969A1 (en) | Method and apparatus for encoding/decoding image, computer-readable program therefore, and information recording medium storing same program | |
JP2005094212A (en) | Image processor and processing method, computer program, and computer readable storage medium | |
JP4988623B2 (en) | Image encoding apparatus and image decoding apparatus | |
US7787700B2 (en) | Signal processing method, signal processing apparatus, computer-readable medium and a data recording medium | |
JP3973089B2 (en) | Image processing apparatus, image processing method, program, and recording medium | |
US20040258317A1 (en) | Apparatus for converting conversion encoding coefficients using sampling/resolution conversion | |
JP2002101310A (en) | Filter processing unit and method | |
JP3709106B2 (en) | Image compression and decompression device | |
JP4266512B2 (en) | Data processing device | |
JP2001285643A (en) | Image converting apparatus and method | |
JP4700838B2 (en) | Filter processing device | |
JP4266195B2 (en) | Image processing apparatus, image processing method, program, and information recording medium | |
JP4111447B2 (en) | Image processing apparatus, image processing method, program, and information recording medium | |
JP4107660B2 (en) | Image processing apparatus, image processing method, program, and information recording medium | |
KR100395614B1 (en) | Two dimensional discrete wavelet transformation apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100625 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20111115 |
|
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: 20111122 |
|
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: 20111129 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4879151 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: 20141209 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20141209 Year of fee payment: 3 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20141209 Year of fee payment: 3 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |