WO2014203640A1 - Image decoding device - Google Patents

Image decoding device Download PDF

Info

Publication number
WO2014203640A1
WO2014203640A1 PCT/JP2014/062329 JP2014062329W WO2014203640A1 WO 2014203640 A1 WO2014203640 A1 WO 2014203640A1 JP 2014062329 W JP2014062329 W JP 2014062329W WO 2014203640 A1 WO2014203640 A1 WO 2014203640A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
coefficient
unit
replacement
zero
Prior art date
Application number
PCT/JP2014/062329
Other languages
French (fr)
Japanese (ja)
Inventor
聡 中山
Original Assignee
株式会社シキノハイテック
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 株式会社シキノハイテック filed Critical 株式会社シキノハイテック
Publication of WO2014203640A1 publication Critical patent/WO2014203640A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties

Definitions

  • the present invention relates to an image decoding apparatus that decompresses and decodes encoded image data.
  • Non-Patent Document 1 An encoding standard that can be compressed at a higher compression rate has been proposed (see Non-Patent Document 1).
  • FIG. 9 shows a schematic configuration of an image decoding device according to the standard.
  • the image decoding apparatus 100 includes a bit stream analysis unit 110, a VLC decoding unit 120, an adaptive scanning unit 130, a DC / LP / HP inverse prediction processing unit 140, and an inverse
  • the quantization unit 150 includes a frequency inverse transform unit 160 and a color space inverse transform unit 170.
  • the bit stream analyzing unit 110 analyzes the input bit stream, extracts image information, separates encoded image data, and outputs the separated image data to the VLC decoding unit 120.
  • the encoded image data includes 16 ⁇ 16 pixels (256 pixels) as one macroblock among pixels (pixels) which are the minimum unit of an image, and the macroblock is 4 ⁇ 4 pixels (16 pixels). From the highest frequency band divided into blocks and frequency-converted during compression, the first layer data (16 blocks HP coefficients), the second layer data (one block LP coefficients), and the third layer data (one pixel) Of the DC coefficient).
  • the first layer data is blank in the upper left of 4 ⁇ 4 pixels, the remaining 15 pixels are HP (high pass) coefficients, and the second layer data is 4 ⁇ The upper left of the four pixels is blank, the remaining 15 pixels are LP (low pass) coefficients, and the third layer data is composed of one pixel DC (direct current) coefficient which is a direct current component.
  • the VLC decoding unit 120 performs VLC (Variable Length Coding) decoding on the first layer data, the second layer data, and the third layer data, which are the image encoded data separated by the bitstream analysis unit 110.
  • VLC Variable Length Coding
  • a variable-length decoding process which is a process, is performed, non-zero coefficient data and zero-run length data are extracted and output to the adaptive scan unit 130.
  • the adaptive scan unit 130 replaces the coefficient data for each block in the reverse order of the compression for each of the first layer data and the second layer data whose pixel order is replaced by a method determined at the time of compression.
  • the process of returning to the pixel order is performed.
  • the replacement process at the time of compression is by collecting non-zero coefficients on the lower side of the frequency band in the upper left part of the block at the time of compression (conversely, those having zero coefficient values are gathered on the higher side of the frequency band in the lower right part). This is performed in order to increase the compression rate in encoding.
  • the adaptive scan unit 130 includes a non-zero coefficient storage / coefficient total number accumulation unit 131, a coefficient data replacement processing unit 132, a coefficient data storage unit 133, a replacement information storage unit 134, and a frequency update processing unit 135. And a non-zero coefficient storage / coefficient total accumulation unit 131, as shown in FIG. 11, a non-zero coefficient total accumulation unit 141, a coefficient output control unit 142, a non-zero coefficient storage unit
  • the coefficient data replacement processing unit 132 includes an output unit 143 and a zero run length storage / output unit 144.
  • the coefficient data replacement processing unit 132 includes a coefficient data holding unit 145, a replacement processing control unit 146, a coefficient position coordinate update unit 147, a coefficient, as shown in FIG.
  • An address holding unit 148 and a block completion signal generation unit 149 are included.
  • the first layer data input from the VLC decoding unit 120 is handled in units of blocks corresponding to 4 ⁇ 4 pixels as shown in FIGS. 20 represents the position (coordinate position) of the pixel in the block, and the HP coefficient shown in FIG. 21 is shown in FIG. 16 in the data table format.
  • the non-zero coefficient data C (i) corresponding to the non-zero coefficient forward coordinate i which is the arrangement order in the VLC code of the non-zero coefficient data, which is variable-length decoded by the VLC decoding unit 120, and the Among the zero run length data R (i) representing the number of zero coefficients preceding the non-zero coefficient data C (i), the non-zero coefficient data C (i) is included, and the immediately preceding non-zero coefficient data includes the zero coefficient.
  • the coefficient position coordinates jPRE (the initial value for the first non-zero coefficient in the block is 0) and the zero run length R (i) and 1 added to jPRE + R (i) +1 Coefficient positions are exchanged and output as coefficient data Z (P (j)) when the position coordinates are j.
  • the replaced Z (P (j)) is represented as Z ′ (j).
  • coefficient data when a zero coefficient before coefficient replacement is included is represented as Z (j).
  • the frequency update process for updating the non-zero frequency data after the coefficient replacement process reads the non-zero frequency data F (j) stored in the replacement information storage unit 134 and reads the read non-zero frequency data F (j ) Is updated by adding 1, and the updated non-zero frequency data is F ′ (j). Then, the comparison / replacement process for replacing the replacement data P (j) and the frequency update data F ′ (j) is the coefficient data of the coefficient position coordinate j to which the non-zero coefficient data C (i) is to be transferred. And non-zero frequency data F ′ (j) representing the relationship with the frequency where Z (j) was non-zero, and replacement data P (j) for replacing coefficient data Z (j) in the block It is done using.
  • the replacement data P (j) is set in advance according to the prediction mode in the DC / LP / HP inverse prediction processing unit 140, and the prediction data derived in the DC / LP / HP inverse prediction processing unit 140 is used. Corresponding replacement data P (j) is used. Further, the replacement data P (j) and the non-zero frequency data F (j) are set in advance with initial values. An example of initial values of the replacement data P (j) and the non-zero frequency data F (j) is shown in FIG. These replacement data P (j) and non-zero frequency data F (j) are stored in the replacement information storage unit 134.
  • the DC / LP / HP inverse prediction processing unit 140 stores information on the prediction mode
  • the VLC decoding unit 120 stores the first layer data for each block of non-zero coefficient storage / coefficient total number accumulation unit 131. Is input.
  • the non-zero coefficient storage / coefficient total accumulation unit 131 first stores non-zero coefficient data C (i) and zero run length data R (i), which are first layer data (HP coefficient data) for one block. The total number m of non-zero coefficient data for one block is accumulated. After the accumulation is completed, the non-zero coefficient data C (i) and the zero run length data R (i) are output to the coefficient data replacement processing unit 132 one coefficient at a time.
  • the non-zero coefficient storage / coefficient total accumulation unit 131 processes the non-zero coefficient data C (i) and zero run length data R (i), which are data of the next coefficient, for a total number m of non-zero coefficients. Is output to the coefficient data replacement processing unit 132 every time a single coefficient replacement completion signal indicating that replacement (update) of replacement information data has been completed is received.
  • the non-zero coefficient data C (i) input from the VLC decoding unit 120 is output to and stored in the non-zero coefficient storage / output unit 143, and zero run length data R (i) Is output to and stored in the zero run length storage / output unit 144, and 1 is added to the non-zero coefficient total number m in the non-zero coefficient total number accumulating unit 141 to obtain a new non-zero coefficient total number m.
  • the process is repeated until a block decoding completion signal is received from the VLC decoding unit 120 indicating that the coefficient is a non-zero coefficient.
  • the non-zero coefficient total accumulation unit 141 Upon receiving the block decoding completion signal, the non-zero coefficient total accumulation unit 141 outputs the accumulated non-zero coefficient total number m to the coefficient output control unit 142 and indicates that the total of the non-zero total has been completed. A completion signal is output to the coefficient output control unit 142.
  • the coefficient output control unit 142 that has received the total accumulation completion signal outputs a coefficient output command signal to the non-zero coefficient storage / output unit 143 and zero run length storage / output unit 144, and receives the coefficient output command signal.
  • the zero coefficient storage / output unit 143 and the zero run length storage / output unit 144 output the non-zero coefficient data C (i) and the zero run length data R (i) in the block to the coefficient data replacement processing unit 132 by one coefficient at a time.
  • the coefficient output control unit 142 outputs a block output completion signal to the coefficient data replacement processing unit 132 after outputting the m-th non-zero coefficient data C (m) and zero run length data R (m).
  • the coefficient data replacement processing unit 132 to which the non-zero coefficient data C (i) and the zero run length data R (i) are input outputs a new coefficient position coordinate j to the replacement information storage unit 134 and the replacement information.
  • the value of the replacement data P (j) read from the storage unit 134 (which is an initial value in the case of the first block) is used as an input address, and the non-zero coefficient data C (i) is used as input data. Output to.
  • the coefficient data replacement processing unit 132 to which the non-zero coefficient data C (i) and the zero run length data R (i) are input, converts the non-zero coefficient data C (i) into coefficient data.
  • the data is output as input data to be stored in the coefficient data storage unit 133 through the holding unit 145, and the zero run length data R (i) is output to the coefficient position coordinate update unit 147 through the replacement processing control unit 146.
  • the coefficient coordinates updating unit 147 the non-zero coefficient data immediately before is a coefficient position when containing zero coefficients coefficients coordinates j PRE, j PRE + R plus the zero run length and 1 R (i) (I) +1 is output to the replacement information storage unit 134 as a new coefficient position coordinate j.
  • the replacement information storage unit 134 outputs the replacement data P (j) of the new coefficient position coordinate j to the coefficient data storage unit 133 via the coefficient address holding unit 148 as a data address.
  • the non-zero coefficient storage / coefficient total accumulation unit 131 outputs the m-th non-zero coefficient data C (m) and zero run length data R (m), which are the total number of non-zero coefficients, and then stores the non-zero coefficient storage / coefficients.
  • the block completion signal generation unit 149 to which the block output completion signal is input from the total number accumulation unit 131 outputs the block replacement completion signal to the coefficient data storage unit 133 after the single coefficient replacement completion signal is output from the replacement processing control unit 146. Output.
  • the coefficient data storage unit 133 stores the non-zero coefficient data C (i) as data in the coefficient data Z (P (j)) with the replacement data P (j) as an address position.
  • the replaced Z (P (j)) is represented as Z '(j), and is not generated as intermediate data, but the coefficient data including the zero coefficient before the replacement is represented as Z (j).
  • the coefficient data storage unit 133 to which the block replacement completion signal is input from the coefficient data replacement processing unit 132, converts the replaced coefficient data Z ′ (1) to Z ′ (15) into the DC / LP / HP inverse at a time. The result is output to the prediction processing unit 140.
  • the post-replacement coefficient data Z ′ (j) column of FIG. 18 shows the data after the replacement process. ing.
  • the coefficient data Z (4) (value is 9A) at the coordinate position 4 before replacement processing is Z ′ (8) at the coordinate position 8 of the new block.
  • the coefficient data Z (5) (value 11) at the coordinate position 5 before the replacement processing is incorporated into Z ′ (2) at the coordinate position 2 of the new block.
  • the first hierarchy data generated in this way is shown in FIG.
  • the coefficient data replacement processing unit 132 outputs a frequency update completion signal for starting the frequency update processing to the frequency update processing unit 135 and updates
  • the new coefficient position coordinate j is output to the replacement information storage unit 134, and then the replacement information storage unit 134 performs the frequency update process on the non-zero frequency data F (j) corresponding to the new coefficient position coordinate j.
  • the frequency update processing unit 135 adds 1 to the non-zero frequency data F (j) input from the replacement information storage unit 134, and the comparison / replacement processing unit 136 and the replacement are obtained as non-zero frequency data F ′ (j).
  • the information is output to the information storage unit 134.
  • the replacement information storage unit 134 stores the non-zero frequency data F ′ (j) and updates it as F (j) for processing of the next block.
  • FIG. 18 shows the table data after this addition processing.
  • the zero frequency data F ′ (5) is 25.
  • the frequency update processing unit 135 outputs the updated non-zero frequency data F ′ (j) thus added to the comparison / replacement processing unit 136 for each non-zero coefficient.
  • FIG. 19 shows the update data after the replacement process.
  • the table data F (j) and P (j) stored in the replacement information storage unit 134 are F ′′ (j ⁇ 1) and F ′′ (j) output from the comparison / replacement processing unit 136, respectively.
  • the above-described processing is performed, and first hierarchical data in which coefficient data is replaced according to non-zero frequency and preset replacement data is generated. Similar processing is performed on the second layer data, and second layer data in which the coefficient data is replaced is generated.
  • the third layer data is output to the DC / LP / HP inverse prediction processing unit 140 as it is.
  • FIG. 13 is a flowchart showing the operation of the adaptive scanning unit 130.
  • the process of obtaining non-zero coefficient data in C (i) and zero-run length data in R (i) by variable length decoding is repeated for the number of non-zero coefficients in the block.
  • the replacement process to the coefficient data Z ′ (j) is performed in S107, and the non-zero data F (j) is updated in S108.
  • FIG. 14 shows the operation of the adaptive scanning unit 130 as a state transition diagram.
  • the state 0 of ST0 that is in a standby state transitions to ST1 for processing of the next block, and ST1
  • state 2 after acquiring non-zero coefficients and zero run length by the number of non-zero coefficients of the block by VLC decoding, the state transitions to state 2 of ST2.
  • state 2 coefficient data replacement processing, frequency update processing, and comparison / replacement processing are performed for each coefficient.
  • the state transitions again to state 2 and non-zero.
  • the processing in state 2 is repeated until the processing for the number of items is completed.
  • the replacement processing which is the last processing in state 2
  • the state transits to ST0, which is waiting, and waits for processing of the next block. .
  • FIG. 15 is a timing chart showing the operation of the adaptive scanning unit 130. This timing chart is an example in which the number of non-zero coefficients is three, and the processing time of each process varies depending on the circuit configuration.
  • the coefficient replacement process, the frequency update process, and the comparison / replacement process are performed serially after the VLC decoding processes from vlc1 to vlc3 are performed together, many cycles are consumed for the process.
  • the processing time for one block is 33 cycles.
  • the DC / LP / HP inverse prediction processing unit 140 receives the first layer data, the second layer data, and the third layer data for each block, which are input from the adaptive scan unit 130, between adjacent blocks.
  • the prediction mode is derived by comparing the coefficients at, and the value of the corresponding pixel of the highly correlated block is added to the target pixel according to the set arithmetic expression with respect to the prediction mode, so that the prediction process before compression is performed. Is restored (inverse prediction processing). Then, the processed first layer data, second layer data, and third layer data are output to the inverse quantization unit 150 for each block.
  • the inverse quantization unit 150 multiplies the first layer data, the second layer data, and the third layer data, which have been subjected to the inverse prediction processing by the DC / LP / HP inverse prediction processing unit 140, with respective set quantization parameters. Then, the inverse quantization process is performed, and the processed first layer data, second layer data, and third layer data are output to the frequency inverse transform unit 160 for each block.
  • the frequency inverse transform unit 160 sequentially processes the image data inversely quantized by the dequantization unit 150 in a raster direction with 4 ⁇ 4 pixels as one block, and generates coefficient data for each frequency band as pixel data. Process to convert to.
  • the frequency inverse transform unit 160 converts the first layer data, the second layer data, and the third layer data separated for each frequency band into color components (Y / U / V or Y / U / V / K). Each time, the data is returned to one block (4 ⁇ 4 pixels) of two-dimensional space data and output to the color space inverse transform unit 170.
  • the color space inverse transform unit 170 processes the image data for each color component input from the frequency inverse transform unit 160 for each pixel, and when the color space inverse transform is not necessary, the color space inverse transform is not performed.
  • the color component is Y / U / V, it is converted to RGB data, and if the color component is Y / U / V / K, it is converted to CMYK data, and the processed pixel
  • the data is output to the outside as image data for one image.
  • JPEG XR Recommendation ITU-T T.832 Information technology -JPEG XR image coding system-Image coding specification. [Online] .Recommendation T.832 (01/12). Approval 2012-01-13. Status: In force. Retrieved from the Internet: ⁇ URL: http://www.itu.int/rec/T-REC-T.832-201201-I/en>.
  • the amount of data of image data to be compressed has increased rapidly due to the improvement in resolution accompanying technological advancement.
  • the processing takes a long time due to the increase in data amount. Therefore, further efficiency is required.
  • the adaptive scan unit 130 stores the non-zero coefficient C (i) and the zero-run length R (i) for one block, and then collects the total number of non-zero coefficient data in the block.
  • the replacement process to the coefficient data Z ′ (j) is performed, the non-zero frequency data F (j) is updated, and the updated non-zero data F ′ (j) and replacement data P (j) are replaced.
  • the efficiency of the process cannot be improved, and the process takes a long time. For this reason, the processing of the conventional adaptive scanning unit 130 has become one of the bottleneck factors that reduce the processing efficiency of the image decoding apparatus 100.
  • the present invention has been made in view of the above circumstances, and it is an object of the present invention to provide an image decoding apparatus capable of increasing the overall processing efficiency by increasing the processing efficiency of the adaptive scanning unit. To do.
  • an image decoding apparatus provides: A decoding unit that decodes the compressed image encoded data to generate non-zero coefficient data C (i) and zero-run length data R (i) of each non-zero coefficient forward coordinate i in block units; The coefficient position coordinate j of the block generated from the zero run length data R (i) and the coefficient data of the coefficient position coordinate j to which the non-zero coefficient data C (i) is to be transferred, Z (j) is non- Non-zero frequency data F (j) representing the relationship with the frequency that was zero, and replacement data P (j) for replacing the coefficient data Z (j) in the block, the current coefficient position coordinate j And the block decoded by the decoding unit using the replacement data P (j) representing the relationship between the coefficient position coordinate j ′ of the coefficient position coordinate j and the coefficient position coordinate j ′ to be incorporated by replacement.
  • An adaptive scan unit that replaces the unit non-zero coefficient data C (i) in the block; An inverse quantization unit that inversely quantizes the n coefficient data in units of blocks replaced by the adaptive scan unit;
  • the adaptive scan unit includes: A replacement information storage unit for storing the non-zero frequency data F (j) and replacement data P (j); Coefficient data Z (j) corresponding to the non-zero coefficient data C (i) and zero run length data R (i) decoded by the decoding unit is stored in P (j) stored in the replacement information storage unit.
  • the non-zero coefficient data C (i) is stored in Z (P (j)) in the block.
  • the non-zero frequency data F (j) is updated by adding 1 to the non-zero coefficient position coordinate j of the non-zero coefficient position coordinate j after the decoding, and the updated non-zero frequency data F ′ (j ) Frequency update processing unit, Using the non-zero frequency data F ′ (j) updated by the frequency update processing unit, F ′ (j ⁇ 1) and F ′ (j) are sequentially compared and F ′ (i ⁇ 1) and Based on the comparison results of F ′ (i), P (i ⁇ 1) and P (i), F ′ (i ⁇ 1) and F ′ (i), P (i ⁇ 1) and P (i) A single coefficient for starting the decoding
  • the present invention relates to an image decoding apparatus that outputs a decoding start signal and outputs a frequency update start signal after the coefficient data replacement processing from the coefficient data replacement processing unit to the frequency update processing unit.
  • n is an integer of 2 or more
  • i is an integer of 1 to n
  • j and P (j) are integers of 1 to n.
  • the adaptive scan unit outputs the single coefficient decoding start signal for starting decoding of the next non-zero coefficient simultaneously with the start of the replacement process.
  • the coefficient data replacement processing unit A coefficient data holding unit that outputs the non-zero coefficient data C (i) input from the decoding unit to the coefficient data storage unit as input data to the storage unit;
  • a replacement process control unit for controlling the start of the frequency update process and the start timing of the decoding process;
  • a coefficient position coordinate update unit for generating a current coefficient position coordinate j;
  • a coefficient address holding unit that obtains replacement data P (j) from the replacement information storage unit using the current coefficient position coordinate j, and outputs it to the coefficient data storage unit as an input address to the coefficient data storage unit;
  • a block that outputs a block replacement completion signal indicating completion of block replacement to the coefficient data storage unit based on a block decoding completion signal input from the decoding unit and a single coefficient replacement completion signal input from the replacement processing control unit
  • a completion signal generator The replacement processing control unit outputs a single coefficient decoding start signal for starting decoding of the next non-zero coefficient to the decoding unit, and outputs a frequency update start signal to the frequency update processing
  • encoded image data for one image is input to the decoding unit in units of a block having a predetermined number of pixels.
  • the encoded image data is converted into non-zero coefficient data C (i) and zero-run length data R (i) on a block basis and input to the adaptive scan unit.
  • the adaptive scanning unit After the block-unit coefficient data replacement process, the adaptive scanning unit adds 1 to the non-zero coefficient position coordinate j of the non-zero coefficient position coordinate j to update it as non-zero frequency data F ′ (j), Based on the comparison result between the updated F ′ (j ⁇ 1) and F ′ (j), F ′ (i ⁇ 1) and F ′ (i), and P (i ⁇ 1) and P (i) The non-zero frequency data F (j) and the replacement data P (j) are updated for the next coefficient processing.
  • a single coefficient decoding start signal for starting decoding of the next non-zero coefficient is output to the decoding unit, so that the decoding unit Decoding processing and a series of coefficient replacement processing, non-zero frequency data update processing, and coefficient comparison / replacement processing in the adaptive scanning unit can be performed in parallel.
  • the processing in the decoding unit and the processing in the adaptive scanning unit in units of blocks. And the processing in the decoding unit and the processing in the adaptive scanning unit are performed in parallel for each coefficient, so that the processing efficiency is improved, and the processing in the decoding unit and the entire processing in the adaptive scanning unit are performed.
  • the number of cycles can be reduced. Note that the number of cycles indicates the number of cycles required to execute the processing, assuming that one clock used as the processing timing is one cycle.
  • the block-unit coefficient data Z ′ (j) after the replacement process is subjected to an inverse prediction process and the like, and is dequantized in the inverse quantization unit
  • the frequency inverse transform unit restores the image data by performing frequency inverse transform in units of a predetermined number of pixels.
  • a single coefficient decoding start signal for starting decoding of the next non-zero coefficient is output to the decoding unit.
  • the processing in the decoding unit and the processing in the adaptive scanning unit can be performed in parallel, and the number of cycles for the entire processing in the decoding unit and the adaptive scanning unit can be reduced.
  • the coefficient data replacement processing unit receives a single coefficient replacement completion signal indicating that the replacement process has been completed.
  • the adaptive scanning unit outputs a single coefficient replacement completion signal indicating that the comparison / replacement processing is completed from the comparison / replacement processing unit to the coefficient data replacement processing unit.
  • the decoding processing in the decoding unit is more complicated than the series of coefficient replacement processing, non-zero frequency data update processing, and coefficient comparison / replacement processing in the adaptive scan unit.
  • the process requires more cycles than the process in the adaptive scan unit. Therefore, the decoding process of the next coefficient can be started without confirming the end of the process in the adaptive scan unit, but the number of cycles required for the decoding process is larger than the number of process cycles in the adaptive scan unit.
  • the processing in the decoding unit and the processing in the adaptive scanning unit cannot be performed normally. .
  • the present invention further provides a coefficient data replacement process by outputting a single coefficient replacement completion signal indicating completion of update of coefficient data replacement information from the comparison / replacement unit to the coefficient data replacement processing unit. Even if the number of cycles required for the decryption process is small, the unit can wait for the end of the process in the comparison / replacement process unit and instruct the start of the process in the decryption unit. Even when the time is shorter than the processing time in the adaptive scanning unit, the decoding process can be performed normally.
  • the image decoding apparatus having the above-described configuration, a series of coefficient replacement processing, non-zero frequency data update processing, and coefficient comparison / replacement processing in the adaptive scanning unit are performed in the decoding processing in the decoding unit. Therefore, it is possible to reduce the number of cycles required for the processing in the decoding unit and the entire processing in the adaptive scanning unit.
  • a signal for starting the decoding process can be output after waiting for the completion of the process in the comparison / replacement processing unit, so that the processing time in the decoding process is adaptive scan. Even if the processing time is shorter than the processing time in the unit, the decoding process can be normally performed.
  • the processing of the adaptive scanning unit can be performed in parallel with the decoding processing of the decoding unit, and the adaptive scanning unit can be efficiently processed.
  • the overall processing speed of the image decoding apparatus can be increased compared to the conventional case, and an efficient decoding process can be realized.
  • a signal for starting the decoding process can be output after waiting for the comparison / replacement processing unit to end.
  • the decoding process can be normally performed.
  • FIG. 1 is a block diagram showing the configuration of the image decoding apparatus 1 according to this embodiment.
  • the image decoding apparatus 1 of the present example includes an adaptive scanning unit 10 having a configuration different from that of the adaptive scanning unit 130 in the conventional image decoding apparatus 100 of FIG. Only in this respect, the configuration of the conventional image decoding apparatus 100 is different. Therefore, the other components are denoted by the same reference numerals as those in the image decoding device 100, and detailed description thereof is omitted.
  • the adaptive scan unit 10 includes a coefficient data replacement processing unit 20, a coefficient data storage unit 30, a replacement information storage unit 40, a frequency update processing unit 50, and a comparison.
  • the coefficient data replacement processing unit 20 includes a replacement processing unit 60.
  • the coefficient data replacement processing unit 20 includes a coefficient data holding unit 21, a replacement processing control unit 22, a coefficient position coordinate update unit 23, a coefficient address holding unit 24, and a block.
  • the completion signal generation unit 25 is configured.
  • the first layer data and the second layer data output from the VLC decoding unit 120 are as shown in FIG. 20 and FIG. Processing is performed in units of blocks corresponding to 4 ⁇ 4 pixels, and processing for replacing the coefficient data Z (i) in the block is performed. In the following, the processing of the first layer data will be described, but the same applies to the processing of the second layer data.
  • the non-zero coefficient C (i) corresponding to the non-zero coefficient forward coordinate i which is the arrangement order in the VLC code of the non-zero coefficient data, which is variable-length decoded by the VLC decoding unit 120, and the non-zero coefficient Of the zero run length R (i) representing the number of zero coefficients preceding the zero coefficient C (i), the non-zero coefficient C (i) is the coefficient position when the immediately preceding non-zero coefficient data includes the zero coefficient.
  • the non-zero frequency data F (j) stored in the replacement information storage unit 40 is read, and the read non-zero frequency data F (j ) Is updated by adding 1, and the updated non-zero frequency data is F ′ (j).
  • the comparison / replacement process for replacing the replacement data P (j) and the frequency update data F ′ (j) is the coefficient data of the coefficient position coordinate j to which the non-zero coefficient data C (i) is to be transferred. Is performed using Z (j) and replacement data P (j) for replacing coefficient data Z (j) in the block.
  • the replacement data P (j) is set in advance according to the prediction mode in the DC / LP / HP inverse prediction processing unit 140, and the prediction data derived in the DC / LP / HP inverse prediction processing unit 140 is used. Corresponding replacement data P (j) is used. Further, the replacement data P (j) and the non-zero frequency data F (j) are set in advance with initial values. The initial values of the replacement data P (j) and the non-zero frequency data F (j) are the same as those illustrated in FIG. These replacement data P (j) and non-zero frequency data F (j) are stored in the replacement information storage unit 40.
  • the DC / LP / HP inverse prediction processing unit 140 inputs information on the prediction mode, and the VLC decoding unit 120 inputs the first layer data to the coefficient data replacement processing unit 20 one block at a time.
  • the coefficient data replacement processing unit 20 to which the zero coefficient data C (i) and the zero run length data R (i) are input outputs a new coefficient position coordinate j to the replacement information storage unit 40 and the replacement information storage.
  • the value of the replacement data P (j) read from the unit 40 (which is an initial value in the case of the first block) is used as an input address, and the non-zero coefficient data C (i) is used as input data in the coefficient data storage unit 30. Output.
  • the coefficient data replacement processing unit 20 to which the non-zero coefficient data C (i) and the zero run length data R (i) are input holds the non-zero coefficient data C (i) as coefficient data.
  • the coefficient position coordinate updating unit 23 adds the zero run length R (i) and 1 to the coefficient position coordinate j PRE which is the coefficient position when the immediately preceding non-zero coefficient data includes a zero coefficient, j PRE + R ( i) +1 is output to the replacement information storage unit 40 as a new coefficient position coordinate j.
  • the replacement information storage unit 40 outputs the replacement data P (j) of the new coefficient position coordinate j to the coefficient data storage unit 30 through the coefficient address holding unit 24 as a data address.
  • the generation unit 25 outputs the block replacement completion signal to the coefficient data storage unit 30 after the single coefficient replacement completion signal is output from the replacement processing control unit 22.
  • the coefficient data storage unit 30 stores the non-zero coefficient data C (i) as data in the coefficient data Z (P (j)) with the replacement data P (j) as the address position.
  • the replaced Z (P (j)) is represented as Z '(j), and is not generated as intermediate data, but the coefficient data including the zero coefficient before the replacement is represented as Z (j).
  • the coefficient data storage unit 30 that has received the block replacement completion signal from the coefficient data replacement processing unit 20 outputs the replaced coefficient data Z ′ (j) to the DC / LP / HP inverse prediction processing unit 140 as parallel data. To do.
  • the coefficient data Z (j) and Z ′ (j) before and after the replacement are the same as those illustrated in FIG. 18, and the generated first hierarchy data is the same as that illustrated in FIG.
  • the coefficient data replacement processing unit 20 starts a single coefficient decoding start signal for starting decoding of the next non-zero coefficient data simultaneously with the start of replacement of one Z ′ (j). Output to.
  • the VLC decoding unit 120 to which the single coefficient decoding start signal is input starts decoding the next non-zero coefficient.
  • the coefficient data replacement processing unit 20 outputs a frequency update start signal for starting the frequency update processing to the frequency update processing unit 50 and updates it.
  • the new coefficient position coordinate j is output to the replacement information storage unit 40, and then the replacement information storage unit 40 outputs the non-zero frequency data F (j) corresponding to the new coefficient position coordinate j to the frequency update processing unit. Output to 50.
  • the frequency update processing unit 50 adds 1 to the non-zero frequency data F (j) input from the replacement information storage unit 40, and the comparison / replacement processing unit 60 and the replacement as non-zero frequency data F ′ (j).
  • the information is output to the information storage unit 40.
  • the replacement information storage unit 40 stores non-zero frequency data F ′ (j) and updates it as F (j) for processing of the next block.
  • the table data after addition is the same as that illustrated in FIG.
  • the frequency update processing unit 50 outputs the updated non-zero frequency data F ′ (j) subjected to the addition process to the comparison / replacement processing unit 60 for each non-zero coefficient.
  • the update data after the update process is the same as that illustrated in FIG.
  • the table data F (j) and P (j) stored in the replacement information storage unit 40 are respectively output F ′′ (j ⁇ 1) and F ′′ (j) from the comparison / replacement processing unit 60. And P ′ (j ⁇ 1) and P ′ (j).
  • the adaptive scan unit 10 performs the above-described processing, and generates first-layer data in which coefficient data is replaced according to non-zero frequency and preset replacement data. Similar processing is performed on the second layer data, and second layer data in which the coefficient data is replaced is generated. The third layer data is output to the DC / LP / HP inverse prediction processing unit 140 as it is.
  • FIG. 5 is a flowchart showing the operation of the adaptive scanning unit 10
  • FIG. 6 is a flowchart showing the coefficient replacement process in the adaptive scanning unit 10.
  • initialization is performed by substituting 0 into Z (1) to Z (15) in S1, and then non-zero coefficient data is stored in C (i) by variable length decoding in the VLC decoding processing in S3.
  • R (i) obtains zero run length data.
  • the step of waiting for the end of the coefficient replacement process in S5 Does not exist.
  • the coefficient data replacement process performed in parallel with the VLC decoding process uses the non-zero coefficient data C (i) and the zero-run length data R (i) acquired in S3, and coefficient data Z (j) in S21.
  • the non-zero frequency data is updated in S22, and F ′ (j) and F ′ (j) are updated based on the magnitude comparison of the non-zero data F ′ (j) and F ′ (j ⁇ 1) updated in S24 to S26.
  • a replacement process with P (j) is performed.
  • FIG. 7 shows the operation of the adaptive scanning unit 10 in a state transition diagram. After the processing starts, the state 0 of the standby ST0 transitions to ST1a for processing of the next block, and ST1a In state 1a, a non-zero coefficient for one coefficient and a zero run length are obtained by VLC decoding.
  • the processing in the adaptive scanning unit is shorter in time than the processing in the VLC decoding unit (can be processed with a smaller number of cycles)
  • the state 1a in the first embodiment Without waiting for completion of state 1b, after the VLC decoding process is completed, if it is not the final non-zero coefficient of the block, transition to state 1a and state 1b, and if it is the final non-zero coefficient of the block, Transition to 1b and state 0.
  • the state 1b after the coefficient replacement process, the frequency update process, and the comparison / replacement process are performed for each coefficient, the process ends.
  • FIG. 8 is a timing chart showing the operation of the adaptive scanning unit 10. This timing chart is an example when the number of non-zero coefficients is three, and the processing time of each process (the number of cycles required for the process) varies depending on the circuit configuration.
  • the coefficient replacement process i1, the frequency update process k1, and the comparison and replacement process h1 are processed in parallel with the next VLC decoding process vlc2 after the first VLC decoding process vlc1, the processing time efficiency is improved.
  • the number of processing cycles required for decoding can be reduced.
  • the processing time of one block is 23 cycles, and it can be seen that the number of processing cycles is smaller than the number of cycles of 33 in the conventional configuration example of FIG.
  • the adaptive scanning unit 10 includes a coefficient data replacement processing unit 20, a coefficient data storage unit 30, a replacement information storage unit 40, a frequency update processing unit 50, and a comparison.
  • the coefficient data replacement processing unit 20 includes a replacement processing unit 60.
  • the coefficient data replacement processing unit 20 includes a coefficient data holding unit 21, a replacement processing control unit 22, a coefficient position coordinate update unit 23, a coefficient address holding unit 24, and a block.
  • the completion signal generation unit 25 is configured.
  • the adaptive scan unit 10 according to the second embodiment is substantially similar in configuration to the adaptive scan unit 10 according to the first embodiment shown in FIG. 2, but in FIG. A single coefficient replacement completion signal indicating that the comparison / replacement processing for one coefficient in the comparison / replacement processing unit 60 is completed is output from the replacement processing unit 60 to the coefficient data replacement processing unit 20, and in FIG. Only a single coefficient replacement completion signal indicating that the comparison / replacement processing for one coefficient in the comparison / replacement processing unit 60 is completed is output from the replacement processing unit 60 to the replacement process control unit 22 in the first implementation. This is different from the adaptive scanning unit 10 according to the embodiment.
  • the configuration of the adaptive scan unit 10 according to the second embodiment has variations in the number of cycles required for the decoding process when the number of cycles required for the decoding process is less than the number of cycles in the adaptive scan unit.
  • 3 is a configuration example when there are cases where the number of processing cycles in the adaptive scanning unit may be lower, and after completion of the one-coefficient decoding process in the VLC decoding unit 120, the coefficient data replacement processing unit 20 in FIG. 4, the replacement processing control unit waits for a single coefficient replacement completion signal indicating the completion of the comparison / replacement process in the comparison / replacement processing unit 60, and after the output of the single coefficient replacement completion signal, starts the single coefficient decoding to the VLC decoding unit Output a signal.
  • the adaptive scanning unit 10 waits for the end of the process in the comparison / replacement processing unit, The start of the process can be instructed, and the decryption process can be performed normally.
  • the operation of the adaptive scan unit 10 according to the second embodiment will be described based on the flowchart of the operation of the adaptive scan unit 10 in FIG.
  • the basic operation of the adaptive scan unit 10 according to the second embodiment is the same as that according to the first embodiment, but in the first embodiment, S4 and S5 in FIG. Although the end of the coefficient replacement process is waited, the first embodiment is different in that there is no step of waiting for the end of the coefficient replacement process of S4 and S5 in FIG.
  • the decryption process can be performed normally.
  • the operation of the adaptive scan unit 10 according to the second embodiment will be described based on the state transition diagram of the operation in the adaptive scan unit 10 of FIG.
  • the basic state transition of the adaptive scanning unit 10 according to the second embodiment is the same as that according to the first embodiment, but in the first embodiment, the state 1a in FIG. After the VLC decoding process is completed, the state transitions to the state 1a and the next VLC decoding process is started, whereas in the second embodiment of FIG. 7, it is different to wait for the completion of the replacement process in the state 1a of FIG. .
  • the adaptive scanning unit 10 according to the second embodiment even when the processing time in the decoding process is shorter than the processing time in the adaptive scanning unit, by waiting for the end of the coefficient replacement process, The decryption process can be performed normally.
  • first, image encoded data for one image is input from the outside to the bit stream analysis unit 110, and this image
  • the encoded data is analyzed and separated, and the first layer data (HP coefficient), second layer data (LP coefficient), and third layer data (DC coefficient) after separation are input to the VLC decoding unit 120.
  • the VLC decoding unit 120 performs VLC (Variable Length Coding) decoding on the first layer data, the second layer data, and the third layer data, which are the image encoded data separated by the bit stream analysis unit 110.
  • VLC Variable Length Coding
  • a variable-length decoding process which is a process, is performed, non-zero coefficient data and zero-run length data are extracted and output to the adaptive scan unit 10.
  • the adaptive scan unit 10 the first hierarchical data and the second hierarchical data in which the pixel order is replaced by a method determined at the time of compression, the coefficient data is replaced for each block by a procedure reverse to the compression,
  • the first layer data and the second layer data after processing are output to the DC / LP / HP inverse prediction processing unit 140.
  • the adaptive scanning unit 10 executes the VLC decoding process in parallel with the coefficient data replacement process, the frequency update process, and the comparison / replacement process. Therefore, according to the adaptive scanning unit 10 of the first and second embodiments, it is necessary to stop the VLC decoding process during the coefficient data replacement process, the frequency update process, and the comparison / replacement process.
  • the processing time can be included in the VLC decoding process period, and the coefficient data replacement process, frequency update process, and comparison / replacement process can be performed efficiently. it can.
  • the third layer data input from the VLC decoding unit 120 is output to the DC / LP / HP inverse prediction processing unit 140 as it is.
  • the first layer data, the second layer data, and the third layer data for each block input from the adaptive scan unit 10 are respectively between adjacent blocks.
  • the prediction mode is derived by comparing the coefficients of, and the value of the corresponding pixel between the highly correlated blocks is added to the target pixel according to the set arithmetic expression for the prediction mode. Is restored (inverse prediction processing). Then, the processed first layer data, second layer data, and third layer data are output to the inverse quantization unit 150 for each block.
  • the inverse quantization unit 150 multiplies the first layer data, the second layer data, and the third layer data, which have been subjected to the inverse prediction processing by the DC / LP / HP inverse prediction processing unit 140, with respective set quantization parameters. Then, the inverse quantization process is performed, and the processed first layer data, second layer data, and third layer data are output to the frequency inverse transform unit 160 for each block.
  • the frequency inverse transform unit 160 sequentially processes the image data inversely quantized by the dequantization unit 150 in a raster direction with 4 ⁇ 4 pixels as one block, and generates coefficient data for each frequency band as pixel data. Process to convert to.
  • the frequency inverse transform unit 160 converts the first layer data, the second layer data, and the third layer data separated for each frequency band into color components (Y / U / V or Y / U / V / K). Each time, the data is returned to one block (4 ⁇ 4 pixels) of two-dimensional space data and output to the color space inverse transform unit 170.
  • the color space inverse transform unit 170 processes the image data for each color component input from the frequency inverse transform unit 160 for each pixel, and when the color space inverse transform is not necessary, the color space inverse transform is not performed.
  • the color component is Y / U / V, it is converted to RGB data, and if the color component is Y / U / V / K, it is converted to CMYK data, and the processed pixel
  • the data is output to the outside as image data for one image.
  • the image decoding apparatus 1 of the present example it is necessary to stop the VLC decoding process during the coefficient data replacement process, the frequency update process, and the comparison / replacement process.
  • the processing time can be included in the VLC decoding process, so that the coefficient data replacement process and the replacement information data update process can be performed efficiently.
  • the processing speed of the entire image decoding apparatus 1 can be increased compared to the conventional case, and an efficient decoding process can be realized.
  • a signal for starting the decoding process can be output after waiting for the comparison / replacement processing unit to end.
  • the decoding process can be normally performed.
  • the coefficient data replacement processing unit outputs a single coefficient decoding start signal instructing the VLC decoding unit to start processing of one coefficient at the same time as the start of the coefficient data replacement process in the coefficient data processing unit.
  • the present invention is not limited to this, and it may be output when the coefficient data replacement process in the coefficient data processing unit is completed, and if possible, it is output at the end of the frequency update process in the frequency update processing unit. You may do it.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

Provided is an image decoding device with which it is possible to increase the processing efficiency of an adaptive scanning unit, and thereby increase the overall processing efficiency. At a minimum, this image decoding device (1) is provided with a decoding unit, an adaptive scanning unit (10), an inverse quantization unit, and a frequency inverse transform unit. The adaptive scanning unit (10) is constituted by a coefficient data replacement process unit (20) for performing a replacement process on coefficient data, a coefficient data storage unit (30) for storing coefficient data that has undergone the replacement process, a replacement information storage unit (40) for storing non-zero frequency data and replacement data, a frequency update process unit (50) for updating non-zero frequency data, and a comparison/substitution process unit (60) for executing a comparison/substitution process on updated storing non-zero frequency data and replacement data. In parallel with the replacement process, the coefficient data replacement process unit (20) outputs to the decoding unit a single-coefficient decoding initiation signal to initiate decoding of the next non-zero coefficient, and following the coefficient data replacement process, and outputs a frequency update initiation signal to the frequency update process unit (50).

Description

画像復号化装置Image decoding device
 本発明は、画像符号化データを伸長して復号化する画像復号化装置に関する。 The present invention relates to an image decoding apparatus that decompresses and decodes encoded image data.
 従来より、通信における負担等の軽減を目的として、画像データを圧縮し、符号化する画像符号化装置があり、その逆処理である符号化した画像データを伸長し、元の画像に復元する画像復号化装置も知られている。そして、近年では、より高い圧縮率で圧縮可能な符号化の規格が提案されている(非特許文献1参照)。 2. Description of the Related Art Conventionally, there is an image encoding device that compresses and encodes image data for the purpose of reducing the burden on communication, etc., and decompresses the encoded image data that is the inverse process, and restores the original image Decoding devices are also known. In recent years, an encoding standard that can be compressed at a higher compression rate has been proposed (see Non-Patent Document 1).
 前記規格に従った画像復号化装置の概略構成を図9に示す。同図9に示すように、この画像復号化装置100は、ビットストリーム解析部110と、VLC復号化部120と、適応型スキャン部130と、DC/LP/HP逆予測処理部140と、逆量子化部150と、周波数逆変換部160及び、色空間逆変換部170とからなる。 FIG. 9 shows a schematic configuration of an image decoding device according to the standard. As shown in FIG. 9, the image decoding apparatus 100 includes a bit stream analysis unit 110, a VLC decoding unit 120, an adaptive scanning unit 130, a DC / LP / HP inverse prediction processing unit 140, and an inverse The quantization unit 150 includes a frequency inverse transform unit 160 and a color space inverse transform unit 170.
 前記ビットストリーム解析部110は、入力されたビットストリームを解析し、画像情報を抽出するとともに、符号化された画像データを分離し、前記VLC復号化部120に出力する。 The bit stream analyzing unit 110 analyzes the input bit stream, extracts image information, separates encoded image data, and outputs the separated image data to the VLC decoding unit 120.
 前記符号化された画像データは、画像の最小単位である画素(ピクセル)の内、16×16画素(256画素)を一つのマクロブロックとし、そのマクロブロックを4×4画素(16画素)のブロックに分割して、圧縮時に周波数変換された周波数帯域の高いものから、第1階層データ(16ブロックのHP係数)、第2階層データ(1ブロックのLP係数)及び第3階層データ(1画素のDC係数)に分離して構成されている。 The encoded image data includes 16 × 16 pixels (256 pixels) as one macroblock among pixels (pixels) which are the minimum unit of an image, and the macroblock is 4 × 4 pixels (16 pixels). From the highest frequency band divided into blocks and frequency-converted during compression, the first layer data (16 blocks HP coefficients), the second layer data (one block LP coefficients), and the third layer data (one pixel) Of the DC coefficient).
 上述の1ブロック(4×4画素)に対して、第1階層データは、4×4画素の左上がブランクで、残り15画素がHP(ハイパス)係数であり、第2階層データは、4×4画素の左上がブランクで、残り15画素がLP(ローパス)係数であり、第3階層データは、直流成分である1画素のDC(ダイレクトカレント)係数から成る。 For the above-mentioned one block (4 × 4 pixels), the first layer data is blank in the upper left of 4 × 4 pixels, the remaining 15 pixels are HP (high pass) coefficients, and the second layer data is 4 × The upper left of the four pixels is blank, the remaining 15 pixels are LP (low pass) coefficients, and the third layer data is composed of one pixel DC (direct current) coefficient which is a direct current component.
 前記VLC復号化部120は、前記ビットストリーム解析部110で分離された画像符号化データである第1階層データ、第2階層データ及び第3階層データに対して、VLC(Variable Length Coding)復号化処理である可変長復号処理を施し、非ゼロ係数データ及びゼロラン長データを抽出して、前記適応型スキャン部130に出力する。 The VLC decoding unit 120 performs VLC (Variable Length Coding) decoding on the first layer data, the second layer data, and the third layer data, which are the image encoded data separated by the bitstream analysis unit 110. A variable-length decoding process, which is a process, is performed, non-zero coefficient data and zero-run length data are extracted and output to the adaptive scan unit 130.
 前記適応型スキャン部130は、圧縮時に定められた手法によって画素順を入れ替えられた第1階層データ及び第2階層データについて、ブロック毎に、その係数データを圧縮とは逆の手順によって入れ替え、元の画素順に戻す処理を行う。この圧縮時の入替処理は、圧縮時にブロックの左上部の周波数帯域の低い側に非ゼロの係数を集めることで(逆に右下部の周波数帯域の高い側に係数値がゼロのものが集まる)、符号化において圧縮率を高めるために行われるものである。 The adaptive scan unit 130 replaces the coefficient data for each block in the reverse order of the compression for each of the first layer data and the second layer data whose pixel order is replaced by a method determined at the time of compression. The process of returning to the pixel order is performed. The replacement process at the time of compression is by collecting non-zero coefficients on the lower side of the frequency band in the upper left part of the block at the time of compression (conversely, those having zero coefficient values are gathered on the higher side of the frequency band in the lower right part). This is performed in order to increase the compression rate in encoding.
 前記適応型スキャン部130は、図10に示すように、非ゼロ係数記憶・係数総数累計部131、係数データ入替処理部132、係数データ記憶部133、入替情報記憶部134、度数更新処理部135、及び比較・置換処理部136から構成され、非ゼロ係数記憶・係数総数累計部131は、図11に示すように、非ゼロ係数総数累計部141、係数出力制御部142、非ゼロ係数記憶・出力部143及びゼロラン長記憶・出力部144から構成され、係数データ入替処理部132は、図12に示すように、係数データ保持部145、入替処理制御部146、係数位置座標更新部147、係数アドレス保持部148、及びブロック完了信号生成部149から構成される。 As shown in FIG. 10, the adaptive scan unit 130 includes a non-zero coefficient storage / coefficient total number accumulation unit 131, a coefficient data replacement processing unit 132, a coefficient data storage unit 133, a replacement information storage unit 134, and a frequency update processing unit 135. And a non-zero coefficient storage / coefficient total accumulation unit 131, as shown in FIG. 11, a non-zero coefficient total accumulation unit 141, a coefficient output control unit 142, a non-zero coefficient storage unit The coefficient data replacement processing unit 132 includes an output unit 143 and a zero run length storage / output unit 144. The coefficient data replacement processing unit 132 includes a coefficient data holding unit 145, a replacement processing control unit 146, a coefficient position coordinate update unit 147, a coefficient, as shown in FIG. An address holding unit 148 and a block completion signal generation unit 149 are included.
 以下、この適応型スキャン部130における処理について説明する。尚、以下では、第1階層データの処理について説明するが、第2階層データの処理についても同様である。また、図13~図22は、適応型スキャン処理を説明するための説明図である。 Hereinafter, processing in the adaptive scanning unit 130 will be described. In the following, the processing of the first layer data will be described, but the same applies to the processing of the second layer data. 13 to 22 are explanatory diagrams for explaining the adaptive scan processing.
 前記VLC復号化部120から入力された第1階層データは、図20及び図21に示すような4×4画素に対応するブロック単位で扱われる。尚、図20中の数字は、ブロック内での画素の位置(座標位置)を表しており、図21に示したHP係数をデータテーブル形式で表すと図16に示すものとなる。 The first layer data input from the VLC decoding unit 120 is handled in units of blocks corresponding to 4 × 4 pixels as shown in FIGS. 20 represents the position (coordinate position) of the pixel in the block, and the HP coefficient shown in FIG. 21 is shown in FIG. 16 in the data table format.
 前記入替処理は、前記VLC復号化部120により可変長復号された、非ゼロ係数データのVLC符号中の並び順である非ゼロ係数順座標iに対応する非ゼロ係数データC(i)と前記非ゼロ係数データC(i)に前置するゼロ係数の個数を表わすゼロラン長データR(i)の内、非ゼロ係数データC(i)を、直前の非ゼロ係数データがゼロ係数を含んだ場合の係数位置である係数位置座標jPRE(ブロックにおける最初の非ゼロ係数に対する初期値は0)に、前記ゼロラン長R(i)と1を加えたjPRE+R(i)+1を新たな係数位置座標jとした際の、係数データZ(P(j))として、係数位置を入れ替えて出力する。なお、入れ替えたZ(P(j))をZ’(j)と表す。また、中間データとしては生成されないが、係数入れ替え前のゼロ係数を含んだ場合の係数データをZ(j)として表わす。係数入替処理後の非ゼロ度数データを更新するための度数更新処理は、前記入替情報記憶部134に記憶された非ゼロ度数データF(j)を読み出し、前記読み出した非ゼロ度数データF(j)に1を加えて更新し、更新後の非ゼロ度数データをF’(j)とする。ついで、前記入替データP(j)と前記度数更新データF’(j)を置換するための比較・置換処理は、前記非ゼロ係数データC(i)が移されるべき係数位置座標jの係数データである、Z(j)が非ゼロであった度数との関係を表す非ゼロ度数データF’(j)及び、前記ブロック内で係数データZ(j)を入れ替えるための入替データP(j)を用いて行われる。尚、入替データP(j)は、前記DC/LP/HP逆予測処理部140における予測モードに応じて予め設定されており、DC/LP/HP逆予測処理部140において導出された予測モードに対応した入替データP(j)が使用される。また、入替データP(j)、非ゼロ度数データF(j)は予め初期値が設定されている。この入替データP(j)及び非ゼロ度数データF(j)の初期値の一例を図17に示している。これら入替データP(j)及び非ゼロ度数データF(j)は前記入替情報記憶部134に格納されている。 In the replacement process, the non-zero coefficient data C (i) corresponding to the non-zero coefficient forward coordinate i which is the arrangement order in the VLC code of the non-zero coefficient data, which is variable-length decoded by the VLC decoding unit 120, and the Among the zero run length data R (i) representing the number of zero coefficients preceding the non-zero coefficient data C (i), the non-zero coefficient data C (i) is included, and the immediately preceding non-zero coefficient data includes the zero coefficient. The coefficient position coordinates jPRE (the initial value for the first non-zero coefficient in the block is 0) and the zero run length R (i) and 1 added to jPRE + R (i) +1 Coefficient positions are exchanged and output as coefficient data Z (P (j)) when the position coordinates are j. The replaced Z (P (j)) is represented as Z ′ (j). Further, although not generated as intermediate data, coefficient data when a zero coefficient before coefficient replacement is included is represented as Z (j). The frequency update process for updating the non-zero frequency data after the coefficient replacement process reads the non-zero frequency data F (j) stored in the replacement information storage unit 134 and reads the read non-zero frequency data F (j ) Is updated by adding 1, and the updated non-zero frequency data is F ′ (j). Then, the comparison / replacement process for replacing the replacement data P (j) and the frequency update data F ′ (j) is the coefficient data of the coefficient position coordinate j to which the non-zero coefficient data C (i) is to be transferred. And non-zero frequency data F ′ (j) representing the relationship with the frequency where Z (j) was non-zero, and replacement data P (j) for replacing coefficient data Z (j) in the block It is done using. The replacement data P (j) is set in advance according to the prediction mode in the DC / LP / HP inverse prediction processing unit 140, and the prediction data derived in the DC / LP / HP inverse prediction processing unit 140 is used. Corresponding replacement data P (j) is used. Further, the replacement data P (j) and the non-zero frequency data F (j) are set in advance with initial values. An example of initial values of the replacement data P (j) and the non-zero frequency data F (j) is shown in FIG. These replacement data P (j) and non-zero frequency data F (j) are stored in the replacement information storage unit 134.
 図10において、前記DC/LP/HP逆予測処理部140からは予測モードに関する情報、前記VLC復号化部120からは第1階層データが、1ブロック分ずつ非ゼロ係数記憶・係数総数累計部131に入力される。前記非ゼロ係数記憶・係数総数累計部131は、まず、1ブロック分の第1階層データ(HP係数データ)である非ゼロ係数データC(i)及びゼロラン長データR(i)を記憶するとともに、1ブロック分の非ゼロ係数データの個数の総数mを累計する。累計完了後、1係数ずつ、前記係数データ入替処理部132に、前記非ゼロ係数データC(i)及びゼロラン長データR(i)を出力する。前記非ゼロ係数記憶・係数総数累計部131は、次の係数のデータである非ゼロ係数データC(i)及びゼロラン長データR(i)を、非ゼロ係数の累計総数m個分のデータ処理が終了するまで、入替情報データの置換(更新)が終了したことを示す、単係数置換完了信号を受けるごとに、係数データ入替処理部132に出力する。 In FIG. 10, the DC / LP / HP inverse prediction processing unit 140 stores information on the prediction mode, and the VLC decoding unit 120 stores the first layer data for each block of non-zero coefficient storage / coefficient total number accumulation unit 131. Is input. The non-zero coefficient storage / coefficient total accumulation unit 131 first stores non-zero coefficient data C (i) and zero run length data R (i), which are first layer data (HP coefficient data) for one block. The total number m of non-zero coefficient data for one block is accumulated. After the accumulation is completed, the non-zero coefficient data C (i) and the zero run length data R (i) are output to the coefficient data replacement processing unit 132 one coefficient at a time. The non-zero coefficient storage / coefficient total accumulation unit 131 processes the non-zero coefficient data C (i) and zero run length data R (i), which are data of the next coefficient, for a total number m of non-zero coefficients. Is output to the coefficient data replacement processing unit 132 every time a single coefficient replacement completion signal indicating that replacement (update) of replacement information data has been completed is received.
 具体的には、図11において、前記VLC復号化部120より入力された非ゼロ係数データC(i)を非ゼロ係数記憶・出力部143に出力して記憶し、ゼロラン長データR(i)をゼロラン長記憶・出力部144に出力して記憶するとともに、非ゼロ係数総数累計部141における非ゼロ係数総数mに1を加えて、新たな非ゼロ係数総数mとし、これを該ブロックの最終非ゼロ係数となることを示す前記VLC復号化部120からのブロック復号完了信号が来るまで繰り返す。前記ブロック復号完了信号を受けた前記非ゼロ係数総数累計部141は、累計した非ゼロ係数総数mを係数出力制御部142に出力するとともに、非ゼロの総数の累計が完了したことを示す総数累計完了信号を前記係数出力制御部142に出力する。総数累計完了信号を受けた前記係数出力制御部142は、係数出力指令信号を前記非ゼロ係数記憶・出力部143及びゼロラン長記憶・出力部144に出力し、係数出力指令信号を受けた前記非ゼロ係数記憶・出力部143及びゼロラン長記憶・出力部144は、ブロック内の非ゼロ係数データC(i)及びゼロラン長データR(i)を1係数ずつ前記係数データ入替処理部132に出力する。前記係数出力制御部142は、m個目の非ゼロ係数データC(m)及びゼロラン長データR(m)を出力後、前記係数データ入替処理部132にブロック出力完了信号を出力する。 Specifically, in FIG. 11, the non-zero coefficient data C (i) input from the VLC decoding unit 120 is output to and stored in the non-zero coefficient storage / output unit 143, and zero run length data R (i) Is output to and stored in the zero run length storage / output unit 144, and 1 is added to the non-zero coefficient total number m in the non-zero coefficient total number accumulating unit 141 to obtain a new non-zero coefficient total number m. The process is repeated until a block decoding completion signal is received from the VLC decoding unit 120 indicating that the coefficient is a non-zero coefficient. Upon receiving the block decoding completion signal, the non-zero coefficient total accumulation unit 141 outputs the accumulated non-zero coefficient total number m to the coefficient output control unit 142 and indicates that the total of the non-zero total has been completed. A completion signal is output to the coefficient output control unit 142. The coefficient output control unit 142 that has received the total accumulation completion signal outputs a coefficient output command signal to the non-zero coefficient storage / output unit 143 and zero run length storage / output unit 144, and receives the coefficient output command signal. The zero coefficient storage / output unit 143 and the zero run length storage / output unit 144 output the non-zero coefficient data C (i) and the zero run length data R (i) in the block to the coefficient data replacement processing unit 132 by one coefficient at a time. . The coefficient output control unit 142 outputs a block output completion signal to the coefficient data replacement processing unit 132 after outputting the m-th non-zero coefficient data C (m) and zero run length data R (m).
 非ゼロ係数データC(i)及びゼロラン長データR(i)が入力された前記係数データ入替処理部132は、新たな係数位置座標jを前記入替情報記憶部134に出力するとともに、前記入替情報記憶部134より読み出した入替データP(j)の値(最初のブロックの場合は初期値となる)を入力アドレスとし、前記非ゼロ係数データC(i)を入力データとして、係数データ記憶部133に出力する。 The coefficient data replacement processing unit 132 to which the non-zero coefficient data C (i) and the zero run length data R (i) are input outputs a new coefficient position coordinate j to the replacement information storage unit 134 and the replacement information. The value of the replacement data P (j) read from the storage unit 134 (which is an initial value in the case of the first block) is used as an input address, and the non-zero coefficient data C (i) is used as input data. Output to.
 具体的には、図12において、非ゼロ係数データC(i)及びゼロラン長データR(i)を入力された前記係数データ入替処理部132は、非ゼロ係数データC(i)を、係数データ保持部145を介して、前記係数データ記憶部133に記憶すべき入力データとして出力し、ゼロラン長データR(i)を、入替処理制御部146を介して、係数位置座標更新部147に出力し、前記係数位置座標更新部147は、直前の非ゼロ係数データがゼロ係数を含んだ場合の係数位置である係数位置座標jPREに、前記ゼロラン長R(i)と1を加えたjPRE+R(i)+1を新たな係数位置座標jとして、前記入替情報記憶部134に出力する。なお、jPREには、更新したjを代入しておき、次に入力される非ゼロ係数の処理に備える。前記入替情報記憶部134は、新たな係数位置座標jの入替データP(j)を、係数アドレス保持部148を介して、データのアドレスとして、前記係数データ記憶部133に出力する。前記非ゼロ係数記憶・係数総数累計部131が、非ゼロ係数総数であるm個目の非ゼロ係数データC(m)及びゼロラン長データR(m)を出力後に、前記非ゼロ係数記憶・係数総数累計部131からブロック出力完了信号を入力されたブロック完了信号生成部149は、前記入替処理制御部146から単係数入替完了信号が出力された後、ブロック入替完了信号を係数データ記憶部133へ出力する。 Specifically, in FIG. 12, the coefficient data replacement processing unit 132, to which the non-zero coefficient data C (i) and the zero run length data R (i) are input, converts the non-zero coefficient data C (i) into coefficient data. The data is output as input data to be stored in the coefficient data storage unit 133 through the holding unit 145, and the zero run length data R (i) is output to the coefficient position coordinate update unit 147 through the replacement processing control unit 146. the coefficient coordinates updating unit 147, the non-zero coefficient data immediately before is a coefficient position when containing zero coefficients coefficients coordinates j PRE, j PRE + R plus the zero run length and 1 R (i) (I) +1 is output to the replacement information storage unit 134 as a new coefficient position coordinate j. Note that the updated j is assigned to j PRE to prepare for the next non-zero coefficient processing. The replacement information storage unit 134 outputs the replacement data P (j) of the new coefficient position coordinate j to the coefficient data storage unit 133 via the coefficient address holding unit 148 as a data address. The non-zero coefficient storage / coefficient total accumulation unit 131 outputs the m-th non-zero coefficient data C (m) and zero run length data R (m), which are the total number of non-zero coefficients, and then stores the non-zero coefficient storage / coefficients. The block completion signal generation unit 149 to which the block output completion signal is input from the total number accumulation unit 131 outputs the block replacement completion signal to the coefficient data storage unit 133 after the single coefficient replacement completion signal is output from the replacement processing control unit 146. Output.
 前記係数データ記憶部133は、入替データP(j)をアドレス位置とした係数データZ(P(j))に、データとしての前記非ゼロ係数データC(i)を記憶する。なお、入れ替えた前記Z(P(j))をZ’(j)と表わし、中間データとしては生成されないが、入れ替え前のゼロ係数を含む係数データをZ(j)として表わす。前記係数データ入替処理部132よりブロック入替完了信号を入力された前記係数データ記憶部133は、入れ替えた係数データZ’(1)~Z’(15)を一度に、前記DC/LP/HP逆予測処理部140に出力する。図18の入替前の係数データZ(j)の欄に、この入替処理前のデータを示し、図18の入替後の係数データZ’(j)の欄に、この入替処理後のデータを示している。図18に示した例では、入替データP(j)にしたがって、入替処理前の座標位置4の係数データZ(4)(値は9A)が新たなブロックの座標位置8のZ’(8)に組み入れられ、同じく入替処理前の座標位置5の係数データZ(5)(値は11)が新たなブロックの座標位置2のZ’(2)に組み入れられている。このようにして生成された第1階層データを図22に示している。 The coefficient data storage unit 133 stores the non-zero coefficient data C (i) as data in the coefficient data Z (P (j)) with the replacement data P (j) as an address position. The replaced Z (P (j)) is represented as Z '(j), and is not generated as intermediate data, but the coefficient data including the zero coefficient before the replacement is represented as Z (j). The coefficient data storage unit 133, to which the block replacement completion signal is input from the coefficient data replacement processing unit 132, converts the replaced coefficient data Z ′ (1) to Z ′ (15) into the DC / LP / HP inverse at a time. The result is output to the prediction processing unit 140. The pre-replacement coefficient data Z (j) column of FIG. 18 shows the data before the replacement process, and the post-replacement coefficient data Z ′ (j) column of FIG. 18 shows the data after the replacement process. ing. In the example shown in FIG. 18, according to the replacement data P (j), the coefficient data Z (4) (value is 9A) at the coordinate position 4 before replacement processing is Z ′ (8) at the coordinate position 8 of the new block. Similarly, the coefficient data Z (5) (value 11) at the coordinate position 5 before the replacement processing is incorporated into Z ′ (2) at the coordinate position 2 of the new block. The first hierarchy data generated in this way is shown in FIG.
 次に、前記係数データ入替処理部132は、一つのZ’(j)の入替が完了した後、度数更新処理を開始するための度数更新完了信号を度数更新処理部135に出力するとともに、更新した新たな係数位置座標jを入替情報記憶部134に出力し、ついで、前記置換情報記憶部134は、新たな係数位置座標jに対応する前記非ゼロ度数データF(j)を前記度数更新処理部135に出力する。 Next, after the replacement of one Z ′ (j) is completed, the coefficient data replacement processing unit 132 outputs a frequency update completion signal for starting the frequency update processing to the frequency update processing unit 135 and updates The new coefficient position coordinate j is output to the replacement information storage unit 134, and then the replacement information storage unit 134 performs the frequency update process on the non-zero frequency data F (j) corresponding to the new coefficient position coordinate j. To the unit 135.
 前記度数更新処理部135は、前記入替情報記憶部134から入力した非ゼロ度数データF(j)に1を加算し、非ゼロ度数データF’(j)として前記比較・置換処理部136及び入替情報記憶部134に出力する。前記入替情報記憶部134は、非ゼロ度数データF’(j)を記憶し、次ブロックの処理のため、F(j)として更新する。 The frequency update processing unit 135 adds 1 to the non-zero frequency data F (j) input from the replacement information storage unit 134, and the comparison / replacement processing unit 136 and the replacement are obtained as non-zero frequency data F ′ (j). The information is output to the information storage unit 134. The replacement information storage unit 134 stores the non-zero frequency data F ′ (j) and updates it as F (j) for processing of the next block.
 図18に、この加算処理後のテーブルデータを示している。図18に示した例では、座標位置4の係数データZ(4)が9A、画素位置5の係数データZ(5)が11で非ゼロであるため、座標位置4の非ゼロ度数データF(4)=28に1が加算されて更新後の非ゼロ度数データF’(4)が29となり、座標位置5の非ゼロ度数データF(5)=24に1が加算されて更新後の非ゼロ度数データF’(5)が25となっている。前記度数更新処理部135は、このようにして加算処理した更新後の非ゼロ度数データF’(j)を非ゼロ係数ごとに前記比較・置換処理部136に出力する。 FIG. 18 shows the table data after this addition processing. In the example shown in FIG. 18, since the coefficient data Z (4) at the coordinate position 4 is 9A and the coefficient data Z (5) at the pixel position 5 is 11 and non-zero, the non-zero frequency data F ( 4) 1 is added to = 28, and the updated non-zero frequency data F ′ (4) becomes 29, and 1 is added to non-zero frequency data F (5) = 24 at the coordinate position 5 to update the non-updated non-frequency data F ′ (4). The zero frequency data F ′ (5) is 25. The frequency update processing unit 135 outputs the updated non-zero frequency data F ′ (j) thus added to the comparison / replacement processing unit 136 for each non-zero coefficient.
 前記比較・置換処理部136では、前記入替情報記憶部134より読み出した非ゼロ度数データF’(j-1)と前記度数更新処理部135から入力したF’(j)とを比較し、F’(j)がF’(j-1)よりも大きい場合に、F’(j-1)とF’(j)とを置換して、F”(j-1)=F’(j)、F”(j)=F’(j-1)とする処理、及び前記入替情報記憶部134から読み出した前後の入替データP(j-1)とP(j)とを置換して、P’(j-1)=P(j)、P’(j)=P(j-1)とする処理を行う。 The comparison / replacement processing unit 136 compares the non-zero frequency data F ′ (j−1) read from the replacement information storage unit 134 with F ′ (j) input from the frequency update processing unit 135, and F When '(j) is larger than F' (j-1), F '(j-1) and F' (j) are replaced, and F "(j-1) = F '(j) , F ″ (j) = F ′ (j−1), and replacement data P (j−1) and P (j) before and after read from the replacement information storage unit 134 are replaced by P Processing is performed such that '(j-1) = P (j), P' (j) = P (j-1) '.
 図19に、この置換処理後の更新データを示している。図19に示した例は、図18に示したものを置換処理したものであり、図18に示した置換前の状態でF’(4)>F’(3)となっているので、座標位置3のP(3)と座標位置4のP(4)とを置換して、P’(3)=8、P’(4)=5とし、座標位置3のF’(3)と座標位置4のF’(4)とを置換して、F”(3)=29、F”(4)=28としている。 FIG. 19 shows the update data after the replacement process. The example shown in FIG. 19 is obtained by replacing the one shown in FIG. 18, and F ′ (4)> F ′ (3) in the state before the replacement shown in FIG. P (3) at position 3 and P (4) at coordinate position 4 are replaced with P ′ (3) = 8, P ′ (4) = 5, and F ′ (3) and coordinate at coordinate position 3 F ′ (4) at position 4 is replaced with F ″ (3) = 29 and F ″ (4) = 28.
 尚、前記入替情報記憶部134に格納されたテーブルデータF(j)及びP(j)は、それぞれ、比較・置換処理部136から出力されるF”(j-1),F”(j)及びP’(j-1)、P’(j)によって更新される。 Note that the table data F (j) and P (j) stored in the replacement information storage unit 134 are F ″ (j−1) and F ″ (j) output from the comparison / replacement processing unit 136, respectively. And P ′ (j−1) and P ′ (j).
 前記適応型スキャン部130では、以上のような処理が行われ、非ゼロの度数、及び予め設定された入替データに従って、係数データが入れ替えられた第1階層データが生成される。また、第2階層データについても同様の処理が行われ、係数データが入れ替えられた第2階層データが生成される。尚、前記第3階層データについては、そのまま、前記DC/LP/HP逆予測処理部140に出力される。 In the adaptive scanning unit 130, the above-described processing is performed, and first hierarchical data in which coefficient data is replaced according to non-zero frequency and preset replacement data is generated. Similar processing is performed on the second layer data, and second layer data in which the coefficient data is replaced is generated. The third layer data is output to the DC / LP / HP inverse prediction processing unit 140 as it is.
 前記適応型スキャン部130での動作をフローで表したものが、図13であり、ブロック処理の始めに、S101でZ(1)~Z(15)に0を代入して初期化した後、S103のVLC復号化処理で、可変長復号により、C(i)に非ゼロ係数データ、R(i)にゼロラン長データを取得する処理をブロック内の非ゼロ係数個分繰り返した後、S103で取得した非ゼロ係数データC(i)及びゼロラン長データR(i)を用いて、S107で係数データZ’(j)への入替処理を行い、S108で非ゼロデータF(j)を更新した後、更新した非ゼロデータF’(j)とF’(j-1)の大小比較に基づき、S110~S112でF’(j)とP(j)との置換処理を行い、S107~S112までの処理をS106で取得した非ゼロ係数総数のm回分繰り返すものである。 FIG. 13 is a flowchart showing the operation of the adaptive scanning unit 130. At the beginning of the block processing, after initializing by assigning 0 to Z (1) to Z (15) in S101, In the VLC decoding process of S103, the process of obtaining non-zero coefficient data in C (i) and zero-run length data in R (i) by variable length decoding is repeated for the number of non-zero coefficients in the block. Using the acquired non-zero coefficient data C (i) and zero run length data R (i), the replacement process to the coefficient data Z ′ (j) is performed in S107, and the non-zero data F (j) is updated in S108. Thereafter, based on the comparison of the updated non-zero data F ′ (j) and F ′ (j−1), substitution processing of F ′ (j) and P (j) is performed in S110 to S112, and S107 to S112. Non-zero obtained in step S106 Are those repeated several total number of m times.
 適応型スキャン部130での動作を状態遷移図で表したものが、図14であり、処理開始後、待機中であるST0の状態0から、次ブロックの処理のため、ST1に遷移し、ST1の状態1では、ブロックの非ゼロ係数の個数分、VLC復号化で非ゼロ係数、ゼロラン長を取得した後、ST2の状態2に遷移する。状態2では、1係数ごとに、係数データの入替処理、度数更新処理、比較・置換処理を行い、非ゼロの個数分の処理が実施されていないときには、再度、状態2に遷移し、非ゼロの個数分の処理を完了するまで、状態2の処理を繰り返す。状態2の最後の処理である置換処理が終了した時点で、非ゼロの個数分の処理が完了しているときは、待機中であるST0の状態0に遷移し、次のブロックの処理を待つ。 FIG. 14 shows the operation of the adaptive scanning unit 130 as a state transition diagram. After the processing starts, the state 0 of ST0 that is in a standby state transitions to ST1 for processing of the next block, and ST1 In state 1, after acquiring non-zero coefficients and zero run length by the number of non-zero coefficients of the block by VLC decoding, the state transitions to state 2 of ST2. In state 2, coefficient data replacement processing, frequency update processing, and comparison / replacement processing are performed for each coefficient. When processing for the number of non-zeros is not performed, the state transitions again to state 2 and non-zero. The processing in state 2 is repeated until the processing for the number of items is completed. When the replacement processing, which is the last processing in state 2, is completed, if processing for the number of non-zeros has been completed, the state transits to ST0, which is waiting, and waits for processing of the next block. .
 適応型スキャン部130での動作をタイミングチャートで表したものが図15である。このタイミングチャートは、非ゼロ係数の個数が3個の場合の一実施例であり、各処理の処理時間は回路構成によって異なるものである。図15では、vlc1~vlc3までのVLC復号化処理をまとめて実施した後に、係数入替処理、度数更新処理、比較・置換処理をシリアルに実施するため、処理に多くのサイクルを消費する。図15の実施例の場合、1ブロックの処理時間は33サイクルとなっている。 FIG. 15 is a timing chart showing the operation of the adaptive scanning unit 130. This timing chart is an example in which the number of non-zero coefficients is three, and the processing time of each process varies depending on the circuit configuration. In FIG. 15, since the coefficient replacement process, the frequency update process, and the comparison / replacement process are performed serially after the VLC decoding processes from vlc1 to vlc3 are performed together, many cycles are consumed for the process. In the embodiment of FIG. 15, the processing time for one block is 33 cycles.
 前記DC/LP/HP逆予測処理部140は、前記適応型スキャン部130から入力した、ブロック毎の前記第1階層データ、第2階層データ、及び第3階層データについて、それぞれ、隣接するブロック間での係数の比較を行って予測モードを導出し、予測モードに対し、設定された演算式に従って、相関の高いブロックの対応する画素の値を対象画素に足し込むことで、圧縮における予測処理前の画素値を復元(逆予測処理)する。そして、処理後の第1階層データ、第2階層データ及び第3階層データをブロック毎に逆量子化部150に出力する。 The DC / LP / HP inverse prediction processing unit 140 receives the first layer data, the second layer data, and the third layer data for each block, which are input from the adaptive scan unit 130, between adjacent blocks. The prediction mode is derived by comparing the coefficients at, and the value of the corresponding pixel of the highly correlated block is added to the target pixel according to the set arithmetic expression with respect to the prediction mode, so that the prediction process before compression is performed. Is restored (inverse prediction processing). Then, the processed first layer data, second layer data, and third layer data are output to the inverse quantization unit 150 for each block.
 前記逆量子化部150は、前記DC/LP/HP逆予測処理部140により逆予測処理された第1階層データ、第2階層データ及び第3階層データを、それぞれ設定された量子化パラメータで乗算して逆量子化する処理を行い、処理後の第1階層データ、第2階層データ及び第3階層データを、ブロック毎に周波数逆変換部160に出力する。 The inverse quantization unit 150 multiplies the first layer data, the second layer data, and the third layer data, which have been subjected to the inverse prediction processing by the DC / LP / HP inverse prediction processing unit 140, with respective set quantization parameters. Then, the inverse quantization process is performed, and the processed first layer data, second layer data, and third layer data are output to the frequency inverse transform unit 160 for each block.
 前記周波数逆変換部160は、前記逆量子化部150によって逆量子化された画像データを、4×4画素を一つのブロックとしてラスター方向に順次処理し、各周波数帯域毎の係数データを画素データに変換する処理を行う。この周波数逆変換部160は、各周波数帯域毎に分離していた第1階層データ、第2階層データ及び第3階層データを、色成分(Y/U/V又はY/U/V/K)毎に、1ブロック(4×4画素)の2次元空間データに戻して、前記色空間逆変換部170に出力する。 The frequency inverse transform unit 160 sequentially processes the image data inversely quantized by the dequantization unit 150 in a raster direction with 4 × 4 pixels as one block, and generates coefficient data for each frequency band as pixel data. Process to convert to. The frequency inverse transform unit 160 converts the first layer data, the second layer data, and the third layer data separated for each frequency band into color components (Y / U / V or Y / U / V / K). Each time, the data is returned to one block (4 × 4 pixels) of two-dimensional space data and output to the color space inverse transform unit 170.
 前記色空間逆変換部170は、周波数逆変換部160から入力された各色成分毎の画像データを画素毎に処理し、色空間逆変換が不要な場合は、色空間逆変換せず、色空間逆変換が必要な場合で、色成分がY/U/Vであるときには、RGBデータに変換し、色成分がY/U/V/Kであるときには、CMYKデータに変換し、処理後の画素データを、外部に1画像分の画像データとして出力する。 The color space inverse transform unit 170 processes the image data for each color component input from the frequency inverse transform unit 160 for each pixel, and when the color space inverse transform is not necessary, the color space inverse transform is not performed. When reverse conversion is necessary, if the color component is Y / U / V, it is converted to RGB data, and if the color component is Y / U / V / K, it is converted to CMYK data, and the processed pixel The data is output to the outside as image data for one image.
 ところで、圧縮対象の画像データは、技術進歩に伴う解像度の向上によって、そのデータ量が急増しており、上記従来の画像復号化装置100では、データ量の増加によって、その処理に長時間を要するため、更なる効率化が求められている。 By the way, the amount of data of image data to be compressed has increased rapidly due to the improvement in resolution accompanying technological advancement. In the conventional image decoding apparatus 100, the processing takes a long time due to the increase in data amount. Therefore, further efficiency is required.
 特に、前記適応型スキャン部130では、1ブロック分の非ゼロ係数C(i)とゼロラン長R(i)を溜め込んだ後、まとめて、該ブロック内の非ゼロ係数データ個数の総数分だけ、係数データZ’(j)への入替処理をし、非ゼロ度数データF(j)の更新処理をし、更新した非ゼロデータF’(j)及び入替データP(j)の置換処理を行うので、処理の効率化ができず、その処理に長時間を要していた。このため、この従来の適応型スキャン部130の処理は、当該画像復号化装置100における処理効率を低下させるネック要因の一つになっていた。 In particular, the adaptive scan unit 130 stores the non-zero coefficient C (i) and the zero-run length R (i) for one block, and then collects the total number of non-zero coefficient data in the block. The replacement process to the coefficient data Z ′ (j) is performed, the non-zero frequency data F (j) is updated, and the updated non-zero data F ′ (j) and replacement data P (j) are replaced. As a result, the efficiency of the process cannot be improved, and the process takes a long time. For this reason, the processing of the conventional adaptive scanning unit 130 has become one of the bottleneck factors that reduce the processing efficiency of the image decoding apparatus 100.
 本発明は、以上の実情に鑑みなされたものであって、適応型スキャン部の処理効率を高めることで、全体的な処理効率を高めることが可能な画像復号化装置の提供を、その目的とする。 The present invention has been made in view of the above circumstances, and it is an object of the present invention to provide an image decoding apparatus capable of increasing the overall processing efficiency by increasing the processing efficiency of the adaptive scanning unit. To do.
 上記課題を解決するため、本発明の画像復号化装置は、
 圧縮された画像符号化データを復号化して、ブロック単位の各非ゼロ係数順座標iの非ゼロ係数データC(i)とゼロラン長データR(i)を生成する復号化部と、
 前記ゼロラン長データR(i)より生成される前記ブロックの係数位置座標jと、前記非ゼロ係数データC(i)が移されるべき係数位置座標jの係数データである、Z(j)が非ゼロであった度数との関係を表す非ゼロ度数データF(j)、及び前記ブロック内で係数データZ(j)を入れ替えるための入替データP(j)であって、現在の係数位置座標jと、当該係数位置座標jの係数データZ(j)を、入れ替えによって組み入れるべき係数位置座標j’との関係を表す入替データP(j)を用いて、前記復号化部により復号化されたブロック単位の非ゼロ係数データC(i)を該ブロック内で入替処理する適応型スキャン部と、
 前記適応型スキャン部により入れ替えられたブロック単位のn個の係数データを逆量子化する逆量子化部と、
 前記逆量子化された係数データを所定画素数のブロック単位で周波数逆変換して画像データを生成する周波数逆変換部とを少なくとも備えた画像復号化装置において、
 前記適応型スキャン部は、
 前記非ゼロ度数データF(j)及び入替データP(j)を記憶する入替情報記憶部と、
前記復号化部により復号化された非ゼロ係数データC(i)及びゼロラン長データR(i)に対応する係数データZ(j)を、前記置換情報記憶部に記憶されたP(j)に基づいて、入替処理する係数データ入替処理部と、
 前記入替データP(j)及び非ゼロ係数データC(i)の入替処理情報に基づいて、前記非ゼロ係数データC(i)を前記ブロック内でZ(P(j))に記憶することで、入替処理し、Z’(j)として出力する係数データ記憶部と、
 前記復号化後のブロック単位の前記非ゼロである係数位置座標jの非ゼロ度数データに1を加えて非ゼロ度数データF(j)を更新し、更新後の非ゼロ度数データF’(j)とする度数更新処理部と、
 前記度数更新処理部によって更新された非ゼロ度数データF’(j)を用い、前後するF’(j-1)とF’(j)とを順次比較し、F’(i-1)とF’(i)、P(i-1)とP(i)の比較結果に基づいて、F’(i-1)とF’(i)、P(i-1)とP(i)との置換処理を行う比較・置換処理部とを備えて構成され、係数データ入替処理部から復号化部へ、前記入替処理と並行して、次の非ゼロ係数の復号を開始するための単係数復号開始信号を出力し、係数データ入替処理部から度数更新処理部へ、係数データ入替処理後に、度数更新開始信号を出力する画像復号化装置に係る。但し、前記nは2以上の整数であり、前記iは1~n以下の整数であり、前記j及びP(j)は1~nの整数である。
In order to solve the above problems, an image decoding apparatus according to the present invention provides:
A decoding unit that decodes the compressed image encoded data to generate non-zero coefficient data C (i) and zero-run length data R (i) of each non-zero coefficient forward coordinate i in block units;
The coefficient position coordinate j of the block generated from the zero run length data R (i) and the coefficient data of the coefficient position coordinate j to which the non-zero coefficient data C (i) is to be transferred, Z (j) is non- Non-zero frequency data F (j) representing the relationship with the frequency that was zero, and replacement data P (j) for replacing the coefficient data Z (j) in the block, the current coefficient position coordinate j And the block decoded by the decoding unit using the replacement data P (j) representing the relationship between the coefficient position coordinate j ′ of the coefficient position coordinate j and the coefficient position coordinate j ′ to be incorporated by replacement. An adaptive scan unit that replaces the unit non-zero coefficient data C (i) in the block;
An inverse quantization unit that inversely quantizes the n coefficient data in units of blocks replaced by the adaptive scan unit;
In an image decoding apparatus comprising at least a frequency inverse transform unit that inversely frequency transforms the inversely quantized coefficient data in units of a predetermined number of pixels to generate image data,
The adaptive scan unit includes:
A replacement information storage unit for storing the non-zero frequency data F (j) and replacement data P (j);
Coefficient data Z (j) corresponding to the non-zero coefficient data C (i) and zero run length data R (i) decoded by the decoding unit is stored in P (j) stored in the replacement information storage unit. Based on the coefficient data replacement processing unit for replacement processing,
Based on the replacement processing information of the replacement data P (j) and the non-zero coefficient data C (i), the non-zero coefficient data C (i) is stored in Z (P (j)) in the block. A coefficient data storage unit that performs replacement processing and outputs it as Z ′ (j);
The non-zero frequency data F (j) is updated by adding 1 to the non-zero coefficient position coordinate j of the non-zero coefficient position coordinate j after the decoding, and the updated non-zero frequency data F ′ (j ) Frequency update processing unit,
Using the non-zero frequency data F ′ (j) updated by the frequency update processing unit, F ′ (j−1) and F ′ (j) are sequentially compared and F ′ (i−1) and Based on the comparison results of F ′ (i), P (i−1) and P (i), F ′ (i−1) and F ′ (i), P (i−1) and P (i) A single coefficient for starting the decoding of the next non-zero coefficient in parallel with the replacement process from the coefficient data replacement processing unit to the decoding unit. The present invention relates to an image decoding apparatus that outputs a decoding start signal and outputs a frequency update start signal after the coefficient data replacement processing from the coefficient data replacement processing unit to the frequency update processing unit. Here, n is an integer of 2 or more, i is an integer of 1 to n, and j and P (j) are integers of 1 to n.
 さらに、本発明の画像復号化装置においては、
 前記適応型スキャン部は、次の非ゼロ係数の復号を開始するための前記単係数復号開始信号を、前記入替処理の開始と同時に出力する。
Furthermore, in the image decoding apparatus of the present invention,
The adaptive scan unit outputs the single coefficient decoding start signal for starting decoding of the next non-zero coefficient simultaneously with the start of the replacement process.
 そして、本発明の画像復号化装置においては、
 前記係数データ入替処理部は、
 前記復号化部より入力した非ゼロ係数データC(i)を記憶部への入力データとして、係数データ記憶部へ出力する係数データ保持部と、
 前記度数更新処理の開始及び復号化処理の開始のタイミングを制御する入替処理制御部と、
 現在の係数位置座標jを生成する係数位置座標更新部と、
 前記現在の係数位置座標jを用いて、入替情報記憶部より入替データP(j)を取得して、係数データ記憶部への入力アドレスとして、係数データ記憶部へ出力する係数アドレス保持部と、
 前記復号化部より入力したブロック復号完了信号と、前記入替処理制御部より入力した単係数入替完了信号より、ブロックの入替が完了したことを示すブロック入替完了信号を係数データ記憶部へ出力するブロック完了信号生成部を備え、
 前記入替処理制御部は、復号化部へ、次の非ゼロ係数の復号を開始するための単係数復号開始信号を出力し、度数更新処理部へ、係数データ入替処理後に、度数更新開始信号を出力する。
And in the image decoding apparatus of the present invention,
The coefficient data replacement processing unit
A coefficient data holding unit that outputs the non-zero coefficient data C (i) input from the decoding unit to the coefficient data storage unit as input data to the storage unit;
A replacement process control unit for controlling the start of the frequency update process and the start timing of the decoding process;
A coefficient position coordinate update unit for generating a current coefficient position coordinate j;
A coefficient address holding unit that obtains replacement data P (j) from the replacement information storage unit using the current coefficient position coordinate j, and outputs it to the coefficient data storage unit as an input address to the coefficient data storage unit;
A block that outputs a block replacement completion signal indicating completion of block replacement to the coefficient data storage unit based on a block decoding completion signal input from the decoding unit and a single coefficient replacement completion signal input from the replacement processing control unit A completion signal generator,
The replacement processing control unit outputs a single coefficient decoding start signal for starting decoding of the next non-zero coefficient to the decoding unit, and outputs a frequency update start signal to the frequency update processing unit after the coefficient data replacement processing. Output.
 上記構成を備えた本発明に係る画像復号化装置によれば、まず、1画像分の符号化された画像データについて、所定画素数のブロック単位で復号化部に入力される。そして、復号化部において、符号化された画像データは、ブロック単位で非ゼロ係数データC(i)とゼロラン長データR(i)に変換されて、適応型スキャン部に入力される。 According to the image decoding apparatus according to the present invention having the above configuration, first, encoded image data for one image is input to the decoding unit in units of a block having a predetermined number of pixels. In the decoding unit, the encoded image data is converted into non-zero coefficient data C (i) and zero-run length data R (i) on a block basis and input to the adaptive scan unit.
 適応型スキャン部では、ブロックの各非ゼロ係数順座標iと、前記ゼロラン長データより生成される前記ブロックの係数位置座標jと、前記非ゼロ係数データC(i)が移されるべき係数位置座標jの係数データである、Z(j)が非ゼロであった度数との関係を表す非ゼロ度数データF(j)、及び前記ブロック内で係数データZ(j)を入れ替えるための入替データP(j)であって、現在の係数位置座標jと、当該係数位置座標jの係数データZ(j)を、入れ替えによって組み入れるべき画素位置j’との関係を表す入替データP(j)を用いて、前記復号化部により復号化されたブロック単位の非ゼロ係数データC(i)を該ブロック内で入れ替える処理が行われ、入れ替え後のブロック単位の係数データZ’(j)は、例えば、逆予測処理された後、逆量子化部に出力される。ブロック単位の係数データの入替処理の後、前記適応型スキャン部は、前記非ゼロである係数位置座標jの非ゼロ度数データに1を加えて非ゼロ度数データF’(j)として更新し、更新したF’(j-1)とF’(j)との比較結果に基づき、F’(i-1)とF’(i)、及び、P(i-1)とP(i)との置換処理を行い、次の係数の処理のため、非ゼロ度数データF(j)及び入替データP(j)を更新する。本発明では、前記適応型スキャン部における前記入替処理開始の際に、次の非ゼロ係数の復号を開始するための単係数復号開始信号を復号化部へ出力することで、前記復号化部における復号化処理と前記適応型スキャン部における一連の係数入替処理、非ゼロ度数データ更新処理及び係数の比較・置換処理を並行して処理できるようにしている。 In the adaptive scanning section, each non-zero coefficient forward coordinate i of the block, the coefficient position coordinate j of the block generated from the zero-run length data, and the coefficient position coordinate to which the non-zero coefficient data C (i) is to be transferred non-zero frequency data F (j) representing the relationship with the frequency where Z (j) is non-zero, which is coefficient data of j, and replacement data P for replacing the coefficient data Z (j) in the block (J) using replacement data P (j) representing the relationship between the current coefficient position coordinate j and the coefficient data Z (j) of the coefficient position coordinate j to be incorporated by replacement. Then, a process of replacing the block-unit non-zero coefficient data C (i) decoded by the decoding unit in the block is performed, and the replaced block-unit coefficient data Z ′ (j) is, for example, After being inverse predictive processing, is output to the inverse quantization unit. After the block-unit coefficient data replacement process, the adaptive scanning unit adds 1 to the non-zero coefficient position coordinate j of the non-zero coefficient position coordinate j to update it as non-zero frequency data F ′ (j), Based on the comparison result between the updated F ′ (j−1) and F ′ (j), F ′ (i−1) and F ′ (i), and P (i−1) and P (i) The non-zero frequency data F (j) and the replacement data P (j) are updated for the next coefficient processing. In the present invention, at the start of the replacement process in the adaptive scanning unit, a single coefficient decoding start signal for starting decoding of the next non-zero coefficient is output to the decoding unit, so that the decoding unit Decoding processing and a series of coefficient replacement processing, non-zero frequency data update processing, and coefficient comparison / replacement processing in the adaptive scanning unit can be performed in parallel.
 従来のように、前記復号化部において、1ブロック分の復号化を完了した後で、前記適応型スキャンにおける一連の係数入替処理、非ゼロ度数データ更新処理及び係数の比較・置換処理を実施するようにすると、復号化部における処理と適応型スキャン部における処理にかかるサイクル数を削減することはできないが、本発明のように、ブロック単位で、復号化部における処理と適応型スキャン部における処理を一体化し、1係数ごとに復号化部における処理と適応型スキャン部における処理を並行して実施することで、処理の効率化を図り、復号化部における処理と適応型スキャン部における処理全体にかかるサイクル数を削減することができる。尚、サイクル数とは、処理のタイミングとして用いられるクロックの1クロックを1サイクルとし、その処理を実施するのに必要なサイクルの数を示すものである。 As in the prior art, after decoding for one block is completed in the decoding unit, a series of coefficient replacement processing, non-zero frequency data update processing, and coefficient comparison / replacement processing in the adaptive scan are performed. As a result, the number of cycles required for the processing in the decoding unit and the processing in the adaptive scanning unit cannot be reduced. However, as in the present invention, the processing in the decoding unit and the processing in the adaptive scanning unit in units of blocks. And the processing in the decoding unit and the processing in the adaptive scanning unit are performed in parallel for each coefficient, so that the processing efficiency is improved, and the processing in the decoding unit and the entire processing in the adaptive scanning unit are performed. The number of cycles can be reduced. Note that the number of cycles indicates the number of cycles required to execute the processing, assuming that one clock used as the processing timing is one cycle.
 ついで、前記適応型スキャン部による前記係数の入替処理後、前記入替処理後のブロック単位の係数データZ’(j)は、逆予測処理等され、前記逆量子化部において逆量子化された後、周波数逆変換部において、所定画素数のブロック単位で周波数逆変換されて画像データに復元される。 Next, after the coefficient replacement process by the adaptive scan unit, the block-unit coefficient data Z ′ (j) after the replacement process is subjected to an inverse prediction process and the like, and is dequantized in the inverse quantization unit The frequency inverse transform unit restores the image data by performing frequency inverse transform in units of a predetermined number of pixels.
 上記構成を備えた本発明に係る画像復号化装置によれば、入替処理開始の際に、次の非ゼロ係数の復号を開始するための単係数復号開始信号を復号化部へ出力するので、復号化部における処理と適応型スキャン部における処理を並行して実施することができ、復号化部における処理と適応型スキャン部における処理全体にかかるサイクル数を削減することができる。 According to the image decoding apparatus according to the present invention having the above-described configuration, when the replacement process starts, a single coefficient decoding start signal for starting decoding of the next non-zero coefficient is output to the decoding unit. The processing in the decoding unit and the processing in the adaptive scanning unit can be performed in parallel, and the number of cycles for the entire processing in the decoding unit and the adaptive scanning unit can be reduced.
 また、本発明の画像復号化装置においては、
 前記係数データ入替処理部は、
前記比較・置換処理部から、置換処理が終了したことを示す単係数置換完了信号を入力される。
In the image decoding apparatus of the present invention,
The coefficient data replacement processing unit
The comparison / replacement processing unit receives a single coefficient replacement completion signal indicating that the replacement process has been completed.
 そして、本発明の画像復号化装置おいては、
 前記適応型スキャン部は、比較・置換処理部から係数データ入替処理部へ、比較・置換処理が終了したことを示す単係数置換完了信号を出力する。
And in the image decoding apparatus of the present invention,
The adaptive scanning unit outputs a single coefficient replacement completion signal indicating that the comparison / replacement processing is completed from the comparison / replacement processing unit to the coefficient data replacement processing unit.
 通常、適応型スキャン部における一連の係数入替処理、非ゼロ度数データ更新処理及び係数の比較・置換処理に比べ、復号化部における復号化処理の方が処理内容が複雑であるので、復号化処理の方が適応型スキャン部における処理より、処理にサイクル数を要する。従って、適応型スキャン部における処理の終了を確認しなくても、次の係数の復号化処理を開始することができるが、復号化処理に掛かるサイクル数が適応型スキャン部における処理のサイクル数より少ない場合や復号化処理に掛かるサイクル数にばらつきがあり、適応型スキャン部における処理のサイクル数を下回る場合がある際には、復号化部における処理と適応型スキャン部における処理を正常に実施できない。この状況に鑑み、さらに本発明では、前記比較・置換部より前記係数データ入替処理部へ、係数データの入替情報の更新の完了を示す単係数置換完了信号を出力することで、係数データ入替処理部は、復号化処理に掛かるサイクル数が少ない場合であっても、比較・置換処理部での処理の終了を待って、復号化部での処理の開始を指示でき、復号化処理での処理時間が適応型スキャン部での処理時間より短い場合であっても、正常に復号処理を実施できる。 Usually, the decoding processing in the decoding unit is more complicated than the series of coefficient replacement processing, non-zero frequency data update processing, and coefficient comparison / replacement processing in the adaptive scan unit. The process requires more cycles than the process in the adaptive scan unit. Therefore, the decoding process of the next coefficient can be started without confirming the end of the process in the adaptive scan unit, but the number of cycles required for the decoding process is larger than the number of process cycles in the adaptive scan unit. When the number of cycles required for the decoding process is small or the number of cycles is less than the number of processing cycles in the adaptive scanning unit, the processing in the decoding unit and the processing in the adaptive scanning unit cannot be performed normally. . In view of this situation, the present invention further provides a coefficient data replacement process by outputting a single coefficient replacement completion signal indicating completion of update of coefficient data replacement information from the comparison / replacement unit to the coefficient data replacement processing unit. Even if the number of cycles required for the decryption process is small, the unit can wait for the end of the process in the comparison / replacement process unit and instruct the start of the process in the decryption unit. Even when the time is shorter than the processing time in the adaptive scanning unit, the decoding process can be performed normally.
 上記構成を備えた本発明に係る画像復号化装置によれば、適応型スキャン部における一連の係数入替処理、非ゼロ度数データ更新処理及び係数の比較・置換処理を、復号化部における復号化処理と並行して実施するので、復号化部における処理と適応型スキャン部における処理全体にかかるサイクル数を削減することができる。 According to the image decoding apparatus according to the present invention having the above-described configuration, a series of coefficient replacement processing, non-zero frequency data update processing, and coefficient comparison / replacement processing in the adaptive scanning unit are performed in the decoding processing in the decoding unit. Therefore, it is possible to reduce the number of cycles required for the processing in the decoding unit and the entire processing in the adaptive scanning unit.
 また、本発明に係る適応型スキャン部によれば、比較・置換処理部での処理の終了を待って復号化処理を開始する信号を出力できるので、復号化処理での処理時間が適応型スキャン部での処理時間より短い場合であっても、正常に復号処理を実施できる。 Further, according to the adaptive scan unit of the present invention, a signal for starting the decoding process can be output after waiting for the completion of the process in the comparison / replacement processing unit, so that the processing time in the decoding process is adaptive scan. Even if the processing time is shorter than the processing time in the unit, the decoding process can be normally performed.
 以上のように、本発明によれば、適応型スキャン部の処理を復号化部の復号処理と並行して実施することができ、効率的に適応型スキャン部の処理を行うことができる。この結果、従来に比べて、画像復号化装置の全体の処理速度を速めることができ、効率的な復号化処理を実現することができる。また、復号化処理での処理時間が適応型スキャン部での処理時間より短い場合であっても、比較・置換処理部での処理の終了を待って復号化処理を開始する信号を出力できるので、正常に復号処理を実施できる。 As described above, according to the present invention, the processing of the adaptive scanning unit can be performed in parallel with the decoding processing of the decoding unit, and the adaptive scanning unit can be efficiently processed. As a result, the overall processing speed of the image decoding apparatus can be increased compared to the conventional case, and an efficient decoding process can be realized. In addition, even when the processing time in the decoding process is shorter than the processing time in the adaptive scan unit, a signal for starting the decoding process can be output after waiting for the comparison / replacement processing unit to end. The decoding process can be normally performed.
本発明の一実施形態に係る画像復号化装置の概略構成を示したブロック図である。It is the block diagram which showed schematic structure of the image decoding apparatus which concerns on one Embodiment of this invention. 本実施形態に係る適応型スキャン部の構成を示した第一実施例のブロック図である。It is the block diagram of the 1st Example which showed the structure of the adaptive type scan part which concerns on this embodiment. 本実施形態に係る適応型スキャン部の構成を示した第二実施例のブロック図である。It is the block diagram of the 2nd Example which showed the structure of the adaptive type scan part which concerns on this embodiment. 本実施形態に係る係数データ入替処理部の構成を示したブロック図である。It is the block diagram which showed the structure of the coefficient data replacement process part which concerns on this embodiment. 本実施形態に係る適応型スキャン部における処理手順を示したフローチャートである。It is the flowchart which showed the process sequence in the adaptive type scan part which concerns on this embodiment. 本実施形態に係る適応型スキャン部における係数入替処理の処理手順を示したフローチャートである。It is the flowchart which showed the process sequence of the coefficient replacement | exchange process in the adaptive type scan part which concerns on this embodiment. 本実施形態に係る適応型スキャン部における処理状態を示した状態遷移図である。It is a state transition diagram showing a processing state in the adaptive scan unit according to the present embodiment. 本実施形態に係る適応型スキャン部における処理動作を示したタイミングチャートの一例である。It is an example of the timing chart which showed the processing operation in the adaptive type scan part concerning this embodiment. 従来の画像復号化装置の概略構成を示したブロック図である。It is the block diagram which showed schematic structure of the conventional image decoding apparatus. 従来の適応型スキャン部の構成を示したブロック図である。It is the block diagram which showed the structure of the conventional adaptive type scanning part. 従来の非ゼロ係数記憶・係数総数累計部の構成を示したブロック図である。It is the block diagram which showed the structure of the conventional non-zero coefficient memory | storage and coefficient total number accumulation part. 従来の係数データ入替処理部の構成を示したブロック図である。It is the block diagram which showed the structure of the conventional coefficient data replacement process part. 従来の適応型スキャン部における処理手順を示したフローチャートである。It is the flowchart which showed the process sequence in the conventional adaptive type scanning part. 従来の適応型スキャン部における処理状態を示した状態遷移図である。It is a state transition diagram showing a processing state in a conventional adaptive scan unit. 従来の適応型スキャン部における処理動作を示したタイミングチャートの一例である。It is an example of the timing chart which showed the processing operation in the conventional adaptive type scanning part. 従来の適応型スキャン処理のブロック内でのHP係数の一例を説明するための説明図である。It is explanatory drawing for demonstrating an example of the HP coefficient within the block of the conventional adaptive type scanning process. 従来の適応型スキャン処理の入替データと非ゼロ度数データの初期値の一例を説明するための説明図である。It is explanatory drawing for demonstrating an example of the initial value of the replacement data and the non-zero frequency data of the conventional adaptive scanning process. 従来の適応型スキャン処理の係数データの入替と非ゼロ度数データの更新を説明するための説明図である。It is explanatory drawing for demonstrating replacement | exchange of the coefficient data and update of non-zero frequency data of the conventional adaptive type scanning process. 従来の適応型スキャン処理の置換後の入替データと非ゼロ度数データを説明するための説明図である。It is explanatory drawing for demonstrating the replacement data and the non-zero frequency data after the replacement of the conventional adaptive scanning process. 従来の適応型スキャン処理のブロック内での画素位置を説明するための説明図である。It is explanatory drawing for demonstrating the pixel position within the block of the conventional adaptive scanning process. 従来の適応型スキャン処理のHP係数をテーブルデータ形式にした一例を説明するための説明図である。It is explanatory drawing for demonstrating an example which made the HP coefficient of the conventional adaptive type scanning process into the table data format. 従来の適応型スキャン処理のブロック内での入替後のHP係数の一例を説明するための説明図である。It is explanatory drawing for demonstrating an example of the HP coefficient after replacement within the block of the conventional adaptive scanning process.
 以下、本発明の具体的な実施形態について、図面を参照しながら説明する。尚、図1は、本実施形態に係る画像復号化装置1の構成を示したブロック図である。 Hereinafter, specific embodiments of the present invention will be described with reference to the drawings. FIG. 1 is a block diagram showing the configuration of the image decoding apparatus 1 according to this embodiment.
 図1に示すように、本例の画像復号化装置1は、図9の従来の画像復号化装置100における適応型スキャン部130に代えて、これとはその構成が異なる適応型スキャン部10を備えるもので、この点においてのみ、従来の画像復号化装置100とその構成が異なっている。したがって、他の構成については、上記画像復号化装置100におけるものと同一の符号を付して、その詳しい説明は省略する。 As shown in FIG. 1, the image decoding apparatus 1 of the present example includes an adaptive scanning unit 10 having a configuration different from that of the adaptive scanning unit 130 in the conventional image decoding apparatus 100 of FIG. Only in this respect, the configuration of the conventional image decoding apparatus 100 is different. Therefore, the other components are denoted by the same reference numerals as those in the image decoding device 100, and detailed description thereof is omitted.
 [第1の実施の形態]
 第1の実施の形態に係る前記適応型スキャン部10は、図2に示すように、係数データ入替処理部20、係数データ記憶部30、入替情報記憶部40、度数更新処理部50、及び比較・置換処理部60から構成され、係数データ入替処理部20は、図4に示すように、係数データ保持部21、入替処理制御部22、係数位置座標更新部23、係数アドレス保持部24及びブロック完了信号生成部25から構成される。
[First Embodiment]
As shown in FIG. 2, the adaptive scan unit 10 according to the first embodiment includes a coefficient data replacement processing unit 20, a coefficient data storage unit 30, a replacement information storage unit 40, a frequency update processing unit 50, and a comparison. As shown in FIG. 4, the coefficient data replacement processing unit 20 includes a replacement processing unit 60. The coefficient data replacement processing unit 20 includes a coefficient data holding unit 21, a replacement processing control unit 22, a coefficient position coordinate update unit 23, a coefficient address holding unit 24, and a block. The completion signal generation unit 25 is configured.
 この適応型スキャン部10においても、上述した適応型スキャン部150と同様に、前記VLC復号化部120から出力される第1階層データ及び第2階層データについて、図20及び図21に示すような4×4画素に対応するブロック単位で処理し、ブロック内で係数データZ(i)を入れ替える処理を行う。尚、以下では、第1階層データの処理について説明するが、第2階層データの処理についても同様である。 In the adaptive scan unit 10 as well, as with the adaptive scan unit 150 described above, the first layer data and the second layer data output from the VLC decoding unit 120 are as shown in FIG. 20 and FIG. Processing is performed in units of blocks corresponding to 4 × 4 pixels, and processing for replacing the coefficient data Z (i) in the block is performed. In the following, the processing of the first layer data will be described, but the same applies to the processing of the second layer data.
 前記入替処理は、前記VLC復号化部120により可変長復号された、非ゼロ係数データのVLC符号中の並び順である非ゼロ係数順座標iに対応する非ゼロ係数C(i)と前記非ゼロ係数C(i)に前置するゼロ係数の個数を表わすゼロラン長R(i)の内、非ゼロ係数C(i)を、直前の非ゼロ係数データがゼロ係数を含んだ場合の係数位置である係数位置座標jPRE(ブロックにおける最初の非ゼロ係数対する初期値は0)に、前記ゼロラン長R(i)と1を加えたjPRE+R(i)+1を新たな係数位置座標jとした際の、係数データZ(P(j))として、係数位置を入れ替えて出力する。なお、入れ替えたZ(P(j))をZ’(j)と表す。また、中間データとしては生成されないが、入れ替え前のゼロ係数を含む係数データをZ(j)として表わす。係数入替処理後の非ゼロ度数データを更新するための度数更新処理は、前記入替情報記憶部40に記憶された非ゼロ度数データF(j)を読み出し、前記読み出した非ゼロ度数データF(j)に1を加えて更新し、更新後の非ゼロ度数データをF’(j)とする。ついで、前記入替データP(j)と前記度数更新データF’(j)を置換するための比較・置換処理は、前記非ゼロ係数データC(i)が移されるべき係数位置座標jの係数データである、Z(j)及び前記ブロック内で係数データZ(j)を入れ替えるための入替データP(j)を用いて行われる。尚、入替データP(j)は、前記DC/LP/HP逆予測処理部140における予測モードに応じて予め設定されており、DC/LP/HP逆予測処理部140において導出された予測モードに対応した入替データP(j)が使用される。また、入替データP(j)、非ゼロ度数データF(j)は予め初期値が設定されている。この入替データP(j)及び非ゼロ度数データF(j)の初期値は、図17に例示したものと同様である。これら入替データP(j)及び非ゼロ度数データF(j)は前記入替情報記憶部40に格納されている。 In the replacement process, the non-zero coefficient C (i) corresponding to the non-zero coefficient forward coordinate i which is the arrangement order in the VLC code of the non-zero coefficient data, which is variable-length decoded by the VLC decoding unit 120, and the non-zero coefficient Of the zero run length R (i) representing the number of zero coefficients preceding the zero coefficient C (i), the non-zero coefficient C (i) is the coefficient position when the immediately preceding non-zero coefficient data includes the zero coefficient. J PRE + R (i) +1 obtained by adding the zero run length R (i) and 1 to the coefficient position coordinate j PRE (the initial value for the first non-zero coefficient in the block is 0) as a new coefficient position coordinate j As the coefficient data Z (P (j)), the coefficient positions are switched and output. The replaced Z (P (j)) is represented as Z ′ (j). Further, although not generated as intermediate data, coefficient data including a zero coefficient before replacement is represented as Z (j). In the frequency update process for updating the non-zero frequency data after the coefficient replacement process, the non-zero frequency data F (j) stored in the replacement information storage unit 40 is read, and the read non-zero frequency data F (j ) Is updated by adding 1, and the updated non-zero frequency data is F ′ (j). Then, the comparison / replacement process for replacing the replacement data P (j) and the frequency update data F ′ (j) is the coefficient data of the coefficient position coordinate j to which the non-zero coefficient data C (i) is to be transferred. Is performed using Z (j) and replacement data P (j) for replacing coefficient data Z (j) in the block. The replacement data P (j) is set in advance according to the prediction mode in the DC / LP / HP inverse prediction processing unit 140, and the prediction data derived in the DC / LP / HP inverse prediction processing unit 140 is used. Corresponding replacement data P (j) is used. Further, the replacement data P (j) and the non-zero frequency data F (j) are set in advance with initial values. The initial values of the replacement data P (j) and the non-zero frequency data F (j) are the same as those illustrated in FIG. These replacement data P (j) and non-zero frequency data F (j) are stored in the replacement information storage unit 40.
 図2において、前記DC/LP/HP逆予測処理部140からは予測モードに関する情報、前記VLC復号化部120からは第1階層データが、1ブロック分ずつ係数データ入替処理部20に入力される。ゼロ係数データC(i)及びゼロラン長データR(i)が入力された前記係数データ入替処理部20は、新たな係数位置座標jを前記入替情報記憶部40に出力するとともに、前記入替情報記憶部40より読み出した入替データP(j)の値(最初のブロックの場合は初期値となる)を入力アドレスとし、前記非ゼロ係数データC(i)を入力データとして、係数データ記憶部30に出力する。 In FIG. 2, the DC / LP / HP inverse prediction processing unit 140 inputs information on the prediction mode, and the VLC decoding unit 120 inputs the first layer data to the coefficient data replacement processing unit 20 one block at a time. . The coefficient data replacement processing unit 20 to which the zero coefficient data C (i) and the zero run length data R (i) are input outputs a new coefficient position coordinate j to the replacement information storage unit 40 and the replacement information storage. The value of the replacement data P (j) read from the unit 40 (which is an initial value in the case of the first block) is used as an input address, and the non-zero coefficient data C (i) is used as input data in the coefficient data storage unit 30. Output.
 具体的には、図4において、非ゼロ係数データC(i)及びゼロラン長データR(i)を入力された係数データ入替処理部20は、非ゼロ係数データC(i)を、係数データ保持部21を介して、前記係数データ記憶部30に記憶すべき入力データとして出力し、ゼロラン長データR(i)を、入替処理制御部22を介して、係数位置座標更新部23に出力し、前記係数位置座標更新部23は、直前の非ゼロ係数データがゼロ係数を含んだ場合の係数位置である係数位置座標jPREに、前記ゼロラン長R(i)と1を加えたjPRE+R(i)+1を新たな係数位置座標jとして、前記入替情報記憶部40に出力する。なお、jPREには、更新したjを代入しておき、次に入力される非ゼロ係数の処理に備える。前記入替情報記憶部40は、新たな係数位置座標jの入替データP(j)を係数アドレス保持部24を介して、データのアドレスとして、前記係数データ記憶部30に出力する。該ブロックの非ゼロ係数総数であるm個目の非ゼロ係数データC(m)及びゼロラン長データR(m)を出力後に、VLC復号化部120からブロック復号完了信号を入力されたブロック完了信号生成部25は、入替処理制御部22から単係数入替完了信号が出力された後、ブロック入替完了信号を係数データ記憶部30へ出力する。 Specifically, in FIG. 4, the coefficient data replacement processing unit 20 to which the non-zero coefficient data C (i) and the zero run length data R (i) are input holds the non-zero coefficient data C (i) as coefficient data. Output as input data to be stored in the coefficient data storage unit 30 via the unit 21, and output zero run length data R (i) to the coefficient position coordinate update unit 23 via the replacement processing control unit 22, The coefficient position coordinate updating unit 23 adds the zero run length R (i) and 1 to the coefficient position coordinate j PRE which is the coefficient position when the immediately preceding non-zero coefficient data includes a zero coefficient, j PRE + R ( i) +1 is output to the replacement information storage unit 40 as a new coefficient position coordinate j. Note that the updated j is assigned to j PRE to prepare for the next non-zero coefficient processing. The replacement information storage unit 40 outputs the replacement data P (j) of the new coefficient position coordinate j to the coefficient data storage unit 30 through the coefficient address holding unit 24 as a data address. The block completion signal to which the block decoding completion signal is input from the VLC decoding unit 120 after outputting the m-th nonzero coefficient data C (m) and the zero run length data R (m), which are the total number of nonzero coefficients of the block The generation unit 25 outputs the block replacement completion signal to the coefficient data storage unit 30 after the single coefficient replacement completion signal is output from the replacement processing control unit 22.
 係数データ記憶部30は、入替データP(j)をアドレス位置とした係数データZ(P(j))に、データとしての前記非ゼロ係数データC(i)を記憶する。なお、入れ替えた前記Z(P(j))をZ’(j)と表わし、中間データとしては生成されないが、入れ替え前のゼロ係数を含む係数データをZ(j)として表わす。前記係数データ入替処理部20よりブロック入替完了信号を入力された係数データ記憶部30は、入れ替えた係数データZ’(j)をパラレルデータとして、前記DC/LP/HP逆予測処理部140に出力する。入替前後の係数データZ(j)、Z’(j)は、図18に例示したものと同様であり、生成された第1階層データは図22に例示したものと同様である。 The coefficient data storage unit 30 stores the non-zero coefficient data C (i) as data in the coefficient data Z (P (j)) with the replacement data P (j) as the address position. The replaced Z (P (j)) is represented as Z '(j), and is not generated as intermediate data, but the coefficient data including the zero coefficient before the replacement is represented as Z (j). The coefficient data storage unit 30 that has received the block replacement completion signal from the coefficient data replacement processing unit 20 outputs the replaced coefficient data Z ′ (j) to the DC / LP / HP inverse prediction processing unit 140 as parallel data. To do. The coefficient data Z (j) and Z ′ (j) before and after the replacement are the same as those illustrated in FIG. 18, and the generated first hierarchy data is the same as that illustrated in FIG.
 次に、前記係数データ入替処理部20は、一つのZ’(j)の入替を開始と同時に、次の非ゼロ係数データの復号を開始するための単係数復号開始信号をVLC復号化部120に出力する。単係数復号開始信号を入力されたVLC復号化部120は、次の非ゼロ係数の復号を開始する。また、前記係数データ入替処理部20は、一つのZ’(j)の入替が完了した後、度数更新処理を開始するための度数更新開始信号を度数更新処理部50に出力するとともに、更新した新たな係数位置座標jを入替情報記憶部40に出力し、ついで、前記置換情報記憶部40は、新たな係数位置座標jに対応する前記非ゼロ度数データF(j)を前記度数更新処理部50に出力する。 Next, the coefficient data replacement processing unit 20 starts a single coefficient decoding start signal for starting decoding of the next non-zero coefficient data simultaneously with the start of replacement of one Z ′ (j). Output to. The VLC decoding unit 120 to which the single coefficient decoding start signal is input starts decoding the next non-zero coefficient. Further, after the replacement of one Z ′ (j) is completed, the coefficient data replacement processing unit 20 outputs a frequency update start signal for starting the frequency update processing to the frequency update processing unit 50 and updates it. The new coefficient position coordinate j is output to the replacement information storage unit 40, and then the replacement information storage unit 40 outputs the non-zero frequency data F (j) corresponding to the new coefficient position coordinate j to the frequency update processing unit. Output to 50.
 前記度数更新処理部50は、前記入替情報記憶部40から入力した非ゼロ度数データF(j)に1を加算し、非ゼロ度数データF’(j)として前記比較・置換処理部60及び入替情報記憶部40に出力する。前記入替情報記憶部40は、非ゼロ度数データF’(j)を記憶し、次ブロックの処理のため、F(j)として更新する。 The frequency update processing unit 50 adds 1 to the non-zero frequency data F (j) input from the replacement information storage unit 40, and the comparison / replacement processing unit 60 and the replacement as non-zero frequency data F ′ (j). The information is output to the information storage unit 40. The replacement information storage unit 40 stores non-zero frequency data F ′ (j) and updates it as F (j) for processing of the next block.
 加算後のテーブルデータは、図18に例示したものと同様である。度数更新処理部50は、このようにして加算処理した更新後の非ゼロ度数データF’(j)を非ゼロ係数ごとに前記比較・置換処理部60に出力する。 The table data after addition is the same as that illustrated in FIG. The frequency update processing unit 50 outputs the updated non-zero frequency data F ′ (j) subjected to the addition process to the comparison / replacement processing unit 60 for each non-zero coefficient.
 比較・置換処理部60では、前記入替情報記憶部40より読み出した非ゼロ度数データF’(j-1)と前記度数更新処理部50から入力したF’(j)とを比較し、F’(j)がF’(j-1)よりも大きい場合に、F’(j-1)とF’(j)とを置換して、F”(j-1)=F’(j)、F”(j)=F’(j-1)とする処理、及び前記入替情報記憶部40から読み出した前後の入替データP(j-1)とP(j)とを置換して、P’(j-1)=P(j)、P’(j)=P(j-1)とする処理を行う。更新処理後の更新データは、図19に例示したものと同様である。 The comparison / replacement processing unit 60 compares the non-zero frequency data F ′ (j−1) read from the replacement information storage unit 40 with F ′ (j) input from the frequency update processing unit 50, and F ′ When (j) is larger than F ′ (j−1), F ′ (j−1) and F ′ (j) are replaced, and F ″ (j−1) = F ′ (j), F ′ (j) = F ′ (j−1), and replacement data P (j−1) and P (j) before and after read from the replacement information storage unit 40 are replaced by P ′ Processing is performed such that (j−1) = P (j) and P ′ (j) = P (j−1). The update data after the update process is the same as that illustrated in FIG.
 尚、前記入替情報記憶部40に格納されたテーブルデータF(j)及びP(j)は、それぞれ、比較・置換処理部60から出力されるF”(j-1),F”(j)及びP’(j-1)、P’(j)によって更新される。 The table data F (j) and P (j) stored in the replacement information storage unit 40 are respectively output F ″ (j−1) and F ″ (j) from the comparison / replacement processing unit 60. And P ′ (j−1) and P ′ (j).
 前記適応型スキャン部10では、以上のような処理が行われ、非ゼロの度数、及び予め設定された入替データに従って、係数データが入れ替えられた第1階層データが生成される。また、第2階層データについても同様の処理が行われ、係数データが入れ替えられた第2階層データが生成される。尚、前記第3階層データについては、そのまま、前記DC/LP/HP逆予測処理部140に出力される。 The adaptive scan unit 10 performs the above-described processing, and generates first-layer data in which coefficient data is replaced according to non-zero frequency and preset replacement data. Similar processing is performed on the second layer data, and second layer data in which the coefficient data is replaced is generated. The third layer data is output to the DC / LP / HP inverse prediction processing unit 140 as it is.
 適応型スキャン部10での動作をフローチャートで表したものが、図5であり、適応型スキャン部10における係数入替処理の動作をフローチャートで表したものが、図6である。ブロック処理の始めに、S1でZ(1)~Z(15)に0を代入して初期化した後、S3のVLC復号化処理で、可変長復号により、C(i)に非ゼロ係数データ、R(i)にゼロラン長データを取得する。第1の実施の形態では、VLC復号化部における処理よりも、適応型スキャン部における処理の方が時間的に短い(少ないサイクル数で処理できる)ので、S5における係数入替処理の終了待ちのステップは存在しない。ついで、S6で係数入替処理の開始を指示するのと同時にS3のVLC復号化処理に戻り、S3~S6までの処理をブロック内の非ゼロ係数分繰り返すものである。VLCの復号化処理と並行して実施する係数データの入替処理は、S3で取得した非ゼロ係数データC(i)及びゼロラン長データR(i)を用いて、S21で係数データZ(j)の入替処理を行い、S22で非ゼロ度数データを更新し、S24~S26で更新した非ゼロデータF’(j)とF’(j-1)の大小比較に基づき、F’(j)とP(j)との置換処理を行う。 FIG. 5 is a flowchart showing the operation of the adaptive scanning unit 10, and FIG. 6 is a flowchart showing the coefficient replacement process in the adaptive scanning unit 10. At the beginning of block processing, initialization is performed by substituting 0 into Z (1) to Z (15) in S1, and then non-zero coefficient data is stored in C (i) by variable length decoding in the VLC decoding processing in S3. , R (i) obtains zero run length data. In the first embodiment, since the process in the adaptive scan unit is shorter in time than the process in the VLC decoding unit (can be processed with a smaller number of cycles), the step of waiting for the end of the coefficient replacement process in S5 Does not exist. Next, at the same time as instructing the start of the coefficient replacement process at S6, the process returns to the VLC decoding process at S3, and the processes from S3 to S6 are repeated for the non-zero coefficients in the block. The coefficient data replacement process performed in parallel with the VLC decoding process uses the non-zero coefficient data C (i) and the zero-run length data R (i) acquired in S3, and coefficient data Z (j) in S21. The non-zero frequency data is updated in S22, and F ′ (j) and F ′ (j) are updated based on the magnitude comparison of the non-zero data F ′ (j) and F ′ (j−1) updated in S24 to S26. A replacement process with P (j) is performed.
適応型スキャン部10での動作を状態遷移図で表したものが、図7であり、処理開始後、待機中であるST0の状態0から、次ブロックの処理のため、ST1aに遷移し、ST1aの状態1aでは、VLC復号化で1係数分の非ゼロ係数、ゼロラン長を取得する。第1の実施の形態では、VLC復号化部における処理よりも、適応型スキャン部における処理の方が時間的に短い(少ないサイクル数で処理できる)ので、第1の実施の形態における状態1aでは、状態1bの完了を待つことはなく、VLC復号化処理が完了後、ブロックの最終非ゼロ係数でないときは、状態1a及び状態1bに遷移し、ブロックの最終の非ゼロ係数であるときには、状態1b及び状態0に遷移する。状態1bでは、1係数ごとに、係数の入替処理、度数更新処理、比較・置換処理を行った後、終了する。 FIG. 7 shows the operation of the adaptive scanning unit 10 in a state transition diagram. After the processing starts, the state 0 of the standby ST0 transitions to ST1a for processing of the next block, and ST1a In state 1a, a non-zero coefficient for one coefficient and a zero run length are obtained by VLC decoding. In the first embodiment, since the processing in the adaptive scanning unit is shorter in time than the processing in the VLC decoding unit (can be processed with a smaller number of cycles), in the state 1a in the first embodiment, , Without waiting for completion of state 1b, after the VLC decoding process is completed, if it is not the final non-zero coefficient of the block, transition to state 1a and state 1b, and if it is the final non-zero coefficient of the block, Transition to 1b and state 0. In the state 1b, after the coefficient replacement process, the frequency update process, and the comparison / replacement process are performed for each coefficient, the process ends.
 適応型スキャン部10での動作をタイミングチャートで表したものが図8である。このタイミングチャートは、非ゼロ係数の個数が3個の場合の一実施例であり、各処理の処理時間(処理に必要なサイクル数)は回路構成によって異なるものである。図8では、最初のVLC復号化処理vlc1が終了後、次のVLC復号化処理vlc2と並行して、係数入替処理i1、度数更新処理k1、比較置換処理h1を処理するので、処理時間の効率化を実現でき、復号に掛かる処理サイクル数を削減できる。図8の実施例の場合、1ブロックの処理時間は、23サイクルとなっており、図15の従来の構成例におけるサイクル数33サイクルと比べ、処理サイクル数が少なくなっているのがわかる。 FIG. 8 is a timing chart showing the operation of the adaptive scanning unit 10. This timing chart is an example when the number of non-zero coefficients is three, and the processing time of each process (the number of cycles required for the process) varies depending on the circuit configuration. In FIG. 8, since the coefficient replacement process i1, the frequency update process k1, and the comparison and replacement process h1 are processed in parallel with the next VLC decoding process vlc2 after the first VLC decoding process vlc1, the processing time efficiency is improved. The number of processing cycles required for decoding can be reduced. In the example of FIG. 8, the processing time of one block is 23 cycles, and it can be seen that the number of processing cycles is smaller than the number of cycles of 33 in the conventional configuration example of FIG.
 [第2の実施の形態]
 第2の実施の形態に係る前記適応型スキャン部10は、図3に示すように、係数データ入替処理部20、係数データ記憶部30、入替情報記憶部40、度数更新処理部50、及び比較・置換処理部60から構成され、係数データ入替処理部20は、図4に示すように、係数データ保持部21、入替処理制御部22、係数位置座標更新部23、係数アドレス保持部24及びブロック完了信号生成部25から構成される。
[Second Embodiment]
As shown in FIG. 3, the adaptive scanning unit 10 according to the second embodiment includes a coefficient data replacement processing unit 20, a coefficient data storage unit 30, a replacement information storage unit 40, a frequency update processing unit 50, and a comparison. As shown in FIG. 4, the coefficient data replacement processing unit 20 includes a replacement processing unit 60. The coefficient data replacement processing unit 20 includes a coefficient data holding unit 21, a replacement processing control unit 22, a coefficient position coordinate update unit 23, a coefficient address holding unit 24, and a block. The completion signal generation unit 25 is configured.
 第2の実施の形態に係る前記適応型スキャン部10は、構成において、図2に示す第1の実施の形態に係る前記適応型スキャン部10とほぼ同様であるが、図3において、比較・置換処理部60より係数データ入替処理部20へ比較・置換処理部60における1係数についての比較・置換処理が終了したことを示す単係数置換完了信号が出力されること、及び図4において、比較・置換処理部60より入替処理制御部22へ比較・置換処理部60における1係数についての比較・置換処理が終了したことを示す単係数置換完了信号が出力されること、のみが第1の実施の形態に係る前記適応型スキャン部10と相違する。 The adaptive scan unit 10 according to the second embodiment is substantially similar in configuration to the adaptive scan unit 10 according to the first embodiment shown in FIG. 2, but in FIG. A single coefficient replacement completion signal indicating that the comparison / replacement processing for one coefficient in the comparison / replacement processing unit 60 is completed is output from the replacement processing unit 60 to the coefficient data replacement processing unit 20, and in FIG. Only a single coefficient replacement completion signal indicating that the comparison / replacement processing for one coefficient in the comparison / replacement processing unit 60 is completed is output from the replacement processing unit 60 to the replacement process control unit 22 in the first implementation. This is different from the adaptive scanning unit 10 according to the embodiment.
 第2の実施の形態に係る前記適応型スキャン部10の構成は、復号化処理に掛かるサイクル数が適応型スキャン部における処理のサイクル数より少ない場合や復号化処理に掛かるサイクル数にばらつきがあり、適応型スキャン部における処理のサイクル数を下回る場合がある際の構成例であり、VLC復号化部120での1係数の復号化処理の完了後、図3における係数データ入替処理部20及び図4における入替処理制御部は、比較・置換処理部60での比較・置換処理の完了を示す単係数置換完了信号を待って、単係数置換完了信号の出力後、VLC復号部へ単係数復号開始信号を出力する。これにより、適応スキャン部10は、復号化処理での処理時間が適応型スキャン部での処理時間より短い場合であっても、比較・置換処理部での処理の終了を待って、復号化部での処理の開始を指示でき、正常に復号処理を実施できる。 The configuration of the adaptive scan unit 10 according to the second embodiment has variations in the number of cycles required for the decoding process when the number of cycles required for the decoding process is less than the number of cycles in the adaptive scan unit. 3 is a configuration example when there are cases where the number of processing cycles in the adaptive scanning unit may be lower, and after completion of the one-coefficient decoding process in the VLC decoding unit 120, the coefficient data replacement processing unit 20 in FIG. 4, the replacement processing control unit waits for a single coefficient replacement completion signal indicating the completion of the comparison / replacement process in the comparison / replacement processing unit 60, and after the output of the single coefficient replacement completion signal, starts the single coefficient decoding to the VLC decoding unit Output a signal. Thereby, even if the processing time in the decoding process is shorter than the processing time in the adaptive scanning unit, the adaptive scanning unit 10 waits for the end of the process in the comparison / replacement processing unit, The start of the process can be instructed, and the decryption process can be performed normally.
 図5の適応型スキャン部10での動作のフローチャートに基づき、第2の実施の形態に係る前記適応型スキャン部10の動作を説明する。第2の実施の形態に係る前記適応型スキャン部10の基本的な動作は、第1の実施の形態に係るものと同様であるが、第1の実施形態では、図5のS4及びS5の係数入替処理の終了を待つが、第1の実施形態では、図5のS4及びS5の係数入替処理の終了を待つステップがないことが相違する。第2の実施の形態に係る前記適応型スキャン部10では、係数入替処理の終了を待つことにより、復号化処理での処理時間が適応型スキャン部での処理時間より短い場合であっても、正常に復号処理を実施できる。 The operation of the adaptive scan unit 10 according to the second embodiment will be described based on the flowchart of the operation of the adaptive scan unit 10 in FIG. The basic operation of the adaptive scan unit 10 according to the second embodiment is the same as that according to the first embodiment, but in the first embodiment, S4 and S5 in FIG. Although the end of the coefficient replacement process is waited, the first embodiment is different in that there is no step of waiting for the end of the coefficient replacement process of S4 and S5 in FIG. In the adaptive scan unit 10 according to the second embodiment, even when the processing time in the decoding process is shorter than the processing time in the adaptive scan unit by waiting for the end of the coefficient replacement process, The decryption process can be performed normally.
 図7の適応型スキャン部10での動作の状態遷移図に基づき、第2の実施の形態に係る前記適応型スキャン部10の動作を説明する。第2の実施の形態に係る前記適応型スキャン部10の基本的な状態遷移は、第1の実施の形態に係るものと同様であるが、第1の実施形態では、図7の状態1aでVLC復号処理の終了後状態1aに遷移し、次のVLC復号処理を開始するのに対し、図7の第2の実施形態では、図7の状態1aで置換処理の完了を待つことが相違する。第2の実施の形態に係る前記適応型スキャン部10では、復号化処理での処理時間が適応型スキャン部での処理時間より短い場合であっても、係数入替処理の終了を待つことにより、正常に復号処理を実施できる。 The operation of the adaptive scan unit 10 according to the second embodiment will be described based on the state transition diagram of the operation in the adaptive scan unit 10 of FIG. The basic state transition of the adaptive scanning unit 10 according to the second embodiment is the same as that according to the first embodiment, but in the first embodiment, the state 1a in FIG. After the VLC decoding process is completed, the state transitions to the state 1a and the next VLC decoding process is started, whereas in the second embodiment of FIG. 7, it is different to wait for the completion of the replacement process in the state 1a of FIG. . In the adaptive scanning unit 10 according to the second embodiment, even when the processing time in the decoding process is shorter than the processing time in the adaptive scanning unit, by waiting for the end of the coefficient replacement process, The decryption process can be performed normally.
 以上の構成を備えた第1及び第2の実施の形態の画像復号化装置1によれば、まず、外部から前記ビットストリーム解析部110に1画像分の画像符号化データが入力され、この画像符号化データが解析・分離され、分離後の第1階層データ(HP係数)、第2階層データ(LP係数)及び第3階層データ(DC係数)がVLC復号化部120に入力される。 According to the image decoding apparatus 1 of the first and second embodiments having the above-described configuration, first, image encoded data for one image is input from the outside to the bit stream analysis unit 110, and this image The encoded data is analyzed and separated, and the first layer data (HP coefficient), second layer data (LP coefficient), and third layer data (DC coefficient) after separation are input to the VLC decoding unit 120.
 前記VLC復号化部120では、前記ビットストリーム解析部110で分離された画像符号化データである第1階層データ、2階層データ及び第3階層データに対して、VLC(Variable Length Coding)復号化処理である可変長復号処理を施し、非ゼロ係数データ及びゼロラン長データを抽出して、前記適応型スキャン部10に出力する。 The VLC decoding unit 120 performs VLC (Variable Length Coding) decoding on the first layer data, the second layer data, and the third layer data, which are the image encoded data separated by the bit stream analysis unit 110. A variable-length decoding process, which is a process, is performed, non-zero coefficient data and zero-run length data are extracted and output to the adaptive scan unit 10.
 前記適応型スキャン部10では、圧縮時に定められた手法によって画素順を入れ替えられた第1階層データ及び第2階層データについて、ブロック毎に、その係数データを圧縮とは逆の手順によって入れ替え、元の画素順に戻す処理を行い、処理後の第1階層データ及び第2階層データをDC/LP/HP逆予測処理部140に出力する。前記適応型スキャン部10では、係数データの入替処理、度数更新処理、比較・置換処理と並行して、VLC復号化処理を実行するようにしている。したがって、第1及び第2の実施の形態の適応型スキャン部10によれば、係数データの入替処理、度数更新処理、比較・置換処理の際に、VLC復号化処理を停止する必要があった従来の適応型スキャン部130に比べて、その処理時間をVLC復号化処理の期間に含めてしまうことができ、効率的に係数データの入替処理、度数更新処理、比較・置換処理を行うことができる。尚、VLC復号化部120から入力された第3階層データは、そのままDC/LP/HP逆予測処理部140に出力される。 In the adaptive scan unit 10, the first hierarchical data and the second hierarchical data in which the pixel order is replaced by a method determined at the time of compression, the coefficient data is replaced for each block by a procedure reverse to the compression, The first layer data and the second layer data after processing are output to the DC / LP / HP inverse prediction processing unit 140. The adaptive scanning unit 10 executes the VLC decoding process in parallel with the coefficient data replacement process, the frequency update process, and the comparison / replacement process. Therefore, according to the adaptive scanning unit 10 of the first and second embodiments, it is necessary to stop the VLC decoding process during the coefficient data replacement process, the frequency update process, and the comparison / replacement process. Compared to the conventional adaptive scanning unit 130, the processing time can be included in the VLC decoding process period, and the coefficient data replacement process, frequency update process, and comparison / replacement process can be performed efficiently. it can. Note that the third layer data input from the VLC decoding unit 120 is output to the DC / LP / HP inverse prediction processing unit 140 as it is.
 前記DC/LP/HP逆予測処理部140では、前記適応型スキャン部10から入力した、ブロック毎の第1階層データ、第2階層データ、及び第3階層データについて、それぞれ、隣接するブロック間での係数の比較を行って予測モードを導出し、予測モードに対し、設定された演算式に従って、相関の高いブロック間の対応する画素の値を対象画素に足し込むことで、圧縮における予測処理前の画素値を復元(逆予測処理)する。そして、処理後の第1階層データ、第2階層データ及び第3階層データをブロック毎に逆量子化部150に出力する。 In the DC / LP / HP inverse prediction processing unit 140, the first layer data, the second layer data, and the third layer data for each block input from the adaptive scan unit 10 are respectively between adjacent blocks. The prediction mode is derived by comparing the coefficients of, and the value of the corresponding pixel between the highly correlated blocks is added to the target pixel according to the set arithmetic expression for the prediction mode. Is restored (inverse prediction processing). Then, the processed first layer data, second layer data, and third layer data are output to the inverse quantization unit 150 for each block.
 前記逆量子化部150は、前記DC/LP/HP逆予測処理部140により逆予測処理された第1階層データ、第2階層データ及び第3階層データを、それぞれ設定された量子化パラメータで乗算して逆量子化する処理を行い、処理後の第1階層データ、第2階層データ及び第3階層データを、ブロック毎に周波数逆変換部160に出力する。 The inverse quantization unit 150 multiplies the first layer data, the second layer data, and the third layer data, which have been subjected to the inverse prediction processing by the DC / LP / HP inverse prediction processing unit 140, with respective set quantization parameters. Then, the inverse quantization process is performed, and the processed first layer data, second layer data, and third layer data are output to the frequency inverse transform unit 160 for each block.
 前記周波数逆変換部160は、前記逆量子化部150によって逆量子化された画像データを、4×4画素を一つのブロックとしてラスター方向に順次処理し、各周波数帯域毎の係数データを画素データに変換する処理を行う。この周波数逆変換部160は、各周波数帯域毎に分離していた第1階層データ、第2階層データ及び第3階層データを、色成分(Y/U/V又はY/U/V/K)毎に、1ブロック(4×4画素)の2次元空間データに戻して、前記色空間逆変換部170に出力する。 The frequency inverse transform unit 160 sequentially processes the image data inversely quantized by the dequantization unit 150 in a raster direction with 4 × 4 pixels as one block, and generates coefficient data for each frequency band as pixel data. Process to convert to. The frequency inverse transform unit 160 converts the first layer data, the second layer data, and the third layer data separated for each frequency band into color components (Y / U / V or Y / U / V / K). Each time, the data is returned to one block (4 × 4 pixels) of two-dimensional space data and output to the color space inverse transform unit 170.
 前記色空間逆変換部170は、周波数逆変換部160から入力された各色成分毎の画像データを画素毎に処理し、色空間逆変換が不要な場合は、色空間逆変換せず、色空間逆変換が必要な場合で、色成分がY/U/Vであるときには、RGBデータに変換し、色成分がY/U/V/Kであるときには、CMYKデータに変換し、処理後の画素データを、外部に1画像分の画像データとして出力する。 The color space inverse transform unit 170 processes the image data for each color component input from the frequency inverse transform unit 160 for each pixel, and when the color space inverse transform is not necessary, the color space inverse transform is not performed. When reverse conversion is necessary, if the color component is Y / U / V, it is converted to RGB data, and if the color component is Y / U / V / K, it is converted to CMYK data, and the processed pixel The data is output to the outside as image data for one image.
 以上詳述したように、本例の画像復号化装置1によれば、係数データの入替処理、度数更新処理、比較・置換処理の際に、VLC復号化処理を停止する必要があった従来の適応型スキャン部130に比べて、その処理時間をVLC復号化処理に期間に含めてしまうことができるので、効率的に係数データの入替処理や置換情報データの更新処理を行うことができ、その結果、従来に比べて、画像復号化装置1全体の処理速度を速めることができ、効率的な復号化処理を実現することができる。また、復号化処理での処理時間が適応型スキャン部での処理時間より短い場合であっても、比較・置換処理部での処理の終了を待って復号化処理を開始する信号を出力できるので、正常に復号処理を実施できる。 As described above in detail, according to the image decoding apparatus 1 of the present example, it is necessary to stop the VLC decoding process during the coefficient data replacement process, the frequency update process, and the comparison / replacement process. Compared with the adaptive scanning unit 130, the processing time can be included in the VLC decoding process, so that the coefficient data replacement process and the replacement information data update process can be performed efficiently. As a result, the processing speed of the entire image decoding apparatus 1 can be increased compared to the conventional case, and an efficient decoding process can be realized. In addition, even when the processing time in the decoding process is shorter than the processing time in the adaptive scan unit, a signal for starting the decoding process can be output after waiting for the comparison / replacement processing unit to end. The decoding process can be normally performed.
 以上、本発明の第1及び第2の実施の形態について説明したが、本発明が採り得る具体的な態様は、何らこれに限定されるものではない。例えば、上例では、係数データ入替処理部からVLC復号化部へ1係数の処理の開始を指示する単係数復号開始信号を、係数データ処理部での係数データ入替処理の開始と同時に出力するが、これに限られるものではなく、係数データ処理部での係数データ入替処理の完了時に出力するようにしても良く、また、可能であれば、度数更新処理部における度数更新処理の終了時に出力するようにしても良い。 As mentioned above, although 1st and 2nd embodiment of this invention was described, the specific aspect which this invention can take is not limited to this at all. For example, in the above example, the coefficient data replacement processing unit outputs a single coefficient decoding start signal instructing the VLC decoding unit to start processing of one coefficient at the same time as the start of the coefficient data replacement process in the coefficient data processing unit. However, the present invention is not limited to this, and it may be output when the coefficient data replacement process in the coefficient data processing unit is completed, and if possible, it is output at the end of the frequency update process in the frequency update processing unit. You may do it.
 1  画像復号化装置
 10 適応型スキャン部
 20 係数データ入替処理部
 21 係数データ保持部
 22 入替処理制御部
 23 係数位置座標更新部
 24 係数アドレス保持部
 25 ブロック入替完了信号
 30 係数データ記憶部
 40 入替情報記憶部
 50 度数更新処理部
 60 比較・置換処理部
 100 画像復号化装置
 110 ビットストリーム解析部
 120 VLC復号化部
 130 適応型スキャン部
 131 非ゼロ係数記憶・係数総数累計部
 132 係数データ入替処理部
 133 係数データ記憶部
 134 入替情報記憶部
 135 度数更新処理部
 136 比較・置換処理部
 140 DC/LP/HP逆予測処理部
 141 非ゼロ係数総数累計部
 142 係数出力制御部
 143 非ゼロ係数記憶・出力部
 144 ゼロラン長記憶・出力部
 145 係数データ保持部
 146 入替処理制御部
 147 係数位置座標更新部
 148 係数アドレス保持部
 149 ブロック完了信号生成部
 150 逆量子化部
 160 周波数逆変換部
 170 色空間逆変換部
 ST0 状態0
 ST1 状態1
 ST1a 状態1a
 ST1b 状態1b
 ST2 状態2
DESCRIPTION OF SYMBOLS 1 Image decoding apparatus 10 Adaptive scanning part 20 Coefficient data replacement process part 21 Coefficient data holding part 22 Replacement process control part 23 Coefficient position coordinate update part 24 Coefficient address holding part 25 Block replacement completion signal 30 Coefficient data storage part 40 Replacement information Storage unit 50 Frequency update processing unit 60 Comparison / replacement processing unit 100 Image decoding device 110 Bit stream analysis unit 120 VLC decoding unit 130 Adaptive scanning unit 131 Non-zero coefficient storage / coefficient total number accumulation unit 132 Coefficient data replacement processing unit 133 Coefficient data storage unit 134 Replacement information storage unit 135 Frequency update processing unit 136 Comparison / replacement processing unit 140 DC / LP / HP inverse prediction processing unit 141 Non-zero coefficient total accumulation unit 142 Coefficient output control unit 143 Non-zero coefficient storage / output unit 144 Zero run length storage / output unit 145 Coefficient data Storage 146 replacement processing control unit 147 coefficient coordinates updating unit 148 coefficient address holding unit 149 blocks completion signal generation unit 150 inverse quantization unit 160 inverse frequency transform unit 170 color space inverse conversion section ST0 state 0
ST1 State 1
ST1a State 1a
ST1b State 1b
ST2 State 2

Claims (5)

  1.  圧縮された画像符号化データを復号化して、ブロック単位の各非ゼロ係数順座標iの非ゼロ係数データC(i)とゼロラン長データR(i)を生成する復号化部と、
     前記ゼロラン長データR(i)より生成される前記ブロックの係数位置座標jと、前記非ゼロ係数データC(i)が移されるべき係数位置座標jの係数データである、Z(j)が非ゼロであった度数との関係を表す非ゼロ度数データF(j)、及び前記ブロック内で係数データZ(j)を入れ替えるための入替データP(j)であって、現在の係数位置座標jと、当該係数位置座標jの係数データZ(j)を、入れ替えによって組み入れるべき係数位置座標j’との関係を表す入替データP(j)を用いて、前記復号化部により復号化されたブロック単位の非ゼロ係数データC(i)を該ブロック内で入替処理する適応型スキャン部と、
     前記適応型スキャン部により入れ替えられたブロック単位のn個の係数データを逆量子化する逆量子化部と、
     前記逆量子化された係数データを所定画素数のブロック単位で周波数逆変換して画像データを生成する周波数逆変換部とを少なくとも備えた画像復号化装置において、
     前記適応型スキャン部は、
     前記非ゼロ度数データF(j)及び入替データP(j)を記憶する入替情報記憶部と、
    前記復号化部により復号化された非ゼロ係数データC(i)及びゼロラン長データR(i)に対応する係数データZ(j)を、前記置換情報記憶部に記憶されたP(j)に基づいて、入替処理する係数データ入替処理部と、
     前記入替データP(j)及び非ゼロ係数データC(i)の入替処理情報に基づいて、前記非ゼロ係数データC(i)を前記ブロック内でZ(P(j))に記憶することで、入替処理し、Z’(j)として出力する係数データ記憶部と、
     前記復号化後のブロック単位の前記非ゼロである係数位置座標jの非ゼロ度数データに1を加えて非ゼロ度数データF(j)を更新し、更新後の非ゼロ度数データF’(j)とする度数更新処理部と、
     前記度数更新処理部によって更新された非ゼロ度数データF’(j)を用い、前後するF’(j-1)とF’(j)とを順次比較し、F’(i-1)とF’(i)、P(i-1)とP(i)の比較結果に基づいて、F’(i-1)とF’(i)、P(i-1)とP(i)との置換処理を行う比較・置換処理部とを備えて構成され、係数データ入替処理部から復号化部へ、前記入替処理と並行して、次の非ゼロ係数の復号を開始するための単係数復号開始信号を出力し、係数データ入替処理部から度数更新処理部へ、係数データ入替処理後に、度数更新開始信号を出力することを特徴とする画像復号化装置。但し、前記nは2以上の整数であり、前記iは1~n以下の整数であり、前記j及びP(j)は1~nの整数である。
    A decoding unit that decodes the compressed image encoded data to generate non-zero coefficient data C (i) and zero-run length data R (i) of each non-zero coefficient forward coordinate i in block units;
    The coefficient position coordinate j of the block generated from the zero run length data R (i) and the coefficient data of the coefficient position coordinate j to which the non-zero coefficient data C (i) is to be transferred, Z (j) is non- Non-zero frequency data F (j) representing the relationship with the frequency that was zero, and replacement data P (j) for replacing the coefficient data Z (j) in the block, the current coefficient position coordinate j And the block decoded by the decoding unit using the replacement data P (j) representing the relationship between the coefficient position coordinate j ′ of the coefficient position coordinate j and the coefficient position coordinate j ′ to be incorporated by replacement. An adaptive scan unit that replaces the unit non-zero coefficient data C (i) in the block;
    An inverse quantization unit that inversely quantizes the n coefficient data in units of blocks replaced by the adaptive scan unit;
    In an image decoding apparatus comprising at least a frequency inverse transform unit that inversely frequency transforms the inversely quantized coefficient data in units of a predetermined number of pixels to generate image data,
    The adaptive scan unit includes:
    A replacement information storage unit for storing the non-zero frequency data F (j) and replacement data P (j);
    Coefficient data Z (j) corresponding to the non-zero coefficient data C (i) and zero run length data R (i) decoded by the decoding unit is stored in P (j) stored in the replacement information storage unit. Based on the coefficient data replacement processing unit for replacement processing,
    Based on the replacement processing information of the replacement data P (j) and the non-zero coefficient data C (i), the non-zero coefficient data C (i) is stored in Z (P (j)) in the block. A coefficient data storage unit that performs replacement processing and outputs it as Z ′ (j);
    The non-zero frequency data F (j) is updated by adding 1 to the non-zero coefficient position coordinate j of the non-zero coefficient position coordinate j after the decoding, and the updated non-zero frequency data F ′ (j ) Frequency update processing unit,
    Using the non-zero frequency data F ′ (j) updated by the frequency update processing unit, F ′ (j−1) and F ′ (j) are sequentially compared and F ′ (i−1) and Based on the comparison results of F ′ (i), P (i−1) and P (i), F ′ (i−1) and F ′ (i), P (i−1) and P (i) A single coefficient for starting the decoding of the next non-zero coefficient in parallel with the replacement process from the coefficient data replacement processing unit to the decoding unit. An image decoding apparatus that outputs a decoding start signal and outputs a frequency update start signal after the coefficient data replacement processing from the coefficient data replacement processing unit to the frequency update processing unit. Here, n is an integer of 2 or more, i is an integer of 1 to n, and j and P (j) are integers of 1 to n.
  2.  前記適応型スキャン部は、比較・置換処理部から係数データ入替処理部へ、比較・置換処理が終了したことを示す単係数置換完了信号を出力することを特徴とする請求項1記載の画像復号化装置。 2. The image decoding according to claim 1, wherein the adaptive scanning unit outputs a single coefficient replacement completion signal indicating that the comparison / replacement processing is completed from the comparison / replacement processing unit to the coefficient data replacement processing unit. Device.
  3.  前記適応型スキャン部は、次の非ゼロ係数の復号を開始するための前記単係数復号開始信号を、前記入替処理の開始と同時に出力することを特徴とする請求項1記載の画像復号化装置。 The image decoding apparatus according to claim 1, wherein the adaptive scanning unit outputs the single coefficient decoding start signal for starting decoding of the next non-zero coefficient simultaneously with the start of the replacement process. .
  4.  前記係数データ入替処理部は、
     前記復号化部より入力した非ゼロ係数データC(i)を記憶部への入力データとして、係数データ記憶部へ出力する係数データ保持部と、
     前記度数更新処理の開始及び復号化処理の開始のタイミングを制御する入替処理制御部と、
     現在の係数位置座標jを生成する係数位置座標更新部と、
     前記現在の係数位置座標jを用いて、入替情報記憶部より入替データP(j)を取得して、係数データ記憶部への入力アドレスとして、係数データ記憶部へ出力する係数アドレス保持部と、
     前記復号化部より入力したブロック復号完了信号と、前記入替処理制御部より入力した単係数入替完了信号より、ブロックの入替が完了したことを示すブロック入替完了信号を係数データ記憶部へ出力するブロック完了信号生成部を備え、
     前記入替処理制御部は、復号化部へ、次の非ゼロ係数の復号を開始するための単係数復号開始信号を出力し、度数更新処理部へ、係数データ入替処理後に、度数更新開始信号を出力することを特徴とする請求項1記載の画像復号化装置。
    The coefficient data replacement processing unit
    A coefficient data holding unit that outputs the non-zero coefficient data C (i) input from the decoding unit to the coefficient data storage unit as input data to the storage unit;
    A replacement process control unit for controlling the start of the frequency update process and the start timing of the decoding process;
    A coefficient position coordinate update unit for generating a current coefficient position coordinate j;
    A coefficient address holding unit that obtains replacement data P (j) from the replacement information storage unit using the current coefficient position coordinate j, and outputs it to the coefficient data storage unit as an input address to the coefficient data storage unit;
    A block that outputs a block replacement completion signal indicating completion of block replacement to the coefficient data storage unit based on a block decoding completion signal input from the decoding unit and a single coefficient replacement completion signal input from the replacement processing control unit A completion signal generator,
    The replacement processing control unit outputs a single coefficient decoding start signal for starting decoding of the next non-zero coefficient to the decoding unit, and outputs a frequency update start signal to the frequency update processing unit after the coefficient data replacement processing. The image decoding apparatus according to claim 1, wherein the image decoding apparatus outputs the image decoding apparatus.
  5.  前記係数データ入替処理部は、
    前記比較・置換処理部から、置換処理が終了したことを示す単係数置換完了信号を入力されることを特徴とする請求項4記載の画像復号化装置。
    The coefficient data replacement processing unit
    5. The image decoding apparatus according to claim 4, wherein a single coefficient replacement completion signal indicating completion of replacement processing is input from the comparison / replacement processing unit.
PCT/JP2014/062329 2013-06-20 2014-05-08 Image decoding device WO2014203640A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2013-129450 2013-06-20
JP2013129450A JP6081869B2 (en) 2013-06-20 2013-06-20 Image decoding device

Publications (1)

Publication Number Publication Date
WO2014203640A1 true WO2014203640A1 (en) 2014-12-24

Family

ID=52104383

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2014/062329 WO2014203640A1 (en) 2013-06-20 2014-05-08 Image decoding device

Country Status (2)

Country Link
JP (1) JP6081869B2 (en)
WO (1) WO2014203640A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6321557B2 (en) 2015-01-15 2018-05-09 株式会社シマノ Bicycle assist device control device and bicycle assist device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010193097A (en) * 2009-02-17 2010-09-02 Canon Inc Scanning converter, image encoder and method of controlling the same
JP2010268243A (en) * 2009-05-14 2010-11-25 Canon Inc Scan transformer, image encoder, and control methods of them
JP2012129888A (en) * 2010-12-16 2012-07-05 Samsung Electronics Co Ltd Image encoding apparatus and image encoding method
JP2012235452A (en) * 2011-04-19 2012-11-29 Canon Inc Image processing apparatus and image processing method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010193097A (en) * 2009-02-17 2010-09-02 Canon Inc Scanning converter, image encoder and method of controlling the same
JP2010268243A (en) * 2009-05-14 2010-11-25 Canon Inc Scan transformer, image encoder, and control methods of them
JP2012129888A (en) * 2010-12-16 2012-07-05 Samsung Electronics Co Ltd Image encoding apparatus and image encoding method
JP2012235452A (en) * 2011-04-19 2012-11-29 Canon Inc Image processing apparatus and image processing method

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CHING-YEN CHIEN ET AL.: "Pipelined arithmetic encoder design for lossless JPEG XR encoder", THE 13TH INTERNATIONAL SYMPOSIUM ON CONSUMER ELECTRONICS (ISCE 2009), May 2009 (2009-05-01), pages 144 - 147, XP031484607 *
KOICHI HATTORI ET AL.: "A high-throughput pipelined architecture for JPEG XR encoding", IEEE /ACM/IFIP 7TH WORKSHOP ON EMBEDDED SYSTEMS FOR REAL-TIME MULTIMEDIA (ESTIMEDIA 2009, October 2009 (2009-10-01), pages 9 - 17 *

Also Published As

Publication number Publication date
JP6081869B2 (en) 2017-02-15
JP2015005857A (en) 2015-01-08

Similar Documents

Publication Publication Date Title
JP7280233B2 (en) Image decoding method, image decoding system and computer readable medium for image decoding
JP6310524B2 (en) Image encoding and decoding method, encoding and decoding device, and computer program corresponding thereto
JP5698382B2 (en) Reference image compression and decompression method in video coder
US20090232205A1 (en) Arithmetic decoding apparatus and method
JP2007150913A (en) Image encoding device
JP7402280B2 (en) Video decoding device, video decoding method and program
WO2010131537A1 (en) Moving image encoding device, method, and program, and moving image decoding device, method, and program
JP2021530166A (en) Equipment and methods for filtering in video coding
US20160241854A1 (en) Method and Apparatus for Arithmetic Decoding
KR20220019285A (en) Method and encoder for encoding a sequence of frames
KR20090113103A (en) Method and Apparatus of Decoding Image
JP2024019542A (en) Decoding device, program, and decoding method
JP6081869B2 (en) Image decoding device
JP2009232454A (en) Method and apparatus for generating coded block pattern for high-pass coefficient
JP7451131B2 (en) Image encoding device, image encoding method, and program
JPH0774968A (en) Method for compressing/extending picture data
EP4124039A1 (en) Image encoding device, image encoding method and program, image decoding device, and image decoding method and program
JP7090490B2 (en) Image coding device, image decoding device, image coding method, image decoding method
JP6382728B2 (en) Decoding method and decoding apparatus
JP6204171B2 (en) Image encoding apparatus and image decoding apparatus
JP6081862B2 (en) Image encoding device
JP2005109544A (en) Image processing apparatus
JP2016005116A (en) Image encoding device
JP2016025362A (en) Image decoding device
JP2006005479A (en) Device and method of encoding image

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14813633

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14813633

Country of ref document: EP

Kind code of ref document: A1