JP2005102125A - Image decoding method and image decoding apparatus - Google Patents

Image decoding method and image decoding apparatus Download PDF

Info

Publication number
JP2005102125A
JP2005102125A JP2004052126A JP2004052126A JP2005102125A JP 2005102125 A JP2005102125 A JP 2005102125A JP 2004052126 A JP2004052126 A JP 2004052126A JP 2004052126 A JP2004052126 A JP 2004052126A JP 2005102125 A JP2005102125 A JP 2005102125A
Authority
JP
Japan
Prior art keywords
decoding
frame
time
image data
decoded
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.)
Withdrawn
Application number
JP2004052126A
Other languages
Japanese (ja)
Inventor
Hiroshi Kajiwara
浩 梶原
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2004052126A priority Critical patent/JP2005102125A/en
Priority to US10/823,612 priority patent/US7903734B2/en
Publication of JP2005102125A publication Critical patent/JP2005102125A/en
Withdrawn legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To efficiently decode all or some frames of encoded moving image data based on the processing performance of a moving image decoding apparatus, and obtain high playback image quality with less visual disturbance. <P>SOLUTION: The moving image decoding method for decoding of encoded moving image data includes: a step S1901 of extracting encoded image data of a sample frame from each frame, decoding the data in a prescribed decode unit and measuring time related to the decoding; a step S1902 of determining the decoded number of decoding units so that the measured time is a prescribed time or below; a step S1904 of decoding encoded image data of each frame according to the given number of the decoding units; a step S1905 of measuring the time required for decoding of each frame in decoding each frame; a step 1907 of accumulating a difference between the prescribed time and the time measured in the step S1905 every time each frame is decoded and updating the number of decoding units determined in the step S1092 when the accumulated value reaches the prescribed value or over; and the S1904 decoding the encoded image data of each frame according to the number of decoding units determined in the S1902 or the number of decoding units updated in the step S1907. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

本発明は、各フレームの画像が符号化された動画像データを入力して、各フレームの符号化画像データを復号する技術に関するものである。   The present invention relates to a technique for inputting moving image data in which an image of each frame is encoded and decoding the encoded image data of each frame.

一般に、動画像データの符号化方式は、フレーム間の相関を利用するものとしないものとに大別することができる。それぞれの方式には長所及び短所が存在し、どちらの方式が適しているかということは使用するアプリケーション次第である。例えば、Motion JPEGは、動画像データの各フレームを一枚の静止画像としてとらえて独立に符号化する方式であり、フレーム間の相関を用いない符号化方式の一例である。フレーム毎に独立に符号化することによって、動画像の分割、連結、部分的な書き換えなどの動画編集が容易であることや、復号側の処理能力に応じて復号フレーム数を選択して復号することが可能であるという利点がある。   In general, encoding methods of moving image data can be broadly classified into those that use the correlation between frames and those that do not use the correlation between frames. Each method has advantages and disadvantages, and which method is suitable depends on the application to be used. For example, Motion JPEG is an example of an encoding method that uses each frame of moving image data as a single still image and encodes it independently, and does not use correlation between frames. Encoding independently for each frame makes it easy to edit moving images such as video segmentation, concatenation, and partial rewriting, and selects and decodes the number of decoding frames according to the processing capability of the decoding side. There is an advantage that it is possible.

近年、動画像データをフレーム毎独立に符号化する符号化方式において、各フレームをウェーブレット変換とビットプレーン符号化とを組み合わせて符号化する方式が注目を集めている。このような動画像符号化方式には、ウェーブレット変換におけるサブバンド分解の仕組みを利用して空間解像度を段階的に変えた復号が可能であること、また、復号ビットプレーン数を変えることにより、復号画素精度を段階的に変更することが可能である等の大きな特徴がある。   2. Description of the Related Art In recent years, attention has been paid to a method of encoding each frame by combining wavelet transform and bit-plane encoding in an encoding method for encoding moving image data independently for each frame. In such a moving image coding method, decoding by changing the spatial resolution in stages using the subband decomposition mechanism in the wavelet transform is possible, and by changing the number of decoding bit planes There is a great feature such that the pixel accuracy can be changed in stages.

ISO/IEC JTC1/SC29/WG1で標準化作業が進められている画像符号化方式であるJPEG2000(ISO/IEC 15444)もウェーブレット変換とビットプレーン符号化との組み合わせにより構成されている。同標準のPart3では、Motion JPEG2000の名称で、動画像の各フレームの符号化に適用した場合のファイルフォーマットの規定を行っている。   JPEG2000 (ISO / IEC 15444), which is an image coding method that is being standardized by ISO / IEC JTC1 / SC29 / WG1, is also configured by a combination of wavelet transform and bit-plane coding. Part 3 of the standard defines the file format when applied to encoding each frame of a moving image under the name Motion JPEG2000.

Motion JPEG2000に代表されるこのような動画像符号化方式は、前述のように復号解像度、復号画素精度の柔軟性といった利点がある一方で、ビットプレーン符号化による符号化・復号処理の負荷が高いという欠点がある。特に、専用の動画像記録装置で記録した映像をパーソナルコンピュータで再生する場合に、コンピュータの性能によっては、全データを実時間で復号・表示することはできないという問題が起こる。   Such a moving image coding system represented by Motion JPEG2000 has advantages such as decoding resolution and flexibility of decoding pixel accuracy as described above, but has a high load of encoding / decoding processing by bit plane encoding. There is a drawback. In particular, when video recorded by a dedicated moving image recording apparatus is played back by a personal computer, there arises a problem that depending on the performance of the computer, all data cannot be decoded and displayed in real time.

このような問題に対して従来から、フレームを復号するのに所望の復号処理時間を定めて符号化処理単位に復号処理時間を割り振り、割り振られた復号処理時間でビットプレーン単位に復号する方法が開示されている(例えば特許文献1を参照)。
特開2001−112004号公報
Conventionally, there has been a method for determining a desired decoding processing time for decoding a frame, allocating a decoding processing time to an encoding processing unit, and decoding in units of bit planes using the allocated decoding processing time. It is disclosed (for example, see Patent Document 1).
Japanese Patent Laid-Open No. 2001-112004

しかしながら、上記方法によると、所定の時間で復号処理を打ち切る動画像復号装置では、フレーム毎に復号処理打ち切りのポイント(復号ビットプレーン数)が変化しやすいため、動画像として再生した場合に歪みの形状の時間変化を生じ、これがフリッカ(ちらつき)として視覚上の妨害要因となるという問題がある。   However, according to the above method, in the video decoding device that terminates the decoding process at a predetermined time, the point at which the decoding process is aborted (the number of decoded bit planes) is likely to change for each frame. There is a problem that a time change of the shape occurs, and this becomes a visual disturbance factor as flicker.

本発明は以上の問題に鑑みて成されたものであり、動画像符号化データの全部または一部を、処理能力に応じて効率良く復号し、視覚的な妨害の少ない良好な再生画質を得る技術を提供することを目的とする。   The present invention has been made in view of the above problems, and decodes all or part of moving image encoded data efficiently according to the processing capability to obtain a good reproduction image quality with less visual interference. The purpose is to provide technology.

本発明の目的を達成するために、例えば本発明の画像復号方法は以下の構成を備える。   In order to achieve the object of the present invention, for example, an image decoding method of the present invention comprises the following arrangement.

即ち、各フレームの画像が符号化された動画像データを入力して、各フレームの符号化画像データを復号する画像復号方法であって、
前記各フレームから、サンプルフレームの符号化画像データを抽出して所定の復号単位で復号するサンプルフレーム復号工程と、
前記サンプルフレームの符号化画像データの復号に係る時間を計測する第1の計測工程と、
前記第1の計測工程で計測した時間が所定時間以下となるように、復号する復号単位の数を決定する決定工程と、
与えられた復号単位の数に従って、各フレームの符号化画像データ復号する復号工程と、
前記復号工程で前記各フレームを復号する際に、各フレーム毎の復号に要する時間を計測する第2の計測工程と、
前記所定時間と前記第2の計測工程で計測された時間との差分を、各フレームを復号する毎に累計していき、当該累計値が所定値以上となった場合に、前記決定工程で決定した復号単位の数を更新する更新工程とを備え、
前記復号工程では、前記決定工程で決定した復号単位の数、もしくは前記更新工程で更新した復号単位の数に従って、各フレームの符号化画像データ復号することを特徴とする。
That is, an image decoding method for inputting moving image data in which an image of each frame is encoded and decoding the encoded image data of each frame,
A sample frame decoding step of extracting encoded image data of a sample frame from each frame and decoding it in a predetermined decoding unit;
A first measuring step of measuring a time required for decoding the encoded image data of the sample frame;
A determining step for determining the number of decoding units to be decoded so that the time measured in the first measuring step is equal to or less than a predetermined time;
A decoding step of decoding the encoded image data of each frame according to a given number of decoding units;
A second measuring step of measuring a time required for decoding each frame when decoding each frame in the decoding step;
The difference between the predetermined time and the time measured in the second measuring step is accumulated every time each frame is decoded, and is determined in the determining step when the accumulated value exceeds a predetermined value. An update step of updating the number of decoded units,
In the decoding step, the encoded image data of each frame is decoded according to the number of decoding units determined in the determining step or the number of decoding units updated in the updating step.

本発明の目的を達成するために、例えば本発明の画像復号装置は以下の構成を備える。   In order to achieve the object of the present invention, for example, an image decoding apparatus of the present invention comprises the following arrangement.

即ち、各フレームの画像が符号化された動画像データを入力して、各フレームの符号化画像データを復号する画像復号装置であって、
前記各フレームから、サンプルフレームの符号化画像データを抽出して所定の復号単位で復号するサンプルフレーム復号手段と、
前記サンプルフレームの符号化画像データの復号に係る時間を計測する第1の計測手段と、
前記第1の計測手段が計測した時間が所定時間以下となるように、復号する復号単位の数を決定する決定手段と、
与えられた復号単位の数に従って、各フレームの符号化画像データ復号する復号手段と、
前記復号手段によって前記各フレームを復号する際に、各フレーム毎の復号に要する時間を計測する第2の計測手段と、
前記所定時間と前記第2の計測手段により計測された時間との差分を、各フレームを復号する毎に累計していき、当該累計値が所定値以上となった場合に、前記決定手段が決定した復号単位の数を更新する更新手段とを備え、
前記復号手段は、前記決定手段が決定した復号単位の数、もしくは前記更新手段が更新した復号単位の数に従って、各フレームの符号化画像データ復号することを特徴とする。
That is, an image decoding apparatus that inputs moving image data in which an image of each frame is encoded and decodes the encoded image data of each frame,
Sample frame decoding means for extracting encoded image data of a sample frame from each frame and decoding it in a predetermined decoding unit;
First measuring means for measuring a time for decoding the encoded image data of the sample frame;
Determining means for determining the number of decoding units to be decoded so that the time measured by the first measuring means is a predetermined time or less;
Decoding means for decoding the encoded image data of each frame according to the given number of decoding units;
Second measuring means for measuring a time required for decoding each frame when the decoding means decodes each frame;
The difference between the predetermined time and the time measured by the second measuring means is accumulated every time each frame is decoded, and the determining means determines when the accumulated value exceeds a predetermined value. Update means for updating the number of decoded decoding units,
The decoding means decodes the encoded image data of each frame according to the number of decoding units determined by the determining means or the number of decoding units updated by the updating means.

本発明の構成によれば、動画像符号化データの全部または一部を、処理能力に応じて効率良く復号し、視覚的な妨害の少ない良好な再生画質を得ることができる。   According to the configuration of the present invention, it is possible to efficiently decode all or part of moving image encoded data according to the processing capability, and obtain a good reproduction image quality with little visual interference.

以下添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。   Hereinafter, the present invention will be described in detail according to preferred embodiments with reference to the accompanying drawings.

本発明の画像復号装置の好適な実施形態について説明する前に先ず、本発明の画像復号装置において復号対象となる動画像符号化データについて説明する。   Before describing a preferred embodiment of the image decoding device of the present invention, first, moving image encoded data to be decoded in the image decoding device of the present invention will be described.

図1は、以下の実施形態で用いる画像復号装置が復号する対象となる動画像符号化データを生成する動画像符号化装置の機能構成を示す図である。   FIG. 1 is a diagram illustrating a functional configuration of a moving image encoding apparatus that generates moving image encoded data to be decoded by an image decoding apparatus used in the following embodiment.

本動画像符号化装置は、ウェーブレット変換とビットプレーン符号化とを組み合わせた符号化方式を用いて、動画像を構成する各フレームを独立に符号化する。図1を用いて、動画像符号化装置における符号化処理の流れについて簡単に説明する。図1に示すようにこの動画像符号化装置は、動画像データ入力部201、離散ウェーブレット変換部202、係数量子化部203、ビットプレーン符号化部204、符号列形成部205、そして2次記憶装置206、信号線207を備えている。   This moving image encoding apparatus encodes each frame constituting a moving image independently by using an encoding method in which wavelet transform and bit plane encoding are combined. The flow of the encoding process in the moving image encoding apparatus will be briefly described with reference to FIG. As shown in FIG. 1, the moving image coding apparatus includes a moving image data input unit 201, a discrete wavelet transform unit 202, a coefficient quantization unit 203, a bit plane coding unit 204, a code string forming unit 205, and a secondary storage. A device 206 and a signal line 207 are provided.

次に、図1に示される動画像符号化装置の各構成要素の動作について説明する。尚、ここで扱う動画像は、1秒あたり30フレームであって、各フレームの画像は各画素の輝度値が8ビットのモノクロ動画像データであるとする。よってこのような動画像のデータを、4秒分(合計120フレーム)動画像符号化装置に取り込み、符号化するものとして説明する。すなわち、本動画像符号化装置では、動画像データ入力部201から入力される1秒あたり30フレームの動画像データをフレーム単位に符号化し、最終的に2次記憶装置206に符号化データを格納するものである。   Next, the operation of each component of the moving picture encoding apparatus shown in FIG. 1 will be described. Note that the moving image handled here is 30 frames per second, and the image of each frame is monochrome moving image data in which the luminance value of each pixel is 8 bits. Therefore, description will be made assuming that such moving image data is taken into a moving image encoding device for 4 seconds (120 frames in total) and encoded. That is, in this moving image encoding apparatus, moving image data of 30 frames per second input from the moving image data input unit 201 is encoded in units of frames, and finally the encoded data is stored in the secondary storage device 206. To do.

まず、動画像データ入力部201から1秒あたり30フレームであって、4秒分の動画像データが入力される。動画像データ入力部201は、例えばディジタルカメラ等の撮像部分であって、CCD等の撮像デバイスとガンマ補正、シェーディング補正等の各種画像調整回路とによって実現することが可能である。動画像データ入力部201は、入力された動画像データを1フレームずつ離散ウェーブレット変換部202に送る。尚、以降の説明において、便宜上各フレームデータには、入力された順に1から番号を与えて、例えばフレーム1、フレーム2、…というような番号で各フレームを識別するようにする。また、各フレームにおける水平方向の画素位置(座標)をx、垂直方向の画素位置をyとし、画素位置(x,y)の画素値をP(x,y)で表す。   First, moving image data for 4 seconds is input from the moving image data input unit 201 at 30 frames per second. The moving image data input unit 201 is an imaging part such as a digital camera, and can be realized by an imaging device such as a CCD and various image adjustment circuits such as gamma correction and shading correction. The moving image data input unit 201 sends the input moving image data to the discrete wavelet transform unit 202 frame by frame. In the following description, for the sake of convenience, each frame data is given a number from 1 in the order of input, and each frame is identified by a number such as frame 1, frame 2,. Also, the horizontal pixel position (coordinates) in each frame is x, the vertical pixel position is y, and the pixel value at the pixel position (x, y) is represented by P (x, y).

動画像データ入力部201から入力された1フレームの画像データは、離散ウェーブレット変換部202でそれぞれ不図示の内部バッファに適宜格納され、2次元離散ウェーブレット変換が行われる。2次元離散ウェーブレット変換は、1次元の離散ウェーブレット変換を水平及び垂直方向それぞれに適用することにより実現するものである。図2は、1フレームの画像データに対して2次元離散ウェーブレット変換を施して4つのサブバンドを生成する処理を説明する図である。   One frame of image data input from the moving image data input unit 201 is appropriately stored in an internal buffer (not shown) by the discrete wavelet transform unit 202, and two-dimensional discrete wavelet transform is performed. The two-dimensional discrete wavelet transform is realized by applying a one-dimensional discrete wavelet transform in the horizontal and vertical directions. FIG. 2 is a diagram illustrating a process of generating four subbands by performing two-dimensional discrete wavelet transform on one frame of image data.

図2(a)は符号化対象の画像データを示す図である。同図に示されるような符号化対象画像に対して、まず垂直方向に1次元離散ウェーブレット変換を適用し、図2(b)に示されるように低周波サブバンドLと高周波サブバンドHとに分解する。   FIG. 2A shows image data to be encoded. First, a one-dimensional discrete wavelet transform is applied to the encoding target image as shown in the figure in the vertical direction, and a low frequency subband L and a high frequency subband H are obtained as shown in FIG. Decompose.

次に、それぞれのサブバンドに対して水平方向の1次元離散ウェーブレット変換を適用することにより、図2(c)に示されるようなLL、HL、LH、HHの4つのサブバンドに分解する。   Next, by applying a horizontal one-dimensional discrete wavelet transform to each subband, the subbands are decomposed into four subbands LL, HL, LH, and HH as shown in FIG.

本動画像符号化装置の離散ウェーブレット変換部202では、上述した2次元離散ウェーブレット変換により得られたサブバンドLLに対して、さらに繰り返し2次元離散ウェーブレット変換を適用する。これによって、符号化対象画像をLL、LH1、HL1、HH1、LH2、HL2、HH2の7つのサブバンドに分解することができる。図3は、2回の2次元離散ウェーブレット変換によって得られる7つのサブバンドを示す図である。   In the discrete wavelet transform unit 202 of the moving picture coding apparatus, the two-dimensional discrete wavelet transform is repeatedly applied to the subband LL obtained by the above-described two-dimensional discrete wavelet transform. As a result, the encoding target image can be decomposed into seven subbands LL, LH1, HL1, HH1, LH2, HL2, and HH2. FIG. 3 is a diagram showing seven subbands obtained by two two-dimensional discrete wavelet transforms.

尚、本動画像符号化装置では、各サブバンド内の係数をC(Sb,x,y)と表す。ここで、Sbはサブバンドの種類を表し、LL、LH1、HL1、HH1、LH2、HL2、HH2のいずれかである。また、(x,y)は各サブバンド内の左上隅の係数位置を(0,0)としたときの水平方向及び垂直方向の係数位置(座標)を表す。   In the moving picture coding apparatus, a coefficient in each subband is represented as C (Sb, x, y). Here, Sb represents the type of subband, and is one of LL, LH1, HL1, HH1, LH2, HL2, and HH2. Further, (x, y) represents the coefficient position (coordinates) in the horizontal direction and the vertical direction when the coefficient position of the upper left corner in each subband is (0, 0).

本動画像符号化装置は、離散ウェーブレット変換部202におけるN個の1次元信号x(n)(但し、nは0〜N−1の整数)に対する1次元離散ウェーブレット変換として2つの方法を備える。一つは式(1)、(2)に示す整数型5x3フィルタによる変換であり、もう一つは式(3)、(4)に示す実数型5x3フィルタによる変換である。   This moving image encoding apparatus includes two methods as one-dimensional discrete wavelet transform for N one-dimensional signals x (n) (where n is an integer from 0 to N−1) in the discrete wavelet transform unit 202. One is conversion by the integer type 5 × 3 filter shown in the equations (1) and (2), and the other is conversion by the real number type 5 × 3 filter shown in the equations (3) and (4).

h(n)=x(2n+1)
−floor{(x(2n)+x(2n+2))/2} (1)
l(n)=x(2n)
+floor{(h(n−1)+h(n)+2)/4} (2)
h(n)=x(2n+1)
−(x(2n)+x(2n+2))/2 (3)
l(n)=x(2n)
+(h(n−1)+h(n))/4 (4)
また、h(n)は高周波サブバンドの係数、l(n)は低周波サブバンドの係数、floor{R}は実数Rを超えない最大の整数値を表す。尚、式(1)、(2)及び式(3)、(4)の計算において必要となる1次元信号x(n)の両端(n<0及びn>N−1)におけるx(n)は、公知の方法により1次元信号x(n)(n=0〜N−1)の値から求めておく。
h (n) = x (2n + 1)
−floor {(x (2n) + x (2n + 2)) / 2} (1)
l (n) = x (2n)
+ Floor {(h (n-1) + h (n) +2) / 4} (2)
h (n) = x (2n + 1)
-(X (2n) + x (2n + 2)) / 2 (3)
l (n) = x (2n)
+ (H (n-1) + h (n)) / 4 (4)
Further, h (n) represents a high frequency subband coefficient, l (n) represents a low frequency subband coefficient, and floor {R} represents a maximum integer value not exceeding the real number R. It should be noted that x (n) at both ends (n <0 and n> N−1) of the one-dimensional signal x (n) required in the calculations of the expressions (1), (2) and (3), (4). Is obtained from the value of the one-dimensional signal x (n) (n = 0 to N−1) by a known method.

整数型5x3フィルタと実数型5x3フィルタのいずれを適用するかは、信号線207を介して装置外部から入力されるフィルタ選択信号によって、フレーム単位に指定することができる。例えば、信号線207から入力されるフィルタ選択信号が‘0’である場合、着目するフレームを整数型5x3フィルタによって分解し、フィルタ選択信号が‘1’である場合、着目するフレームを実数型5x3フィルタによって分解するといった具合である。   Whether an integer type 5 × 3 filter or a real number type 5 × 3 filter is applied can be specified in units of frames by a filter selection signal input from the outside of the apparatus via the signal line 207. For example, when the filter selection signal input from the signal line 207 is “0”, the target frame is decomposed by an integer type 5 × 3 filter, and when the filter selection signal is “1”, the target frame is a real type 5 × 3. For example, it is decomposed by a filter.

係数量子化部203では、離散ウェーブレット変換部202で生成された各サブバンドの係数C(S,x,y)を、各サブバンド毎に定めた量子化ステップdelta(S)を用いて量子化する。ここで、量子化された係数値をQ(S,x,y)と表す場合、係数量子化部203で行われる量子化処理は式(5)により表すことができる。   In the coefficient quantization unit 203, the coefficient C (S, x, y) of each subband generated by the discrete wavelet transform unit 202 is quantized using a quantization step delta (S) determined for each subband. To do. Here, when the quantized coefficient value is expressed as Q (S, x, y), the quantization processing performed by the coefficient quantization unit 203 can be expressed by Expression (5).

Q(S,x,y)=sign{C(S,x,y)}
×floor{|C(S,x,y)|/delta(S)} (5)
ここで、sign{I}は整数Iの正負符号を表す関数であり、Iが正の場合は1を、負の場合は−1を返す。また、floor{R}は実数Rを超えない最大の整数値を表す。但し、上述の量子化処理は離散ウェーブレット変換部202において実数型5x3フィルタが選択され、使用された場合にのみ適用されるものであり、信号線207から入力されるフィルタ選択信号により整数型5x3フィルタが選択されている場合には係数C(S,x,y)を量子化された係数値として出力する。即ちこの場合、Q(S,x,y)=C(S,x,y)となる。
Q (S, x, y) = sign {C (S, x, y)}
× floor {| C (S, x, y) | / delta (S)} (5)
Here, sign {I} is a function representing the sign of the integer I, and returns 1 when I is positive and -1 when negative. Further, floor {R} represents the maximum integer value not exceeding the real number R. However, the above-described quantization processing is applied only when a real type 5 × 3 filter is selected and used in the discrete wavelet transform unit 202, and an integer type 5 × 3 filter is obtained by a filter selection signal input from the signal line 207. Is selected, the coefficient C (S, x, y) is output as a quantized coefficient value. That is, in this case, Q (S, x, y) = C (S, x, y).

ビットプレーン符号化部204は、係数量子化部203において量子化された係数値Q(S,x,y)を符号化する。尚、各サブバンドの係数をブロック分割し、別々に符号化することによりランダムアクセスを容易にする方法など符号化手法として様々な手法が提案されているが、ここでは説明を簡単にするためにサブバンド単位に符号化する。   The bit plane encoding unit 204 encodes the coefficient value Q (S, x, y) quantized by the coefficient quantization unit 203. Various methods have been proposed as coding methods such as a method of facilitating random access by dividing the coefficients of each subband into blocks and coding them separately, but here, for the sake of simplicity of explanation. Encode in subband units.

各サブバンドの量子化された係数値Q(S,x,y)(以降、単に「係数値」と称す。)の符号化は、サブバンド内の係数値Q(S,x,y)の絶対値を自然2進数で表現し、上位の桁から下位の桁へとビットプレーン方向を優先して二値算術符号化することにより行われる。各サブバンドの係数値Q(S,x,y)を自然2進表記した場合の下からn桁目のビットをQn(x,y)と表記して説明する。尚、2進数の桁を表す変数nをビットプレーン番号と呼ぶこととし、ビットプレーン番号nはLSB(最下位ビット)を0桁目とする。   The encoding of the quantized coefficient value Q (S, x, y) (hereinafter simply referred to as “coefficient value”) of each subband is performed by using the coefficient value Q (S, x, y) in the subband. The absolute value is expressed by a natural binary number, and binary arithmetic coding is performed by giving priority to the bit plane direction from the upper digit to the lower digit. In the following description, the n-th bit from the bottom in the case where the coefficient value Q (S, x, y) of each subband is expressed in a natural binary notation is expressed as Qn (x, y). Note that a variable n representing a binary digit is referred to as a bit plane number, and the LSB (least significant bit) of the bit plane number n is the 0th digit.

図4は、ビットプレーン符号化部204でサブバンドSを符号化する処理手順を説明するためのフローチャートである。図4に示すように、まず、符号化対象となるサブバンドS内の係数の絶対値を調べ、その最大値Mabs(S)を求める(ステップS601)。次に、サブバンド内の係数の絶対値を表すためにMabs(S)を2進数で表現する場合に必要となる桁数NBP(S)を式(6)を用いて求める(ステップS602)。 FIG. 4 is a flowchart for explaining a processing procedure for encoding the subband S by the bit plane encoding unit 204. As shown in FIG. 4, first, the absolute value of the coefficient in the subband S to be encoded is checked to obtain its maximum value Mabs (S) (step S601). Next, the number of digits N BP (S) required when expressing Mabs (S) in binary number to represent the absolute value of the coefficient in the subband is obtained using equation (6) (step S602). .

BP(S)=ceil{log2(Mabs(S+1))} (6)
但し、ceil{R}は実数R以上の最小の整数値を表すものとする。
N BP (S) = ceil {log2 (Mabs (S + 1))} (6)
However, ceil {R} represents a minimum integer value greater than or equal to the real number R.

次に、ビットプレーン番号nに有効桁数NBP(S)を代入する(ステップS603)。そして、ビットプレーン番号nから1を引いてn−1を求めてnに代入する(ステップS604)。 Next, the effective digit number N BP (S) is substituted into the bit plane number n (step S603). Then, 1 is subtracted from the bit plane number n to obtain n−1 and is substituted for n (step S604).

さらに、n桁目のビットプレーンを二値算術符号を用いて符号化する(ステップS605)。ビットプレーン内の各ビットを符号化する際には、符号化済みの情報からいくつかの状態(コンテクスト)に分類し、それぞれ異なる出現確率予測モデルで符号化する。本動画像符号化装置においては、使用する算術符号としてMQ−Coderを用いる。このMQ−Coderを用いて、ある状態(コンテクスト)Sで発生した二値シンボルを符号化する手順、或いは、算術符号化処理のための初期化手順、終端手順については、静止画像の国際標準ISO/IEC15444−1勧告等に詳細に説明されているのでここでは説明を省略する。   Further, the n-th bit plane is encoded using a binary arithmetic code (step S605). When each bit in the bit plane is encoded, it is classified into several states (contexts) from the encoded information, and encoded by different appearance probability prediction models. In the moving picture coding apparatus, MQ-Coder is used as an arithmetic code to be used. For the procedure for encoding a binary symbol generated in a certain state (context) S using this MQ-Coder, or for the initialization procedure and termination procedure for arithmetic coding processing, the international standard ISO for still images Since it is described in detail in the / IEC 15444-1 recommendation, the description thereof is omitted here.

また、本動画像符号化装置では、各ビットプレーンの符号化の開始時に算術符号化器を初期化し、終了時に算術符号化器の終端処理を行うものとする。また、個々の係数の最初に符号化される「1」の直後に、その係数の正負符号を0、1で表し、算術符号化する。ここでは、正の場合は0、負の場合は1とする。例えば、係数が−5で、この係数の属するサブバンドSの有効桁数NBP(S)が6の場合、係数の絶対値は2進数000101で表され、各ビットプレーンの符号化により上位桁から下位桁へと符号化される。そして、2番目のビットプレーンの符号化時(この場合、上から4桁目)に最初の「1」が符号化され、この直後に正負符号「1」を算術符号化する。 In the moving picture encoding apparatus, the arithmetic encoder is initialized at the start of encoding of each bit plane, and the termination process of the arithmetic encoder is performed at the end. Also, immediately after “1” encoded at the beginning of each coefficient, the sign of the coefficient is represented by 0 and 1, and is arithmetically encoded. Here, 0 is set for positive and 1 is set for negative. For example, when the coefficient is −5 and the number of significant digits N BP (S) of the subband S to which this coefficient belongs is 6, the absolute value of the coefficient is represented by a binary number 00101, and the upper digit is encoded by encoding each bit plane. Are encoded from 1 to the lower digits. When the second bit plane is encoded (in this case, the fourth digit from the top), the first “1” is encoded, and immediately thereafter, the positive / negative code “1” is arithmetically encoded.

次に、ビットプレーン番号nが0であるか否かを判定する(ステップS606)。その結果、nが0、すなわちステップS605においてLSBプレーンの符号化を行った場合、サブバンドの符号化処理を終了する。また、それ以外の場合、ステップS604に処理を移す。   Next, it is determined whether or not the bit plane number n is 0 (step S606). As a result, when n is 0, that is, when the LSB plane is encoded in step S605, the subband encoding process is terminated. In other cases, the process proceeds to step S604.

上述した処理によって、サブバンドSの全係数を符号化することができ、各ビットプレーンnに対応する符号列CS(S,n)を生成することができる。生成した符号列CS(S,n)は、符号列形成部205に送られ、符号列形成部205内の不図示のバッファに一時的に格納される。   Through the processing described above, all the coefficients of the subband S can be encoded, and a code string CS (S, n) corresponding to each bit plane n can be generated. The generated code string CS (S, n) is sent to the code string forming unit 205 and temporarily stored in a buffer (not shown) in the code string forming unit 205.

符号列形成部205では、ビットプレーン符号化部204により全サブバンドの係数の符号化が終了して全符号列が内部バッファに格納されると、所定の順序で内部バッファに格納される符号列を読み出す。そして、必要な付加情報を挿入して、1枚のフレームに対応する符号列を形成し、2次記憶装置206へと出力する。   In the code sequence forming unit 205, when the bit plane encoding unit 204 finishes encoding all the subband coefficients and stores all the code sequences in the internal buffer, the code sequence stored in the internal buffer in a predetermined order. Is read. Then, necessary additional information is inserted to form a code string corresponding to one frame and output to the secondary storage device 206.

符号列形成部205で生成される最終的な符号列は、ヘッダと、レベル0、レベル1及びレベル2の3つに階層化された符号化データとにより構成される。ヘッダには画像の水平方向、垂直方向の画素数や、2次元離散ウェーブレット変換の適用回数、選択されたフィルタを指定する情報、各サブバンドの量子化ステップdelta(S)など、復号に必要となる付加情報が格納される。   The final code string generated by the code string forming unit 205 includes a header and encoded data layered in three levels, level 0, level 1, and level 2. The header requires the number of pixels in the horizontal and vertical directions of the image, the number of application times of the two-dimensional discrete wavelet transform, the information specifying the selected filter, the quantization step delta (S) of each subband, etc. The additional information is stored.

レベル0の符号化データは、サブバンドLLの係数を符号化して得られるCS(LL,NBP(LL)−1)からCS(LL,0)の符号列で構成される。 The encoded data of level 0 is composed of a code string of CS (LL, N BP (LL) -1) to CS (LL, 0) obtained by encoding the coefficients of the subband LL.

また、レベル1は、LH1、HL1、HH1の各サブバンドの係数を符号化して得られる符号列CS(LH1,NBP(LH1)−1)からCS(LH1,0)、CS(HL1,NBP(HL1)−1)からCS(HL1,0)、CS(HH1,NBP(HH1)−1)からCS(HH1,0)で構成される。 Level 1 is obtained by encoding CS (LH1, N BP (LH1) -1) to CS (LH1, 0), CS (HL1, N) obtained by encoding the coefficients of the subbands LH1, HL1, and HH1. BP (HL1) -1) from CS consisting of (HL1,0), CS (HH1, N BP (HH1) -1) with CS (HH1,0).

さらに、レベル2は、LH2、HL2、HH2の各サブバンドの係数を符号化して得られる符号列CS(LH2,NBP(LH2)−1)からCS(LH2,0)、CS(HL2,NBP(HL2)−1)からCS(HL2,0)、CS(HH2,NBP(HH2)−1)からCS(HH2,0)で構成される。 Further, level 2 is obtained by encoding CS (LH2, N BP (LH2) -1) to CS (LH2, 0), CS (HL2, N) obtained by encoding the coefficients of the LH2, HL2, and HH2 subbands. BP (HL2) -1) from CS consisting of (HL2,0), CS (HH2, N BP (HH2) -1) with CS (HH2,0).

図5は、符号列形成部205において生成される1枚のフレームデータに対応する符号列の細部構造を示す図である。   FIG. 5 is a diagram illustrating a detailed structure of a code string corresponding to one frame data generated in the code string forming unit 205.

このようにして構成された符号列は、復号側でヘッダとレベル0の符号化データを復号することにより元の1/4の解像度の復元画像を得ることができる。また、レベル1の符号化データを加えて復号することにより元の1/2の解像度の復元画像を得ることができる。さらに、レベル2の符号化データまで加えて復号した場合には、元の解像度の復元画像を得ることができるというように、徐々に解像度を上げて画像を復号することができる。   The code string configured in this way can obtain a restored image having the original 1/4 resolution by decoding the header and the level 0 encoded data on the decoding side. In addition, a restored image having an original resolution of 1/2 can be obtained by decoding by adding the encoded data of level 1. Further, when decoding is performed by adding up to level 2 encoded data, the image can be decoded by gradually increasing the resolution so that a restored image of the original resolution can be obtained.

一方、各レベルのビットプレーン符号化データの、上位のいくつかのビットプレーンのみを復号した場合には荒い復号画像を、下位のビットプレーンへと復号対象を増やしていった場合には、徐々に精度を上げて各サブバンドの変換係数を復元することができ、復号画質を向上させることが可能となる。   On the other hand, when only a few high-order bit planes of bit-level encoded data of each level are decoded, a rough decoded image is gradually increased. The conversion coefficient of each subband can be restored with increased accuracy, and the decoded image quality can be improved.

2次記憶装置206は、例えば、ハードディスクやメモリといった記憶装置であり、符号列形成部205で生成された符号列を内部に格納する。2次記憶装置206では符号列形成部205から出力される各フレームの符号列が連結され、動画像データの符号化データが構成される。   The secondary storage device 206 is a storage device such as a hard disk or a memory, for example, and stores therein the code string generated by the code string forming unit 205. In the secondary storage device 206, the code sequences of the frames output from the code sequence forming unit 205 are connected to form encoded data of moving image data.

以上の動画像符号化装置によって符号化された各フレームの符号化データを復号する、本発明の画像復号装置の好適な実施形態について以下に説明する。   A preferred embodiment of the image decoding apparatus of the present invention for decoding the encoded data of each frame encoded by the above moving image encoding apparatus will be described below.

[第1の実施形態]
図14は本実施形態に係る画像復号装置の基本構成を示す図である。
[First Embodiment]
FIG. 14 is a diagram showing a basic configuration of an image decoding apparatus according to this embodiment.

1401はCPUで、RAM1402やROM1403に記憶されているプログラムやデータを用いて本装置全体の制御を行うと共に、後述する画像復号処理を実行する。   Reference numeral 1401 denotes a CPU that controls the entire apparatus using programs and data stored in the RAM 1402 and ROM 1403 and executes image decoding processing described later.

1402はRAMで、外部記憶装置1407や記憶媒体ドライブ1408、若しくはI/F1409を介して外部装置からダウンロードされたプログラムやデータを記憶する為のエリアを備えると共に、CPU1401が各種の処理を実行する際に使用するワークエリアも備える。   A RAM 1402 has an area for storing programs and data downloaded from the external device via the external storage device 1407, the storage medium drive 1408, or the I / F 1409, and when the CPU 1401 executes various processes. A work area is also provided.

1403はROMで、ブートプログラムや本装置の設定プログラムやデータを格納する。   Reference numeral 1403 denotes a ROM which stores a boot program, a setting program for the apparatus, and data.

1404、1405は夫々キーボード、マウスで、CPU1401に対して各種の指示を入力することができる。   Reference numerals 1404 and 1405 denote a keyboard and a mouse, respectively. Various instructions can be input to the CPU 1401.

1406は表示装置で、CRTや液晶画面などにより構成されており、画像や文字などの情報を表示することができる。   A display device 1406 includes a CRT, a liquid crystal screen, and the like, and can display information such as images and characters.

1407は外部記憶装置で、ハードディスクドライブ装置等の大容量情報記憶装置であって、ここにOSや後述する画像復号処理の為のプログラム、復号対象の画像を各フレームとする動画像の符号化データなどが保存されており、CPU1401による制御によって、これらのプログラムやデータはRAM1402上の所定のエリアにロードされる。   Reference numeral 1407 denotes an external storage device, which is a large-capacity information storage device such as a hard disk drive device, where an OS, a program for image decoding processing to be described later, and encoded data of a moving image having a decoding target image as each frame These programs and data are loaded into a predetermined area on the RAM 1402 under the control of the CPU 1401.

1408は記憶媒体ドライブで、CD−ROMやDVD−ROMなどの記憶媒体に記録されたプログラムやデータを読み出してRAM1402や外部記憶装置1407に出力するものである。なお、この記憶媒体に後述する画像復号処理の為のプログラム、復号対象の画像を各フレームとする動画像のデータなどを記録しておいても良く、その場合、記憶媒体ドライブ1408は、CPU1401による制御によって、これらのプログラムやデータをRAM1402上の所定のエリアにロードする。   A storage medium drive 1408 reads programs and data recorded on a storage medium such as a CD-ROM or DVD-ROM and outputs them to the RAM 1402 or the external storage device 1407. It should be noted that a program for image decoding processing to be described later, moving image data having an image to be decoded as each frame, or the like may be recorded on this storage medium. In this case, the storage medium drive 1408 is controlled by the CPU 1401. Under control, these programs and data are loaded into a predetermined area on the RAM 1402.

1409はI/Fで、このI/F1409によって外部装置を本装置に接続し、本装置と外部装置との間でデータ通信を可能にするものである。例えは上記動画図符号化装置をI/F1409に接続し、上記動画像符号化装置によって生成された動画像の符号化データを本装置のRAM1402や外部記憶装置1407に入力することもできる。   Reference numeral 1409 denotes an I / F, which connects an external device to the present apparatus through the I / F 1409 and enables data communication between the present apparatus and the external apparatus. For example, the moving picture encoding apparatus can be connected to the I / F 1409, and the encoded data of the moving picture generated by the moving picture encoding apparatus can be input to the RAM 1402 or the external storage device 1407 of the present apparatus.

1410は上述の各部を繋ぐバスである。   A bus 1410 connects the above-described units.

図9は、本実施形態に係る画像復号装置の機能構成を示すブロック図である。図1と同じ部分については同じ番号を付けている。図9に示すように、本実施形態に係る画像復号装置は、符号列読み出し部101、ビットプレーン復号部102、逆離散ウェーブレット変換部104、動画像データ出力部105、復号処理時間計測部106、非復号サブバンド決定部107とを備える。なお、図9に示す構成はハードウェアにより実現しても良いが、本実施形態では図9に示す各部は、各部の機能をコンピュータに実現させるプログラムにより実現するものとし、このプログラムは上記外部記憶装置1407や記憶媒体ドライブ1408、もしくはI/F1409を介して外部装置からRAM1402にロードされるものとする。   FIG. 9 is a block diagram showing a functional configuration of the image decoding apparatus according to the present embodiment. The same parts as those in FIG. As shown in FIG. 9, the image decoding apparatus according to the present embodiment includes a code string reading unit 101, a bit plane decoding unit 102, an inverse discrete wavelet transform unit 104, a moving image data output unit 105, a decoding processing time measurement unit 106, A non-decoding subband determination unit 107. Although the configuration shown in FIG. 9 may be realized by hardware, in the present embodiment, each unit shown in FIG. 9 is realized by a program that causes a computer to realize the function of each unit, and this program is stored in the external storage described above. It is assumed that the RAM 1402 is loaded from an external device via the device 1407, the storage medium drive 1408, or the I / F 1409.

また、同図において205は前述の2次記憶装置であって、ここから動画像の符号化データを本装置に入力するのであるが、この2次記憶装置206は例えば上記外部記憶装置1407や記憶媒体ドライブ1408、もしくはI/F1409を介して本装置に接続される外部装置であって、これらの何れかから動画像の符号化データをRAM1402にロードするものとする。なお、この動画像の符号化データは上述の通り、上記動画像符号化装置によって生成されたものである。   In the figure, reference numeral 205 denotes the above-mentioned secondary storage device, from which the encoded data of the moving image is input to this device. The secondary storage device 206 is, for example, the external storage device 1407 or the storage device. Assume that the media drive 1408 or an external device connected to the present apparatus via the I / F 1409 is loaded with the encoded data of the moving image into the RAM 1402 from either of them. Note that the encoded data of the moving image is generated by the moving image encoding device as described above.

以下、図9を参照して、本実施形態に係る画像復号装置が行う処理について説明する。   Hereinafter, processing performed by the image decoding apparatus according to the present embodiment will be described with reference to FIG.

本実施形態に係る画像復号装置の復号対象とする動画像符号化データは、前述の動画像符号化装置により生成されたものであるが、この動画像符号化データの生成にあたっては、全てのフレームで整数型5x3フィルタを使用する。すなわち、前述した動画像符号化装置の信号線207から整数型5x3フィルタを選択する信号を入力して動画像データの符号化を行う。   The moving image encoded data to be decoded by the image decoding device according to the present embodiment is generated by the above-described moving image encoding device. In generating the moving image encoded data, all frames are generated. Use an integer type 5x3 filter. That is, a signal for selecting an integer type 5 × 3 filter is input from the signal line 207 of the above-described moving image encoding apparatus to encode moving image data.

本実施形態に係る画像復号装置はまず最初に、復号対象となる動画像符号化データから任意のフレームの符号化画像データをサンプルとして取り出して復号し、各サブバンドの復号処理に要する時間を測定して復号処理時間の見積もりを行う。   First, the image decoding apparatus according to the present embodiment extracts and decodes encoded image data of an arbitrary frame as a sample from moving image encoded data to be decoded, and measures the time required for decoding processing of each subband. To estimate the decoding processing time.

一般に動画像符号化データの復号は、動画像符号化データ中のフレームを単位に行われる。図9に示した符号列読み出し部101は、2次記憶装置206に格納されている動画像符号化データから着目するフレームの符号化データを読み出し、RAM1402に格納する。読み出しは基本的にフレーム1、フレーム2というように順番に行われるが、本実施形態では、各サブバンドの復号処理に要する時間を測定して復号処理時間の見積もりを行う為に、復号処理の開始時にはまず、任意のフレームの符号化データをサンプルとして読み出してRAM1402に格納する。以下の説明では復号処理時間の見積もりを行うために復号するフレーム(以下、サンプルフレーム)を便宜上60フレーム目とするが、これに限定されるものではない。   In general, decoding of moving image encoded data is performed in units of frames in the moving image encoded data. The code string reading unit 101 illustrated in FIG. 9 reads the encoded data of the frame of interest from the moving image encoded data stored in the secondary storage device 206 and stores the encoded data in the RAM 1402. Reading is basically performed in the order of frame 1 and frame 2, but in this embodiment, in order to measure the time required for the decoding processing of each subband and estimate the decoding processing time, At the start, first, encoded data of an arbitrary frame is read as a sample and stored in the RAM 1402. In the following description, a frame to be decoded (hereinafter referred to as a sample frame) for estimation of the decoding processing time is assumed to be the 60th frame for the sake of convenience. However, the present invention is not limited to this.

ビットプレーン復号部102は、RAM1402に格納された符号化データをサブバンド順に読み出して、量子化された変換係数データQ(S,x,y)を復号する。ビットプレーン復号部102における処理は、図2に示されるビットプレーン符号化部204が行った処理の逆の処理である。   The bit plane decoding unit 102 reads the encoded data stored in the RAM 1402 in the subband order, and decodes the quantized transform coefficient data Q (S, x, y). The processing in the bit plane decoding unit 102 is the reverse of the processing performed by the bit plane encoding unit 204 shown in FIG.

すなわち、ビットプレーン符号化部204では、上位のビットプレーンから下位のビットプレーンへと係数の絶対値の各ビットを所定のコンテクストにより二値算術符号化していた。これに対しビットプレーン復号部102では、同様に上位のビットプレーンから下位のビットプレーンへと符号化時と同じコンテクストにより二値算術符号化データの復号を行い、係数の各ビットを復元する。また、係数の正負符号については符号化時と同じタイミングで、同じコンテクストを用いて算術符号の復号を行うようにする。   That is, the bit plane encoding unit 204 binary-encodes each bit of the absolute value of the coefficient from the upper bit plane to the lower bit plane using a predetermined context. On the other hand, the bit plane decoding unit 102 similarly decodes binary arithmetic encoded data from the upper bit plane to the lower bit plane using the same context as that used for encoding, and restores each bit of the coefficient. In addition, with respect to the sign of the coefficient, arithmetic codes are decoded using the same context at the same timing as when encoding.

但し、このとき非復号サブバンド決定部107からは各サブバンド毎に復号するか否かを表すデータF(S)が入力され、ビットプレーン復号部102はこのデータF(S)を参照し、F(S)=1であるサブバンドSについては各ビットプレーンの復号を行い、F(S)=0のサブバンドSについては復号しない。このF(S)のデータは非復号サブバンド決定部107によって生成されるのであるが、この生成については後述する。   However, at this time, data F (S) indicating whether to decode for each subband is input from the non-decoding subband determination unit 107, and the bit plane decoding unit 102 refers to this data F (S), Each bit plane is decoded for the subband S with F (S) = 1, and the subband S with F (S) = 0 is not decoded. The F (S) data is generated by the non-decoding subband determination unit 107, and this generation will be described later.

なお、本実施形態に係る画像復号装置が最初に復号するサンプルフレームについては全てのサブバンドSに対してF(S)=1とし、全てのサブバンドの復号を行う。サンプルフレームについてのF(S)のデータはRAM1402に予めロードされているものとする。   Note that for a sample frame that is first decoded by the image decoding apparatus according to the present embodiment, F (S) = 1 is set for all subbands S, and all subbands are decoded. It is assumed that F (S) data for the sample frame is loaded in advance in the RAM 1402.

逆離散ウェーブレット変換部104では、図1の離散ウェーブレット変換部202が行うウェーブレット変換処理の逆変換が行われ、フレームのデータを復元する。本実施形態では上述の通り、全てのフレームで整数型5x3フィルタを使用して生成される動画像符号化データを復号対象とするので、式(1)、(2)に対応する逆変換を行う。   In the inverse discrete wavelet transform unit 104, inverse transform of the wavelet transform process performed by the discrete wavelet transform unit 202 in FIG. 1 is performed to restore the frame data. In the present embodiment, as described above, moving image encoded data generated using an integer type 5 × 3 filter in all frames is a decoding target, and thus inverse transformation corresponding to equations (1) and (2) is performed. .

そして、動画像データ出力部105は、逆離散ウェーブレット変換部104から出力される復元画像データを、I/F1409を介して外部の装置に出力したり、表示装置1460に出力したりする。但し、本実施形態に係る画像復号装置で最初に復号されるサンプルフレームのデータは復号処理時間の推定のために復号したものであるため、復号フレームデータを破棄し、出力しない。   The moving image data output unit 105 outputs the restored image data output from the inverse discrete wavelet transform unit 104 to an external device or the display device 1460 via the I / F 1409. However, since the sample frame data that is first decoded by the image decoding apparatus according to the present embodiment is decoded for estimation of the decoding processing time, the decoded frame data is discarded and is not output.

動画像の再生表示を行う場合には、各フレームデータは所定の時間に表示される。逆離散ウェーブレット変換104からの出力は、復号処理に掛かる時間により左右されるので表示すべき時間と同期するものではない。このため、復号したフレームデータをバッファに格納して表示時間との調整が必要になる。例えば、動画像データ出力部105で復元画像データをI/F1409を介して外部の装置に出力し、表示時間との調整のためのバッファ格納処理を本第1の実施形態の動画像復号装置の外部で行うようにしても良いし、動画像データ出力部105の内部で行うようにしても良い。   When reproducing and displaying a moving image, each frame data is displayed at a predetermined time. Since the output from the inverse discrete wavelet transform 104 depends on the time required for the decoding process, it does not synchronize with the time to be displayed. For this reason, it is necessary to store the decoded frame data in a buffer and adjust the display time. For example, the moving image data output unit 105 outputs the restored image data to an external device via the I / F 1409, and performs buffer storage processing for adjustment with the display time of the moving image decoding device of the first embodiment. It may be performed externally or may be performed inside the moving image data output unit 105.

動画像データ出力部105の具体例として、動画像データ出力部105にディスプレイを接続し、動画像表示を行う場合について説明する。図15は動画像データ出力部105の一形態と、ディスプレイへの接続を示す図である。   As a specific example of the moving image data output unit 105, a case where a display is connected to the moving image data output unit 105 to display a moving image will be described. FIG. 15 is a diagram showing one form of the moving image data output unit 105 and connection to a display.

同図において1601は複数のフレームデータを格納することが可能なバッファ、1602はディスプレイインターフェース、1603はディスプレイである。ディスプレイ1603は図14の表示装置1406に相当し、ディスプレイインターフェース1602とディスプレイ1406との接続線はバス1410に相当する。バッファ1601は逆離散ウェーブレット変換部104から可変の時間間隔で出力される復元画像データを、順番に格納する。復元画像データ格納の際には格納する復元画像データのフレーム番号と格納するアドレスを保持し、後から順番に取り出せるようにしておく。ディスプレイインターフェース1602は動画像データのフレームレートに応じて一定の時間間隔(例えば秒あたり30フレームの動画像であるならば1/30秒おき)でバッファ1601から復元画像データを順番に取り出し、ディスプレイ1603へと表示する。取り出したフレームデータはバッファ1601から消去される。バッファ1601は、逆離散ウェーブレット変換部104からの復元画像データの入力と、ディスプレイインターフェースによるデータ取り出しの時間間隔の違いを調整する役割を果たす。   In the figure, 1601 is a buffer capable of storing a plurality of frame data, 1602 is a display interface, and 1603 is a display. A display 1603 corresponds to the display device 1406 in FIG. 14, and a connection line between the display interface 1602 and the display 1406 corresponds to the bus 1410. The buffer 1601 stores the restored image data output from the inverse discrete wavelet transform unit 104 at variable time intervals in order. When storing restored image data, the frame number of the restored image data to be stored and the address to be stored are held so that they can be sequentially retrieved later. The display interface 1602 sequentially retrieves the restored image data from the buffer 1601 at a certain time interval (for example, every 1/30 seconds for a moving image of 30 frames per second) according to the frame rate of the moving image data. To display. The extracted frame data is erased from the buffer 1601. The buffer 1601 plays a role of adjusting the difference between the input time of the restored image data from the inverse discrete wavelet transform unit 104 and the time interval of data extraction by the display interface.

本実施形態の動画像復号装置では、後述する処理によって、1フレームの復号処理時間の平均が目標復号時間Tとなるように制御を行う。しかしながら、各フレームのデータ復元に掛かる時間にはばらつきがあるため、バッファ1601に格納されるフレームデータの枚数が変化する。表示時間にフレームデータがバッファに準備されていない状態にならないように、動画復号の開始から所定時間後に再生表示を開始する、あるいは所定のフレーム枚数がバッファに蓄積されてから再生開始するなど、動画再生開始のタイミングを調整する。また、バッファ容量に制約のある場合には、バッファに所定枚数以上のフレームデータが格納されている場合には、フレームデータの復号処理を休止するよう制御することも必要となる。   In the moving picture decoding apparatus according to the present embodiment, control is performed so that the average decoding processing time of one frame becomes the target decoding time T by processing described later. However, since the time taken to restore the data of each frame varies, the number of frame data stored in the buffer 1601 changes. In order to prevent frame data from being prepared in the buffer at the display time, playback and display are started after a predetermined time from the start of video decoding, or playback is started after a predetermined number of frames are stored in the buffer. Adjust the playback start timing. If the buffer capacity is limited, it is necessary to control the frame data decoding process to be stopped when a predetermined number or more of frame data is stored in the buffer.

復号処理時間計測部106は、ビットプレーン復号部102によってサンプルフレームの各サブバンドの係数を復号する時間(復号時間Dt(SI))を測定する。ここでSIはサブバンドを特定するインデックス値である。即ち、復号処理時間計測部106は、ビットプレーン復号部102による復号処理の復号単位を「サブバンド」とした場合に、復号単位毎の復号時間Dt(SI)を測定する。そして復号処理時間計測部106はこの測定により、図10に示すようなテーブルを構築し、RAM1402にこのテーブルのデータを格納する。   The decoding processing time measuring unit 106 measures the time (decoding time Dt (SI)) for decoding the coefficient of each subband of the sample frame by the bit plane decoding unit 102. Here, SI is an index value that identifies a subband. That is, the decoding processing time measuring unit 106 measures the decoding time Dt (SI) for each decoding unit when the decoding unit of the decoding processing by the bit plane decoding unit 102 is “subband”. Based on this measurement, the decoding processing time measuring unit 106 constructs a table as shown in FIG. 10 and stores the data of this table in the RAM 1402.

図10はサブバンドインデックスSIとサブバンドSの係数復号時間(復号所要時間)との関係を表すテーブルの構成例を示す図である。Dt(0)からDt(6)の部分には実際の計測時間が格納される。このテーブルを参照すれば、例えばサブバンドHH1(SI=3)の係数復号時間はDt(3)であると特定することができる。   FIG. 10 is a diagram illustrating a configuration example of a table representing a relationship between the subband index SI and the coefficient decoding time (decoding time required) of the subband S. The actual measurement time is stored in the portion from Dt (0) to Dt (6). With reference to this table, for example, the coefficient decoding time of the subband HH1 (SI = 3) can be specified as Dt (3).

また復号処理時間計測部106は、符号列読み出し部101が2次記憶装置206から1フレーム分の符号化画像データを読み出す開始時から、このフレームの復元された画像データが動画像データ出力部105から出力されるまでにかかる時間Dtを「1つのフレームの符号化画像データの復号に係る時間」として計測し、非復号サブバンド決定部107へと出力する。本実施形態では復号処理時間計測部106は先ずサンプルフレームの符号化画像データの復号に係る時間Dtを計測する。   Also, the decoding processing time measuring unit 106 starts from the time when the code string reading unit 101 starts reading the encoded image data for one frame from the secondary storage device 206, and the restored image data of this frame is the moving image data output unit 105. The time Dt required to be output from the first frame is measured as “the time required for decoding the encoded image data of one frame” and output to the non-decoding subband determination unit 107. In this embodiment, the decoding processing time measuring unit 106 first measures a time Dt related to decoding of the encoded image data of the sample frame.

復号処理時間計測部106は、上記動画像において最初のフレーム以外については上記時間Dtを測定し、非復号サブバンド決定部107へと出力する。   The decoding processing time measuring unit 106 measures the time Dt except for the first frame in the moving image and outputs the time Dt to the non-decoding subband determining unit 107.

非復号サブバンド決定部107は、復号処理時間計測部106から出力されるサンプルフレームの復号処理時間Dtが、1フレームの画像データを復元して出力するまでに要する時間の上限値として予めRAM1402に格納されている値以下となるように、1フレームの符号化画像データを構成する各サブバンドのうち、復号しないサブバンドを決定する処理を行う。より具体的には各サブバンドを復号するか否かを決定する。   The non-decoding subband determination unit 107 stores in advance in the RAM 1402 the upper limit value of the time required for the decoding processing time Dt of the sample frame output from the decoding processing time measurement unit 106 to restore and output one frame of image data. A process of determining a subband not to be decoded among the subbands constituting one frame of encoded image data is performed so as to be equal to or less than the stored value. More specifically, it is determined whether to decode each subband.

ここでRAM1402には本処理の前段で予め、非復号サブバンド数を表す変数Mと、各サブバンドを復号するか否かを示す(初期化状態の)復号フラグF(S)のデータと、1フレームの画像データを復元して出力するまでに要する時間の上限値(目標復号処理時間)を表す変数T、時間差分を表す変数ΔTが保持されているものとする。   Here, in the RAM 1402, in advance of this processing, a variable M indicating the number of non-decoding subbands, data of a decoding flag F (S) indicating whether or not each subband is to be decoded, and It is assumed that a variable T representing an upper limit value (target decoding processing time) required for restoring and outputting one frame of image data and a variable ΔT representing a time difference are held.

そして後述する処理によって、復号しないサブバンドを決定し、この旨を反映した復号フラグF(S)のデータを生成する。   Then, a subband not to be decoded is determined by processing to be described later, and data of a decoding flag F (S) reflecting this is generated.

図11は各サブバンドSに対する復号フラグF(S)を表すテーブルの構成例を示す図である。同図は非復号サブバンド数M=3である場合のテーブルであり、同図のサブバンドの並びで上から順にM個のサブバンドが非復号サブバンドに設定されている。後述する処理では図11に示すテーブルを作成し、作成したテーブルのデータをRAM1402に格納することを行う。   FIG. 11 is a diagram illustrating a configuration example of a table representing the decoding flag F (S) for each subband S. The figure shows a table when the number of non-decoding subbands M = 3, and M subbands are set as non-decoding subbands in order from the top in the arrangement of the subbands in the figure. In processing to be described later, the table shown in FIG. 11 is created, and the data of the created table is stored in the RAM 1402.

図12は、本実施形態に係る画像復号装置による動画像符号化データの復号処理の流れを示すフローチャートである。なお同図に従ったプログラムはRAM1402にロードされており、CPU1401がこれを実行することで、本実施形態に係る画像復号装置は図12に示したフローチャートに従った処理を行うことができる。以下、図12に示したフローチャートを参照して、本実施形態に係る画像復号装置が行う画像復号処理についてより詳細に説明する。   FIG. 12 is a flowchart showing a flow of decoding processing of moving image encoded data by the image decoding apparatus according to the present embodiment. Note that the program according to the figure is loaded in the RAM 1402, and the CPU 1401 executes this, so that the image decoding apparatus according to the present embodiment can perform processing according to the flowchart shown in FIG. Hereinafter, the image decoding process performed by the image decoding apparatus according to the present embodiment will be described in more detail with reference to the flowchart shown in FIG.

まず、符号列読み出し部101によって2次記憶装置206から読み出されたサンプルフレームの符号化画像データをビットプレーン復号部102、逆離散ウェーブレット変換部104によって復号し、復号処理時間計測部106によりサンプルフレームの符号化画像データを構成する各サブバンドの復号時間Dt(SI)、及びサンプルフレームの符号化画像データを構成する全てのサブバンドの復号を行い、出力するまでに要する時間である復号処理時間Dtを計測する(ステップS1900)。   First, the encoded image data of the sample frame read from the secondary storage device 206 by the code string reading unit 101 is decoded by the bit-plane decoding unit 102 and the inverse discrete wavelet transform unit 104, and the sample is sampled by the decoding processing time measurement unit 106. Decoding process Dt (SI) of each subband constituting the encoded image data of the frame and a decoding process which is a time required to decode and output all the subbands constituting the encoded image data of the sample frame Time Dt is measured (step S1900).

次に、ステップS1900で求めた各時間を元に、非復号サブバンド決定部107にて非復号サブバンド数Mを決定する(ステップS1901)。目標復号処理時間Tに対して実際の復号処理時間DtがDt≦Tの場合には、各フレームを構成する全てのサブバンドを復号しても1フレームの復号時間が目標復号処理時間内で収まるので、M=0(非復号サブバンド数は0、即ち全てのサブバンドを復号する)と設定する。   Next, based on each time obtained in step S1900, the non-decoding subband determining unit 107 determines the number M of non-decoding subbands (step S1901). When the actual decoding processing time Dt is Dt ≦ T with respect to the target decoding processing time T, the decoding time of one frame is within the target decoding processing time even if all the subbands constituting each frame are decoded. Therefore, M = 0 (the number of non-decoding subbands is 0, that is, all subbands are decoded) is set.

一方、Dt>Tの場合、1フレームを構成する全てのサブバンドを復号していては、1フレームの画像データを復元して出力するまでに要する時間が目標復号処理時間内には収まらない。そこで、1フレームを構成する各サブバンドのうち、低解像度のサブバンドから順次非復号サブバンドに含めていく処理を行う。このようにすることで、復号するサブバンドの数を減らすことができるので、1フレームの画像データを復元して出力するまでに要する時間を目標復号処理時間内に納めることができる。   On the other hand, when Dt> T, all subbands constituting one frame are decoded, and the time required to restore and output one frame of image data does not fall within the target decoding processing time. In view of this, a process of sequentially including the low-resolution subbands in the non-decoding subbands among the subbands constituting one frame is performed. In this way, since the number of subbands to be decoded can be reduced, the time required to restore and output one frame of image data can be kept within the target decoding processing time.

具体的には、Dt≦Tとなるまで、サブバンド番号0から6の順で復号サブバンド数Mを減らす。即ち、以下の式を満たす最小のMを求め、これを非復号サブバンド数Mとする(ステップS1901)。   Specifically, the number M of decoding subbands is reduced in the order of subband numbers 0 to 6 until Dt ≦ T. That is, the minimum M satisfying the following expression is obtained, and this is set as the number M of non-decoding subbands (step S1901).

Figure 2005102125
Figure 2005102125

以上の処理により、各フレームを目標復号処理時間内に復号して出力することができるであろう非復号サブバンド数Mを決定する。なお、以上の処理は非復号サブバンド、即ち復号しないサブバンドの数を決定しているが、これは換言すれば復号するサブバンドの数を決定していることに等価である。
次に、各フレームの先頭(ここではフレーム1とする)から順次、各フレームの符号化画像データの復号処理を行うのであるが、その前に、時間差分ΔTを0に設定する(ステップS1902)。
With the above processing, the number M of non-decoding subbands that will be able to be decoded and output within the target decoding processing time is determined. The above process determines the number of non-decoding subbands, that is, the subbands that are not decoded. In other words, this is equivalent to determining the number of subbands to be decoded.
Next, the encoded image data of each frame is sequentially decoded from the beginning of each frame (here, frame 1), but before that, the time difference ΔT is set to 0 (step S1902). .

次に、非復号サブバンド決定部107で、ステップS1901で決定した非復号サブバンド数Mに基づいて復号フラグF(S)を決定する(ステップS1903)。ステップS1903における処理を図11のテーブルを例に取り説明すると、例えばステップS1901でM=3と決定した場合、S=HH2,LH2,HL2に対応するF(S)、即ち上から3つのF(S)が0となり、それ以外のF(S)は1となる。このようにして生成したテーブルのデータは上述の通りRAM1402に格納する。   Next, the non-decoding subband determination unit 107 determines a decoding flag F (S) based on the number M of non-decoding subbands determined in step S1901 (step S1903). The processing in step S1903 will be described using the table of FIG. 11 as an example. For example, if M = 3 is determined in step S1901, F (S) corresponding to S = HH2, LH2, HL2, ie, three F ( S) becomes 0, and other F (S) becomes 1. The table data generated in this way is stored in the RAM 1402 as described above.

続いて、符号列読み出し部101は2次記憶装置206から各フレームの符号化画像データを読み出して後段のビットプレーン復号部102に出力し、ビットプレーン復号部102はF(S)のテーブルのデータを参照して、符号列読み出し部101から入力される各フレームの符号化画像データにおいて、復号すべきサブバンドにおけるビットプレーンのみを復号し、更に、その復号結果を用いて逆離散ウェーブレット変換部104は逆離散ウェーブレット変換を行い、各フレームの復号結果、即ち各フレームの画像データが動画像データ出力部105に出力される(ステップS1904)。   Subsequently, the code string reading unit 101 reads out the encoded image data of each frame from the secondary storage device 206 and outputs the encoded image data to the subsequent bit plane decoding unit 102. The bit plane decoding unit 102 stores the data in the F (S) table. Referring to FIG. 4, in the encoded image data of each frame input from the code string reading unit 101, only the bit plane in the subband to be decoded is decoded, and the inverse discrete wavelet transform unit 104 is further used using the decoding result. Performs inverse discrete wavelet transform, and the decoding result of each frame, that is, the image data of each frame is output to the moving image data output unit 105 (step S1904).

復号処理時間計測部106はステップS1904における一連の処理に係った時間(ステップS1904で行われた、1フレームの画像データを復元して出力するまでに要する時間)Dtを計測し、非復号サブバンド決定部107に通知する(ステップS1905)。   The decoding processing time measurement unit 106 measures a time related to a series of processing in step S1904 (time required to restore and output one frame of image data performed in step S1904) Dt, and performs non-decoding sub The band determination unit 107 is notified (step S1905).

非復号サブバンド決定部107は、1フレームの目標復号時間Tと実際にかかった復号処理時間Dtの差分を求め、保持している時間差分ΔTに加算する(ステップS1906)。この時間差分Δtには1フレームの符号化画像データを復号する毎に、「1フレームの目標復号時間Tと実際にかかった復号処理時間Dtとの差分」が累計されていく。   The non-decoding subband determination unit 107 calculates a difference between the target decoding time T for one frame and the actual decoding processing time Dt, and adds the difference to the held time difference ΔT (step S1906). In this time difference Δt, every time one frame of encoded image data is decoded, the “difference between the target decoding time T of one frame and the actual decoding processing time Dt” is accumulated.

次に、ΔTの値に応じて非復号サブバンド数Mを更新する(ステップS1907)。即ち、予め求められ、RAM1402に格納されている値Dt(M−1)×nよりもΔTが大きければ、変数Mが保持する値、即ち非復号サブバンド数から1を減じ、変数Mの値を小さくする。   Next, the number M of non-decoding subbands is updated according to the value of ΔT (step S1907). That is, if ΔT is larger than the value Dt (M−1) × n obtained in advance and stored in the RAM 1402, the value held by the variable M, that is, 1 is subtracted from the number of non-decoding subbands, and the value of the variable M Make it smaller.

nはあらかじめ定めた任意の数であり、大きい値ほど復号サブバンド数の変化は起こりにくくなる。ΔTが所定の閾値(本実施形態ではDt(M−1)×n)よりも大きくなるのは、目標復号処理時間Tの総和(これまでの復号処理の回数をGとおくとT×G)に対して実際にかかった復号時間Dtの総和(これまでの復号処理の回数をGとおくとDt×G)が小さい場合であり、その場合、まだいくつか余分にサブバンドを復号する時間の余裕があると判断することができる。   n is an arbitrary number determined in advance. The larger the value, the less the change in the number of decoding subbands. ΔT is larger than a predetermined threshold value (Dt (M−1) × n in the present embodiment) because the total of the target decoding processing time T (T × G when the number of decoding processing so far is G) Is the case where the total sum of the decoding times Dt actually taken (Dt × G, where G is the number of decoding processes so far) is small. It can be determined that there is room.

よって、復号画質を向上させるために非復号サブバンド数Mの値を1つ小さくする(換言すれば、復号するサブバンドの数を1つ増やす)。なお、非復号サブバンド数を減じる数は「1」に限定されるものではなく、閾値の値によっては、「2」以上の数を用いても良い。   Therefore, in order to improve the decoding image quality, the value of the number M of non-decoding subbands is decreased by one (in other words, the number of subbands to be decoded is increased by one). Note that the number by which the number of non-decoding subbands is subtracted is not limited to “1”, and a number greater than or equal to “2” may be used depending on the threshold value.

ここで、本実施形態において閾値として用いるDt(M−1)×nは非復号サブバンド数Mを一つ少なくしたことにより、新たに復号対象となるであろうサブバンドの復号所要時間の目安である。   Here, Dt (M−1) × n used as a threshold value in the present embodiment is a measure of the required decoding time of a subband that will be newly decoded by reducing the number M of non-decoding subbands by one. It is.

また、反対に、予め求められ、RAM1402に格納されている値Lq(Lq<0)よりもΔTが小さければ、Mに1を加えて、値を大きくする。   On the other hand, if ΔT is smaller than the value Lq (Lq <0) obtained in advance and stored in the RAM 1402, 1 is added to M to increase the value.

ΔTが所定の閾値(本実施形態ではLq)よりも小さくなるのは、目標復号処理時間Tの総和(これまでの復号処理の回数をGとおくとT×G)に対して実際にかかった復号時間Dtの総和(これまでの復号処理の回数をGとおくとDt×G)が大きい場合であり、その場合、全体の処理に遅れが生じていると判断することができる。   The reason why ΔT becomes smaller than a predetermined threshold value (Lq in the present embodiment) is actually the sum of the target decoding processing time T (T × G where the number of decoding processing so far is G). This is a case where the sum total of the decoding times Dt (Dt × G when the number of decoding processes so far is set to G) is large. In this case, it can be determined that there is a delay in the entire processing.

従って、1フレームの復号時間を短縮するために非復号サブバンド数を増やす。但しMの値の範囲は0から7までとし、上述の更新処理により0より小さくなった場合には0、7より大きくなった場合には7とする。   Therefore, the number of non-decoding subbands is increased in order to shorten the decoding time of one frame. However, the range of the value of M is from 0 to 7, and is 0 when it is smaller than 0 by the above update process, and 7 when it is larger than 7.

以上のステップS1904からステップS1908までの処理は上記動画像の全てのフレーム(若しくはキーボード1402やマウス1405等により指定されたフレーム数分)について行い、全てのフレームについて行った場合には、本処理を終了し、全てのフレームについて行っていない場合には処理をステップS1904に戻し、以降の処理を繰り返す。   The processing from step S1904 to step S1908 is performed for all the frames of the moving image (or the number of frames specified by the keyboard 1402, the mouse 1405, etc.). If all frames are not processed, the process returns to step S1904 to repeat the subsequent processes.

以上の処理によって、復号単位であるサブバンドの数を決めて復号処理を行うことができる。   Through the above process, the decoding process can be performed by determining the number of subbands as a decoding unit.

以上の説明により、本実施形態に係る画像復号装置によって、予めサブバンドの復号所要時間を見積もっておき、この復号所要時間と、1フレームの復号処理にかかる時間と目標復号時間の差分から、非復号サブバンド数Mを決めることで、再生画像の視覚上の不具合をできるだけ抑制して、復号処理時間を制御することができる。   From the above description, the image decoding apparatus according to the present embodiment estimates the required subband decoding time in advance, and calculates the non-determining time from the decoding required time, the time required for decoding one frame, and the target decoding time. By determining the number M of decoding subbands, it is possible to control the decoding processing time while suppressing the visual defect of the reproduced image as much as possible.

[第2の実施形態]
第1の実施形態では1フレームの復号時間を所定時間内に納めるためにサブバンド毎の復号所要時間を見積もり、非復号サブバンド数を決定した。即ち復号単位をサブバンドとした。本実施形態では同様の目的を達成するために、この復号単位を「ビットプレーン」とし、復号画質を段階的に制御するパラメータ(以降、Qファクタと呼ぶ)を設定して、各Qファクタの復号所要時間を見積もり、非復号ビットプレーン数を決定する。本実施形態の画像復号装置では0から9までの10段階のQファクタとし、あらかじめ各Qファクタ毎に各サブバンドの非復号ビットプレーン数を定める。Qファクタの例については後述する。
[Second Embodiment]
In the first embodiment, in order to keep the decoding time of one frame within a predetermined time, the time required for decoding for each subband is estimated, and the number of non-decoding subbands is determined. That is, the decoding unit is a subband. In the present embodiment, in order to achieve the same object, this decoding unit is set as a “bit plane”, parameters for controlling the decoding image quality in stages (hereinafter referred to as Q factor) are set, and decoding of each Q factor is performed. Estimate the required time and determine the number of non-decoding bitplanes. In the image decoding apparatus according to the present embodiment, 10 stages of Q factors from 0 to 9 are set, and the number of non-decoding bit planes of each subband is determined in advance for each Q factor. An example of the Q factor will be described later.

また、本実施形態の画像復号装置では、実数型5x3フィルタを使用してサブバンド分解を行った画像符号化データを復号対象とする。即ち、前述した動画像符号化装置において信号線207から実数型5x3フィルタを選択する信号を入力して、動画像の各フレームを符号化する。また、各フレームの画像を符号化する際に用いた、各サブバンドの量子化ステップDelta(S)を全フレームで同一とする。   In the image decoding apparatus according to the present embodiment, encoded image data that has undergone subband decomposition using a real-type 5 × 3 filter is set as a decoding target. That is, in the above-described moving image encoding apparatus, a signal for selecting a real type 5 × 3 filter is input from the signal line 207, and each frame of the moving image is encoded. Also, the quantization step Delta (S) of each subband used when encoding the image of each frame is the same for all frames.

また、本実施形態に係る画像復号装置の基本構成については第1の実施形態と同じ、即ち、図14に示した構成と同じものとする。   The basic configuration of the image decoding apparatus according to this embodiment is the same as that of the first embodiment, that is, the same as the configuration shown in FIG.

図7は、本実施形態に係る画像復号装置の機能構成を示すブロック図である。図1、9と同じ部分については同じ番号を付けている。図7に示すように、本実施形態に係る画像復号装置は、符号列読み出し部904、ビットプレーン復号部102、係数逆量子化部901、逆離散ウェーブレット変換部902、動画像データ出力部105、復号処理時間計測部106、非復号ビットプレーン決定部903とを備える。なお、図7に示す構成はハードウェアにより実現しても良いが、本実施形態では図7に示す各部は、各部の機能をコンピュータに実現させるプログラムにより実現するものとし、このプログラムは上記外部記憶装置1407や記憶媒体ドライブ1408、もしくはI/F1409を介して外部装置からRAM1402にロードされるものとする。   FIG. 7 is a block diagram illustrating a functional configuration of the image decoding apparatus according to the present embodiment. The same parts as those in FIGS. 1 and 9 are given the same numbers. As shown in FIG. 7, the image decoding apparatus according to the present embodiment includes a code string reading unit 904, a bit plane decoding unit 102, a coefficient inverse quantization unit 901, an inverse discrete wavelet transform unit 902, a moving image data output unit 105, A decoding processing time measuring unit 106 and a non-decoding bit plane determining unit 903 are provided. Although the configuration shown in FIG. 7 may be realized by hardware, in the present embodiment, each unit shown in FIG. 7 is realized by a program that causes a computer to realize the function of each unit, and this program is stored in the above external storage. It is assumed that the RAM 1402 is loaded from an external device via the device 1407, the storage medium drive 1408, or the I / F 1409.

また、同図において205は前述の2次記憶装置であって、ここから動画像の符号化データを本装置に入力するのであるが、この2次記憶装置206は例えば上記外部記憶装置1407や記憶媒体ドライブ1408、もしくはI/F1409を介して本装置に接続される外部装置であって、これらの何れかから動画像の符号化データをRAM1402にロードするものとする。なお、この動画像の符号化データは上述の通り、上記動画像符号化装置によって生成されたものである。   In the figure, reference numeral 205 denotes the above-mentioned secondary storage device, from which the encoded data of the moving image is input to this device. The secondary storage device 206 is, for example, the external storage device 1407 or the storage device. Assume that the media drive 1408 or an external device connected to the present apparatus via the I / F 1409 is loaded with the encoded data of the moving image into the RAM 1402 from either of them. Note that the encoded data of the moving image is generated by the moving image encoding device as described above.

以下、図7を参照して、本実施形態に係る画像復号装置が行う処理について説明する。   Hereinafter, processing performed by the image decoding apparatus according to the present embodiment will be described with reference to FIG.

本実施形態に係る画像復号装置はまず最初に、復号対象となる動画像符号化データから任意のフレームの符号化画像データをサンプルとして取り出して、様々な値のQファクタで復号し、夫々のQファクタの値に応じた復号時間を測定する。   First, the image decoding apparatus according to the present embodiment extracts encoded image data of an arbitrary frame from moving image encoded data to be decoded as a sample, decodes it with Q factors of various values, and outputs each Q The decoding time corresponding to the factor value is measured.

一般に動画像符号化データの復号は、動画像符号化データ中のフレームを単位に行われる。図7に示した符号列読み出し部904は、2次記憶装置206に格納されている動画像符号化データから着目するフレームの符号化データを読み出し、RAM1402に格納する。読み出しは基本的にフレーム1、フレーム2というように順番に行われるが、本実施形態では、各フレームの復号処理を行う前に、上記サンプルとしてのフレームの符号化画像データを様々な値のQファクタで復号し、夫々のQファクタの値に応じた復号時間を測定するために、任意のフレームの符号化データをサンプルとして読み出してRAM1402に格納する。以下の説明ではこのフレーム(以下、サンプルフレーム)を便宜上60フレーム目とするが、これに限定されるものではない。   In general, decoding of moving image encoded data is performed in units of frames in the moving image encoded data. The code string reading unit 904 illustrated in FIG. 7 reads the encoded data of the frame of interest from the moving image encoded data stored in the secondary storage device 206 and stores the encoded data in the RAM 1402. Reading is basically performed in the order of frame 1 and frame 2, but in this embodiment, before performing the decoding process of each frame, the encoded image data of the frame as the sample is subjected to various values of Q. In order to perform decoding with a factor and measure the decoding time according to the value of each Q factor, encoded data of an arbitrary frame is read as a sample and stored in the RAM 1402. In the following description, this frame (hereinafter referred to as a sample frame) is referred to as the 60th frame for convenience, but is not limited to this.

また、符号列読み出し部904はフレームの符号化画像データを読み出した際には、この符号化画像データのヘッダを参照し、ここから各サブバンドの符号化時の量子化ステップdelta(S)を読み出し、RAM1402に格納する処理も行う。   Further, when reading the encoded image data of the frame, the code string reading unit 904 refers to the header of the encoded image data, and from here the quantization step delta (S) at the time of encoding each subband is performed. Reading and storing in the RAM 1402 are also performed.

ビットプレーン復号部102は、RAM1402に格納された符号化データをサブバンド順に読み出し、第1の実施形態と同様の処理を行って、量子化された変換係数データQ(S,x,y)を復号する。ビットプレーン復号部102における処理は、図2に示されるビットプレーン符号化部204が行った処理の逆の処理である。   The bit plane decoding unit 102 reads the encoded data stored in the RAM 1402 in the subband order, performs the same processing as in the first embodiment, and obtains the quantized transform coefficient data Q (S, x, y). Decrypt. The processing in the bit plane decoding unit 102 is the reverse of the processing performed by the bit plane encoding unit 204 shown in FIG.

ここで、第1の実施形態では、非復号サブバンド決定部107が各サブバンド毎に復号するか否かを示すデータF(S)を決定し、ビットプレーン復号部102は各フレームについてビットプレーン復号処理を行う際に、F(S)に従って、各サブバンド毎に復号/非復号を切り替えていた。   Here, in the first embodiment, the non-decoding subband determination unit 107 determines data F (S) indicating whether or not to decode for each subband, and the bitplane decoding unit 102 determines the bitplane for each frame. When performing the decoding process, decoding / non-decoding is switched for each subband according to F (S).

本実施形態では、非復号ビットプレーン決定部903が各サブバンド毎に、下位何ビットのビットプレーンの復号を行わないかを示す「非復号ビットプレーン数ND(S)」を決定する。ND(S)は、サブバンドSの下位ND(S)ビット分のビットプレーンについては復号処理を行わないことを示すデータである。   In the present embodiment, the non-decoding bit plane determination unit 903 determines “the number of non-decoding bit planes ND (S)” indicating how many lower-order bit planes are not decoded for each subband. ND (S) is data indicating that the decoding process is not performed on the bit planes corresponding to the lower ND (S) bits of the subband S.

従って、ビットプレーン復号部102は各フレームについてビットプレーンの復号処理を行う際に、このデータND(S)を参照することで、サブバンドSの下位ND(S)ビット分のビットプレーンの復号処理は行わないようにすることができる。このようなND(S)を求める処理については後述する。   Therefore, the bit plane decoding unit 102 refers to the data ND (S) when performing the bit plane decoding process for each frame, thereby decoding the bit planes corresponding to the lower ND (S) bits of the subband S. Can be avoided. Processing for obtaining such ND (S) will be described later.

なお、本実施形態に係る画像復号装置が最初に復号するサンプルフレームについては全てのサブバンドSに対してND(S)=0とし、全てのサブバンドのビットプレーンの復号を行う。サンプルフレームについてのND(S)のデータはRAM1402に予めロードされているものとする。   Note that for the sample frame that is first decoded by the image decoding apparatus according to the present embodiment, ND (S) = 0 is set for all subbands S, and bitplanes of all subbands are decoded. It is assumed that ND (S) data for the sample frame is loaded in advance in the RAM 1402.

係数逆量子化部901では、各サブバンド毎に定めた量子化ステップdelta(S)とビットプレーン復号部102で復号された量子化された係数値Q(S,x,y)とから、各サブバンドの係数C(S,x,y)を復元する。   In the coefficient inverse quantization unit 901, the quantization step delta (S) determined for each subband and the quantized coefficient value Q (S, x, y) decoded by the bit plane decoding unit 102 are used to The subband coefficient C (S, x, y) is restored.

逆離散ウェーブレット変換部902では、図1の離散ウェーブレット変換部202が行うウェーブレット変換処理の逆変換が行われ、フレームのデータを復元する。本実施形態では上述の通り、全てのフレームで実数型5x3フィルタを使用して生成される動画像符号化データを復号対象とするので、式(3)、(4)に対応する逆変換を行う。   In the inverse discrete wavelet transform unit 902, the inverse transform of the wavelet transform process performed by the discrete wavelet transform unit 202 in FIG. 1 is performed to restore the frame data. In the present embodiment, as described above, moving image encoded data generated using a real number type 5 × 3 filter in all frames is a decoding target, and thus inverse transformation corresponding to equations (3) and (4) is performed. .

そして、動画像データ出力部105は、逆離散ウェーブレット変換部902から出力される復元画像データを、I/F1409を介して外部の装置に出力したり、表示装置1460に出力したりする。但し、本実施形態に係る画像復号装置で最初に複数回復号されるサンプルフレームのデータは復号処理時間の推定のために復号したものであるため、復号フレームデータを破棄し、出力しない。   The moving image data output unit 105 outputs the restored image data output from the inverse discrete wavelet transform unit 902 to an external device or the display device 1460 via the I / F 1409. However, since the sample frame data that is initially decoded a plurality of times by the image decoding apparatus according to the present embodiment is decoded for estimation of the decoding processing time, the decoded frame data is discarded and is not output.

復号処理時間計測部106は、符号列読み出し部904が2次記憶装置206から1フレーム分の符号か画像データを読み出す開始時から、ビットプレーン復号部102、係数逆量子化部901、逆離散ウェーブレット変換部902が1フレームの符号化画像データを復号処理して、動画像データ出力部105へと画像データが出力されるまでの時間を、Qファクタの値を0から9まで変化させて、夫々の場合についての1フレーム分の復号時間を計測する。即ち、Qファクタの値が0である場合の1フレーム分の復号時間、Qファクタの値が1である場合の1フレーム分の復号時間、、、、Qファクタの値が9である場合の1フレーム分の復号時間を求める。   The decoding processing time measuring unit 106 starts the bit string decoding unit 102, the coefficient inverse quantization unit 901, the inverse discrete wavelet from the time when the code string reading unit 904 starts reading one frame of code or image data from the secondary storage device 206. The conversion unit 902 decodes the encoded image data of one frame and outputs the image data to the moving image data output unit 105 by changing the Q factor value from 0 to 9, respectively. In this case, the decoding time for one frame is measured. That is, the decoding time for one frame when the Q factor value is 0, the decoding time for one frame when the Q factor value is 1, and 1 when the Q factor value is 9. The decoding time for the frame is obtained.

本実施形態では先ずサンプルフレームの復号を行うので、復号処理時間計測部106はQファクタの値が0である場合のサンプルフレームの復号時間、Qファクタの値が1である場合のサンプルフレームの復号時間、、、、Qファクタの値が9である場合のサンプルフレームの復号時間を求める。   In this embodiment, since the sample frame is first decoded, the decoding processing time measuring unit 106 decodes the sample frame when the Q factor value is 0, and decodes the sample frame when the Q factor value is 1. The decoding time of the sample frame when the value of the time,..., Q factor is 9 is obtained.

図8は、各Qファクタの値に対するサンプルフレームの復号時間Dt’(Q)を示す図である。Dt’(0)からDt’(9)の部分には実際の計測時間が格納される。復号処理時間計測部106は上記各復号時間を求める処理を行うことにより、各Qファクタの値に対して求めたサンプルフレームの復号時間Dt’(Q)のデータを生成し、RAM1402に格納する。   FIG. 8 is a diagram showing the decoding time Dt ′ (Q) of the sample frame with respect to each Q factor value. The actual measurement time is stored in the portion from Dt ′ (0) to Dt ′ (9). The decoding processing time measuring unit 106 performs processing for obtaining each decoding time, thereby generating data of the decoding time Dt ′ (Q) of the sample frame obtained for each Q factor value, and stores the data in the RAM 1402.

そして復号処理時間計測部106は図8に示したDt’(0)〜Dt’(9)までの復号時間のデータを求め、RAM1402に格納する処理を終えると、次に、Qファクタの値の変化に対する復号処理時間の増分Dt(Q)を求める処理を行う。   Then, the decoding processing time measurement unit 106 obtains the decoding time data from Dt ′ (0) to Dt ′ (9) shown in FIG. Processing for obtaining an increment Dt (Q) of the decoding processing time with respect to the change is performed.

具体的には、以下の式(7)に従って、Dt(Q)を求める。   Specifically, Dt (Q) is obtained according to the following equation (7).

Dt(Q)=Dt’(Q+1)−Dt’(Q) (7)
ただし、0≦Q≦8である。
Dt (Q) = Dt ′ (Q + 1) −Dt ′ (Q) (7)
However, 0 ≦ Q ≦ 8.

そして、復号処理時間計測部106は求めたDt(0)〜Dt(8)のデータをRAM1402に格納する。   Then, the decoding processing time measurement unit 106 stores the obtained data of Dt (0) to Dt (8) in the RAM 1402.

また復号処理時間計測部106は、符号列読み出し部101が2次記憶装置206から1フレーム分の符号化画像データを読み出す開始時から、このフレームの復元された画像データが動画像データ出力部105から出力されるまでにかかる時間を「1つのフレームの符号化画像データの復号に係る時間」として求めるのであるが、これは上記Dt’(0)に等価であるため、これを非復号サブバンド決定部107へと出力する。   Also, the decoding processing time measuring unit 106 starts from the time when the code string reading unit 101 starts reading the encoded image data for one frame from the secondary storage device 206, and the restored image data of this frame is the moving image data output unit 105. Is calculated as “time related to decoding of encoded image data of one frame”, and this is equivalent to the above Dt ′ (0). The data is output to the determination unit 107.

復号処理時間計測部106は、上記動画像において最初のフレーム以外については上記時間Dt(即ちDt’(Q))を測定し、非復号サブバンド決定部107へと出力する。   The decoding processing time measuring unit 106 measures the time Dt (that is, Dt ′ (Q)) except for the first frame in the moving image, and outputs it to the non-decoding subband determining unit 107.

非復号サブバンド決定部107は、復号処理時間計測部106から出力されるサンプルフレームの復号処理時間Dtが、1フレームの画像データを復元して出力するまでに要する時間の上限値として予めRAM1402に格納されている値以下となるように、1フレームの符号化画像データを構成する各サブバンドの各ビットプレーンのうち、復号しないビットプレーンを決定する処理を行う。   The non-decoding subband determination unit 107 stores in advance in the RAM 1402 the upper limit value of the time required for the decoding processing time Dt of the sample frame output from the decoding processing time measurement unit 106 to restore and output one frame of image data. A process of determining a bit plane not to be decoded among the bit planes of each subband constituting one frame of encoded image data is performed so as to be equal to or less than the stored value.

ここでRAM1402には本処理の前段で予め、インデックスとして用いる変数Qと、1フレームの復号時間の上限値である目標復号処理時間を表す変数T、時間差分を表す変数ΔT、そして、Qファクタの値に応じた、各サブバンドの非復号ビットプレーン数が登録されたテーブルのデータが保持されているものとする。   Here, in the RAM 1402, the variable Q used as an index in the previous stage of this processing, the variable T representing the target decoding processing time that is the upper limit value of the decoding time of one frame, the variable ΔT representing the time difference, and the Q factor It is assumed that data of a table in which the number of non-decoding bit planes of each subband corresponding to the value is registered is held.

図6はQファクタの値に応じた、各サブバンドの非復号ビットプレーン数が登録されたテーブルの構成例を示す図である。同図のテーブルは予め作成され、RAM1402に格納されるものである。同図のテーブルを参照すれば、例えばQファクタの値として「4」を用いる場合、サブバンドS=HH2,HL2(LH2)、HH1については上記ND(S)=4,即ち、下位4ビット分のビットプレーンは復号しないものとし、サブバンドS=HL1(LH1)については上記ND(S)=3,即ち、下位3ビット分のビットプレーンは復号しないものとし、サブバンドS=LLについては上記ND(S)=1,即ち、下位1ビット分のビットプレーンは復号しないものとすることが分かる。   FIG. 6 is a diagram illustrating a configuration example of a table in which the number of non-decoding bit planes of each subband is registered according to the Q factor value. The table shown in the figure is created in advance and stored in the RAM 1402. Referring to the table of FIG. 9, for example, when “4” is used as the value of the Q factor, ND (S) = 4 for subbands S = HH2, HL2 (LH2) and HH1, that is, the lower 4 bits. The bit plane is not decoded, ND (S) = 3 for subband S = HL1 (LH1), that is, the bit plane for the lower 3 bits is not decoded, and the above for subband S = LL. It can be seen that ND (S) = 1, that is, the bit plane for the lower one bit is not decoded.

よって、以下説明する処理では復号処理で用いるQファクタの値を求め、求めたQファクタの値に応じて各サブバンド毎の非復号ビットプレーンの数を求める。   Therefore, in the process described below, the value of the Q factor used in the decoding process is obtained, and the number of non-decoding bit planes for each subband is obtained according to the obtained Q factor value.

図13は、本実施形態に係る画像復号装置による動画像符号化データの復号処理の流れを示すフローチャートである。なお同図に従ったプログラムはRAM1402にロードされており、CPU1401がこれを実行することで、本実施形態に係る画像復号装置は図13に示したフローチャートに従った処理を行うことができる。以下、図13に示したフローチャートを参照して、本実施形態に係る画像復号装置が行う画像風号処理についてより詳細に説明する。   FIG. 13 is a flowchart showing a flow of decoding processing of moving image encoded data by the image decoding apparatus according to the present embodiment. Note that the program according to the figure is loaded in the RAM 1402, and the CPU 1401 executes this, so that the image decoding apparatus according to the present embodiment can perform processing according to the flowchart shown in FIG. Hereinafter, the image wind process performed by the image decoding apparatus according to the present embodiment will be described in more detail with reference to the flowchart shown in FIG.

まず、符号列読み出し部904によって2次記憶装置206からサンプルフレームの符号化画像データを読み出す(ステップS2001)。次に復号処理時間計測部106は、上記変数Qに値9を代入して初期化する(ステップS2002)。そして復号処理時間計測部106は以下説明するステップS2003からステップS2006までの処理を、変数Qの値が負になるまで行う。   First, the coded image data of the sample frame is read from the secondary storage device 206 by the code string reading unit 904 (step S2001). Next, the decoding processing time measuring unit 106 initializes the value Q by substituting the value 9 (step S2002). Then, the decoding processing time measuring unit 106 performs the processing from step S2003 to step S2006 described below until the value of the variable Q becomes negative.

まず、符号列読み出し部904によってステップS2001で読み出されたサンプルフレームの符号化画像データをビットプレーン復号部102、係数逆量子化部901、逆離散ウェーブレット変換部902によって復号する(ステップS2003)。この復号処理はQファクタの値(即ち変数Qが保持する値)が9である場合の復号処理である。   First, the coded image data of the sample frame read by the code string reading unit 904 in step S2001 is decoded by the bit plane decoding unit 102, the coefficient inverse quantization unit 901, and the inverse discrete wavelet transform unit 902 (step S2003). This decoding process is a decoding process when the value of the Q factor (that is, the value held by the variable Q) is 9.

復号処理時間計測部106はステップS2003における処理に要する時間を計測する(ステップS2004)。この時点で変数Qの値は「9」であるので、ステップS2004で計測した時間は上述のDt’(9)に相当する。次に、復号処理時間計測部106はステップS2004で計測したDt’(9)のデータをRAM1402に格納する(ステップS2005)。   The decoding processing time measuring unit 106 measures the time required for the processing in step S2003 (step S2004). Since the value of the variable Q is “9” at this time, the time measured in step S2004 corresponds to the above-described Dt ′ (9). Next, the decoding processing time measuring unit 106 stores the data of Dt ′ (9) measured in step S2004 in the RAM 1402 (step S2005).

次に、復号処理時間計測部106は変数Qが保持する値から1を引いた結果を再び変数Qに代入する処理を行う(ステップS2006)。ステップS2006の処理後、変数Qが保持する値は「8」となる。   Next, the decoding processing time measuring unit 106 performs processing for substituting the result obtained by subtracting 1 from the value held by the variable Q into the variable Q (step S2006). After the process of step S2006, the value held by the variable Q is “8”.

次に、復号処理時間計測部106は変数Qが保持する値が負であるか否かを判定し(ステップS2007)、負でない場合には処理をステップS2003に戻し、上記処理を繰り返す。ここで変数Qが保持する値は「8」であり、8>0であるので、処理をステップS2003に戻す。   Next, the decoding processing time measurement unit 106 determines whether or not the value held by the variable Q is negative (step S2007). If the value is not negative, the processing returns to step S2003, and the above processing is repeated. Here, since the value held by the variable Q is “8” and 8> 0, the process returns to step S2003.

ステップS2003ではQ=8の場合について復号処理を行い、ステップS2004ではその復号時間を計測する。この時点で変数Qの値は「8」であるので、ステップS2004で計測した時間は上述のDt’(8)に相当する。   In step S2003, decoding processing is performed for Q = 8, and in step S2004, the decoding time is measured. Since the value of the variable Q is “8” at this time, the time measured in step S2004 corresponds to the above-described Dt ′ (8).

そしてステップS2005では式(7)に従ってQファクタの値の変化に対する復号処理時間の増分Dt(Q)を求める処理を行う。この増分を求める処理については上記式(7)に従って以下のようにして行う。   In step S2005, a process for obtaining an increment Dt (Q) of the decoding process time with respect to a change in the value of the Q factor is performed according to the equation (7). The processing for obtaining this increment is performed as follows according to the above equation (7).

Dt(8)=Dt’(9)−Dt’(8)
即ちDt(8)は、今回ステップS2004で求めたDt’(8)と、前回ステップS2004で求めたDt’(9)とを用いて求める。これはQ<9の場合について全て同じで、一般に、Dt(Q)は、今回ステップS2004で求めたDt’(Q)と、前回ステップS2004で求めたDt’(Q+1)とを用いて求める。
Dt (8) = Dt ′ (9) −Dt ′ (8)
That is, Dt (8) is obtained using Dt ′ (8) obtained in step S2004 this time and Dt ′ (9) obtained in step S2004 last time. This is the same for all cases where Q <9. In general, Dt (Q) is obtained by using Dt ′ (Q) obtained in the current step S2004 and Dt ′ (Q + 1) obtained in the previous step S2004.

即ち、ステップS2005ではQ=9の場合には上記増分Dt(Q)を求める処理は行わずに、Dt’(9)のデータをRAM1402に格納する処理を行い、Q<9の場合には式(7)に従って上記増分Dt(Q)を求める。   That is, in step S2005, when Q = 9, the process of obtaining the increment Dt (Q) is not performed, but the process of storing the data of Dt ′ (9) in the RAM 1402 is performed. The increment Dt (Q) is obtained according to (7).

以上のステップS2003〜ステップS2006までの処理をQ<0となるまで行うのであるが、Q<0となったときは即ち、Dt(0)〜Dt(8)が求まったということなので、次に、非復号ビットプレーン決定部903は、これらDt(0)〜Dt(8)を用いて、動画像データの各フレームを復号するのに用いるQファクタの値を求める(ステップS2208)。   The processes from step S2003 to step S2006 are performed until Q <0. When Q <0, that is, Dt (0) to Dt (8) are obtained. The non-decoding bit plane determination unit 903 uses these Dt (0) to Dt (8) to obtain the Q factor value used to decode each frame of the moving image data (step S2208).

目標復号処理時間Tに対して、ステップS2004でQ=0の場合に求めたDt’(0)がDt’(0)≦Tの場合には、各フレームを構成する全てのサブバンドの全てのビットプレーンを復号しても1フレームの復号時間が目標復号処理時間内で収まるので、Q=0(非復号ビットプレーン数は0、即ち全てのビットプレーンを復号する)と設定する。   When Dt ′ (0) obtained when Q = 0 in step S2004 with respect to the target decoding processing time T, if Dt ′ (0) ≦ T, all subbands constituting each frame are all included. Even if the bit plane is decoded, the decoding time of one frame is within the target decoding processing time, so that Q = 0 (the number of non-decoding bit planes is 0, that is, all bit planes are decoded) is set.

一方、Dt’(0)>Tの場合、1フレームを構成する全てのサブバンドの全てのビットプレーンを復号していては、1フレームの画像データを復元して出力するまでに要する時間が目標復号処理時間内には収まらない。そこで、1フレームの画像データを復元して出力するまでに要する時間が目標復号処理時間内に収まるようなQファクタの値を求め、図6に示したテーブルを参照して、求めたQファクタの値で規定される非復号ビットプレーン以外を復号することにより、1フレームの画像データを復元して出力するまでに要する時間を目標復号処理時間内に納めることができる。   On the other hand, when Dt ′ (0)> T, the time required to restore and output one frame of image data is the target when all bit planes of all subbands constituting one frame are decoded. It does not fit within the decoding process time. Therefore, a Q factor value is calculated so that the time required to restore and output one frame of image data is within the target decoding processing time. With reference to the table shown in FIG. By decoding other than the non-decoding bit plane defined by the value, the time required to restore and output one frame of image data can be kept within the target decoding processing time.

具体的には、以下の式を満たす最小のQを求め、これを以下用いるべきQファクタの値とする。   Specifically, the minimum Q satisfying the following expression is obtained, and this is set as the value of the Q factor to be used below.

Figure 2005102125
Figure 2005102125

以上の処理により、各フレームを目標復号処理時間内に復号して出力するためのQファクタの値を求めることができる。
次に、各フレームの先頭(ここではフレーム1とする)から順次、各フレームの符号化画像データの復号処理を行うのであるが、その前に、時間差分ΔTを0に設定する(ステップS2209)。
With the above processing, the Q factor value for decoding and outputting each frame within the target decoding processing time can be obtained.
Next, the encoded image data of each frame is sequentially decoded from the beginning of each frame (here, frame 1), but before that, the time difference ΔT is set to 0 (step S2209). .

次に、非復号サブバンド決定部903で、ステップS2208で求めたQファクタの値に基づいて非復号ビットプレーン数を決定する(ステップS2210)。これは上述の通り、図6に例示したテーブルのデータを参照し、ステップS2208で求めたQの値に応じた各サブバンドにおける非復号ビットプレーンの数を取得することにより行われる処理である。   Next, the non-decoding subband determination unit 903 determines the number of non-decoding bit planes based on the value of the Q factor obtained in step S2208 (step S2210). As described above, this is processing performed by referring to the data in the table illustrated in FIG. 6 and acquiring the number of non-decoding bit planes in each subband according to the Q value obtained in step S2208.

なお、ステップS2210における処理は非復号ビットプレーン、即ち復号しないビットプレーンの数を決定しているが、これは換言すれば復号するビットプレーンの数を決定していることに等価である。なお、決定した各サブバンド毎の非復号ビットプレーンの数は上記ND(S)のデータとしてRAM1402に格納される。   Note that the processing in step S2210 determines the number of non-decoding bit planes, that is, the number of bit planes not to be decoded. In other words, this is equivalent to determining the number of bit planes to be decoded. Note that the determined number of non-decoding bit planes for each subband is stored in the RAM 1402 as the ND (S) data.

続いて、符号列読み出し部101は2次記憶装置206から各フレームの符号化画像データを読み出して後段のビットプレーン復号部102に出力し、ビットプレーン復号部102は上記ND(S)のデータを参照して、符号列読み出し部101から入力される各フレームの符号化画像データにおいて、各サブバンドで復号すべきビットプレーンのみを復号し、更に、その復号結果を用いて逆離散ウェーブレット変換部104は逆離散ウェーブレット変換を行い、各フレームの復号結果、即ち各フレームの画像データが動画像データ出力部105に出力される(ステップS2211)。   Subsequently, the code string reading unit 101 reads out the encoded image data of each frame from the secondary storage device 206 and outputs the encoded image data to the subsequent bit plane decoding unit 102. The bit plane decoding unit 102 converts the ND (S) data into Referring to the encoded image data of each frame input from code string reading unit 101, only the bit plane to be decoded in each subband is decoded, and further, the inverse discrete wavelet transform unit 104 is used using the decoding result. Performs inverse discrete wavelet transform, and the decoding result of each frame, that is, the image data of each frame is output to the moving image data output unit 105 (step S2211).

復号処理時間計測部106はステップS2211における一連の処理に係った時間(ステップS2211で行われた、1フレームの画像データを復元して出力するまでに要する時間)Dtを計測し、非復号サブバンド決定部903に通知する(ステップS2212)。   The decoding processing time measuring unit 106 measures the time related to the series of processing in step S2211 (the time required to restore and output one frame of image data performed in step S2211) Dt, and the non-decoding sub The band determination unit 903 is notified (step S2212).

非復号サブバンド決定部903は、1フレームの目標復号時間Tと実際にかかった復号処理時間Dtの差分を求め、保持している時間差分ΔTに加算する(ステップS2213)。この時間差分Δtには1フレームの符号化画像データを復号する毎に、「1フレームの目標復号時間Tと実際にかかった復号処理時間Dtとの差分」が累計されていく。   The non-decoding subband determination unit 903 obtains the difference between the target decoding time T for one frame and the actual decoding processing time Dt and adds it to the held time difference ΔT (step S2213). In this time difference Δt, every time one frame of encoded image data is decoded, the “difference between the target decoding time T of one frame and the actual decoding processing time Dt” is accumulated.

次に、ΔTの値に応じてQファクタの値(変数Qが保持する値)を更新する(ステップS2214)。即ち、予め求められ、RAM1402に格納されている値Dt(Q−1)×nよりもΔTが大きければ、変数Qが保持する値から1を減じ、変数Qの値を小さくする。   Next, the value of the Q factor (the value held by the variable Q) is updated according to the value of ΔT (step S2214). That is, if ΔT is larger than the value Dt (Q−1) × n obtained in advance and stored in the RAM 1402, 1 is subtracted from the value held by the variable Q, and the value of the variable Q is reduced.

nはあらかじめ定めた任意の数であり、大きい値ほどQファクタの値の変化は起こりにくくなる。ΔTが所定の閾値(本実施形態ではDt(Q−1)×n)よりも大きくなるのは、目標復号処理時間Tの総和(これまでの復号処理の回数をGとおくとT×G)に対して実際にかかった復号時間Dtの総和(これまでの復号処理の回数をGとおくとDt×G)が小さい場合であり、その場合、まだいくつか余分にビットプレーンを復号する時間の余裕があると判断することができる。   n is an arbitrary number determined in advance, and the larger the value, the less likely the change of the Q factor value occurs. ΔT is larger than a predetermined threshold value (Dt (Q−1) × n in the present embodiment) because the total of the target decoding processing time T (T × G when the number of decoding processing so far is set to G) Is the case where the total sum of the decoding times Dt actually taken (Dt × G, where G is the number of decoding processes so far) is small. It can be determined that there is room.

よって、復号画質を向上させるためにQファクタの値を1つ小さくする(換言すると、図6のテーブルに基づき、非復号ビットプレーンの数を少なくする)。なお、Qファクタの値を減じる数は「1」に限定されるものではなく、閾値の値によっては、「2」以上の数を用いても良い。   Therefore, in order to improve the decoded image quality, the value of the Q factor is reduced by one (in other words, the number of non-decoded bit planes is reduced based on the table of FIG. 6). Note that the number by which the Q factor value is subtracted is not limited to “1”, and a number greater than or equal to “2” may be used depending on the threshold value.

また、反対に、予め求められ、RAM1402に格納されている値Lq(Lq<0)よりもΔTが小さければ、Qが保持する値に1を加えて、値を大きくする。   Conversely, if ΔT is smaller than the value Lq (Lq <0) obtained in advance and stored in the RAM 1402, 1 is added to the value held by Q to increase the value.

ΔTが所定の閾値(本実施形態ではLq)よりも小さくなるのは、目標復号処理時間Tの総和(これまでの復号処理の回数をGとおくとT×G)に対して実際にかかった復号時間Dtの総和(これまでの復号処理の回数をGとおくとDt×G)が大きい場合であり、その場合、全体の処理に遅れが生じていると判断することができる。   The reason why ΔT becomes smaller than a predetermined threshold value (Lq in the present embodiment) is actually the sum of the target decoding processing time T (T × G where the number of decoding processing so far is G). This is a case where the sum total of the decoding times Dt (Dt × G when the number of decoding processes so far is set to G) is large. In this case, it can be determined that there is a delay in the entire processing.

従って、1フレームの復号時間を短縮するためにQファクタの値を大きくし、その結果非復号ビットプレーンの数を増やす。但しQの値の範囲は0から9までとし、上述の更新処理により0より小さくなった場合には0、9より大きくなった場合には9とする。   Accordingly, in order to shorten the decoding time of one frame, the value of the Q factor is increased, and as a result, the number of non-decoding bit planes is increased. However, the range of the value of Q is from 0 to 9, and is 0 when it is smaller than 0 by the above update process, and 9 when it is larger than 9.

以上のステップS2210からステップS2214までの処理は上記動画像の全てのフレーム(若しくはキーボード1402やマウス1405等により指定されたフレーム数分)について行い、全てのフレームについて行った場合には、本処理を終了し、全てのフレームについて行っていない場合には処理をステップS2210に戻し、以降の処理を繰り返す。   The above processing from step S2210 to step S2214 is performed for all the frames of the moving image (or the number of frames specified by the keyboard 1402, the mouse 1405, etc.). If all frames are not processed, the process returns to step S2210 to repeat the subsequent processes.

以上の処理によって、復号単位であるビットプレーンの数を決めて復号処理を行うことができる。   Through the above process, the decoding process can be performed by determining the number of bit planes as decoding units.

以上の説明により、本実施形態に係る画像復号装置によって、サンプルフレームについて画質のパラメータを変えて復号し、各画質のパラメータ変更による復号所要時間を見積もり、この復号所要時間と、1フレームの復号処理にかかる時間と目標復号時間の差分から、この画質のパラメータを決定することで、再生画像の視覚上の不具合をできるだけ抑制して、復号処理時間を制御することができる。   As described above, the image decoding apparatus according to the present embodiment performs decoding by changing the image quality parameter for the sample frame, estimates the required decoding time by changing each image quality parameter, and the required decoding time and one frame decoding process By determining this image quality parameter from the difference between the time required for the above and the target decoding time, it is possible to control the decoding processing time while suppressing the visual defect of the reproduced image as much as possible.

<変形例>
例えば、上記第1,2の実施形態ではサブバンドを単位にビットプレーン符号化を行ったが、サブバンドをブロックに分割し、ブロックごとにビットプレーン符号化を行ってもよい。また、一つのビットプレーンを複数のパスで符号化するようにしても構わない。
<Modification>
For example, in the first and second embodiments, the bit plane encoding is performed in units of subbands. However, the subbands may be divided into blocks and the bit plane encoding may be performed for each block. One bit plane may be encoded by a plurality of passes.

また、復号単位として第1の実施形態ではサブバンド、第2の実施形態ではビットプレーンとしたが、これ以外にもコードブロックを用いても良いし、第1,2の実施形態に限定されるものではない。   As a decoding unit, a subband is used in the first embodiment and a bit plane is used in the second embodiment. However, other than this, a code block may be used, and the decoding unit is limited to the first and second embodiments. It is not a thing.

また上記第1,2の実施形態では二値算術符号化の方法としてMQ-Coderを用いる例について述べたが、これに限定されるものではなく、例えば、QM-Coder等、MQ-Coder以外の算術符号化方法を適用しても構わないし、マルチコンテクストの情報源を符号化するに適する方式であればその他の2値符号化方式を適用しても構わない。   In the first and second embodiments, the example in which MQ-Coder is used as the binary arithmetic coding method has been described. However, the present invention is not limited to this. For example, other than MQ-Coder, such as QM-Coder An arithmetic encoding method may be applied, or any other binary encoding method may be applied as long as the method is suitable for encoding a multi-context information source.

また、サブバンド分解のためのフィルタは上記第1,2の実施形態に限定されるものではなく、実数型9x7フィルタなど、その他のフィルタを使用しても構わない。さらに、その適用回数についても第1,2の実施形態に限定されるものではない。また上記第1,2の実施形態では水平方向、垂直方向に同回数の1次元離散ウェーブレット変換を施したが、同一回数でなくてもよい。   Further, the filter for subband decomposition is not limited to the first and second embodiments, and other filters such as a real type 9 × 7 filter may be used. Further, the number of applications is not limited to the first and second embodiments. In the first and second embodiments, the same number of one-dimensional discrete wavelet transforms are applied in the horizontal direction and the vertical direction.

さらに、動画像符号化データの構造についても上記第1,2の実施形態に限定されるものではなく、符号列の順序、付加情報の格納形態など、変えても構わない。例えばフレームデータの符号化方式としてISO/IEC15444−1に定めるJPEG2000を用いる場合に好適なものであり、JPEG2000の規格に記される符号化データ、あるいは同規格のPart3に規定するMotion JPEG2000の符号化データとしても良い。   Furthermore, the structure of the moving image encoded data is not limited to the first and second embodiments, and the order of the code string, the storage form of the additional information, and the like may be changed. For example, it is suitable when JPEG2000 defined in ISO / IEC 15444-1 is used as the encoding method of frame data. It is good as data.

また、上記第1,2の実施形態では復号処理に先立ち、任意の1枚のフレームを復号して処理時間の見積もりを行ったが、複数のフレームをサンプルとして復号処理時間の見積もりを行っても良いし、復号処理の途中で復号処理時間の見積もりを更新するような構成としても良い。   In the first and second embodiments, the processing time is estimated by decoding an arbitrary frame prior to the decoding process. However, the decoding processing time may be estimated using a plurality of frames as samples. It is also possible to adopt a configuration in which the estimation of the decoding process time is updated during the decoding process.

[その他の実施形態]
尚、本発明は、複数の機器(例えば、ホストコンピュータ、インタフェース機器、リーダ、プリンタ等)から構成されるシステムに適用しても、一つの機器からなる装置(例えば、複写機、ファクシミリ装置等)に適用してもよい。
[Other Embodiments]
Note that the present invention can be applied to a system composed of a plurality of devices (for example, a host computer, an interface device, a reader, a printer, etc.), but a device (for example, a copier, a facsimile machine, etc.) composed of a single device. You may apply to.

また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体(または記憶媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。   Also, an object of the present invention is to supply a recording medium (or storage medium) in which a program code of software that realizes the functions of the above-described embodiments is recorded to a system or apparatus, and a computer (or CPU or CPU) of the system or apparatus. Needless to say, this can also be achieved when the MPU) reads and executes the program code stored in the recording medium. In this case, the program code itself read from the recording medium realizes the functions of the above-described embodiment, and the recording medium on which the program code is recorded constitutes the present invention. Further, by executing the program code read by the computer, not only the functions of the above-described embodiments are realized, but also an operating system (OS) running on the computer based on the instruction of the program code. It goes without saying that a case where the function of the above-described embodiment is realized by performing part or all of the actual processing and the processing is included.

さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。   Furthermore, after the program code read from the recording medium is written into a memory provided in a function expansion card inserted into the computer or a function expansion unit connected to the computer, the function is based on the instruction of the program code. It goes without saying that the CPU or the like provided in the expansion card or the function expansion unit performs part or all of the actual processing and the functions of the above-described embodiments are realized by the processing.

本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。   When the present invention is applied to the recording medium, program code corresponding to the flowchart described above is stored in the recording medium.

本発明の実施形態で用いる画像復号装置が復号する対象となる動画像符号化データを生成する動画像符号化装置の機能構成を示す図である。It is a figure which shows the function structure of the moving image encoding apparatus which produces | generates the moving image encoded data used as the decoding object by the image decoding apparatus used by embodiment of this invention. 1フレームの画像データに対して2次元離散ウェーブレット変換を施して4つのサブバンドを生成する処理を説明する図である。It is a figure explaining the process which performs two-dimensional discrete wavelet transformation with respect to the image data of 1 frame, and produces | generates four subbands. 2回の2次元離散ウェーブレット変換によって得られる7つのサブバンドを示す図である。It is a figure which shows seven subbands obtained by two times of two-dimensional discrete wavelet transforms. ビットプレーン符号化部204でサブバンドSを符号化する処理手順を説明するためのフローチャートである。12 is a flowchart for explaining a processing procedure for encoding subband S by bit plane encoding section 204. 符号列形成部205において生成される1枚のフレームデータに対応する符号列の細部構造を示す図である。It is a figure which shows the detailed structure of the code sequence corresponding to one frame data produced | generated in the code sequence formation part. Qファクタの値に応じた、各サブバンドの非復号ビットプレーン数が登録されたテーブルの構成例を示す図である。It is a figure which shows the structural example of the table in which the number of non-decoding bit planes of each subband according to the value of Q factor was registered. 本発明の第2の実施形態に係る画像復号装置の機能構成を示すブロック図である。It is a block diagram which shows the function structure of the image decoding apparatus which concerns on the 2nd Embodiment of this invention. 各Qファクタの値に対するサンプルフレームの復号時間Dt’(Q)を示す図である。It is a figure which shows the decoding time Dt '(Q) of the sample frame with respect to the value of each Q factor. 本発明の第1の実施形態に係る画像復号装置の機能構成を示すブロック図である。It is a block diagram which shows the function structure of the image decoding apparatus which concerns on the 1st Embodiment of this invention. サブバンドインデックスSIとサブバンドSの復号時間(復号所要時間)との関係を表すテーブルの構成例を示す図である。It is a figure which shows the structural example of the table showing the relationship between the subband index SI and the decoding time (decoding required time) of the subband S. 各サブバンドSに対する復号フラグF(S)を表すテーブルの構成例を示す図である。It is a figure which shows the structural example of the table showing the decoding flag F (S) with respect to each subband S. 本発明の第1の実施形態に係る画像復号装置による動画像符号化データの復号処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the decoding process of the moving image coding data by the image decoding apparatus which concerns on the 1st Embodiment of this invention. 本発明の第2の実施形態に係る画像復号装置による動画像符号化データの復号処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the decoding process of the moving image coding data by the image decoding apparatus which concerns on the 2nd Embodiment of this invention. 本発明の第1の実施形態に係る画像復号装置の基本構成を示す図である。It is a figure which shows the basic composition of the image decoding apparatus which concerns on the 1st Embodiment of this invention. 動画像データ出力部105の一形態と、ディスプレイへの接続を示す図である。It is a figure which shows one form of the moving image data output part 105, and the connection to a display.

Claims (12)

各フレームの画像が符号化された動画像データを入力して、各フレームの符号化画像データを復号する画像復号方法であって、
前記各フレームから、サンプルフレームの符号化画像データを抽出して所定の復号単位で復号するサンプルフレーム復号工程と、
前記サンプルフレームの符号化画像データの復号に係る時間を計測する第1の計測工程と、
前記第1の計測工程で計測した時間が所定時間以下となるように、復号する復号単位の数を決定する決定工程と、
与えられた復号単位の数に従って、各フレームの符号化画像データ復号する復号工程と、
前記復号工程で前記各フレームを復号する際に、各フレーム毎の復号に要する時間を計測する第2の計測工程と、
前記所定時間と前記第2の計測工程で計測された時間との差分を、各フレームを復号する毎に累計していき、当該累計値が所定値以上となった場合に、前記決定工程で決定した復号単位の数を更新する更新工程とを備え、
前記復号工程では、前記決定工程で決定した復号単位の数、もしくは前記更新工程で更新した復号単位の数に従って、各フレームの符号化画像データ復号することを特徴とする画像復号方法。
An image decoding method for inputting moving image data in which an image of each frame is encoded and decoding the encoded image data of each frame,
A sample frame decoding step of extracting encoded image data of a sample frame from each frame and decoding it in a predetermined decoding unit;
A first measuring step of measuring a time required for decoding the encoded image data of the sample frame;
A determining step for determining the number of decoding units to be decoded so that the time measured in the first measuring step is equal to or less than a predetermined time;
A decoding step of decoding the encoded image data of each frame according to a given number of decoding units;
A second measuring step of measuring a time required for decoding each frame when decoding each frame in the decoding step;
The difference between the predetermined time and the time measured in the second measuring step is accumulated every time each frame is decoded, and is determined in the determining step when the accumulated value exceeds a predetermined value. An update step of updating the number of decoded units,
In the decoding step, the encoded image data of each frame is decoded according to the number of decoding units determined in the determining step or the number of decoding units updated in the updating step.
更に、前記サンプルフレーム復号工程で前記サンプルフレームの符号化画像データを復号する際に、復号単位毎の復号に要する時間を計測する第3の計測工程を備え、
前記決定工程では、
前記第1の計測工程で計測した時間が前記所定時間よりも大きい場合に、前記第1の計測工程で計測した時間から、前記第3の計測工程で計測した夫々の復号単位の復号に要する復号時間を順次引いていき、引いた結果が前記所定値以下となった時点で前記第1の計測工程で計測した時間から前記第3の計測工程で計測した時間を引いた回数に基づいて、1フレームを構成する全ての復号単位を所定の順番に並べて一方から数えた場合の、復号しない復号単位に含められる数を決定することで、前記復号する復号単位の数を決定することを特徴とする請求項1に記載の画像復号方法。
Furthermore, when decoding the encoded image data of the sample frame in the sample frame decoding step, a third measurement step of measuring the time required for decoding for each decoding unit,
In the determination step,
Decoding required for decoding each decoding unit measured in the third measurement step from the time measured in the first measurement step when the time measured in the first measurement step is greater than the predetermined time. Based on the number of times that the time measured in the third measurement step is subtracted from the time measured in the first measurement step when the time is sequentially subtracted and the result of the subtraction becomes equal to or less than the predetermined value, 1 The number of decoding units to be decoded is determined by determining the number included in decoding units that are not decoded when all decoding units constituting a frame are arranged in a predetermined order and counted from one side. The image decoding method according to claim 1.
前記決定工程では更に、1フレームを構成する復号単位のうち、復号する/復号しない復号単位を決定することを特徴とする請求項1に記載の画像復号方法。 2. The image decoding method according to claim 1, wherein in the determining step, a decoding unit to be decoded / not to be decoded is determined from among decoding units constituting one frame. 前記更新工程では、前記累計値が所定値以上となった場合に、前記決定工程で決定した復号単位の数を増加させることを特徴とする請求項1に記載の画像復号方法。 2. The image decoding method according to claim 1, wherein, in the update step, the number of decoding units determined in the determination step is increased when the cumulative value is equal to or greater than a predetermined value. 更に、画質に係るパラメータの値と、復号する復号単位の数とのセットを複数種登録したテーブルのデータをメモリに格納しておき、
前記サンプルフレーム復号工程では、前記パラメータを用いた前記サンプルフレームの符号化画像データの復号処理を、前記パラメータの値を夫々異ならせて、夫々異なる値の前記パラメータ毎に行い、
前記第1の計測工程では、前記夫々の値のパラメータ毎に、前記サンプルフレーム復号工程による復号時間を計測し、
前記決定工程では、
所定の値の前記パラメータを用いて前記サンプルフレーム復号工程で前記サンプルフレームを復号した際に前記第1の計測工程で計測した第1の時間が前記所定時間よりも大きい場合に、
夫々の前記復号時間において、隣接する時間同士の差分を前記第1の時間から順次引いていき、引いた結果が前記所定値以下となった時点で前記引いた回数に基づいて、前記パラメータの値を決定し、更に、前記テーブルを参照して、当該決定したパラメータの値に対応する、復号する復号単位の数を決定することを特徴とする請求項1に記載の画像復号方法。
Furthermore, data of a table in which a plurality of sets of parameter values related to image quality and the number of decoding units to be decoded are registered is stored in a memory,
In the sample frame decoding step, the decoding processing of the encoded image data of the sample frame using the parameters is performed for each of the parameters having different values, with the values of the parameters being different.
In the first measurement step, the decoding time by the sample frame decoding step is measured for each parameter of the respective values,
In the determination step,
When the first time measured in the first measurement step when the sample frame is decoded in the sample frame decoding step using the parameter having a predetermined value is larger than the predetermined time,
In each of the decoding times, the difference between adjacent times is sequentially subtracted from the first time, and the value of the parameter is based on the number of subtractions when the subtraction result is equal to or less than the predetermined value. The image decoding method according to claim 1, further comprising: determining a number of decoding units to be decoded corresponding to the determined parameter value by referring to the table.
前記更新工程では、前記累計値が所定値以上となった場合に、前記前記決定工程で決定した前記パラメータの値を増加させ、更に、前記テーブルのデータを参照することで、前記復号単位の数を増加させることを特徴とする請求項5に記載の画像復号方法。 In the update step, when the cumulative value is equal to or greater than a predetermined value, the value of the parameter determined in the determination step is increased, and further, the number of decoding units is determined by referring to the data in the table. The image decoding method according to claim 5, wherein the image decoding method is increased. 前記画質に係るパラメータは、Qファクタであることを特徴とする請求項5又は6に記載の画像復号方法。 The image decoding method according to claim 5 or 6, wherein the parameter relating to the image quality is a Q factor. 前記復号単位はビットプレーン、若しくはサブバンドの何れかを含むことを特徴とする請求項1乃至7の何れか1項に記載の画像復号方法。 The image decoding method according to any one of claims 1 to 7, wherein the decoding unit includes a bit plane or a subband. 更に、前記復号工程で復号された各フレームの画像を所定フレーム数保持し、所定のフレームレートで表示を行う表示装置に対して当該フレームレートに応じた所定の時間間隔で復号された各フレームの画像を順次前記表示装置に出力する工程を備えることを特徴とする請求項1に記載の画像復号方法。 Further, the image of each frame decoded in the decoding step is held for a predetermined number of frames, and is displayed at a predetermined time interval corresponding to the frame rate for a display device that displays at a predetermined frame rate. The image decoding method according to claim 1, further comprising a step of sequentially outputting images to the display device. 各フレームの画像が符号化された動画像データを入力して、各フレームの符号化画像データを復号する画像復号装置であって、
前記各フレームから、サンプルフレームの符号化画像データを抽出して所定の復号単位で復号するサンプルフレーム復号手段と、
前記サンプルフレームの符号化画像データの復号に係る時間を計測する第1の計測手段と、
前記第1の計測手段が計測した時間が所定時間以下となるように、復号する復号単位の数を決定する決定手段と、
与えられた復号単位の数に従って、各フレームの符号化画像データ復号する復号手段と、
前記復号手段によって前記各フレームを復号する際に、各フレーム毎の復号に要する時間を計測する第2の計測手段と、
前記所定時間と前記第2の計測手段により計測された時間との差分を、各フレームを復号する毎に累計していき、当該累計値が所定値以上となった場合に、前記決定手段が決定した復号単位の数を更新する更新手段とを備え、
前記復号手段は、前記決定手段が決定した復号単位の数、もしくは前記更新手段が更新した復号単位の数に従って、各フレームの符号化画像データ復号することを特徴とする画像復号装置。
An image decoding device for inputting moving image data in which an image of each frame is encoded and decoding the encoded image data of each frame,
Sample frame decoding means for extracting encoded image data of a sample frame from each frame and decoding it in a predetermined decoding unit;
First measuring means for measuring a time for decoding the encoded image data of the sample frame;
Determining means for determining the number of decoding units to be decoded so that the time measured by the first measuring means is a predetermined time or less;
Decoding means for decoding the encoded image data of each frame according to the given number of decoding units;
Second measuring means for measuring a time required for decoding each frame when the decoding means decodes each frame;
The difference between the predetermined time and the time measured by the second measuring means is accumulated every time each frame is decoded, and the determining means determines when the accumulated value exceeds a predetermined value. Update means for updating the number of decoded decoding units,
The image decoding apparatus characterized in that the decoding means decodes encoded image data of each frame according to the number of decoding units determined by the determining means or the number of decoding units updated by the updating means.
コンピュータに請求項1乃至9に何れか1項に記載の画像復号方法を実行させることを特徴とするプログラム。 A program causing a computer to execute the image decoding method according to any one of claims 1 to 9. 請求項11に記載のプログラムを格納し、コンピュータ読み取り可能な記憶媒体。 A computer-readable storage medium storing the program according to claim 11.
JP2004052126A 2003-04-24 2004-02-26 Image decoding method and image decoding apparatus Withdrawn JP2005102125A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004052126A JP2005102125A (en) 2003-08-19 2004-02-26 Image decoding method and image decoding apparatus
US10/823,612 US7903734B2 (en) 2003-04-24 2004-04-14 Moving image decoding apparatus, moving image decoding method, image decoding method, and image decoding apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003295528 2003-08-19
JP2004052126A JP2005102125A (en) 2003-08-19 2004-02-26 Image decoding method and image decoding apparatus

Publications (1)

Publication Number Publication Date
JP2005102125A true JP2005102125A (en) 2005-04-14

Family

ID=34466964

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004052126A Withdrawn JP2005102125A (en) 2003-04-24 2004-02-26 Image decoding method and image decoding apparatus

Country Status (1)

Country Link
JP (1) JP2005102125A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008011337A (en) * 2006-06-30 2008-01-17 Fujitsu Ltd Reproducing apparatus and reproducing method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008011337A (en) * 2006-06-30 2008-01-17 Fujitsu Ltd Reproducing apparatus and reproducing method
JP4579877B2 (en) * 2006-06-30 2010-11-10 富士通セミコンダクター株式会社 Playback apparatus and playback method

Similar Documents

Publication Publication Date Title
JP4702928B2 (en) Moving picture encoding apparatus and decoding apparatus, control method therefor, computer program, and computer-readable storage medium
US6041143A (en) Multiresolution compressed image management system and method
JP4511788B2 (en) Multi-resolution image data management system and method based on tiled wavelet transform and sparse data coding
KR100971835B1 (en) Image decoding method and apparatus
JP4768728B2 (en) Method and apparatus for encoding a block of values
US6950471B2 (en) Coding device, coding method and storage medium
US7903734B2 (en) Moving image decoding apparatus, moving image decoding method, image decoding method, and image decoding apparatus
US8098947B2 (en) Method and apparatus for processing image data by rearranging wavelet transform data
JP2007142614A (en) Image processing apparatus and method, program, and information recording medium
JP2004153751A (en) Image processing apparatus and image processing method
JP2004104347A (en) Image processing apparatus, image processing method, program, and recording medium
JP5817125B2 (en) Image processing apparatus and method
US8428381B2 (en) Image compression method with variable quantization parameter
KR102250088B1 (en) Method and Apparatus for decoding video stream
JP4593720B2 (en) Method and apparatus for dynamically displaying residue number coefficient
JP2008017472A (en) Compression method of ultrasonic imaging
JP2005102125A (en) Image decoding method and image decoding apparatus
JP4514666B2 (en) Video encoding device
JP4489474B2 (en) Image processing apparatus, program, and recording medium
JP4247088B2 (en) Non-interlaced image processing apparatus and processing method
JP4247089B2 (en) Non-interlaced image processing apparatus and processing method
JP4077706B2 (en) Interlaced image processing apparatus and processing method
JP2004343710A (en) Device and method for decoding moving image
JP4194311B2 (en) Moving picture encoding apparatus, moving picture decoding apparatus, and methods thereof
JP2005150846A (en) Image processing method and apparatus thereof

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20070501