WO2012096201A1 - 画像処理装置および方法 - Google Patents

画像処理装置および方法 Download PDF

Info

Publication number
WO2012096201A1
WO2012096201A1 PCT/JP2012/050016 JP2012050016W WO2012096201A1 WO 2012096201 A1 WO2012096201 A1 WO 2012096201A1 JP 2012050016 W JP2012050016 W JP 2012050016W WO 2012096201 A1 WO2012096201 A1 WO 2012096201A1
Authority
WO
WIPO (PCT)
Prior art keywords
unit
image
coding
mode
processing
Prior art date
Application number
PCT/JP2012/050016
Other languages
English (en)
French (fr)
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
Priority to SG2013052105A priority Critical patent/SG191867A1/en
Priority to KR1020137017198A priority patent/KR101882537B1/ko
Priority to RU2013130743/07A priority patent/RU2578164C2/ru
Priority to KR1020197028303A priority patent/KR102127604B1/ko
Priority to KR1020187002833A priority patent/KR102116621B1/ko
Priority to US13/978,492 priority patent/US9270987B2/en
Priority to EP22168744.5A priority patent/EP4064705A1/en
Priority to MX2013007843A priority patent/MX2013007843A/es
Priority to KR1020187021023A priority patent/KR101988814B1/ko
Priority to KR1020207020322A priority patent/KR102228342B1/ko
Priority to AU2012206186A priority patent/AU2012206186B9/en
Priority to CA2820180A priority patent/CA2820180C/en
Priority to KR1020187035317A priority patent/KR102028853B1/ko
Priority to KR1020187002831A priority patent/KR102135696B1/ko
Application filed by ソニー株式会社 filed Critical ソニー株式会社
Priority to BR122014030189-8A priority patent/BR122014030189B1/pt
Priority to EP23164739.7A priority patent/EP4221219A1/en
Priority to KR1020187002830A priority patent/KR101928044B1/ko
Priority to EP12733885.3A priority patent/EP2665263B1/en
Priority to BR112013017308-4A priority patent/BR112013017308B1/pt
Priority to CN201280004667.8A priority patent/CN103299629B/zh
Priority to KR1020187021024A priority patent/KR101988815B1/ko
Publication of WO2012096201A1 publication Critical patent/WO2012096201A1/ja
Priority to US13/965,534 priority patent/US8737751B2/en
Priority to US14/988,418 priority patent/US9894387B2/en
Priority to US14/988,365 priority patent/US10027987B2/en
Priority to US15/880,045 priority patent/US10432976B2/en
Priority to US16/581,575 priority patent/US10979739B2/en
Priority to US17/228,642 priority patent/US20210306674A1/en
Priority to US18/227,591 priority patent/US20230388554A1/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/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/007Transform coding, e.g. discrete cosine transform
    • 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/117Filters, e.g. for pre-processing or post-processing
    • 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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • 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/124Quantisation
    • 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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/152Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
    • 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • 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/184Methods 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 bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation

Definitions

  • the present disclosure relates to an image processing apparatus and method, and more particularly, to an image processing apparatus and method capable of improving encoding efficiency while suppressing reduction in the efficiency of encoding processing.
  • image information is treated as digital, and at that time, it is an MPEG that is compressed by orthogonal transformation such as discrete cosine transformation and motion compensation for the purpose of efficient transmission and storage of information, using redundancy unique to image information.
  • orthogonal transformation such as discrete cosine transformation and motion compensation for the purpose of efficient transmission and storage of information, using redundancy unique to image information.
  • a device conforming to a method such as Moving Picture Experts Group) is spreading in both information distribution such as broadcasting station and information reception in general home.
  • MPEG2 International Organization for Standardization
  • IEC International Electrotechnical Commission
  • MPEG2 was mainly intended for high-quality coding suitable for broadcasting, it did not correspond to a coding amount (bit rate) lower than that of MPEG1, that is, a coding method with a higher compression rate.
  • bit rate bit rate
  • MPEG4 coding amount
  • the standard was approved as an international standard as ISO / IEC 14496-2 in December 1998.
  • H.26L International Telecommunication Union Telecommunication Standardization Sector (ITU-T Q6 / 16 Video Coding Expert Group)
  • ISO-T Q6 / 16 Video Coding Expert Group International Telecommunication Union Telecommunication Standardization Sector
  • AVC Advanced Video Coding
  • ITU-T and JCTVC Joint Collaboration Team-Video Coding
  • ISO / IEC Joint Collaboration Team-Video Coding
  • HEVC High Efficiency Video Coding
  • a coding unit (Coding Unit) is defined as a processing unit similar to a macroblock in AVC.
  • This CU is not fixed in size to 16 ⁇ 16 pixels like a macroblock of AVC, and is designated in image compression information in each sequence.
  • the CUs are hierarchically configured from the largest LCU (Largest Coding Unit) to the smallest SCU (Smallest Coding Unit). That is, in general, it can be considered that an LCU corresponds to an AVC macroblock, and a CU in a layer below that LCU (a CU smaller than the LCU) corresponds to an AVC sub-macroblock.
  • Non-Patent Document 2 a method of increasing the internal operation has been proposed (see, for example, Non-Patent Document 2). By this, it is possible to make the internal operation error in the processing such as orthogonal transformation and motion compensation smaller, and to improve the coding efficiency.
  • Non-Patent Document 3 a method having an FIR filter in a motion compensation loop has been proposed (see, for example, Non-Patent Document 3).
  • the deterioration in the reference image is minimized by obtaining the FIR filter coefficient by the Wiener filter so as to minimize the error with the input image, and the coding efficiency of the image compression information to be output is obtained. It is possible to improve
  • Non-Patent Document 2 and Non-Patent Document 3 are not included in the AVC coding scheme, and the correspondence to the I_PCM mode has not been disclosed.
  • the present disclosure is made in view of such a situation, and it is an object of the present disclosure to improve encoding efficiency while suppressing reduction in the efficiency of encoding processing.
  • coding having a hierarchical structure is selected as a coding mode when coding image data, which is a coding mode in which the image data is output as coded data.
  • the image processing apparatus includes an encoding mode setting unit set for each unit, and an encoding unit for encoding the image data for each encoding unit according to the mode set by the encoding mode setting unit.
  • a shift processing control unit configured to control to skip shift processing for extending bit precision at the time of encoding or decoding for a coding unit for which the non-compression mode is set by the coding mode setting unit;
  • the image processing apparatus may further include a shift processing unit that performs the shift processing on the image data for a coding unit controlled to perform the shift processing by the shift processing control unit.
  • a filter processing control unit configured to control to skip filter processing for performing filtering on a locally decoded image for a coding unit in which the non-compression mode is set by the coding mode setting unit; and the filter processing control
  • a filter coefficient calculation unit that calculates a filter coefficient of the filter process using image data of a coding unit controlled to perform the filter process by the unit; and the filter coefficient calculated by the filter coefficient calculation unit
  • the filter processing unit may further include a filter processing unit that performs the filter processing for each block that is a unit of the filter processing.
  • the filter processing unit can perform the filter processing only on pixels included in a current block to be processed and controlled to be subjected to the filter processing by the filter processing control unit.
  • the image processing apparatus may further include a filter identification information generation unit that generates filter identification information, which is identification information indicating whether the filtering process is performed, for each of the blocks.
  • the filter processing unit may perform adaptive loop filter, which is adaptive filter processing using class classification processing, on the locally decoded image.
  • the encoding mode setting is input data in which a code amount of encoded data obtained by encoding the image data of a current encoding unit to be encoded is the data amount of the image data of the current encoding unit. If it is less than or equal to the amount, the coding mode of the current coding unit may be set to the non-compression mode.
  • the coding mode setting unit further includes an input data amount calculation unit that calculates the input data amount, and the coding mode setting unit is configured to calculate the input data amount calculated by the input data amount calculation unit for the current coding unit. The amount of code can be compared.
  • the information processing apparatus may further include an identification information generation unit that generates identification information indicating whether the non-compression mode is set by the coding mode setting unit, for each coding unit.
  • Another aspect of the present disclosure is the image processing method of the image processing apparatus, wherein the encoding mode setting unit outputs the image data as encoded data as an encoding mode at the time of encoding the image data. Whether to select the non-compression mode which is the coding mode is set for each coding unit having a hierarchical structure, and the coding unit codes the image data for each coding unit according to the set mode. It is an image processing method.
  • the image processing apparatus includes an encoding mode determination unit that determines each encoding unit, and a decoding unit that decodes the encoding result for each encoding unit according to the mode determined by the encoding mode determination unit.
  • a shift processing control unit configured to skip shift processing for extending bit accuracy when encoding or decoding is performed on a coding unit determined to have the non-compression mode selected by the coding mode determination unit And a shift processing unit that performs the shift processing on the image data for a coding unit controlled to perform the shift processing by the shift processing control unit.
  • a filter processing control unit configured to control to skip filtering processing for filtering a locally decoded image for a coding unit determined to have the non-compression mode selected by the coding mode determination unit; And a filter processing unit that performs the filter processing on the image data for each block that is a unit of filter processing, the filter processing unit including the filter processing control unit included in a current block to be processed
  • the filter process can be performed only on pixels controlled to perform the filter process.
  • the filter processing unit may perform adaptive loop filter, which is adaptive filter processing using class classification processing, on the locally decoded image.
  • the filter processing unit When the filter processing unit indicates that the filter processing has been performed on the image data of the current block to be processed by the filter identification information indicating whether the filter processing has been performed, the filter processing The filter process can be performed only when the control unit is controlled to perform the filter process on all pixels included in the current block.
  • the coding mode determination unit may determine whether the non-compression mode is selected based on identification information indicating whether the non-compression mode is selected for each coding unit.
  • Another aspect of the present disclosure is the image processing method of the image processing apparatus, wherein the encoding mode determination unit outputs the image data as encoded data as an encoding mode at the time of encoding the image data. It is determined, for each coding unit having a hierarchical structure, whether a non-compression mode which is an encoding mode to be selected is selected, and the decoding unit decodes the encoded data for each coding unit according to the determined mode. It is an image processing method.
  • a code having a hierarchical structure is selected as a coding mode when coding image data, in which non-compression mode, which is a coding mode for outputting the image data as coded data, is selected.
  • the image data is set for each coding unit according to a mode set for each coding unit and set according to the set mode.
  • a code having a hierarchical structure is selected as a coding mode for coding image data, in which a non-compression mode, which is a coding mode for outputting the image data as coded data, is selected.
  • the encoded data is decoded for each coding unit according to the determined mode and the determined mode.
  • an image can be processed.
  • the coding efficiency can be improved while suppressing the reduction in the coding processing efficiency.
  • FIG. 18 It is a flowchart explaining the example of the flow of decoding processing.
  • 18 is a flowchart following FIG. 17 for explaining an example of the flow of the decoding process. It is a flowchart explaining the example of the flow of loop filter processing. It is a figure explaining the example of I_PCM information.
  • It is a block diagram which shows the main structural examples of a personal computer. It is a block diagram which shows the main structural examples of a television receiver. It is a block diagram which shows the main structural examples of a mobile telephone. It is a block diagram which shows the main structural examples of a hard disk recorder. It is a block diagram which shows the main structural examples of a camera.
  • FIG. 11 shows a configuration of an embodiment of an image coding apparatus that codes an image according to H.264 and MPEG (Moving Picture Experts Group) 4 Part 10 (AVC (Advanced Video Coding)) coding method.
  • the image coding apparatus 100 shown in FIG. 1 is an apparatus that codes and outputs an image by a coding method based on the AVC standard.
  • the image coding apparatus 100 includes an A / D conversion unit 101, a screen rearrangement buffer 102, an operation unit 103, an orthogonal conversion unit 104, a quantization unit 105, a lossless coding unit 106, and storage. It has a buffer 107.
  • the image coding apparatus 100 further includes an inverse quantization unit 108, an inverse orthogonal transformation unit 109, an operation unit 110, a deblock filter 111, a frame memory 112, a selection unit 113, an intra prediction unit 114, a motion prediction / compensation unit 115, A selection unit 116 and a rate control unit 117 are included.
  • the A / D converter 101 A / D converts the input image data, and outputs the image data to the screen rearrangement buffer 102 for storage.
  • the screen rearrangement buffer 102 rearranges the images of frames in the stored display order into the order of frames for encoding in accordance with the GOP (Group of Picture) structure.
  • the screen rearrangement buffer 102 supplies the image in which the order of the frames is rearranged to the calculation unit 103.
  • the screen rearrangement buffer 102 also supplies the image in which the order of the frames is rearranged to the intra prediction unit 114 and the motion prediction / compensation unit 115.
  • the operation unit 103 subtracts the predicted image supplied from the intra prediction unit 114 or the motion prediction / compensation unit 115 from the image read from the screen rearrangement buffer 102 via the selection unit 116, and makes the difference information orthogonal. It is output to the conversion unit 104.
  • the operation unit 103 subtracts the predicted image supplied from the intra prediction unit 114 from the image read from the screen rearrangement buffer 102. Also, for example, in the case of an image on which inter coding is performed, the operation unit 103 subtracts the predicted image supplied from the motion prediction / compensation unit 115 from the image read from the screen rearrangement buffer 102.
  • the orthogonal transformation unit 104 performs orthogonal transformation such as discrete cosine transformation and Karhunen-Loeve transformation on the difference information supplied from the calculation unit 103, and supplies the transformation coefficient to the quantization unit 105.
  • the quantization unit 105 quantizes the transform coefficient output from the orthogonal transform unit 104.
  • the quantization unit 105 sets a quantization parameter based on the information on the target value of the code amount supplied from the rate control unit 117 and performs quantization.
  • the quantization unit 105 supplies the quantized transform coefficient to the lossless encoding unit 106.
  • the lossless coding unit 106 performs lossless coding such as variable length coding and arithmetic coding on the quantized transform coefficients. Since the coefficient data is quantized under the control of the rate control unit 117, this code amount is the target value set by the rate control unit 117 (or approximate to the target value).
  • the lossless encoding unit 106 acquires information indicating intra prediction from the intra prediction unit 114, and acquires information indicating an inter prediction mode, motion vector information, or the like from the motion prediction / compensation unit 115.
  • the information which shows intra prediction is also hereafter called intra prediction mode information.
  • the information which shows the information mode which shows inter prediction is also called inter prediction mode information hereafter.
  • the lossless encoding unit 106 encodes the quantized transform coefficients, and also performs filter information, intra prediction mode information, inter prediction mode information, various information such as quantization parameters, and the like, on header information of encoded data. Make it part (multiplex).
  • the lossless encoding unit 106 supplies the encoded data obtained by the encoding to the accumulation buffer 107 for accumulation.
  • lossless encoding processing such as variable length coding or arithmetic coding is performed.
  • variable-length coding H.264 is used.
  • CAVLC Context-Adaptive Variable Length Coding
  • arithmetic coding include CABAC (Context-Adaptive Binary Arithmetic Coding).
  • the accumulation buffer 107 temporarily holds the encoded data supplied from the lossless encoding unit 106, and at a predetermined timing, the H.264 buffer is stored.
  • the encoded image encoded in the H.264 / AVC format is output to a recording apparatus, a transmission path, or the like (not shown) in the subsequent stage.
  • the transform coefficient quantized in the quantization unit 105 is also supplied to the inverse quantization unit 108.
  • the inverse quantization unit 108 inversely quantizes the quantized transform coefficient by a method corresponding to the quantization by the quantization unit 105.
  • the inverse quantization unit 108 supplies the obtained transform coefficient to the inverse orthogonal transform unit 109.
  • the inverse orthogonal transform unit 109 performs inverse orthogonal transform on the supplied transform coefficient by a method corresponding to orthogonal transform processing by the orthogonal transform unit 104.
  • the inverse orthogonal transform output (restored difference information) is supplied to the calculation unit 110.
  • the calculation unit 110 predicts the inverse orthogonal transformation result supplied from the inverse orthogonal transformation unit 109, that is, the prediction supplied from the intra prediction unit 114 or the motion prediction / compensation unit 115 via the selection unit 116 to the restored difference information.
  • the images are added to obtain a locally decoded image (decoded image).
  • the calculation unit 110 adds the prediction image supplied from the intra prediction unit 114 to the difference information. Also, for example, when the difference information corresponds to an image on which inter coding is performed, the computing unit 110 adds the predicted image supplied from the motion prediction / compensation unit 115 to the difference information.
  • the addition result is supplied to the deblocking filter 111 or the frame memory 112.
  • the deblocking filter 111 removes block distortion of the decoded image by appropriately performing deblocking filter processing.
  • the deblocking filter 111 supplies the filter processing result to the frame memory 112. Note that the decoded image output from the arithmetic unit 110 can be supplied to the frame memory 112 without passing through the deblocking filter 111. That is, the deblocking filter processing of the deblocking filter 111 can be omitted.
  • the frame memory 112 stores the supplied decoded image, and outputs the stored decoded image as a reference image to the intra prediction unit 114 or the motion prediction / compensation unit 115 via the selection unit 113 at a predetermined timing. .
  • the frame memory 112 supplies the reference image to the intra prediction unit 114 via the selection unit 113. Also, for example, when inter coding is performed, the frame memory 112 supplies the reference image to the motion prediction / compensation unit 115 via the selection unit 113.
  • the selection unit 113 supplies the reference image to the intra prediction unit 114. Further, when the reference image supplied from the frame memory 112 is an image to be subjected to inter coding, the selection unit 113 supplies the reference image to the motion prediction / compensation unit 115.
  • the intra prediction unit 114 performs intra prediction (in-screen prediction) of generating a predicted image using the pixel values in the processing target picture supplied from the frame memory 112 via the selection unit 113.
  • the intra prediction unit 114 performs this intra prediction in a plurality of modes (intra prediction modes) prepared in advance.
  • an intra 4 ⁇ 4 prediction mode, an intra 8 ⁇ 8 prediction mode, and an intra 16 ⁇ 16 prediction mode are defined for the luminance signal, and for the chrominance signal, It is possible to define a prediction mode independent of the luminance signal for each macroblock.
  • intra 4 ⁇ 4 prediction mode one intra prediction mode is defined for each 4 ⁇ 4 luminance block and for intra 8 ⁇ 8 prediction mode, for each 8 ⁇ 8 luminance block become.
  • intra 16 ⁇ 16 prediction mode and the color difference signal one prediction mode is defined for each macroblock.
  • the intra prediction unit 114 generates predicted images in all candidate intra prediction modes, evaluates the cost function value of each predicted image using the input image supplied from the screen rearrangement buffer 102, and selects the optimum mode. select. When the optimal intra prediction mode is selected, the intra prediction unit 114 supplies the predicted image generated in the optimal mode to the computing unit 103 and the computing unit 110 via the selection unit 116.
  • the intra prediction unit 114 appropriately supplies information such as intra prediction mode information indicating the adopted intra prediction mode to the lossless encoding unit 106.
  • the motion prediction / compensation unit 115 uses the input image supplied from the screen rearrangement buffer 102 and the reference image supplied from the frame memory 112 via the selection unit 113 for an image to be inter coded. Motion prediction (inter prediction) is performed, motion compensation processing is performed according to the detected motion vector, and a prediction image (inter prediction image information) is generated. The motion prediction / compensation unit 115 performs such inter prediction in a plurality of modes (inter prediction modes) prepared in advance.
  • the motion prediction / compensation unit 115 generates prediction images in all the candidate inter prediction modes, evaluates the cost function value of each prediction image, and selects an optimal mode.
  • the motion prediction / compensation unit 115 supplies the generated predicted image to the calculation unit 103 and the calculation unit 110 via the selection unit 116.
  • the motion prediction / compensation unit 115 supplies, to the lossless coding unit 106, inter prediction mode information indicating the adopted inter prediction mode, and motion vector information indicating the calculated motion vector.
  • the selection unit 116 supplies the output of the intra prediction unit 114 to the calculation unit 103 and the calculation unit 110 in the case of an image to be subjected to intra coding, and the output of the motion prediction / compensation unit 115 in the case of an image to be inter coded. It is supplied to the calculation unit 103 and the calculation unit 110.
  • the rate control unit 117 controls the rate of the quantization operation of the quantization unit 105 based on the compressed image stored in the storage buffer 107 so that overflow or underflow does not occur.
  • FIG. 2 is a block diagram showing an example of a main configuration of an image decoding apparatus for realizing image compression by orthogonal transformation such as discrete cosine transformation or Karhunen-Loeve transformation and motion compensation.
  • the image decoding apparatus 200 shown in FIG. 2 is a decoding apparatus corresponding to the image coding apparatus 100 of FIG.
  • the encoded data encoded by the image encoding device 100 is supplied to the image decoding device 200 corresponding to the image encoding device 100 via any route, for example, a transmission path, a recording medium, etc. .
  • the image decoding apparatus 200 includes an accumulation buffer 201, a lossless decoding unit 202, an inverse quantization unit 203, an inverse orthogonal transformation unit 204, an operation unit 205, a deblock filter 206, a screen rearrangement buffer 207, And a D / A converter 208.
  • the image decoding apparatus 200 further includes a frame memory 209, a selection unit 210, an intra prediction unit 211, a motion prediction / compensation unit 212, and a selection unit 213.
  • the accumulation buffer 201 accumulates the transmitted encoded data.
  • the encoded data is encoded by the image encoding device 100.
  • the lossless decoding unit 202 decodes the encoded data read from the accumulation buffer 201 at a predetermined timing in a method corresponding to the encoding method of the lossless encoding unit 106 in FIG. 1.
  • intra prediction mode information is stored in the header portion of the encoded data.
  • the lossless decoding unit 202 also decodes this intra prediction mode information, and supplies the information to the intra prediction unit 211.
  • motion vector information is stored in the header portion of the coded data.
  • the lossless decoding unit 202 also decodes this motion vector information, and supplies the information to the motion prediction / compensation unit 212.
  • the inverse quantization unit 203 inversely quantizes the coefficient data (quantization coefficient) obtained by being decoded by the lossless decoding unit 202, using a method corresponding to the quantization method of the quantization unit 105 in FIG. That is, the inverse quantization unit 203 performs inverse quantization on the quantization coefficient in the same manner as the inverse quantization unit 108 in FIG.
  • the inverse quantization unit 203 supplies the inversely quantized coefficient data, that is, the orthogonal transformation coefficient to the inverse orthogonal transformation unit 204.
  • the inverse orthogonal transformation unit 204 performs inverse orthogonal transformation on the orthogonal transformation coefficient according to a scheme (similar to the inverse orthogonal transformation unit 109 in FIG. 1) corresponding to the orthogonal transformation scheme of the orthogonal transformation unit 104 in FIG. Decoding residual data corresponding to residual data before being orthogonally transformed in the coding apparatus 100 is obtained. For example, fourth-order inverse orthogonal transformation is performed.
  • the decoded residual data obtained by the inverse orthogonal transform is supplied to the arithmetic unit 205. Further, the prediction image is supplied to the calculation unit 205 from the intra prediction unit 211 or the motion prediction / compensation unit 212 via the selection unit 213.
  • Arithmetic unit 205 adds the decoded residual data and the predicted image to obtain decoded image data corresponding to the image data before the predicted image is subtracted by arithmetic unit 103 of image coding apparatus 100.
  • the operation unit 205 supplies the decoded image data to the deblocking filter 206.
  • the deblocking filter 206 removes block distortion of the supplied decoded image and then supplies the screen rearrangement buffer 207.
  • the screen rearrangement buffer 207 rearranges the images. That is, the order of the frames rearranged for the order of encoding by the screen rearrangement buffer 102 in FIG. 1 is rearranged in the order of the original display.
  • the D / A conversion unit 208 D / A converts the image supplied from the screen rearrangement buffer 207, and outputs the image to a display (not shown) for display.
  • the output of the deblocking filter 206 is further supplied to a frame memory 209.
  • the frame memory 209, the selection unit 210, the intra prediction unit 211, the motion prediction / compensation unit 212, and the selection unit 213 are the frame memory 112, the selection unit 113, the intra prediction unit 114, and the motion prediction / compensation unit of the image coding apparatus 100. 115 and the selection unit 116 respectively.
  • the selection unit 210 reads out the image to be inter-processed and the image to be referred to from the frame memory 209, and supplies the image to the motion prediction / compensation unit 212. In addition, the selection unit 210 reads an image used for intra prediction from the frame memory 209 and supplies the image to the intra prediction unit 211.
  • the intra prediction unit 211 generates a prediction image from the reference image acquired from the frame memory 209 based on this information, and supplies the generated prediction image to the selection unit 213.
  • the motion prediction / compensation unit 212 acquires information (prediction mode information, motion vector information, reference frame information, flags, various parameters, and the like) obtained by decoding header information from the lossless decoding unit 202.
  • the motion prediction / compensation unit 212 generates a prediction image from the reference image acquired from the frame memory 209 based on the information supplied from the lossless decoding unit 202, and supplies the generated prediction image to the selection unit 213.
  • the selection unit 213 selects the prediction image generated by the motion prediction / compensation unit 212 or the intra prediction unit 211, and supplies the prediction image to the calculation unit 205.
  • Patent Document 1 By the way, as disclosed in Patent Document 1, there is a coding mode in which image data is coded and output, and a non-coding mode in which image data is output without being coded. There is a coding method in which whether to set the coding mode is selected in units of macroblocks, and the coding mode and the non-coding mode can be mixed in one picture. As shown in Patent Document 2, also in the AVC coding method, as shown in FIG. 3, I_PCM (Intra-block) for outputting image data without coding as one of the types of macroblocks (mb_type). Pulse code modulation (uncompressed) mode is supported.
  • I_PCM Intra-block
  • JM Job Model
  • JM JM it is possible to select two mode determination methods of High Complexity Mode and Low Complexity Mode described below. Both calculate the cost function value regarding each prediction mode Mode, and select the prediction mode which makes this the minimum as the optimal mode with respect to the said block thru
  • Equation (1) The cost function in the High Complexity Mode is as shown in Equation (1) below.
  • is the entire set of candidate modes for encoding the block or macroblock
  • D is the difference energy between the decoded image and the input image when encoded in the prediction mode Mode
  • is a Lagrange undetermined multiplier given as a function of the quantization parameter
  • R is a total code amount in the case of coding in the mode, which includes orthogonal transform coefficients.
  • D is the difference energy between the predicted image and the input image, unlike in the case of the High Complexity Mode.
  • QP2Quant QP
  • HeaderBit is a code amount related to information belonging to the Header, such as a motion vector or a mode, which does not include an orthogonal transformation coefficient.
  • Coding Unit also referred to as Coding Tree Block (CTB)
  • CTB Coding Tree Block
  • CU also referred to as Coding Tree Block
  • the macroblock is fixed at a size of 16 ⁇ 16 pixels, whereas the size of a CU is not fixed, and will be specified in image compression information in each sequence.
  • the CU having the largest size is referred to as a Largest Coding Unit (LCU), and the CU having the smallest size is referred to as a Smallest Coding Unit (SCU).
  • LCU Largest Coding Unit
  • SCU Smallest Coding Unit
  • SPS sequence parameter set
  • the size of these areas is specified, but each is limited to a square and a size represented by a power of two.
  • FIG. 4 shows an example of a coding unit defined in HEVC.
  • the size of LCU is 128, and the maximum hierarchical depth is 5.
  • split_flag is “1”
  • a 2N ⁇ 2N-sized CU is divided into an N ⁇ N-sized CU, which is one level lower.
  • a CU is divided into prediction units (Prediction Units (PUs)), which are regions serving as processing units for intra or inter prediction (partial regions of images in units of pictures), and regions serving as processing units for orthogonal transformation. It is divided into transform units (Transform Units (TUs)), which are (partial areas of an image in picture units).
  • Prediction Units PUs
  • transform units Transform Units (TUs)
  • TUs Transform Units
  • Non-Patent Document 2 proposes a method (IBDI (Internal bit depth increase except frame memory)) for increasing the internal operation as shown in FIG.
  • IBDI Internal bit depth increase except frame memory
  • the bit depth is expanded, for example, from 8 bits to 12 bits.
  • Non-Patent Document 3 As shown in FIG. 5, an FIR filter is included in a motion compensation loop, and loop filter processing (BALF (Block-based Adaptive Loop Filter)) is adaptively performed by the filter.
  • BALF Block-based Adaptive Loop Filter
  • the deterioration in the reference image is minimized by obtaining the FIR filter coefficient by the Wiener filter so as to minimize the error with the input image, and the coding efficiency of the image compression information to be output It is possible to improve
  • I_PCM mode is set in LCU units as in AVC, even in such a coding method, the unit of processing is larger than in AVC, for example, 128 ⁇ 128 pixel units. turn into.
  • the modes of intra prediction and inter prediction are determined by calculating and comparing cost function values as described above. That is, prediction and encoding are performed in all modes, cost function values are calculated, optimal modes are selected, and encoded data is generated in the optimal modes.
  • the coded data generated in the optimum mode is discarded, and the input image (non-coded data) is adopted as the coding result as it is. Therefore, when the I_PCM mode is selected, all processing for generating encoded data of the optimal mode becomes unnecessary processing. That is, when the unit of selection control in the I_PCM mode is increased, unnecessary processing is further increased. That is, as described above, if it is selected whether to adopt the I_PCM mode for each LCU, there is a possibility that the efficiency of the encoding process is further reduced. Thus, for example, it may be difficult to guarantee the real-time operation of CABAC.
  • selection of the I_PCM mode can be controlled in more detail, and coding efficiency can be improved while suppressing reduction in the coding processing efficiency. Do. Also, according to the selection of the I_PCM mode, the presence or absence of the execution of IBDI or BALF can be appropriately controlled to further suppress the reduction in the efficiency of the encoding process.
  • FIG. 7 is a block diagram showing a main configuration example of the image coding apparatus.
  • An image coding apparatus 300 shown in FIG. 7 is basically the same apparatus as the image coding apparatus 100 of FIG. 1 and codes image data.
  • the image coding apparatus 300 includes an A / D conversion unit 301, a screen rearrangement buffer 302, an adaptive left shift unit 303, an operation unit 304, an orthogonal conversion unit 305, a quantization unit 306, and lossless coding. And an accumulation buffer 308.
  • the image coding apparatus 300 further includes an inverse quantization unit 309, an inverse orthogonal transformation unit 310, an operation unit 311, a loop filter 312, an adaptive right shift unit 313, a frame memory 314, an adaptive left shift unit 315, a selection unit 316, and an intra A prediction unit 317, a motion prediction / compensation unit 318, a selection unit 319, and a rate control unit 320 are included.
  • the image coding apparatus 300 further includes a PCM coding unit 321.
  • the A / D converter 301 A / D converts the input image data.
  • the A / D conversion unit 301 supplies the converted image data (digital data) to the screen rearrangement buffer 302 for storage.
  • the screen rearrangement buffer 302 arranges the images of the stored display order frames according to the GOP (Group of Picture) structure in the order of frames for encoding. Change.
  • the screen rearrangement buffer 302 supplies the image in which the order of the frames is rearranged to the adaptive left shift unit 303.
  • the screen rearrangement buffer 302 also supplies the image in which the order of the frames is rearranged to the lossless encoding unit 307 and the PCM encoding unit 321.
  • the adaptive left shift unit 303 is controlled by the PCM encoding unit 321, shifts the image data read from the screen rearrangement buffer 302 in the left direction, and increases its bit depth by a predetermined number of bits (for example, 4 bits). For example, the adaptive left shift unit 303 increases the bit depth of the image data read from the screen rearrangement buffer 302 from 8 bits to 12 bits. By thus increasing the bit depth, it is possible to improve the accuracy of the internal operation in each process such as orthogonal transformation process, quantization process, lossless encoding process, and prediction process, and to suppress an error.
  • the left shift amount (bit amount) is arbitrary and may be a fixed value or variable. Further, under the control of the PCM encoding unit 321, this left shift process may be skipped (skipped).
  • the adaptive left shift unit 303 supplies the image data after the left shift process (to the image data output from the screen rearrangement buffer 302 as it is when the process is omitted (skipped)) to the operation unit 304.
  • the adaptive left shift unit 303 also supplies the image data to the intra prediction unit 317 and the motion prediction / compensation unit 318.
  • the operation unit 304 uses the selection unit 319 to generate a predicted image supplied from the intra prediction unit 317 or the motion prediction / compensation unit 318 from the image supplied from the adaptive left shift unit 303. Subtract. Arithmetic unit 304 outputs the difference information to orthogonal transform unit 305.
  • the operation unit 304 subtracts the predicted image supplied from the intra prediction unit 317 from the image supplied from the adaptive left shift unit 303. Also, for example, in the case of an image on which inter coding is performed, the operation unit 304 subtracts the predicted image supplied from the motion prediction / compensation unit 318 from the image supplied from the adaptive left shift unit 303.
  • the orthogonal transformation unit 305 performs orthogonal transformation such as discrete cosine transformation and Karhunen-Loeve transformation on the difference information supplied from the calculation unit 304.
  • the method of this orthogonal transformation is arbitrary.
  • the orthogonal transform unit 305 supplies the transform coefficient to the quantization unit 306.
  • the quantization unit 306 quantizes the transform coefficient supplied from the orthogonal transform unit 305 as in the case of the quantization unit 105.
  • the quantization unit 306 sets a quantization parameter based on the information on the target value of the code amount supplied from the rate control unit 320 and performs the quantization. In addition, the method of this quantization is arbitrary.
  • the quantization unit 306 supplies the quantized transform coefficient to the lossless encoding unit 307.
  • the lossless coding unit 307 applies lossless coding such as variable-length coding and arithmetic coding to the transform coefficients quantized in the quantization unit 306. Since the coefficient data is quantized under the control of the rate control unit 320, this code amount is the target value set by the rate control unit 320 (or approximate to the target value).
  • the lossless encoding unit 307 sets the input image (non-encoded data) supplied from the screen rearrangement buffer 302 as the encoding result (that is, actually) Encoding is skipped (skipped).
  • the lossless encoding unit 307 acquires information indicating the mode of intra prediction from the intra prediction unit 317 and acquires information indicating the mode of inter prediction, motion vector information, or the like from the motion prediction / compensation unit 318. Further, the lossless encoding unit 307 obtains the filter coefficient used in the loop filter 312.
  • the lossless encoding unit 307 encodes various kinds of information such as the filter coefficient, the information indicating the mode of intra prediction or inter prediction, and the quantization parameter in the same manner as in the case of the lossless encoding unit 106, and Make it part of header information (multiplex).
  • the lossless encoding unit 307 supplies encoded data (including uncoded data in the case of I_PCM mode) obtained by encoding to the accumulation buffer 308 for accumulation.
  • lossless encoding processing such as variable-length coding or arithmetic coding is performed.
  • variable-length coding H.264 is used.
  • CAVLC Context-Adaptive Variable Length Coding
  • arithmetic coding include CABAC (Context-Adaptive Binary Arithmetic Coding).
  • CABAC Context-Adaptive Binary Arithmetic Coding
  • the accumulation buffer 308 temporarily holds the encoded data (including uncoded data in the I_PCM mode) supplied from the lossless encoding unit 307.
  • the accumulation buffer 308 outputs, at a predetermined timing, the held encoded data to, for example, a recording device (recording medium), a transmission path, or the like (not shown) in the subsequent stage.
  • the transform coefficient quantized in the quantization unit 306 is also supplied to the inverse quantization unit 309.
  • the inverse quantization unit 309 inversely quantizes the quantized transform coefficient in a method corresponding to the quantization by the quantization unit 306 as in the case of the inverse quantization unit 108.
  • the inverse quantization method may be any method as long as it corresponds to the quantization process by the quantization unit 306.
  • the inverse quantization unit 309 supplies the obtained transform coefficient to the inverse orthogonal transform unit 310.
  • the inverse orthogonal transform unit 310 performs inverse orthogonal transform on the transform coefficient supplied from the inverse quantization unit 309 by a method corresponding to orthogonal transform processing by the orthogonal transform unit 305 as in the case of the inverse orthogonal transform unit 109. Any method may be used as this inverse orthogonal transformation method as long as it corresponds to the orthogonal transformation processing by the orthogonal transformation unit 305.
  • the inverse orthogonal transform output (restored difference information) is supplied to the calculation unit 311.
  • the operation unit 311 performs the intra prediction unit 317 or motion prediction via the selection unit 319 according to the inverse orthogonal transformation result supplied from the inverse orthogonal transformation unit 310, that is, the restored difference information.
  • the predicted image supplied from the compensation unit 318 is added to obtain a locally decoded (locally decoded) image (decoded image).
  • the calculation unit 311 adds the prediction image supplied from the intra prediction unit 317 to the difference information. Also, for example, when the difference information corresponds to an image on which inter coding is performed, the calculation unit 311 adds the predicted image supplied from the motion prediction / compensation unit 318 to the difference information.
  • the addition result (decoded image) is supplied to the loop filter 312 or the adaptive right shift unit 313.
  • the loop filter 312 includes a deblocking filter, an adaptive loop filter, and the like, and appropriately filters the decoded image supplied from the calculation unit 311.
  • the loop filter 312 removes block distortion of the decoded image by performing deblocking filter processing similar to that of the deblocking filter 111 on the decoded image.
  • the loop filter 312 is controlled by the PCM encoding unit 321, and uses a Wiener filter for the deblock filter processing result (decoded image from which block distortion has been removed). Image quality is improved by performing loop filter processing. Note that this adaptive loop filter process may be skipped (skipped) under the control of the PCM encoding unit 321.
  • the loop filter 312 may perform arbitrary filter processing on the decoded image.
  • the loop filter 312 can also supply the filter coefficient used for the filtering process to the lossless encoding unit 307, as needed, to encode it.
  • the loop filter 312 supplies the filter processing result (decoded image after filter processing) to the adaptive right shift unit 313.
  • the decoded image output from the calculation unit 311 can be supplied to the adaptive right shift unit 313 without passing through the loop filter 312. That is, the filter processing by the loop filter 312 can be omitted (skipped).
  • the adaptive right shift unit 313 is controlled by the PCM encoding unit 321, shifts the image data supplied from the operation unit 311 or the loop filter 312 to the right, and reduces its bit depth by a predetermined number of bits (for example, 4 bits). . That is, the adaptive right shift unit 313 shifts the bit depth of the image data to the right by the number of bits shifted to the left in the adaptive left shift unit 303 and shifts the bit depth of the image data to the left (read from the screen rearrangement buffer 302 State).
  • the adaptive right shift unit 313 reduces the bit depth of the image data supplied from the calculation unit 311 or the loop filter 312 from 12 bits to 8 bits. By reducing the bit depth in this manner, it is possible to reduce the amount of image data stored in the frame memory.
  • the right shift amount (bit amount) is arbitrary as long as it matches the left shift amount in the adaptive left shift unit 303. That is, it may be a fixed value or may be variable. Also, under the control of the PCM encoding unit 321, this right shift processing may be skipped (skipped).
  • the adaptive right shift unit 313 supplies the image data after the right shift process to the frame memory 314 (when the process is skipped (skipped), the image data output from the operation unit 311 or the loop filter 312 is unchanged).
  • the frame memory 314 stores the supplied decoded image, and outputs the stored decoded image as a reference image to the adaptive left shift unit 315 at a predetermined timing.
  • the adaptive left shift unit 315 is a processing unit similar to the adaptive left shift unit 303, is controlled by the PCM encoding unit 321, and appropriately shifts the image data (reference image) read from the frame memory 314 in the left direction.
  • the bit depth is increased by a predetermined number of bits (for example, 4 bits).
  • the adaptive left shift unit 315 shifts the data of the reference image read from the frame memory 314 to the left according to the control of the PCM encoding unit 321, and the bit depth is the same as that of the adaptive left shift unit 303.
  • Increase eg, change the bit depth from 8 bits to 12 bits).
  • the adaptive left shift unit 315 supplies the image data after the left shift process to the selection unit 316.
  • the bit depth of the reference image can be matched to the bit depth of the input image, and the reference image can be added to the input image. Further, the accuracy of the internal calculation such as the prediction process can be improved to suppress the error.
  • the adaptive left shift unit 315 supplies the reference image read from the frame memory 314 to the selection unit 316 without increasing the bit depth according to the control of the PCM encoding unit 321.
  • the selection unit 316 supplies the reference image supplied from the adaptive left shift unit 315 to the intra prediction unit 317 in the case of intra prediction. Further, in the case of inter prediction, the selection unit 316 supplies the reference image supplied from the adaptive left shift unit 315 to the motion prediction / compensation unit 318 as in the case of the selection unit 113.
  • the intra prediction unit 317 performs intra prediction (in-screen prediction) of generating a predicted image using the reference image supplied from the adaptive left shift unit 315 via the selection unit 316.
  • the intra prediction unit 317 performs this intra prediction in a plurality of modes (intra prediction modes) prepared in advance.
  • the intra prediction unit 317 can also perform this intra prediction in any mode other than the mode specified in the AVC coding scheme.
  • the intra prediction unit 317 generates predicted images in all candidate intra prediction modes, evaluates the cost function value of each predicted image using the input image supplied from the adaptive left shift unit 303, and selects the optimal mode. select. When the optimal intra prediction mode is selected, the intra prediction unit 317 supplies the predicted image generated in the optimal mode to the computation unit 304 or the computation unit 311 via the selection unit 319.
  • the intra prediction unit 317 appropriately supplies information such as intra prediction mode information indicating the adopted intra prediction mode to the lossless encoding unit 307 and causes the information to be encoded.
  • the motion prediction / compensation unit 318 uses the input image supplied from the adaptive left shift unit 303 and the reference image supplied from the adaptive left shift unit 315 via the selection unit 316 for an image to be inter coded. Then, motion prediction (inter prediction) is performed, motion compensation processing is performed according to the detected motion vector, and a predicted image (inter predicted image information) is generated.
  • the motion prediction / compensation unit 318 performs such inter prediction in a plurality of modes (inter prediction modes) prepared in advance.
  • the motion prediction / compensation unit 318 can also perform this inter prediction in any mode other than the mode specified in the AVC coding scheme.
  • the motion prediction / compensation unit 318 generates prediction images in all the candidate inter prediction modes, evaluates the cost function value of each prediction image, and selects an optimal mode.
  • the motion prediction / compensation unit 318 selects the optimal inter prediction mode, the motion prediction / compensation unit 318 supplies the prediction image generated in the optimal mode to the computation unit 304 or the computation unit 311 via the selection unit 319.
  • the motion prediction / compensation unit 318 supplies the inter prediction mode information indicating the adopted inter prediction mode and the motion vector information indicating the calculated motion vector to the lossless encoding unit 307 for encoding.
  • the selection unit 319 supplies the output of the intra prediction unit 317 to the calculation unit 304 and the calculation unit 311 in the case of an image in which intra coding is performed, and in the case of an image in which inter coding is performed.
  • the output of the motion prediction / compensation unit 318 is supplied to the calculation unit 304 and the calculation unit 311.
  • the rate control unit 320 controls the rate of the quantization operation of the quantization unit 306 based on the code amount of the encoded data accumulated in the accumulation buffer 308 so that an overflow or an underflow does not occur.
  • the rate control unit 320 supplies the code amount (generated code amount) of the encoded data stored in the storage buffer 308 to the PCM encoding unit 321.
  • the PCM encoding unit 321 compares the code amount supplied from the rate control unit 320 with the data amount of the input image supplied from the screen rearrangement buffer 302, and selects whether to adopt the I_PCM mode. At this time, the PCM encoding unit 321 performs this selection in CU units smaller than the LCU. That is, the PCM encoding unit 321 controls in more detail whether or not the I_PCM mode is selected.
  • the PCM coding unit 321 controls the operations of the lossless coding unit 307, the adaptive left shift unit 303, the adaptive right shift unit 313, the adaptive left shift unit 315, and the loop filter 312 according to the selection result.
  • FIG. 8 is a block diagram showing a main configuration example of the lossless encoding unit 307, the PCM encoding unit 321, and the loop filter 312 of FIG.
  • the lossless encoding unit 307 includes a NAL (Network Abstraction Layer) encoding unit 331 and a CU encoding unit 332.
  • NAL Network Abstraction Layer
  • the NAL encoding unit 33 for example, NAL such as a sequence parameter set (SPS (Sequence Parameter Set) or PPS (Picture Parameter Set)) based on a user instruction input via a user interface (not shown) or specifications and the like.
  • the NAL coding unit 331 supplies the coded NAL (NAL data) to the accumulation buffer 308, and the encoded VCL (Video Coding Layer) supplied from the CU coding unit 332 to the accumulation buffer 308. To be added to the CU data.
  • SPS Sequence Parameter Set
  • PPS Picture Parameter Set
  • the CU encoding unit 332 is controlled by the PCM encoding unit 321 (based on the On / Off control signal supplied from the PCM encoding unit 321) to encode VCL. For example, when the I_PCM mode is not selected by the PCM encoding unit 321 (when a control signal indicating “On” is supplied from the PCM encoding unit 321), the CU encoding unit 332 quantizes each CU. Encode the orthogonal transform coefficients. The CU encoding unit 332 supplies the encoded data (CU data) of each encoded CU to the accumulation buffer 308.
  • the CU encoding unit 332 when the I_PCM mode is selected by the PCM encoding unit 321 (when a control signal indicating “Off” is supplied from the PCM encoding unit 321), the CU encoding unit 332 generates the screen rearrangement buffer 302. Are supplied to the accumulation buffer 308 as a coding result (CU data).
  • the CU encoding unit 332 also encodes a flag (I_PCM_flag), which is supplied from the PCM encoding unit 321 and indicates whether the encoding mode is the I_PCM mode, and supplies it to the accumulation buffer 308 as CU data. . Further, the CU encoding unit 332 encodes information related to filter processing such as an adaptive filter flag and a filter coefficient supplied from the loop filter 312, and supplies the encoded information as CU data to the accumulation buffer 308.
  • I_PCM_flag a flag supplied from the PCM encoding unit 321 and indicates whether the encoding mode is the I_PCM mode
  • the method of encoding by the CU encoding unit 332 is arbitrary (for example, CABAC, CAVLC, etc.).
  • the NAL data and CU data supplied to the accumulation buffer 308 are combined and accumulated.
  • the PCM encoding unit 321 controls whether to select the I_PCM mode using the code amount of encoded data obtained by encoding the orthogonal transformation coefficient quantized by the CU encoding unit 332. Do.
  • the encoded data supplied to the accumulation buffer 308 is adopted as it is as the encoding result of the quantized orthogonal transformation coefficient of the CU. Therefore, the CU encoding unit 332 may perform only encoding of additional information such as I_PCM_flag.
  • the CU encoding unit 332 sets the input pixel value of the corresponding CU supplied from the screen rearrangement buffer 302 as the encoding result (CU data) in the accumulation buffer 308. Supply. Therefore, in this case, the already supplied encoded data of the CU (encoded data obtained by encoding the quantized orthogonal transformation coefficient) is discarded. That is, all the processes related to the generation of the encoded data become redundant processes.
  • the PCM encoding unit 321 includes an I_PCM_flag generation unit 341 and a PCM determination unit 342.
  • the I_PCM_flag generation unit 341 generates I_PCM_flag according to the determination of the PCM determination unit 342, and determines the value thereof.
  • the I_PCM_flag generation unit 341 supplies the generated I_PCM_flag to the CU encoding unit 332 of the lossless encoding unit 307. For example, when the PCM determination unit 342 selects the I_PCM mode, the I_PCM_flag generation unit 341 sets the value of I_PCM_flag to a value (for example, “1”) indicating that the I_PCM mode is selected, and the I_PCM_flag is a CU code It supplies to the conversion unit 332.
  • the I_PCM_flag generation unit 341 sets the value of I_PCM_flag to a value (for example, “0”) indicating that the I_PCM mode is not selected. , And supplies the I_PCM_flag to the CU encoding unit 332.
  • the PCM determination unit 342 determines whether to set the coding mode to the I_PCM mode.
  • the PCM determination unit 342 obtains the data amount of the input pixel value supplied from the screen rearrangement buffer 302, compares it with the generated code amount supplied from the rate control unit 320, and selects the I_PCM mode based on the comparison result. Decide whether to The PCM determination unit 342 controls the operation according to the selection result by supplying the On / Off control signal indicating the selection result to the CU encoding unit 332 and the I_PCM_flag generation unit 341.
  • the PCM determination unit 342 when the data amount of the input pixel value is larger than the generated code amount, the PCM determination unit 342 does not select the I_PCM mode. In this case, the PCM determination unit 342 supplies a control signal indicating “On” to the CU encoding unit 332, and causes the CU encoding unit 332 to encode the quantized orthogonal transformation coefficient. Also, the PCM determination unit 342 supplies a control signal indicating “On” to the I_PCM_flag generation unit 341, and generates I_PCM_flag of a value (for example, “0”) indicating that the I_PCM mode is not selected.
  • the PCM determination unit 342 selects the I_PCM mode.
  • the PCM determination unit 342 supplies a control signal indicating "Off" to the CU encoding unit 332, and causes the input pixel value to be output as an encoding result (CU data).
  • the PCM determination unit 342 supplies a control signal indicating "Off” to the I_PCM_flag generation unit 341, and generates I_PCM_flag of a value (for example, "1") indicating that the I_PCM mode is selected.
  • the PCM determination unit 342 performs determination of whether or not to select such an I_PCM mode for each size (an arbitrary hierarchy) of CUs set in the sequence parameter set, not only the LCU. Can. This makes it possible, for example, to limit the generation of a large number of bits in the low QP by the I_PCM mode in units of smaller CUs, so that the code amount (unsigned by I_PCM mode) Not only can the control of the volume data (including the amount of data) be performed in more detail, but also the redundant processing that occurs in the I_PCM mode can be reduced.
  • the PCM determination unit 342 supplies the On / Off control signal indicating the selection result to the adaptive left shift unit 303, the adaptive right shift unit 313, and the adaptive left shift unit 315 to control the IBDI according to the selection result. I do. That is, when the CU is in the I_PCM mode, the PCM determination unit 342 controls so that the adaptive shift device does not perform the process of increasing and decreasing the bit precision.
  • the PCM determination unit 342 supplies a control signal indicating “On” to the adaptive left shift unit 303, the adaptive right shift unit 313, and the adaptive left shift unit 315, and performs left shift processing. Or execute right shift processing so that extension of bit precision in internal processing is performed.
  • the PCM determination unit 342 supplies a control signal indicating “Off” to the adaptive left shift unit 303, the adaptive right shift unit 313, and the adaptive left shift unit 315, The left shift process and the right shift process are skipped (skipped) so that extension of bit precision in internal processing is not performed.
  • the PCM determination unit 342 can eliminate such redundant processing by performing the processing as described above.
  • the PCM determination unit 342 controls the adaptive loop filter processing (BALF) according to the selection result by supplying the On / Off control signal indicating the selection result to the loop filter 312. That is, when the CU is in the I_PCM mode, the PCM determination unit 342 performs control such that the adaptive loop filter process by the loop filter 312 is not performed.
  • BALF adaptive loop filter processing
  • the PCM determination unit 342 supplies a control signal indicating “On” to the loop filter 312 so that adaptive loop filter processing is performed.
  • the PCM determination unit 342 supplies a control signal indicating “Off” to the loop filter 312 to skip (skip) adaptive loop filter processing.
  • the PCM determination unit 342 can eliminate such redundant processing by performing the processing as described above.
  • the loop filter 312 includes a deblocking filter 351, a pixel sorting unit 352, a filter coefficient calculation unit 353, and a filtering unit 354.
  • the deblocking filter 351 removes block distortion by performing deblocking filter processing on the decoded image (pixel values before deblocking filter) supplied from the calculation unit 311.
  • the CU adjacent to the CU is not necessarily processed in the I_PCM mode. Therefore, even if the CU is processed in I_PCM mode, block distortion may occur. Therefore, deblocking filter processing is performed regardless of whether the CU is in the I_PCM mode.
  • the deblocking filter 351 supplies the filter processing result (pixel value after deblocking filter) to the pixel sorting unit 352.
  • the pixel sorting unit 352 performs adaptive loop filter processing on each filter processing result (pixel value after deblocking filter) according to the value of the On / Off control signal supplied from the PCM determination unit 342, and adaptive loop filter Sort into pixel values not to be processed.
  • the pixel sorting unit 352 sorts the deblock filtered pixel values of the CU into pixel values on which the adaptive loop filter process is performed.
  • the pixel sorting unit 352 does not perform adaptive loop filter processing on the pixel value after deblocking filter of the CU. Sort by value.
  • the pixel sorting unit 352 supplies the pixel value (pixel value after deblocking filter) of each sorted pixel to the filter coefficient calculation unit 353.
  • the filter coefficient calculation unit 353 sets the filter coefficient (FIR filter coefficient) of the adaptive loop filter for the pixel value classified into one to be subjected to the adaptive loop filter processing among the supplied pixel values after deblocking filter as the input image Calculate with a Wiener Filter so as to minimize the error with. That is, the filter coefficient calculation unit 353 calculates filter coefficients except for pixels processed in the I_PCM mode.
  • the filter coefficient calculation unit 353 supplies the post-deblocking filter pixel value and the calculated filter coefficient to the filtering unit 354.
  • the filtering unit 354 performs adaptive loop filter processing (adaptive loop filter processing) on the pixel values classified to one performing adaptive loop filter processing using the supplied filter coefficient.
  • the filtering unit 354 supplies the pixel value after the filtering process and the pixel value classified to one that does not perform the adaptive loop filtering process to the adaptive right shift unit 313 as a pixel value after adaptive filtering.
  • the filtering unit 354 also generates an adaptive filter flag (on / off_flag), which is filter identification information indicating whether or not filtering has been performed, for each predetermined block that is set independently of the CU.
  • an adaptive filter flag (on / off_flag)
  • the method of setting the value of this adaptive filter flag is arbitrary.
  • the adaptive filter flag when adaptive loop filter processing is performed on some or all of the pixels in the block (current block) to be processed, the adaptive filter flag has a value indicating that filter processing has been performed (for example, “ 1) may be set. Also, for example, when all the pixels in the block are not subjected to adaptive loop filter processing, the adaptive filter flag is set to a value (for example, “0”) indicating that filter processing is not performed. It is also good.
  • the value of the adaptive filter flag may be set based on other criteria.
  • the filtering unit 354 supplies the generated adaptive filter flag to the CU encoding unit 332 of the lossless encoding unit 307, causes the CU encoding unit 332 to perform encoding, and provides the decoding side.
  • the value of the adaptive filter flag is a value (for example, “0”) indicating that the filtering process is not performed, the provision to the decoding side is omitted (the adaptive filter flag is not provided to the decoding side) Can).
  • the value of the adaptive filter flag is a value (for example, “0”) indicating that filter processing is not performed
  • the coding method of the lossless encoding unit 307 (CU encoding unit 332) is VLC.
  • the filtering unit 354 omits the supply of the adaptive filter flag (does not provide it to the decoding side).
  • the value of the adaptive filter flag is a value (for example, “0”) indicating that filter processing is not performed
  • the coding method of the lossless coding unit 307 (CU coding unit 332) is
  • the filtering unit 354 supplies this adaptive filter flag to the CU encoding unit 332 of the lossless encoding unit 307 (provides to the decoding side).
  • the filtering unit 354 supplies the filter coefficient used for the adaptive loop filter processing to the CU coding unit 332 of the lossless coding unit 307, causes the CU coding unit 332 to code, and provides the same to the decoding side.
  • FIG. 9 is a block diagram showing an example of the main configuration of the PCM determination unit 342 of FIG.
  • the PCM determination unit 342 includes an input data amount calculation unit 361, a PCM determination unit 362, an encoding control unit 363, an adaptive shift control unit 364, and a filter control unit 365.
  • the input data amount calculation unit 361 calculates the input data amount which is the data amount of the input pixel value supplied from the screen rearrangement buffer 302 for the CU, and supplies the calculated input data amount to the PCM determination unit 362.
  • the PCM determination unit 362 acquires the generated code amount (generated bit) supplied from the rate control unit 320, compares it with the input data amount supplied from the input data amount calculation unit 361, and based on the comparison result, It is determined whether or not to select the I_PCM mode for. That is, the PCM determination unit 362 determines whether to select the I_PCM mode for each CU of an arbitrary hierarchy.
  • the PCM determination unit 362 supplies the determination result to the coding control unit 363, the adaptive shift control unit 364 and the filter control unit 365.
  • the encoding control unit 363 instructs the CU encoding unit 332 and the I_PCM_flag generation unit 341 to turn On / On.
  • the Off control signal is supplied.
  • the coding control unit 363 can control the coding mode for each CU of an arbitrary layer.
  • the encoding control unit 363 can not only control the code amount (including the data amount of non-coded data in the I_PCM mode) in more detail, but also performs redundant processing when the I_PCM mode is selected. Can be reduced.
  • the adaptive shift control unit 364 sets the adaptive left shift unit 303, the adaptive right shift unit 313, and the adaptive left shift based on the determination result (information indicating whether or not the I_PCM mode is selected) supplied from the PCM determination unit 362 An On / Off control signal is supplied to the unit 315.
  • the adaptive shift control unit 364 can perform control so as not to extend the bit depth in the internal operation in the I_PCM mode. Thereby, the adaptive shift control unit 364 can reduce redundant processing.
  • the filter control unit 365 supplies an On / Off control signal to the pixel sorting unit 352 based on the determination result (information indicating whether or not the I_PCM mode is selected) supplied from the PCM determination unit 362.
  • the filter control unit 365 can perform control so as not to execute the adaptive loop filter process in the I_PCM mode. Thus, the filter control unit 365 can reduce redundant processing.
  • the image coding apparatus 300 can reduce redundant processing and suppress reduction in the efficiency of coding processing.
  • the image coding apparatus 300 can perform selection of the I_PCM mode (non-compression mode) in more detail (for each small data unit), and can improve coding efficiency. Therefore, the image coding apparatus 300 can improve the coding efficiency while suppressing the reduction in the coding processing efficiency.
  • step S301 the A / D converter 301 A / D converts the input image.
  • step S302 the screen rearrangement buffer 302 stores the A / D converted image, and performs rearrangement from the display order of each picture to the coding order.
  • step S303 the adaptive left shift unit 303 adaptively shifts the input image to the left based on the control of the PCM encoding unit 321.
  • step S304 the adaptive left shift unit 315 adaptively left shifts the reference image.
  • step S305 the intra prediction unit 317 performs intra prediction processing in the intra prediction mode using the reference image shifted to the left in step S304.
  • step S306 the motion prediction / compensation unit 318 performs inter motion prediction processing for performing motion prediction or motion compensation in the inter prediction mode using the reference image shifted to the left in step S304.
  • the process of shifting the bit depth of the reference image to the left may be performed when the reference image is read out from the frame memory 314 in the intra prediction process or the inter motion prediction process.
  • step S307 the selection unit 319 determines the optimal mode based on the cost function values output from the intra prediction unit 317 and the motion prediction / compensation unit 318. That is, the selection unit 319 selects one of the prediction image generated by the intra prediction unit 317 and the prediction image generated by the motion prediction / compensation unit 318.
  • selection information indicating which prediction image is selected is supplied to one of the intra prediction unit 317 and the motion prediction / compensation unit 318 from which the prediction image is selected.
  • the intra prediction unit 317 supplies intra prediction mode information indicating the optimal intra prediction mode and the like to the lossless encoding unit 307.
  • the motion prediction / compensation unit 318 sends the lossless encoding unit 307 information indicating the optimal inter prediction mode and, if necessary, information according to the optimal inter prediction mode. Output.
  • information according to the optimal inter prediction mode motion vector information, flag information, reference frame information and the like can be mentioned.
  • step S308 the computing unit 304 computes the difference between the image whose bit depth has been left shifted by the process of step S303 and the predicted image selected by the process of step S307.
  • the prediction image is supplied from the motion prediction / compensation unit 318 when performing inter prediction, and from the intra prediction unit 317 when performing intra prediction, to the computation unit 304 via the selection unit 319.
  • the amount of difference data is reduced compared to the original image data. Therefore, the amount of data can be compressed as compared to the case of encoding the image as it is.
  • step S309 the orthogonal transformation unit 305 orthogonally transforms the difference information generated by the process of step S308. Specifically, orthogonal transformation such as discrete cosine transformation and Karhunen-Loeve transformation is performed, and transformation coefficients are output.
  • orthogonal transformation such as discrete cosine transformation and Karhunen-Loeve transformation is performed, and transformation coefficients are output.
  • step S310 the quantization unit 306 quantizes the orthogonal transformation coefficient obtained by the process of step S309.
  • step S311 the lossless encoding unit 307 encodes the transform coefficient quantized in the process of step S310. That is, lossless coding such as variable-length coding or arithmetic coding is performed on the difference image.
  • the lossless encoding unit 307 encodes the quantization parameter calculated in step S310 and adds the encoded parameter to the encoded data. Also, the lossless encoding unit 307 encodes information on the mode of the predicted image selected in the process of step S307, and adds the encoded data obtained by encoding the difference image. That is, the lossless encoding unit 307 also encodes the optimal intra prediction mode information supplied from the intra prediction unit 317 or the information according to the optimal inter prediction mode supplied from the motion prediction / compensation unit 318, etc. Append to data.
  • the lossless encoding unit 307 encodes the filter coefficient and the flag information acquired from the loop filter 312 and adds the encoded information to the encoded data. Furthermore, the lossless encoding unit 307 also encodes NAL data.
  • step S312 the accumulation buffer 308 accumulates the encoded data output from the lossless encoding unit 307.
  • the encoded data stored in the storage buffer 308 is appropriately read and transmitted to the decoding side via a transmission path or a recording medium.
  • step S313 the rate control unit 320 calculates the code amount (generated code amount) of the encoded data accumulated in the accumulation buffer 308 by the process of step S312, and based thereon, the overflow or underflow does not occur.
  • the rate of the quantization operation of the quantization unit 306 is controlled. Further, the rate control unit 320 supplies the generated code amount to the PCM encoding unit 321.
  • step S314 the PCM encoding unit 321 performs PCM encoding control processing using the generated code amount calculated in step S313.
  • step S315 the lossless encoding unit 307 performs PCM encoding processing according to the control of the PCM encoding unit 321.
  • step S316 the inverse quantization unit 309 to the frame memory 314 locally decode the difference information quantized in the process of step S310, and execute a reference image generation process of generating a reference image.
  • step S316 When the process of step S316 ends, the encoding process ends. This encoding process is repeatedly performed, for example, for each CU.
  • step S331 the PCM determination unit 362 of the PCM determination unit 342 supplies the encoded data of the quantized orthogonal transformation coefficient of the CU, which is supplied from the rate control unit 320. Acquire the generated code amount.
  • step S332 the input data amount calculation unit 361 calculates the input data amount of the input pixel value of the CU.
  • step S333 the PCM determination unit 362 compares the code amount acquired in step S331 with the input data amount calculated in step S332, and determines whether or not coding is to be performed in the I_PCM mode.
  • step S334 the I_PCM_flag generating unit 341 generates I_PCM_flag based on the On / Off control signal indicating the determination result of step S333 supplied by the encoding control unit 363.
  • step S335 the encoding control unit 363 controls the encoding of CU data by supplying the On / Off control signal indicating the determination result of step S333 to the CU encoding unit 332.
  • step S336 the adaptive shift control unit 364 supplies the On / Off control signal indicating the determination result of step S333 to the adaptive left shift unit 303, the adaptive right shift unit 313, and the adaptive left shift unit 315. , Control the adaptive shift process.
  • step S 337 the encoding control unit 363 controls the adaptive loop filter processing by supplying the On / Off control signal indicating the determination result of step S 333 to the pixel sorting unit 352 of the loop filter 312.
  • step S337 ends, the PCM determination unit 342 ends the PCM encoding control process, returns the process to step S314 in FIG. 10, and executes the processes of step S315 and subsequent steps.
  • step S351 the CU encoding unit 332 determines whether to perform encoding in the I_PCM mode. If it is controlled by the above-described PCM coding control processing to perform coding in the I_PCM mode, the CU coding unit 332 proceeds with the process to step S352. In step S352, the CU encoding unit 332 selects the input pixel value of the CU as an encoding result. The CU encoding unit 332 discards the CU data of the CU of the accumulation buffer 308, and accumulates the input pixel value in the accumulation buffer 308.
  • step S352 When the process of step S352 ends, the CU encoding unit 332 advances the process to step S353. If it is determined in step S351 that the encoding is not performed in the I_PCM mode, the CU encoding unit 332 causes the process to proceed to step S353.
  • step S 353 the CU encoding unit 332 encodes I_PCM_flag generated by the above-described PCM encoding control process, and causes the accumulation buffer 308 to accumulate the I_PCM_flag.
  • step S353 ends, the CU encoding unit 332 ends the PCM encoding process, returns the process to step S315 in FIG. 10, and executes the processes of step S316 and subsequent steps.
  • the adaptive left shift unit 315 determines whether the I_PCM mode is selected based on the control of the adaptive shift control unit 364 in step S371.
  • the I_PCM mode is selected, bit depth expansion in internal calculation is not performed, so prediction processing is redone. That is, when it is determined that the I_PCM mode is selected, the adaptive left shift unit 315 advances the process to step S372 without performing the left shift process on the reference image.
  • step S372 the intra prediction unit 317 performs intra prediction processing using a reference image whose bit depth is not left shifted.
  • step S 373 the motion prediction / compensation unit 318 performs inter motion prediction processing using a reference image whose bit depth has not been left shifted.
  • step S 374 the selection unit 319 determines the optimal mode based on the cost function values output from the intra prediction unit 317 and the motion prediction / compensation unit 318. That is, the selection unit 319 selects one of the prediction image generated by the intra prediction unit 317 and the prediction image generated by the motion prediction / compensation unit 318.
  • selection information indicating which prediction image is selected is supplied to one of the intra prediction unit 317 and the motion prediction / compensation unit 318 from which the prediction image is selected.
  • the intra prediction unit 317 supplies intra prediction mode information indicating the optimal intra prediction mode and the like to the lossless encoding unit 307.
  • the motion prediction / compensation unit 318 sends the lossless encoding unit 307 information indicating the optimal inter prediction mode and, if necessary, information according to the optimal inter prediction mode. Supply.
  • information according to the optimal inter prediction mode motion vector information, flag information, reference frame information and the like can be mentioned.
  • step S375 the computing unit 304 computes the difference between the input image whose bit depth has not been left-shifted and the predicted image selected in the process of step S374.
  • the prediction image is supplied from the motion prediction / compensation unit 318 when performing inter prediction, and from the intra prediction unit 317 when performing intra prediction, to the computation unit 304 via the selection unit 319.
  • step S376 the orthogonal transformation unit 305 orthogonally transforms the difference information generated by the process of step S375. Specifically, orthogonal transformation such as discrete cosine transformation and Karhunen-Loeve transformation is performed, and transformation coefficients are output.
  • step S377 the quantization unit 306 quantizes the orthogonal transformation coefficient obtained by the process of step S376.
  • the quantization unit 306 advances the process to step S378, and generation of a reference image is performed using the orthogonal transformation coefficient (data not subjected to the left shift process) quantized in step S377. To be done.
  • step S371 when it is determined in step S371 that the current mode is not the I_PCM mode, the adaptive left shift unit 315 skips (skips) each process of steps S372 to S377, and advances the process to step S378. That is, when it is not in the I_PCM mode, generation of a reference image is performed using the orthogonal transformation coefficient (data shifted to the left) quantized in step S310 in FIG.
  • step S3708 the inverse quantization unit 309 inversely quantizes the quantized orthogonal transformation coefficient (also referred to as a quantization coefficient) with the characteristic corresponding to the characteristic of the quantization unit 306.
  • step S379 the inverse orthogonal transformation unit 310 performs inverse orthogonal transformation on the orthogonal transformation coefficient obtained by the process of step S378 with a characteristic corresponding to the characteristic of the orthogonal transformation unit 305.
  • step S380 the calculation unit 311 adds the prediction image to the locally decoded difference information, and generates a locally decoded image (an image corresponding to an input to the calculation unit 304).
  • the computing unit 311 adds the prediction image not subjected to the left shift process to the difference information not subjected to the left shift process to generate a decoded image not subjected to the left shift process.
  • the computing unit 311 adds the prediction image subjected to the left shift process to the difference information subjected to the left shift process, and generates a decoded image subjected to the left shift process.
  • step S 381 the loop filter 312 performs loop filter processing on the local decoded image obtained by the processing of step S 380 based on the control of the filter control unit 365, and performs deblocking filter processing, adaptive loop filter processing, etc. As appropriate, perform loop filter processing including
  • step S 382 the adaptive right shift unit 313 determines, based on the control of the adaptive shift control unit 364, whether or not the I_PCM mode has been selected. If it is determined that the I_PCM mode is not selected, the adaptive right shifting unit 313 proceeds with the process to step S383.
  • the adaptive right shift unit 313 performs the filter processing result (decoded image) obtained by the loop filter processing in step S381 in step S383. Perform a right shift adaptively to the bit depth of.
  • the adaptive right shift unit 313 causes the process to proceed to step S384.
  • step S382 If it is determined in step S382 that the I_PCM mode is selected, the adaptive right shifting unit 313 proceeds with the process to step S384 without performing the right shift process.
  • step S384 the frame memory 314 stores the decoded image.
  • the frame memory 314 ends the reference image generation process, returns the process to step S316 in FIG. 10, and ends the encoding process.
  • the deblock filter 351 of the loop filter 312 performs the deblock filter process on the decoded image (pre-deblock filter pixel value) supplied from the calculation unit 311 in step S401.
  • step S402 the pixel sorting unit 352 is controlled by the filter control unit 365 of the PCM determination unit 342, and sorts the pixels of the decoded image based on whether or not it is in the I_PCM mode.
  • step S403 the filter coefficient calculation unit 353 calculates filter coefficients for pixels (processing target pixels) classified to perform filter processing.
  • step S404 the filtering unit 354 performs adaptive filter processing on the processing target pixel using the filter coefficient calculated in step S403.
  • step S405 the filtering unit 354 sets an adaptive filter flag for the processing target block, supplies the adaptive filter flag and the filter coefficient to the CU encoding unit 332, and causes the CU encoding unit 332 to perform encoding.
  • step S405 ends, the loop filter 312 ends the loop filter process, returns the process to step S381 in FIG. 13, and executes the processes of step S382 and subsequent steps.
  • the image coding apparatus 300 can improve the coding efficiency while suppressing the reduction in the coding process efficiency.
  • FIG. 15 is a block diagram showing a main configuration example of the image decoding apparatus.
  • the image decoding device 500 shown in FIG. 15 is basically the same as the image decoding device 200 of FIG. 2, and decodes encoded data obtained by encoding image data.
  • the image decoding apparatus 500 shown in FIG. 15 is a decoding apparatus corresponding to the image coding apparatus 300 of FIG.
  • the encoded data encoded by the image encoding device 300 is supplied to the image decoding device 500 via an arbitrary route such as a transmission path or a recording medium, for example, and is decoded.
  • the image decoding apparatus 500 includes an accumulation buffer 501, a lossless decoding unit 502, an inverse quantization unit 503, an inverse orthogonal transformation unit 504, an operation unit 505, a loop filter 506, an adaptive right shift unit 507, and a screen.
  • a reordering buffer 508 and a D / A converter 509 are included.
  • the image decoding apparatus 500 further includes a frame memory 510, an adaptive left shift unit 511, a selection unit 512, an intra prediction unit 513, a motion prediction / compensation unit 514, and a selection unit 515.
  • the image decoding apparatus 500 further includes a PCM decoding unit 516.
  • the accumulation buffer 501 accumulates the transmitted encoded data as in the case of the accumulation buffer 201.
  • the encoded data is encoded by the image encoding device 300.
  • the lossless decoding unit 502 reads the encoded data from the accumulation buffer 501 at a predetermined timing, and decodes the data using a method corresponding to the encoding method of the lossless encoding unit 307 in FIG. At that time, the lossless decoding unit 502 supplies I_PCM_flag included in the encoded data to the PCM decoding unit 516, and determines whether or not the I_PCM mode (non-compression mode) is selected.
  • the lossless decoding unit 502 supplies the CU data to the inverse quantization unit 503 according to the control of the PCM decoding unit 516.
  • the lossless decoding unit 502 decodes the CU data according to the control of the PCM decoding unit 516, and the inverse quantization unit Supply to 503.
  • intra prediction mode information is stored in the header part of coding data.
  • the lossless decoding unit 502 also decodes this intra prediction mode information, and supplies the information to the intra prediction unit 513.
  • motion vector information and inter prediction mode information are stored in the header portion of the encoded data.
  • the lossless decoding unit 502 also decodes the motion vector information and the inter prediction mode information, and supplies the information to the motion prediction / compensation unit 514.
  • the coefficient data (quantization coefficient) supplied from the lossless decoding unit 502 is compared with that of the quantization unit 306 in FIG. Inverse quantization is performed by a method corresponding to the quantization method. That is, the inverse quantization unit 503 performs inverse quantization of the quantization coefficient in the same manner as the inverse quantization unit 309 in FIG. 7.
  • the inverse quantization unit 503 supplies the inversely quantized coefficient data, that is, the orthogonal transformation coefficient to the inverse orthogonal transformation unit 504.
  • the inverse quantization unit 503 supplies the CU data (image data not encoded) supplied from the lossless decoding unit 502 to the inverse orthogonal transformation unit 504.
  • the inverse orthogonal transform unit 504 When the inverse orthogonal transform unit 504 is not in the I_PCM mode, as in the case of the inverse orthogonal transform unit 204, a scheme corresponding to the orthogonal transform scheme of the orthogonal transform unit 305 in FIG. 7 (similar to the inverse orthogonal transform unit 310 in FIG. Inverse orthogonal transform the orthogonal transform coefficient by The inverse orthogonal transformation unit 504 obtains decoded residual data corresponding to residual data before orthogonal transformation in the image coding apparatus 300 by this inverse orthogonal transformation processing. For example, fourth-order inverse orthogonal transformation is performed. The inverse orthogonal transform unit 504 supplies the decoding residual data obtained by the inverse orthogonal transform to the operation unit 505.
  • the inverse orthogonal transform unit 504 supplies the CU data (uncoded image data) supplied from the inverse quantization unit 503 to the operation unit 505.
  • the prediction image is supplied to the calculation unit 505 from the intra prediction unit 513 or the motion prediction / compensation unit 514 via the selection unit 515.
  • the calculating unit 505 When not in the I_PCM mode, the calculating unit 505 adds the decoded residual data and the predicted image as in the case of the calculating unit 205, and before the predicted image is subtracted by the calculating unit 304 of the image coding apparatus 300.
  • the decoded image data corresponding to the image data of The operation unit 505 supplies the decoded image data to the loop filter 506.
  • the operation unit 505 supplies the loop filter 506 with the CU data (image data not encoded) supplied from the inverse orthogonal transformation unit 504. In this case, since the CU data is not residual information, addition with the predicted image is unnecessary.
  • the loop filter 506 is controlled by the PCM decoding unit 516 and appropriately performs loop filter processing including deblock filter processing, adaptive loop filter processing, and the like on the decoded image supplied from the arithmetic unit 505.
  • the loop filter 506 removes block distortion of the decoded image by performing deblocking filter processing similar to that of the deblocking filter 206 on the decoded image. Then, under the control of the PCM decoding unit 516, the loop filter 506 performs loop filter processing on the deblock filter processing result (decoded image from which block distortion has been removed) using a Wiener filter. Improve image quality by doing this.
  • the loop filter 506 may perform arbitrary filter processing on the decoded image. Also, the loop filter 506 may perform filter processing using the filter coefficient supplied from the image coding apparatus 300 of FIG. 7.
  • the loop filter 506 supplies the filter processing result (decoded image after filter processing) to the adaptive right shift unit 507.
  • the adaptive right shift unit 507 is a processing unit similar to the adaptive right shift unit 313 (FIG. 7), is controlled by the PCM decoding unit 516, and when the I_PCM mode is not used, the decoded image data supplied from the loop filter 506 is Shift in the direction to reduce its bit depth by a predetermined number of bits (for example, 4 bits) (for example, reduce the bit depth from 12 bits to 8 bits). That is, the adaptive right shift unit 507 shifts the bit depth of the image data to the right by the number of bits shifted to the left in the image coding apparatus 300 and shifts the bit depth of the image data to the left (from the screen rearrangement buffer 302 (FIG. 7) Return to the state at the time of reading).
  • a predetermined number of bits for example, 4 bits
  • the adaptive right shift unit 507 shifts the bit depth of the image data to the right by the number of bits shifted to the left in the image coding apparatus 300 and shifts the bit depth of the image data to the left (from the screen rear
  • the adaptive right shift unit 507 supplies the image data after the right shift processing to the screen rearrangement buffer 508 and the frame memory 510.
  • the right shift amount is arbitrary as long as it matches the left shift amount in the image coding apparatus 300 (adaptive left shift unit 303). That is, it may be a fixed value or may be variable.
  • the shift amount may be determined in advance (shared between the image encoding device 300 and the image decoding device 500 in advance), and in the image decoding device 500, the image encoding device 300 may The shift amount may be calculated, or information indicating the shift amount may be provided from the image coding apparatus 300.
  • this right shift processing may be skipped (skipped).
  • the adaptive right shift unit 507 is controlled by the PCM decoding unit 516 and supplies the decoded image data supplied from the loop filter 506 to the screen rearrangement buffer 508 and the frame memory 510 without shifting in the right direction. .
  • the screen rearrangement buffer 508 rearranges the images as in the case of the screen rearrangement buffer 207. That is, the order of the frames rearranged for the order of encoding by the screen rearrangement buffer 302 in FIG. 7 is rearranged in the order of the original display.
  • the screen rearrangement buffer 508 supplies the decoded image data of each frame to the D / A conversion unit 509 in the rearranged order.
  • the D / A conversion unit 509 D / A converts the frame image supplied from the screen rearrangement buffer 508, and outputs it to a display (not shown) for display.
  • the frame memory 510 stores the decoded image supplied from the adaptive right shift unit 507, and supplies the stored decoded image as a reference image to the adaptive left shift unit 511 at a predetermined timing.
  • the adaptive left shift unit 511 is a processing unit similar to the adaptive left shift unit 315, is controlled by the PCM decoding unit 516, and appropriately shifts the image data (reference image) read from the frame memory 510 in the left direction,
  • the bit depth is increased by a predetermined number of bits (for example, 4 bits).
  • the adaptive left shift unit 511 increases the bit depth of the reference image read from the frame memory 510 by a predetermined number of bits under control of the PCM decoding unit 516 (for example, changes the bit depth from 8 bits to 12 bits).
  • the adaptive left shift unit 511 supplies the image data after the left shift processing to the selection unit 512.
  • the bit depth of the reference image can be matched to the bit depth of the decoded image, and the reference image can be added to the decoded image. Further, the accuracy of the internal calculation such as the prediction process can be improved to suppress the error.
  • the decoded image data supplied from the inverse orthogonal transformation unit 504 to the calculation unit 505 is image data in a state not subjected to the left shift process in the image coding device 300 (for example, Bit depth is 8 bits). Therefore, under the control of the PCM decoding unit 516, the adaptive left shift unit 511 supplies the reference image read from the frame memory 510 to the selection unit 512 without increasing the bit depth.
  • the selection unit 512 supplies the reference image supplied from the adaptive left shift unit 511 to the intra prediction unit 513. Further, in the case of inter prediction, the selection unit 512 supplies the reference image supplied from the adaptive left shift unit 511 to the motion prediction / compensation unit 514.
  • the intra prediction unit 513 performs intra prediction using the reference image acquired from the frame memory 510 in the intra prediction mode used by the intra prediction unit 317, and generates a prediction image. That is, as in the intra prediction unit 317, the intra prediction unit 513 can also perform this intra prediction in any mode other than the mode specified in the AVC coding scheme.
  • the intra prediction unit 513 supplies the generated predicted image to the selection unit 515.
  • the motion prediction / compensation unit 514 is supplied with information (prediction mode information, motion vector information, reference frame information, flags, various parameters, and the like) obtained by decoding header information from the lossless decoding unit 502.
  • the motion prediction / compensation unit 514 performs inter prediction using the reference image acquired from the frame memory 510 in the inter prediction mode used in the motion prediction / compensation unit 318, and generates a prediction image. That is, the motion prediction / compensation unit 514 can also perform this intra prediction in any mode other than the mode specified in the AVC coding scheme, as in the motion prediction / compensation unit 318.
  • the motion prediction / compensation unit 514 supplies the generated predicted image to the selection unit 515.
  • the selection unit 515 selects the prediction image generated by the motion prediction / compensation unit 514 or the intra prediction unit 513 as in the case of the selection unit 213, and supplies the selected prediction image to the calculation unit 505.
  • the PCM decoding unit 516 controls the lossless decoding unit 502, the loop filter 506, the adaptive right shift unit 507, and the adaptive left shift unit 511 based on I_PCM_flag supplied from the lossless decoding unit 502.
  • FIG. 16 is a block diagram showing a main configuration example of the lossless decoding unit 502, the PCM decoding unit 516, and the loop filter 506 of FIG.
  • the lossless decoding unit 502 includes an NAL decoding unit 531 and a CU decoding unit 532.
  • the NAL decoding unit 531 decodes the encoded NAL data supplied from the accumulation buffer 501, and supplies the decoded NAL data to the CU decoding unit 532.
  • the CU decoding unit 532 decodes the encoded CU data supplied from the accumulation buffer 501 based on the NAL data supplied from the NAL decoding unit 531.
  • the CU decoding unit 532 when the CU decoding unit 532 decodes the CU data to obtain I_PCM_flag, it supplies the I_PCM_flag to the PCM decoding unit 516.
  • the CU decoding unit 532 decodes the encoded CU data according to the control of the PCM decoding unit 516 based on the I_PCM_flag (based on the On / Off control signal supplied from the PCM encoding unit 321).
  • the CU decoding unit 532 is based on the NAL data supplied from the NAL decoding unit 531.
  • the decoded CU data supplied from the accumulation buffer 501 is decoded, and the quantized orthogonal transformation coefficient is supplied to the inverse quantization unit 503.
  • the CU decoding unit 532 determines that the CU supplied from the accumulation buffer 501 is a value indicating that I_PCM_flag is the I_PCM mode. Data (image data not encoded) is supplied to the inverse quantization unit 503.
  • the CU decoding unit 532 supplies the loop filter 506 with information such as filter coefficients and adaptive filter flags obtained by decoding CU data.
  • the PCM decoding unit 516 includes an I_PCM_flag buffer 541 and a PCM control unit 542.
  • the I_PCM_flag buffer 541 stores I_PCM_flag supplied from the CU decoding unit 532 of the lossless decoding unit 502, and supplies it to the PCM control unit 542 at a predetermined timing.
  • the PCM control unit 542 determines, based on the value of I_PCM_flag acquired from the I_PCM_flag buffer 541, whether or not the I_PCM mode is selected at the time of encoding in the image encoding device 300.
  • the PCM control unit 542 supplies an On / Off control signal to the CU decoding unit 532 based on the determination result, and controls the operation.
  • the PCM control unit 542 supplies a control signal indicating “On” to the CU decoding unit 532 to cause the CU decoding unit 532 to decode the encoded CU data
  • the dequantization unit 503 is supplied with the quantized orthogonal transformation coefficient obtained by the decoding.
  • the PCM control unit 542 supplies a control signal indicating “Off” to the CU decoding unit 532 and outputs CU data which is non-coded data. It is supplied to the inverse quantization unit 503 as a value.
  • the CU decoding unit 532 can appropriately decode the encoded data supplied from the image encoding device 300. That is, the CU decoding unit 532 can more appropriately decode even in the case where the I_PCM mode is controlled in units of CU smaller than the LCU.
  • the PCM control unit 542 supplies an On / Off control signal to the adaptive right shift unit 507 and the adaptive left shift unit 511 based on the determination result of the I_PCM mode, and controls the operation thereof.
  • the PCM control unit 542 supplies a control signal indicating “On” to the adaptive right shift unit 507 and the adaptive left shift unit 511, and performs left shift processing and right shift processing. It is made to execute and bit precision expansion in internal processing is performed.
  • the PCM control unit 542 supplies a control signal indicating “Off” to the adaptive right shift unit 507 and the adaptive left shift unit 511, and The right shift process is skipped (skipped) so that bit precision expansion in internal processing is not performed.
  • the PCM control unit 542 can appropriately eliminate redundant processing even in the case where the I_PCM mode is controlled in units of CU smaller than the LCU.
  • the PCM control unit 542 supplies an On / Off control signal to the loop filter 506 based on the determination result of the I_PCM mode, and controls the operation thereof. For example, when it is determined that the I_PCM mode is not selected, the PCM control unit 542 supplies a control signal indicating “On” to the loop filter 506. On the other hand, when it is determined that, for example, the I_PCM mode is selected, the PCM control unit 542 supplies a control signal indicating “Off” to the loop filter 506.
  • the PCM control unit 542 can more appropriately eliminate redundant processing even when the I_PCM mode is controlled in units of CU smaller than the LCU.
  • the loop filter 506 includes a deblocking filter 551, a pixel sorting unit 552, and a filtering unit 553.
  • the deblocking filter 551 removes block distortion by performing deblocking filter processing on the decoded image (pre-deblock filter pixel values) supplied from the computing unit 505.
  • the deblocking filter process is performed regardless of whether the CU is in the I_PCM mode.
  • the deblocking filter 551 supplies the filter processing result (pixel value after deblocking filter) to the pixel sorting unit 552.
  • the pixel sorting unit 552 performs adaptive loop filter processing on each filter processing result (deblock filtered pixel value) according to the value of the On / Off control signal supplied from the PCM control unit 542, and adaptive loop filter Sort into pixel values not to be processed.
  • the pixel sorting unit 552 sorts the post-deblocking filter pixel values of the CU into pixel values on which the adaptive loop filter process is performed.
  • the pixel sorting unit 552 does not perform the adaptive loop filter processing on the pixel value after deblocking filter of the CU. Sort by value.
  • the pixel sorting unit 552 supplies the pixel value (pixel value after deblocking filter) of each sorted pixel to the filtering unit 553.
  • the filtering unit 553 performs adaptive loop filter processing on the pixel values classified according to the adaptive loop filter processing based on the adaptive loop filter flag supplied from the CU decoding unit 532.
  • Adaptive loop filtering is performed for each predetermined block set independently of CU.
  • the filtering unit 553 omits the adaptive loop filter process on the block ( It skips and supplies the pixel value after the deblocking filter supplied to the adaptive right shift part 507 as an adaptive filter pixel value.
  • the setting method of the adaptive loop filter flag depends on the specifications of the image coding apparatus 300 and the like. Therefore, depending on the setting method of the adaptive loop filter flag by the image coding apparatus 300, the value of the adaptive loop filter flag of the block is a value (for example, "1") indicating that the filtering process has been performed on the coding side. Even if there is a pixel in I_PCM mode may be included in the block.
  • the filtering unit 553 performs a filter process on the encoding side with the value of the adaptive loop filter flag of the block. Adaptive loop filter processing for the block is skipped (skip) even if it is a value (for example, “1”) indicating that it has been set, and the supplied pixel value after the deblock filter is adaptively shifted as the adaptive filter pixel value It supplies to the part 507.
  • the value of the adaptive loop filter flag of the block is a value (for example, “1”) indicating that the filtering process has been performed on the encoding side, and all the pixels in the block
  • the adaptive loop filter process is performed on the block only when the process is performed by the adaptive loop filter process.
  • the filtering unit 553 When performing the adaptive loop filter process, the filtering unit 553 performs the adaptive loop filter process using the filter coefficient (the filter coefficient used in the adaptive loop filter process on the encoding side) supplied from the CU decoding unit 532 .
  • the filtering unit 553 supplies the pixel value subjected to the adaptive loop filter processing to the adaptive right shift unit 507 as a pixel value after adaptive filtering.
  • the PCM control unit 542 can more appropriately eliminate redundant processing even when the I_PCM mode (non-compression mode) is controlled in CU units smaller than the LCU. it can.
  • the image decoding apparatus 500 can realize improvement in encoding efficiency while suppressing reduction in the efficiency of encoding processing.
  • step S501 the accumulation buffer 501 accumulates the transmitted image (coded data).
  • step S502 the CU decoding unit 532 acquires an adaptive filter flag from the encoded data accumulated in step S501.
  • step S503 the CU decoding unit 532 acquires I_PCM_flag from the encoded data accumulated in step S501.
  • the I_PCM_flag buffer 541 stores the I_PCM_flag.
  • step S504 the PCM control unit 542 sets the coding mode of the encoded data (CU data) stored in step S501 to I_PCM mode based on the value of I_PCM_flag stored in the I_PCM_flag buffer 541 (that is, It is determined whether or not it is uncoded data).
  • step S505 the lossless decoding unit 502 performs lossless decoding processing, decodes the encoded data (CU data) stored in step S501, and obtains quantized orthogonal transformation coefficients, filter coefficients, and the like.
  • step S506 the inverse quantization unit 503 inversely quantizes the quantized orthogonal transformation coefficient obtained by the process of step S505.
  • step S507 the inverse orthogonal transformation unit 504 performs inverse orthogonal transformation on the orthogonal transformation coefficient that has been inversely quantized in the process of step S506, and generates decoded image data.
  • step S508 the adaptive left shift unit 511 obtains a reference image corresponding to the CU from the frame memory 510, and performs left shift processing on the reference image according to the control of the PCM decoding unit 516.
  • step S509 the intra prediction unit 513 or motion prediction / compensation unit 514 performs prediction processing using the reference image or the like that has been left-shifted in step S508, and generates a prediction image.
  • step S510 the computing unit 505 adds the prediction image generated by the intra prediction unit 513 or the motion prediction / compensation unit 514 in step S509 to the difference information obtained in the process of step S507.
  • step S511 the loop filter 506 performs loop filter processing on the addition result of step S510.
  • step S512 the adaptive right shift unit 507 performs right shift processing on the loop filter processing result of step S511 according to the control of the PCM decoding unit 516.
  • step S513 the frame memory 510 stores the decoded image data as a reference image.
  • step S514 the screen rearrangement buffer 508 rearranges the frames of the decoded image data. That is, the order of the frames of the decoded image data rearranged for encoding by the screen rearrangement buffer 302 (FIG. 7) of the image encoding device 300 is rearranged to the original display order.
  • step S515 the D / A conversion unit 509 D / A converts the decoded image data in which the frames are rearranged in step S514.
  • the decoded image data is output to a display (not shown) and the image is displayed.
  • step S504 When it is determined in step S504 that the coding mode is the I_PCM mode, the PCM control unit 542 advances the process to step S521 in FIG.
  • step S521 the lossless decoding unit 502 performs lossless decoding processing, and sets the encoded data (non-compressed data) accumulated in step S501 as an encoding result (output pixel value).
  • step S522 the loop filter 506 performs loop filter processing on the output pixel value obtained in step S521.
  • the loop filter 506 returns the process to step S513 of FIG. 17 to execute the subsequent processes.
  • the deblock filter 551 When the loop filter process is started, the deblock filter 551 performs the deblock filter process on the pixel value before the deblock filter obtained in step S510 or step S521 in step S541.
  • step S 542 the filtering unit 553 obtains filter coefficients.
  • step S543 the pixel sorting unit 552 determines whether to perform the adaptive loop filter based on the value of the adaptive loop filter flag. If it is determined that the adaptive loop filter process is to be performed, the pixel sorting unit 552 advances the process to step S544.
  • step S544 the pixel sorting unit 552 sorts the post-deblocking filter pixel values according to the control of the PCM control unit 542 according to whether or not the mode is the I_PCM mode.
  • step S545 the filtering unit 545 performs adaptive loop filter processing on the deblock filtered pixel values sorted according to the adaptive loop filter processing, using the filter coefficient acquired in step S542.
  • the filtering unit 545 ends the loop filter process, returns the process to step S511 of FIG. 17 or step S522 of FIG. 18, and proceeds to step S512 of FIG. 17 or step S513 of FIG. Advance.
  • step S543 in FIG. 19 If it is determined in step S543 in FIG. 19 that the adaptive loop filter process is not to be performed, the pixel sorting unit 552 ends the loop filter process and returns the process to step S511 in FIG. 17 or step S522 in FIG. The process proceeds to step S512 in FIG. 17 or step S513 in FIG.
  • the image decoding apparatus 500 can realize that the encoding efficiency is improved while suppressing the reduction in the efficiency of the encoding process.
  • a of FIG. 20 shows the structure of a CU in 1 LCU.
  • the LCU shown in A of FIG. 20 is configured of seven CUs of CU0 to CU6. Each number shows the processing order in the said LCU.
  • CU CU1, CU3, CU6 shown by gray shall be encoded in I_PCM mode.
  • I_PCM information which is information related to I_PCM in the LCU may be added to the head of data of the LCU in the code stream.
  • the I_PCM information includes, for example, flag information indicating whether the LCU includes a CU encoded in I_PCM mode.
  • flag information indicates whether the LCU includes a CU encoded in I_PCM mode (for example, It is set to "1".
  • the image coding apparatus 300 adds the information on I_PCM inside the LCU to the head of the LCU, so that the image decoding apparatus 500 performs I_PCM mode in the LCU before decoding the LCU. It can be easily grasped whether or not there is a CU to be encoded by.
  • the I_PCM information includes, for example, information indicating a CU encoded in the I_PCM mode included in the LCU.
  • the I_PCM information includes information indicating these CUs (CU1, CU3 and CU6).
  • the image coding apparatus 300 adds information related to I_PCM inside the LCU to the head of the LCU, so that the image decoding apparatus 500 determines which CU in the LCU before decoding the LCU. Can be easily grasped in I_PCM mode (non-compressed mode).
  • information other than image data such as I_PCM_flag, adaptive filter flag, filter coefficient, and I_PCM information is also provided from the image coding device 300 to the image decoding device 500 as necessary.
  • these pieces of information may be added to any position of the encoded data. For example, it may be added to the beginning of a CU or LCU, may be added to a slice header, or may be stored in a sequence parameter set (SPS) or a picture parameter set (PPS). You may also, for example, the information may be stored in a parameter set (for example, a header of a sequence or a picture) such as SEI (Supplemental Enhancement Information).
  • SEI Supplemental Enhancement Information
  • these pieces of information may be transmitted to the decoding side separately from the encoded data.
  • the method is arbitrary.
  • table information indicating correspondence may be created, or link information indicating correspondence destination data may be embedded in each other's data.
  • these pieces of information may be shared in advance between the image encoding device 300 and the image decoding device 500. In that case, transmission of such information may be omitted in some cases.
  • a central processing unit (CPU) 601 of a personal computer 600 executes various programs according to a program stored in a read only memory (ROM) 602 or a program loaded from a storage unit 613 to a random access memory (RAM) 603. Execute the process of The RAM 603 also stores data necessary for the CPU 601 to execute various processes.
  • ROM read only memory
  • RAM random access memory
  • the CPU 601, the ROM 602, and the RAM 603 are mutually connected via a bus 604.
  • An input / output interface 610 is also connected to the bus 604.
  • the input / output interface 610 includes an input unit 611 including a keyboard and a mouse, a display including a CRT (Cathode Ray Tube) and an LCD (Liquid Crystal Display), an output unit 612 including a speaker, and a hard disk.
  • a communication unit 614 including a storage unit 613 and a modem is connected. The communication unit 614 performs communication processing via a network including the Internet.
  • a drive 615 is connected to the input / output interface 610 as necessary, and removable media 621 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory are appropriately attached, and a computer program read from them is It is installed in the storage unit 613 as necessary.
  • a program that configures the software is installed from a network or a recording medium.
  • this recording medium is a magnetic disk (including a flexible disk) on which a program is recorded, which is distributed for distributing the program to the user separately from the apparatus main body, an optical disk ( It consists only of removable media 621 consisting of CD-ROM (Compact Disc-Read Only Memory), DVD (Digital Versatile Disc), Magneto-Optical Disc (including MD (Mini Disc), or semiconductor memory etc. Instead, it is configured by the ROM 602 in which the program is recorded and distributed to the user in a state of being incorporated in the apparatus main body, a hard disk included in the storage unit 613, or the like.
  • the program executed by the computer may be a program that performs processing in chronological order according to the order described in this specification, in parallel, or when necessary, such as when a call is made. It may be a program to be processed.
  • the step of describing the program to be recorded on the recording medium is not limited to processing performed chronologically in the order described, but not necessarily parallel processing It also includes processing to be executed individually.
  • system represents the entire apparatus configured by a plurality of devices (apparatus).
  • the configuration described above as one device (or processing unit) may be divided and configured as a plurality of devices (or processing units).
  • the configuration described as a plurality of devices (or processing units) in the above may be collectively configured as one device (or processing unit).
  • configurations other than those described above may be added to the configuration of each device (or each processing unit).
  • part of the configuration of one device (or processing unit) may be included in the configuration of another device (or other processing unit) if the configuration or operation of the entire system is substantially the same. . That is, the embodiment of the present technology is not limited to the above-described embodiment, and various modifications can be made without departing from the scope of the present technology.
  • the lossless encoding unit 307, the loop filter 312, and the PCM encoding unit 321 shown in FIG. 8 may be configured as independent devices.
  • the NAL encoding unit 331, the CU encoding unit 332, the I_PCM_flag generating unit 341, the PCM determining unit 342, the deblocking filter 351, the pixel sorting unit 352, the filter coefficient calculating unit 353, and the filtering unit 354 shown in FIG. Each may be configured as an independent device.
  • the input data amount calculation unit 361, the PCM determination unit 362, the encoding control unit 363, the adaptive shift control unit 364 and the filter control unit shown in FIG. 9 may be configured as independent devices. .
  • processing units may be arbitrarily combined and configured as an independent device. Of course, it may be combined with any processing unit shown in FIGS. 7 to 9 or may be combined with a processing unit (not shown).
  • the lossless decoding unit 502, the loop filter 506, and the PCM decoding unit 516 shown in FIG. 15 may be configured as independent devices.
  • the NAL decoding unit 531, the CU decoding unit 532, the I_PCM_flag buffer 541, the PCM control unit 542, the deblocking filter 551, the pixel sorting unit 552, and the filtering unit 553 illustrated in FIG. 16 are configured as independent devices. You may do so.
  • processing units may be arbitrarily combined and configured as an independent device. Of course, it may be combined with an arbitrary processing unit shown in FIGS. 15 and 16 or may be combined with a processing unit (not shown).
  • the above-described image encoding device and image decoding device can be applied to any electronic device.
  • the example will be described below.
  • FIG. 22 is a block diagram showing an example of a main configuration of a television receiver using the image decoding apparatus 500.
  • the television receiver 1000 shown in FIG. 22 includes a terrestrial tuner 1013, a video decoder 1015, a video signal processing circuit 1018, a graphic generation circuit 1019, a panel drive circuit 1020, and a display panel 1021.
  • the terrestrial tuner 1013 receives a broadcast wave signal of terrestrial analog broadcasting via an antenna, demodulates it, acquires a video signal, and supplies it to a video decoder 1015.
  • the video decoder 1015 performs decoding processing on the video signal supplied from the terrestrial tuner 1013, and supplies the obtained digital component signal to the video signal processing circuit 1018.
  • the video signal processing circuit 1018 performs predetermined processing such as noise removal on the video data supplied from the video decoder 1015, and supplies the obtained video data to the graphic generation circuit 1019.
  • the graphic generation circuit 1019 generates video data of a program to be displayed on the display panel 1021, image data by processing based on an application supplied via a network, and the like, and transmits the generated video data and image data to the panel drive circuit 1020. Supply. Also, the graphic generation circuit 1019 generates video data (graphic) for displaying a screen used by the user for item selection and the like, and a video obtained by superimposing it on video data of a program. A process of supplying data to the panel drive circuit 1020 is also performed as appropriate.
  • the panel drive circuit 1020 drives the display panel 1021 based on the data supplied from the graphic generation circuit 1019 and causes the display panel 1021 to display the video of the program and the various screens described above.
  • the display panel 1021 is formed of an LCD (Liquid Crystal Display) or the like, and displays an image or the like of a program according to control of the panel drive circuit 1020.
  • LCD Liquid Crystal Display
  • the television receiver 1000 also includes an audio A / D (Analog / Digital) conversion circuit 1014, an audio signal processing circuit 1022, an echo cancellation / audio synthesis circuit 1023, an audio amplification circuit 1024, and a speaker 1025.
  • an audio A / D (Analog / Digital) conversion circuit 1014 An audio signal processing circuit 1022, an echo cancellation / audio synthesis circuit 1023, an audio amplification circuit 1024, and a speaker 1025.
  • the terrestrial tuner 1013 acquires not only a video signal but also an audio signal by demodulating the received broadcast wave signal.
  • the terrestrial tuner 1013 supplies the acquired audio signal to the audio A / D conversion circuit 1014.
  • the audio A / D conversion circuit 1014 performs A / D conversion processing on the audio signal supplied from the terrestrial tuner 1013, and supplies the obtained digital audio signal to the audio signal processing circuit 1022.
  • the audio signal processing circuit 1022 performs predetermined processing such as noise removal on the audio data supplied from the audio A / D conversion circuit 1014, and supplies the obtained audio data to the echo cancellation / audio synthesis circuit 1023.
  • the echo cancellation / voice synthesis circuit 1023 supplies the voice data supplied from the voice signal processing circuit 1022 to the voice amplification circuit 1024.
  • the voice amplification circuit 1024 subjects the voice data supplied from the echo cancellation / voice synthesis circuit 1023 to D / A conversion processing and amplification processing, adjusts the volume to a predetermined level, and outputs voice from the speaker 1025.
  • the television receiver 1000 also includes a digital tuner 1016 and an MPEG decoder 1017.
  • a digital tuner 1016 receives a broadcast wave signal of digital broadcast (terrestrial digital broadcast, BS (Broadcasting Satellite) / CS (Communications Satellite) digital broadcast) via an antenna, and demodulates the signal, and generates an MPEG-TS (Moving Picture Experts Group). -Transport Stream) and supply it to the MPEG decoder 1017.
  • digital broadcast terrestrial digital broadcast, BS (Broadcasting Satellite) / CS (Communications Satellite) digital broadcast
  • MPEG-TS Motion Picture Experts Group
  • the MPEG decoder 1017 unscrambles the MPEG-TS supplied from the digital tuner 1016, and extracts a stream including data of a program to be reproduced (targeted to be viewed).
  • the MPEG decoder 1017 decodes the audio packet forming the extracted stream, supplies the obtained audio data to the audio signal processing circuit 1022, decodes the video packet forming the stream, and outputs the obtained video data as an image.
  • the signal processing circuit 1018 is supplied.
  • the MPEG decoder 1017 supplies EPG (Electronic Program Guide) data extracted from the MPEG-TS to the CPU 1032 via a path (not shown).
  • EPG Electronic Program Guide
  • the television receiver 1000 uses the above-described image decoding apparatus 500 as the MPEG decoder 1017 that decodes video packets in this manner.
  • the MPEG-TS transmitted from the broadcast station or the like is encoded by the image encoding device 300.
  • the MPEG decoder 1017 appropriately decodes encoded data in which the selection of the I_PCM mode is controlled in CU units smaller than the LCU. Therefore, the MPEG decoder 1017 can realize reduction of redundant processing at the time of encoding and reduction of redundant information included in encoded data. Thereby, the MPEG decoder 1017 can realize that the encoding efficiency is improved while suppressing the reduction of the efficiency of the encoding process.
  • the video data supplied from the MPEG decoder 1017 is subjected to predetermined processing in the video signal processing circuit 1018 as in the case of the video data supplied from the video decoder 1015, and the video data generated in the graphic generation circuit 1019. Etc. are appropriately superimposed and supplied to the display panel 1021 via the panel drive circuit 1020, and the image is displayed.
  • the audio data supplied from the MPEG decoder 1017 is subjected to predetermined processing in the audio signal processing circuit 1022 as in the case of the audio data supplied from the audio A / D conversion circuit 1014, and the echo cancellation / audio synthesis circuit 1023.
  • the audio amplification circuit 1024 are supplied to the audio amplification circuit 1024 and subjected to D / A conversion processing and amplification processing.
  • the sound adjusted to a predetermined volume is output from the speaker 1025.
  • the television receiver 1000 also includes a microphone 1026 and an A / D conversion circuit 1027.
  • the A / D conversion circuit 1027 receives the user's voice signal captured by the microphone 1026 provided in the television receiver 1000 for voice conversation, and performs A / D conversion processing on the received voice signal.
  • the obtained digital voice data is supplied to an echo cancellation / voice synthesis circuit 1023.
  • the echo cancellation / voice synthesis circuit 1023 performs echo cancellation on the voice data of the user A when the voice data of the user (user A) of the television receiver 1000 is supplied from the A / D conversion circuit 1027.
  • the voice data obtained by synthesizing with other voice data is output from the speaker 1025 via the voice amplification circuit 1024.
  • the television receiver 1000 further includes an audio codec 1028, an internal bus 1029, a synchronous dynamic random access memory (SDRAM) 1030, a flash memory 1031, a CPU 1032, a universal serial bus (USB) I / F 1033, and a network I / F 1034.
  • SDRAM synchronous dynamic random access memory
  • USB universal serial bus
  • the A / D conversion circuit 1027 receives the user's voice signal captured by the microphone 1026 provided in the television receiver 1000 for voice conversation, and performs A / D conversion processing on the received voice signal.
  • the obtained digital audio data is supplied to an audio codec 1028.
  • the voice codec 1028 converts voice data supplied from the A / D conversion circuit 1027 into data of a predetermined format for transmission via the network, and supplies the data to the network I / F 1034 via the internal bus 1029.
  • the network I / F 1034 is connected to the network via a cable attached to the network terminal 1035.
  • the network I / F 1034 transmits voice data supplied from the voice codec 1028 to, for example, another device connected to the network.
  • the network I / F 1034 receives, for example, voice data transmitted from another device connected via the network via the network terminal 1035, and transmits it to the voice codec 1028 via the internal bus 1029. Supply.
  • the voice codec 1028 converts voice data supplied from the network I / F 1034 into data of a predetermined format, and supplies it to the echo cancellation / voice synthesis circuit 1023.
  • the echo cancellation / voice synthesis circuit 1023 performs echo cancellation on voice data supplied from the voice codec 1028, and combines voice data obtained by combining with other voice data, etc., via the voice amplification circuit 1024. And output from the speaker 1025.
  • the SDRAM 1030 stores various data necessary for the CPU 1032 to perform processing.
  • the flash memory 1031 stores a program executed by the CPU 1032.
  • the program stored in the flash memory 1031 is read by the CPU 1032 at a predetermined timing such as when the television receiver 1000 starts up.
  • the flash memory 1031 also stores EPG data acquired via digital broadcasting, data acquired from a predetermined server via a network, and the like.
  • the flash memory 1031 stores an MPEG-TS including content data acquired from a predetermined server via the network under the control of the CPU 1032.
  • the flash memory 1031 supplies the MPEG-TS to the MPEG decoder 1017 via the internal bus 1029 under the control of the CPU 1032, for example.
  • the MPEG decoder 1017 processes the MPEG-TS in the same manner as the MPEG-TS supplied from the digital tuner 1016. As described above, the television receiver 1000 receives content data including video and audio via the network, decodes the content data using the MPEG decoder 1017, displays the video, and outputs audio. Can.
  • the television receiver 1000 also includes a light receiving unit 1037 that receives an infrared signal transmitted from the remote controller 1051.
  • the light receiving unit 1037 receives the infrared light from the remote controller 1051, and outputs a control code representing the content of the user operation obtained by demodulation to the CPU 1032.
  • the CPU 1032 executes a program stored in the flash memory 1031 and controls the overall operation of the television receiver 1000 according to a control code or the like supplied from the light receiving unit 1037.
  • the CPU 1032 and each part of the television receiver 1000 are connected via a path (not shown).
  • the USB I / F 1033 transmits / receives data to / from an external device of the television receiver 1000 connected via a USB cable attached to the USB terminal 1036.
  • the network I / F 1034 is connected to the network via a cable attached to the network terminal 1035, and transmits / receives data other than voice data to / from various devices connected to the network.
  • the television receiver 1000 uses the image decoding device 500 as the MPEG decoder 1017 to increase the efficiency of encoding processing when generating broadcast wave signals received via an antenna and content data acquired via a network. It is possible to improve the coding efficiency of the data while suppressing the reduction.
  • FIG. 23 is a block diagram showing an example of a main configuration of a mobile phone using the image encoding device 300 and the image decoding device 500.
  • a mobile phone 1100 shown in FIG. 23 is configured to control each part in an integrated manner, and includes a main control unit 1150, a power supply circuit unit 1151, an operation input control unit 1152, an image encoder 1153, a camera I / F unit 1154 and an LCD control. It has a unit 1155, an image decoder 1156, a demultiplexing unit 1157, a recording / reproducing unit 1162, a modulation / demodulation circuit unit 1158, and an audio codec 1159. These are connected to one another via a bus 1160.
  • the cellular phone 1100 further includes an operation key 1119, a CCD (Charge Coupled Devices) camera 1116, a liquid crystal display 1118, a storage portion 1123, a transmitting / receiving circuit portion 1163, an antenna 1114, a microphone (microphone) 1121, and a speaker 1117.
  • CCD Charge Coupled Devices
  • the power supply circuit unit 1151 starts the cellular phone 1100 in an operable state by supplying power from the battery pack to each unit.
  • the cellular phone 1100 transmits and receives audio signals, transmits and receives e-mails and image data, and images in various modes such as a voice call mode and a data communication mode based on the control of the main control unit 1150 including CPU, ROM and RAM. Perform various operations such as shooting or data recording.
  • the portable telephone 1100 converts an audio signal collected by the microphone (microphone) 1121 into digital audio data by the audio codec 1159, spread spectrum processes it by the modulation / demodulation circuit unit 1158, and transmits / receives A section 1163 performs digital-to-analog conversion processing and frequency conversion processing.
  • the cellular phone 1100 transmits the transmission signal obtained by the conversion process to a base station (not shown) via the antenna 1114.
  • the transmission signal (voice signal) transmitted to the base station is supplied to the mobile phone of the other party via the public telephone network.
  • the cellular phone 1100 amplifies the reception signal received by the antenna 1114 by the transmission / reception circuit unit 1163, further performs frequency conversion processing and analog-to-digital conversion processing, and the spectrum despreading processing by the modulation / demodulation circuit unit 1158. And converted into an analog voice signal by the voice codec 1159.
  • the cellular phone 1100 outputs the analog audio signal obtained by the conversion from the speaker 1117.
  • the cellular phone 1100 receives text data of the e-mail input by the operation of the operation key 1119 in the operation input control unit 1152.
  • the portable telephone 1100 processes the text data in the main control unit 1150, and causes the liquid crystal display 1118 to display the text data as an image through the LCD control unit 1155.
  • the mobile phone 1100 causes the main control unit 1150 to generate e-mail data based on the text data accepted by the operation input control unit 1152 and the user's instruction.
  • the portable telephone 1100 performs spread spectrum processing on the electronic mail data in the modulation / demodulation circuit unit 1158, and performs digital / analog conversion processing and frequency conversion processing in the transmission / reception circuit unit 1163.
  • the cellular phone 1100 transmits the transmission signal obtained by the conversion process to a base station (not shown) via the antenna 1114.
  • the transmission signal (e-mail) transmitted to the base station is supplied to a predetermined destination via a network, a mail server, and the like.
  • the cellular phone 1100 receives a signal transmitted from the base station via the antenna 1114 by the transmission / reception circuit unit 1163, amplifies it, and further performs frequency conversion processing and Perform analog-to-digital conversion processing.
  • the cellular phone 1100 despreads the received signal by the modulation / demodulation circuit unit 1158 to restore the original electronic mail data.
  • the portable telephone 1100 displays the restored electronic mail data on the liquid crystal display 1118 via the LCD control unit 1155.
  • the portable telephone 1100 can also record (store) the received electronic mail data in the storage unit 1123 via the recording / reproducing unit 1162.
  • the storage unit 1123 is an arbitrary rewritable storage medium.
  • the storage unit 1123 may be, for example, a semiconductor memory such as a RAM or a built-in flash memory, or may be a hard disk, or a removable disk such as a magnetic disk, a magneto-optical disk, an optical disk, a USB memory, or a memory card It may be media. Of course, it may be something other than these.
  • the cellular phone 1100 when transmitting image data in the data communication mode, the cellular phone 1100 generates image data with the CCD camera 1116 by imaging.
  • the CCD camera 1116 has an optical device such as a lens or an aperture and a CCD as a photoelectric conversion element, picks up an object, converts the intensity of received light into an electrical signal, and generates image data of the image of the object.
  • the CCD camera 1116 encodes the image data with the image encoder 1153 via the camera I / F unit 1154 and converts it into encoded image data.
  • the cellular phone 1100 uses the above-described image encoding device 300 as the image encoder 1153 that performs such processing.
  • the image encoder 1153 controls the selection of the I_PCM mode in units of CUs smaller than the LCU. That is, the image encoder 1153 can further reduce redundant processing at the time of encoding, and can further reduce redundant information included in encoded data. As a result, the image encoder 1153 can improve the coding efficiency while suppressing a reduction in the coding processing efficiency.
  • the portable telephone 1100 analog-digital converts the voice collected by the microphone (microphone) 1121 during imaging by the CCD camera 1116 in the audio codec 1159, and further encodes it.
  • the cellular phone 1100 multiplexes the encoded image data supplied from the image encoder 1153 and the digital audio data supplied from the audio codec 1159 according to a predetermined scheme in the demultiplexer 1157.
  • the cellular phone 1100 performs spread spectrum processing on the multiplexed data obtained as a result by the modulation / demodulation circuit unit 1158, and performs digital / analog conversion processing and frequency conversion processing by the transmission / reception circuit unit 1163.
  • the cellular phone 1100 transmits the transmission signal obtained by the conversion process to a base station (not shown) via the antenna 1114.
  • the transmission signal (image data) transmitted to the base station is supplied to the other party of communication via a network or the like.
  • the cellular phone 1100 can also display the image data generated by the CCD camera 1116 on the liquid crystal display 1118 via the LCD control unit 1155 without passing through the image encoder 1153.
  • the cellular phone 1100 transmits the signal transmitted from the base station to the transmitting / receiving circuit portion 1163 via the antenna 1114. Receive, amplify, and perform frequency conversion and analog-to-digital conversion. The cellular phone 1100 despreads the received signal by the modulation / demodulation circuit unit 1158 to restore the original multiplexed data. The portable telephone 1100 separates the multiplexed data in the multiplex separation unit 1157 and divides it into encoded image data and audio data.
  • the cellular phone 1100 generates reproduction moving image data by decoding the encoded image data in the image decoder 1156, and causes the liquid crystal display 1118 to display this via the LCD control unit 1155. Thereby, for example, moving image data included in a moving image file linked to the simplified home page is displayed on the liquid crystal display 1118.
  • the cellular phone 1100 uses the above-described image decoding apparatus 500 as the image decoder 1156 that performs such processing. That is, as in the case of the image decoding apparatus 500, the image decoder 1156 appropriately decodes encoded data in which the selection of the I_PCM mode is controlled in CU units smaller than LCU. Therefore, the image decoder 1156 can realize reduction of redundant processing at the time of encoding and reduction of redundant information included in encoded data. Thereby, the image decoder 1156 can realize that the encoding efficiency is improved while suppressing the reduction of the efficiency of the encoding process.
  • the portable telephone 1100 simultaneously converts digital audio data into an analog audio signal in the audio codec 1159 and causes the speaker 1117 to output the analog audio signal.
  • audio data included in a moving image file linked to the simple homepage is reproduced.
  • the cellular phone 1100 can also record (store) the data linked to the received simple home page or the like in the storage unit 1123 via the recording / reproducing unit 1162. .
  • the main control unit 1150 can analyze the two-dimensional code obtained by the CCD camera 1116 by the main control unit 1150 and obtain the information recorded in the two-dimensional code.
  • the cellular phone 1100 can communicate with an external device by infrared light through the infrared communication unit 1181.
  • the mobile phone 1100 when using the image encoding device 300 as the image encoder 1153, the mobile phone 1100 encodes and transmits image data generated by the CCD camera 1116 while suppressing reduction in the efficiency of encoding processing. Efficiency can be improved.
  • the mobile phone 1100 can, for example, increase the efficiency of the encoding process when generating moving image file data (encoded data) linked to a simple homepage or the like. It is possible to improve the coding efficiency of the data while suppressing the reduction.
  • CMOS image sensor CMOS image sensor
  • CMOS complementary metal oxide semiconductor
  • the mobile phone 1100 has been described above, for example, a PDA (Personal Digital Assistants), a smart phone, a UMPC (Ultra Mobile Personal Computer), a netbook, a notebook personal computer, etc.
  • the image encoding device 300 and the image decoding device 500 can be applied to any device as long as the device has a communication function, as in the case of the mobile phone 1100.
  • FIG. 24 is a block diagram showing a main configuration example of a hard disk recorder using the image encoding device 300 and the image decoding device 500.
  • a hard disk recorder (HDD recorder) 1200 shown in FIG. 24 receives audio data and video data of a broadcast program included in a broadcast wave signal (television signal) transmitted by a satellite, a ground antenna, etc., received by a tuner. And an apparatus for storing the stored data in a built-in hard disk and providing the stored data to the user at a timing according to the user's instruction.
  • a broadcast wave signal television signal
  • the hard disk recorder 1200 can extract, for example, audio data and video data from the broadcast wave signal, decode them appropriately, and store them in a built-in hard disk.
  • the hard disk recorder 1200 can also acquire audio data and video data from another device via a network, decode these as appropriate, and store them in a built-in hard disk, for example.
  • the hard disk recorder 1200 decodes, for example, audio data or video data recorded in the built-in hard disk and supplies it to the monitor 1260 to display the image on the screen of the monitor 1260. Can be output. Also, the hard disk recorder 1200 decodes, for example, audio data and video data extracted from a broadcast wave signal acquired via a tuner, or audio data and video data acquired from another device via a network. The image can be supplied to the monitor 1260 and the image can be displayed on the screen of the monitor 1260 and the sound can be output from the speaker of the monitor 1260.
  • the hard disk recorder 1200 has a receiving unit 1221, a demodulating unit 1222, a demultiplexer 1223, an audio decoder 1224, a video decoder 1225, and a recorder control unit 1226.
  • the hard disk recorder 1200 further includes an EPG data memory 1227, a program memory 1228, a work memory 1229, a display converter 1230, an on screen display (OSD) control unit 1231, a display control unit 1232, a recording and reproducing unit 1233, a D / A converter 1234, And a communication unit 1235.
  • EPG data memory 1227 a program memory 1228, a work memory 1229, a display converter 1230, an on screen display (OSD) control unit 1231, a display control unit 1232, a recording and reproducing unit 1233, a D / A converter 1234, And a communication unit 1235.
  • OSD on screen display
  • the display converter 1230 also includes a video encoder 1241.
  • the recording / reproducing unit 1233 has an encoder 1251 and a decoder 1252.
  • the receiving unit 1221 receives an infrared signal from a remote controller (not shown), converts the signal into an electrical signal, and outputs the signal to the recorder control unit 1226.
  • the recorder control unit 1226 is, for example, a microprocessor or the like, and executes various processes in accordance with a program stored in the program memory 1228. At this time, the recorder control unit 1226 uses the work memory 1229 as necessary.
  • the communication unit 1235 is connected to a network and performs communication processing with another device via the network.
  • the communication unit 1235 is controlled by the recorder control unit 1226, communicates with a tuner (not shown), and mainly outputs a channel selection control signal to the tuner.
  • the demodulation unit 1222 demodulates the signal supplied from the tuner and outputs the signal to the demultiplexer 1223.
  • the demultiplexer 1223 separates the data supplied from the demodulation unit 1222 into audio data, video data, and EPG data, and outputs the data to the audio decoder 1224, the video decoder 1225, or the recorder control unit 1226, respectively.
  • the audio decoder 1224 decodes the input audio data and outputs the decoded audio data to the recording / reproducing unit 1233.
  • the video decoder 1225 decodes the input video data and outputs the decoded video data to the display converter 1230.
  • the recorder control unit 1226 supplies the input EPG data to the EPG data memory 1227 for storage.
  • the display converter 1230 encodes the video data supplied from the video decoder 1225 or the recorder control unit 1226 into video data of, for example, a National Television Standards Committee (NTSC) system by the video encoder 1241 and outputs the video data to the recording / reproducing unit 1233.
  • the display converter 1230 converts the screen size of the video data supplied from the video decoder 1225 or the recorder control unit 1226 into a size corresponding to the size of the monitor 1260 and converts the video data into NTSC video data by the video encoder 1241. , And converts it into an analog signal, and outputs it to the display control unit 1232.
  • the display control unit 1232 superimposes the OSD signal output from the OSD (On Screen Display) control unit 1231 on the video signal input from the display converter 1230 under the control of the recorder control unit 1226, and displays it on the display of the monitor 1260. Output and display.
  • OSD On Screen Display
  • the audio data output from the audio decoder 1224 is also converted to an analog signal by the D / A converter 1234 and supplied to the monitor 1260.
  • the monitor 1260 outputs this audio signal from the built-in speaker.
  • the recording / reproducing unit 1233 has a hard disk as a storage medium for recording video data, audio data and the like.
  • the recording / reproducing unit 1233 encodes, for example, the audio data supplied from the audio decoder 1224 by the encoder 1251. Also, the recording / reproducing unit 1233 encodes the video data supplied from the video encoder 1241 of the display converter 1230 by the encoder 1251. The recording / reproducing unit 1233 combines the encoded data of the audio data and the encoded data of the video data by the multiplexer. The recording / reproducing unit 1233 channel-codes and amplifies the synthesized data, and writes the data to the hard disk via the recording head.
  • the recording and reproducing unit 1233 reproduces and amplifies the data recorded on the hard disk via the reproducing head, and separates the data into audio data and video data by the demultiplexer.
  • the recording / reproducing unit 1233 decodes the audio data and the video data by the decoder 1252.
  • the recording / reproducing unit 1233 D / A converts the decoded audio data, and outputs the converted data to a speaker of the monitor 1260. Also, the recording / reproducing unit 1233 D / A converts the decoded video data, and outputs it to the display of the monitor 1260.
  • the recorder control unit 1226 reads the latest EPG data from the EPG data memory 1227 based on the user instruction indicated by the infrared signal from the remote controller received via the reception unit 1221, and supplies it to the OSD control unit 1231. Do.
  • the OSD control unit 1231 generates image data corresponding to the input EPG data, and outputs the image data to the display control unit 1232.
  • the display control unit 1232 outputs the video data input from the OSD control unit 1231 to the display of the monitor 1260 for display. As a result, an EPG (Electronic Program Guide) is displayed on the display of the monitor 1260.
  • EPG Electronic Program Guide
  • the hard disk recorder 1200 can also acquire various data such as video data, audio data, or EPG data supplied from another device via a network such as the Internet.
  • the communication unit 1235 is controlled by the recorder control unit 1226, acquires encoded data such as video data, audio data, and EPG data transmitted from another device via the network, and supplies the encoded data to the recorder control unit 1226. Do.
  • the recorder control unit 1226 supplies, for example, encoded data of the acquired video data and audio data to the recording and reproduction unit 1233 and causes the hard disk to store the data. At this time, the recorder control unit 1226 and the recording / reproducing unit 1233 may perform processing such as re-encoding as needed.
  • the recorder control unit 1226 decodes encoded data of the acquired video data and audio data, and supplies the obtained video data to the display converter 1230.
  • the display converter 1230 processes the video data supplied from the recorder control unit 1226 as well as the video data supplied from the video decoder 1225, supplies it to the monitor 1260 via the display control unit 1232 and displays the image. .
  • the recorder control unit 1226 may supply the decoded audio data to the monitor 1260 via the D / A converter 1234 and output the sound from the speaker.
  • the recorder control unit 1226 decodes the acquired encoded data of the EPG data, and supplies the decoded EPG data to the EPG data memory 1227.
  • the hard disk recorder 1200 as described above uses the image decoding apparatus 500 as a decoder incorporated in the video decoder 1225, the decoder 1252, and the recorder control unit 1226. That is, as in the case of the image decoding apparatus 500, the decoders incorporated in the video decoder 1225, the decoder 1252, and the recorder control unit 1226 are coded data in which the selection of the I_PCM mode is controlled in CU units smaller than LCU. Decode properly. Therefore, the video decoder 1225, the decoder 1252, and the decoder incorporated in the recorder control unit 1226 can realize reduction of redundant processing at the time of encoding and reduction of redundant information included in encoded data. As a result, the video decoder 1225, the decoder 1252, and the decoder incorporated in the recorder control unit 1226 can realize the improvement of the coding efficiency while suppressing the reduction of the efficiency of the coding process.
  • the hard disk recorder 1200 is, for example, efficient in encoding processing when generating video data (encoded data) received by the tuner or the communication unit 1235 or video data (encoded data) reproduced by the recording / reproducing unit 1233. It is possible to improve the coding efficiency of the data while suppressing the reduction of
  • the hard disk recorder 1200 uses the image coding device 300 as the encoder 1251. Therefore, as in the case of the image coding apparatus 300, the encoder 1251 controls the selection of the I_PCM mode in units of CUs smaller than the LCU. That is, the encoder 1251 can further reduce redundant processing at the time of encoding, and can further reduce redundant information included in encoded data. As a result, the encoder 1251 can improve the coding efficiency while suppressing the reduction in the coding process efficiency.
  • the hard disk recorder 1200 when generating encoded data to be recorded on the hard disk, the hard disk recorder 1200 can improve the encoding efficiency while suppressing a reduction in the efficiency of the encoding process.
  • the hard disk recorder 1200 for recording video data and audio data on a hard disk has been described, but of course, any recording medium may be used.
  • a recording medium other than a hard disk such as a flash memory, an optical disk, or a video tape
  • the image encoding device 300 and the image decoding device 500 are applied as Can.
  • FIG. 25 is a block diagram showing an example of a main configuration of a camera using the image encoding device 300 and the image decoding device 500.
  • the camera 1300 shown in FIG. 25 captures an image of an object, displays an image of the object on the LCD 1316, and records the image as image data in the recording medium 1333.
  • the lens block 1311 causes light (that is, an image of a subject) to be incident on the CCD / CMOS 1312.
  • the CCD / CMOS 1312 is an image sensor using a CCD or CMOS, converts the intensity of the received light into an electric signal, and supplies the electric signal to the camera signal processing unit 1313.
  • the camera signal processing unit 1313 converts the electric signal supplied from the CCD / CMOS 1312 into Y, Cr, Cb color difference signals, and supplies the color difference signals to the image signal processing unit 1314.
  • the image signal processing unit 1314 performs predetermined image processing on the image signal supplied from the camera signal processing unit 1313 under the control of the controller 1321, and encodes the image signal with the encoder 1341.
  • the image signal processing unit 1314 supplies the encoded data generated by encoding the image signal to the decoder 1315. Furthermore, the image signal processing unit 1314 obtains display data generated in the on-screen display (OSD) 1320 and supplies the display data to the decoder 1315.
  • OSD on-screen display
  • the camera signal processing unit 1313 appropriately uses a dynamic random access memory (DRAM) 1318 connected via the bus 1317, and as necessary, image data and a code obtained by encoding the image data. Data is held in the DRAM 1318.
  • DRAM dynamic random access memory
  • the decoder 1315 decodes the encoded data supplied from the image signal processing unit 1314, and supplies the obtained image data (decoded image data) to the LCD 1316. Also, the decoder 1315 supplies the display data supplied from the image signal processing unit 1314 to the LCD 1316. The LCD 1316 appropriately combines the image of the decoded image data supplied from the decoder 1315 and the image of the display data, and displays the combined image.
  • the on-screen display 1320 Under the control of the controller 1321, the on-screen display 1320 outputs display data such as a menu screen or icon consisting of symbols, characters, or figures to the image signal processing unit 1314 via the bus 1317.
  • the controller 1321 executes various processing based on a signal indicating the content instructed by the user using the operation unit 1322, and also, via the bus 1317, an image signal processing unit 1314, a DRAM 1318, an external interface 1319, an on-screen display It controls 1320 and the media drive 1323 and the like.
  • the FLASH ROM 1324 stores programs, data, and the like necessary for the controller 1321 to execute various processes.
  • the controller 1321 can encode image data stored in the DRAM 1318 or decode encoded data stored in the DRAM 1318 instead of the image signal processing unit 1314 or the decoder 1315.
  • the controller 1321 may perform encoding / decoding processing by the same method as the encoding / decoding method of the image signal processing unit 1314 or the decoder 1315, or the image signal processing unit 1314 or the decoder 1315 is compatible.
  • the encoding / decoding process may be performed by a method that is not performed.
  • the controller 1321 reads image data from the DRAM 1318 and supplies it to the printer 1334 connected to the external interface 1319 via the bus 1317. Print it.
  • the controller 1321 reads encoded data from the DRAM 1318 and supplies it to the recording medium 1333 attached to the media drive 1323 via the bus 1317.
  • the recording medium 1333 is, for example, any readable / writable removable medium such as a magnetic disk, a magneto-optical disk, an optical disk, or a semiconductor memory.
  • the recording medium 1333 is, of course, optional as a removable medium, and may be a tape device, a disk, or a memory card. Of course, it may be a noncontact IC card or the like.
  • media drive 1323 and the recording medium 1333 may be integrated, and may be configured by a non-portable storage medium such as, for example, a built-in hard disk drive or a solid state drive (SSD).
  • SSD solid state drive
  • the external interface 1319 includes, for example, a USB input / output terminal, and is connected to the printer 1334 when printing an image.
  • a drive 1331 is connected to the external interface 1319 as necessary, and removable media 1332 such as a magnetic disk, an optical disk, or a magneto-optical disk are appropriately mounted, and a computer program read from them is as necessary. And installed in the FLASH ROM 1324.
  • the external interface 1319 has a network interface connected to a predetermined network such as a LAN or the Internet.
  • the controller 1321 can read encoded data from the DRAM 1318 according to an instruction from the operation unit 1322, for example, and can supply it from the external interface 1319 to other devices connected via a network. Also, the controller 1321 acquires encoded data and image data supplied from another device via the network via the external interface 1319, holds the data in the DRAM 1318, and supplies it to the image signal processing unit 1314. Can be
  • the camera 1300 as described above uses the image decoding apparatus 500 as the decoder 1315. That is, as in the case of the image decoding apparatus 500, the decoder 1315 appropriately decodes encoded data in which the selection of the I_PCM mode is controlled in CU units smaller than LCU. Therefore, the decoder 1315 can realize reduction of redundant processing at the time of encoding and reduction of redundant information included in encoded data. Thereby, the decoder 1315 can realize that the coding efficiency is improved while suppressing the reduction of the coding process efficiency.
  • the camera 1300 when the camera 1300 generates encoded data of image data generated by the CCD / CMOS 1312, encoded data of video data read from the DRAM 1318 or the recording medium 1333, or encoded data of video data acquired via a network, for example. It is possible to realize the improvement of the coding efficiency of the data while suppressing the reduction of the efficiency of the coding process.
  • the camera 1300 uses the image coding apparatus 300 as the encoder 1341.
  • the encoder 1341 controls the selection of the I_PCM mode in units of CUs smaller than the LCU. That is, the encoder 1341 can further reduce redundant processing at the time of encoding, and can further reduce redundant information included in encoded data. Thus, the encoder 1341 can improve the coding efficiency while suppressing the reduction in the coding process efficiency.
  • the camera 1300 when the camera 1300 generates encoded data to be recorded in, for example, the DRAM 1318 or the recording medium 1333 or encoded data to be provided to another device, the encoding efficiency can be suppressed while suppressing the reduction in the efficiency of the encoding process. Can be improved.
  • the decoding method of the image decoding apparatus 500 may be applied to the decoding process performed by the controller 1321.
  • the encoding method of the image encoding device 300 may be applied to the encoding process performed by the controller 1321.
  • the image data captured by the camera 1300 may be a moving image or a still image.
  • image encoding device 300 and the image decoding device 500 are also applicable to devices and systems other than the devices described above.
  • the present technology is, for example, MPEG, H. 26x, etc., image information (bit stream) compressed by orthogonal transformation such as discrete cosine transformation and motion compensation, such as satellite broadcasting, cable TV, Internet, mobile phone, etc.
  • the present invention can be applied to an image coding apparatus and an image decoding apparatus used when receiving via a network medium or when processing on a storage medium such as an optical disk, a magnetic disk, and a flash memory.
  • the present technology can also have the following configurations. (1) Whether to select the non-compression mode, which is the encoding mode for outputting the image data as encoded data, as the encoding mode for encoding image data is set for each encoding unit having a hierarchical structure Encoding mode setting unit, An encoding unit configured to encode the image data for each unit of encoding in accordance with the mode set by the encoding mode setting unit.
  • a shift processing control unit configured to skip shift processing for extending bit accuracy when encoding or decoding is performed on a coding unit for which the non-compression mode is set by the coding mode setting unit
  • the image processing apparatus further including: a shift processing unit that performs the shift processing on the image data for a coding unit controlled to perform the shift processing by the shift processing control unit.
  • a filter processing control unit that performs control to skip filter processing for filtering a locally decoded image for a coding unit for which the non-compression mode has been set by the coding mode setting unit;
  • a filter coefficient calculation unit that calculates a filter coefficient of the filtering process using image data of a coding unit controlled to perform the filtering process by the filtering process control unit;
  • a filter processing unit that performs the filter processing for each block, which is a unit of the filter processing, using the filter coefficient calculated by the filter coefficient calculation unit; the image according to (1) or (2) Processing unit.
  • the filter processing unit performs the filter processing only on pixels included in the current block to be processed and controlled to be subjected to the filter processing by the filter processing control unit.
  • the image processing apparatus as described in 2.).
  • the image processing apparatus further including: a filter identification information generation unit that generates, for each of the blocks, filter identification information that is flag information indicating whether the filter processing is performed.
  • the filter processing unit performs adaptive loop filter which is adaptive filter processing using class classification processing on the locally decoded image as described in any one of (3) to (5). Image processing device.
  • the encoding mode setting unit may be configured such that a code amount of encoded data obtained by encoding the image data of the current encoding unit to be encoded is the data amount of the image data of the current encoding unit.
  • the image processing apparatus according to any one of (1) to (6), wherein the coding mode of the current coding unit is set to the non-compression mode when the input data amount is equal to or less than the input data amount.
  • An input data amount calculation unit for calculating the input data amount is further provided, The image processing apparatus according to (7), wherein the coding mode setting unit compares the input data amount calculated by the input data amount calculation unit with the code amount, for the current coding unit. .
  • the identification information generation unit configured to generate identification information indicating whether the non-compression mode is set by the encoding mode setting unit, for each of the encoding units.
  • Image processing device (10) An image processing method of an image processing apparatus Coding having a hierarchical structure as to whether the coding mode setting unit selects a non-compression mode which is a coding mode for outputting the image data as coded data as a coding mode for coding image data Set for each unit, An image processing method, wherein the encoding unit encodes the image data for each encoding unit according to a set mode.
  • An encoding mode determination unit that An image processing apparatus comprising: a decoding unit configured to decode the encoded data for each coding unit according to the mode determined by the coding mode determination unit. (12) A shift control is performed to skip shift processing for extending the bit precision at the time of encoding or decoding, for the encoding unit determined by the encoding mode determination unit to be the non-compression mode selected.
  • the image processing apparatus further including: a shift processing unit that performs the shift processing on the image data for a coding unit controlled to perform the shift processing by the shift processing control unit.
  • a filter processing control unit that performs control to skip filtering processing for filtering locally decoded images for coding units determined by the coding mode determination unit to have the non-compression mode selected.
  • a filter processing unit that performs the filter process on the image data for each block, which is a unit of the filter process.
  • the filter processing unit performs the filter processing only on pixels included in a current block to be processed and controlled to perform the filter processing by the filter processing control unit.
  • (11) or (12) The image processing apparatus as described in 2.).
  • the image processing apparatus performs adaptive loop filter which is adaptive filter processing using class classification processing on the locally decoded image as a target.
  • the filter processing unit indicates that the filter processing has been performed on the image data of the current block to be processed by the filter identification information indicating whether or not the filter processing has been performed. In this case, the filter processing is performed only when the filter processing control unit is controlled to perform the filter processing on all the pixels included in the current block. The above (13) or (14). Image processing device.
  • the encoding mode determination unit determines whether the non-compression mode is selected based on identification information indicating whether the non-compression mode is selected for each of the coding units. The image processing apparatus according to any one of 15).
  • An image processing method of an image processing apparatus Coding having a hierarchical structure as to whether the non-compression mode, which is the coding mode for outputting the image data as coded data, is selected as the coding mode when coding the image data by the coding mode determination unit Judge for each unit, An image processing method of decoding the encoded data for each coding unit according to the determined mode.
  • 300 image coding apparatus 303 adaptive left shift section, 307 lossless coding section, 312 loop filter, 313 adaptive right shift section, 315 adaptive left shift section, 320 rate control section, 321 PCM coding section, 331 NAL coding section , 332 CU encoding unit, 341 I_PCM_flag generating unit, 342 PCM determination unit, 351 deblocking filter, 352 pixel sorting unit, 353 filter coefficient calculation unit, 354 filtering unit, 361 input data amount calculation unit, 362 PCM determination unit, 363 Coding control unit, 364 adaptive shift control unit, 365 filter control unit, 500 image decoding apparatus, 502 lossless decoding unit, 506 loop filter, 507 adaptive right shift unit, 511 adaptive left shift unit, 516 PCM recovery Department, 531 NAL decoding unit, 532 CU decoding unit, 541 I_PCM_flag buffer, 542 PCM controller, 551 de-block filter, 552 pixel sorting unit 553 the filtering unit

Abstract

 本技術は、符号化処理の効率の低減を抑制しながら符号化効率を向上させることができるようにすることができる画像処理装置および方法に関する。画像データを符号化する際の符号化モードとして、前記画像データを符号化データとして出力する符号化モードである非圧縮モードを選択するかを、階層構造を有する符号化単位毎に設定する符号化モード設定部と、前記符号化モード設定部により設定されたモードに従って、前記画像データを前記符号化単位毎に符号化する符号化部とを備える。本開示は、例えば、画像処理装置に適用することができる。

Description

画像処理装置および方法
 本開示は、画像処理装置および方法に関し、特に、符号化処理の効率の低減を抑制しながら、符号化効率を向上させることができるようにした画像処理装置および方法に関する。
 近年、画像情報をデジタルとして取り扱い、その際、効率の高い情報の伝送、蓄積を目的とし、画像情報特有の冗長性を利用して、離散コサイン変換等の直交変換と動き補償により圧縮するMPEG(Moving Picture Experts Group)などの方式に準拠した装置が、放送局などの情報配信、及び一般家庭における情報受信の双方において普及しつつある。
 特に、MPEG2(ISO(International Organization for Standardization)/IEC(International Electrotechnical Commission) 13818-2)は、汎用画像符号化方式として定義されており、飛び越し走査画像及び順次走査画像の双方、並びに標準解像度画像及び高精細画像を網羅する標準で、プロフェッショナル用途及びコンシューマ用途の広範なアプリケーションに現在広く用いられている。MPEG2圧縮方式を用いることにより、例えば720×480画素を持つ標準解像度の飛び越し走査画像であれば4~8Mbps、1920×1088画素を持つ高解像度の飛び越し走査画像であれば18~22Mbpsの符号量(ビットレート)を割り当てることで、高い圧縮率と良好な画質の実現が可能である。
 MPEG2は主として放送用に適合する高画質符号化を対象としていたが、MPEG1より低い符号量(ビットレート)、つまりより高い圧縮率の符号化方式には対応していなかった。携帯端末の普及により、今後そのような符号化方式のニーズは高まると思われ、これに対応してMPEG4符号化方式の標準化が行われた。画像符号化方式に関しては、1998年12月にISO/IEC 14496-2としてその規格が国際標準に承認された。
 更に、近年、当初テレビ会議用の画像符号化を目的として、H.26L (ITU-T(International Telecommunication Union Telecommunication Standardization Sector) Q6/16 VCEG(Video Coding Expert Group))という標準の規格化が進んでいる。H.26LはMPEG2やMPEG4といった従来の符号化方式に比べ、その符号化、復号化により多くの演算量が要求されるものの、より高い符号化効率が実現されることが知られている。また、現在、MPEG4の活動の一環として、このH.26Lをベースに、H.26Lではサポートされない機能をも取り入れ、より高い符号化効率を実現する標準化がJoint Model of Enhanced-Compression Video Codingとして行われている。
 標準化のスケジュールとしては、2003年3月にはH.264及びMPEG-4 Part10 (Advanced Video Coding、以下AVCと記す)という名の元に国際標準となった。
 更に、その拡張として、RGBや4:2:2、4:4:4といった、業務用に必要な符号化ツールや、MPEG-2で規定されていた8x8DCT(Discrete Cosine Transform)や量子化マトリクスをも含んだFRExt(Fidelity Range Extension)の標準化が2005年2月に完了し、これにより、AVCを用いて、映画に含まれるフィルムノイズをも良好に表現することが可能な符号化方式となって、Blu-Ray Disc等の幅広いアプリケーションに用いられる運びとなった。
 しかしながら、昨今、ハイビジョン画像の4倍の、4000×2000画素程度の画像を圧縮したい、或いは、インターネットのような、限られた伝送容量の環境において、ハイビジョン画像を配信したいといった、更なる高圧縮率符号化に対するニーズが高まっている。このため、ITU-T傘下のVCEG(Video Coding Expert Group)において、符号化効率の改善に関する検討が継続され行なわれている。
 ところで、現在、AVCより更なる符号化効率の向上を目的として、ITU-Tと、ISO/IECの共同の標準化団体であるJCTVC(Joint Collaboration Team - Video Coding)により、HEVC(High Efficiency Video Coding)と呼ばれる符号化方式の標準化が進められている(例えば、非特許文献1参照)。
 このHEVC符号化方式においては、AVCにおけるマクロブロックと同様の処理単位としてコーディングユニット(CU(Coding Unit))が定義されている。このCUは、AVCのマクロブロックのようにサイズが16×16画素に固定されず、それぞれのシーケンスにおいて、画像圧縮情報中において指定される。
 CUは、最大のLCU(Largest Coding Unit)から最小のSCU(Smallest Coding Unit)まで階層的に構成される。つまり、概ね、LCUがAVCのマクロブロックに相当し、そのLCUより下の階層のCU(LCUより小さなCU)がAVCのサブマクロブロックに相当すると考えることもできる。
 ところで、画像データを符号化して出力する符号化モードと、画像データを符号化せずに出力する非符号化モードとを有し、符号化モードにするか非符号化モードにするかをマクロブロック単位で選択し、1ピクチャ内において符号化モードと非符号化モードとを混在させることができる符号化方式がある(例えば特許文献1参照)。AVC符号化方式においても、mb_typeとして、画像データを符号化せずに出力させるI_PCMモードがサポートされている(例えば特許文献2参照)。これは、量子化パラメータをQP=0のように小さな値にした場合、符号化データの情報量が、入力画像を上回る場合、算術符号化処理のリアルタイム動作を保証するために用いられる。また、I-PCMを用いることにより、ロスレス符号化を実現することも可能である。
 また、内部演算を増大させる方法が提案されている(例えば、非特許文献2参照)。これにより、直交変換や動き補償といった処理における内部演算誤差をより小さいものにし、符号化効率を向上させることが可能である。
 さらに、動き補償ループ内にFIRフィルタを持つ手法が提案されている(例えば、非特許文献3参照)。符号化装置においては、このFIRフィルタ係数を、入力画像との誤差を最小にするよう、Wiener Filterにより求めることで、参照画像における劣化を最小限に抑え、出力となる画像圧縮情報の符号化効率を向上させることが可能である。
特許第3992303号 特許第4240283号
"Test Model under Consideration",JCTVC-B205,Joint Collaborative Team on Video Coding (JCT-VC)of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG112nd Meeting:Geneva,CH,21-28 July, 2010 Takeshi Chujoh,Reiko Noda,"Internal bit depth increase except frame memory",VCEG-AF07,ITU - Telecommunications Standardization SectorSTUDY GROUP 16 Question 6Video Coding Experts Group (VCEG)32nd Meeting: San Jose, USA, 20-21 April, 2007 Takeshi Chujoh,Goki Yasuda,Naofumi Wada,Takashi Watanabe,Tomoo Yamakage,"Block-based Adaptive Loop Filter",VCEG-AI18,ITU - Telecommunications Standardization SectorSTUDY GROUP 16 Question 6Video Coding Experts Group (VCEG)35th Meeting: Berlin, Germany, 16-18 July, 2008
 しかしながら、HEVCのようにCUを定義し、そのCUを単位として各種処理を行うような符号化方式の場合、AVCにおけるマクロブロックはLCUに相当すると考えられるが、LCU単位でしかI_PCMを設定できないと、処理の単位が、最大128×128画素単位であるため、不要な符号化処理が増大し、符号化処理の効率が低減する恐れがあった。例えば、CABACのリアルタイム動作を保証するのが困難になる恐れがあった。
 また、非特許文献2や非特許文献3において提案されている符号化方式は、AVC符号化方式に含まれないものであり、I_PCMモードへの対応は開示されていなかった。
 本開示は、このような状況に鑑みてなされたものであり、符号化処理の効率の低減を抑制しながら符号化効率を向上させることを目的とする。
 本開示の一側面は、画像データを符号化する際の符号化モードとして、前記画像データを符号化データとして出力する符号化モードである非圧縮モードを選択するかを、階層構造を有する符号化単位毎に設定する符号化モード設定部と、前記符号化モード設定部により設定されたモードに従って、前記画像データを前記符号化単位毎に符号化する符号化部とを備える画像処理装置である。
 前記符号化モード設定部により前記非圧縮モードが設定された符号化単位を対象として、符号化または復号する際のビット精度を拡張するシフト処理をスキップさせるように制御するシフト処理制御部と、前記シフト処理制御部により前記シフト処理を行うように制御される符号化単位を対象として、前記画像データを前記シフト処理するシフト処理部とをさらに備えることができる。
 前記符号化モード設定部により前記非圧縮モードが設定された符号化単位を対象として、ローカルデコードされた画像にフィルタリングを行うフィルタ処理をスキップさせるように制御するフィルタ処理制御部と、前記フィルタ処理制御部により前記フィルタ処理を行うように制御される符号化単位の画像データを用いて、前記フィルタ処理のフィルタ係数を算出するフィルタ係数算出部と、前記フィルタ係数算出部により算出された前記フィルタ係数を用いて、前記フィルタ処理の単位であるブロック毎に前記フィルタ処理を行うフィルタ処理部とをさらに備えることができる。
 前記フィルタ処理部は、処理対象であるカレントブロックに含まれる、前記フィルタ処理制御部により前記フィルタ処理が行われるように制御される画素のみを対象として、前記フィルタ処理を行うことができる。
 前記フィルタ処理が行われるかを示す識別情報であるフィルタ識別情報を、前記ブロック毎に生成するフィルタ識別情報生成部をさらに備えることができる。
 前記フィルタ処理部は、前記ローカルデコードされた画像を対象として、クラス分類処理を用いた適応的なフィルタ処理であるアダプティブループフィルタを行うことができる。
 前記符号化モード設定は、符号化処理対象であるカレント符号化単位の前記画像データが符号化された符号化データの符号量が、前記カレント符号化単位の前記画像データのデータ量である入力データ量以下である場合、前記カレント符号化単位の符号化モードを、前記非圧縮モードに設定することができる。
 前記入力データ量を算出する入力データ量算出部をさらに備え、前記符号化モード設定部は、前記カレント符号化単位を対象として、前記入力データ量算出部により算出された前記入力データ量と、前記符号量とを比較することができる。
 前記符号化モード設定部により前記非圧縮モードが設定されたかを示す識別情報を、前記符号化単位毎に生成する識別情報生成部をさらに備えることができる。
 本開示の一側面は、また、画像処理装置の画像処理方法であって、符号化モード設定部が、画像データを符号化する際の符号化モードとして、前記画像データを符号化データとして出力する符号化モードである非圧縮モードを選択するかを、階層構造を有する符号化単位毎に設定し、符号化部が、設定されたモードに従って、前記画像データを前記符号化単位毎に符号化する画像処理方法である。
 本開示の他の側面は、画像データを符号化する際の符号化モードとして、前記画像データを符号化データとして出力する符号化モードである非圧縮モードが選択されたかを、階層構造を有する符号化単位毎に判定する符号化モード判定部と、前記符号化モード判定部により判定されたモードに従って、前記符号化結果を前記符号化単位毎に復号する復号部とを備える画像処理装置である。
 前記符号化モード判定部により前記非圧縮モードが選択されたと判定された符号化単位を対象として、符号化または復号する際のビット精度を拡張するシフト処理をスキップさせるように制御するシフト処理制御部と、前記シフト処理制御部により前記シフト処理を行うように制御される符号化単位を対象として、前記画像データを前記シフト処理するシフト処理部とをさらに備えることができる。
 前記符号化モード判定部により前記非圧縮モードが選択されたと判定された符号化単位を対象として、ローカルデコードされた画像にフィルタリングを行うフィルタ処理をスキップさせるように制御するフィルタ処理制御部と、前記フィルタ処理の単位であるブロック毎に、前記画像データに対して前記フィルタ処理を行うフィルタ処理部とを備え、前記フィルタ処理部は、処理対象であるカレントブロックに含まれる、前記フィルタ処理制御部により前記フィルタ処理を行うように制御された画素のみを対象として、前記フィルタ処理を行うことができる。
 前記フィルタ処理部は、前記ローカルデコードされた画像を対象として、クラス分類処理を用いた適応的なフィルタ処理であるアダプティブループフィルタを行うことができる。
 前記フィルタ処理部は、前記フィルタ処理が行われたかを示すフィルタ識別情報により、処理対象であるカレントブロックの画像データに対して前記フィルタ処理が行われたことが示されている場合、前記フィルタ処理制御部により、前記カレントブロックに含まれる全ての画素を対象として前記フィルタ処理を行うように制御されているときのみ、前記フィルタ処理を行うことができる。
 前記符号化モード判定部は、前記符号化単位毎に前記非圧縮モードが選択されたかを示す識別情報に基づいて、前記非圧縮モードが選択されたかを判定することができる。
 本開示の他の側面は、また、画像処理装置の画像処理方法であって、符号化モード判定部が、画像データを符号化する際の符号化モードとして、前記画像データを符号化データとして出力する符号化モードである非圧縮モードが選択されたかを、階層構造を有する符号化単位毎に判定し、復号部が、判定されたモードに従って、前記符号化データを前記符号化単位毎に復号する画像処理方法である。
 本開示の一側面においては、画像データを符号化する際の符号化モードとして、その画像データを符号化データとして出力する符号化モードである非圧縮モードを選択するかが、階層構造を有する符号化単位毎に設定され、設定されたモードに従って前記画像データが前記符号化単位毎に符号化される。
 本開示の他の側面においては、画像データを符号化する際の符号化モードとして、その画像データを符号化データとして出力する符号化モードである非圧縮モードが選択されたかが、階層構造を有する符号化単位毎に判定され、判定されたモードに従って、その符号化データが符号化単位毎に復号される。
 本開示によれば、画像を処理することができる。特に、符号化処理の効率の低減を抑制しながら符号化効率を向上させることができる。
AVC符号化方式に基づく画像圧縮情報を出力する画像符号化装置を示すブロック図である。 AVC符号化方式に基づく画像圧縮情報を入力とする画像復号装置を示すブロック図である。 マクロブロックの種類の例を示す図である。 コーディングユニットの構成例を説明する図である。 内部演算においてビット量を増大させる方法を説明する図である。 適応ループフィルタを説明する図である。 画像符号化装置の主な構成例を示すブロック図である。 図7の可逆符号化部、ループフィルタ、およびPCM符号化部の主な構成例を示すブロック図である。 図8のPCM決定部の主な構成例を示すブロック図である。 符号化処理の流れの例を説明するフローチャートである。 PCM符号化制御処理の流れの例を説明するフローチャートである。 PCM符号化処理の流れの例を説明するフローチャートである。 参照画像生成処理の流れの例を説明するフローチャートである。 ループフィルタ処理の流れの例を説明するフローチャートである。 画像復号装置の主な構成例を示すブロック図である。 図15の可逆復号部、ループフィルタ、およびPCM復号部の主な構成例を示すブロック図である。 復号処理の流れの例を説明するフローチャートである。 復号処理の流れの例を説明する、図17に続くフローチャートである。 ループフィルタ処理の流れの例を説明するフローチャートである。 I_PCM情報の例を説明する図である。 パーソナルコンピュータの主な構成例を示すブロック図である。 テレビジョン受像機の主な構成例を示すブロック図である。 携帯電話機の主な構成例を示すブロック図である。 ハードディスクレコーダの主な構成例を示すブロック図である。 カメラの主な構成例を示すブロック図である。
 以下、本技術を実施するための形態(以下実施の形態とする)について説明する。なお、説明は以下の順序で行う。
 1.第1の実施の形態(画像符号化装置)
 2.第2の実施の形態(画像復号装置)
 3.第3の実施の形態(パーソナルコンピュータ)
 4.第4の実施の形態(テレビジョン受像機)
 5.第5の実施の形態(携帯電話機)
 6.第6の実施の形態(ハードディスクレコーダ)
 7.第7の実施の形態(カメラ)
 <1.第1の実施の形態>
 [AVC符号化方式の画像符号化装置]
 図1は、H.264及びMPEG(Moving Picture Experts Group)4 Part10(AVC(Advanced Video Coding))符号化方式により画像を符号化する画像符号化装置の一実施の形態の構成を表している。
 図1に示される画像符号化装置100は、AVC規格に基づいた符号化方式で画像を符号化し、出力する装置である。図1に示されるように、画像符号化装置100は、A/D変換部101、画面並べ替えバッファ102、演算部103、直交変換部104、量子化部105、可逆符号化部106、および蓄積バッファ107を有する。また、画像符号化装置100は、逆量子化部108、逆直交変換部109、演算部110、デブロックフィルタ111、フレームメモリ112、選択部113、イントラ予測部114、動き予測・補償部115、選択部116、およびレート制御部117を有する。
 A/D変換部101は、入力された画像データをA/D変換し、画面並べ替えバッファ102に出力し、記憶させる。画面並べ替えバッファ102は、記憶した表示の順番のフレームの画像を、GOP(Group of Picture)構造に応じて、符号化のためのフレームの順番に並べ替える。画面並べ替えバッファ102は、フレームの順番を並び替えた画像を、演算部103に供給する。また、画面並べ替えバッファ102は、フレームの順番を並び替えた画像を、イントラ予測部114および動き予測・補償部115にも供給する。
 演算部103は、画面並べ替えバッファ102から読み出された画像から、選択部116を介してイントラ予測部114若しくは動き予測・補償部115から供給される予測画像を減算し、その差分情報を直交変換部104に出力する。
 例えば、イントラ符号化が行われる画像の場合、演算部103は、画面並べ替えバッファ102から読み出された画像から、イントラ予測部114から供給される予測画像を減算する。また、例えば、インター符号化が行われる画像の場合、演算部103は、画面並べ替えバッファ102から読み出された画像から、動き予測・補償部115から供給される予測画像を減算する。
 直交変換部104は、演算部103から供給される差分情報に対して、離散コサイン変換、カルーネン・レーベ変換等の直交変換を施し、その変換係数を量子化部105に供給する。
 量子化部105は、直交変換部104が出力する変換係数を量子化する。量子化部105は、レート制御部117から供給される符号量の目標値に関する情報に基づいて量子化パラメータを設定し、量子化を行う。量子化部105は、量子化された変換係数を可逆符号化部106に供給する。
 可逆符号化部106は、その量子化された変換係数に対して、可変長符号化、算術符号化等の可逆符号化を施す。係数データは、レート制御部117の制御の下で量子化されているので、この符号量は、レート制御部117が設定した目標値となる(若しくは目標値に近似する)。
 可逆符号化部106は、イントラ予測を示す情報などをイントラ予測部114から取得し、インター予測モードを示す情報や動きベクトル情報などを動き予測・補償部115から取得する。なお、イントラ予測(画面内予測)を示す情報は、以下、イントラ予測モード情報とも称する。また、インター予測(画面間予測)を示す情報モードを示す情報は、以下、インター予測モード情報とも称する。
 可逆符号化部106は、量子化された変換係数を符号化するとともに、フィルタ係数、イントラ予測モード情報、インター予測モード情報、および量子化パラメータなどの各種情報を、符号化データのヘッダ情報の一部とする(多重化する)。可逆符号化部106は、符号化して得られた符号化データを蓄積バッファ107に供給して蓄積させる。
 例えば、可逆符号化部106においては、可変長符号化または算術符号化等の可逆符号化処理が行われる。可変長符号化としては、H.264/AVC方式で定められているCAVLC(Context-Adaptive Variable Length Coding)などがあげられる。算術符号化としては、CABAC(Context-Adaptive Binary Arithmetic Coding)などがあげられる。
 蓄積バッファ107は、可逆符号化部106から供給された符号化データを、一時的に保持し、所定のタイミングにおいて、H.264/AVC方式で符号化された符号化画像として、例えば、後段の図示せぬ記録装置や伝送路などに出力する。
 また、量子化部105において量子化された変換係数は、逆量子化部108にも供給される。逆量子化部108は、その量子化された変換係数を、量子化部105による量子化に対応する方法で逆量子化する。逆量子化部108は、得られた変換係数を、逆直交変換部109に供給する。
 逆直交変換部109は、供給された変換係数を、直交変換部104による直交変換処理に対応する方法で逆直交変換する。逆直交変換された出力(復元された差分情報)は、演算部110に供給される。
 演算部110は、逆直交変換部109より供給された逆直交変換結果、すなわち、復元された差分情報に、選択部116を介してイントラ予測部114若しくは動き予測・補償部115から供給される予測画像を加算し、局部的に復号された画像(復号画像)を得る。
 例えば、差分情報が、イントラ符号化が行われる画像に対応する場合、演算部110は、その差分情報にイントラ予測部114から供給される予測画像を加算する。また、例えば、差分情報が、インター符号化が行われる画像に対応する場合、演算部110は、その差分情報に動き予測・補償部115から供給される予測画像を加算する。
 その加算結果は、デブロックフィルタ111またはフレームメモリ112に供給される。
 デブロックフィルタ111は、適宜デブロックフィルタ処理を行うことにより復号画像のブロック歪を除去する。デブロックフィルタ111は、そのフィルタ処理結果をフレームメモリ112に供給する。なお、演算部110から出力される復号画像は、デブロックフィルタ111を介さずにフレームメモリ112に供給することができる。すなわち、デブロックフィルタ111のデブロックフィルタ処理は省略することができる。
 フレームメモリ112は、供給される復号画像を記憶し、所定のタイミングにおいて、記憶している復号画像を参照画像として、選択部113を介してイントラ予測部114または動き予測・補償部115に出力する。
 例えば、イントラ符号化が行われる画像の場合、フレームメモリ112は、参照画像を、選択部113を介してイントラ予測部114に供給する。また、例えば、インター符号化が行われる場合、フレームメモリ112は、参照画像を、選択部113を介して動き予測・補償部115に供給する。
 選択部113は、フレームメモリ112から供給される参照画像がイントラ符号化を行う画像である場合、その参照画像をイントラ予測部114に供給する。また、選択部113は、フレームメモリ112から供給される参照画像がインター符号化を行う画像である場合、その参照画像を動き予測・補償部115に供給する。
 イントラ予測部114は、選択部113を介してフレームメモリ112から供給される処理対象ピクチャ内の画素値を用いて予測画像を生成するイントラ予測(画面内予測)を行う。イントラ予測部114は、予め用意された複数のモード(イントラ予測モード)でこのイントラ予測を行う。
 H.264画像情報符号化方式において、輝度信号に対しては、イントラ4×4予測モード、イントラ8×8予測モード及びイントラ16×16予測モードが定義されており、また、色差信号に関しては、それぞれのマクロブロックごとに、輝度信号とは独立した予測モードを定義することが可能である。イントラ4×4予測モードについては、それぞれの4×4輝度ブロックに対して、イントラ8×8予測モードについては、それぞれの8×8輝度ブロックに対して、1つのイントラ予測モードが定義されることになる。イントラ16×16予測モード、並びに、色差信号に対しては、1つのマクロブロックに対して、それぞれ1つの予測モードが定義されることになる。
 イントラ予測部114は、候補となる全てのイントラ予測モードで予測画像を生成し、画面並べ替えバッファ102から供給される入力画像を用いて各予測画像のコスト関数値を評価し、最適なモードを選択する。イントラ予測部114は、最適なイントラ予測モードを選択すると、その最適なモードで生成された予測画像を、選択部116を介して演算部103や演算部110に供給する。
 また、上述したように、イントラ予測部114は、採用されたイントラ予測モードを示すイントラ予測モード情報等の情報を、適宜可逆符号化部106に供給する。
 動き予測・補償部115は、インター符号化が行われる画像について、画面並べ替えバッファ102から供給される入力画像と、選択部113を介してフレームメモリ112から供給される参照画像とを用いて、動き予測(インター予測)を行い、検出された動きベクトルに応じて動き補償処理を行い、予測画像(インター予測画像情報)を生成する。動き予測・補償部115は、予め用意された複数のモード(インター予測モード)でこのようなインター予測を行う。
 動き予測・補償部115は、候補となる全てのインター予測モードで予測画像を生成し、各予測画像のコスト関数値を評価し、最適なモードを選択する。動き予測・補償部115は、生成された予測画像を、選択部116を介して演算部103や演算部110に供給する。
 また、動き予測・補償部115は、採用されたインター予測モードを示すインター予測モード情報や、算出した動きベクトルを示す動きベクトル情報を可逆符号化部106に供給する。
 選択部116は、イントラ符号化を行う画像の場合、イントラ予測部114の出力を演算部103や演算部110に供給し、インター符号化を行う画像の場合、動き予測・補償部115の出力を演算部103や演算部110に供給する。
 レート制御部117は、蓄積バッファ107に蓄積された圧縮画像に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部105の量子化動作のレートを制御する。
 [AVC符号化方式の画像復号装置]
 図2は、離散コサイン変換若しくはカルーネン・レーベ変換等の直交変換と動き補償により画像圧縮を実現する画像復号装置の主な構成例を示すブロック図である。図2に示される画像復号装置200は、図1の画像符号化装置100に対応する復号装置である。
 画像符号化装置100より符号化された符号化データは、例えば伝送路や記録媒体等、任意の経路を介して、この画像符号化装置100に対応する画像復号装置200に供給され、復号される。
 図2に示されるように、画像復号装置200は、蓄積バッファ201、可逆復号部202、逆量子化部203、逆直交変換部204、演算部205、デブロックフィルタ206、画面並べ替えバッファ207、およびD/A変換部208を有する。また、画像復号装置200は、フレームメモリ209、選択部210、イントラ予測部211、動き予測・補償部212、および選択部213を有する。
 蓄積バッファ201は、伝送されてきた符号化データを蓄積する。この符号化データは、画像符号化装置100により符号化されたものである。可逆復号部202は、蓄積バッファ201から所定のタイミングで読み出された符号化データを、図1の可逆符号化部106の符号化方式に対応する方式で復号する。
 また、当該フレームがイントラ符号化されたものである場合、符号化データのヘッダ部にはイントラ予測モード情報が格納されている。可逆復号部202は、このイントラ予測モード情報も復号し、その情報をイントラ予測部211に供給する。これに対して、当該フレームがインター符号化されたものである場合、符号化データのヘッダ部には動きベクトル情報が格納されている。可逆復号部202は、この動きベクトル情報も復号し、その情報を動き予測・補償部212に供給する。
 逆量子化部203は、可逆復号部202により復号されて得られた係数データ(量子化係数)を、図1の量子化部105の量子化方式に対応する方式で逆量子化する。つまり、逆量子化部203は、図1の逆量子化部108と同様の方法で量子化係数の逆量子化を行う。
 逆量子化部203は、逆量子化された係数データ、つまり、直交変換係数を、逆直交変換部204に供給する。逆直交変換部204は、図1の直交変換部104の直交変換方式に対応する方式(図1の逆直交変換部109と同様の方式)で、その直交変換係数を逆直交変換し、画像符号化装置100において直交変換される前の残差データに対応する復号残差データを得る。例えば、4次の逆直交変換が施される。
 逆直交変換されて得られた復号残差データは、演算部205に供給される。また、演算部205には、選択部213を介して、イントラ予測部211若しくは動き予測・補償部212から予測画像が供給される。
 演算部205は、その復号残差データと予測画像とを加算し、画像符号化装置100の演算部103により予測画像が減算される前の画像データに対応する復号画像データを得る。演算部205は、その復号画像データをデブロックフィルタ206に供給する。
 デブロックフィルタ206は、供給された復号画像のブロック歪を除去した後、画面並べ替えバッファ207に供給する。
 画面並べ替えバッファ207は、画像の並べ替えを行う。すなわち、図1の画面並べ替えバッファ102により符号化の順番のために並べ替えられたフレームの順番が、元の表示の順番に並べ替えられる。D/A変換部208は、画面並べ替えバッファ207から供給された画像をD/A変換し、図示せぬディスプレイに出力し、表示させる。
 デブロックフィルタ206の出力は、さらに、フレームメモリ209に供給される。
 フレームメモリ209、選択部210、イントラ予測部211、動き予測・補償部212、および選択部213は、画像符号化装置100のフレームメモリ112、選択部113、イントラ予測部114、動き予測・補償部115、および選択部116にそれぞれ対応する。
 選択部210は、インター処理される画像と参照される画像をフレームメモリ209から読み出し、動き予測・補償部212に供給する。また、選択部210は、イントラ予測に用いられる画像をフレームメモリ209から読み出し、イントラ予測部211に供給する。
 イントラ予測部211には、ヘッダ情報を復号して得られたイントラ予測モードを示す情報等が可逆復号部202から適宜供給される。イントラ予測部211は、この情報に基づいて、フレームメモリ209から取得した参照画像から予測画像を生成し、生成した予測画像を選択部213に供給する。
 動き予測・補償部212は、ヘッダ情報を復号して得られた情報(予測モード情報、動きベクトル情報、参照フレーム情報、フラグ、および各種パラメータ等)を可逆復号部202から取得する。
 動き予測・補償部212は、可逆復号部202から供給されるそれらの情報に基づいて、フレームメモリ209から取得した参照画像から予測画像を生成し、生成した予測画像を選択部213に供給する。
 選択部213は、動き予測・補償部212またはイントラ予測部211により生成された予測画像を選択し、演算部205に供給する。
 [マクロブロックタイプ]
 ところで、特許文献1に示されるように、画像データを符号化して出力する符号化モードと、画像データを符号化せずに出力する非符号化モードとを有し、符号化モードにするか非符号化モードにするかをマクロブロック単位で選択し、1ピクチャ内において符号化モードと非符号化モードとを混在させることができる符号化方式がある。特許文献2に示されるように、AVC符号化方式においても、図3に示されるとおり、マクロブロックの種類(mb_type)の1つとして、画像データを符号化せずに出力させるI_PCM(Intra-block pulse code modulation)(非圧縮)モードがサポートされている。
 これは、量子化パラメータをQP=0のように小さな値にした場合、符号化データの情報量が、入力画像を上回る場合、算術符号化処理のリアルタイム動作を保証するために用いられる。また、I-PCMモード(非圧縮モード)を用いることにより、ロスレス符号化を実現することも可能である。
 [コスト関数]
 ところで、AVC符号化方式において、より高い符号化効率を達成するには、適切な予測モードの選択が重要である。
 かかる選択方式の例として、http://iphome.hhi.de/suehring/tml/index.htm において公開されている、JM (Joint Model) と呼ばれるH.264/MPEG-4 AVCの参照ソフトウエアに実装されている方法を挙げることが出来る。
 JMにおいては、以下に述べる、High Complexity Modeと、Low Complexity Modeの2通りのモード判定方法を選択することが可能である。どちらも、それぞれの予測モードModeに関するコスト関数値を算出し、これを最小にする予測モードを当該ブロック乃至マクロブロックに対する最適モードとして選択する。
 High Complexity Modeにおけるコスト関数は、以下の式(1)のようになる。
 Cost(Mode∈Ω)=D+λ*R ・・・(1)
 ここで、Ωは、当該ブロック乃至マクロブロックを符号化するための候補モードの全体集合、Dは、当該予測モードModeで符号化した場合の、復号画像と入力画像の差分エネルギーである。λは、量子化パラメータの関数として与えられるLagrange未定乗数である。Rは、直交変換係数を含んだ、当該モードModeで符号化した場合の総符号量である。
 つまり、High Complexity Modeでの符号化を行うには、上記パラメータD及びRを算出するため、全ての候補モード(Mode)により、一度、仮エンコード処理を行なう必要があり、より高い演算量を要する。
 Low Complexity Modeにおけるコスト関数は、以下の式(2)のようになる。
 Cost(Mode∈Ω)=D+QP2Quant(QP)*HeaderBit ・・・(2)
 ここで、Dは、High Complexity Modeの場合と異なり、予測画像と入力画像の差分エネルギーとなる。QP2Quant(QP) は、量子化パラメータQPの関数として与えられ、HeaderBitは、直交変換係数を含まない、動きベクトルや、モードといった、Headerに属する情報に関する符号量である。
 すなわち、Low Complexity Modeにおいては、それぞれの候補モード(Mode)に関して、予測処理を行う必要があるが、復号化画像までは必要ないため、符号化処理まで行う必要はない。このため、High Complexity Modeより低い演算量での実現が可能である。
 [コーディングユニット]
 次に、非特許文献1に記載のHEVC符号化方式において定められている、コーディングユニット(Coding Unit)について説明する。
 Coding Unit(CU)は、Coding Tree Block(CTB)とも呼ばれ、AVCにおけるマクロブロックと同様の役割を果たす、ピクチャ単位の画像の部分領域であり、階層構造を有する符号化単位である。マクロブロックは、16×16画素の大きさに固定されているのに対し、CUの大きさは固定されておらず、それぞれのシーケンスにおいて、画像圧縮情報中において指定されることになる。
 特に、最大の大きさを持つCUを、LCU(Largest Coding Unit)と呼び、また、最小の大きさを持つCUをSCU(Smallest Coding Unit)と称する。例えば画像圧縮情報に含まれるシーケンスパラメータセット(SPS)において、これらの領域のサイズが指定されることになるが、それぞれ、正方形で、2の冪乗で表される大きさに限定される。
 図4に、HEVCで定義されているコーディングユニット(Coding Unit)の例を示す。図4の例では、LCUの大きさが128であり、最大階層深度が5となる。2N×2Nの大きさのCUは、split_flagの値が「1」である時、1つ下の階層となる、N×Nの大きさのCUに分割される。
 更に、CUは、イントラ若しくはインター予測の処理単位となる領域(ピクチャ単位の画像の部分領域)であるプレディクションユニット(Prediction Unit(PU))に分割され、また、直交変換の処理単位となる領域(ピクチャ単位の画像の部分領域)である、トランスフォームユニット(Transform Unit(TU))に分割される。現在、HEVCにおいては、4×4及び8×8に加え、16×16及び32×32直交変換を用いることが可能である。
 [IBDI]
 ところで、非特許文献2においては、図5に示されるような、内部演算を増大させる方法(IBDI(Internal bit depth increase except frame memory))が提案されている。この方法の場合、図5に示されるように、符号化装置および復号装置の、量子化処理、可逆符号化処理、逆量子化処理、フィルタ処理、予測処理、および可逆復号処理等において、データのビット深度を例えば8ビットから12ビットに拡張する。これにより、直交変換や動き補償といった処理における内部演算誤差をより小さいものにし、符号化効率を向上させることが可能である。
 [BALF]
 ところで、非特許文献3においては、図5に示されるように、動き補償ループ内にFIRフィルタを持ち、そのフィルタにより適応的にループフィルタ処理(BALF(Block-based Adaptive Loop Filter))を行う手法が提案されている。符号化装置においては、このFIRフィルタ係数を、入力画像との誤差を最小にするよう、Wiener Filterにより求めることで、参照画像における劣化を最小限に抑え、出力となる画像圧縮情報の符号化効率を向上させることが可能である。
 [符号化処理の効率]
 ところで、HEVCのようにCUを定義し、そのCUを単位として各種処理を行うような符号化方式の場合、AVCにおけるマクロブロックはLCUに相当すると考えることができる。しかしながら、CUは図4に示されるように階層構造を有するので、その最上位階層のLCUのサイズは、例えば128×128画素のように、AVCのマクロブロックより大きく設定されることが一般的である。
 したがって、このような符号化方式においてもAVCの場合と同様に、LCU単位でI_PCMモードを設定するようにすると、処理の単位が、例えば128×128画素単位のように、AVCの場合よりも大きくなってしまう。
 イントラ予測やインター予測のモードは、上述したようにコスト関数値を算出し、比較することにより決定される。すなわち、全てのモードで予測や符号化が行われ、それぞれのコスト関数値が算出され、最適なモードが選択され、その最適なモードで符号化データが生成される。
 しかしながら、I_PCMモードが採用されると、その最適なモードで生成された符号化データは破棄され、入力画像(非符号化データ)がそのまま符号化結果として採用される。従って、I_PCMモードが選択された場合、その最適なモードの符号化データを生成するための処理は全て不要な処理となってしまう。つまり、このI_PCMモードの選択制御の単位が大きくなると不要な処理がさらに増大することになる。つまり、上述したようにLCU毎にI_PCMモードを採用するか否かを選択するようにすると、符号化処理の効率がより低減してしまう恐れがあった。したがって、例えば、CABACのリアルタイム動作を保証することが困難になる恐れがあった。
 また、上述したIBDIやBALFといった技術は、AVC符号化方式に含まれないものであり、I_PCMモードが採用される場合において、これらの処理をどのように制御するかが不明であった。
 そこで、本実施においては、I_PCMモード(非圧縮モード)の選択をより詳細に制御することができるようにし、符号化処理の効率の低減を抑制しながら符号化効率を向上させることができるようにする。また、I_PCMモードの選択に応じて、適切にIBDIやBALFの実行の有無を制御するようにし、符号化処理の効率の低減をさらに抑制することができるようにする。
 [画像符号化装置]
 図7は、画像符号化装置の主な構成例を示すブロック図である。
 図7に示される画像符号化装置300は、図1の画像符号化装置100と基本的に同様の装置であり、画像データを符号化する。図7に示されるように画像符号化装置300は、A/D変換部301、画面並べ替えバッファ302、適応左シフト部303、演算部304、直交変換部305、量子化部306、可逆符号化部307、および蓄積バッファ308を有する。また、画像符号化装置300は、逆量子化部309、逆直交変換部310、演算部311、ループフィルタ312、適応右シフト部313、フレームメモリ314、適応左シフト部315、選択部316、イントラ予測部317、動き予測・補償部318、選択部319、およびレート制御部320を有する。
 画像符号化装置300は、さらに、PCM符号化部321を有する。
 A/D変換部301は、A/D変換部101の場合と同様に、入力された画像データをA/D変換する。A/D変換部301は、変換後の画像データ(デジタルデータ)を、画面並べ替えバッファ302に供給し、記憶させる。画面並べ替えバッファ302は、画面並べ替えバッファ102の場合と同様に、記憶した表示の順番のフレームの画像を、GOP(Group of Picture)構造に応じて、符号化のためのフレームの順番に並べ替える。画面並べ替えバッファ302は、フレームの順番を並び替えた画像を、適応左シフト部303に供給する。
 また、画面並べ替えバッファ302は、フレームの順番を並び替えた画像を、可逆符号化部307およびPCM符号化部321にも供給する。
 適応左シフト部303は、PCM符号化部321に制御され、画面並べ替えバッファ302から読み出された画像データを左方向にシフトし、そのビット深度を所定ビット数(例えば4ビット)増大させる。例えば、適応左シフト部303は、画面並べ替えバッファ302から読み出された画像データのビット深度を、8ビットから12ビットに増大させる。このようにビット深度を増大させることにより、直交変換処理、量子化処理、可逆符号化処理、および予測処理等の各処理における内部演算の精度を向上させ、誤差を抑制することができる。
 なお、この左シフト量(ビット量)は任意であり、固定値であってもよいし、可変であっても良い。また、PCM符号化部321の制御により、この左シフト処理は省略(スキップ)されることもある。
 適応左シフト部303は、左シフト処理後の画像データを(処理が省略(スキップ)された場合は、画面並べ替えバッファ302から出力された画像データをそのまま)演算部304に供給する。また、適応左シフト部303は、その画像データを、イントラ予測部317および動き予測・補償部318にも供給する。
 演算部304は、演算部103の場合と同様に、適応左シフト部303から供給された画像から、選択部319を介してイントラ予測部317若しくは動き予測・補償部318から供給される予測画像を減算する。演算部304は、その差分情報を直交変換部305に出力する。
 例えば、イントラ符号化が行われる画像の場合、演算部304は、適応左シフト部303から供給された画像から、イントラ予測部317から供給される予測画像を減算する。また、例えば、インター符号化が行われる画像の場合、演算部304は、適応左シフト部303から供給された画像から、動き予測・補償部318から供給される予測画像を減算する。
 直交変換部305は、直交変換部104の場合と同様に、演算部304から供給される差分情報に対して、離散コサイン変換、カルーネン・レーベ変換等の直交変換を施す。なお、この直交変換の方法は任意である。直交変換部305は、その変換係数を量子化部306に供給する。
 量子化部306は、量子化部105の場合と同様に、直交変換部305から供給される変換係数を量子化する。量子化部306は、レート制御部320から供給される符号量の目標値に関する情報に基づいて量子化パラメータを設定し、その量子化を行う。なお、この量子化の方法は任意である。量子化部306は、量子化された変換係数を可逆符号化部307に供給する。
 可逆符号化部307は、可逆符号化部106の場合と同様に、量子化部306において量子化された変換係数に対して、可変長符号化、算術符号化等の可逆符号化を施す。係数データは、レート制御部320の制御の下で量子化されているので、この符号量は、レート制御部320が設定した目標値となる(若しくは目標値に近似する)。
 なお、可逆符号化部307は、PCM符号化部321によりI_PCMモードが選択された場合、画面並べ替えバッファ302から供給される入力画像(非符号化データ)を符号化結果とする(つまり、実際には符号化は省略(スキップ)される)。
 また、可逆符号化部307は、イントラ予測のモードを示す情報などをイントラ予測部317から取得し、インター予測のモードを示す情報や動きベクトル情報などを動き予測・補償部318から取得する。さらに、可逆符号化部307は、ループフィルタ312において使用されたフィルタ係数を取得する。
 可逆符号化部307は、これらのフィルタ係数、イントラ予測やインター予測のモードを示す情報、並びに量子化パラメータなどの各種情報を、可逆符号化部106の場合と同様に符号化し、符号化データのヘッダ情報の一部とする(多重化する)。可逆符号化部307は、符号化して得られた符号化データ(I_PCMモードの場合の非符号化データを含む)を蓄積バッファ308に供給して蓄積させる。
 例えば、可逆符号化部307においては、可逆符号化部106の場合と同様に、可変長符号化または算術符号化等の可逆符号化処理が行われる。可変長符号化としては、H.264/AVC方式で定められているCAVLC(Context-Adaptive Variable Length Coding)などがあげられる。算術符号化としては、CABAC(Context-Adaptive Binary Arithmetic Coding)などがあげられる。もちろん、可逆符号化部307が、これらの方法以外の方法で符号化を行うようにしてもよい。
 蓄積バッファ308は、蓄積バッファ107の場合と同様に、可逆符号化部307から供給された符号化データ(I_PCMモードの場合の非符号化データを含む)を、一時的に保持する。蓄積バッファ308は、所定のタイミングにおいて、保持している符号化データを、例えば、後段の図示せぬ記録装置(記録媒体)や伝送路などに出力する。
 また、量子化部306において量子化された変換係数は、逆量子化部309にも供給される。逆量子化部309は、その量子化された変換係数を、逆量子化部108の場合と同様に、量子化部306による量子化に対応する方法で逆量子化する。この逆量子化の方法は、量子化部306による量子化処理に対応する方法であればどのような方法であってもよい。逆量子化部309は、得られた変換係数を、逆直交変換部310に供給する。
 逆直交変換部310は、逆量子化部309から供給された変換係数を、逆直交変換部109の場合と同様に、直交変換部305による直交変換処理に対応する方法で逆直交変換する。この逆直交変換の方法は、直交変換部305による直交変換処理に対応する方法であればどのようなものであってもよい。逆直交変換された出力(復元された差分情報)は、演算部311に供給される。
 演算部311は、演算部110の場合と同様に、逆直交変換部310から供給された逆直交変換結果、すなわち、復元された差分情報に、選択部319を介してイントラ予測部317若しくは動き予測・補償部318から供給される予測画像を加算し、局部的に復号(ローカルデコード)された画像(復号画像)を得る。
 例えば、差分情報が、イントラ符号化が行われる画像に対応する場合、演算部311は、その差分情報にイントラ予測部317から供給される予測画像を加算する。また、例えば、差分情報が、インター符号化が行われる画像に対応する場合、演算部311は、その差分情報に動き予測・補償部318から供給される予測画像を加算する。
 その加算結果(復号画像)は、ループフィルタ312または適応右シフト部313に供給される。
 ループフィルタ312は、デブロックフィルタや適応ループフィルタ等を含み、演算部311から供給される復号画像に対して適宜フィルタ処理を行う。例えば、ループフィルタ312は、復号画像に対して、デブロックフィルタ111と同様のデブロックフィルタ処理を行うことにより復号画像のブロック歪を除去する。また、例えば、ループフィルタ312は、PCM符号化部321に制御されて、そのデブロックフィルタ処理結果(ブロック歪みの除去が行われた復号画像)に対して、ウィナーフィルタ(Wiener Filter)を用いてループフィルタ処理を行うことにより画質改善を行う。なお、PCM符号化部321の制御により、この適応ループフィルタ処理は省略(スキップ)されることもある。
 なお、ループフィルタ312が、復号画像に対して任意のフィルタ処理を行うようにしてもよい。また、ループフィルタ312は、必要に応じて、フィルタ処理に用いたフィルタ係数を可逆符号化部307に供給し、それを符号化させるようにすることもできる。
 ループフィルタ312は、フィルタ処理結果(フィルタ処理後の復号画像)を適応右シフト部313に供給する。なお、上述したように、演算部311から出力される復号画像は、ループフィルタ312を介さずに適応右シフト部313に供給することができる。つまり、ループフィルタ312によるフィルタ処理は省略(スキップ)することができる。
 適応右シフト部313は、PCM符号化部321に制御され、演算部311若しくはループフィルタ312から供給された画像データを右方向にシフトし、そのビット深度を所定ビット数(例えば4ビット)低減させる。つまり、適応右シフト部313は、適応左シフト部303において左シフトされたビット数分右シフトし、画像データのビット深度を左シフトされる前の状態(画面並べ替えバッファ302から読み出された時点の状態)に戻す。
 例えば、適応右シフト部313は、演算部311若しくはループフィルタ312から供給された画像データのビット深度を、12ビットから8ビットに低減させる。このようにビット深度を低減させることにより、フレームメモリに格納される際の画像データのデータ量を低減させることができる。
 なお、この右シフト量(ビット量)は、適応左シフト部303における左シフト量と一致する限り、任意である。すなわち、固定値であってもよいし、可変であっても良い。また、PCM符号化部321の制御により、この右シフト処理は省略(スキップ)されることもある。
 適応右シフト部313は、右シフト処理後の画像データを(処理が省略(スキップ)された場合は、演算部311若しくはループフィルタ312から出力された画像データをそのまま)フレームメモリ314に供給する。
 フレームメモリ314は、フレームメモリ112の場合と同様に、供給される復号画像を記憶し、所定のタイミングにおいて、記憶している復号画像を参照画像として、適応左シフト部315に出力する。
 適応左シフト部315は、適応左シフト部303と同様の処理部であり、PCM符号化部321に制御され、フレームメモリ314から読み出された画像データ(参照画像)を適宜左方向にシフトし、そのビット深度を所定ビット数(例えば4ビット)増大させる。
 例えば、I_PCMモードでない場合、入力画像のデータは適応左シフト部303において左シフトされる。そこで、適応左シフト部315は、PCM符号化部321の制御に従って、フレームメモリ314から読み出された参照画像のデータを左シフトし、ビット深度を適応左シフト部303の場合と同じビット数分増大させる(例えば、ビット深度を8ビットから12ビットにする)。
 そして、適応左シフト部315は、その左シフト処理後の画像データを選択部316に供給する。このようにビット深度を増大させることにより、参照画像のビット深度を入力画像のビット深度に合わせることができ、参照画像を入力画像に加算させることができるようになる。また、予測処理等の内部演算の精度を向上させ、誤差を抑制することができる。
 これに対して、例えば、I_PCMモードの場合、入力画像のデータは適応左シフト部303において左シフトされない。そこで適応左シフト部315は、PCM符号化部321の制御に従って、フレームメモリ314から読み出された参照画像を、ビット深度を増大させずに選択部316に供給する。
 選択部316は、選択部113の場合と同様に、イントラ予測の場合、適応左シフト部315から供給される参照画像をイントラ予測部317に供給する。また、インター予測の場合、選択部316は、選択部113の場合と同様に、適応左シフト部315から供給される参照画像を動き予測・補償部318に供給する。
 イントラ予測部317は、選択部316を介して適応左シフト部315から供給される参照画像を用いて予測画像を生成するイントラ予測(画面内予測)を行う。イントラ予測部317は、予め用意された複数のモード(イントラ予測モード)でこのイントラ予測を行う。イントラ予測部317は、AVC符号化方式において規定されるモード以外の任意のモードでこのイントラ予測を行うこともできる。
 イントラ予測部317は、候補となる全てのイントラ予測モードで予測画像を生成し、適応左シフト部303から供給される入力画像を用いて各予測画像のコスト関数値を評価し、最適なモードを選択する。イントラ予測部317は、最適なイントラ予測モードを選択すると、その最適なモードで生成された予測画像を、選択部319を介して演算部304や演算部311に供給する。
 また、上述したように、イントラ予測部317は、採用されたイントラ予測モードを示すイントラ予測モード情報等の情報を、適宜可逆符号化部307に供給し、符号化させる。
 動き予測・補償部318は、インター符号化が行われる画像について、適応左シフト部303から供給される入力画像と、選択部316を介して適応左シフト部315から供給される参照画像とを用いて、動き予測(インター予測)を行い、検出された動きベクトルに応じて動き補償処理を行い、予測画像(インター予測画像情報)を生成する。動き予測・補償部318は、予め用意された複数のモード(インター予測モード)でこのようなインター予測を行う。動き予測・補償部318は、AVC符号化方式において規定されるモード以外の任意のモードでこのインター予測を行うこともできる。
 動き予測・補償部318は、候補となる全てのインター予測モードで予測画像を生成し、各予測画像のコスト関数値を評価し、最適なモードを選択する。動き予測・補償部318は、最適なインター予測モードを選択すると、その最適なモードで生成された予測画像を、選択部319を介して演算部304や演算部311に供給する。
 また、動き予測・補償部318は、採用されたインター予測モードを示すインター予測モード情報や、算出した動きベクトルを示す動きベクトル情報を可逆符号化部307に供給し、符号化させる。
 選択部319は、選択部116の場合と同様に、イントラ符号化を行う画像の場合、イントラ予測部317の出力を演算部304や演算部311に供給し、インター符号化を行う画像の場合、動き予測・補償部318の出力を演算部304や演算部311に供給する。
 レート制御部320は、蓄積バッファ308に蓄積された符号化データの符号量に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部306の量子化動作のレートを制御する。
 また、レート制御部320は、蓄積バッファ308に蓄積された符号化データの符号量(発生符号量)をPCM符号化部321に供給する。
 PCM符号化部321は、レート制御部320から供給される符号量と、画面並べ替えバッファ302から供給される入力画像のデータ量とを比較し、I_PCMモードを採用するか否かを選択する。その際、PCM符号化部321は、この選択を、LCUより小さいCU単位で行う。すなわち、PCM符号化部321は、I_PCMモードであるか否かを、より詳細に制御する。
 PCM符号化部321は、その選択結果に応じて、可逆符号化部307、適応左シフト部303、適応右シフト部313、適応左シフト部315、およびループフィルタ312の動作を制御する。
 [可逆符号化部、PCM符号化部、およびループフィルタ]
 図8は、図7の可逆符号化部307、PCM符号化部321、およびループフィルタ312の主な構成例を示すブロック図である。
 図8に示されるように、可逆符号化部307は、NAL(Network Abstraction Layer)符号化部331およびCU符号化部332を有する。
 NAL符号化部331は、図示せぬユーザインタフェースを介して入力されるユーザ指示や、仕様等に基づいて、例えばシーケンスパラメータセット(SPS(Sequence Parameter Set)やPPS(Picture Parameter Set)等のNALを符号化する。NAL符号化部331は、符号化したNAL(NALデータ)を蓄積バッファ308に供給し、CU符号化部332から蓄積バッファ308に供給される符号化されたVCL(Video Coding Layer)であるCUデータに付加させる。
 CU符号化部332は、PCM符号化部321に制御されて(PCM符号化部321から供給されるOn/Off制御信号に基づいて)、VCLの符号化を行う。例えば、PCM符号化部321によりI_PCMモードが選択されなかった場合(PCM符号化部321から「On」を示す制御信号が供給された場合)、CU符号化部332は、CU毎の量子化された直交変換係数を符号化する。CU符号化部332は、符号化した各CUの符号化データ(CUデータ)を蓄積バッファ308に供給する。
 また、例えば、PCM符号化部321によりI_PCMモードが選択された場合(PCM符号化部321から「Off」を示す制御信号が供給された場合)、CU符号化部332は、画面並べ替えバッファ302から供給される入力画素値を符号化結果(CUデータ)として蓄積バッファ308に供給する。
 また、CU符号化部332は、PCM符号化部321から供給される、符号化のモードがI_PCMモードであるか否かを示すフラグ(I_PCM_flag)も符号化し、CUデータとして蓄積バッファ308に供給する。さらに、CU符号化部332は、ループフィルタ312から供給される適応フィルタフラグやフィルタ係数等のフィルタ処理に関する情報を符号化し、CUデータとして蓄積バッファ308に供給する。
 CU符号化部332による符号化の方法は任意である(例えばCABACやCAVLC等)。蓄積バッファ308に供給されたNALデータおよびCUデータは、合成されて蓄積される。
 なお、実際には、PCM符号化部321は、CU符号化部332において量子化された直交変換係数が符号化された符号化データの符号量を用いてI_PCMモードを選択するか否かを制御する。
 従って、例えば、I_PCMモードが選択されなかった場合、蓄積バッファ308に供給済みの符号化データが、当該CUの量子化された直交変換係数の符号化結果としてそのまま採用される。したがって、CU符号化部332は、I_PCM_flag等の付加情報の符号化のみを行えばよい。
 これに対して、例えば、I_PCMモードが選択された場合、CU符号化部332は、画面並べ替えバッファ302から供給される当該CUの入力画素値を符号化結果(CUデータ)として蓄積バッファ308に供給する。したがって、この場合、既に供給済みの当該CUの符号化データ(量子化された直交変換係数が符号化された符号化データ)は、破棄される。つまり、その符号化データの生成に関する処理は全て冗長な処理となる。
 図8に示されるように、PCM符号化部321は、I_PCM_flag生成部341およびPCM決定部342を有する。
 I_PCM_flag生成部341は、PCM決定部342の決定に従って、I_PCM_flagを生成し、その値を決定する。I_PCM_flag生成部341は、生成したI_PCM_flagを可逆符号化部307のCU符号化部332に供給する。例えば、PCM決定部342がI_PCMモードを選択した場合、I_PCM_flag生成部341は、I_PCM_flagの値を、I_PCMモードが選択されたことを示す値(例えば「1」)に設定し、そのI_PCM_flagをCU符号化部332に供給する。また、例えば、例えば、PCM決定部342がI_PCMモードを選択しなかった場合、I_PCM_flag生成部341は、I_PCM_flagの値を、I_PCMモードが選択されなかったことを示す値(例えば「0」)に設定し、そのI_PCM_flagをCU符号化部332に供給する。
 PCM決定部342は、符号化のモードをI_PCMモードにするか否かを決定する。PCM決定部342は、画面並べ替えバッファ302から供給される入力画素値のデータ量を求め、レート制御部320から供給される発生符号量と比較し、その比較結果に基づいて、I_PCMモードを選択するか否かを決定する。PCM決定部342は、その選択結果を示すOn/Off制御信号をCU符号化部332やI_PCM_flag生成部341に供給することにより、選択結果に応じた動作の制御を行う。
 例えば、入力画素値のデータ量が発生符号量より大きい場合、PCM決定部342は、I_PCMモードを選択しない。この場合、PCM決定部342は、「On」を示す制御信号をCU符号化部332に供給し、CU符号化部332に量子化された直交変換係数を符号化させる。また、PCM決定部342は、「On」を示す制御信号を、I_PCM_flag生成部341に供給し、I_PCMモードが選択されなかったことを示す値(例えば「0」)のI_PCM_flagを生成させる。
 これに対して、例えば、入力画素値のデータ量が発生符号量以下の場合、PCM決定部342は、I_PCMモードを選択する。この場合、PCM決定部342は、「Off」を示す制御信号をCU符号化部332に供給し、入力画素値を符号化結果(CUデータ)として出力させる。また、PCM決定部342は、「Off」を示す制御信号を、I_PCM_flag生成部341に供給し、I_PCMモードが選択されたことを示す値(例えば「1」)のI_PCM_flagを生成させる。
 PCM決定部342は、このようなI_PCMモードを選択するか否かの決定を、LCUだけでなく、シーケンスパラメータセットにおいて設定される、全ての大きさの(任意の階層の)CU毎に行うことができる。これにより、例えば、低いQPにおいて、多くのビットが発生してしまうのを、I_PCMモードによって制限するという処理を、より小さなCUを単位として実行することが可能となり、符号量(I_PCMモードによる非符号化データのデータ量を含む)の制御をより詳細に行うことができるだけでなく、I_PCMモードのときに生じる冗長な処理を低減させることができる。
 また、PCM決定部342は、選択結果を示すOn/Off制御信号を適応左シフト部303、適応右シフト部313、および適応左シフト部315に供給することにより、選択結果に応じてIBDIの制御を行う。つまり、PCM決定部342は、当該CUがI_PCMモードの場合、適応シフト装置による、ビット精度の増加及び減少の処理が行われないように制御する。
 例えば、I_PCMモードを選択しなかった場合、PCM決定部342は、「On」を示す制御信号を適応左シフト部303、適応右シフト部313、および適応左シフト部315に供給し、左シフト処理や右シフト処理を実行させ、内部処理におけるビット精度の拡張が行われるようにする。
 これに対して、例えば、I_PCMモードを選択した場合、PCM決定部342は、「Off」を示す制御信号を適応左シフト部303、適応右シフト部313、および適応左シフト部315に供給し、左シフト処理や右シフト処理を省略(スキップ)させ、内部処理におけるビット精度の拡張が行われないようにする。
 I_PCMモードにおいては、入力画像画素値そのものを画像圧縮情報に伝送するため、演算誤差を生じることがなく、これに対してビット演算精度を増大させることは、冗長な処理になってしまう。PCM決定部342は、上述したように処理を行うことにより、かかる冗長な処理を排除することができる。
 さらに、PCM決定部342は、選択結果を示すOn/Off制御信号をループフィルタ312に供給することにより、選択結果に応じて適応ループフィルタ処理(BALF)の制御を行う。つまり、PCM決定部342は、当該CUがI_PCMモードの場合、ループフィルタ312による、適応ループフィルタ処理が行われないように制御する。
 例えば、I_PCMモードを選択しなかった場合、PCM決定部342は、「On」を示す制御信号をループフィルタ312に供給し、適応ループフィルタ処理が行われるようにする。これに対して、例えば、I_PCMモードを選択した場合、PCM決定部342は、「Off」を示す制御信号をループフィルタ312に供給し、適応ループフィルタ処理を省略(スキップ)させる。
 I_PCMモードにおいては、入力画像画素値そのものを画像圧縮情報に伝送するため、劣化が生じることがなく、これに適応ループフィルタ処理を施すことは冗長となってしまう。PCM決定部342は、上述したように処理を行うことにより、かかる冗長な処理を排除することができる。
 図8に示されるように、ループフィルタ312は、デブロックフィルタ351、画素仕分け部352、フィルタ係数算出部353、およびフィルタリング部354を有する。
 デブロックフィルタ351は、デブロックフィルタ111の場合と同様に、演算部311から供給される復号画像(デブロックフィルタ前画素値)に対してデブロックフィルタ処理を行うことによりブロック歪を除去する。
 処理対象の当該CUがI_PCMモードで処理されても、その当該CUに隣接するCUがI_PCMモードで処理されたとは限らない。したがって、当該CUがI_PCMモードで処理される場合であっても、ブロック歪みが生じる恐れがある。したがって、デブロックフィルタ処理は、当該CUがI_PCMモードであるか否かに関わらず実行される。
 デブロックフィルタ351は、そのフィルタ処理結果(デブロックフィルタ後画素値)を画素仕分け部352に供給する。
 画素仕分け部352は、PCM決定部342から供給されるOn/Off制御信号の値に従って、各フィルタ処理結果(デブロックフィルタ後画素値)を、適応ループフィルタ処理を行う画素値と、適応ループフィルタ処理を行わない画素値とに仕分ける。
 例えば、PCM決定部342から「On」を示す制御信号が供給された場合、画素仕分け部352は、そのCUのデブロックフィルタ後画素値を、適応ループフィルタ処理を行う画素値に仕分ける。これに対して、例えば、PCM決定部342から「Off」を示す制御信号が供給された場合、画素仕分け部352は、そのCUのデブロックフィルタ後画素値を、適応ループフィルタ処理を行わない画素値に仕分ける。
 画素仕分け部352は、仕分けを行った各画素の画素値(デブロックフィルタ後画素値)をフィルタ係数算出部353に供給する。
 フィルタ係数算出部353は、供給されたデブロックフィルタ後画素値の内、適応ループフィルタ処理を行う方に仕分けられた画素値について、この適応ループフィルタのフィルタ係数(FIRフィルタ係数)を、入力画像との誤差を最小にするように、ウィナーフィルタ(Wiener Filter)により算出する。つまり、フィルタ係数算出部353は、I_PCMモードで処理される画素を除いて、フィルタ係数を算出する。
 フィルタ係数算出部353は、デブロックフィルタ後画素値と算出したフィルタ係数をフィルタリング部354に供給する。
 フィルタリング部354は、供給されたフィルタ係数を用いて、適応ループフィルタ処理を行う方に仕分けられた画素値に対して適応ループフィルタ処理(アダプティブループフィルタ処理)を行う。フィルタリング部354は、このフィルタ処理後の画素値と、適応ループフィルタ処理を行わない方に仕分けられた画素値とを適応フィルタ後画素値として適応右シフト部313に供給する。
 また、フィルタリング部354は、フィルタ処理が行われたか否かを示すフィルタ識別情報である適応フィルタフラグ(on/off_flag)を、CUとは独立して設定される所定のブロック毎に生成する。この適応フィルタフラグの値の設定方法は任意である。
 例えば、処理対象である当該ブロック(カレントブロック)内の一部若しくは全部の画素について適応ループフィルタ処理が行われた場合、この適応フィルタフラグは、フィルタ処理が行われたことを示す値(例えば「1」)に設定されるようにしてもよい。また、例えば当該ブロック内の全ての画素が適応ループフィルタ処理されていない場合、この適応フィルタフラグは、フィルタ処理が行われていないことを示す値(例えば「0」)に設定されるようにしてもよい。その他の基準に基づいて適応フィルタフラグの値が設定されるようにしてもよい。
 フィルタリング部354は、生成した適応フィルタフラグを、可逆符号化部307のCU符号化部332に供給し、符号化させ、復号側に提供させる。ただし、適応フィルタフラグの値が、フィルタ処理が行われていないことを示す値(例えば「0」)の場合、この復号側への提供は省略する(適応フィルタフラグを復号側に提供しないようにする)こともできる。
 例えば、適応フィルタフラグの値が、フィルタ処理が行われていないことを示す値(例えば「0」)であり、かつ、可逆符号化部307(CU符号化部332)の符号化方式がVLCの場合、フィルタリング部354は、この適応フィルタフラグの供給を省略する(復号側に提供しない)。また、例えば、適応フィルタフラグの値が、フィルタ処理が行われていないことを示す値(例えば「0」)であり、かつ、可逆符号化部307(CU符号化部332)の符号化方式がCABACの場合、フィルタリング部354は、この適応フィルタフラグを可逆符号化部307のCU符号化部332に供給する(復号側に提供する)。
 これは、VLCの場合、入力情報が少ない場合、より高い符号化効率を実現することが可能であるが、CABACの場合、同一の入力情報が連続すると、算術符号化する際の確率に偏りが生じて、より高い符号化効率を実現することが可能であるためである。
 さらに、フィルタリング部354は、適応ループフィルタ処理に使用したフィルタ係数を可逆符号化部307のCU符号化部332に供給し、符号化させ、復号側に提供させる。
 [PCM決定部]
 図9は、図8のPCM決定部342の主な構成例を示すブロック図である。
 図9に示されるように、PCM決定部342は、入力データ量算出部361、PCM判定部362、符号化制御部363、適応シフト制御部364、およびフィルタ制御部365を有する。
 入力データ量算出部361は、当該CUについて、画面並べ替えバッファ302から供給される入力画素値のデータ量である入力データ量を算出し、算出した入力データ量をPCM判定部362に供給する。
 PCM判定部362は、レート制御部320から供給される発生符号量(発生ビット)を取得し、入力データ量算出部361から供給される入力データ量と比較し、その比較結果に基づいて当該CUについてI_PCMモードを選択するか否かを判定する。つまり、PCM判定部362は、任意の階層のCU毎にI_PCMモードを選択するか否かを判定する。PCM判定部362は、その判定結果を符号化制御部363、適応シフト制御部364、およびフィルタ制御部365に供給する。
 符号化制御部363は、PCM判定部362から供給される判定結果(I_PCMモードが選択されたか否かを示す識別情報)に基づいて、CU符号化部332やI_PCM_flag生成部341に対してOn/Off制御信号を供給する。
 従って、符号化制御部363は、符号化のモードを任意の階層のCU毎に制御することができる。これにより、符号化制御部363は、符号量(I_PCMモードによる非符号化データのデータ量を含む)の制御をより詳細に行うことができるだけでなく、I_PCMモードが選択されたときの冗長な処理を低減させることができる。
 適応シフト制御部364は、PCM判定部362から供給される判定結果(I_PCMモードが選択されたか否かを示す情報)に基づいて、適応左シフト部303、適応右シフト部313、および適応左シフト部315に対してOn/Off制御信号を供給する。
 従って、適応シフト制御部364は、I_PCMモードの際に、内部演算においてビット深度を拡張させないように制御することができる。これにより適応シフト制御部364は、冗長な処理を低減させることができる。
 フィルタ制御部365は、PCM判定部362から供給される判定結果(I_PCMモードが選択されたか否かを示す情報)に基づいて、画素仕分け部352に対してOn/Off制御信号を供給する。
 従って、フィルタ制御部365は、I_PCMモードの際に、適応ループフィルタ処理を実行させないように制御することができる。これによりフィルタ制御部365は、冗長な処理を低減させることができる。
 以上のように、画像符号化装置300は、冗長な処理を低減させ、符号化処理の効率の低減を抑制することができる。また、画像符号化装置300は、I_PCMモード(非圧縮モード)の選択をより詳細に(小さなデータ単位毎に)行うことができ、符号化効率を向上させることができる。したがって、画像符号化装置300は、符号化処理の効率の低減を抑制しながら符号化効率を向上させることができる。
 [符号化処理の流れ]
 次に、以上のような画像符号化装置300により実行される各処理の流れについて説明する。最初に、図10のフローチャートを参照して、符号化処理の流れの例を説明する。
 ステップS301において、A/D変換部301は入力された画像をA/D変換する。ステップS302において、画面並べ替えバッファ302は、A/D変換された画像を記憶し、各ピクチャの表示する順番から符号化する順番への並べ替えを行う。
 ステップS303において、適応左シフト部303は、PCM符号化部321の制御に基づいて、入力画像に対して適応的に左シフトを行う。ステップS304において、適応左シフト部315は、参照画像に対して適応的に左シフトを行う。
 ステップS305において、イントラ予測部317は、ステップS304において左シフトされた参照画像を用いてイントラ予測モードのイントラ予測処理を行う。ステップS306において、動き予測・補償部318は、ステップS304において左シフトされた参照画像を用いてインター予測モードでの動き予測や動き補償を行うインター動き予測処理を行う。
 なお、実際には、参照画像のビット深度を左シフトさせる処理は、イントラ予測処理若しくはインター動き予測処理において、参照画像がフレームメモリ314から読み出される際に行われればよい。
 ステップS307において、選択部319は、イントラ予測部317および動き予測・補償部318から出力された各コスト関数値に基づいて、最適なモードを決定する。つまり、選択部319は、イントラ予測部317により生成された予測画像と、動き予測・補償部318により生成された予測画像のいずれか一方を選択する。
 また、このいずれの予測画像が選択されたかを示す選択情報は、イントラ予測部317および動き予測・補償部318のうち、予測画像が選択された方に供給される。最適イントラ予測モードの予測画像が選択された場合、イントラ予測部317は、最適イントラ予測モード等を示すイントラ予測モード情報を、可逆符号化部307に供給する。最適インター予測モードの予測画像が選択された場合、動き予測・補償部318は、最適インター予測モードを示す情報と、必要に応じて、最適インター予測モードに応じた情報を可逆符号化部307に出力する。最適インター予測モードに応じた情報としては、動きベクトル情報やフラグ情報、参照フレーム情報などがあげられる。
 ステップS308において、演算部304は、ステップS303の処理によりビット深度が左シフトされた画像と、ステップS307の処理により選択された予測画像との差分を演算する。予測画像は、インター予測する場合は動き予測・補償部318から、イントラ予測する場合はイントラ予測部317から、選択部319を介して演算部304に供給される。
 差分データは元の画像データに較べてデータ量が低減される。したがって、画像をそのまま符号化する場合に比べて、データ量を圧縮することができる。
 ステップS309において、直交変換部305は、ステップS308の処理により生成された差分情報を直交変換する。具体的には、離散コサイン変換、カルーネン・レーベ変換等の直交変換が行われ、変換係数が出力される。
 ステップS310において、量子化部306は、ステップS309の処理により得られた直交変換係数を量子化する。
 ステップS311において、可逆符号化部307は、ステップS310の処理により量子化された変換係数を符号化する。すなわち、差分画像に対して、可変長符号化や算術符号化等の可逆符号化が行われる。
 なお、可逆符号化部307は、ステップS310において算出された量子化パラメータを符号化し、符号化データに付加する。また、可逆符号化部307は、ステップS307の処理により選択された予測画像のモードに関する情報を符号化し、差分画像を符号化して得られる符号化データに付加する。つまり、可逆符号化部307は、イントラ予測部317から供給される最適イントラ予測モード情報、または、動き予測・補償部318から供給される最適インター予測モードに応じた情報なども符号化し、符号化データに付加する。
 さらに、可逆符号化部307は、ループフィルタ312から取得したフィルタ係数やフラグ情報を符号化し、符号化データに付加する。さらに、可逆符号化部307は、NALデータの符号化も行う。
 ステップS312において蓄積バッファ308は、可逆符号化部307から出力される符号化データを蓄積する。蓄積バッファ308に蓄積された符号化データは、適宜読み出され、伝送路や記録媒体を介して復号側に伝送される。
 ステップS313においてレート制御部320は、ステップS312の処理により蓄積バッファ308に蓄積された符号化データの符号量(発生符号量)を算出し、それに基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部306の量子化動作のレートを制御する。また、レート制御部320は、発生符号量をPCM符号化部321に供給する。
 ステップS314において、PCM符号化部321は、ステップS313において算出された発生符号量を用いてPCM符号化制御処理を行う。ステップS315において、可逆符号化部307は、PCM符号化部321の制御に従ってPCM符号化処理を行う。
 ステップS316において、逆量子化部309乃至フレームメモリ314は、ステップS310の処理により量子化された差分情報を局部的に復号し、参照画像を生成する参照画像生成処理を実行する。
 ステップS316の処理が終了すると、符号化処理が終了される。この符号化処理は、例えばCU毎に繰り返し実行される。
 [PCM符号化制御処理]
 次に、図11のフローチャートを参照して、図10のステップS314において実行されるPCM符号化制御処理の流れの例について説明する。
 PCM符号化制御処理が開始されると、ステップS331において、PCM決定部342のPCM判定部362は、レート制御部320から供給される、当該CUの量子化された直交変換係数の符号化データの発生符号量を取得する。
 ステップS332において、入力データ量算出部361は、当該CUの入力画素値の入力データ量を算出する。
 ステップS333において、PCM判定部362は、ステップS331において取得した符号量と、ステップS332において算出した入力データ量とを比較し、I_PCMモードで符号化を行うか否かを判定する。
 ステップS334において、I_PCM_flag生成部341は、符号化制御部363が供給するステップS333の判定結果を示すOn/Off制御信号に基づいて、I_PCM_flagを生成する。
 ステップS335において、符号化制御部363は、CU符号化部332に対して、ステップS333の判定結果を示すOn/Off制御信号を供給することにより、CUデータの符号化を制御する。
 ステップS336において、適応シフト制御部364は、適応左シフト部303、適応右シフト部313、および適応左シフト部315に対して、ステップS333の判定結果を示すOn/Off制御信号を供給することにより、適応シフト処理を制御する。
 ステップS337において、符号化制御部363は、ループフィルタ312の画素仕分け部352に対して、ステップS333の判定結果を示すOn/Off制御信号を供給することにより、適応ループフィルタ処理を制御する。
 ステップS337の処理が終了すると、PCM決定部342は、PCM符号化制御処理を終了し、処理を図10のステップS314に戻し、ステップS315以降の処理を実行させる。
 [PCM符号化処理の流れ]
 次に、図12のフローチャートを参照して、図10のステップS315において実行されるPCM符号化処理の流れの例について説明する。
 PCM符号化処理が開始されると、ステップS351において、CU符号化部332は、I_PCMモードで符号化を行うか否かを判定する。上述したPCM符号化制御処理によりI_PCMモードで符号化を行うように制御された場合、CU符号化部332は、処理をステップS352に進める。ステップS352において、CU符号化部332は、当該CUの入力画素値を符号化結果として選択する。CU符号化部332は、蓄積バッファ308の当該CUのCUデータを破棄させ、その入力画素値を蓄積バッファ308に蓄積させる。
 ステップS352の処理が終了すると、CU符号化部332は、処理をステップS353に進める。また、ステップS351において、I_PCMモードで符号化を行わないと判定された場合、CU符号化部332は、処理をステップS353に進める。
 ステップS353において、CU符号化部332は、上述したPCM符号化制御処理により生成されたI_PCM_flagを符号化し、それを蓄積バッファ308に蓄積させる。
 ステップS353の処理が終了すると、CU符号化部332は、PCM符号化処理を終了し、処理を図10のステップS315に戻し、ステップS316以降の処理を実行させる。
 [参照画像生成処理の流れ]
 次に、図13のフローチャートを参照して、図10のステップS316において実行される参照画像生成処理の流れの例について説明する。
 参照画像生成処理が開始されると、適応左シフト部315は、ステップS371において、適応シフト制御部364の制御に基づいて、I_PCMモードが選択されたか否かを判定する。I_PCMモードが選択された場合、内部演算におけるビット深度の拡張が行われないので、予測処理からやり直しとなる。つまり、I_PCMモードが選択されたと判定されると、適応左シフト部315は、参照画像に対する左シフト処理を行わずに、処理をステップS372に進める。
 ステップS372において、イントラ予測部317は、ビット深度が左シフトされていない参照画像を用いてイントラ予測処理を行う。ステップS373において、動き予測・補償部318は、ビット深度が左シフトされていない参照画像を用いてインター動き予測処理を行う。
 ステップS374において、選択部319は、イントラ予測部317および動き予測・補償部318から出力された各コスト関数値に基づいて、最適なモードを決定する。つまり、選択部319は、イントラ予測部317により生成された予測画像と、動き予測・補償部318により生成された予測画像のいずれか一方を選択する。
 また、このいずれの予測画像が選択されたかを示す選択情報は、イントラ予測部317および動き予測・補償部318のうち、予測画像が選択された方に供給される。最適イントラ予測モードの予測画像が選択された場合、イントラ予測部317は、最適イントラ予測モード等を示すイントラ予測モード情報を、可逆符号化部307に供給する。最適インター予測モードの予測画像が選択された場合、動き予測・補償部318は、最適インター予測モードを示す情報と、必要に応じて、最適インター予測モードに応じた情報を可逆符号化部307に供給する。最適インター予測モードに応じた情報としては、動きベクトル情報やフラグ情報、参照フレーム情報などがあげられる。
 I_PCMモードが選択された場合、内部演算におけるビット深度の拡張が行われない。つまり、適応左シフト部303による参照画像に対する左シフト処理は省略(スキップ)される。ステップS375において、演算部304は、ビット深度が左シフトされていない入力画像と、ステップS374の処理により選択された予測画像との差分を演算する。予測画像は、インター予測する場合は動き予測・補償部318から、イントラ予測する場合はイントラ予測部317から、選択部319を介して演算部304に供給される。
 ステップS376において、直交変換部305は、ステップS375の処理により生成された差分情報を直交変換する。具体的には、離散コサイン変換、カルーネン・レーベ変換等の直交変換が行われ、変換係数が出力される。ステップS377において、量子化部306は、ステップS376の処理により得られた直交変換係数を量子化する。
 直交変換係数が量子化されると、量子化部306は、処理をステップS378に進め、ステップS377において量子化された直交変換係数(左シフト処理されてないデータ)を用いて参照画像の生成が行われる。
 これに対して、ステップS371において、I_PCMモードで無いと判定された場合、適応左シフト部315は、ステップS372乃至ステップS377の各処理を省略(スキップ)し、処理をステップS378に進める。つまり、I_PCMモードで無い場合、図10のステップS310において量子化された直交変換係数(左シフト処理されたデータ)を用いて参照画像の生成が行われる。
 ステップS378において、逆量子化部309は、量子化された直交変換係数(量子化係数とも称する)を量子化部306の特性に対応する特性で逆量子化する。ステップS379において、逆直交変換部310は、ステップS378の処理により得られた直交変換係数を、直交変換部305の特性に対応する特性で逆直交変換する。
 ステップS380において、演算部311は、予測画像を局部的に復号された差分情報に加算し、局部的に復号された画像(演算部304への入力に対応する画像)を生成する。例えば、I_PCMモードの場合、演算部311は、左シフト処理されていない予測画像を、左シフト処理されていない差分情報に加算し、左シフト処理されていない復号画像を生成する。また、例えば、I_PCMモードでない場合、演算部311は、左シフト処理された予測画像を、左シフト処理された差分情報に加算し、左シフト処理された復号画像を生成する。
 ステップS381においてループフィルタ312は、フィルタ制御部365の制御に基づいて、ステップS380の処理により得られた局部的な復号画像に対してループフィルタ処理を行い、デブロックフィルタ処理や適応ループフィルタ処理等を含むループフィルタ処理を適宜行う。
 ステップS382において、適応右シフト部313は、適応シフト制御部364の制御に基づいて、I_PCMモードが選択されたか否かを判定する。I_PCMモードが選択されていないと判定された場合、適応右シフト部313は、処理をステップS383に進める。
 I_PCMモードでない場合、復号画像は内部演算におけるビット深度の拡張が行われているので、適応右シフト部313は、ステップS383において、ステップS381のループフィルタ処理により得られたフィルタ処理結果(復号画像)のビット深度に対して適応的に右シフトを行う。ステップS383の処理が終了すると、適応右シフト部313は、処理をステップS384に進める。
 また、ステップS382において、I_PCMモードが選択されたと判定された場合、適応右シフト部313は、右シフト処理を行わずに処理をステップS384に進める。
 ステップS384において、フレームメモリ314は、復号画像を記憶する。ステップS384の処理が終了すると、フレームメモリ314は、参照画像生成処理を終了し、処理を図10のステップS316に戻し、符号化処理を終了する。
 [ループフィルタ処理の流れ]
 次に、図14のフローチャートを参照して、図13のステップS381において実行されるループフィルタ処理の流れの例を説明する。
 ループフィルタ処理が開始されると、ループフィルタ312のデブロックフィルタ351は、ステップS401において、演算部311から供給される復号画像(デブロックフィルタ前画素値)に対してデブロックフィルタ処理を行う。
 ステップS402において、画素仕分け部352は、PCM決定部342のフィルタ制御部365に制御されて、I_PCMモードであるか否かに基づいて復号画像の各画素を仕分ける。
 ステップS403において、フィルタ係数算出部353は、フィルタ処理を行うように仕分けられた画素(処理対象画素)に対するフィルタ係数を算出する。ステップS404において、フィルタリング部354は、ステップS403において算出されるフィルタ係数を用いて、処理対象画素に対して適応フィルタ処理を行う。
 ステップS405において、フィルタリング部354は、処理対象ブロックについての適応フィルタフラグを設定し、その適応フィルタフラグやフィルタ係数をCU符号化部332に供給し、符号化させる。
 ステップS405の処理が終了すると、ループフィルタ312は、ループフィルタ処理を終了し、処理を図13のステップS381に戻し、ステップS382以降の処理を実行させる。
 以上のように各処理を実行することにより、画像符号化装置300は、符号化処理の効率の低減を抑制しながら符号化効率を向上させることができる。
 <2.第2の実施の形態>
 [画像復号装置]
 図15は、画像復号装置の主な構成例を示すブロック図である。図15に示される画像復号装置500は、図2の画像復号装置200と基本的に同様の装置であり、画像データが符号化された符号化データを復号する。
 図15に示される画像復号装置500は、図7の画像符号化装置300に対応する復号装置である。画像符号化装置300より符号化された符号化データは、例えば伝送路や記録媒体等、任意の経路を介して、この画像復号装置500に供給され、復号される。
 図15に示されるように、画像復号装置500は、蓄積バッファ501、可逆復号部502、逆量子化部503、逆直交変換部504、演算部505、ループフィルタ506、適応右シフト部507、画面並べ替えバッファ508、およびD/A変換部509を有する。また、画像復号装置500は、フレームメモリ510、適応左シフト部511、選択部512、イントラ予測部513、動き予測・補償部514、および選択部515を有する。
 画像復号装置500は、さらに、PCM復号部516を有する。
 蓄積バッファ501は、蓄積バッファ201の場合と同様に、伝送されてきた符号化データを蓄積する。この符号化データは、画像符号化装置300により符号化されたものである。
 可逆復号部502は、蓄積バッファ501から符号化データを所定のタイミングで読み出し、図15の可逆符号化部307の符号化方式に対応する方式で復号する。その際、可逆復号部502は、符号化データに含まれるI_PCM_flagをPCM復号部516に供給し、I_PCMモード(非圧縮モード)であるか否かを判定させる。
 I_PCMモードである場合、蓄積バッファ501から取得したCUデータは非符号化データであるので、可逆復号部502は、PCM復号部516の制御に従って、そのCUデータを逆量子化部503に供給する。
 I_PCMモードで無い場合、蓄積バッファ501から取得したCUデータは符号化データであるので、可逆復号部502は、PCM復号部516の制御に従って、そのCUデータを復号し、復号結果を逆量子化部503に供給する。
 なお、例えば、当該CUがイントラ符号化されたものである場合、符号化データのヘッダ部にはイントラ予測モード情報が格納されている。可逆復号部502は、このイントラ予測モード情報も復号し、その情報をイントラ予測部513に供給する。これに対して、例えば当該CUがインター符号化されたものである場合、符号化データのヘッダ部には動きベクトル情報やインター予測モード情報が格納されている。可逆復号部502は、この動きベクトル情報やインター予測モード情報も復号し、その情報を動き予測・補償部514に供給する。
 逆量子化部503は、I_PCMモードで無い場合、逆量子化部203の場合と同様に、可逆復号部502にから供給される係数データ(量子化係数)を、図7の量子化部306の量子化方式に対応する方式で逆量子化する。つまり、逆量子化部503は、図7の逆量子化部309と同様の方法で量子化係数の逆量子化を行う。逆量子化部503は、逆量子化された係数データ、つまり、直交変換係数を、逆直交変換部504に供給する。
 また、逆量子化部503は、I_PCMモードである場合、可逆復号部502から供給されるCUデータ(符号化されていない画像データ)を、逆直交変換部504に供給する。
 逆直交変換部504は、I_PCMモードで無い場合、逆直交変換部204の場合と同様に、図7の直交変換部305の直交変換方式に対応する方式(図7の逆直交変換部310と同様の方式)で、その直交変換係数を逆直交変換する。逆直交変換部504は、この逆直交変換処理により、画像符号化装置300において直交変換される前の残差データに対応する復号残差データを得る。例えば、4次の逆直交変換が施される。逆直交変換部504は、逆直交変換して得られた復号残差データを、演算部505に供給する。
 また、逆直交変換部504は、I_PCMモードである場合、逆量子化部503から供給されるCUデータ(符号化されていない画像データ)を、演算部505に供給する。
 また、演算部505には、選択部515を介して、イントラ予測部513若しくは動き予測・補償部514から予測画像が供給される。
 演算部505は、I_PCMモードで無い場合、演算部205の場合と同様に、その復号残差データと予測画像とを加算し、画像符号化装置300の演算部304により予測画像が減算される前の画像データに対応する復号画像データを得る。演算部505は、その復号画像データをループフィルタ506に供給する。
 また、演算部505は、I_PCMモードである場合、逆直交変換部504から供給されるCUデータ(符号化されていない画像データ)を、ループフィルタ506に供給する。この場合、CUデータは、残差情報ではないので、予測画像との加算は不要である。
 ループフィルタ506は、PCM復号部516により制御されて、演算部505から供給された復号画像に対して、デブロックフィルタ処理や適応ループフィルタ処理等を含むループフィルタ処理を適宜施す。
 より具体的には、ループフィルタ506は、復号画像に対して、デブロックフィルタ206と同様のデブロックフィルタ処理を行うことにより復号画像のブロック歪を除去する。そして、ループフィルタ506は、PCM復号部516の制御に従って、そのデブロックフィルタ処理結果(ブロック歪みの除去が行われた復号画像)に対して、ウィナーフィルタ(Wiener Filter)を用いてループフィルタ処理を行うことにより画質改善を行う。
 なお、ループフィルタ506が、復号画像に対して任意のフィルタ処理を行うようにしてもよい。また、ループフィルタ506が、図7の画像符号化装置300から供給されたフィルタ係数を用いてフィルタ処理を行うようにしてもよい。
 ループフィルタ506は、フィルタ処理結果(フィルタ処理後の復号画像)を、適応右シフト部507に供給する。
 適応右シフト部507は、適応右シフト部313(図7)と同様の処理部であり、PCM復号部516に制御され、I_PCMモードで無い場合、ループフィルタ506から供給された復号画像データを右方向にシフトし、そのビット深度を所定ビット数(例えば4ビット)低減させる(例えば、ビット深度を12ビットから8ビットに低減させる)。つまり、適応右シフト部507は、画像符号化装置300において左シフトされたビット数分右シフトし、画像データのビット深度を左シフトされる前の状態(画面並べ替えバッファ302(図7)から読み出された時点の状態)に戻す。
 適応右シフト部507は、右シフト処理後の画像データを画面並べ替えバッファ508およびフレームメモリ510に供給する。
 なお、この右シフト量(ビット量)は、画像符号化装置300(適応左シフト部303)における左シフト量と一致する限り、任意である。すなわち、固定値であってもよいし、可変であっても良い。例えば、シフト量が予め定められている(画像符号化装置300と画像復号装置500との間で予め共有されている)ようにしてもよいし、画像復号装置500において、画像符号化装置300におけるシフト量を算出することができるようにしてもよいし、画像符号化装置300からシフト量を示す情報が提供されるようにしてもよい。
 また、PCM復号部516の制御により、この右シフト処理は省略(スキップ)されることもある。例えば、I_PCMモードの場合、画像符号化装置300において画像データは左シフト処理されていない。したがって、この場合、適応右シフト部507は、PCM復号部516に制御され、ループフィルタ506から供給された復号画像データを右方向にシフトせずに画面並べ替えバッファ508およびフレームメモリ510に供給する。
 画面並べ替えバッファ508は、画面並べ替えバッファ207の場合と同様に、画像の並べ替えを行う。すなわち、図7の画面並べ替えバッファ302により符号化の順番のために並べ替えられたフレームの順番が、元の表示の順番に並べ替えられる。画面並べ替えバッファ508は、各フレームの復号画像データを、並べ替えた順にD/A変換部509に供給する。
 D/A変換部509は、D/A変換部208の場合と同様に、画面並べ替えバッファ508から供給されたフレーム画像をD/A変換し、図示せぬディスプレイに出力し、表示させる。
 フレームメモリ510は、適応右シフト部507から供給される復号画像を記憶し、所定のタイミングにおいて、記憶している復号画像を参照画像として、適応左シフト部511に供給する。
 適応左シフト部511は、適応左シフト部315と同様の処理部であり、PCM復号部516に制御され、フレームメモリ510から読み出された画像データ(参照画像)を適宜左方向にシフトし、そのビット深度を所定ビット数(例えば4ビット)増大させる。
 例えば、I_PCMモードでない場合、逆直交変換部504から演算部505に供給される復号画像データは、画像符号化装置300において左シフトされた状態の画像データである(例えばビット深度が12ビットである)。そこで適応左シフト部511は、PCM復号部516の制御に従って、フレームメモリ510から読み出された参照画像のビット深度を所定ビット数増大させる(例えば、ビット深度を8ビットから12ビットにする)。
 そして、適応左シフト部511は、その左シフト処理後の画像データを選択部512に供給する。このようにビット深度を増大させることにより、参照画像のビット深度を復号画像のビット深度に合わせることができ、参照画像を復号画像に加算させることができるようになる。また、予測処理等の内部演算の精度を向上させ、誤差を抑制することができる。
 これに対して、例えば、I_PCMモードの場合、逆直交変換部504から演算部505に供給される復号画像データは、画像符号化装置300において左シフト処理されていない状態の画像データである(例えばビット深度が8ビットである)。そこで適応左シフト部511は、PCM復号部516の制御に従って、フレームメモリ510から読み出された参照画像を、ビット深度を増大させずに選択部512に供給する。
 選択部512は、イントラ予測の場合、適応左シフト部511から供給される参照画像をイントラ予測部513に供給する。また、選択部512は、インター予測の場合、適応左シフト部511から供給される参照画像を動き予測・補償部514に供給する。
 イントラ予測部513には、ヘッダ情報を復号して得られたイントラ予測モードを示す情報等が可逆復号部502から適宜供給される。イントラ予測部513は、イントラ予測部317において用いられたイントラ予測モードで、フレームメモリ510から取得した参照画像を用いてイントラ予測を行い、予測画像を生成する。つまり、イントラ予測部513は、イントラ予測部317と同様に、AVC符号化方式において規定されるモード以外の任意のモードでこのイントラ予測を行うこともできる。
 イントラ予測部513は、生成した予測画像を選択部515に供給する。
 動き予測・補償部514には、ヘッダ情報を復号して得られた情報(予測モード情報、動きベクトル情報、参照フレーム情報、フラグ、および各種パラメータ等)が可逆復号部502から供給される。
 動き予測・補償部514は、動き予測・補償部318において用いられたインター予測モードで、フレームメモリ510から取得した参照画像を用いてインター予測を行い、予測画像を生成する。つまり、動き予測・補償部514は、動き予測・補償部318と同様に、AVC符号化方式において規定されるモード以外の任意のモードでこのイントラ予測を行うこともできる。
 動き予測・補償部514は、生成した予測画像を選択部515に供給する。
 選択部515は、選択部213の場合と同様に、動き予測・補償部514またはイントラ予測部513により生成された予測画像を選択し、演算部505に供給する。
 PCM復号部516は、可逆復号部502から供給されるI_PCM_flagに基づいて、可逆復号部502、ループフィルタ506、適応右シフト部507、および適応左シフト部511を制御する。
 [可逆復号部、PCM復号部、およびループフィルタ]
 図16は、図15の可逆復号部502、PCM復号部516、およびループフィルタ506の主な構成例を示すブロック図である。
 図16に示されるように、可逆復号部502は、NAL復号部531およびCU復号部532を有する。NAL復号部531は、蓄積バッファ501から供給される、符号化されたNALデータを復号し、復号されたNALデータをCU復号部532に供給する。
 CU復号部532は、NAL復号部531から供給されるNALデータに基づいて、蓄積バッファ501から供給される、符号化されたCUデータを復号する。
 また、CU復号部532は、CUデータを復号してI_PCM_flagを取得すると、それをPCM復号部516に供給する。CU復号部532は、そのI_PCM_flagに基づくPCM復号部516の制御に従って(PCM符号化部321から供給されるOn/Off制御信号に基づいて)、符号化されたCUデータを復号する。
 例えば、I_PCM_flagがI_PCMモードで無いことを示す値であり、PCM復号部516から「On」を示す制御信号を取得すると、CU復号部532は、NAL復号部531から供給されるNALデータに基づいて、蓄積バッファ501から供給される、符号化されたCUデータを復号し、量子化された直交変換係数を逆量子化部503に供給する。
 これに対して、例えば、I_PCM_flagがI_PCMモードであることを示す値であり、PCM復号部516から「Off」を示す制御信号を取得すると、CU復号部532は、蓄積バッファ501から供給されるCUデータ(符号化されていない画像データ)を逆量子化部503に供給する。
 なお、CU復号部532は、CUデータを復号して得られるフィルタ係数や適応フィルタフラグ等の情報をループフィルタ506に供給する。
 図8に示されるように、PCM復号部516は、I_PCM_flagバッファ541およびPCM制御部542を有する。
 I_PCM_flagバッファ541は、可逆復号部502のCU復号部532から供給されるI_PCM_flagを記憶し、所定のタイミングにおいてそれをPCM制御部542に供給する。
 PCM制御部542は、I_PCM_flagバッファ541から取得したI_PCM_flagの値に基づいて、画像符号化装置300において符号化時にI_PCMモードが選択されたか否かを判定する。PCM制御部542は、その判定結果に基づいて、CU復号部532にOn/Off制御信号を供給し、その動作を制御する。
 例えばI_PCMモードが選択されなかったと判定された場合、PCM制御部542は、「On」を示す制御信号をCU復号部532に供給し、CU復号部532に符号化されたCUデータを復号させ、その復号により得られた、量子化された直交変換係数を逆量子化部503に供給させる。
 これに対して、例えばI_PCMモードが選択されたと判定された場合、PCM制御部542は、「Off」を示す制御信号をCU復号部532に供給し、非符号化データであるCUデータを出力画素値として逆量子化部503に供給させる。
 このような制御により、CU復号部532は、画像符号化装置300から供給される符号化データを適切に復号することができる。つまり、CU復号部532は、LCUより小さいCU単位でI_PCMモードか否かが制御されている場合であっても、より適切に復号することができる。
 また、PCM制御部542は、I_PCMモードの判定結果に基づいて、適応右シフト部507および適応左シフト部511にOn/Off制御信号を供給し、その動作を制御する。
 例えばI_PCMモードが選択されなかったと判定された場合、PCM制御部542は、「On」を示す制御信号を適応右シフト部507および適応左シフト部511に供給し、左シフト処理や右シフト処理を実行させ、内部処理におけるビット精度の拡張が行われるようにする。
 これに対して、例えばI_PCMモードが選択されたと判定された場合、PCM制御部542は、「Off」を示す制御信号を適応右シフト部507および適応左シフト部511に供給し、左シフト処理や右シフト処理を省略(スキップ)させ、内部処理におけるビット精度の拡張が行われないようにする。
 このような制御により、PCM制御部542は、LCUより小さいCU単位でI_PCMモードか否かが制御されている場合であっても、冗長な処理を適切に排除することができる。
 さらに、PCM制御部542は、I_PCMモードの判定結果に基づいて、ループフィルタ506にOn/Off制御信号を供給し、その動作を制御する。例えばI_PCMモードが選択されなかったと判定された場合、PCM制御部542は、「On」を示す制御信号をループフィルタ506に供給する。これに対して、例えばI_PCMモードが選択されたと判定された場合、PCM制御部542は、「Off」を示す制御信号をループフィルタ506に供給する。
 このような制御により、PCM制御部542は、LCUより小さいCU単位でI_PCMモードか否かが制御されている場合であっても、冗長な処理をより適切に排除することができる。
 図8に示されるように、ループフィルタ506は、デブロックフィルタ551、画素仕分け部552、およびフィルタリング部553を有する。
 デブロックフィルタ551は、デブロックフィルタ206の場合と同様に、演算部505から供給される復号画像(デブロックフィルタ前画素値)に対してデブロックフィルタ処理を行うことによりブロック歪を除去する。
 画像符号化装置300の場合と同様に、デブロックフィルタ処理は、当該CUがI_PCMモードであるか否かに関わらず実行される。デブロックフィルタ551は、そのフィルタ処理結果(デブロックフィルタ後画素値)を画素仕分け部552に供給する。
 画素仕分け部552は、PCM制御部542から供給されるOn/Off制御信号の値に従って、各フィルタ処理結果(デブロックフィルタ後画素値)を、適応ループフィルタ処理を行う画素値と、適応ループフィルタ処理を行わない画素値とに仕分ける。
 例えば、PCM制御部542から「On」を示す制御信号が供給された場合、画素仕分け部552は、そのCUのデブロックフィルタ後画素値を、適応ループフィルタ処理を行う画素値に仕分ける。これに対して、例えば、PCM制御部542から「Off」を示す制御信号が供給された場合、画素仕分け部552は、そのCUのデブロックフィルタ後画素値を、適応ループフィルタ処理を行わない画素値に仕分ける。
 画素仕分け部552は、仕分けを行った各画素の画素値(デブロックフィルタ後画素値)をフィルタリング部553に供給する。
 フィルタリング部553は、CU復号部532から供給された適応ループフィルタフラグに基づいて、適応ループフィルタ処理を行う方に仕分けられた画素値に対して適応ループフィルタ処理を行う。
 適応ループフィルタ処理は、CUとは独立して設定される所定のブロック毎に行われる。フィルタリング部553は、当該ブロックの適応ループフィルタフラグの値が、符号化側においてフィルタ処理が行われなかったことを示す値(例えば「0」)の場合、当該ブロックに対する適応ループフィルタ処理を省略(スキップ)し、供給されたデブロックフィルタ後の画素値を適応フィルタ後画素値として適応右シフト部507に供給する。
 ところで、適応ループフィルタフラグの設定方法は、画像符号化装置300の仕様等に依存する。従って、画像符号化装置300による適応ループフィルタフラグの設定方法によっては、当該ブロックの適応ループフィルタフラグの値が、符号化側においてフィルタ処理が行われたことを示す値(例えば「1」)であっても、当該ブロック内にI_PCMモードの画素が含まれる可能性がある。
 そこで、フィルタリング部553は、当該ブロック内に適応ループフィルタ処理を行わない方に仕分けられた画素値が存在する場合、当該ブロックの適応ループフィルタフラグの値が、符号化側においてフィルタ処理が行われたことを示す値(例えば「1」)であっても、当該ブロックに対する適応ループフィルタ処理を省略(スキップ)し、供給されたデブロックフィルタ後の画素値を適応フィルタ後画素値として適応右シフト部507に供給する。
 つまり、フィルタリング部553は、当該ブロックの適応ループフィルタフラグの値が、符号化側においてフィルタ処理が行われたことを示す値(例えば「1」)であり、かつ、当該ブロック内の全ての画素が適応ループフィルタ処理を行う方に仕分けられた場合のみ、当該ブロックに対して適応ループフィルタ処理を行う。
 なお、フィルタリング部553は、適応ループフィルタ処理を行う場合、CU復号部532から供給されたフィルタ係数(符号化側の適応ループフィルタ処理において使用されたフィルタ係数)を用いて適応ループフィルタ処理を行う。
 フィルタリング部553は、適応ループフィルタ処理を行った画素値を適応フィルタ後画素値として適応右シフト部507に供給する。
 このような制御により、PCM制御部542は、LCUより小さいCU単位でI_PCMモード(非圧縮モード)か否かが制御されている場合であっても、冗長な処理をより適切に排除することができる。
 以上のように、各処理部の処理により、画像復号装置500は、符号化処理の効率の低減を抑制しながら符号化効率を向上させることを実現することができる。
 [復号処理の流れ]
 次に、以上のような画像復号装置500により実行される各処理の流れについて説明する。最初に、図17および図18のフローチャートを参照して、復号処理の流れの例を説明する。
 復号処理が開始されると、ステップS501において、蓄積バッファ501は、伝送されてきた画像(符号化データ)を蓄積する。ステップS502において、CU復号部532は、ステップS501において蓄積された符号化データから適応フィルタフラグを取得する。ステップS503において、CU復号部532は、ステップS501において蓄積された符号化データからI_PCM_flagを取得する。I_PCM_flagバッファ541は、そのI_PCM_flagを記憶する。
 ステップS504において、PCM制御部542は、I_PCM_flagバッファ541に記憶されたI_PCM_flagの値に基づいて、ステップS501において蓄積された符号化データ(CUデータ)の符号化のモードがI_PCMモードである(すなわち、非符号化データである)か否かを判定する。
 符号化のモードがI_PCMモードでないと判定された場合、PCM制御部542は、処理をステップS505に進める。ステップS505において、可逆復号部502は、可逆復号処理を行い、ステップS501において蓄積された符号化データ(CUデータ)を復号し、量子化された直交変換係数やフィルタ係数等を得る。
 ステップS506において、逆量子化部503は、ステップS505の処理により得られた、量子化された直交変換係数を逆量子化する。ステップS507において、逆直交変換部504は、ステップS506の処理により逆量子化された直交変換係数を逆直交変換し、復号画像データを生成する。
 ステップS508において、適応左シフト部511は、当該CUに対応する参照画像をフレームメモリ510から取得し、PCM復号部516の制御に従って、その参照画像に対して左シフト処理を行う。
 ステップS509において、ステップS508において左シフト処理された参照画像等を用いて、イントラ予測部513若しくは動き予測・補償部514は、予測処理を行い、予測画像を生成する。
 ステップS510において、演算部505は、ステップS507の処理により得られた差分情報に、ステップS509においてイントラ予測部513若しくは動き予測・補償部514により生成された予測画像を加算する。
 ステップS511において、ループフィルタ506は、ステップS510の加算結果に対してループフィルタ処理を行う。
 ステップS512において、適応右シフト部507は、ステップS511のループフィルタ処理結果に対して、PCM復号部516の制御に従って右シフト処理を行う。
 ステップS513において、フレームメモリ510は、復号画像データを参照画像として記憶する。
 ステップS514において、画面並べ替えバッファ508は、復号画像データのフレームの並べ替えを行う。すなわち、復号画像データの、画像符号化装置300の画面並べ替えバッファ302(図7)により符号化のために並べ替えられたフレームの順序が、元の表示の順序に並べ替えられる。
 ステップS515において、D/A変換部509は、ステップS514において、フレームが並べ替えられた復号画像データをD/A変換する。この復号画像データが図示せぬディスプレイに出力され、その画像が表示される。
 また、ステップS504において、符号化のモードがI_PCMモードであると判定された場合、PCM制御部542は、処理を図18のステップS521に進める。ステップS521において、可逆復号部502は、可逆復号処理を行い、ステップS501において蓄積された符号化データ(非圧縮データ)を符号化結果(出力画素値)とする。
 ステップS522において、ループフィルタ506は、ステップS521において得られた出力画素値に対してループフィルタ処理を行う。ステップS522の処理が終了すると、ループフィルタ506は、処理を図17のステップS513に戻し、それ以降の処理を実行させる。
 [ループフィルタ処理の流れ]
 次に、図19のフローチャートを参照して、図17のステップS511および図18のステップS522において実行されるループフィルタ処理の流れの例を説明する。
 ループフィルタ処理が開始されると、デブロックフィルタ551は、ステップS541において、ステップS510若しくはステップS521において得られたデブロックフィルタ前画素値に対してデブロックフィルタ処理を行う。
 ステップS542において、フィルタリング部553は、フィルタ係数を取得する。ステップS543において、画素仕分け部552は、適応ループフィルタフラグの値に基づいて、適応ループフィルタを行うか否かを判定する。適応ループフィルタ処理を行うと判定した場合、画素仕分け部552は、処理をステップS544に進める。
 ステップS544において、画素仕分け部552は、PCM制御部542の制御に従って、I_PCMモードか否かによってデブロックフィルタ後画素値の仕分けを行う。
 ステップS545において、フィルタリング部545は、適応ループフィルタ処理を行う方に仕分けられたデブロックフィルタ後画素値に対して、ステップS542において取得したフィルタ係数を用いて適応ループフィルタ処理を行う。ステップS545の処理が終了すると、フィルタリング部545は、ループフィルタ処理を終了し、処理を図17のステップS511若しくは図18のステップS522に戻し、図17のステップS512若しくは図17のステップS513に処理を進める。
 また、図19のステップS543において、適応ループフィルタ処理を行わないと判定した場合、画素仕分け部552は、ループフィルタ処理を終了し、処理を図17のステップS511若しくは図18のステップS522に戻し、図17のステップS512若しくは図17のステップS513に処理を進める。
 以上のように各処理を実行することにより、画像復号装置500は、符号化処理の効率の低減を抑制しながら符号化効率を向上させることを実現することができる。
 [I_PCM情報の位置]
 以上に説明したように、I_PCMモードの選択制御をCU単位で行うことができるようにすることにより、例えば図20のAに示されるように、LCU内の一部のCUのみI_PCMモードで符号化を行うようにすることもできる。図20のAは、1LCU内のCUの構造を示している。図20のAに示されるLCUは、CU0乃至CU6の7つのCUにより構成される。各数字は当該LCU内の処理順を示す。図20のAの例において、灰色で示されるCU(CU1,CU3,CU6)がI_PCMモードで符号化されるものとする。
 このような場合において、図20のBに示されるように、コードストリームにおいてLCUのデータの先頭に、当該LCUの内部におけるI_PCMに関する情報であるI_PCM情報を付加するようにしてもよい。
 I_PCM情報は、例えば、当該LCUがI_PCMモードで符号化されるCUを含むか否かを示すフラグ情報を含む。図20の例の場合、CU1,CU3、およびCU6がI_PCMモードで符号化されるCUであるので、このフラグ情報は、当該LCUがI_PCMモードで符号化されるCUを含むことを示す値(例えば「1」)に設定される。
 このように、画像符号化装置300が、当該LCUの内部におけるI_PCMに関する情報を、LCUの先頭に付加することにより、画像復号装置500は、当該LCUを復号する前に、当該LCU内にI_PCMモードで符号化されるCUが存在するか否かを容易に把握することができる。
 また、I_PCM情報は、例えば、当該LCUに含まれるI_PCMモードで符号化されるCUを示す情報を含む。図20の例の場合、CU1,CU3、およびCU6がI_PCMモードで符号化されるCUであるので、I_PCM情報は、これらのCU(CU1,CU3,CU6)を示す情報を含む。
 このように、画像符号化装置300が、当該LCUの内部におけるI_PCMに関する情報を、LCUの先頭に付加することにより、画像復号装置500は、当該LCUを復号する前に、当該LCU内のどのCUがI_PCMモード(非圧縮モード)で符号化されたかを容易に把握することができる。
 なお、以上においては、I_PCM_flag、適応フィルタフラグ、フィルタ係数、およびI_PCM情報等の画像データ以外の情報も、必要に応じて、画像符号化装置300から画像復号装置500に提供されるように説明したが、これらの情報は、符号化データの任意の位置に付加されるようにしてもよい。例えば、CUやLCUの先頭に付加されるようにしてもよいし、スライスヘッダに付加されるようにしてもよいし、シーケンスパラメータセット(SPS)やピクチャパラメータセット(PPS)等に格納されるようにしてもよい。また、例えば、これらの情報が、SEI(Suplemental Enhancement Information)等のパラメータセット(例えばシーケンスやピクチャのヘッダ等)に格納されるようにしてもよい。
 さらに、これらの情報が、符号化データとは別に復号側に伝送されるようにしてもよい。その場合、これらの情報と符号化データとの対応関係を明確にする(復号側で把握することができるようにする)必要があるが、その方法は任意である。例えば、別途、対応関係を示すテーブル情報を作成してもよいし、対応先のデータを示すリンク情報を互いのデータに埋め込むなどしてもよい。
 また、これらの情報を、画像符号化装置300と画像復号装置500とで予め共有しておくようにしてもよい。その場合、これらの情報の伝送を省略することができる場合もある。
 <3.第3の実施の形態>
 [パーソナルコンピュータ]
 上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。この場合、例えば、図21に示されるようなパーソナルコンピュータとして構成されるようにしてもよい。
 図21において、パーソナルコンピュータ600のCPU(Central Processing Unit)601は、ROM(Read Only Memory)602に記憶されているプログラム、または記憶部613からRAM(Random Access Memory)603にロードされたプログラムに従って各種の処理を実行する。RAM603にはまた、CPU601が各種の処理を実行する上において必要なデータなども適宜記憶される。
 CPU601、ROM602、およびRAM603は、バス604を介して相互に接続されている。このバス604にはまた、入出力インタフェース610も接続されている。
 入出力インタフェース610には、キーボード、マウスなどよりなる入力部611、CRT(Cathode Ray Tube)やLCD(Liquid Crystal Display)などよりなるディスプレイ、並びにスピーカなどよりなる出力部612、ハードディスクなどより構成される記憶部613、モデムなどより構成される通信部614が接続されている。通信部614は、インターネットを含むネットワークを介しての通信処理を行う。
 入出力インタフェース610にはまた、必要に応じてドライブ615が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア621が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部613にインストールされる。
 上述した一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、ネットワークや記録媒体からインストールされる。
 この記録媒体は、例えば、図21に示されるように、装置本体とは別に、ユーザにプログラムを配信するために配布される、プログラムが記録されている磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc - Read Only Memory),DVD(Digital Versatile Disc)を含む)、光磁気ディスク(MD(Mini Disc)を含む)、若しくは半導体メモリなどよりなるリムーバブルメディア621により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに配信される、プログラムが記録されているROM602や、記憶部613に含まれるハードディスクなどで構成される。
 なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
 また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
 また、本明細書において、システムとは、複数のデバイス(装置)により構成される装置全体を表すものである。
 また、以上において、1つの装置(または処理部)として説明した構成を分割し、複数の装置(または処理部)として構成するようにしてもよい。逆に、以上において複数の装置(または処理部)として説明した構成をまとめて1つの装置(または処理部)として構成されるようにしてもよい。また、各装置(または各処理部)の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置(または処理部)の構成の一部を他の装置(または他の処理部)の構成に含めるようにしてもよい。つまり、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
 例えば、図8に示される可逆符号化部307、ループフィルタ312、およびPCM符号化部321を、それぞれ、独立した装置として構成するようにしてもよい。また、図8に示されるNAL符号化部331、CU符号化部332、I_PCM_flag生成部341、PCM決定部342、デブロックフィルタ351、画素仕分け部352、フィルタ係数算出部353、およびフィルタリング部354を、それぞれ、独立した装置として構成するようにしてもよい。
 さらに、図9に示される入力データ量算出部361、PCM判定部362、符号化制御部363、適応シフト制御部364、およびフィルタ制御部を、それぞれ、独立した装置として構成するようにしてもよい。
 また、これらの各処理部を任意に組み合わせ、独立した装置として構成するようにしてもよい。もちろん、図7乃至図9に示される任意の処理部と組み合わせても良いし、図示せぬ処理部と組み合わせても良い。
 画像復号装置500についても同様である。例えば、図15に示される可逆復号部502、ループフィルタ506、およびPCM復号部516を、それぞれ、独立した装置として構成するようにしてもよい。また、図16に示されるNAL復号部531、CU復号部532、I_PCM_flagバッファ541、PCM制御部542、デブロックフィルタ551、画素仕分け部552、およびフィルタリング部553を、それぞれ、独立した装置として構成するようにしてもよい。
 さらに、これらの各処理部を任意に組み合わせ、独立した装置として構成するようにしてもよい。もちろん、図15および図16に示される任意の処理部と組み合わせても良いし、図示せぬ処理部と組み合わせても良い。
 また、例えば、上述した画像符号化装置や画像復号装置は、任意の電子機器に適用することができる。以下にその例について説明する。
 <4.第4の実施の形態>
 [テレビジョン受像機]
 図22は、画像復号装置500を用いるテレビジョン受像機の主な構成例を示すブロック図である。
 図22に示されるテレビジョン受像機1000は、地上波チューナ1013、ビデオデコーダ1015、映像信号処理回路1018、グラフィック生成回路1019、パネル駆動回路1020、および表示パネル1021を有する。
 地上波チューナ1013は、地上アナログ放送の放送波信号を、アンテナを介して受信し、復調し、映像信号を取得し、それをビデオデコーダ1015に供給する。ビデオデコーダ1015は、地上波チューナ1013から供給された映像信号に対してデコード処理を施し、得られたデジタルのコンポーネント信号を映像信号処理回路1018に供給する。
 映像信号処理回路1018は、ビデオデコーダ1015から供給された映像データに対してノイズ除去などの所定の処理を施し、得られた映像データをグラフィック生成回路1019に供給する。
 グラフィック生成回路1019は、表示パネル1021に表示させる番組の映像データや、ネットワークを介して供給されるアプリケーションに基づく処理による画像データなどを生成し、生成した映像データや画像データをパネル駆動回路1020に供給する。また、グラフィック生成回路1019は、項目の選択などにユーザにより利用される画面を表示するための映像データ(グラフィック)を生成し、それを番組の映像データに重畳したりすることによって得られた映像データをパネル駆動回路1020に供給するといった処理も適宜行う。
 パネル駆動回路1020は、グラフィック生成回路1019から供給されたデータに基づいて表示パネル1021を駆動し、番組の映像や上述した各種の画面を表示パネル1021に表示させる。
 表示パネル1021はLCD(Liquid Crystal Display)などよりなり、パネル駆動回路1020による制御に従って番組の映像などを表示させる。
 また、テレビジョン受像機1000は、音声A/D(Analog/Digital)変換回路1014、音声信号処理回路1022、エコーキャンセル/音声合成回路1023、音声増幅回路1024、およびスピーカ1025も有する。
 地上波チューナ1013は、受信した放送波信号を復調することにより、映像信号だけでなく音声信号も取得する。地上波チューナ1013は、取得した音声信号を音声A/D変換回路1014に供給する。
 音声A/D変換回路1014は、地上波チューナ1013から供給された音声信号に対してA/D変換処理を施し、得られたデジタルの音声信号を音声信号処理回路1022に供給する。
 音声信号処理回路1022は、音声A/D変換回路1014から供給された音声データに対してノイズ除去などの所定の処理を施し、得られた音声データをエコーキャンセル/音声合成回路1023に供給する。
 エコーキャンセル/音声合成回路1023は、音声信号処理回路1022から供給された音声データを音声増幅回路1024に供給する。
 音声増幅回路1024は、エコーキャンセル/音声合成回路1023から供給された音声データに対してD/A変換処理、増幅処理を施し、所定の音量に調整した後、音声をスピーカ1025から出力させる。
 さらに、テレビジョン受像機1000は、デジタルチューナ1016およびMPEGデコーダ1017も有する。
 デジタルチューナ1016は、デジタル放送(地上デジタル放送、BS(Broadcasting Satellite)/CS(Communications Satellite)デジタル放送)の放送波信号を、アンテナを介して受信し、復調し、MPEG-TS(Moving Picture Experts Group-Transport Stream)を取得し、それをMPEGデコーダ1017に供給する。
 MPEGデコーダ1017は、デジタルチューナ1016から供給されたMPEG-TSに施されているスクランブルを解除し、再生対象(視聴対象)になっている番組のデータを含むストリームを抽出する。MPEGデコーダ1017は、抽出したストリームを構成する音声パケットをデコードし、得られた音声データを音声信号処理回路1022に供給するとともに、ストリームを構成する映像パケットをデコードし、得られた映像データを映像信号処理回路1018に供給する。また、MPEGデコーダ1017は、MPEG-TSから抽出したEPG(Electronic Program Guide)データを図示せぬ経路を介してCPU1032に供給する。
 テレビジョン受像機1000は、このように映像パケットをデコードするMPEGデコーダ1017として、上述した画像復号装置500を用いる。なお、放送局等より送信されるMPEG-TSは、画像符号化装置300によって符号化されている。
 MPEGデコーダ1017は、画像復号装置500の場合と同様に、I_PCMモードの選択をLCUよりも小さいCU単位で制御された符号化データを適切に復号する。したがって、MPEGデコーダ1017は、符号化時の冗長な処理の低減と、符号化データに含まれる冗長な情報の低減を実現させることができる。これにより、MPEGデコーダ1017は、符号化処理の効率の低減を抑制しながら符号化効率を向上させることを実現することができる。
 MPEGデコーダ1017から供給された映像データは、ビデオデコーダ1015から供給された映像データの場合と同様に、映像信号処理回路1018において所定の処理が施され、グラフィック生成回路1019において、生成された映像データ等が適宜重畳され、パネル駆動回路1020を介して表示パネル1021に供給され、その画像が表示される。
 MPEGデコーダ1017から供給された音声データは、音声A/D変換回路1014から供給された音声データの場合と同様に、音声信号処理回路1022において所定の処理が施され、エコーキャンセル/音声合成回路1023を介して音声増幅回路1024に供給され、D/A変換処理や増幅処理が施される。その結果、所定の音量に調整された音声がスピーカ1025から出力される。
 また、テレビジョン受像機1000は、マイクロホン1026、およびA/D変換回路1027も有する。
 A/D変換回路1027は、音声会話用のものとしてテレビジョン受像機1000に設けられるマイクロホン1026により取り込まれたユーザの音声の信号を受信し、受信した音声信号に対してA/D変換処理を施し、得られたデジタルの音声データをエコーキャンセル/音声合成回路1023に供給する。
 エコーキャンセル/音声合成回路1023は、テレビジョン受像機1000のユーザ(ユーザA)の音声のデータがA/D変換回路1027から供給されている場合、ユーザAの音声データを対象としてエコーキャンセルを行い、他の音声データと合成するなどして得られた音声のデータを、音声増幅回路1024を介してスピーカ1025より出力させる。
 さらに、テレビジョン受像機1000は、音声コーデック1028、内部バス1029、SDRAM(Synchronous Dynamic Random Access Memory)1030、フラッシュメモリ1031、CPU1032、USB(Universal Serial Bus) I/F1033、およびネットワークI/F1034も有する。
 A/D変換回路1027は、音声会話用のものとしてテレビジョン受像機1000に設けられるマイクロホン1026により取り込まれたユーザの音声の信号を受信し、受信した音声信号に対してA/D変換処理を施し、得られたデジタルの音声データを音声コーデック1028に供給する。
 音声コーデック1028は、A/D変換回路1027から供給された音声データを、ネットワーク経由で送信するための所定のフォーマットのデータに変換し、内部バス1029を介してネットワークI/F1034に供給する。
 ネットワークI/F1034は、ネットワーク端子1035に装着されたケーブルを介してネットワークに接続される。ネットワークI/F1034は、例えば、そのネットワークに接続される他の装置に対して、音声コーデック1028から供給された音声データを送信する。また、ネットワークI/F1034は、例えば、ネットワークを介して接続される他の装置から送信される音声データを、ネットワーク端子1035を介して受信し、それを、内部バス1029を介して音声コーデック1028に供給する。
 音声コーデック1028は、ネットワークI/F1034から供給された音声データを所定のフォーマットのデータに変換し、それをエコーキャンセル/音声合成回路1023に供給する。
 エコーキャンセル/音声合成回路1023は、音声コーデック1028から供給される音声データを対象としてエコーキャンセルを行い、他の音声データと合成するなどして得られた音声のデータを、音声増幅回路1024を介してスピーカ1025より出力させる。
 SDRAM1030は、CPU1032が処理を行う上で必要な各種のデータを記憶する。
 フラッシュメモリ1031は、CPU1032により実行されるプログラムを記憶する。フラッシュメモリ1031に記憶されているプログラムは、テレビジョン受像機1000の起動時などの所定のタイミングでCPU1032により読み出される。フラッシュメモリ1031には、デジタル放送を介して取得されたEPGデータ、ネットワークを介して所定のサーバから取得されたデータなども記憶される。
 例えば、フラッシュメモリ1031には、CPU1032の制御によりネットワークを介して所定のサーバから取得されたコンテンツデータを含むMPEG-TSが記憶される。フラッシュメモリ1031は、例えばCPU1032の制御により、そのMPEG-TSを、内部バス1029を介してMPEGデコーダ1017に供給する。
 MPEGデコーダ1017は、デジタルチューナ1016から供給されたMPEG-TSの場合と同様に、そのMPEG-TSを処理する。このようにテレビジョン受像機1000は、映像や音声等よりなるコンテンツデータを、ネットワークを介して受信し、MPEGデコーダ1017を用いてデコードし、その映像を表示させたり、音声を出力させたりすることができる。
 また、テレビジョン受像機1000は、リモートコントローラ1051から送信される赤外線信号を受光する受光部1037も有する。
 受光部1037は、リモートコントローラ1051からの赤外線を受光し、復調して得られたユーザ操作の内容を表す制御コードをCPU1032に出力する。
 CPU1032は、フラッシュメモリ1031に記憶されているプログラムを実行し、受光部1037から供給される制御コードなどに応じてテレビジョン受像機1000の全体の動作を制御する。CPU1032とテレビジョン受像機1000の各部は、図示せぬ経路を介して接続されている。
 USB I/F1033は、USB端子1036に装着されたUSBケーブルを介して接続される、テレビジョン受像機1000の外部の機器との間でデータの送受信を行う。ネットワークI/F1034は、ネットワーク端子1035に装着されたケーブルを介してネットワークに接続し、ネットワークに接続される各種の装置と音声データ以外のデータの送受信も行う。
 テレビジョン受像機1000は、MPEGデコーダ1017として画像復号装置500を用いることにより、アンテナを介して受信する放送波信号や、ネットワークを介して取得するコンテンツデータを生成する際の符号化処理の効率の低減を抑制しながら、そのデータの符号化効率を向上させることを実現することができる。
 <5.第5の実施の形態>
 [携帯電話機]
 図23は、画像符号化装置300および画像復号装置500を用いる携帯電話機の主な構成例を示すブロック図である。
 図23に示される携帯電話機1100は、各部を統括的に制御するようになされた主制御部1150、電源回路部1151、操作入力制御部1152、画像エンコーダ1153、カメラI/F部1154、LCD制御部1155、画像デコーダ1156、多重分離部1157、記録再生部1162、変復調回路部1158、および音声コーデック1159を有する。これらは、バス1160を介して互いに接続されている。
 また、携帯電話機1100は、操作キー1119、CCD(Charge Coupled Devices)カメラ1116、液晶ディスプレイ1118、記憶部1123、送受信回路部1163、アンテナ1114、マイクロホン(マイク)1121、およびスピーカ1117を有する。
 電源回路部1151は、ユーザの操作により終話および電源キーがオン状態にされると、バッテリパックから各部に対して電力を供給することにより携帯電話機1100を動作可能な状態に起動する。
 携帯電話機1100は、CPU、ROMおよびRAM等でなる主制御部1150の制御に基づいて、音声通話モードやデータ通信モード等の各種モードで、音声信号の送受信、電子メールや画像データの送受信、画像撮影、またはデータ記録等の各種動作を行う。
 例えば、音声通話モードにおいて、携帯電話機1100は、マイクロホン(マイク)1121で集音した音声信号を、音声コーデック1159によってデジタル音声データに変換し、これを変復調回路部1158でスペクトラム拡散処理し、送受信回路部1163でデジタルアナログ変換処理および周波数変換処理する。携帯電話機1100は、その変換処理により得られた送信用信号を、アンテナ1114を介して図示しない基地局へ送信する。基地局へ伝送された送信用信号(音声信号)は、公衆電話回線網を介して通話相手の携帯電話機に供給される。
 また、例えば、音声通話モードにおいて、携帯電話機1100は、アンテナ1114で受信した受信信号を送受信回路部1163で増幅し、さらに周波数変換処理およびアナログデジタル変換処理し、変復調回路部1158でスペクトラム逆拡散処理し、音声コーデック1159によってアナログ音声信号に変換する。携帯電話機1100は、その変換して得られたアナログ音声信号をスピーカ1117から出力する。
 更に、例えば、データ通信モードにおいて電子メールを送信する場合、携帯電話機1100は、操作キー1119の操作によって入力された電子メールのテキストデータを、操作入力制御部1152において受け付ける。携帯電話機1100は、そのテキストデータを主制御部1150において処理し、LCD制御部1155を介して、画像として液晶ディスプレイ1118に表示させる。
 また、携帯電話機1100は、主制御部1150において、操作入力制御部1152が受け付けたテキストデータやユーザ指示等に基づいて電子メールデータを生成する。携帯電話機1100は、その電子メールデータを、変復調回路部1158でスペクトラム拡散処理し、送受信回路部1163でデジタルアナログ変換処理および周波数変換処理する。携帯電話機1100は、その変換処理により得られた送信用信号を、アンテナ1114を介して図示しない基地局へ送信する。基地局へ伝送された送信用信号(電子メール)は、ネットワークおよびメールサーバ等を介して、所定のあて先に供給される。
 また、例えば、データ通信モードにおいて電子メールを受信する場合、携帯電話機1100は、基地局から送信された信号を、アンテナ1114を介して送受信回路部1163で受信し、増幅し、さらに周波数変換処理およびアナログデジタル変換処理する。携帯電話機1100は、その受信信号を変復調回路部1158でスペクトラム逆拡散処理して元の電子メールデータを復元する。携帯電話機1100は、復元された電子メールデータを、LCD制御部1155を介して液晶ディスプレイ1118に表示する。
 なお、携帯電話機1100は、受信した電子メールデータを、記録再生部1162を介して、記憶部1123に記録する(記憶させる)ことも可能である。
 この記憶部1123は、書き換え可能な任意の記憶媒体である。記憶部1123は、例えば、RAMや内蔵型フラッシュメモリ等の半導体メモリであってもよいし、ハードディスクであってもよいし、磁気ディスク、光磁気ディスク、光ディスク、USBメモリ、またはメモリカード等のリムーバブルメディアであってもよい。もちろん、これら以外のものであってもよい。
 さらに、例えば、データ通信モードにおいて画像データを送信する場合、携帯電話機1100は、撮像によりCCDカメラ1116で画像データを生成する。CCDカメラ1116は、レンズや絞り等の光学デバイスと光電変換素子としてのCCDを有し、被写体を撮像し、受光した光の強度を電気信号に変換し、被写体の画像の画像データを生成する。CCDカメラ1116は、その画像データを、カメラI/F部1154を介して、画像エンコーダ1153で符号化し、符号化画像データに変換する。
 携帯電話機1100は、このような処理を行う画像エンコーダ1153として、上述した画像符号化装置300を用いる。画像エンコーダ1153は、画像符号化装置300の場合と同様に、I_PCMモードの選択をLCUよりも小さいCU単位で制御する。つまり、画像エンコーダ1153は、符号化時の冗長な処理をより低減させることができるとともに、符号化データに含まれる冗長な情報をより低減させることができる。これにより、画像エンコーダ1153は、符号化処理の効率の低減を抑制しながら符号化効率を向上させることができる。
 なお、携帯電話機1100は、このとき同時に、CCDカメラ1116で撮像中にマイクロホン(マイク)1121で集音した音声を、音声コーデック1159においてアナログデジタル変換し、さらに符号化する。
 携帯電話機1100は、多重分離部1157において、画像エンコーダ1153から供給された符号化画像データと、音声コーデック1159から供給されたデジタル音声データとを、所定の方式で多重化する。携帯電話機1100は、その結果得られる多重化データを、変復調回路部1158でスペクトラム拡散処理し、送受信回路部1163でデジタルアナログ変換処理および周波数変換処理する。携帯電話機1100は、その変換処理により得られた送信用信号を、アンテナ1114を介して図示しない基地局へ送信する。基地局へ伝送された送信用信号(画像データ)は、ネットワーク等を介して、通信相手に供給される。
 なお、画像データを送信しない場合、携帯電話機1100は、CCDカメラ1116で生成した画像データを、画像エンコーダ1153を介さずに、LCD制御部1155を介して液晶ディスプレイ1118に表示させることもできる。
 また、例えば、データ通信モードにおいて、簡易ホームページ等にリンクされた動画像ファイルのデータを受信する場合、携帯電話機1100は、基地局から送信された信号を、アンテナ1114を介して送受信回路部1163で受信し、増幅し、さらに周波数変換処理およびアナログデジタル変換処理する。携帯電話機1100は、その受信信号を変復調回路部1158でスペクトラム逆拡散処理して元の多重化データを復元する。携帯電話機1100は、多重分離部1157において、その多重化データを分離して、符号化画像データと音声データとに分ける。
 携帯電話機1100は、画像デコーダ1156において符号化画像データをデコードすることにより、再生動画像データを生成し、これを、LCD制御部1155を介して液晶ディスプレイ1118に表示させる。これにより、例えば、簡易ホームページにリンクされた動画像ファイルに含まれる動画データが液晶ディスプレイ1118に表示される。
 携帯電話機1100は、このような処理を行う画像デコーダ1156として、上述した画像復号装置500を用いる。つまり、画像デコーダ1156は、画像復号装置500の場合と同様に、I_PCMモードの選択をLCUよりも小さいCU単位で制御された符号化データを適切に復号する。したがって、画像デコーダ1156は、符号化時の冗長な処理の低減と、符号化データに含まれる冗長な情報の低減を実現させることができる。これにより、画像デコーダ1156は、符号化処理の効率の低減を抑制しながら符号化効率を向上させることを実現することができる。
 このとき、携帯電話機1100は、同時に、音声コーデック1159において、デジタルの音声データをアナログ音声信号に変換し、これをスピーカ1117より出力させる。これにより、例えば、簡易ホームページにリンクされた動画像ファイルに含まれる音声データが再生される。
 なお、電子メールの場合と同様に、携帯電話機1100は、受信した簡易ホームページ等にリンクされたデータを、記録再生部1162を介して、記憶部1123に記録する(記憶させる)ことも可能である。
 また、携帯電話機1100は、主制御部1150において、撮像されてCCDカメラ1116で得られた2次元コードを解析し、2次元コードに記録された情報を取得することができる。
 さらに、携帯電話機1100は、赤外線通信部1181で赤外線により外部の機器と通信することができる。
 携帯電話機1100は、画像エンコーダ1153として画像符号化装置300を用いることにより、例えばCCDカメラ1116において生成された画像データを符号化して伝送する際に、符号化処理の効率の低減を抑制しながら符号化効率を向上させることができる。
 また、携帯電話機1100は、画像デコーダ1156として画像復号装置500を用いることにより、例えば、簡易ホームページ等にリンクされた動画像ファイルのデータ(符号化データ)を生成する際の符号化処理の効率の低減を抑制しながら、そのデータの符号化効率を向上させることを実現することができる。
 なお、以上において、携帯電話機1100が、CCDカメラ1116を用いるように説明したが、このCCDカメラ1116の代わりに、CMOS(Complementary Metal Oxide Semiconductor)を用いたイメージセンサ(CMOSイメージセンサ)を用いるようにしてもよい。この場合も、携帯電話機1100は、CCDカメラ1116を用いる場合と同様に、被写体を撮像し、被写体の画像の画像データを生成することができる。
 また、以上においては携帯電話機1100として説明したが、例えば、PDA(Personal Digital Assistants)、スマートフォン、UMPC(Ultra Mobile Personal Computer)、ネットブック、ノート型パーソナルコンピュータ等、この携帯電話機1100と同様の撮像機能や通信機能を有する装置であれば、どのような装置であっても携帯電話機1100の場合と同様に、画像符号化装置300および画像復号装置500を適用することができる。
 <6.第6の実施の形態>
 [ハードディスクレコーダ]
 図24は、画像符号化装置300および画像復号装置500を用いるハードディスクレコーダの主な構成例を示すブロック図である。
 図24に示されるハードディスクレコーダ(HDDレコーダ)1200は、チューナにより受信された、衛星や地上のアンテナ等より送信される放送波信号(テレビジョン信号)に含まれる放送番組のオーディオデータとビデオデータを、内蔵するハードディスクに保存し、その保存したデータをユーザの指示に応じたタイミングでユーザに提供する装置である。
 ハードディスクレコーダ1200は、例えば、放送波信号よりオーディオデータとビデオデータを抽出し、それらを適宜復号し、内蔵するハードディスクに記憶させることができる。また、ハードディスクレコーダ1200は、例えば、ネットワークを介して他の装置からオーディオデータやビデオデータを取得し、それらを適宜復号し、内蔵するハードディスクに記憶させることもできる。
 さらに、ハードディスクレコーダ1200は、例えば、内蔵するハードディスクに記録されているオーディオデータやビデオデータを復号してモニタ1260に供給し、モニタ1260の画面にその画像を表示させ、モニタ1260のスピーカよりその音声を出力させることができる。また、ハードディスクレコーダ1200は、例えば、チューナを介して取得された放送波信号より抽出されたオーディオデータとビデオデータ、または、ネットワークを介して他の装置から取得したオーディオデータやビデオデータを復号してモニタ1260に供給し、モニタ1260の画面にその画像を表示させ、モニタ1260のスピーカよりその音声を出力させることもできる。
 もちろん、この他の動作も可能である。
 図24に示されるように、ハードディスクレコーダ1200は、受信部1221、復調部1222、デマルチプレクサ1223、オーディオデコーダ1224、ビデオデコーダ1225、およびレコーダ制御部1226を有する。ハードディスクレコーダ1200は、さらに、EPGデータメモリ1227、プログラムメモリ1228、ワークメモリ1229、ディスプレイコンバータ1230、OSD(On Screen Display)制御部1231、ディスプレイ制御部1232、記録再生部1233、D/Aコンバータ1234、および通信部1235を有する。
 また、ディスプレイコンバータ1230は、ビデオエンコーダ1241を有する。記録再生部1233は、エンコーダ1251およびデコーダ1252を有する。
 受信部1221は、リモートコントローラ(図示せず)からの赤外線信号を受信し、電気信号に変換してレコーダ制御部1226に出力する。レコーダ制御部1226は、例えば、マイクロプロセッサなどにより構成され、プログラムメモリ1228に記憶されているプログラムに従って、各種の処理を実行する。レコーダ制御部1226は、このとき、ワークメモリ1229を必要に応じて使用する。
 通信部1235は、ネットワークに接続され、ネットワークを介して他の装置との通信処理を行う。例えば、通信部1235は、レコーダ制御部1226により制御され、チューナ(図示せず)と通信し、主にチューナに対して選局制御信号を出力する。
 復調部1222は、チューナより供給された信号を、復調し、デマルチプレクサ1223に出力する。デマルチプレクサ1223は、復調部1222より供給されたデータを、オーディオデータ、ビデオデータ、およびEPGデータに分離し、それぞれ、オーディオデコーダ1224、ビデオデコーダ1225、またはレコーダ制御部1226に出力する。
 オーディオデコーダ1224は、入力されたオーディオデータをデコードし、記録再生部1233に出力する。ビデオデコーダ1225は、入力されたビデオデータをデコードし、ディスプレイコンバータ1230に出力する。レコーダ制御部1226は、入力されたEPGデータをEPGデータメモリ1227に供給し、記憶させる。
 ディスプレイコンバータ1230は、ビデオデコーダ1225またはレコーダ制御部1226より供給されたビデオデータを、ビデオエンコーダ1241により、例えばNTSC(National Television Standards Committee)方式のビデオデータにエンコードし、記録再生部1233に出力する。また、ディスプレイコンバータ1230は、ビデオデコーダ1225またはレコーダ制御部1226より供給されるビデオデータの画面のサイズを、モニタ1260のサイズに対応するサイズに変換し、ビデオエンコーダ1241によってNTSC方式のビデオデータに変換し、アナログ信号に変換し、ディスプレイ制御部1232に出力する。
 ディスプレイ制御部1232は、レコーダ制御部1226の制御のもと、OSD(On Screen Display)制御部1231が出力したOSD信号を、ディスプレイコンバータ1230より入力されたビデオ信号に重畳し、モニタ1260のディスプレイに出力し、表示させる。
 モニタ1260にはまた、オーディオデコーダ1224が出力したオーディオデータが、D/Aコンバータ1234によりアナログ信号に変換されて供給されている。モニタ1260は、このオーディオ信号を内蔵するスピーカから出力する。
 記録再生部1233は、ビデオデータやオーディオデータ等を記録する記憶媒体としてハードディスクを有する。
 記録再生部1233は、例えば、オーディオデコーダ1224より供給されるオーディオデータを、エンコーダ1251によりエンコードする。また、記録再生部1233は、ディスプレイコンバータ1230のビデオエンコーダ1241より供給されるビデオデータを、エンコーダ1251によりエンコードする。記録再生部1233は、そのオーディオデータの符号化データとビデオデータの符号化データとをマルチプレクサにより合成する。記録再生部1233は、その合成データをチャネルコーディングして増幅し、そのデータを、記録ヘッドを介してハードディスクに書き込む。
 記録再生部1233は、再生ヘッドを介してハードディスクに記録されているデータを再生し、増幅し、デマルチプレクサによりオーディオデータとビデオデータに分離する。記録再生部1233は、デコーダ1252によりオーディオデータおよびビデオデータをデコードする。記録再生部1233は、復号したオーディオデータをD/A変換し、モニタ1260のスピーカに出力する。また、記録再生部1233は、復号したビデオデータをD/A変換し、モニタ1260のディスプレイに出力する。
 レコーダ制御部1226は、受信部1221を介して受信されるリモートコントローラからの赤外線信号により示されるユーザ指示に基づいて、EPGデータメモリ1227から最新のEPGデータを読み出し、それをOSD制御部1231に供給する。OSD制御部1231は、入力されたEPGデータに対応する画像データを発生し、ディスプレイ制御部1232に出力する。ディスプレイ制御部1232は、OSD制御部1231より入力されたビデオデータをモニタ1260のディスプレイに出力し、表示させる。これにより、モニタ1260のディスプレイには、EPG(電子番組ガイド)が表示される。
 また、ハードディスクレコーダ1200は、インターネット等のネットワークを介して他の装置から供給されるビデオデータ、オーディオデータ、またはEPGデータ等の各種データを取得することができる。
 通信部1235は、レコーダ制御部1226に制御され、ネットワークを介して他の装置から送信されるビデオデータ、オーディオデータ、およびEPGデータ等の符号化データを取得し、それをレコーダ制御部1226に供給する。レコーダ制御部1226は、例えば、取得したビデオデータやオーディオデータの符号化データを記録再生部1233に供給し、ハードディスクに記憶させる。このとき、レコーダ制御部1226および記録再生部1233が、必要に応じて再エンコード等の処理を行うようにしてもよい。
 また、レコーダ制御部1226は、取得したビデオデータやオーディオデータの符号化データを復号し、得られるビデオデータをディスプレイコンバータ1230に供給する。ディスプレイコンバータ1230は、ビデオデコーダ1225から供給されるビデオデータと同様に、レコーダ制御部1226から供給されるビデオデータを処理し、ディスプレイ制御部1232を介してモニタ1260に供給し、その画像を表示させる。
 また、この画像表示に合わせて、レコーダ制御部1226が、復号したオーディオデータを、D/Aコンバータ1234を介してモニタ1260に供給し、その音声をスピーカから出力させるようにしてもよい。
 さらに、レコーダ制御部1226は、取得したEPGデータの符号化データを復号し、復号したEPGデータをEPGデータメモリ1227に供給する。
 以上のようなハードディスクレコーダ1200は、ビデオデコーダ1225、デコーダ1252、およびレコーダ制御部1226に内蔵されるデコーダとして画像復号装置500を用いる。つまり、ビデオデコーダ1225、デコーダ1252、およびレコーダ制御部1226に内蔵されるデコーダは、画像復号装置500の場合と同様に、I_PCMモードの選択をLCUよりも小さいCU単位で制御された符号化データを適切に復号する。したがって、ビデオデコーダ1225、デコーダ1252、およびレコーダ制御部1226に内蔵されるデコーダは、符号化時の冗長な処理の低減と、符号化データに含まれる冗長な情報の低減を実現させることができる。これにより、ビデオデコーダ1225、デコーダ1252、およびレコーダ制御部1226に内蔵されるデコーダは、符号化処理の効率の低減を抑制しながら符号化効率を向上させることを実現することができる。
 したがって、ハードディスクレコーダ1200は、例えば、チューナや通信部1235が受信するビデオデータ(符号化データ)や、記録再生部1233が再生するビデオデータ(符号化データ)を生成する際の符号化処理の効率の低減を抑制しながら、そのデータの符号化効率を向上させることを実現することができる。
 また、ハードディスクレコーダ1200は、エンコーダ1251として画像符号化装置300を用いる。したがって、エンコーダ1251は、画像符号化装置300の場合と同様に、I_PCMモードの選択をLCUよりも小さいCU単位で制御する。つまり、エンコーダ1251は、符号化時の冗長な処理をより低減させることができるとともに、符号化データに含まれる冗長な情報をより低減させることができる。これにより、エンコーダ1251は、符号化処理の効率の低減を抑制しながら符号化効率を向上させることができる。
 したがって、ハードディスクレコーダ1200は、例えば、ハードディスクに記録する符号化データを生成する際に、符号化処理の効率の低減を抑制しながら符号化効率を向上させることができる。
 なお、以上においては、ビデオデータやオーディオデータをハードディスクに記録するハードディスクレコーダ1200について説明したが、もちろん、記録媒体はどのようなものであってもよい。例えばフラッシュメモリ、光ディスク、またはビデオテープ等、ハードディスク以外の記録媒体を適用するレコーダであっても、上述したハードディスクレコーダ1200の場合と同様に、画像符号化装置300および画像復号装置500を適用することができる。
 <7.第7の実施の形態>
 [カメラ]
 図25は、画像符号化装置300および画像復号装置500を用いるカメラの主な構成例を示すブロック図である。
 図25に示されるカメラ1300は、被写体を撮像し、被写体の画像をLCD1316に表示させたり、それを画像データとして、記録メディア1333に記録したりする。
 レンズブロック1311は、光(すなわち、被写体の映像)を、CCD/CMOS1312に入射させる。CCD/CMOS1312は、CCDまたはCMOSを用いたイメージセンサであり、受光した光の強度を電気信号に変換し、カメラ信号処理部1313に供給する。
 カメラ信号処理部1313は、CCD/CMOS1312から供給された電気信号を、Y,Cr,Cbの色差信号に変換し、画像信号処理部1314に供給する。画像信号処理部1314は、コントローラ1321の制御の下、カメラ信号処理部1313から供給された画像信号に対して所定の画像処理を施したり、その画像信号をエンコーダ1341で符号化したりする。画像信号処理部1314は、画像信号を符号化して生成した符号化データを、デコーダ1315に供給する。さらに、画像信号処理部1314は、オンスクリーンディスプレイ(OSD)1320において生成された表示用データを取得し、それをデコーダ1315に供給する。
 以上の処理において、カメラ信号処理部1313は、バス1317を介して接続されるDRAM(Dynamic Random Access Memory)1318を適宜利用し、必要に応じて画像データや、その画像データが符号化された符号化データ等をそのDRAM1318に保持させる。
 デコーダ1315は、画像信号処理部1314から供給された符号化データを復号し、得られた画像データ(復号画像データ)をLCD1316に供給する。また、デコーダ1315は、画像信号処理部1314から供給された表示用データをLCD1316に供給する。LCD1316は、デコーダ1315から供給された復号画像データの画像と表示用データの画像を適宜合成し、その合成画像を表示する。
 オンスクリーンディスプレイ1320は、コントローラ1321の制御の下、記号、文字、または図形からなるメニュー画面やアイコンなどの表示用データを、バス1317を介して画像信号処理部1314に出力する。
 コントローラ1321は、ユーザが操作部1322を用いて指令した内容を示す信号に基づいて、各種処理を実行するとともに、バス1317を介して、画像信号処理部1314、DRAM1318、外部インタフェース1319、オンスクリーンディスプレイ1320、およびメディアドライブ1323等を制御する。FLASH ROM1324には、コントローラ1321が各種処理を実行する上で必要なプログラムやデータ等が格納される。
 例えば、コントローラ1321は、画像信号処理部1314やデコーダ1315に代わって、DRAM1318に記憶されている画像データを符号化したり、DRAM1318に記憶されている符号化データを復号したりすることができる。このとき、コントローラ1321は、画像信号処理部1314やデコーダ1315の符号化・復号方式と同様の方式によって符号化・復号処理を行うようにしてもよいし、画像信号処理部1314やデコーダ1315が対応していない方式により符号化・復号処理を行うようにしてもよい。
 また、例えば、操作部1322から画像印刷の開始が指示された場合、コントローラ1321は、DRAM1318から画像データを読み出し、それを、バス1317を介して外部インタフェース1319に接続されるプリンタ1334に供給して印刷させる。
 さらに、例えば、操作部1322から画像記録が指示された場合、コントローラ1321は、DRAM1318から符号化データを読み出し、それを、バス1317を介してメディアドライブ1323に装着される記録メディア1333に供給して記憶させる。
 記録メディア1333は、例えば、磁気ディスク、光磁気ディスク、光ディスク、または半導体メモリ等の、読み書き可能な任意のリムーバブルメディアである。記録メディア1333は、もちろん、リムーバブルメディアとしての種類も任意であり、テープデバイスであってもよいし、ディスクであってもよいし、メモリカードであってもよい。もちろん、非接触ICカード等であっても良い。
 また、メディアドライブ1323と記録メディア1333を一体化し、例えば、内蔵型ハードディスクドライブやSSD(Solid State Drive)等のように、非可搬性の記憶媒体により構成されるようにしてもよい。
 外部インタフェース1319は、例えば、USB入出力端子などで構成され、画像の印刷を行う場合に、プリンタ1334と接続される。また、外部インタフェース1319には、必要に応じてドライブ1331が接続され、磁気ディスク、光ディスク、あるいは光磁気ディスクなどのリムーバブルメディア1332が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて、FLASH ROM1324にインストールされる。
 さらに、外部インタフェース1319は、LANやインターネット等の所定のネットワークに接続されるネットワークインタフェースを有する。コントローラ1321は、例えば、操作部1322からの指示に従って、DRAM1318から符号化データを読み出し、それを外部インタフェース1319から、ネットワークを介して接続される他の装置に供給させることができる。また、コントローラ1321は、ネットワークを介して他の装置から供給される符号化データや画像データを、外部インタフェース1319を介して取得し、それをDRAM1318に保持させたり、画像信号処理部1314に供給したりすることができる。
 以上のようなカメラ1300は、デコーダ1315として画像復号装置500を用いる。つまり、デコーダ1315は、画像復号装置500の場合と同様に、I_PCMモードの選択をLCUよりも小さいCU単位で制御された符号化データを適切に復号する。したがって、デコーダ1315は、符号化時の冗長な処理の低減と、符号化データに含まれる冗長な情報の低減を実現させることができる。これにより、デコーダ1315は、符号化処理の効率の低減を抑制しながら符号化効率を向上させることを実現することができる。
 したがって、カメラ1300は、例えば、CCD/CMOS1312において生成される画像データや、DRAM1318または記録メディア1333から読み出すビデオデータの符号化データや、ネットワークを介して取得するビデオデータの符号化データを生成する際の符号化処理の効率の低減を抑制しながら、そのデータの符号化効率を向上させることを実現することができる。
 また、カメラ1300は、エンコーダ1341として画像符号化装置300を用いる。エンコーダ1341は、画像符号化装置300の場合と同様に、I_PCMモードの選択をLCUよりも小さいCU単位で制御する。つまり、エンコーダ1341は、符号化時の冗長な処理をより低減させることができるとともに、符号化データに含まれる冗長な情報をより低減させることができる。これにより、エンコーダ1341は、符号化処理の効率の低減を抑制しながら符号化効率を向上させることができる。
 したがって、カメラ1300は、例えば、DRAM1318や記録メディア1333に記録する符号化データや、他の装置に提供する符号化データを生成する際に、符号化処理の効率の低減を抑制しながら符号化効率を向上させることができる。
 なお、コントローラ1321が行う復号処理に画像復号装置500の復号方法を適用するようにしてもよい。同様に、コントローラ1321が行う符号化処理に画像符号化装置300の符号化方法を適用するようにしてもよい。
 また、カメラ1300が撮像する画像データは動画像であってもよいし、静止画像であってもよい。
 もちろん、画像符号化装置300および画像復号装置500は、上述した装置以外の装置やシステムにも適用可能である。
 本技術は、例えば、MPEG,H.26x等の様に、離散コサイン変換等の直交変換と動き補償によって圧縮された画像情報(ビットストリーム)を、衛星放送、ケーブルTV、インターネット、携帯電話などのネットワークメディアを介して受信する際に、若しくは光、磁気ディスク、フラッシュメモリのような記憶メディア上で処理する際に用いられる画像符号化装置や画像復号装置に適用することができる。
 なお、本技術は以下のような構成も取ることができる。
 (1) 画像データを符号化する際の符号化モードとして、前記画像データを符号化データとして出力する符号化モードである非圧縮モードを選択するかを、階層構造を有する符号化単位毎に設定する符号化モード設定部と、
 前記符号化モード設定部により設定されたモードに従って、前記画像データを前記符号化単位毎に符号化する符号化部と
 を備える画像処理装置。
 (2) 前記符号化モード設定部により前記非圧縮モードが設定された符号化単位を対象として、符号化または復号する際のビット精度を拡張するシフト処理をスキップさせるように制御するシフト処理制御部と、
 前記シフト処理制御部により前記シフト処理を行うように制御される符号化単位を対象として、前記画像データを前記シフト処理するシフト処理部と
 をさらに備える前記(1)に記載の画像処理装置。
 (3) 前記符号化モード設定部により前記非圧縮モードを設定された符号化単位を対象として、ローカルデコードされた画像にフィルタリングを行うフィルタ処理をスキップさせるように制御するフィルタ処理制御部と、
 前記フィルタ処理制御部により前記フィルタ処理を行うように制御される符号化単位の画像データを用いて、前記フィルタ処理のフィルタ係数を算出するフィルタ係数算出部と、
 前記フィルタ係数算出部により算出された前記フィルタ係数を用いて、前記フィルタ処理の単位であるブロック毎に前記フィルタ処理を行うフィルタ処理部と
 をさらに備える前記(1)または(2)に記載の画像処理装置。
 (4) 前記フィルタ処理部は、処理対象であるカレントブロックに含まれる、前記フィルタ処理制御部により前記フィルタ処理が行われるように制御される画素のみを対象として、前記フィルタ処理を行う
 前記(3)に記載の画像処理装置。
 (5) 前記フィルタ処理が行われるかを示すフラグ情報であるフィルタ識別情報を、前記ブロック毎に生成するフィルタ識別情報生成部をさらに備える
 前記(3)または(4)に記載の画像処理装置。
 (6) 前記フィルタ処理部は、前記ローカルデコードされた画像を対象として、クラス分類処理を用いた適応的なフィルタ処理であるアダプティブループフィルタを行う
 前記(3)乃至(5)のいずれかに記載の画像処理装置。
 (7) 前記符号化モード設定部は、符号化処理対象であるカレント符号化単位の前記画像データが符号化された符号化データの符号量が、前記カレント符号化単位の前記画像データのデータ量である入力データ量以下である場合、前記カレント符号化単位の符号化モードを、前記非圧縮モードに設定する
 前記(1)乃至(6)のいずれかに記載の画像処理装置。
 (8) 前記入力データ量を算出する入力データ量算出部をさらに備え、
 前記符号化モード設定部は、前記カレント符号化単位を対象として、前記入力データ量算出部により算出された前記入力データ量と、前記符号量とを比較する
 前記(7)に記載の画像処理装置。
 (9)
 前記符号化モード設定部により前記非圧縮モードが設定されたかを示す識別情報を、前記符号化単位毎に生成する識別情報生成部をさらに備える
 前記(1)乃至(8)のいずれかに記載の画像処理装置。
 (10) 画像処理装置の画像処理方法であって、
 符号化モード設定部が、画像データを符号化する際の符号化モードとして、前記画像データを符号化データとして出力する符号化モードである非圧縮モードを選択するかを、階層構造を有する符号化単位毎に設定し、
 符号化部が、設定されたモードに従って、前記画像データを前記符号化単位毎に符号化する
 画像処理方法。
 (11) 画像データを符号化する際の符号化モードとして、前記画像データを符号化データとして出力する符号化モードである非圧縮モードが選択されたかを、階層構造を有する符号化単位毎に判定する符号化モード判定部と、
 前記符号化モード判定部により判定されたモードに従って、前記符号化データを前記符号化単位毎に復号する復号部と
 を備える画像処理装置。
 (12) 前記符号化モード判定部により前記非圧縮モードが選択されたと判定された符号化単位を対象として、符号化または復号する際のビット精度を拡張するシフト処理をスキップさせるように制御するシフト処理制御部と、
 前記シフト処理制御部により前記シフト処理を行うように制御される符号化単位を対象として、前記画像データを前記シフト処理するシフト処理部と
 をさらに備える前記(11)に記載の画像処理装置。
 (13) 前記符号化モード判定部により前記非圧縮モードが選択されたと判定された符号化単位を対象として、ローカルデコードされた画像にフィルタリングを行うフィルタ処理をスキップさせるように制御するフィルタ処理制御部と、
 前記フィルタ処理の単位であるブロック毎に、前記画像データに対して前記フィルタ処理を行うフィルタ処理部と
 をさらに備え、
 前記フィルタ処理部は、処理対象であるカレントブロックに含まれる、前記フィルタ処理制御部により前記フィルタ処理を行うように制御された画素のみを対象として、前記フィルタ処理を行う
 前記(11)または(12)に記載の画像処理装置。
 (14) 前記フィルタ処理部は、前記ローカルデコードされた画像を対象として、クラス分類処理を用いた適応的なフィルタ処理であるアダプティブループフィルタを行う
 前記(13)に記載の画像処理装置。
 (15) 前記フィルタ処理部は、前記フィルタ処理が行われたか否かを示すフィルタ識別情報により、処理対象であるカレントブロックの画像データに対して前記フィルタ処理が行われたことが示されている場合、前記フィルタ処理制御部により、前記カレントブロックに含まれる全ての画素を対象として前記フィルタ処理を行うように制御されているときのみ、前記フィルタ処理を行う
 前記(13)または(14)に記載の画像処理装置。
 (16) 前記符号化モード判定部は、前記符号化単位毎に前記非圧縮モードが選択されたかを示す識別情報に基づいて、前記非圧縮モードが選択されたかを判定する
 前記(11)乃至(15)のいずれかに記載の画像処理装置。
 (17) 画像処理装置の画像処理方法であって、
 符号化モード判定部が、画像データを符号化する際の符号化モードとして、前記画像データを符号化データとして出力する符号化モードである非圧縮モードが選択されたかを、階層構造を有する符号化単位毎に判定し、
 復号部が、判定されたモードに従って、前記符号化データを前記符号化単位毎に復号する
 画像処理方法。
 300 画像符号化装置, 303 適応左シフト部, 307 可逆符号化部, 312 ループフィルタ, 313 適応右シフト部, 315 適応左シフト部, 320 レート制御部, 321 PCM符号化部, 331 NAL符号化部, 332 CU符号化部, 341 I_PCM_flag生成部, 342 PCM決定部, 351 デブロックフィルタ, 352 画素仕分け部, 353 フィルタ係数算出部, 354 フィルタリング部, 361 入力データ量算出部, 362 PCM判定部, 363 符号化制御部, 364 適応シフト制御部, 365 フィルタ制御部, 500 画像復号装置, 502 可逆復号部, 506 ループフィルタ, 507 適応右シフト部, 511 適応左シフト部, 516 PCM復号部, 531 NAL復号部, 532 CU復号部, 541 I_PCM_flagバッファ, 542 PCM制御部, 551 デブロックフィルタ, 552 画素仕分け部, 553 フィルタリング部

Claims (17)

  1.  画像データを符号化する際の符号化モードとして、前記画像データを符号化データとして出力する符号化モードである非圧縮モードを選択するかを、階層構造を有する符号化単位毎に設定する符号化モード設定部と、
     前記符号化モード設定部により設定されたモードに従って、前記画像データを前記符号化単位毎に符号化する符号化部と
     を備える画像処理装置。
  2.  前記符号化モード設定部により前記非圧縮モードが設定された符号化単位を対象として、符号化または復号する際のビット精度を拡張するシフト処理をスキップさせるように制御するシフト処理制御部と、
     前記シフト処理制御部により前記シフト処理を行うように制御される符号化単位を対象として、前記画像データを前記シフト処理するシフト処理部と
     をさらに備える請求項1に記載の画像処理装置。
  3.  前記符号化モード設定部により前記非圧縮モードが設定された符号化単位を対象として、ローカルデコードされた画像にフィルタリングを行うフィルタ処理をスキップさせるように制御するフィルタ処理制御部と、
     前記フィルタ処理制御部により前記フィルタ処理を行うように制御される符号化単位の画像データを用いて、前記フィルタ処理のフィルタ係数を算出するフィルタ係数算出部と、
     前記フィルタ係数算出部により算出された前記フィルタ係数を用いて、前記フィルタ処理の単位であるブロック毎に前記フィルタ処理を行うフィルタ処理部と
     をさらに備える請求項1に記載の画像処理装置。
  4.  前記フィルタ処理部は、処理対象であるカレントブロックに含まれる、前記フィルタ処理制御部により前記フィルタ処理が行われるように制御される画素のみを対象として、前記フィルタ処理を行う
     請求項3に記載の画像処理装置。
  5.  前記フィルタ処理が行われるかを示すフラグ情報であるフィルタ識別情報を、前記ブロック毎に生成するフィルタ識別情報生成部をさらに備える
     請求項3に記載の画像処理装置。
  6.  前記フィルタ処理部は、前記ローカルデコードされた画像を対象として、クラス分類処理を用いた適応的なフィルタ処理であるアダプティブループフィルタを行う
     請求項3に記載の画像処理装置。
  7.  前記符号化モード設定部は、符号化処理対象であるカレント符号化単位の前記画像データが符号化された符号化データの符号量が、前記カレント符号化単位の前記画像データのデータ量である入力データ量以下である場合、前記カレント符号化単位の符号化モードを、前記非圧縮モードに設定する
     請求項1に記載の画像処理装置。
  8.  前記入力データ量を算出する入力データ量算出部をさらに備え、
     前記符号化モード設定部は、前記カレント符号化単位を対象として、前記入力データ量算出部により算出された前記入力データ量と、前記符号量とを比較する
     請求項7に記載の画像処理装置。
  9.  前記符号化モード設定部により前記非圧縮モードが設定されたかを示す識別情報を、前記符号化単位毎に生成する識別情報生成部をさらに備える
     請求項1に記載の画像処理装置。
  10.  画像処理装置の画像処理方法であって、
     符号化モード設定部が、画像データを符号化する際の符号化モードとして、前記画像データを符号化データとして出力する符号化モードである非圧縮モードを選択するかを、階層構造を有する符号化単位毎に設定し、
     符号化部が、設定されたモードに従って、前記画像データを前記符号化単位毎に符号化する
     画像処理方法。
  11.  画像データを符号化する際の符号化モードとして、前記画像データを符号化データとして出力する符号化モードである非圧縮モードが選択されたかを、階層構造を有する符号化単位毎に判定する符号化モード判定部と、
     前記符号化モード判定部により判定されたモードに従って、前記符号化データを前記符号化単位毎に復号する復号部と
     を備える画像処理装置。
  12.  前記符号化モード判定部により前記非圧縮モードが選択されたと判定された符号化単位を対象として、符号化または復号する際のビット精度を拡張するシフト処理をスキップさせるように制御するシフト処理制御部と、
     前記シフト処理制御部により前記シフト処理を行うように制御される符号化単位を対象として、前記画像データを前記シフト処理するシフト処理部と
     をさらに備える請求項11に記載の画像処理装置。
  13.  前記符号化モード判定部により前記非圧縮モードが選択されたと判定された符号化単位を対象として、ローカルデコードされた画像にフィルタリングを行うフィルタ処理をスキップさせるように制御するフィルタ処理制御部と、
     前記フィルタ処理の単位であるブロック毎に、前記画像データに対して前記フィルタ処理を行うフィルタ処理部と
     をさらに備え、
     前記フィルタ処理部は、処理対象であるカレントブロックに含まれる、前記フィルタ処理制御部により前記フィルタ処理を行うように制御された画素のみを対象として、前記フィルタ処理を行う
     請求項11に記載の画像処理装置。
  14.  前記フィルタ処理部は、前記ローカルデコードされた画像を対象として、クラス分類処理を用いた適応的なフィルタ処理であるアダプティブループフィルタを行う
     請求項13に記載の画像処理装置。
  15.  前記フィルタ処理部は、前記フィルタ処理が行われたか否かを示すフィルタ識別情報により、処理対象であるカレントブロックの画像データに対して前記フィルタ処理が行われたことが示されている場合、前記フィルタ処理制御部により、前記カレントブロックに含まれる全ての画素を対象として前記フィルタ処理を行うように制御されているときのみ、前記フィルタ処理を行う
     請求項13に記載の画像処理装置。
  16.  前記符号化モード判定部は、前記符号化単位毎に前記非圧縮モードが選択されたかを示す識別情報に基づいて、前記非圧縮モードが選択されたかを判定する
     請求項11に記載の画像処理装置。
  17.  画像処理装置の画像処理方法であって、
     符号化モード判定部が、画像データを符号化する際の符号化モードとして、前記画像データを符号化データとして出力する符号化モードである非圧縮モードが選択されたかを、階層構造を有する符号化単位毎に判定し、
     復号部が、判定されたモードに従って、前記符号化データを前記符号化単位毎に復号する
     画像処理方法。
PCT/JP2012/050016 2011-01-11 2012-01-04 画像処理装置および方法 WO2012096201A1 (ja)

Priority Applications (28)

Application Number Priority Date Filing Date Title
BR122014030189-8A BR122014030189B1 (pt) 2011-01-11 2012-01-04 Aparelho e método de processamento de imagem
KR1020137017198A KR101882537B1 (ko) 2011-01-11 2012-01-04 화상 처리 장치 및 방법
KR1020197028303A KR102127604B1 (ko) 2011-01-11 2012-01-04 화상 처리 장치 및 방법
KR1020187002833A KR102116621B1 (ko) 2011-01-11 2012-01-04 화상 처리 장치 및 방법
US13/978,492 US9270987B2 (en) 2011-01-11 2012-01-04 Image processing apparatus and method
EP22168744.5A EP4064705A1 (en) 2011-01-11 2012-01-04 Image processing apparatus and method
MX2013007843A MX2013007843A (es) 2011-01-11 2012-01-04 Aparato y metodo para el procesamiento de imagenes.
KR1020187021023A KR101988814B1 (ko) 2011-01-11 2012-01-04 화상 처리 장치 및 방법
KR1020207020322A KR102228342B1 (ko) 2011-01-11 2012-01-04 화상 처리 장치 및 방법
AU2012206186A AU2012206186B9 (en) 2011-01-11 2012-01-04 Image processing device and method
CA2820180A CA2820180C (en) 2011-01-11 2012-01-04 Image processing apparatus and method
KR1020187035317A KR102028853B1 (ko) 2011-01-11 2012-01-04 화상 처리 장치 및 방법
KR1020187002831A KR102135696B1 (ko) 2011-01-11 2012-01-04 화상 처리 장치 및 방법
SG2013052105A SG191867A1 (en) 2011-01-11 2012-01-04 Image processing device and method
RU2013130743/07A RU2578164C2 (ru) 2011-01-11 2012-01-04 Устройство и способ обработки изображений
EP23164739.7A EP4221219A1 (en) 2011-01-11 2012-01-04 Image processing apparatus and method
KR1020187002830A KR101928044B1 (ko) 2011-01-11 2012-01-04 화상 처리 장치 및 방법
EP12733885.3A EP2665263B1 (en) 2011-01-11 2012-01-04 Image processing device and method
BR112013017308-4A BR112013017308B1 (pt) 2011-01-11 2012-01-04 Aparelho e método de processamento de imagem
CN201280004667.8A CN103299629B (zh) 2011-01-11 2012-01-04 图像处理设备和方法
KR1020187021024A KR101988815B1 (ko) 2011-01-11 2012-01-04 화상 처리 장치 및 방법
US13/965,534 US8737751B2 (en) 2011-01-11 2013-08-13 Image processing apparatus and method
US14/988,418 US9894387B2 (en) 2011-01-11 2016-01-05 Image processing apparatus and method
US14/988,365 US10027987B2 (en) 2011-01-11 2016-01-05 Image processing apparatus and method
US15/880,045 US10432976B2 (en) 2011-01-11 2018-01-25 Image processing apparatus and method
US16/581,575 US10979739B2 (en) 2011-01-11 2019-09-24 Image processing apparatus and method
US17/228,642 US20210306674A1 (en) 2011-01-11 2021-04-12 Image Processing Apparatus and Method
US18/227,591 US20230388554A1 (en) 2011-01-11 2023-07-28 Image processing apparatus and method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2011-003245 2011-01-11
JP2011003245A JP5850214B2 (ja) 2011-01-11 2011-01-11 画像処理装置および方法、プログラム、並びに記録媒体

Related Child Applications (4)

Application Number Title Priority Date Filing Date
US13/978,492 A-371-Of-International US9270987B2 (en) 2011-01-11 2012-01-04 Image processing apparatus and method
US13/965,534 Continuation US8737751B2 (en) 2011-01-11 2013-08-13 Image processing apparatus and method
US14/988,365 Continuation US10027987B2 (en) 2011-01-11 2016-01-05 Image processing apparatus and method
US14/988,418 Continuation US9894387B2 (en) 2011-01-11 2016-01-05 Image processing apparatus and method

Publications (1)

Publication Number Publication Date
WO2012096201A1 true WO2012096201A1 (ja) 2012-07-19

Family

ID=46507101

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/050016 WO2012096201A1 (ja) 2011-01-11 2012-01-04 画像処理装置および方法

Country Status (13)

Country Link
US (8) US9270987B2 (ja)
EP (3) EP4064705A1 (ja)
JP (1) JP5850214B2 (ja)
KR (9) KR101988815B1 (ja)
CN (5) CN103299629B (ja)
BR (2) BR122014030189B1 (ja)
CA (1) CA2820180C (ja)
CO (1) CO6721060A2 (ja)
MX (1) MX2013007843A (ja)
MY (3) MY191986A (ja)
RU (2) RU2578164C2 (ja)
SG (3) SG2014014526A (ja)
WO (1) WO2012096201A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013011659A1 (ja) * 2011-07-19 2013-01-24 パナソニック株式会社 フィルタ方法、動画像復号方法、動画像符号化方法、動画像復号装置、動画像符号化装置及び動画像符号化復号装置
US8660375B2 (en) 2011-02-22 2014-02-25 Panasonic Corporation Image coding method, image decoding method, image coding apparatus, image decoding apparatus, and image coding and decoding apparatus
US9729874B2 (en) 2011-02-22 2017-08-08 Tagivan Ii Llc Filtering method, moving picture coding apparatus, moving picture decoding apparatus, and moving picture coding and decoding apparatus

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI600318B (zh) * 2010-05-18 2017-09-21 Sony Corp Image processing apparatus and image processing method
JP5850214B2 (ja) * 2011-01-11 2016-02-03 ソニー株式会社 画像処理装置および方法、プログラム、並びに記録媒体
JP6048941B2 (ja) * 2012-01-27 2016-12-27 サン パテント トラスト 画像符号化方法、画像復号方法、画像符号化装置及び画像復号装置
KR101643839B1 (ko) * 2012-06-26 2016-07-28 닛본 덴끼 가부시끼가이샤 비디오 인코딩 장치, 비디오 디코딩 장치, 비디오 인코딩 방법, 비디오 디코딩 방법 및 프로그램
WO2014106878A1 (ja) * 2013-01-07 2014-07-10 日本電気株式会社 映像符号化装置、映像復号装置、映像符号化方法、映像復号方法およびプログラム
US9830369B1 (en) * 2013-05-14 2017-11-28 Jsonar, Inc. Processor for database analytics processing
JP6157344B2 (ja) * 2013-12-26 2017-07-05 アルパイン株式会社 電子装置および無線機器確認方法
US9736481B2 (en) 2014-03-14 2017-08-15 Qualcomm Incorporated Quantization parameters for color-space conversion coding
JP6824034B2 (ja) 2014-03-31 2021-02-03 ソニー株式会社 画像復号装置および方法
US9451296B2 (en) 2014-08-19 2016-09-20 At&T Intellectual Property I, L.P. Extracting data from advertisement files for ad insertion
FR3033116B1 (fr) * 2015-02-20 2017-03-24 Stmicroelectronics (Grenoble 2) Sas Procede de selection d’une solution de placement des pixels d’une image en fonction du rendu visuel
WO2016151815A1 (ja) * 2015-03-25 2016-09-29 株式会社シノジャパン シンクライアント方式によるデバイス制御方法
CN108028924B (zh) * 2015-09-08 2020-12-01 Lg 电子株式会社 用于编码/解码图像的方法及其装置
US10225561B2 (en) * 2015-10-08 2019-03-05 Mediatek Inc. Method and apparatus for syntax signaling in image and video compression
EP3471414A4 (en) * 2016-05-02 2021-04-21 Sony Corporation ENCRYPTION DEVICE AND ENCRYPTION METHOD, AND DECCRYPTION DEVICE AND DECryption METHOD
TW201817232A (zh) * 2016-08-11 2018-05-01 聯詠科技股份有限公司 影像處理方法及相關裝置
CN107835429B (zh) * 2017-10-31 2020-10-13 北京信息科技大学 一种高光谱图像的压缩方法及系统
WO2020103932A1 (en) 2018-11-22 2020-05-28 Beijing Bytedance Network Technology Co., Ltd. Using reference lines for intra mode video processing
CN111009017B (zh) * 2019-10-18 2021-08-17 珠海格力电器股份有限公司 图片压缩方法、装置、存储介质、计算机设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3992303B2 (ja) 1995-06-22 2007-10-17 ソニー株式会社 信号圧縮装置と信号伸長装置および信号圧縮方法と信号伸長方法
JP4240283B2 (ja) 2002-10-10 2009-03-18 ソニー株式会社 復号装置及び復号方法
WO2012008130A1 (ja) * 2010-07-13 2012-01-19 日本電気株式会社 映像符号化装置、映像復号装置、映像符号化方法、映像復号方法及びプログラム

Family Cites Families (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3992303A (en) 1974-05-03 1976-11-16 Van Straaten Chemical Company Metal cold forming process and lubricant composition therefor
US4240283A (en) 1978-11-09 1980-12-23 Mitsuboshi Belting Ltd. Apparatus for testing power transmission belt
US5335116A (en) * 1989-05-09 1994-08-02 Mitsubishi Denki Kabushiki Kaisha Method and apparatus for recording analog video signal in compressed digital format
JP3265429B2 (ja) * 1990-09-14 2002-03-11 キヤノン株式会社 カラーファクシミリ装置
US5485293A (en) * 1993-09-29 1996-01-16 Honeywell Inc. Liquid crystal display including color triads with split pixels
JP3442491B2 (ja) * 1994-08-19 2003-09-02 株式会社リコー 画像読取装置
JPH10234686A (ja) * 1997-02-28 1998-09-08 Seiko Epson Corp 計測結果表示装置
US6453071B2 (en) 1997-04-04 2002-09-17 Canon Kabushiki Kaisha Data communication apparatus, method and system and programs for data communication process stored in computer readable storage medium
AU717480B2 (en) * 1998-08-01 2000-03-30 Korea Advanced Institute Of Science And Technology Loop-filtering method for image data and apparatus therefor
FR2799323B1 (fr) * 1999-10-04 2002-04-19 Mitsubishi Electric France Procede de generation d'un mode compresse sur un canal composite comportant au moins deux canaux de transport et dispositif pour la mise en oeuvre de ce procede
KR100860661B1 (ko) * 1999-12-15 2008-09-26 산요덴키가부시키가이샤 화상 재생 방법과 화상 처리 방법, 및 이들 방법을 이용가능한 화상 재생 장치, 화상 처리 장치, 텔레비전 수상기
CN1848941A (zh) * 1999-12-15 2006-10-18 三洋电机株式会社 图像再现、处理装置和方法以及具有该装置的电视接收机
US6671413B1 (en) * 2000-01-24 2003-12-30 William A. Pearlman Embedded and efficient low-complexity hierarchical image coder and corresponding methods therefor
KR101129655B1 (ko) * 2002-09-17 2012-03-28 블라디미르 세페르코빅 압축비가 높고 최소의 자원을 필요로 하는 고속 코덱
JP4208533B2 (ja) * 2002-09-19 2009-01-14 キヤノン株式会社 画像処理装置及び画像処理方法
JP4082194B2 (ja) * 2002-12-03 2008-04-30 セイコーエプソン株式会社 画像処理方法および画像処理装置ならびに画像処理プログラム
US7428342B2 (en) * 2004-12-17 2008-09-23 Microsoft Corporation Reversible overlap operator for efficient lossless data compression
GB0428160D0 (en) * 2004-12-22 2005-01-26 British Telecomm Variable bit rate processing
DE102005036298B3 (de) * 2005-08-02 2006-12-14 Siemens Ag Verfahren und Kommunikationssystem zur Auswahl eines Übertragungsmodus' für eine Übermittlung von Nutzdaten
TW200746655A (en) * 2005-11-18 2007-12-16 Sony Corp Encoding device and method, decoding device and method, and transmission system
JP2007166039A (ja) 2005-12-09 2007-06-28 Matsushita Electric Ind Co Ltd 画像符号化装置
JP4643453B2 (ja) * 2006-01-10 2011-03-02 株式会社東芝 情報処理装置及び情報処理装置の動画像復号方法
JP4987322B2 (ja) 2006-02-28 2012-07-25 株式会社東芝 動画像復号装置及び動画像復号方法
JP4384130B2 (ja) * 2006-03-28 2009-12-16 株式会社東芝 動画像復号方法及び装置
JP5017555B2 (ja) * 2006-04-10 2012-09-05 株式会社メガチップス 画像符号化装置及び画像復号化装置
JP4555257B2 (ja) 2006-06-06 2010-09-29 パナソニック株式会社 画像符号化装置
JP4893957B2 (ja) * 2006-08-07 2012-03-07 富士ゼロックス株式会社 符号化装置、復号化装置、符号化方法及びプログラム
CN101150721B (zh) * 2006-09-21 2010-10-13 凌阳科技股份有限公司 具有适应性位元平面编码模式的编码方法
EP2127395B1 (en) * 2007-01-10 2016-08-17 Thomson Licensing Video encoding method and video decoding method for enabling bit depth scalability
CN101569170B (zh) * 2007-05-17 2011-11-16 索尼株式会社 编码设备和编码方法以及解码设备和解码方法
WO2008152573A2 (en) 2007-06-12 2008-12-18 Nokia Corporation Joint coding of multiple transform blocks with reduced number of coefficients
US8488668B2 (en) * 2007-06-15 2013-07-16 Qualcomm Incorporated Adaptive coefficient scanning for video coding
US9271008B2 (en) * 2007-07-17 2016-02-23 Nippon Telegraph And Telephone Corporation Video encoding apparatus and method, video encoding program, and storage medium which stores the program
CN101933331B (zh) * 2007-09-06 2014-04-09 日本电气株式会社 视频编码装置、视频编码方法、视频解码方法
US8165210B2 (en) 2007-12-17 2012-04-24 Vixs Systems, Inc. Video codec with shared interpolation filter and method for use therewith
KR100952340B1 (ko) * 2008-01-24 2010-04-09 에스케이 텔레콤주식회사 시공간적 복잡도를 이용한 부호화 모드 결정 방법 및 장치
JP5593596B2 (ja) * 2008-02-04 2014-09-24 ソニー株式会社 映像信号送信装置および映像信号送信方法
US8681861B2 (en) 2008-05-01 2014-03-25 Nvidia Corporation Multistandard hardware video encoder
US20090316788A1 (en) * 2008-06-23 2009-12-24 Thomson Licensing Video coding method with non-compressed mode and device implementing the method
KR101517768B1 (ko) * 2008-07-02 2015-05-06 삼성전자주식회사 영상의 부호화 방법 및 장치, 그 복호화 방법 및 장치
WO2010022002A1 (en) * 2008-08-19 2010-02-25 Marvell World Trade Ltd Systems and methods for perceptually lossless video compression
US8634456B2 (en) 2008-10-03 2014-01-21 Qualcomm Incorporated Video coding with large macroblocks
JP2012504924A (ja) * 2008-10-06 2012-02-23 エルジー エレクトロニクス インコーポレイティド ビデオ信号の処理方法及び装置
JP2010193398A (ja) 2009-02-20 2010-09-02 Canon Inc 画像符号化装置及び画像符号化方法
JP5158003B2 (ja) * 2009-04-14 2013-03-06 ソニー株式会社 画像符号化装置と画像符号化方法およびコンピュータ・プログラム
CN101577110B (zh) * 2009-05-31 2012-04-25 腾讯科技(深圳)有限公司 视频播放方法及视频播放器
KR20110061468A (ko) * 2009-12-01 2011-06-09 (주)휴맥스 고해상도 영상의 부호화/복호화 방법 및 이를 수행하는 장치
CN101895757A (zh) * 2010-07-15 2010-11-24 北京大学 预测残差块的重排序、逆重排序方法及系统
EP2596639B1 (en) * 2010-07-21 2016-06-22 Telefonaktiebolaget LM Ericsson (publ) Picture coding and decoding
EP2645714B1 (en) * 2010-11-26 2016-06-29 Nec Corporation Video decoding device, video decoding method, and program
JP5741076B2 (ja) * 2010-12-09 2015-07-01 ソニー株式会社 画像処理装置及び画像処理方法
JP5850214B2 (ja) * 2011-01-11 2016-02-03 ソニー株式会社 画像処理装置および方法、プログラム、並びに記録媒体
NO335667B1 (no) * 2011-06-29 2015-01-19 Cisco Systems Int Sarl Metode for videokomprimering
AU2012200345B2 (en) * 2012-01-20 2014-05-01 Canon Kabushiki Kaisha Method, apparatus and system for encoding and decoding the significance map residual coefficients of a transform unit
WO2013118485A1 (ja) * 2012-02-08 2013-08-15 パナソニック株式会社 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置および画像符号化復号装置
US9693060B2 (en) * 2012-11-16 2017-06-27 Qualcomm Incorporated Device and method for scalable coding of video information
EP2843951B1 (en) * 2013-04-05 2019-01-02 Saturn Licensing LLC Image processing device and image processing method
JP2015192381A (ja) * 2014-03-28 2015-11-02 ソニー株式会社 画像処理装置及び画像処理方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3992303B2 (ja) 1995-06-22 2007-10-17 ソニー株式会社 信号圧縮装置と信号伸長装置および信号圧縮方法と信号伸長方法
JP4240283B2 (ja) 2002-10-10 2009-03-18 ソニー株式会社 復号装置及び復号方法
WO2012008130A1 (ja) * 2010-07-13 2012-01-19 日本電気株式会社 映像符号化装置、映像復号装置、映像符号化方法、映像復号方法及びプログラム

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
"Test Model under Consideration", JCTVC-B205, JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTCL/SC29/WG112ND MEETING: GENEVA, 21 July 2010 (2010-07-21)
CHONO K. ET AL.: "Joint Collaborative Team on Video Coding (JCT-VC)of ITU-T SG16 WP3 and ISO/IEC JTC1/ SC29/WG11 JCTVC-D044-revl", PULSE CODE MODULATION MODE FOR HEVC, 21 January 2011 (2011-01-21), pages 1 - 9, XP030047361 *
CHONO K. ET AL.: "Proposal of enhanced PCM coding in HEVC", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC)OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11 JCTVC-E192-R2, 21 March 2011 (2011-03-21), pages 1 - 12, XP030048277 *
SULLIVAN,G.: "Seven Steps Toward a More Robust Codec Design", JOINT VIDEO TEAM (JVT) OF ISO/IEC MPEG & ITU-T VCEG(ISO/IEC JTC1/SC29/WG11 AND ITU-T SG16 Q.6) JVT-C117, 6 May 2002 (2002-05-06), pages 1 - 4, XP030005228 *
TAKESHI CHUJOH; GOKI YASUDA; NAOFUMI WADA; TAKASHI WATANABE; TOMOO YAMAKAGE: "Block-based Adaptive Loop Filter", VCEG-AI18, ITU - TELECOMMUNICATIONS STANDARDIZATION SECTOR STUDY GROUP 16 QUESTION 6 VIDEO CODING EXPERTS GROUP (VCEG) 35TH MEETING: BERLIN, 16 July 2008 (2008-07-16)
TAKESHI CHUJOH; REIKO NODA: "Internal bit depth increase except frame memory", VCEG-AF07, ITU - TELECOMMUNICATIONS STANDARDIZATION SECTOR STUDY GROUP 16 QUESTION 6 VIDEO CODING EXPERTS GROUP (VCEG) 32ND MEETING: SAN JOSE, 20 April 2007 (2007-04-20)

Cited By (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10511844B2 (en) 2011-02-22 2019-12-17 Tagivan Ii Llc Filtering method, moving picture coding apparatus, moving picture decoding apparatus, and moving picture coding and decoding apparatus
US10798391B2 (en) 2011-02-22 2020-10-06 Tagivan Ii Llc Filtering method, moving picture coding apparatus, moving picture decoding apparatus, and moving picture coding and decoding apparatus
US9826230B2 (en) 2011-02-22 2017-11-21 Tagivan Ii Llc Encoding method and encoding apparatus
US10602159B2 (en) 2011-02-22 2020-03-24 Sun Patent Trust Image coding method, image decoding method, image coding apparatus, image decoding apparatus, and image coding and decoding apparatus
US10237562B2 (en) 2011-02-22 2019-03-19 Sun Patent Trust Image coding method, image decoding method, image coding apparatus, image decoding apparatus, and image coding and decoding apparatus
US10015498B2 (en) 2011-02-22 2018-07-03 Tagivan Ii Llc Filtering method, moving picture coding apparatus, moving picture decoding apparatus, and moving picture coding and decoding apparatus
US9961352B2 (en) 2011-02-22 2018-05-01 Sun Patent Trust Image coding method, image decoding method, image coding apparatus, image decoding apparatus, and image coding and decoding apparatus
US8855435B2 (en) 2011-02-22 2014-10-07 Panasonic Intellectual Property Corporation Of America Image coding method, image decoding method, image coding apparatus, image decoding apparatus, and image coding and decoding apparatus
US8917946B2 (en) 2011-02-22 2014-12-23 Panasonic Intellectual Property Corporation Of America Image coding method, image decoding method, image coding apparatus, image decoding apparatus, and image coding and decoding apparatus
US9489749B2 (en) 2011-02-22 2016-11-08 Sun Patent Trust Image coding method, image decoding method, image coding apparatus, image decoding apparatus, and image coding and decoding apparatus
US8660375B2 (en) 2011-02-22 2014-02-25 Panasonic Corporation Image coding method, image decoding method, image coding apparatus, image decoding apparatus, and image coding and decoding apparatus
US9729874B2 (en) 2011-02-22 2017-08-08 Tagivan Ii Llc Filtering method, moving picture coding apparatus, moving picture decoding apparatus, and moving picture coding and decoding apparatus
KR102128999B1 (ko) 2011-07-19 2020-07-02 타지반 투 엘엘씨 필터 방법, 복호 방법, 및 부호화 방법
JP2014042325A (ja) * 2011-07-19 2014-03-06 Panasonic Corp 符号化復号装置
JP2017098953A (ja) * 2011-07-19 2017-06-01 タギバン ツー エルエルシー フィルタ方法及び画像処理システム
US9930367B2 (en) 2011-07-19 2018-03-27 Tagivan Ii Llc Filtering method for performing deblocking filtering on a boundary between an intra pulse code modulation block and a non-intra pulse code modulation block which are adjacent to each other in an image
JP2014030258A (ja) * 2011-07-19 2014-02-13 Panasonic Corp 符号化方法及び符号化装置
US8787467B2 (en) 2011-07-19 2014-07-22 Panasonic Corporation Filtering method for performing deblocking filtering on a boundary between an intra pulse code modulation block and a non-intra pulse code modulation block which are adjacent to each other in an image
WO2013011659A1 (ja) * 2011-07-19 2013-01-24 パナソニック株式会社 フィルタ方法、動画像復号方法、動画像符号化方法、動画像復号装置、動画像符号化装置及び動画像符号化復号装置
US9774888B2 (en) 2011-07-19 2017-09-26 Tagivan Ii Llc Filtering method for performing deblocking filtering on a boundary between an intra pulse code modulation block and a non-intra pulse code modulation block which are adjacent to each other in an image
US9544585B2 (en) 2011-07-19 2017-01-10 Tagivan Ii Llc Filtering method for performing deblocking filtering on a boundary between an intra pulse code modulation block and a non-intra pulse code modulation block which are adjacent to each other in an image
US9667968B2 (en) 2011-07-19 2017-05-30 Tagivan Ii Llc Filtering method for performing deblocking filtering on a boundary between an intra pulse code modulation block and a non-intra pulse code modulation block which are adjacent to each other in an image
KR20200004465A (ko) * 2011-07-19 2020-01-13 타지반 투 엘엘씨 필터 방법, 복호 방법, 및 부호화 방법
KR102064408B1 (ko) 2011-07-19 2020-01-09 타지반 투 엘엘씨 필터 방법, 복호 방법, 및 부호화 방법
KR20200004464A (ko) * 2011-07-19 2020-01-13 타지반 투 엘엘씨 필터 방법, 복호 방법, 및 부호화 방법
KR20200004916A (ko) * 2011-07-19 2020-01-14 타지반 투 엘엘씨 필터 방법, 복호 방법, 및 부호화 방법
JP2014042326A (ja) * 2011-07-19 2014-03-06 Panasonic Corp 復号方法及び復号装置
KR102129000B1 (ko) 2011-07-19 2020-07-02 타지반 투 엘엘씨 필터 방법, 복호 방법, 및 부호화 방법
KR102023210B1 (ko) 2011-07-19 2019-09-19 타지반 투 엘엘씨 필터 방법, 복호 방법, 및 부호화 방법
KR102129001B1 (ko) 2011-07-19 2020-07-02 타지반 투 엘엘씨 필터 방법, 복호 방법, 및 부호화 방법
KR20140043734A (ko) * 2011-07-19 2014-04-10 파나소닉 주식회사 필터 방법, 복호 방법, 및 부호화 방법

Also Published As

Publication number Publication date
US10027987B2 (en) 2018-07-17
US20230388554A1 (en) 2023-11-30
BR122014030189A2 (pt) 2019-08-20
SG191867A1 (en) 2013-08-30
CN110278441A (zh) 2019-09-24
US10432976B2 (en) 2019-10-01
KR20130139323A (ko) 2013-12-20
KR101988815B1 (ko) 2019-06-12
RU2013130743A (ru) 2015-01-10
AU2012206186A1 (en) 2013-06-27
KR101988814B1 (ko) 2019-06-12
KR102028853B1 (ko) 2019-10-04
US20210306674A1 (en) 2021-09-30
CN103299629A (zh) 2013-09-11
KR101882537B1 (ko) 2018-07-26
US9270987B2 (en) 2016-02-23
CA2820180A1 (en) 2012-07-19
BR112013017308A2 (pt) 2016-10-04
MY163985A (en) 2017-11-15
KR20180015273A (ko) 2018-02-12
US8737751B2 (en) 2014-05-27
RU2607239C2 (ru) 2017-01-10
CN107071432A (zh) 2017-08-18
KR20180089529A (ko) 2018-08-08
JP2012147191A (ja) 2012-08-02
SG2014014526A (en) 2014-07-30
US20160134897A1 (en) 2016-05-12
KR102135696B1 (ko) 2020-07-21
KR101928044B1 (ko) 2018-12-12
BR122014030189B1 (pt) 2022-07-19
MX2013007843A (es) 2013-09-06
US10979739B2 (en) 2021-04-13
EP4221219A1 (en) 2023-08-02
KR102116621B1 (ko) 2020-05-29
US20180152734A1 (en) 2018-05-31
AU2012206186A9 (en) 2015-11-12
KR20200091463A (ko) 2020-07-30
KR20190114012A (ko) 2019-10-08
US20130329783A1 (en) 2013-12-12
RU2014146734A (ru) 2016-06-10
EP2665263A4 (en) 2015-07-29
KR20180089528A (ko) 2018-08-08
BR112013017308B1 (pt) 2022-05-10
US20160134898A1 (en) 2016-05-12
EP2665263A1 (en) 2013-11-20
CO6721060A2 (es) 2013-07-31
AU2012206186B2 (en) 2015-11-19
US20130315493A1 (en) 2013-11-28
EP2665263B1 (en) 2022-04-20
JP5850214B2 (ja) 2016-02-03
CA2820180C (en) 2018-07-17
MY191986A (en) 2022-07-21
CN110278441B (zh) 2021-10-08
EP4064705A1 (en) 2022-09-28
CN106851291B (zh) 2019-11-19
RU2578164C2 (ru) 2016-03-20
KR102228342B1 (ko) 2021-03-16
CN103299629B (zh) 2016-10-19
KR20180132992A (ko) 2018-12-12
KR20180016614A (ko) 2018-02-14
KR20180015274A (ko) 2018-02-12
US20200021854A1 (en) 2020-01-16
KR102127604B1 (ko) 2020-06-29
CN106851291A (zh) 2017-06-13
SG10201605708XA (en) 2016-08-30
CN107071432B (zh) 2021-01-08
US9894387B2 (en) 2018-02-13
MY191951A (en) 2022-07-20
CN107071431A (zh) 2017-08-18

Similar Documents

Publication Publication Date Title
JP5850214B2 (ja) 画像処理装置および方法、プログラム、並びに記録媒体
JP2012085211A (ja) 画像処理装置および方法、並びにプログラム
WO2012093611A1 (ja) 画像処理装置および方法
JP6332502B2 (ja) 画像処理装置および方法、プログラム、並びに記録媒体
AU2019210569B2 (en) Image processing apparatus and method
JP6299901B2 (ja) 画像処理装置および方法、プログラム、並びに記録媒体
JP6115619B2 (ja) 画像処理装置および方法、プログラム、並びに記録媒体
JP6115620B2 (ja) 画像処理装置および方法、プログラム、並びに記録媒体
JP5850272B2 (ja) 画像処理装置および方法、プログラム、並びに記録媒体
AU2015201422B2 (en) Image processing apparatus and method

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2820180

Country of ref document: CA

ENP Entry into the national phase

Ref document number: 2012206186

Country of ref document: AU

Date of ref document: 20120104

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 20137017198

Country of ref document: KR

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 2013130743

Country of ref document: RU

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 2012733885

Country of ref document: EP

Ref document number: MX/A/2013/007843

Country of ref document: MX

WWE Wipo information: entry into national phase

Ref document number: 13159489

Country of ref document: CO

Ref document number: 14140755

Country of ref document: CO

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 1301003763

Country of ref document: TH

WWE Wipo information: entry into national phase

Ref document number: 13978492

Country of ref document: US

REG Reference to national code

Ref country code: BR

Ref legal event code: B01A

Ref document number: 112013017308

Country of ref document: BR

ENP Entry into the national phase

Ref document number: 112013017308

Country of ref document: BR

Kind code of ref document: A2

Effective date: 20130704