WO2010150486A1 - 画像符号化方法及び画像符号化装置 - Google Patents

画像符号化方法及び画像符号化装置 Download PDF

Info

Publication number
WO2010150486A1
WO2010150486A1 PCT/JP2010/003985 JP2010003985W WO2010150486A1 WO 2010150486 A1 WO2010150486 A1 WO 2010150486A1 JP 2010003985 W JP2010003985 W JP 2010003985W WO 2010150486 A1 WO2010150486 A1 WO 2010150486A1
Authority
WO
WIPO (PCT)
Prior art keywords
encoding
target block
block
condition
value
Prior art date
Application number
PCT/JP2010/003985
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
Application filed by パナソニック株式会社 filed Critical パナソニック株式会社
Priority to US13/059,804 priority Critical patent/US8902985B2/en
Priority to CN201080002356.9A priority patent/CN102124741B/zh
Priority to JP2011519558A priority patent/JP5588438B2/ja
Publication of WO2010150486A1 publication Critical patent/WO2010150486A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/24Systems for the transmission of television signals using pulse code modulation
    • H04N7/52Systems for transmission of a pulse code modulated video signal with one or more other pulse code modulated signals, e.g. an audio signal or a synchronizing signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Definitions

  • the present invention relates to an image encoding method and an image encoding apparatus, and more particularly to an image encoding method and an image encoding apparatus that determine an encoding condition for each block and encode a target block according to the determined encoding condition.
  • Non-Patent Document 1 an uncompressed original picture is divided into a plurality of M ⁇ N coding units.
  • M represents the number of samples in the width
  • N represents the number of samples in the height.
  • the values of M and N are 16 for example.
  • the obtained encoding unit is encoded sequentially from the next to the next.
  • the encoding unit is usually called a “macroblock”.
  • “macroblock” is hereinafter used as a term indicating an M ⁇ N coding unit in the image / video coding algorithm.
  • Each macroblock is further divided into a plurality of K ⁇ L sub-macroblocks.
  • K represents the number of samples in the width
  • L represents the number of samples in the height.
  • the values of K and L are, for example, 8 respectively.
  • the encoding process is performed in order from the next to the next, but may be performed independently.
  • sub-macroblock division for encoding in units of sub-macroblocks include a transform block size, an intra prediction block size, and a motion compensation block size.
  • it may be divided into sub-macroblocks of different sizes and differently encoded.
  • the above-described conventional technique has a problem that an increase in calculation amount and deterioration in image quality cannot be sufficiently suppressed.
  • the encoding cost is composed of a rate component (a bit amount necessary for storing the encoding information) and a distortion component (a difference amount between the reconstructed sample and the uncompressed original image sample).
  • this method has a problem that encoding artifacts such as ringing artifacts and blocking artifacts are not usually reflected in the encoding cost. Therefore, the best image quality may not be obtained using the selected sub-macroblock coding tool.
  • Ringing artifacts and blocking artifacts are artifacts that stand out in compressed / moving images. This is particularly noticeable in an image / video coding algorithm such as the ISO / IEC 14496-2 part 10 international standard that achieves a high compression rate.
  • a conventional technique for selecting a sub-macroblock coding tool to perform using an exhaustive selection process based on the coding cost based on the relationship between coding rate and distortion is not suitable for the human visual system.
  • the encoding cost is calculated without considering or predicting the encoding effect. Therefore, the determined sub-macroblock coding tool does not efficiently reduce ringing artifacts or blocking artifacts.
  • the exhaustive selection process in the prior art requires a large amount of operations in the encoder.
  • an object of the present invention is to provide an image encoding method and an image encoding apparatus that can suppress deterioration in image quality.
  • an image encoding method is an image encoding method for encoding an original image, the original image being divided into a plurality of blocks, A coding condition of a target block that is one of the blocks is determined, the target block is coded according to the determined coding condition, and in determining the coding condition of the target block, a value indicating the complexity of the target block.
  • the encoding condition of the target block is determined based on the spatial activity value, and the determination of the encoding condition based on the spatial activity value is a value indicating the complexity of at least a partial area of the target block.
  • a first spatial activity value is calculated, the calculated first spatial activity value is compared with a predetermined first threshold value, and the first spatial activity value is If it is smaller than one threshold, a first encoding condition indicating that the target block is encoded for each sub-block of the first division size is determined as an encoding condition of the target block, and the first spatial activity value is When it is equal to or greater than the first threshold, the second encoding condition indicating that the target block is encoded for each sub-block of the second division size larger than the first division size is the encoding condition of the target block. Determine as.
  • the encoding condition (the encoding condition for subdivision) is determined so that the target block is encoded for each sub-block having a small division size.
  • the encoding condition for subdivision is determined so that the target block is encoded for each sub-block having a small division size.
  • a complex image even if distortion occurs, it is not noticeable. Therefore, if the target block is a complex image, encoding is performed so that the target block is encoded for each sub-block having a large division size.
  • a plurality of small block clusters each including at least a partial region of the target block are formed based on an extended block including at least the target block, and the plurality of small blocks are formed.
  • a small block cluster space activity value that is a value indicating the complexity of each block cluster is calculated, and a minimum value among the calculated small block cluster space activity values may be calculated as the first spatial activity value. Good.
  • the spatial activity of a plurality of regions in the target block is calculated, and the calculated minimum value of the plurality of spatial activity values is compared with the threshold value, that is, the flattest region among the plurality of regions in the target block is It can be determined whether the distortion is conspicuous. Since the subdivision encoding condition is selected when the distortion is conspicuous, deterioration in image quality can be suppressed.
  • the target block is further divided into a plurality of large blocks, and a large block space activity value that is a value indicating the complexity of each of the plurality of large blocks is calculated and calculated.
  • a maximum value among a plurality of large block space activity values is calculated as a second space activity value, the calculated second space activity value is compared with a predetermined second threshold value, and the second space activity value is calculated. If the second threshold is less than or equal to the second threshold, the second encoding condition is determined as the encoding condition of the target block, and if the second spatial activity value is greater than the second threshold, the first spatial activity value of the first spatial activity value
  • the encoding condition of the target block may be determined by performing the calculation and the comparison.
  • the coding condition for large division is determined, so that the coding efficiency can be improved.
  • extension block may be larger than the target block.
  • the target block not only the target block but also the image information around the target block is used to determine whether or not the target block includes a flat area, thereby suppressing image quality degradation and improving encoding efficiency. And can be achieved appropriately.
  • the value indicating the complexity of the target block may be a value indicating a change in sample values of a plurality of samples included in the target block.
  • the encoding condition of the target block is further determined based on the motion of the target block.
  • the motion vector of the target block is determined.
  • the second encoding condition is set to the target block. If the absolute value of the motion vector is less than or equal to the third threshold value, the encoding condition of the target block may be determined according to the determination result of the encoding condition based on the spatial activity value. Good.
  • a predicted block of the target block is generated by performing motion compensation using the calculated motion vector, and the target block, the predicted block, and the motion
  • a cost value indicating the coding efficiency of the target block is calculated using a vector, and when the absolute value of the motion vector is equal to or less than the third threshold value, the cost value and a predetermined fourth threshold value are When the cost value is smaller than the fourth threshold, the second coding condition is determined as the coding condition of the target block, and when the cost value is equal to or larger than the fourth threshold, the spatial activity
  • the encoding condition of the target block may be determined according to the determination result of the encoding condition based on the value.
  • the coding efficiency can be further increased by determining the coding conditions for the large division.
  • the cost value may be calculated based on a sum of absolute differences between the target block and the prediction block.
  • the cost value can be easily calculated by the calculation method using the sample value.
  • the sub-block of the first division size or the second division size may be a processing unit in which at least one process of intra prediction, motion compensation, and frequency conversion is executed.
  • An image encoding method is an image encoding method for encoding an original image, wherein the original image is divided into a plurality of blocks and the target is one of the plurality of blocks.
  • the encoding condition of the block is determined, the target block is encoded according to the determined encoding condition, and in determining the encoding condition of the target block, the motion vector of the target block is calculated, and the absolute value of the calculated motion vector is determined.
  • the second coding condition indicating that encoded for each sub-block of the split size may be determined as the encoding condition for the current block.
  • the present invention can be realized not only as an image encoding method but also as an image encoding device including a processing unit that realizes processing included in the image encoding method. Moreover, you may implement
  • a communication network such as the Internet.
  • the system LSI is an ultra-multifunctional LSI manufactured by integrating a plurality of components on a single chip, and specifically includes a microprocessor, ROM, RAM (Random Access Memory), and the like.
  • Computer system is an ultra-multifunctional LSI manufactured by integrating a plurality of components on a single chip, and specifically includes a microprocessor, ROM, RAM (Random Access Memory), and the like.
  • an increase in the amount of computation can be suppressed, and deterioration in image quality can be sufficiently suppressed.
  • FIG. 1 is a block diagram showing an example of a configuration of an image encoding device according to Embodiment 1 of the present invention.
  • FIG. 2 is a block diagram showing an example of the configuration of the coding condition determination unit according to Embodiment 1 of the present invention.
  • FIG. 3 is a schematic diagram for explaining the effect of reducing ringing artifacts by the image coding apparatus according to Embodiment 1 of the present invention.
  • FIG. 4 is a schematic diagram for explaining possible positions of the encoding tool indicator signal in the compressed video bitstream according to Embodiment 1 of the present invention.
  • FIG. 5 is a flowchart showing an example of the operation of the image coding apparatus according to Embodiment 1 of the present invention.
  • FIG. 1 is a block diagram showing an example of a configuration of an image encoding device according to Embodiment 1 of the present invention.
  • FIG. 2 is a block diagram showing an example of the configuration of the coding condition determination unit according to Embodiment 1 of the
  • FIG. 6 is a flowchart showing an example of the operation of the coding condition determination unit according to Embodiment 1 of the present invention.
  • FIG. 7 is a block diagram showing an example of the configuration of the image coding apparatus according to Embodiment 2 of the present invention.
  • FIG. 8 is a schematic diagram showing an example of forming a picture sample according to Embodiment 2 of the present invention.
  • FIG. 9 is a block diagram showing an example of the configuration of the spatial activity condition evaluation unit of the image coding apparatus according to Embodiment 2 of the present invention.
  • FIG. 10 is a block diagram showing an example of the configuration of the motion activity condition evaluation unit of the image coding apparatus according to Embodiment 2 of the present invention.
  • FIG. 10 is a block diagram showing an example of the configuration of the motion activity condition evaluation unit of the image coding apparatus according to Embodiment 2 of the present invention.
  • FIG. 11 is a flowchart showing an example of the operation of the image coding apparatus according to Embodiment 2 of the present invention.
  • FIG. 12 is a flowchart showing an example of the operation of the spatial activity condition evaluation unit according to Embodiment 2 of the present invention.
  • FIG. 13 is a flowchart showing a detailed example of the space activity condition evaluation unit according to Embodiment 2 of the present invention.
  • FIG. 14 is a flowchart showing an example of the operation of the motion activity condition evaluation unit according to Embodiment 2 of the present invention.
  • FIG. 15 is a flowchart showing an example of the operation of the coding condition determination unit according to the modification of the embodiment of the present invention.
  • FIG. 12 is a flowchart showing an example of the operation of the spatial activity condition evaluation unit according to Embodiment 2 of the present invention.
  • FIG. 13 is a flowchart showing a detailed example of the space activity condition evaluation unit according to Embodiment 2 of the present invention.
  • FIG. 14 is
  • FIG. 16 is a schematic diagram illustrating an example of the overall configuration of a content supply system that implements a content distribution service.
  • FIG. 17 is a diagram illustrating an appearance of a mobile phone.
  • FIG. 18 is a block diagram illustrating a configuration example of a mobile phone.
  • FIG. 19 is a schematic diagram illustrating an example of the overall configuration of a digital broadcasting system.
  • FIG. 20 is a block diagram illustrating a configuration example of a television.
  • FIG. 21 is a block diagram illustrating a configuration example of an information reproducing / recording unit that reads and writes information from and on a recording medium that is an optical disk.
  • FIG. 22 is a diagram illustrating a structure example of a recording medium that is an optical disk.
  • FIG. 23 is a block diagram illustrating a configuration example of an integrated circuit that realizes the image encoding method and the image decoding method according to each embodiment.
  • the image encoding method according to Embodiment 1 of the present invention is an encoding method for encoding an original image, which divides the original image into a plurality of blocks, and encodes a target block that is one of the plurality of blocks. Encoding conditions are determined, and the target block is encoded according to the determined encoding conditions. In the determination of the encoding condition of the target block, the encoding condition of the target block is determined based on the spatial activity value that is a value indicating the complexity of the target block.
  • a first spatial activity value that is a value indicating the complexity of at least a partial area of the target block is calculated, and the first spatial activity value is compared with a predetermined first threshold.
  • a first encoding condition indicating that the target block is encoded for each sub-block of the first division size is determined as the encoding condition of the target block.
  • a second encoding condition indicating that the target block is encoded for each sub-block having a second division size larger than the first division size is set to the target block. The encoding condition is determined.
  • FIG. 1 is a block diagram showing an example of a configuration of an image encoding device 100 according to Embodiment 1 of the present invention.
  • the image encoding device 100 generates an encoded image 205 by encoding an uncompressed original image 201.
  • the image encoding device 100 includes a dividing unit 110, an encoding condition determining unit 120, and an encoding unit 130. Note that the image encoding device 100 encodes the original image 201 in units of blocks.
  • the dividing unit 110 divides the input original image 201 into a plurality of blocks.
  • the original image 201 is one picture included in the moving image or one still image.
  • the plurality of blocks are, for example, a plurality of macro blocks.
  • the macroblock includes a 16 ⁇ 16 luminance value sample and an 8 ⁇ 8 chromaticity value sample for each color component.
  • the target block 203 that is one of the plurality of divided blocks is output to the encoding unit 130. Further, the extended block 202 including at least the target block 203 is output to the encoding condition determining unit 120.
  • extension block 202 may be the same size as the target block 203, that is, the extension block 202 may be the target block 203.
  • the extension block 202 includes the target block 203 and is a block having a size larger than the target block 203.
  • the extended block 202 is an extended macroblock including at least the target macroblock, and includes a 24 ⁇ 24 luminance value sample and a 12 ⁇ 12 chromaticity value sample for each color component.
  • the encoding condition determination unit 120 determines the encoding condition 204 of the target block that is one of a plurality of blocks. In other words, the encoding condition determination unit 120 determines an encoding condition (encoding tool) for each block. A detailed configuration of the encoding condition determination unit 120 will be described later with reference to FIG.
  • the encoding unit 130 encodes the target block 203 in accordance with the encoding condition 204 determined by the encoding condition determining unit 120. Specifically, the encoding unit 130 generates the encoded image 205 by encoding the target block 203 sequentially input from the dividing unit 110.
  • FIG. 2 is a block diagram showing an example of the configuration of the coding condition determining unit 120 according to Embodiment 1 of the present invention.
  • the encoding condition determination unit 120 determines the encoding condition of the target block 203 based on a spatial activity value that is a value indicating the complexity of the target block 203.
  • the spatial activity value which is a value indicating the complexity of the target block 203, is a value indicating a change in the sample value of the target block 203.
  • the spatial activity value is a value indicating the complexity of a block that is a set of a plurality of sample values, and is a value indicating a variation of a plurality of sample values included in the block.
  • the spatial activity value is a variance of multiple sample values.
  • the spatial activity value may be a sum of absolute differences between the average value of a plurality of sample values and each sample value, or may be a sum of absolute differences between adjacent samples.
  • a small spatial activity value of a block means that the block is a flat image, for example, an image having a constant luminance value (such as a computer graphics image).
  • a large spatial activity value of a certain block means that the block is a complex image, for example, a natural image captured by a camera or the like.
  • the encoding condition determination unit 120 includes a spatial activity value calculation unit 121, a comparison unit 122, and a determination unit 123.
  • the spatial activity value calculation unit 121 calculates a first spatial activity value 211 that is a value indicating the complexity of at least a partial area of the target block 203. For example, the spatial activity value calculation unit 121 forms a plurality of small block clusters based on the extended block 202 including the target block 203. Each of the plurality of small block clusters includes a partial region of the target block 203.
  • the space activity value calculation unit 121 calculates a small block cluster space activity value indicating the complexity of each of the plurality of small block clusters. Then, the space activity value calculation unit 121 calculates the smallest value among the plurality of calculated small block cluster space activity values as the first space activity value 211.
  • the comparison unit 122 compares the first spatial activity value 211 calculated by the spatial activity value calculation unit 121 with a predetermined first threshold value. Then, the comparison unit 122 outputs a comparison result 212 indicating which of the first spatial activity value 211 and the first threshold value is smaller to the determination unit 123.
  • the determining unit 123 determines the encoding condition of the target block 203 based on the comparison result 212. Specifically, when the first spatial activity value 211 is smaller than the first threshold, the first encoding condition indicating that the target block 203 is encoded for each sub-block of the first division size is set to the code of the target block 203. It is determined as the conversion condition.
  • the sub-block of the first encoding condition is a processing unit in which at least one process of intra prediction, motion compensation, and frequency conversion is executed.
  • the sub-block of the first encoding condition is composed of 4 ⁇ 4 sample values or 8 ⁇ 8 sample values.
  • the encoding unit 130 divides the target block into sub-blocks having the division size indicated by the first encoding condition, and each intra block is divided into intra blocks.
  • the target block is encoded by performing processing such as prediction.
  • the determination unit 123 indicates that when the first spatial activity value 211 is equal to or greater than the first threshold, the target block 203 is encoded for each sub-block having a second division size larger than the first division size.
  • the encoding condition is determined as the encoding condition for the target block 203.
  • the sub-block of the second coding condition is a processing unit in which at least one process of intra prediction, motion compensation, and frequency conversion is executed.
  • the sub-block of the second encoding condition is composed of 16 ⁇ 16 sample values.
  • the encoding unit 130 divides the target block into sub-blocks having a division size indicated by the second encoding condition, and each intra block is divided into intra blocks.
  • the target block is encoded by performing processing such as prediction. Note that the size of the sub-block of the second encoding condition may be the same as the size of the target block.
  • image coding apparatus 100 encodes a target block for each sub-block of a small division size when the first spatial activity value is smaller than the first threshold.
  • the coding conditions that are to be converted are determined.
  • the image encoding device 100 determines an encoding condition for encoding the target block for each sub-block having a large division size.
  • the image encoding apparatus 100 divides the target block into sub-blocks with a small division size, and when the target block is a complex image, The encoding condition is determined so that the block is divided into sub-blocks having a large division size. Thereby, it is possible to suppress the occurrence of ringing artifacts or blocking artifacts in a flat image.
  • FIG. 3 is a schematic diagram for explaining the effect of reducing ringing artifacts by the image coding apparatus 100 according to Embodiment 1 of the present invention.
  • the image coding apparatus 100 according to Embodiment 1 of the present invention has a small size when the first spatial activity value, which is a value indicating the complexity of at least a partial area of the target block, is smaller than the first threshold.
  • a division size for example, a 4 ⁇ 4 division size is selected.
  • the image coding apparatus 100 selects a small division size when a flat region is included in a part of the target block. Therefore, according to the image coding apparatus 100 according to Embodiment 1 of the present invention, it is possible to suppress deterioration in image quality as shown in FIG.
  • FIG. 4 is a diagram for explaining possible positions of the encoding tool indicator in the compressed image / moving image bitstream.
  • the selected encoding tool may be shown on the indicator collectively for each macroblock group.
  • Examples of the collective indicator in the case of ISO / IEC 14496-2 Part 10 international standard include a picture header and a slice header.
  • the encoding tool selected for each macroblock may be indicated in the macroblock header in the case of ISO / IEC 14496-2 part 10 international standard.
  • FIG. 5 is a flowchart showing an example of the operation of the image coding apparatus 100 according to Embodiment 1 of the present invention.
  • the dividing unit 110 divides the input original image into a plurality of blocks (S110).
  • the encoding condition determination unit 120 determines the encoding condition of the target block (S120). Specific processing will be described later with reference to FIG.
  • the encoding unit 130 encodes the target block according to the determined encoding condition (S130).
  • the determination of the encoding condition of the target block (S120) and the encoding of the target block (S130) are repeated when there is a block to be processed. That is, determination of encoding conditions and encoding are repeated by using, as a new target block, a block that has not been encoded among a plurality of blocks generated by dividing the original image.
  • FIG. 6 is a flowchart showing an example of the operation of the coding condition determining unit 120 according to Embodiment 1 of the present invention.
  • the spatial activity value calculation unit 121 calculates a first spatial activity value that is a value indicating the complexity of at least a part of the target block (S210). Specifically, first, the spatial activity value calculation unit 121 forms a plurality of small block clusters based on the extended blocks including the target block. Then, the space activity value calculation unit 121 calculates a small block cluster space activity value that is a space activity value for each of the plurality of small block clusters. The spatial activity value calculation unit 121 calculates the smallest spatial activity value as the first spatial activity value among the calculated small block cluster spatial activity values.
  • the comparison unit 122 compares the first spatial activity value with the first threshold value (S220). Specifically, the comparison unit 122 determines whether the first spatial activity value is smaller than the first threshold value.
  • the determination unit 123 determines the first encoding condition for subdivision as the encoding condition of the target block (S230). That is, the determination unit 123 determines the first encoding condition indicating that the target block is encoded for each sub-block of the first division size.
  • the determination unit 123 determines the second coding condition for large partitioning as the coding condition of the target block (S240). That is, the determination unit 123 determines a second encoding condition indicating that the target block is encoded for each sub-block of the second division size.
  • the target block when a part of the target block is a flat image, the target block is divided into sub-blocks of a small division size.
  • the encoding condition is determined so that the target block is divided into sub-blocks having a large division size. Thereby, it is possible to suppress the occurrence of ringing artifacts or blocking artifacts in a flat image.
  • the distortion when the distortion is not conspicuous, it is possible to increase the compression ratio by determining the encoding condition of the large division size, and when the distortion is conspicuous, the encoding condition of the small division size is determined. By doing so, deterioration of image quality can be suppressed.
  • the image coding method according to the second embodiment of the present invention performs not only the evaluation of the spatial activity condition as shown in the first embodiment, but also the motion activity condition, and the code of the target block is based on the evaluation result. It is characterized by determining the conversion condition.
  • the evaluation of the spatial activity condition the spatial activity of a plurality of large blocks included in the target block and the spatial activity of a plurality of small block clusters included in the extended block including the target block are evaluated.
  • FIG. 7 is a block diagram showing an example of the configuration of the image encoding device 300 according to Embodiment 2 of the present invention.
  • the image encoding apparatus 300 includes a sample extraction unit 310, an encoding condition determination unit 320, and an encoding unit 330.
  • the sample extraction unit 310 is an example of a division unit according to the present invention, and divides an original image into a plurality of blocks. Specifically, the sample extraction unit 310 acquires the original picture 402 to be processed as the input image Vin, and divides the acquired original picture 402 into a plurality of blocks. Then, the sample extraction unit 310 outputs an original picture sample 404 having an M ⁇ N arrangement as a target block which is one of a plurality of blocks. Further, the sample extraction unit 310 extracts and outputs an original image sample 403 having an O ⁇ P arrangement as an extended block including the target block.
  • the values of O and P are 24, and the values of M and N are 16, respectively.
  • the original sample 403 having the O ⁇ P arrangement surrounds the target macroblock and includes all of the M ⁇ N samples in the target macroblock.
  • the original image sample 403 is the same as the original image sample 404. That is, the extension macroblock may be the same as the target macroblock.
  • the encoding condition determination unit 320 includes a spatial activity condition evaluation unit 321, a prediction type evaluation unit 322, a switch unit 323, a motion activity condition evaluation unit 324, and an OR gate unit 325.
  • the spatial activity condition evaluation unit 321 determines the encoding condition of the target block based on the spatial activity value that is a value indicating the complexity of the target block. Specifically, the spatial activity condition evaluation unit 321 acquires the extracted original image sample 403 having an O ⁇ P arrangement, and evaluates the spatial activity value of the input original image sample. Then, the spatial activity condition evaluation unit 321 is to be used by the encoding unit 330 to encode the target macroblock, either the “small division encoding tool” or the “large division encoding tool”. An encoding tool determination signal 405 indicating that is output.
  • the encoding tool determination signal 405 is, for example, a binary value, 0 represents a “small division encoding tool”, and 1 represents a “large division encoding tool”.
  • the “subdivision encoding tool” is an example of an encoding tool according to the first encoding condition, and is an encoding tool for dividing the target macroblock into sub-blocks of the first division size.
  • the “large-division encoding tool” is an example of an encoding tool according to the second encoding condition, and is an encoding tool for dividing the target macroblock into sub-blocks of the second division size.
  • FIG. 9 is a block diagram showing an example of the configuration of the spatial activity condition evaluation unit 321 according to Embodiment 2 of the present invention. As shown in FIG. 7, the spatial activity condition evaluation unit 321 receives the original picture sample 403 that is an extended macroblock and outputs an encoding tool determination signal 405.
  • the spatial activity condition evaluation unit 321 includes a large block dividing unit 501, a large block space activity value calculating unit 502, a maximum value calculating unit 503, a spatial activity value comparing unit 504, and a small block cluster.
  • a forming unit 505, a small block cluster space activity value calculating unit 506, a minimum value calculating unit 507, a space activity value comparing unit 508, and an encoding tool determining unit 509 are provided.
  • the large block dividing unit 501 acquires the original image sample 403 having the O ⁇ P arrangement extracted by the sample extracting unit 310 as the input sample Oin.
  • the large block dividing unit 501 divides the M ⁇ N partial array corresponding to the target macroblock into a plurality of large G ⁇ H blocks, and outputs these large block samples 601.
  • FIG. 8 An example of the large block sample 601 is shown in FIG. In the example shown in FIG. 8, G and H are 8, and the 16 ⁇ 16 target macroblock is divided into four 8 ⁇ 8 large block samples 601.
  • the large block space activity value calculation unit 502 receives a plurality of large block samples 601 and calculates the space activity value of each of the received large block samples 601.
  • the spatial activity value calculated at this time is an example of a large block space activity value that is a value indicating the complexity of the large block according to the present invention.
  • the large block space activity value calculation unit 502 outputs a set including all large block space activity values 602 corresponding to the original image sample (target macroblock) in the M ⁇ N array. For example, in the example of FIG. 8, the large block space activity value calculation unit 502 calculates and outputs four large block space activity values 602.
  • the maximum value calculation unit 503 specifies a maximum value among a set of a plurality of large block space activity values 602, and outputs the specified maximum value as a maximum space activity value 603.
  • the maximum space activity value 603 is an example of a second space activity value.
  • the spatial activity value comparison unit 504 acquires the maximum spatial activity value 603 and compares it with a predetermined second threshold value of the spatial activity value. Then, the spatial activity value comparison unit 504 outputs a control signal 604 indicating the comparison result to the encoding tool determination unit 509. If the maximum spatial activity value 603 is greater than the second threshold, the control signal 604 is set to 1. If the maximum spatial activity value 603 is less than or equal to the second threshold, the control signal 604 is set to zero.
  • the small block cluster forming unit 505 acquires the OxP array original image sample 403 extracted by the sample extracting unit 310 as an input sample Oin. Then, the small block cluster forming unit 505 divides the original image sample 403 having the O ⁇ P arrangement into a plurality of E ⁇ F small blocks, and groups these small blocks into a plurality of small block clusters.
  • FIG. 8 An example of the small block cluster sample 605 is shown in FIG. In the example shown in FIG. 8, E and F are 4, and a 24 ⁇ 24 extended macroblock is divided into 36 4 ⁇ 4 small blocks.
  • the small block cluster forming unit 505 forms a plurality of I ⁇ J small block clusters having different sizes based on the 36 small blocks. In the example shown in FIG. 8, 25 8 ⁇ 8 small block clusters, 12 4 ⁇ 16 small block clusters, and 12 16 ⁇ 4 small block clusters are formed.
  • the small block cluster forming unit 505 outputs the formed small block cluster sample 605 to the small block cluster space activity value calculating unit 506.
  • the small block cluster space activity value calculation unit 506 receives the small block cluster sample 605 and calculates the space activity value of each of the received plurality of small block cluster samples 605.
  • the spatial activity value calculated at this time is an example of a small block cluster spatial activity value that is a value indicating the complexity of the small block cluster according to the present invention.
  • the small block cluster space activity value calculation unit 506 outputs a set including all of the small block cluster space activity values 606 corresponding to the original image sample (extended macroblock) of the O ⁇ P array. For example, in the example of FIG. 8, the small block cluster space activity value calculation unit 506 calculates and outputs 49 small block cluster space activity values 606 in total.
  • the minimum value calculation unit 507 specifies the minimum value in the set of small block cluster space activity values 606, and outputs the specified minimum value as the minimum space activity value 607.
  • the minimum space activity value 607 is an example of a first space activity value.
  • the space activity value comparison unit 508 acquires the minimum space activity value 607 and compares it with a predetermined first threshold value of the space activity value. Then, the space activity value comparison unit 508 outputs a control signal 608 indicating the comparison result to the encoding tool determination unit 509. If the minimum spatial activity value 607 is less than the first threshold, the control signal 608 is set to 1. If the minimum space activity value 607 is greater than or equal to the first threshold, the control signal 608 is set to zero.
  • the encoding tool determination unit 509 acquires the control signals 604 and 608 and generates an encoding tool determination signal 405 indicating which of the “small-division encoding tool” and the “large-division encoding tool” is determined. Output. Specifically, when both of the control signals 604 and 608 are 1, the encoding tool determination unit 509 sets the encoding tool determination signal 405 to “a subdivision encoding tool”. Otherwise (if either or both of the control signals 604 and 608 are not 1), the encoding tool determination unit 509 sets the encoding tool determination signal 405 to “enlargement encoding tool”.
  • the encoding tool determination signal 405 by setting the value of the encoding tool determination signal 405 to 1, it is possible to indicate a “subdivision encoding tool”. Further, by setting the value of the encoding tool determination signal 405 to 0, it is possible to indicate a “large division encoding tool”. The encoding tool determination signal 405 is then transmitted as the output signal Dout.
  • the prediction type evaluation unit 322 acquires the available prediction type information 401 and evaluates whether or not the inter prediction mode can be used as a prediction type candidate for the target macroblock. Then, the prediction type evaluation unit 322 outputs a control signal 406 indicating the evaluation result to the switch unit 323.
  • the control signal 406 When the inter prediction type is available, the control signal 406 is set to 1. If the inter prediction type is not available, the control signal 406 is set to zero.
  • the available prediction type information 401 is information indicating whether or not the target original picture 402 is a picture to be encoded as an I picture. When the original picture 402 is a picture to be encoded as an I picture, the inter prediction type cannot be used, and thus the prediction type evaluation unit 322 sets the control signal 406 to 0.
  • the switch unit 323 determines whether to output the coding tool determination signal 405 to the motion activity condition evaluation unit 324 or the OR gate unit 325 according to the control signal 406. Specifically, when the inter prediction type is available, an encoding tool determination signal is output to the motion activity condition evaluation unit 324.
  • the switch unit 323 when the control signal 406 is 1, the switch unit 323 outputs the encoding tool determination signal 405 to the motion activity condition evaluation unit 324 as the encoding tool determination signal 407.
  • the encoding tool determination signal 405 is output to the OR gate unit 325 as the encoding tool determination signal 408.
  • the motion activity condition evaluation unit 324 determines the encoding condition of the target block based on the motion of the target block. Specifically, the motion activity condition evaluation unit 324 receives the encoding tool determination signal 407, the available prediction type information 401, the extracted M ⁇ N array original image sample 404, and the reconstructed picture 414 as inputs. get. The motion activity condition evaluation unit 324 evaluates the motion activity condition and outputs an encoding tool determination signal 409 and an inter prediction sample 410 having an M ⁇ N arrangement.
  • FIG. 10 is a block diagram showing an example of the configuration of the motion activity condition evaluation unit 324 according to Embodiment 2 of the present invention.
  • the motion activity condition evaluation unit 324 includes a reference picture selection unit 701, a motion prediction unit 702, a motion compensation unit 703, a cost calculation unit 704, a cost comparison unit 705, and a motion vector comparison unit. 706, an encoding tool determination initialization unit 707, and two switch units 708 and 709.
  • the reference picture selection unit 701 accepts the reconstructed picture 414 and the available prediction type information 401 as inputs, and outputs a set of one or more selected reference pictures 801 for use in the motion prediction process.
  • the motion prediction unit 702 calculates a motion vector of the target block. Specifically, the motion prediction unit 702 acquires a set of reference pictures 801, performs motion prediction using these reference pictures 801, and outputs a set of reference picture indexes 802 and a set of motion vectors 803.
  • the motion vector comparison unit 706 acquires a set of motion vectors 803 and compares it with a predetermined third threshold value. Then, the motion vector comparison unit 706 outputs a control signal 804 indicating the comparison result.
  • the motion vector comparison unit 706 causes the control signal 804 to Is set to 1.
  • the motion vector comparison unit 706 sets the control signal 804 to 0.
  • the motion compensation unit 703 acquires a set of reference picture indexes 802, a set of motion vectors 803, and a set of reconstructed pictures 414.
  • the motion compensation unit 703 outputs a prediction image of the target macroblock, specifically, an inter prediction sample 410 having an M ⁇ N arrangement.
  • the cost calculation unit 704 acquires an M ⁇ N array inter prediction sample 410, an M ⁇ N array original image sample 404, and a set of motion vectors 803.
  • the cost calculation unit 704 outputs a cost value 807 to the cost comparison unit 705. An example of the cost value 807 will be described later.
  • the cost comparison unit 705 acquires the cost value 807, and compares the acquired cost value 807 with a predetermined fourth threshold value. Then, the cost comparison unit 705 outputs a control signal 808 indicating the comparison result to the switch unit 709.
  • the cost comparison unit 705 sets the control signal 808 to 1. If the cost value is greater than or equal to the fourth threshold, the cost comparison unit 705 sets the control signal 808 to 0.
  • the encoding tool determination initialization unit 707 generates an initialization signal 805 indicating “enlargement encoding tool”. As described above, since the signal indicating the “large division encoding tool” is indicated by a binary value of 1 (for example, the encoding tool determination signal 405), the initialization signal 805 is similarly 2 It can be represented by the decimal value 1.
  • the switch unit 708 controls which of the encoding tool determination signal 407 and the initialization signal 805 is output as the encoding tool determination signal 806 according to the control signal 804. Specifically, the switch unit 708 outputs the initialization signal 805 as the encoding tool determination signal 806 when the absolute value of the motion vector is larger than the third threshold, that is, when the control signal 804 is 1. In other words, when the absolute value of the motion vector is larger than the third threshold, “enlargement encoding tool” is selected as the encoding tool indicated by the encoding tool determination signal 806.
  • the switch unit 708 When the absolute value of the motion vector is equal to or smaller than the third threshold, that is, when the control signal 804 is 0, the switch unit 708 outputs the encoding tool determination signal 407 as the encoding tool determination signal 806. In other words, when the absolute value of the motion vector is equal to or smaller than the third threshold, the encoding tool determined by the spatial activity condition evaluation unit 321 is selected as the encoding tool indicated by the encoding tool determination signal 806.
  • the switch unit 709 controls which of the encoding tool determination signal 806 and the initialization signal 805 is output as the encoding tool determination signal 409 according to the control signal 808. Specifically, the switch unit 709 outputs the initialization signal 805 as the encoding tool determination signal 409 when the cost value is less than the fourth threshold, that is, when the control signal 808 is 1. In other words, when the cost value is smaller than the fourth threshold, “enlargement encoding tool” is selected as the encoding tool indicated by the encoding tool determination signal 409.
  • the switch unit 709 When the cost value is equal to or greater than the fourth threshold, that is, when the control signal 808 is 0, the switch unit 709 outputs the encoding tool determination signal 806 as the encoding tool determination signal 409.
  • the encoding tool determination signal 806 is transmitted as the output signal Dout.
  • the OR gate unit 325 outputs a final encoding tool determination signal 411 depending on whether the encoding tool determination signals 408 and 409 are available.
  • the final encoding tool determination signal 411 includes the finally determined encoding tool information.
  • the OR gate unit 325 outputs a final encoding tool determination signal 411 indicating 1 if at least one of the encoding tool determination signals 408 and 409 is 1. In other words, when “enlargement coding tool” is selected in at least one of the spatial activity condition evaluation unit 321 and the motion activity condition evaluation unit 324, the OR gate unit 325 selects “enlargement encoding tool”. As shown, the final encoding tool determination signal 411 is set to 1.
  • the OR gate unit 325 outputs a final encoding tool determination signal 411 indicating 0.
  • the OR gate unit 325 selects “encoding tool for subdivision”. As shown, the final encoding tool determination signal 411 is set to zero.
  • the encoding unit 330 includes an image encoding unit 331, an image decoding unit 332, a picture memory unit 333, and an entropy encoding unit 334.
  • the image encoding unit 331 uses the final encoding tool determination signal 411, the available prediction type information 401, and the M ⁇ N array original sample 404 as inputs. Further, in the present embodiment, the image encoding unit 331 acquires the M ⁇ N array inter prediction sample 410 as an additional input used to encode the target macroblock of the M ⁇ N array.
  • the image encoding unit 331 performs the image encoding process on the target macroblock using one of the two predetermined encoding tools selected by the final encoding tool determination signal 411.
  • the image encoding unit 331 generates a quantization residual 412 of an M ⁇ N array by performing processing such as intra prediction, difference calculation with a prediction sample, frequency conversion, and quantization. . Then, the image encoding unit 331 outputs an M ⁇ N quantization residual 412 to the entropy encoding unit 334 and the image decoding unit 332.
  • the entropy encoding unit 334 generates the compressed bit stream 415 by entropy encoding the quantization residual 412 of the M ⁇ N array. Then, the entropy encoding unit 334 outputs the generated compressed bit stream 415 as the output signal Vout.
  • the entropy encoding unit 334 is not limited to entropy encoding, and may perform other variable length encoding.
  • the image decoding unit 332 decodes and reconstructs the quantization residual 412.
  • the image decoding unit 332 may acquire the M ⁇ N array inter prediction sample 410 used to reconstruct the target macroblock sample of the M ⁇ N array.
  • the image decoding unit 332 finally outputs the reconstructed sample 413 having the M ⁇ N arrangement, and stores the reconstructed sample 413 in the picture memory unit 333.
  • the picture memory unit 333 is a memory for storing the reconstructed sample 413, so-called local decoded image.
  • the reconstructed sample 413 stored in the picture memory unit 333 is referred to as a reference image by the motion activity condition evaluation unit 324.
  • the image coding apparatus 300 includes a spatial activity condition evaluation unit 321 that evaluates a spatial activity condition, and a motion activity condition evaluation that evaluates a motion activity condition. Part 324. Then, the image encoding device 300 determines the encoding condition of the target block based on the evaluation result, and encodes the target block according to the determined encoding condition.
  • the encoding condition is selected using the image feature such as the space activity condition and the motion activity condition, it is possible to suppress the deterioration of the image quality.
  • FIG. 11 is a flowchart showing an example of the operation of the image coding apparatus 300 according to Embodiment 2 of the present invention.
  • the sample extraction unit 310 extracts an OxP array original picture sample from the target uncompressed original picture (S310).
  • O indicates the number of samples in the width, and O is greater than or equal to M.
  • P indicates the number of samples at the height, and P is greater than or equal to N.
  • the values of O and P are each 24, for example.
  • the original sample of the O ⁇ P array includes the target macroblock, and includes all of the M ⁇ N samples in the target macroblock as shown in FIG.
  • extended macroblock is used as a term indicating an original picture sample of an O ⁇ P arrangement surrounding the target macroblock.
  • the sample extraction unit 310 outputs an original image sample of an M ⁇ N array that constitutes the target macroblock, in addition to the original image sample of the O ⁇ P array (that is, an extended macroblock).
  • the spatial activity condition evaluation unit 321 evaluates the spatial activity condition as a first condition for selecting an optimal encoding tool for encoding the target macroblock (S320).
  • the specific operation of the space activity condition evaluation unit 321 will be described in more detail with reference to FIG.
  • FIG. 12 is a flowchart showing an example of the operation of the spatial activity condition evaluation unit 321 according to Embodiment 2 of the present invention.
  • the spatial activity condition evaluation unit 321 calculates a second spatial activity value by performing processing in units of large blocks (S410).
  • the second spatial activity value is the maximum value among the spatial activity values calculated for each large block. Specific processing will be described later with reference to FIG.
  • the spatial activity value comparison unit 504 compares the second spatial activity value with the second threshold value (S420).
  • the encoding tool determination unit 509 determines the second encoding condition for large division as the encoding condition used for the target macroblock ( S460).
  • the spatial activity condition evaluation unit 321 calculates the spatial activity value of the target macroblock in units of large blocks. That is, the spatial activity condition evaluation unit 321 calculates the complexity (or flatness) of the target macroblock in units of large blocks.
  • the space activity condition evaluation unit 321 determines whether or not the maximum value of the space activity value for each large block is larger than the threshold value. That is, the spatial activity condition evaluation unit 321 determines whether or not the complexity of the most complex block among the plurality of large blocks constituting the target macroblock is larger than the threshold value. When the complexity of the most complicated block is equal to or less than the threshold value, a coding tool for large division is selected.
  • the fact that the complexity of the most complex block is below the threshold means that the flatness of the target macroblock is high. That is, it shows that the information amount of the target macroblock is small, and it is possible to save the code amount by increasing the compression rate by using the coding tool for large division. Further, since the image is complex, distortion is not conspicuous, and subjective image quality deterioration can be suppressed even when a large-division encoding tool is used.
  • the spatial activity condition evaluation unit 321 calculates the first spatial activity value by performing processing in units of small block clusters (S430). As described above, the first spatial activity value is the smallest value among the spatial activity values calculated for each small block cluster. Specific processing will be described later with reference to FIG.
  • the spatial activity value comparison unit 508 compares the first spatial activity value with the first threshold value (S440).
  • the encoding tool determination unit 509 determines the first encoding condition for subdivision as the encoding condition used for the target macroblock (S450). ).
  • the spatial activity condition evaluation unit 321 calculates the spatial activity value of the target macroblock in units of small block clusters. In other words, the spatial activity condition evaluation unit 321 calculates the complexity (or flatness) of the target macroblock in units of small block clusters.
  • the spatial activity condition evaluation unit 321 determines whether or not the minimum value of the spatial activity value for each small block cluster is smaller than the threshold value. That is, the spatial activity condition evaluation unit 321 determines whether or not the complexity of the flatest small block cluster among the plurality of small block clusters each including a part of the target macroblock is smaller than the threshold value. When the complexity of the flattest small block cluster is smaller than the threshold, an encoding tool for subdivision is selected.
  • the complexity of the flattest small block cluster is smaller than the threshold value means that a part of the target macroblock includes a region with high flatness. That is, it means that the target macroblock includes an area where subjective image quality degradation is conspicuous when distortion spreads over a flat area.
  • the encoding tool determination unit 509 determines the second encoding condition for large partitioning as the encoding condition used for the target macroblock. (S460). That the first spatial activity value is equal to or greater than the first threshold means that the target macroblock does not include a region with high flatness. Therefore, even if distortion spreads within the target macroblock, subjective image quality degradation is not noticeable. For this reason, the code amount can be reduced by selecting the second encoding condition for large division.
  • FIG. 13 is a flowchart showing an example of detailed operation of the spatial activity condition evaluation unit 321 according to Embodiment 2 of the present invention.
  • the same operations as those shown in FIG. 12 are denoted by the same reference numerals.
  • the large block dividing unit 501 divides the M ⁇ N target macroblock into a plurality of large G ⁇ H blocks (S411).
  • G represents the number of samples in the width, and M can be divided by this G.
  • H represents the number of samples at the height, and N can be divided by this H.
  • the value of G and H is, for example, 8 respectively.
  • FIG. 8 shows an example in which an M ⁇ N macroblock is divided into a plurality of large G ⁇ H blocks.
  • the large block space activity value calculation unit 502 calculates the space activity value (large block space activity value) of each of the plurality of large blocks (S412).
  • the spatial activity value indicates the amount of variation of the sample value in the large block.
  • the spatial activity value is greater than or equal to zero.
  • the calculation method of the large block spatial activity value (LargeBlockSpatialAct) is expressed, for example, by the following (Formula 1).
  • the spatial activity value of the large block is obtained as the statistical variance of the sample values in the large block.
  • x (h, g) represents a sample value at a position (h, g) in the large block.
  • Another method for calculating the spatial activity value of the large block is represented by, for example, the following (Expression 2) and (Expression 3).
  • SmallBlock represents a small block of E ⁇ F samples.
  • E represents the number of samples in the width, and G (large block width) can be divided by this E.
  • F represents the number of samples at the height, and H (height of the large block) can be divided by this F.
  • the values of E and F are, for example, 4 respectively.
  • SmallBlock SpatialAc represents a spatial activity value of a small block obtained as a statistical distribution of sample values in the small block.
  • B represents the number of small blocks in the target large block
  • x (f, e) represents a sample value at a position (f, e) in the small block
  • min (•) is a minimum. Value / minimum value.
  • FIG. 8 illustrates an example in which an O ⁇ P extended macroblock is divided into a plurality of E ⁇ F small blocks.
  • Another method for calculating the spatial activity value of the large block is represented by, for example, the following (formula 4).
  • SmallBlock SpatialAct represents a spatial activity value of a small block obtained as a statistical variance of sample values in the small block, as in (Expression 3).
  • B represents the number of small blocks in the target large block
  • min (•) represents a minimum value / minimum value
  • max (•) represents a maximum value / maximum value.
  • the maximum value calculation unit 503 After calculating the spatial activity value of the large block, the maximum value calculation unit 503 obtains the second spatial activity value that is the maximum spatial activity value among all large blocks in the target macroblock (S413).
  • the spatial activity value comparison unit 504 compares the maximum spatial activity value in the large block with a predetermined second threshold related to the spatial activity value (S414).
  • the predetermined second threshold value is, for example, an integer value.
  • the encoding tool determination unit 509 determines and sets “enlargement encoding tool” as the encoding tool. (S460).
  • the small block cluster forming unit 505 forms a plurality of I ⁇ J small block clusters based on the O ⁇ P extended macroblock including the M ⁇ N target macroblock (S431).
  • I represents the number of samples in the width, and this I can be divided by E (the width of the small block).
  • J represents the number of samples at the height, and this J can be divided by F (the height of the small block).
  • each small block cluster includes one or more small blocks located within an M ⁇ N macroblock.
  • an O ⁇ P extended macroblock is divided into a plurality of E ⁇ F small blocks, and a plurality of I ⁇ J small block clusters having different sizes are formed based on these E ⁇ F small blocks. An example is shown.
  • the small block cluster space activity value calculation unit 506 calculates each space activity value (small block cluster space activity value) of the plurality of small block clusters (S432).
  • This spatial activity value indicates the amount of variation of the sample value in the small block cluster.
  • the calculation method of the spatial activity value of the small block cluster is expressed by, for example, the following (Formula 5).
  • Another method for calculating the spatial activity value of the small block cluster is expressed by, for example, the following (formula 6).
  • SmallBlockSpatialAct represents the spatial activity value of the small block obtained as the statistical variance of the sample values in the small block, as in (Equation 3).
  • B indicates the number of small blocks in the target small block cluster.
  • the minimum value calculation unit 507 After calculating the spatial activity value in the small block cluster, the minimum value calculation unit 507 obtains the first spatial activity value that is the minimum spatial activity value among all the small block clusters in the target extended macroblock (S433). .
  • the spatial activity value comparison unit 508 compares the minimum spatial activity value in the small block cluster with a predetermined first threshold related to the spatial activity value (S434).
  • the second threshold value is, for example, an integer value.
  • the encoding tool determination unit 509 determines and sets “encoding tool for subdivision” as the encoding tool. (S450).
  • the encoding tool determination unit 509 determines and sets “enlargement encoding tool” as the encoding tool.
  • the spatial activity condition evaluation unit 321 determines the encoding tool for the target macroblock based on the spatial activity value of the target macroblock.
  • spatial activity values are compared in units of large blocks, and only when the second spatial activity value is equal to or smaller than the second threshold value, in units of small block clusters. You may compare the spatial activity values at. Alternatively, the comparison of spatial activity values in units of large blocks and the comparison of spatial activity values in units of small block clusters may be performed in parallel processing.
  • the prediction type evaluation unit 322 determines whether or not the inter prediction mode can be applied to the target macroblock (S330). Specifically, the prediction type evaluation unit 322 checks whether the target picture including the target macroblock is inter-coded. A picture to be inter-encoded is encoded using a prediction result (usually motion compensated) obtained from an encoded reference picture.
  • the encoding unit 330 uses the encoding tool determined by evaluating the spatial activity condition to encode the target macroblock (S350).
  • the motion activity condition evaluation unit 324 uses the motion activity as a second condition for selecting an optimal encoding tool for encoding the target macroblock. Conditions are evaluated (S340). Note that the coding tool determined by the spatial activity condition evaluation unit 321 may be changed by the movement activity condition evaluation unit 324 as shown in detail in FIG.
  • FIG. 14 is a flowchart showing an example of the operation of the motion activity condition evaluation unit 324 according to Embodiment 2 of the present invention.
  • the reference picture selection unit 701 selects a plurality of reference picture candidates from the reconstructed picture group stored in the picture memory unit 414 (S501).
  • the picture in this case can be referred to as a frame picture or a field picture.
  • the motion prediction unit 702 derives a plurality of sets of motion vectors for the uncompressed original picture macroblock of M ⁇ N samples by performing motion prediction on the reference picture candidate (S502). Each of the derived plurality of motion vectors is associated with a reference picture that is a reference destination.
  • the motion compensation unit 703 derives a prediction block of M ⁇ N samples by performing motion compensation on a related reference picture using the derived set of motion vectors (S503).
  • the cost calculation unit 704 calculates a cost value based on the difference in the sample values between the derived prediction block of M ⁇ N samples and the original block of M ⁇ N samples (S504).
  • the formula for obtaining the cost value is expressed by, for example, the following (Formula 7).
  • DiffCost is a cost component obtained according to the difference between the predicted sample and the original picture sample.
  • DiffCost there is a sum of absolute differences between a predicted sample and an original picture sample.
  • Lambda is a constant value.
  • MVCost represents a cost value obtained according to the derived motion vector. Lambda may be a zero value, in which case the MVCost component may be ignored.
  • the correlation between the target original picture and the preceding decoded picture is obtained by performing the above processing (S501 to S504). As shown in (Expression 7), the smaller the cost value, the higher the correlation.
  • the motion vector comparison unit 706 compares the absolute value of the motion vector derived by the motion prediction unit 702 with a predetermined third threshold value of the motion vector (S505).
  • the predetermined third threshold value of the motion vector is, for example, an integer value.
  • the encoding tool is determined by the encoding tool determination initialization unit 707 as “the encoding tool for large division”. Is determined and set (S509). Then, the movement activity condition evaluation process ends.
  • the motion vector is larger than the third threshold means that the motion between pictures is large and the continuity is small. Therefore, even if distortion occurs in the target macroblock, since the motion between pictures is large, subjective image quality degradation is suppressed. For this reason, when the motion is large, the encoding efficiency can be increased by selecting the “large division encoding tool”.
  • the cost comparison unit 705 includes the cost value calculated by the cost calculation unit 704, The cost value is compared with a predetermined fourth threshold value (S507).
  • the fourth threshold is, for example, an integer value.
  • the encoding tool determination initialization unit 707 determines and sets the encoding tool as “enlargement encoding tool” (S509). ). Then, the movement activity condition evaluation process ends.
  • the cost value is a value calculated based on the sum of absolute differences and the like, and the smaller the cost value, the better the encoding efficiency. That is, when the cost value is less than the fourth threshold value, the encoding efficiency is sufficiently excellent. Therefore, the encoding efficiency can be sufficiently increased by selecting the “large-division encoding tool”. .
  • the coding tool determined by the spatial activity condition evaluation unit 321 is not changed, and the motion activity condition evaluation process ends. That is, the encoding condition is determined based on the determination result of the encoding condition by the spatial activity condition evaluation unit 321.
  • the encoding unit 330 encodes the image of the target macroblock using the encoding tool selected as described above (S350).
  • the image encoding device 300 evaluates the spatial activity condition and the motion activity condition, and encodes the target block based on the evaluation result. Determine the conditions.
  • the image encoding device 300 encodes an encoding condition (for large partitioning) such that the target block is encoded for each subblock having a large partition size. (Encoding condition) is determined.
  • Encoding condition it is preferable to prioritize the compression rate because the continuity between images (pictures) is small when the motion is large by selecting the coding condition for large division.
  • the image coding apparatus 300 determines the coding condition for large division even when the absolute value of the motion vector is equal to or smaller than the third threshold and the cost value is smaller than the fourth threshold. Thereby, the fact that the cost value is smaller than the fourth threshold indicates that the target block can be effectively encoded, so that the encoding efficiency can be improved by determining the encoding condition for large division.
  • the image encoding device 300 determines that the target block according to the evaluation result of the spatial activity condition of the target block and the extended block. Is determined.
  • the image encoding device 300 calculates the spatial activity values of a plurality of large blocks included in the target block, and the second spatial activity value that is the maximum value of the calculated spatial activity values is equal to or less than the second threshold value.
  • coding conditions for large division are determined.
  • the target block is a block with a small amount of information. Therefore, the coding efficiency is effectively increased by using the coding condition for large division. be able to.
  • the image coding apparatus 300 calculates the spatial activity values of a plurality of small block clusters included in the extended block when the second spatial activity value is larger than the second threshold value.
  • the image encoding apparatus 300 encodes the target block for each sub-block having a small division size when the first spatial activity value, which is the minimum value of the calculated spatial activity value, is smaller than the first threshold.
  • the encoding conditions (encoding conditions for subdivision) are determined.
  • the second spatial activity value is larger than the second threshold value, the amount of information of the target block is large, so even if the coding condition for large division is determined, the second spatial activity value is less than or equal to the second threshold value. The effect of is not obtained. Therefore, the first spatial activity value is compared with the first threshold value, and if the first spatial activity value is smaller than the first threshold value, the encoding condition for subdivision is selected.
  • the image encoding device 300 selects the encoding condition for subdivision when at least a part of the target block includes a flat region. Thereby, it is possible to suppress the occurrence of ringing artifacts and blocking artifacts in a flat image, and it is possible to suppress deterioration in image quality.
  • the small block cluster is generated based on the extended block that includes the target block and is larger than the target block.
  • Information can be used. For example, when the complexity of a partial area of the target block is low, that is, when the area is flat, the encoding condition is determined based on whether or not the area included in the surrounding blocks is flat. can do.
  • target area If a part of the target block (target area) is flat and the surrounding blocks are also flat, when the distortion spreads over the target area, the distortion is noticeable and the image quality deteriorates. . Conversely, if the target area is flat and the surrounding blocks are complex, the surroundings are complex, so even if the distortion spreads over the target area, the distortion is inconspicuous and suppresses image quality degradation. Is done.
  • the encoding condition is set based on the surrounding block image information. Selection can be made. Specifically, as described above, when the minimum value of the spatial activity value of the small block cluster is equal to or smaller than the first threshold, the first coding condition for subdivision is selected as the coding condition for the target block. .
  • the surrounding image is also flat, encoding is performed with a small division size, so that distortion does not spread within the target block, and deterioration in image quality can be suppressed.
  • the cost values need not be compared in the flowchart shown in FIG. Specifically, the calculation of the cost value (S504) and the comparison of the cost values (S507 and S508) may not be performed.
  • the coding tool for large division is selected, and when the absolute value of the motion vector is equal to or smaller than the third threshold value, the coding condition based on the evaluation of the spatial activity condition
  • the coding condition may be determined based on the determination result.
  • the image coding apparatus 100 determines the coding condition based on the spatial activity condition as shown in FIG. Based on this, the encoding condition may be determined. Specifically, as shown in FIG. 15, the encoding condition may be determined based on the magnitude of the motion vector.
  • the encoding condition determination unit calculates a motion vector of the target block (S610). Specifically, the encoding condition determination unit calculates a motion vector of the target block by selecting a reference picture and performing motion prediction.
  • the encoding condition determination unit compares the calculated motion vector with a predetermined third threshold value (S620).
  • the motion vector is equal to or smaller than the third threshold (No in S620)
  • the first encoding condition for subdivision (“the subdivision encoding tool”) is determined as the encoding condition for the target block (S630).
  • the second coding condition for large division (“large division coding tool”) is determined as the coding condition for the target block (S640).
  • the encoding condition may be determined based only on the motion vector.
  • encoding efficiency can be improved by selecting the “large-division encoding tool” when the motion is large.
  • the “small division encoding tool” is selected, distortion is likely to spread in the target macroblock, but since the motion between pictures is large, subjective image quality degradation is suppressed.
  • Embodiment 3 By recording a program for realizing the configuration of the image encoding method or the image decoding method described in the above embodiment on a storage medium, the processing described in the above embodiment can be easily performed in an independent computer system. It becomes possible.
  • the storage medium may be any medium that can record a program, such as a magnetic disk, an optical disk, a magneto-optical disk, an IC card, and a semiconductor memory.
  • FIG. 16 is a diagram showing an overall configuration of a content supply system ex100 that realizes a content distribution service.
  • the communication service providing area is divided into desired sizes, and base stations ex106 to ex110, which are fixed radio stations, are installed in each cell.
  • the content supply system ex100 includes a computer ex111, a PDA (Personal Digital Assistant) ex112, a camera ex113, a mobile phone ex114, a game machine via an Internet ex101, an Internet service provider ex102, a telephone network ex104, and base stations ex106 to ex110. Each device such as ex115 is connected.
  • PDA Personal Digital Assistant
  • each device may be directly connected to the telephone network ex104 without going through the base stations ex106 to ex110 which are fixed wireless stations.
  • the devices may be directly connected to each other via short-range wireless or the like.
  • the camera ex113 is a device that can shoot moving images such as a digital video camera
  • the camera ex116 is a device that can shoot still images and movies such as a digital camera.
  • the mobile phone ex114 is a GSM (Global System for Mobile Communications) method, a CDMA (Code Division Multiple Access) method, a W-CDMA (Wideband-Code Division Multiple Access L (Semiconductor), a W-CDMA (Wideband-Code Divition Multiple Access L) method.
  • GSM Global System for Mobile Communications
  • CDMA Code Division Multiple Access
  • W-CDMA Wideband-Code Division Multiple Access L (Semiconductor)
  • W-CDMA Wideband-Code Divition Multiple Access L
  • a High Speed Packet Access) mobile phone or a PHS (Personal Handyphone System) may be used.
  • the camera ex113 and the like are connected to the streaming server ex103 through the base station ex109 and the telephone network ex104, thereby enabling live distribution and the like.
  • the content for example, music live video
  • the streaming server ex103 streams the content data transmitted to the requested client.
  • the client include a computer ex111, a PDA ex112, a camera ex113, a mobile phone ex114, a game machine ex115, and the like that can decode the encoded data.
  • Each device that has received the distributed data decodes and reproduces the received data.
  • the encoded processing of the captured data may be performed by the camera ex113, the streaming server ex103 that performs the data transmission processing, or may be performed in a shared manner.
  • the decryption processing of the distributed data may be performed by the client, the streaming server ex103, or may be performed in a shared manner.
  • still images and / or moving image data captured by the camera ex116 may be transmitted to the streaming server ex103 via the computer ex111.
  • the encoding process in this case may be performed by any of the camera ex116, the computer ex111, and the streaming server ex103, or may be performed in a shared manner.
  • these encoding processing and decoding processing are generally performed in a computer ex111 and an LSI (Large Scale Integration) ex500 included in each device.
  • the LSI ex500 may be configured as a single chip or a plurality of chips.
  • image encoding and image decoding software is incorporated into some recording media (CD-ROM, flexible disk, hard disk, etc.) that can be read by the computer ex111 and the like, and encoding processing and decoding processing are performed using the software. May be.
  • moving image data acquired by the camera may be transmitted. The moving image data at this time is data encoded by the LSI ex500 included in the mobile phone ex114.
  • the streaming server ex103 may be a plurality of servers or a plurality of computers, and may process, record, and distribute data in a distributed manner.
  • the encoded data can be received and reproduced by the client.
  • the information transmitted by the user can be received, decrypted and reproduced by the client in real time, and even a user who does not have special rights or facilities can realize personal broadcasting.
  • the image encoding method or the image decoding method shown in the above embodiment may be used for encoding and decoding of each device constituting the content supply system.
  • FIG. 17 is a diagram illustrating the mobile phone ex114 using the image encoding method and the image decoding method described in the above embodiment.
  • the cellular phone ex114 includes an antenna ex601 for transmitting and receiving radio waves to and from the base station ex110, a video from a CCD camera, a camera unit ex603 capable of taking a still image, a video shot by the camera unit ex603, and an antenna ex601.
  • a display unit ex602 such as a liquid crystal display that displays data obtained by decoding received video and the like, a main body unit composed of a group of operation keys ex604, an audio output unit ex608 such as a speaker for outputting audio, and a voice input Audio input unit ex605 such as a microphone, recorded moving image or still image data, received e-mail data, moving image data or still image data, etc., for storing encoded data or decoded data
  • Recording media ex607 can be attached to media ex607 and mobile phone ex114 It has order of slot Ex606.
  • the recording medium ex607 stores a flash memory element, which is a kind of EEPROM, which is a nonvolatile memory that can be electrically rewritten and erased, in a plastic case such as an SD card.
  • the mobile phone ex114 has a power supply circuit ex710, an operation input control unit ex704, and an image encoding unit for a main control unit ex711 that is configured to control the respective units of the main body unit including the display unit ex602 and the operation key ex604.
  • LCD Liquid Crystal Display
  • the power supply circuit ex710 activates the camera-equipped digital mobile phone ex114 by supplying power from the battery pack to each unit. .
  • the mobile phone ex114 converts the audio signal collected by the audio input unit ex605 in the audio call mode into digital audio data by the audio processing unit ex705 based on the control of the main control unit ex711 including a CPU, a ROM, a RAM, and the like.
  • the modulation / demodulation circuit unit ex706 performs spread spectrum processing, the transmission / reception circuit unit ex701 performs digital analog conversion processing and frequency conversion processing, and then transmits the result via the antenna ex601.
  • the cellular phone ex114 amplifies the received data received by the antenna ex601 in the voice call mode, performs frequency conversion processing and analog-digital conversion processing, performs spectrum despreading processing by the modulation / demodulation circuit unit ex706, and analog audio by the voice processing unit ex705. After the data is converted, it is output via the audio output unit ex608.
  • text data of the e-mail input by operating the operation key ex604 on the main body is sent to the main control unit ex711 via the operation input control unit ex704.
  • the main control unit ex711 performs spread spectrum processing on the text data in the modulation / demodulation circuit unit ex706, performs digital analog conversion processing and frequency conversion processing in the transmission / reception circuit unit ex701, and then transmits the text data to the base station ex110 via the antenna ex601.
  • the image data captured by the camera unit ex603 is supplied to the image encoding unit ex712 via the camera interface unit ex703.
  • the image data captured by the camera unit ex603 can be directly displayed on the display unit ex602 via the camera interface unit ex703 and the LCD control unit ex702.
  • the image encoding unit ex712 is configured to include the image encoding device described in the present invention, and an encoding method using the image data supplied from the camera unit ex603 in the image encoding device described in the above embodiment. Is converted into encoded image data by compression encoding and sent to the demultiplexing unit ex708. At the same time, the mobile phone ex114 sends the sound collected by the sound input unit ex605 during imaging by the camera unit ex603 to the demultiplexing unit ex708 via the sound processing unit ex705 as digital sound data.
  • the demultiplexing unit ex708 multiplexes the encoded image data supplied from the image encoding unit ex712 and the audio data supplied from the audio processing unit ex705 by a predetermined method, and the resulting multiplexed data is a modulation / demodulation circuit unit A spectrum spread process is performed at ex706, a digital-analog conversion process and a frequency conversion process are performed at the transmission / reception circuit unit ex701, and then the signal is transmitted via the antenna ex601.
  • the received data received from the base station ex110 via the antenna ex601 is subjected to spectrum despreading processing by the modulation / demodulation circuit unit ex706, and the resulting multiplexing is obtained.
  • Data is sent to the demultiplexing unit ex708.
  • the demultiplexing unit ex708 separates the multiplexed data into a bit stream of image data and a bit stream of audio data, and a synchronization bus
  • the encoded image data is supplied to the image decoding unit ex709 via ex713 and the audio data is supplied to the audio processing unit ex705.
  • the image decoding unit ex709 is configured to include the image decoding device described in the present application, and is reproduced by decoding the bit stream of the image data with a decoding method corresponding to the encoding method described in the above embodiment.
  • Moving image data is generated and supplied to the display unit ex602 via the LCD control unit ex702, thereby displaying, for example, moving image data included in a moving image file linked to a home page.
  • the audio processing unit ex705 converts the audio data into analog audio data, and then supplies the analog audio data to the audio output unit ex608.
  • the audio data included in the moving image file linked to the home page is reproduced.
  • the digital broadcasting system also includes at least the image encoding device or the image according to the above embodiment.
  • a decoding device can be incorporated.
  • audio data, video data, or a bit stream obtained by multiplexing these data is transmitted to a communication or broadcasting satellite ex202 via radio waves.
  • the broadcasting satellite ex202 transmits a radio wave for broadcasting, and a home antenna ex204 having a satellite broadcasting receiving facility receives the radio wave, and receives a TV (receiver) ex300 or a set top box (STB) ex217.
  • the device decodes the bitstream and reproduces it.
  • the reader / recorder ex218 that reads and decodes a bitstream in which image data and audio data recorded on recording media ex215 and ex216 such as CD and DVD as recording media are multiplexed is also shown in the above embodiment. It is possible to implement an image decoding device. In this case, the reproduced video signal is displayed on the monitor ex219. Further, a configuration in which an image decoding device is mounted in a set-top box ex217 connected to a cable ex203 for cable television or an antenna ex204 for satellite / terrestrial broadcasting, and this is reproduced on the monitor ex219 of the television is also conceivable. At this time, the image decoding apparatus may be incorporated in the television instead of the set top box.
  • a car ex210 having an antenna ex205 can receive a signal from a satellite ex202 or a base station and reproduce a moving image on a display device such as a car navigation ex211 included in the car ex210.
  • the image decoding apparatus or the image encoding apparatus described in the above embodiment can also be mounted on the reader / recorder ex218 that encodes the data and records the multiplexed data as multiplexed data.
  • the reproduced video signal is displayed on the monitor ex219.
  • the recording medium ex215 on which the encoded bitstream is recorded allows other devices, systems, and the like to reproduce the video signal.
  • the other reproduction device ex212 can reproduce the video signal on the monitor ex213 using the recording medium ex214 on which the encoded bitstream is copied.
  • an image decoding device may be mounted in a set-top box ex217 connected to a cable ex203 for cable television or an antenna ex204 for satellite / terrestrial broadcasting and displayed on the monitor ex219 of the television.
  • the image decoding apparatus may be incorporated in the television instead of the set top box.
  • FIG. 20 is a diagram illustrating a television (receiver) ex300 that uses the image decoding method and the image encoding method described in the above embodiment.
  • the television ex300 obtains or outputs a bit stream of video information via the antenna ex204 or the cable ex203 that receives the broadcast, and a demodulator of the received encoded data or the generated encoding.
  • a modulation / demodulation unit ex302 that modulates data for transmission to the outside, and a multiplexing / separation unit ex303 that separates demodulated video data and audio data, or multiplexes encoded video data and audio data Is provided.
  • the television ex300 decodes each of the audio data and the video data, or encodes each information, an audio signal processing unit ex304, a signal processing unit ex306 having a video signal processing unit ex305, and the decoded audio signal. And an output unit ex309 including a display unit ex308 such as a display for displaying the decoded video signal.
  • the television ex300 includes an interface unit ex317 including an operation input unit ex312 that receives an input of a user operation.
  • the television ex300 includes a control unit ex310 that controls each unit in an integrated manner, and a power supply circuit unit ex311 that supplies power to each unit.
  • the interface unit ex317 includes a bridge ex313 connected to an external device such as a reader / recorder ex218, a slot unit ex314 for enabling recording media ex216 such as an SD card, and an external recording such as a hard disk
  • a driver ex315 for connecting to a medium, a modem ex316 for connecting to a telephone network, and the like may be included.
  • the recording medium ex216 is capable of electrically recording information by using a nonvolatile / volatile semiconductor memory element to be stored.
  • Each part of the television ex300 is connected to each other via a synchronous bus.
  • the television ex300 receives a user operation from the remote controller ex220 or the like, and demultiplexes the video data and audio data demodulated by the modulation / demodulation unit ex302 by the multiplexing / separation unit ex303 based on the control of the control unit ex310 having a CPU or the like. . Furthermore, the television ex300 decodes the separated audio data by the audio signal processing unit ex304, and the separated video data is decoded by the video signal processing unit ex305 using the decoding method described in the above embodiment. The decoded audio signal and video signal are output to the outside from the output unit ex309.
  • the television ex300 may read the encoded bitstream encoded from the recording media ex215 and ex216 such as a magnetic / optical disk and an SD card, not from broadcasting.
  • the television ex300 encodes an audio signal and a video signal and transmits the signal to the outside or to a recording medium.
  • the television ex300 receives a user operation from the remote controller ex220 or the like, and encodes an audio signal with the audio signal processing unit ex304 based on the control of the control unit ex310, and the video signal with the video signal processing unit ex305 in the above embodiment.
  • Encoding is performed using the described encoding method.
  • the encoded audio signal and video signal are multiplexed by the multiplexing / demultiplexing unit ex303 and output to the outside.
  • these signals may be temporarily stored in the buffers ex320, ex321, etc. so that the audio signal and the video signal are synchronized.
  • a plurality of buffers ex318 to ex321 may be provided as shown in the figure, or one or more buffers may be shared.
  • data may be stored in the buffer as a buffer material that prevents system overflow and underflow, for example, between the modulation / demodulation unit ex302 and the multiplexing / demultiplexing unit ex303.
  • the television ex300 In addition to acquiring audio data and video data from broadcasting and recording media, the television ex300 has a configuration for receiving AV input of a microphone and a camera, and can perform encoding processing on the data acquired from these. Good.
  • the television ex300 has been described as a configuration that can perform the above-described encoding processing, multiplexing, and external output. However, all of these processing cannot be performed, and the reception, decoding processing, and external
  • the configuration may be such that only one of the outputs is possible.
  • the decoding process or the encoding process may be performed by either the television ex300 or the reader / recorder ex218.
  • the television ex300 and the reader / recorder ex218 may be shared with each other.
  • FIG. 21 shows the configuration of the information reproducing / recording unit ex400 when data is read from or written to an optical disk.
  • the information reproducing / recording unit ex400 includes elements ex401 to ex407 described below.
  • the optical head ex401 irradiates a laser spot on the recording surface of the recording medium ex215 that is an optical disc to write information, and detects information reflected from the recording surface of the recording medium ex215 to read the information.
  • the modulation recording unit ex402 electrically drives a semiconductor laser built in the optical head ex401 and modulates the laser beam according to the recording data.
  • the reproduction demodulator ex403 amplifies the reproduction signal obtained by electrically detecting the reflected light from the recording surface by the photodetector built in the optical head ex401, separates and demodulates the signal component recorded on the recording medium ex215, and is necessary. To play back information.
  • the buffer ex404 temporarily holds information to be recorded on the recording medium ex215 and information reproduced from the recording medium ex215.
  • the disk motor ex405 rotates the recording medium ex215.
  • the servo control unit ex406 moves the optical head ex401 to a predetermined information track while controlling the rotational drive of the disk motor ex405, and performs a laser spot tracking process.
  • the system control unit ex407 controls the entire information reproduction / recording unit ex400.
  • the system control unit ex407 uses various types of information held in the buffer ex404, and generates and adds new information as necessary. This is realized by recording / reproducing information through the optical head ex401 while the unit ex403 and the servo control unit ex406 are cooperatively operated.
  • the system control unit ex407 includes, for example, a microprocessor, and executes these processes by executing a read / write program.
  • the optical head ex401 has been described as irradiating a laser spot, but it may be configured to perform higher-density recording using near-field light.
  • FIG. 22 shows a schematic diagram of a recording medium ex215 that is an optical disk.
  • Guide grooves grooves
  • address information indicating the absolute position on the disc is recorded in advance on the information track ex230 by changing the shape of the groove.
  • This address information includes information for specifying the position of the recording block ex231 which is a unit for recording data, and the recording and reproducing apparatus specifies the recording block by reproducing the information track ex230 and reading the address information. be able to.
  • the recording medium ex215 includes a data recording area ex233, an inner peripheral area ex232, and an outer peripheral area ex234.
  • the area used for recording user data is the data recording area ex233, and the inner circumference area ex232 and the outer circumference area ex234 arranged on the inner circumference or outer circumference of the data recording area ex233 are used for specific purposes other than user data recording. Used.
  • the information reproducing / recording unit ex400 reads / writes encoded audio data, video data, or encoded data obtained by multiplexing these data to / from the data recording area ex233 of the recording medium ex215.
  • an optical disk such as a single-layer DVD or BD has been described as an example.
  • the present invention is not limited to these, and an optical disk having a multilayer structure and capable of recording other than the surface may be used.
  • it has a structure that performs multi-dimensional recording / reproduction, such as recording information using light of various colors at the same location on the disk, and recording different information layers from various angles. It may be an optical disk.
  • the car ex210 having the antenna ex205 can receive data from the satellite ex202 and the like, and the moving image can be reproduced on a display device such as the car navigation ex211 that the car ex210 has.
  • the configuration of the car navigation ex211 may include a configuration in which a GPS receiving unit is added to the configuration illustrated in FIG. 20, and the same may be applied to the computer ex111, the mobile phone ex114, and the like.
  • the transmission / reception terminal having both an encoder and a decoder there are three types of terminals such as the mobile phone ex114, such as a transmitting terminal having only an encoder and a receiving terminal having only a decoder, as in the television ex300. The implementation form of can be considered.
  • the image encoding method or the image decoding method described in the above embodiment can be used in any of the above-described devices and systems, and by doing so, the effects described in the above embodiment can be obtained. be able to.
  • FIG. 23 shows a configuration of an LSI ex500 that is made into one chip.
  • the LSI ex500 includes elements ex501 to ex509 described below, and each element is connected via a bus ex510.
  • the power supply circuit unit ex505 starts up to an operable state by supplying power to each unit when the power supply is in an on state.
  • the LSI ex500 when performing the encoding process, inputs AV signals from the microphone ex117, the camera ex113, and the like by the AV I / Oex 509 based on the control of the control unit ex501 having the CPU ex502, the memory controller ex503, the stream controller ex504, and the like. Accept.
  • the input AV signal is temporarily stored in an external memory ex511 such as SDRAM.
  • the accumulated data is appropriately divided into a plurality of times according to the processing amount and the processing speed, and sent to the signal processing unit ex507.
  • the signal processing unit ex507 performs encoding of the audio signal and / or encoding of the video signal.
  • the encoding process of the video signal is the encoding process described in the above embodiment.
  • the signal processing unit ex507 further performs processing such as multiplexing the encoded audio data and the encoded video data according to circumstances, and outputs the result from the stream I / Oex 506 to the outside.
  • the output bit stream is transmitted to the base station ex107 or written to the recording medium ex215. It should be noted that data should be temporarily stored in the buffer ex508 so as to be synchronized when multiplexing.
  • the LSI ex500 is obtained by reading from the encoded data obtained from the base station ex107 by the stream I / Oex 506 or the recording medium ex215 based on the control of the control unit ex501.
  • the encoded data is temporarily stored in the memory ex511 or the like.
  • the accumulated data is divided into a plurality of times as appropriate according to the processing amount and the processing speed and sent to the signal processing unit ex507.
  • the signal processing unit ex507 performs decoding of audio data and / or decoding of video data.
  • the decoding process of the video signal is the decoding process described in the above embodiment.
  • each signal may be temporarily stored in the buffer ex508 or the like so that the decoded audio signal and the decoded video signal can be reproduced in synchronization.
  • the decoded output signal is output from each output unit such as the mobile phone ex114, the game machine ex115, and the television ex300, through the memory ex511 and the like as appropriate.
  • the memory ex511 has been described as an external configuration of the LSI ex500.
  • a configuration included in the LSI ex500 may be used.
  • the buffer ex508 is not limited to one, and a plurality of buffers may be provided.
  • the LSI ex500 may be made into one chip or a plurality of chips.
  • LSI LSI
  • IC system LSI
  • super LSI ultra LSI depending on the degree of integration
  • the method of circuit integration is not limited to LSI, and may be realized by a dedicated circuit or a general-purpose processor.
  • An FPGA that can be programmed after manufacturing the LSI or a reconfigurable processor that can reconfigure the connection and setting of circuit cells inside the LSI may be used.
  • the present invention has an effect of suppressing an increase in calculation amount and sufficiently suppressing deterioration in image quality, and can be used for an image encoding device that encodes a still image and a moving image.
  • the present invention can be used for various AV devices such as a mobile phone, a digital camera, a BD recorder, and a digital television.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

 非圧縮の原画像を符号化する画像符号化方法であって、原画像を複数のブロックに分割し(S110)、複数のブロックの1つである対象ブロックの符号化条件を決定し(S120)、決定した符号化条件に従って、対象ブロックを符号化し(S130)、対象ブロックの符号化条件の決定(S120)では、対象ブロックの少なくとも一部の領域の複雑度を示す値である第1空間アクティビティ値を算出し(S210)、算出した第1空間アクティビティ値と予め定められた第1閾値とを比較し(S220)、第1空間アクティビティ値が第1閾値より小さい場合、小分割用の第1符号化条件を、対象ブロックの符号化条件として決定し(S230)、第1空間アクティビティ値が第1閾値以上である場合、大分割用の第2符号化条件を、対象ブロックの符号化条件として決定する(S240)。

Description

画像符号化方法及び画像符号化装置
 本発明は、画像符号化方法及び画像符号化装置に関し、特に、ブロック毎に符号化条件を決定し、決定した符号化条件に従って対象ブロックを符号化する画像符号化方法及び画像符号化装置に関する。
 一般的に、ISO/IEC14496-2パート10国際標準規格などの画像/動画像符号化アルゴリズムの多くが、ブロック分割方法を活用している(非特許文献1参照)。ブロック分割方法において、非圧縮原画ピクチャは、複数のM×Nの符号化単位に分割される。ここで、Mは、幅におけるサンプル数を表し、Nは高さにおけるサンプル数を表す。M及びNの値は、例えば、それぞれ16である。
 得られた符号化単位は、次から次へ順に符号化される。例えばISO/IEC14496-2パート10国際標準規格のような動画像符号化アルゴリズムの多くにおいて、符号化単位は、通常「マクロブロック」と呼ばれる。説明を分かりやすくするため、画像/動画像符号化アルゴリズムにおけるM×Nの符号化単位を指す用語として、以降「マクロブロック」を用いる。
 各マクロブロックは、複数のK×Lのサブマクロブロックへとさらに分割される。ここで、Kは幅におけるサンプル数を表し、Lは高さにおけるサンプル数を表す。K及びLの値は、例えば、それぞれ8である。得られたサブマクロブロックに対し、符号化プロセスが次から次へ順に実行されるが、独立的に実行される場合もある。サブマクロブロック単位で符号化するためのサブマクロブロックの分割例には、変換ブロックサイズ、イントラ予測ブロックサイズ、動き補償ブロックサイズなどがある。マクロブロックを符号化する際に、異なるサイズのサブマクロブロックに分割してそれぞれ異なる符号化を行うこともある。
 動画像符号化アルゴリズムの大多数は、複数のサブマクロブロック符号化ツールを切り替え可能にする柔軟性を提供する。例えば、ISO/IEC14496-2パート10国際標準規格のハイプロファイルは、4×4の変換ブロックサイズと8×8の変換ブロックサイズとの間でマクロブロックレベルの切り替えを可能にしている(特許文献1参照)。
特開2007-110568号公報
ISO/IEC14496-2 パート10
 しかしながら、上記従来技術では、演算量の増加と画質の劣化とを十分に抑制することができないという課題がある。
 例えば、最適なサブマクロブロック符号化ツールを選択するために、ある従来技術では、考えうる全てのサブマクロブロック符号化プロセスを実行して、ある符号化コストを算出する網羅的な選択プロセスが実行される。その後、符号化コストが最小となるサブマクロブロック符号化ツールが、最適なサブマクロブロック符号化ツールとして選択され用いられる。当該従来技術において、符号化コストは、レート成分(符号化情報を格納するために必要なビット量)と歪み成分(再構築サンプルと非圧縮原画サンプル間の差分量)とからなる。
 しかしながら、この方法では、通常、リンギングアーチファクトやブロッキングアーチファクトのような符号化アーチファクトが生成されることが、符号化コストに反映されないという課題がある。それゆえ、選択されたサブマクロブロック符号化ツールを用いても最高の画質を得られない場合がある。
 リンギングアーチファクト及びブロッキングアーチファクトとは、圧縮画像/動画像において目立つアーチファクトである。特に、高い圧縮率を実現するISO/IEC14496-2パート10国際標準規格のような画像/動画像符号化アルゴリズムにおいては顕著である。
 圧縮動画像の画質を改善するためには、動画像の符号化前、符号化中、復号後のいずれかのタイミングで、これらのアーチファクトを削減する必要がある。動画像の符号化時にそのようなアーチファクトを削減するには、視覚的に最適なサブマクロブロック符号化ツールを選択することが有益である。
 しかしながら、従来の、符号化レートと歪みとの関係に基づいた符号化コストに基づく網羅的な選択プロセスを用いて、実行するサブマクロブロック符号化ツールを選択する技術には、人間の視覚システムに対する符号化効果を考慮することも予測することもなく符号化コストを算出しているという課題がある。それゆえ、決定されたサブマクロブロック符号化ツールは、リンギングアーチファクトやブロッキングアーチファクトを効率的に削減するものではない。しかも、従来技術における網羅的な選択プロセスは、大量の演算が符号化器に必要とされている。
 そこで、本発明は、画質の劣化を抑制することができる画像符号化方法及び画像符号化装置を提供することを目的とする。
 上述の課題を解決するために、本発明の一態様に係る画像符号化方法は、原画像を符号化する画像符号化方法であって、前記原画像を複数のブロックに分割し、前記複数のブロックの1つである対象ブロックの符号化条件を決定し、決定した符号化条件に従って、前記対象ブロックを符号化し、前記対象ブロックの符号化条件の決定では、前記対象ブロックの複雑度を示す値である空間アクティビティ値に基づいて、前記対象ブロックの符号化条件を決定し、前記空間アクティビティ値に基づいた符号化条件の決定では、前記対象ブロックの少なくとも一部の領域の複雑度を示す値である第1空間アクティビティ値を算出し、算出した第1空間アクティビティ値と予め定められた第1閾値とを比較し、前記第1空間アクティビティ値が前記第1閾値より小さい場合、前記対象ブロックを第1分割サイズのサブブロック毎に符号化することを示す第1符号化条件を、前記対象ブロックの符号化条件として決定し、前記第1空間アクティビティ値が前記第1閾値以上である場合、前記対象ブロックを、前記第1分割サイズより大きい第2分割サイズのサブブロック毎に符号化することを示す第2符号化条件を、前記対象ブロックの符号化条件として決定する。
 これにより、対象ブロックの一部が平坦な画像である場合には、対象ブロックを小さい分割サイズのサブブロック毎に符号化するように符号化条件(小分割用の符号化条件)を決定するので、平坦な画像にリンギングアーチファクトやブロッキングアーチファクトが発生するのを抑制することができる。したがって、画質の劣化を抑制することができる。また、複雑な画像である場合には歪みが発生したとしても目立たないので、対象ブロックが複雑な画像である場合には、対象ブロックを大きい分割サイズのサブブロック毎に符号化するように符号化条件(大分割用の符号化条件)を決定することで、主観的な画質を劣化させることなく、符号化効率を高めることができる。
 また、前記第1空間アクティビティ値の算出では、前記対象ブロックを少なくとも含む拡張ブロックに基づいて、前記対象ブロックの少なくとも一部の領域をそれぞれが含む複数の小ブロッククラスターを形成し、前記複数の小ブロッククラスターのそれぞれの複雑度を示す値である小ブロッククラスター空間アクティビティ値を算出し、算出した複数の小ブロッククラスター空間アクティビティ値のうち最小の値を、前記第1空間アクティビティ値として算出してもよい。
 これにより、対象ブロック内の複数の領域の空間アクティビティを算出し、算出した複数の空間アクティビティ値の最小値と閾値とを比較、すなわち、対象ブロック内の複数の領域のうち最も平坦な領域が、歪みが目立ちやすいかどうかを判定することができる。そして、歪みが目立ちやすい領域を含んでいる場合に、小分割用の符号化条件を選択するので、画質の劣化を抑制することができる。
 また、前記符号化条件の決定では、さらに、前記対象ブロックを複数の大ブロックに分割し、前記複数の大ブロックのそれぞれの複雑度を示す値である大ブロック空間アクティビティ値を算出し、算出した複数の大ブロック空間アクティビティ値のうち最大の値を、第2空間アクティビティ値として算出し、算出した第2空間アクティビティ値と予め定められた第2閾値とを比較し、前記第2空間アクティビティ値が前記第2閾値以下である場合、前記第2符号化条件を前記対象ブロックの符号化条件として決定し、前記第2空間アクティビティ値が前記第2閾値より大きい場合、前記第1空間アクティビティ値の前記算出及び前記比較を行うことで、前記対象ブロックの符号化条件を決定してもよい。
 これにより、対象ブロックが平坦であり、情報量の少ないブロックである場合に、大分割用の符号化条件に決定するので、符号化効率を高めることができる。
 また、前記拡張ブロックは、前記対象ブロックより大きくてもよい。
 これにより、対象ブロックだけではなく、対象ブロックの周囲の画像情報も利用して、対象ブロックに平坦な領域が含まれるか否かを判定するので、画質の劣化の抑制と、符号化効率の向上とを適切に達成することができる。
 また、前記対象ブロックの複雑度を示す値は、前記対象ブロックに含まれる複数のサンプルのサンプル値の変動を示す値であってもよい。
 これにより、サンプル値を用いた算出方法により、ブロックの空間アクティビティ値を容易に算出することができる。
 また、前記符号化条件の決定では、さらに、前記対象ブロックの動きに基づいて、前記対象ブロックの符号化条件を決定し、前記動きに基づいた符号化条件の決定では、前記対象ブロックの動きベクトルを算出し、算出した動きベクトルの絶対値と予め定められた第3閾値とを比較し、前記動きベクトルの絶対値が前記第3閾値より大きい場合、前記第2符号化条件を前記対象ブロックの符号化条件として決定し、前記動きベクトルの絶対値が前記第3閾値以下である場合、前記空間アクティビティ値に基づいた符号化条件の決定結果に従って、前記対象ブロックの符号化条件を決定してもよい。
 これにより、動きが大きい場合は、歪みが広がったとしても目立ちにくいので、動きが大きい場合に大分割用の符号化条件に決定することで、主観的な画質の劣化を抑制しつつ、符号化効率を高めることができる。
 また、前記動きに基づいた符号化条件の決定では、さらに、算出した動きベクトルを用いて動き補償を行うことで、前記対象ブロックの予測ブロックを生成し、前記対象ブロックと前記予測ブロックと前記動きベクトルとを用いて、前記対象ブロックの符号化効率を示すコスト値を算出し、前記動きベクトルの絶対値が前記第3閾値以下である場合、前記コスト値と予め定められた第4閾値との比較を行い、前記コスト値が前記第4閾値より小さい場合、前記第2符号化条件を前記対象ブロックの符号化条件として決定し、前記コスト値が前記第4閾値以上である場合、前記空間アクティビティ値に基づいた符号化条件の決定結果に従って、前記対象ブロックの符号化条件を決定してもよい。
 これにより、コストが小さい場合に大分割用の符号化条件を決定することで、符号化効率をより高めることができる。
 また、前記コスト値は、前記対象ブロックと前記予測ブロックとの差分絶対値和に基づいて算出されてもよい。
 これにより、サンプル値を用いた算出方法により、コスト値を容易に算出することができる。
 また、前記第1分割サイズ又は前記第2分割サイズのサブブロックは、イントラ予測、動き補償、及び、周波数変換の少なくとも1つの処理が実行される処理単位であってもよい。
 また、本発明の一態様に係る画像符号化方法は、原画像を符号化する画像符号化方法であって、前記原画像を複数のブロックに分割し、前記複数のブロックの1つである対象ブロックの符号化条件を決定し、決定した符号化条件に従って、前記対象ブロックを符号化し、前記対象ブロックの符号化条件の決定では、前記対象ブロックの動きベクトルを算出し、算出した動きベクトルの絶対値と予め定められた閾値とを比較し、前記動きベクトルの絶対値が前記閾値以下である場合、前記対象ブロックを第1分割サイズのサブブロック毎に符号化することを示す第1符号化条件を、前記対象ブロックの符号化条件として決定し、前記動きベクトルの絶対値が前記閾値より大きい場合、前記対象ブロックを、前記第1分割サイズより大きい第2分割サイズのサブブロック毎に符号化することを示す第2符号化条件を前記対象ブロックの符号化条件として決定してもよい。
 これにより、動きが大きい場合は、歪みが広がったとしても目立ちにくいので、動きが大きい場合に大分割用の符号化条件に決定することで、主観的な画質の劣化を抑制しつつ、符号化効率を高めることができる。また、動きが小さい場合は、歪みが目立ちやすいので、小分割用の符号化条件に決定することで、画質の劣化を抑制することができる。
 なお、本発明は、画像符号化方法として実現できるだけではなく、当該画像符号化方法に含まれる処理を実現する処理部を備える画像符号化装置として実現することもできる。また、画像符号化方法に含まれる処理をコンピュータに実行させるプログラムとして実現してもよい。さらに、当該プログラムを記録したコンピュータ読み取り可能なCD-ROM(Compact Disc-Read Only Memory)などの記録媒体、並びに、当該プログラムを示す情報、データ又は信号として実現してもよい。そして、それらプログラム、情報、データ及び信号は、インターネットなどの通信ネットワークを介して配信してもよい。
 また、上記の画像符号化装置を構成する構成要素の一部又は全部は、1個のシステムLSI(Large Scale Integration:大規模集積回路)から構成されていてもよい。システムLSIは、複数の構成部を1個のチップ上に集積して製造された超多機能LSIであり、具体的には、マイクロプロセッサ、ROM及びRAM(Random Access Memory)などを含んで構成されるコンピュータシステムである。
 本発明によれば、演算量の増加を抑制するとともに、画質の劣化を十分に抑制することができる。
図1は、本発明の実施の形態1に係る画像符号化装置の構成の一例を示すブロック図である。 図2は、本発明の実施の形態1に係る符号化条件決定部の構成の一例を示すブロック図である。 図3は、本発明の実施の形態1に係る画像符号化装置による、リンギングアーチファクトの削減効果を説明するための模式図である。 図4は、本発明の実施の形態1に係る圧縮動画像ビットストリームにおける符号化ツールインジケータ信号の考えうる位置を説明するための模式図である。 図5は、本発明の実施の形態1に係る画像符号化装置の動作の一例を示すフローチャートである。 図6は、本発明の実施の形態1に係る符号化条件決定部の動作の一例を示すフローチャートである。 図7は、本発明の実施の形態2に係る画像符号化装置の構成の一例を示すブロック図である。 図8は、本発明の実施の形態2に係るピクチャサンプルの形成例を示す模式図である。 図9は、本発明の実施の形態2に係る画像符号化装置の空間アクティビティ条件評価部の構成の一例を示すブロック図である。 図10は、本発明の実施の形態2に係る画像符号化装置の動きアクティビティ条件評価部の構成の一例を示すブロック図である。 図11は、本発明の実施の形態2に係る画像符号化装置の動作の一例を示すフローチャートである。 図12は、本発明の実施の形態2に係る空間アクティビティ条件評価部の動作の一例を示すフローチャートである。 図13は、本発明の実施の形態2に係る空間アクティビティ条件評価部の詳細な一例を示すフローチャートである。 図14は、本発明の実施の形態2に係る動きアクティビティ条件評価部の動作の一例を示すフローチャートである。 図15は、本発明の実施の形態の変形例に係る符号化条件決定部の動作の一例を示すフローチャートである。 図16は、コンテンツ配信サービスを実現するコンテンツ供給システムの全体構成の一例を示す模式図である。 図17は、携帯電話の外観を示す図である。 図18は、携帯電話の構成例を示すブロック図である。 図19は、デジタル放送用システムの全体構成の一例を示す模式図である。 図20は、テレビの構成例を示すブロック図である。 図21は、光ディスクである記録メディアに情報の読み書きを行う情報再生記録部の構成例を示すブロック図である。 図22は、光ディスクである記録メディアの構造例を示す図である。 図23は、各実施の形態に係る画像符号化方法及び画像復号方法を実現する集積回路の構成例を示すブロック図である。
 以下では、本発明に係る画像符号化方法及び画像符号化装置の実施の形態について、図面を用いて詳細に説明する。
 (実施の形態1)
 本発明の実施の形態1に係る画像符号化方法は、原画像を符号化する符号化方法であって、原画像を複数のブロックに分割し、複数のブロックの1つである対象ブロックの符号化条件を決定し、決定した符号化条件に従って、対象ブロックを符号化する。そして、対象ブロックの符号化条件の決定では、対象ブロックの複雑度を示す値である空間アクティビティ値に基づいて、対象ブロックの符号化条件を決定する。
 具体的には、対象ブロックの少なくとも一部の領域の複雑度を示す値である第1空間アクティビティ値を算出し、第1空間アクティビティ値と予め定められた第1閾値とを比較する。そして、第1空間アクティビティ値が第1閾値より小さい場合、対象ブロックを第1分割サイズのサブブロック毎に符号化することを示す第1符号化条件を、対象ブロックの符号化条件として決定する。第1空間アクティビティ値が第1閾値以上である場合、対象ブロックを、第1分割サイズより大きい第2分割サイズのサブブロック毎に符号化することを示す第2符号化条件を、前記対象ブロックの符号化条件として決定する。
 以下では、まず、本発明の実施の形態1に係る画像符号化方法を実行する画像符号化装置について説明する。
 図1は、本発明の実施の形態1に係る画像符号化装置100の構成の一例を示すブロック図である。画像符号化装置100は、非圧縮の原画像201を符号化することで、符号化画像205を生成する。
 図1に示すように、画像符号化装置100は、分割部110と、符号化条件決定部120と、符号化部130とを備える。なお、画像符号化装置100は、原画像201をブロック単位で符号化する。
 分割部110は、入力される原画像201を複数のブロックに分割する。例えば、原画像201は、動画像に含まれる1枚のピクチャ、又は、1枚の静止画である。複数のブロックは、例えば、複数のマクロブロックである。具体的には、マクロブロックは、一例として、16×16の輝度値サンプルと、色成分毎に8×8の色度値サンプルとを含んでいる。
 分割された複数のブロックの1つである対象ブロック203は、符号化部130に出力される。また、対象ブロック203を少なくとも含む拡張ブロック202が符号化条件決定部120に出力される。
 なお、拡張ブロック202は、対象ブロック203と同じ大きさ、すなわち、拡張ブロック202は、対象ブロック203であってもよい。好ましくは、後述するように、拡張ブロック202は、対象ブロック203を含み、対象ブロック203より大きいサイズのブロックである。
 例えば、拡張ブロック202は、対象マクロブロックを少なくとも含む拡張マクロブロックであり、24×24の輝度値サンプルと、色成分毎に12×12の色度値サンプルとを含んでいる。
 符号化条件決定部120は、複数のブロックの1つである対象ブロックの符号化条件204を決定する。言い換えると、符号化条件決定部120は、ブロック毎に符号化条件(符号化ツール)を決定する。符号化条件決定部120の詳細な構成については、後で図2を用いて説明する。
 符号化部130は、符号化条件決定部120によって決定された符号化条件204に従って、対象ブロック203を符号化する。具体的には、符号化部130は、分割部110から順次入力される対象ブロック203を符号化することで、符号化画像205を生成する。
 図2は、本発明の実施の形態1に係る符号化条件決定部120の構成の一例を示すブロック図である。符号化条件決定部120は、対象ブロック203の複雑度を示す値である空間アクティビティ値に基づいて、対象ブロック203の符号化条件を決定する。
 なお、対象ブロック203の複雑度を示す値である空間アクティビティ値は、対象ブロック203のサンプル値の変動を示す値である。言い換えると、空間アクティビティ値は、複数のサンプル値の集合であるブロックの複雑度を示す値であり、当該ブロックに含まれる複数のサンプル値の変動を示す値である。
 例えば、空間アクティビティ値は、複数のサンプル値の分散である。あるいは、空間アクティビティ値は、複数のサンプル値の平均値と各サンプル値との差分絶対値の和でもよく、又は、隣接するサンプル間の差分絶対値の和でもよい。
 あるブロックの空間アクティビティ値が小さいということは、当該ブロックが平坦な画像、例えば、輝度値が一定の画像(コンピュータグラフィックス画像など)であることを意味する。逆に、あるブロックの空間アクティビティ値が大きいということは、当該ブロックが複雑な画像、例えば、カメラなどで撮影された自然画像であることを意味する。
 図2に示すように、符号化条件決定部120は、空間アクティビティ値算出部121と、比較部122と、決定部123とを備える。
 空間アクティビティ値算出部121は、対象ブロック203の少なくとも一部の領域の複雑度を示す値である第1空間アクティビティ値211を算出する。例えば、空間アクティビティ値算出部121は、対象ブロック203を含む拡張ブロック202に基づいて、複数の小ブロッククラスターを形成する。複数の小ブロッククラスターのそれぞれは、対象ブロック203の一部の領域を含んでいる。
 空間アクティビティ値算出部121は、複数の小ブロッククラスターのそれぞれの複雑度を示す小ブロッククラスター空間アクティビティ値を算出する。そして、空間アクティビティ値算出部121は、算出した複数の複数の小ブロッククラスター空間アクティビティ値のうち最小の値を、第1空間アクティビティ値211として算出する。
 比較部122は、空間アクティビティ値算出部121によって算出された第1空間アクティビティ値211と、予め定められた第1閾値とを比較する。そして、比較部122は、第1空間アクティビティ値211と第1閾値とのいずれが小さいかを示す比較結果212を決定部123に出力する。
 決定部123は、比較結果212に基づいて、対象ブロック203の符号化条件を決定する。具体的には、第1空間アクティビティ値211が第1閾値より小さい場合、対象ブロック203を第1分割サイズのサブブロック毎に符号化することを示す第1符号化条件を、対象ブロック203の符号化条件として決定する。
 第1符号化条件のサブブロックは、イントラ予測、動き補償、及び、周波数変換の少なくとも1つの処理が実行される処理単位である。例えば、第1符号化条件のサブブロックは、4×4のサンプル値、又は、8×8のサンプル値から構成される。対象ブロックの符号化条件として第1符号化条件が決定された場合、符号化部130は、対象ブロックを第1符号化条件が示す分割サイズのサブブロックに分割し、分割したサブブロック毎にイントラ予測などの処理を行うことで、対象ブロックを符号化する。
 また、決定部123は、第1空間アクティビティ値211が第1閾値以上である場合、対象ブロック203を、第1分割サイズより大きい第2分割サイズのサブブロック毎に符号化することを示す第2符号化条件を対象ブロック203の符号化条件として決定する。第2符号化条件のサブブロックは、イントラ予測、動き補償、及び、周波数変換の少なくとも1つの処理が実行される処理単位である。例えば、第2符号化条件のサブブロックは、16×16のサンプル値から構成される。対象ブロックの符号化条件として第2符号化条件が決定された場合、符号化部130は、対象ブロックを第2符号化条件が示す分割サイズのサブブロックに分割し、分割したサブブロック毎にイントラ予測などの処理を行うことで、対象ブロックを符号化する。なお、第2符号化条件のサブブロックのサイズは、対象ブロックのサイズと同じであってもよい。
 以上の構成に示すように、本発明の実施の形態1に係る画像符号化装置100は、第1空間アクティビティ値が第1閾値より小さい場合は、対象ブロックを小さい分割サイズのサブブロック毎に符号化するような符号化条件を決定する。また、画像符号化装置100は、第1空間アクティビティ値が第1閾値以上である場合は、対象ブロックを大きい分割サイズのサブブロック毎に符号化するような符号化条件を決定する。
 つまり、画像符号化装置100は、対象ブロックの一部が平坦な画像である場合には、対象ブロックを小さい分割サイズのサブブロックに分割し、対象ブロックが複雑な画像である場合には、対象ブロックを大きい分割サイズのサブブロックに分割するように、符号化条件を決定する。これにより、平坦な画像にリンギングアーチファクトやブロッキングアーチファクトが発生するのを抑制することができる。
 図3は、本発明の実施の形態1に係る画像符号化装置100による、リンギングアーチファクトの削減効果を説明するための模式図である。
 図3の(a)に示すように、8×8のブロックの左隅に歪みがある場合において、8×8の分割サイズで符号化処理を行った場合、図3の(b)に示すように、ブロック全体に歪みが広がってしまう。8×8のブロックを符号化する場合、8×8の分割サイズで符号化した方が、符号化効率が良くなるので、従来であれば、8×8の分割サイズが選択される。したがって、従来技術では、ブロック全体に歪みが広がり、画質の劣化を抑制することができない。
 これに対して、4×4の分割サイズで符号化処理を行った場合、図3の(c)に示すように、歪みが広がる範囲が左下の4×4のブロックに限られる。したがって、図3の(b)に比べて、画質の劣化を抑制することができる。
 本発明の実施の形態1に係る画像符号化装置100は、対象ブロックの少なくとも一部の領域の複雑度を示す値である第1空間アクティビティ値が第1閾値より小さい場合には、小さいサイズの分割サイズ、例えば、4×4の分割サイズを選択する。言い換えると、画像符号化装置100は、対象ブロックの一部に平坦な領域が含まれている場合には、小さいサイズの分割サイズを選択する。したがって、本発明の実施の形態1に係る画像符号化装置100によれば、図3の(c)に示すように、画質の劣化を抑制することができる。
 なお、符号化条件決定部120が決定した符号化条件は、図4に示すように、ピクチャ単位、スライス単位、及び、マクロブロック単位のいずれで管理されてもよい。図4は、圧縮画像/動画像ビットストリームにおける、符号化ツールインジケータの考えうる位置を説明するための図である。
 選択された符号化ツールは、マクロブロックグループ毎に一括してインジケータに示されてもよい。ISO/IEC14496-2パート10国際標準規格の場合の一括インジケータの例として、ピクチャヘッダやスライスヘッダが挙げられる。一方、例えば、ISO/IEC14496-2パート10国際標準規格の場合のマクロブロックヘッダに、各マクロブロック用に選択された符号化ツールが示されてもよい。
 続いて、本発明の実施の形態1に係る画像符号化装置100が実行する画像符号化方法について、図5及び図6を用いて説明する。
 図5は、本発明の実施の形態1に係る画像符号化装置100の動作の一例を示すフローチャートである。
 まず、画像符号化装置100に原画像が入力されると、分割部110は、入力された原画像を複数のブロックに分割する(S110)。
 次に、符号化条件決定部120は、対象ブロックの符号化条件を決定する(S120)。具体的な処理については、図6を用いて後で説明する。
 最後に、符号化部130は、決定された符号化条件に従って、対象ブロックを符号化する(S130)。
 なお、対象ブロックの符号化条件の決定(S120)と対象ブロックの符号化(S130)とは、処理対象のブロックがある場合、繰り返される。つまり、原画像を分割することで生成された複数のブロックのうち、符号化処理が終わっていないブロックを新たな対象ブロックとして、符号化条件の決定と符号化とが繰り返される。
 図6は、本発明の実施の形態1に係る符号化条件決定部120の動作の一例を示すフローチャートである。
 まず、空間アクティビティ値算出部121は、対象ブロックの少なくとも一部の領域の複雑度を示す値である第1空間アクティビティ値を算出する(S210)。具体的には、まず、空間アクティビティ値算出部121は、対象ブロックを含む拡張ブロックに基づいて、複数の小ブロッククラスターを形成する。そして、空間アクティビティ値算出部121は、複数の小ブロッククラスターのそれぞれに対する空間アクティビティ値である小ブロッククラスター空間アクティビティ値を算出する。空間アクティビティ値算出部121は、算出した複数の小ブロッククラスター空間アクティビティ値のうち、最小の空間アクティビティ値を第1空間アクティビティ値として算出する。
 次に、比較部122は、第1空間アクティビティ値と第1閾値とを比較する(S220)。具体的には、比較部122は、第1空間アクティビティ値が第1閾値より小さいか否かを判定する。
 第1空間アクティビティ値が第1閾値より小さい場合(S220でYes)、決定部123は、対象ブロックの符号化条件として、小分割用の第1符号化条件を決定する(S230)。つまり、決定部123は、対象ブロックを第1分割サイズのサブブロック毎に符号化することを示す第1符号化条件を決定する。
 また、第1空間アクティビティ値が第1閾値以上である場合(S220でNo)、決定部123は、対象ブロックの符号化条件として、大分割用の第2符号化条件を決定する(S240)。つまり、決定部123は、対象ブロックを第2分割サイズのサブブロック毎に符号化することを示す第2符号化条件を決定する。
 以上のようにして、本発明の実施の形態1に係る画像符号化方法によれば、対象ブロックの一部が平坦な画像である場合には、対象ブロックを小さい分割サイズのサブブロックに分割し、対象ブロックが複雑な画像である場合には、対象ブロックを大きい分割サイズのサブブロックに分割するように、符号化条件を決定する。これにより、平坦な画像にリンギングアーチファクトやブロッキングアーチファクトが発生するのを抑制することができる。このように、歪みが目立たない場合には、大きい分割サイズの符号化条件を決定することで、圧縮率を高めることができるとともに、歪みが目立つ場合には、小さい分割サイズの符号化条件を決定することで、画質の劣化を抑制することができる。
 (実施の形態2)
 本発明の実施の形態2に係る画像符号化方法は、実施の形態1に示すような空間アクティビティ条件の評価だけでなく、動きアクティビティ条件の評価を行い、評価結果に基づいて、対象ブロックの符号化条件を決定することを特徴とする。また、空間アクティビティ条件の評価については、対象ブロックに含まれる複数の大ブロックの空間アクティビティと、対象ブロックを含む拡張ブロックに含まれる複数の小ブロッククラスターの空間アクティビティとを評価する。
 以下では、まず、本発明の実施の形態2に係る画像符号化方法を実行する画像符号化装置について説明する。
 図7は、本発明の実施の形態2に係る画像符号化装置300の構成の一例を示すブロック図である。画像符号化装置300は、サンプル抽出部310と、符号化条件決定部320と、符号化部330とを備える。
 サンプル抽出部310は、本発明に係る分割部の一例であり、原画像を複数のブロックに分割する。具体的には、サンプル抽出部310は、入力画像Vinとして処理対象の原画ピクチャ402を取得し、取得した原画ピクチャ402を複数のブロックに分割する。そして、サンプル抽出部310は、複数のブロックの1つである対象ブロックとして、M×N配列の原画サンプル404を出力する。さらに、サンプル抽出部310は、対象ブロックを含む拡張ブロックとしてO×P配列の原画サンプル403を抽出して出力する。
 例えば、O及びPの値は、それぞれ24であり、M及びNの値は、それぞれ16である。O×P配列の原画サンプル403は、図8に示されるように、対象マクロブロックを囲み、かつ、対象マクロブロック内のM×Nサンプルの全てを含む。OがMと同数であり、かつPがNと同数であるときは、原画サンプル403は、原画サンプル404と同じである。すなわち、拡張マクロブロックは、対象マクロブロックと同じであってもよい。
 符号化条件決定部320は、空間アクティビティ条件評価部321と、予測タイプ評価部322と、スイッチ部323と、動きアクティビティ条件評価部324と、ORゲート部325とを備える。
 空間アクティビティ条件評価部321は、対象ブロックの複雑度を示す値である空間アクティビティ値に基づいて、対象ブロックの符号化条件を決定する。具体的には、空間アクティビティ条件評価部321は、抽出されたO×P配列の原画サンプル403を取得し、入力原画サンプルの空間アクティビティ値を評価する。そして、空間アクティビティ条件評価部321は、「小分割用符号化ツール」と「大分割用符号化ツール」とのうちいずれが、対象マクロブロックを符号化するために符号化部330によって用いられるべきかを示す符号化ツール決定信号405を出力する。
 符号化ツール決定信号405は、例えば、2進数の値であり、0は「小分割用符号化ツール」を表し、1は「大分割用符号化ツール」を表す。なお、「小分割用符号化ツール」は、第1符号化条件に従った符号化ツールの一例であり、対象マクロブロックを第1分割サイズのサブブロックに分割するための符号化ツールである。また、「大分割用符号化ツール」は、第2符号化条件に従った符号化ツールの一例であり、対象マクロブロックを第2分割サイズのサブブロックに分割するための符号化ツールである。
 空間アクティビティ条件評価部321を、図9においてさらに詳細に説明する。図9は、本発明の実施の形態2に係る空間アクティビティ条件評価部321の構成の一例を示すブロック図である。空間アクティビティ条件評価部321は、図7にも示したように、拡張マクロブロックである原画サンプル403が入力され、符号化ツール決定信号405を出力する。
 図9に示すように、空間アクティビティ条件評価部321は、大ブロック分割部501と、大ブロック空間アクティビティ値算出部502と、最大値算出部503と、空間アクティビティ値比較部504と、小ブロッククラスター形成部505と、小ブロッククラスター空間アクティビティ値算出部506と、最小値算出部507と、空間アクティビティ値比較部508と、符号化ツール決定部509とを備える。
 大ブロック分割部501は、サンプル抽出部310によって抽出されたO×P配列の原画サンプル403を、入力サンプルOinとして取得する。そして、大ブロック分割部501は、対象マクロブロックに相当する部分であるM×N部分配列を、複数のG×Hの大ブロックに分割し、これらの大ブロックサンプル601を出力する。
 大ブロックサンプル601の例を図8に示す。図8に示す例では、G及びHは8であり、16×16の対象マクロブロックが、4つの8×8の大ブロックサンプル601に分割される。
 大ブロック空間アクティビティ値算出部502は、複数の大ブロックサンプル601を受け取り、受け取った複数の大ブロックサンプル601のそれぞれの空間アクティビティ値を算出する。なお、このとき算出される空間アクティビティ値は、本発明に係る大ブロックの複雑度を示す値である大ブロック空間アクティビティ値の一例である。
 そして、大ブロック空間アクティビティ値算出部502は、M×N配列の原画サンプル(対象マクロブロック)に対応する大ブロック空間アクティビティ値602を全て含む組を出力する。例えば、図8の例では、大ブロック空間アクティビティ値算出部502は、4つの大ブロック空間アクティビティ値602を算出して出力する。
 最大値算出部503は、複数の大ブロック空間アクティビティ値602の組の中で最大値を特定し、特定した最大値を、最大空間アクティビティ値603として出力する。最大空間アクティビティ値603は、第2空間アクティビティ値の一例である。
 空間アクティビティ値比較部504は、最大空間アクティビティ値603を取得して、空間アクティビティ値の予め定められた第2閾値と比較する。そして、空間アクティビティ値比較部504は、符号化ツール決定部509へ比較結果を示す制御信号604を出力する。最大空間アクティビティ値603が第2閾値よりも大きい場合は、制御信号604は1に設定される。最大空間アクティビティ値603が第2閾値以下の場合、制御信号604は0に設定される。
 小ブロッククラスター形成部505は、サンプル抽出部310によって抽出されたO×P配列の原画サンプル403を、入力サンプルOinとして取得する。そして、小ブロッククラスター形成部505は、このO×P配列の原画サンプル403を複数のE×Fの小ブロックに分割し、これらの小ブロックを複数の小ブロッククラスターにグループ化する。
 小ブロッククラスターサンプル605の例を図8に示す。図8に示す例では、E及びFは4であり、24×24の拡張マクロブロックが、36個の4×4の小ブロックに分割される。
 さらに、小ブロッククラスター形成部505は、36個の小ブロックに基づいて、サイズの異なるI×Jの複数の小ブロッククラスターを形成する。図8に示す例では、25個の8×8の小ブロッククラスターと、12個の4×16の小ブロッククラスターと、12個の16×4の小ブロッククラスターとが形成される。小ブロッククラスター形成部505は、形成した小ブロッククラスターサンプル605を小ブロッククラスター空間アクティビティ値算出部506に出力する。
 小ブロッククラスター空間アクティビティ値算出部506は、小ブロッククラスターサンプル605を受け取り、受け取った複数の小ブロッククラスターサンプル605のそれぞれの空間アクティビティ値を算出する。なお、このとき算出される空間アクティビティ値は、本発明に係る小ブロッククラスターの複雑度を示す値である小ブロッククラスター空間アクティビティ値の一例である。
 そして、小ブロッククラスター空間アクティビティ値算出部506は、O×P配列の原画サンプル(拡張マクロブロック)に対応する小ブロッククラスター空間アクティビティ値606の全てを含む組を出力する。例えば、図8の例では、小ブロッククラスター空間アクティビティ値算出部506は、全部で49個の小ブロッククラスター空間アクティビティ値606を算出して出力する。
 最小値算出部507は、小ブロッククラスター空間アクティビティ値606の組の中で最小値を特定し、特定した最小値を、最小空間アクティビティ値607として出力する。最小空間アクティビティ値607は、第1空間アクティビティ値の一例である。
 空間アクティビティ値比較部508は、最小空間アクティビティ値607を取得して、空間アクティビティ値の予め定められた第1閾値と比較する。そして、空間アクティビティ値比較部508は、符号化ツール決定部509へ比較結果を示す制御信号608を出力する。最小空間アクティビティ値607が第1閾値未満である場合は、制御信号608は1に設定される。最小空間アクティビティ値607が第1閾値以上の場合、制御信号608は0に設定される。
 符号化ツール決定部509は、制御信号604及び608を取得し、「小分割用符号化ツール」と「大分割用符号化ツール」とのいずれに決定したかを示す符号化ツール決定信号405を出力する。具体的には、符号化ツール決定部509は、制御信号604及び608の両方が1であるときは、符号化ツール決定信号405を「小分割用符号化ツール」に設定する。さもなければ(制御信号604及び608のいずれか又は両方が1でなければ)、符号化ツール決定部509は、符号化ツール決定信号405を「大分割用符号化ツール」に設定する。
 上述の信号表現の例では、符号化ツール決定信号405の値を1に設定することにより「小分割用符号化ツール」を示すことができる。また、符号化ツール決定信号405の値を0に設定することにより「大分割用符号化ツール」を示すことができる。符号化ツール決定信号405はその後、出力信号Doutとして送信される。
 図7に戻ると、予測タイプ評価部322は、利用可能予測タイプ情報401を取得し、対象マクロブロック用の予測タイプ候補としてインター予測モードを利用可能かどうかを評価する。そして、予測タイプ評価部322は、スイッチ部323に評価結果を示す制御信号406を出力する。
 インター予測タイプを利用可能な場合、制御信号406は1に設定される。インター予測タイプを利用できない場合、制御信号406は0に設定される。例えば、利用可能予測タイプ情報401は、対象の原画ピクチャ402がIピクチャとして符号化すべきピクチャであるか否かを示す情報である。原画ピクチャ402がIピクチャとして符号化すべきピクチャである場合は、インター予測タイプを利用することができないため、予測タイプ評価部322は、制御信号406を0に設定する。
 スイッチ部323は、制御信号406に応じて、符号化ツール決定信号405を、動きアクティビティ条件評価部324及びORゲート部325のいずれに出力するかを決定する。具体的には、インター予測タイプが利用可能である場合は、符号化ツール決定信号を動きアクティビティ条件評価部324へ出力する。
 つまり、スイッチ部323は、制御信号406が1であるときは、符号化ツール決定信号405を、符号化ツール決定信号407として、動きアクティビティ条件評価部324へ出力する。制御信号406が0であるときは、符号化ツール決定信号405を、符号化ツール決定信号408として、ORゲート部325へ出力する。
 動きアクティビティ条件評価部324は、対象ブロックの動きに基づいて、対象ブロックの符号化条件を決定する。具体的には、動きアクティビティ条件評価部324は、符号化ツール決定信号407と、利用可能予測タイプ情報401と、抽出されたM×N配列の原画サンプル404と、再構築ピクチャ414とを入力として取得する。動きアクティビティ条件評価部324は、動きアクティビティ条件を評価し、符号化ツール決定信号409と、M×N配列のインター予測サンプル410とを出力する。
 動きアクティビティ条件評価部324を、図10においてさらに詳細に説明する。なお、図10は、本発明の実施の形態2に係る動きアクティビティ条件評価部324の構成の一例を示すブロック図である。
 図10に示すように、動きアクティビティ条件評価部324は、参照ピクチャ選択部701と、動き予測部702と、動き補償部703と、コスト算出部704と、コスト比較部705と、動きベクトル比較部706と、符号化ツール決定初期化部707と、2つのスイッチ部708及び709とを備える。
 参照ピクチャ選択部701は、再構築ピクチャ414と利用可能予測タイプ情報401とを入力として受け付け、1つ以上の選択された参照ピクチャ801の組を動き予測プロセスで用いるために出力する。
 動き予測部702は、対象ブロックの動きベクトルを算出する。具体的には、動き予測部702は、参照ピクチャ801の組を取得し、これらの参照ピクチャ801を用いて動き予測を行い、参照ピクチャインデックス802の組と動きベクトル803の組とを出力する。
 動きベクトル比較部706は、動きベクトル803の組を取得して予め定められた第3閾値と比較する。そして、動きベクトル比較部706は、比較結果を示す制御信号804を出力する。
 動きベクトルの絶対値が第3閾値より大きい場合、具体的には、動きベクトルの各成分の絶対値が全て予め定められた動きベクトル閾値よりも大きい場合、動きベクトル比較部706は、制御信号804を1に設定する。動きベクトルの絶対値が第3閾値以下である場合、動きベクトル比較部706は、制御信号804を0に設定する。
 動き補償部703は、参照ピクチャインデックス802の組と、動きベクトル803の組と、再構築ピクチャ414の組とを取得する。動き補償部703は、対象マクロブロックの予測画像、具体的には、M×N配列のインター予測サンプル410を出力する。
 コスト算出部704は、M×N配列のインター予測サンプル410と、M×N配列の原画サンプル404と、動きベクトル803の組とを取得する。コスト算出部704は、コスト比較部705にコスト値807を出力する。コスト値807の例は、後で説明する。
 コスト比較部705は、コスト値807を取得し、取得したコスト値807と予め定められた第4閾値とを比較する。そして、コスト比較部705は、スイッチ部709へ比較結果を示す制御信号808を出力する。
 算出されたコスト値が第4閾値未満である場合、コスト比較部705は、制御信号808を1に設定する。コスト値が第4閾値以上である場合、コスト比較部705は、制御信号808を0に設定する。
 符号化ツール決定初期化部707は、「大分割用符号化ツール」を示す初期化信号805を生成する。上述したように、「大分割用符号化ツール」を示す信号は、2進数の値の1によって示しているので(例えば、符号化ツール決定信号405など)、初期化信号805も同様に、2進数の値1によって表現できる。
 スイッチ部708は、制御信号804に応じて、符号化ツール決定信号407と初期化信号805とのいずれを、符号化ツール決定信号806として出力するかを制御する。具体的には、スイッチ部708は、動きベクトルの絶対値が第3閾値より大きい場合、すなわち、制御信号804が1である場合、初期化信号805を符号化ツール決定信号806として出力する。言い換えると、動きベクトルの絶対値が第3閾値より大きい場合は、符号化ツール決定信号806が示す符号化ツールとして、「大分割用符号化ツール」が選択される。
 動きベクトルの絶対値が第3閾値以下である場合、すなわち、制御信号804が0である場合、スイッチ部708は、符号化ツール決定信号407を符号化ツール決定信号806として出力する。言い換えると、動きベクトルの絶対値が第3閾値以下である場合は、符号化ツール決定信号806が示す符号化ツールとして、空間アクティビティ条件評価部321によって決定された符号化ツールが選択される。
 スイッチ部709は、制御信号808に応じて、符号化ツール決定信号806と初期化信号805とのいずれを、符号化ツール決定信号409として出力するかを制御する。具体的には、スイッチ部709は、コスト値が第4閾値未満の場合、すなわち、制御信号808が1である場合、初期化信号805を符号化ツール決定信号409として出力する。言い換えると、コスト値が第4閾値より小さい場合は、符号化ツール決定信号409が示す符号化ツールとして、「大分割用符号化ツール」が選択される。
 コスト値が第4閾値以上である場合、すなわち、制御信号808が0である場合、スイッチ部709は、符号化ツール決定信号806を符号化ツール決定信号409として出力する。符号化ツール決定信号806は、出力信号Doutとして送信される。
 図7に戻ると、ORゲート部325は、符号化ツール決定信号408及び409が利用可能かどうかによって、最終符号化ツール決定信号411を出力する。最終符号化ツール決定信号411は、最終的に決定された符号化ツール情報を含む。
 具体的には、ORゲート部325は、符号化ツール決定信号408及び409の少なくとも一方が1であれば、1を示す最終符号化ツール決定信号411を出力する。言い換えると、空間アクティビティ条件評価部321及び動きアクティビティ条件評価部324の少なくとも一方で「大分割用符号化ツール」が選択された場合、ORゲート部325は、「大分割用符号化ツール」を選択したことを示すように、最終符号化ツール決定信号411を1に設定する。
 また、ORゲート部325は、符号化ツール決定信号408及ぶ409の双方が0であれば、0を示す最終符号化ツール決定信号411を出力する。言い換えると、空間アクティビティ条件評価部321及び動きアクティビティ条件評価部324の双方で「小分割用符号化ツール」が選択された場合、ORゲート部325は、「小分割用符号化ツール」を選択したことを示すように、最終符号化ツール決定信号411を0に設定する。
 符号化部330は、画像符号化部331と、画像復号部332と、ピクチャメモリ部333と、エントロピー符号化部334とを備える。
 画像符号化部331は、最終符号化ツール決定信号411と、利用可能予測タイプ情報401と、M×N配列の原画サンプル404とを入力として用いる。また、本実施の形態において、画像符号化部331は、M×N配列の対象マクロブロックを符号化するために用いる追加的な入力として、M×N配列のインター予測サンプル410を取得する。
 画像符号化部331は、最終符号化ツール決定信号411によって選択された2組の予め定められた符号化ツールのうちの1組を用いて、対象マクロブロックに対し画像符号化プロセスを実施する。
 具体的には、画像符号化部331は、イントラ予測、予測サンプルとの差分演算、周波数変換、及び、量子化などの処理を行うことで、M×N配列の量子化残差412を生成する。そして、画像符号化部331は、エントロピー符号化部334と画像復号部332とへM×N配列の量子化残差412を出力する。
 エントロピー符号化部334は、M×N配列の量子化残差412をエントロピー符号化することで、圧縮ビットストリーム415を生成する。そして、エントロピー符号化部334は、生成した圧縮ビットストリーム415を出力信号Voutとして出力する。なお、エントロピー符号化部334は、エントロピー符号化に限らず、他の可変長符号化を行ってもよい。
 画像復号部332は、量子化残差412を復号して再構築する。本実施の形態の例において、画像復号部332は、M×N配列の対象マクロブロックサンプルを再構築するために用いるM×N配列のインター予測サンプル410を取得してもよい。画像復号部332は、最終的に、M×N配列の再構築サンプル413を出力し、ピクチャメモリ部333に再構築サンプル413を格納する。
 ピクチャメモリ部333は、再構築サンプル413、いわゆるローカルデコード画像を格納するためのメモリである。ピクチャメモリ部333に格納される再構築サンプル413は、動きアクティビティ条件評価部324によって、参照画像として参照される。
 以上の構成に示すように、本発明の実施の形態2に係る画像符号化装置300は、空間アクティビティ条件の評価を行う空間アクティビティ条件評価部321と、動きアクティビティ条件の評価を行う動きアクティビティ条件評価部324とを備える。そして、画像符号化装置300は、評価結果に基づいて対象ブロックの符号化条件を決定し、決定した符号化条件に従って対象ブロックを符号化する。
 これにより、空間アクティビティ条件及び動きアクティビティ条件など画像の特徴を利用して符号化条件を選択するので、画質の劣化を抑制することができる。
 続いて、本発明の実施の形態2に係る画像符号化装置300の動作の一例について説明する。図11は、本発明の実施の形態2に係る画像符号化装置300の動作の一例を示すフローチャートである。
 まず、サンプル抽出部310は、対象非圧縮原画ピクチャからO×P配列の原画サンプルを抽出する(S310)。ここで、Oは幅におけるサンプル数を示し、OはMより大きいか同数である。また、Pは高さにおけるサンプル数を示し、PはNより大きいか同数である。O及びPの値は、例えば、それぞれ24である。O×P配列の原画サンプルは対象マクロブロックを含み、図8に示されるように対象マクロブロック内のM×Nサンプルの全てを含む。
 説明を分かりやすくするため、上記及び以降の説明において、「拡張マクロブロック」を、対象マクロブロックを囲むO×P配列の原画サンプルを示す用語として用いている。なお、サンプル抽出部310は、O×P配列の原画サンプル(すなわち、拡張マクロブロック)以外にも、対象マクロブロックを構成するM×N配列の原画サンプルも出力する。
 次に、空間アクティビティ条件評価部321は、対象マクロブロックを符号化するのに最適な符号化ツールを選択するための第1の条件として、空間アクティビティ条件を評価する(S320)。空間アクティビティ条件評価部321の具体的な動作を、図12においてさらに詳細に説明する。図12は、本発明の実施の形態2に係る空間アクティビティ条件評価部321の動作の一例を示すフローチャートである。
 図12に示すように、空間アクティビティ条件評価部321は、大ブロック単位で処理を行うことにより、第2空間アクティビティ値を算出する(S410)。上述したように、第2空間アクティビティ値は、大ブロック毎に算出された空間アクティビティ値の中で、最大の値である。具体的な処理については、図13を用いて後で説明する。
 次に、空間アクティビティ値比較部504は、第2空間アクティビティ値と第2閾値とを比較する(S420)。第2空間アクティビティ値が第2閾値以下である場合(S420でNo)、符号化ツール決定部509は、対象マクロブロックに用いる符号化条件として、大分割用の第2符号化条件を決定する(S460)。
 上記の処理(S410、S420)を言い換えると、まず、空間アクティビティ条件評価部321は、大ブロック単位で対象マクロブロックの空間アクティビティ値を算出する。つまり、空間アクティビティ条件評価部321は、大ブロック単位で対象マクロブロックの複雑度(又は、平坦度)を算出する。
 そして、空間アクティビティ条件評価部321は、大ブロック毎の空間アクティビティ値の最大値が閾値より大きいか否かを判定する。すなわち、空間アクティビティ条件評価部321は、対象マクロブロックを構成する複数の大ブロックのうち、最も複雑なブロックの複雑度が閾値より大きいか否かを判定する。最も複雑なブロックの複雑度が閾値以下である場合は、大分割用の符号化ツールが選択される。
 最も複雑なブロックの複雑度が閾値以下であるということは、対象マクロブロックの平坦度が高いということである。すなわち、対象マクロブロックの情報量が少ないことを示しており、大分割用の符号化ツールを用いて圧縮率を高めることで、符号量の節約を図ることができる。また、画像が複雑であるため、歪みは目立ちにくく、大分割用の符号化ツールを用いたとしても、主観的な画質の劣化を抑制することができる。
 第2空間アクティビティ値が第2閾値より大きい場合は(S420でYes)、空間アクティビティ条件評価部321は、小ブロッククラスター単位で処理を行うことにより、第1空間アクティビティ値を算出する(S430)。上述したように、第1空間アクティビティ値は、小ブロッククラスター毎に算出された空間アクティビティ値の中で、最小の値である。具体的な処理については、図13を用いて後で説明する。
 次に、空間アクティビティ値比較部508は、第1空間アクティビティ値と第1閾値とを比較する(S440)。第1空間アクティビティ値が第1閾値より小さい場合(S440でYes)、符号化ツール決定部509は、対象マクロブロックに用いる符号化条件として、小分割用の第1符号化条件を決定する(S450)。
 上記の処理(S430、S440)を言い換えると、空間アクティビティ条件評価部321は、小ブロッククラスター単位で対象マクロブロックの空間アクティビティ値を算出する。言い換えると、空間アクティビティ条件評価部321は、小ブロッククラスター単位で対象マクロブロックの複雑度(又は、平坦度)を算出する。
 そして、空間アクティビティ条件評価部321は、小ブロッククラスター毎の空間アクティビティ値の最小値が閾値より小さいか否かを判定する。すなわち、空間アクティビティ条件評価部321は、対象マクロブロックの一部をそれぞれが含む複数の小ブロッククラスターのうち、最も平坦な小ブロッククラスターの複雑度が閾値より小さいか否かを判定する。最も平坦な小ブロッククラスターの複雑度が閾値より小さい場合には、小分割用の符号化ツールが選択される。
 最も平坦な小ブロッククラスターの複雑度が閾値より小さいということは、対象マクロブロックの一部に平坦度の高い領域が含まれているということである。すなわち、平坦な領域に歪みが広がった場合に、主観的な画質の劣化が目立ってしまう領域を対象マクロブロックが含んでいることを意味する。
 したがって、最も平坦な小ブロッククラスターの複雑度が閾値より小さい場合に、小分割用の符号化ツールを用いることで、図3に示すように、歪みが広がってしまうことを抑制することができる。ゆえに、主観的な画質の劣化を抑制することができる。
 第1空間アクティビティ値が第1閾値以上である場合は(S440でNo)、符号化ツール決定部509は、対象マクロブロックに用いる符号化条件として、大分割用の第2符号化条件を決定する(S460)。第1空間アクティビティ値が第1閾値以上であるということは、対象マクロブロックには平坦度の高い領域が含まれていないことを意味する。したがって、対象マクロブロック内に歪みが広がったとしても、主観的な画質の劣化が目立たない。このため、大分割用の第2符号化条件を選択することで、符号量を削減することができる。
 続いて、図12に示すフローチャートのより詳細な動作について、図13を用いて説明する。図13は、本発明の実施の形態2に係る空間アクティビティ条件評価部321の詳細な動作の一例を示すフローチャートである。なお、図12に示す動作と同じ動作については、同じ参照符号を付している。
 まず、大ブロック分割部501は、M×Nの対象マクロブロックを、複数のG×Hの大ブロックに分割する(S411)。ここで、Gは、幅におけるサンプル数を表し、このGでMを割り切ることができる。また、Hは、高さにおけるサンプル数を表し、このHでNを割り切ることができる。G及びHの値は、例えば、それぞれ8である。図8には、M×Nのマクロブロックを、複数のG×Hの大ブロックに分割する例を示す。
 次に、大ブロック空間アクティビティ値算出部502は、複数の大ブロックのそれぞれの空間アクティビティ値(大ブロック空間アクティビティ値)を算出する(S412)。空間アクティビティ値は、大ブロック内のサンプル値の変動量を示す。空間アクティビティ値は、ゼロ以上である。大ブロックの空間アクティビティ値(LargeBlockSpatialAct)の算出方法は、例えば、以下の(式1)で示される。
Figure JPOXMLDOC01-appb-M000001
 ここで、大ブロックの空間アクティビティ値は、大ブロック内のサンプル値の統計的分散として求められる。ここで、x(h,g)は、大ブロック内の位置(h,g)におけるサンプル値を表す。
 また、大ブロックの空間アクティビティ値の他の算出方法は、例えば、以下の(式2)及び(式3)で示される。
Figure JPOXMLDOC01-appb-M000002
Figure JPOXMLDOC01-appb-M000003
 ここで、SmallBlockは、E×Fサンプルの小ブロックを表す。Eは、幅におけるサンプル数を表し、このEでG(大ブロックの幅)を割り切ることができる。また、Fは、高さにおけるサンプル数を表し、このFでH(大ブロックの高さ)を割り切ることができる。E及びFの値は、例えば、それぞれ4である。
 SmallBlockSpatialActは、小ブロック内のサンプル値の統計的分散として求められる小ブロックの空間アクティビティ値を表す。ここで、Bは、対象大ブロック内の小ブロックの数を示し、x(f,e)は、小ブロック内の位置(f,e)におけるサンプル値を表し、min(・)は、最小限の値/最小値を表す。図8には、O×Pの拡張マクロブロックを、複数のE×Fの小ブロックに分割する例を示す。
 また、大ブロックの空間アクティビティ値の他の算出方法は、例えば、以下の(式4)で示される。
Figure JPOXMLDOC01-appb-M000004
 SmallBlockSpatialActは、(式3)と同様に、小ブロック内のサンプル値の統計的分散として求められる小ブロックの空間アクティビティ値を表す。ここで、Bは、対象大ブロック内の小ブロックの数を示し、min(・)は、最小限の値/最小値を表し、max(・)は、最大限の値/最大値を表す。
 大ブロックの空間アクティビティ値の算出後、最大値算出部503は、対象マクロブロックにおける全ての大ブロックの中で、最大の空間アクティビティ値である第2空間アクティビティ値を求める(S413)。
 次に、空間アクティビティ値比較部504は、大ブロック内で最大の空間アクティビティ値と、空間アクティビティ値に関する予め定められた第2閾値と比較する(S414)。予め定められた第2閾値は、例えば、整数値である。
 大ブロック内で最大の空間アクティビティ値が、第2閾値以下である場合(S420でNo)、符号化ツール決定部509は、符号化ツールとして「大分割用符号化ツール」を決定し、設定する(S460)。
 大ブロック内で最大の空間アクティビティ値が、第2閾値より大きい場合(S420でYes)、空間アクティビティ条件の評価が続けられる。
 小ブロッククラスター形成部505は、M×Nの対象マクロブロックを含むO×Pの拡張マクロブロックに基づいて、I×Jの複数の小ブロッククラスターを形成する(S431)。ここで、Iは幅におけるサンプル数を表し、このIはE(小ブロックの幅)で割り切ることができる。また、Jは高さにおけるサンプル数を表し、このJはF(小ブロックの高さ)で割り切ることができる。
 小ブロッククラスターが異なれば、I及びJの値も異なる場合がある。(I,J)の値は、例えば、(8,8)、(16,4)、(4,16)、(4,12)、(12,4)である。各小ブロッククラスターは、M×Nのマクロブロック内に位置する1つ以上の小ブロックを含む。図8には、O×Pの拡張マクロブロックを複数のE×Fの小ブロックに分割し、これらのE×Fの小ブロックに基づいてサイズが異なるI×Jの小ブロッククラスターを複数形成する例を示す。
 次に、小ブロッククラスター空間アクティビティ値算出部506は、複数の小ブロッククラスターのそれぞれの空間アクティビティ値(小ブロッククラスター空間アクティビティ値)を算出する(S432)。この空間アクティビティ値は、小ブロッククラスター内のサンプル値の変動量を示す。小ブロッククラスターの空間アクティビティ値の算出方法は、例えば、以下の(式5)で示される。
Figure JPOXMLDOC01-appb-M000005
 また、小ブロッククラスターの空間アクティビティ値の他の算出方法は、例えば、以下の(式6)で示される。
Figure JPOXMLDOC01-appb-M000006
 ここで、SmallBlockSpatialActは、(式3)と同様に、小ブロック内のサンプル値の統計的分散として求められる小ブロックの空間アクティビティ値を表す。ここで、Bは、対象小ブロッククラスター内の小ブロックの数を示す。
 小ブロッククラスター内の空間アクティビティ値の算出後、最小値算出部507は、対象拡張マクロブロック内の全ての小ブロッククラスターの中で、最小空間アクティビティ値である第1空間アクティビティ値を求める(S433)。
 そして、空間アクティビティ値比較部508は、小ブロッククラスター中の最小空間アクティビティ値を、空間アクティビティ値に関する予め定められた第1閾値と比較する(S434)。第2閾値は、例えば、整数値である。
 小ブロッククラスター中の最小空間アクティビティ値が、第1閾値未満である場合(S440でYes)、符号化ツール決定部509は、符号化ツールとして「小分割用符号化ツール」を決定し、設定する(S450)。
 小ブロッククラスター中の最小空間アクティビティ値が、第1閾値未満でない場合(S440でNo)、符号化ツール決定部509は、符号化ツールとして「大分割用符号化ツール」を決定し、設定する。
 以上のようにして、空間アクティビティ条件評価部321は、対象マクロブロックの空間アクティビティ値に基づいて、対象マクロブロックの符号化ツールを決定する。
 なお、本発明の実施の形態2では、上記の説明に示すように、大ブロック単位での空間アクティビティ値の比較を行い、第2空間アクティビティ値が第2閾値以下の場合のみ、小ブロッククラスター単位での空間アクティビティ値の比較を行ってもよい。あるいは、大ブロック単位での空間アクティビティ値の比較と、小ブロッククラスター単位での空間アクティビティ値の比較とを並列処理で行ってもよい。
 図11に戻ると、次に、予測タイプ評価部322は、対象マクロブロックにインター予測モードを適用することができるか否かを判定する(S330)。具体的には、予測タイプ評価部322は、対象マクロブロックを含む対象ピクチャがインター符号化されるかどうかをチェックする。インター符号化されるピクチャは、符号化済みの参照ピクチャから得られる(通常、動き補償された)予測結果を用いて符号化される。
 対象ピクチャがインター符号化されない場合(S330でNo)、空間アクティビティ条件を評価することにより決定された符号化ツールが用いて、符号化部330は、対象マクロブロックを符号化する(S350)。
 対象ピクチャがインター符号化される場合(S330でYes)、動きアクティビティ条件評価部324は、対象マクロブロックを符号化するには最適な符号化ツールを選択するための第2の条件として、動きアクティビティ条件を評価する(S340)。なお、空間アクティビティ条件評価部321によって決定された符号化ツールは、図14において詳細に示されるように、動きアクティビティ条件評価部324によって変更される場合がある。
 以下では、動きアクティビティ条件評価部324の具体的な動作を、図14においてさらに詳細に説明する。図14は、本発明の実施の形態2に係る動きアクティビティ条件評価部324の動作の一例を示すフローチャートである。
 まず、参照ピクチャ選択部701は、ピクチャメモリ部414に格納された再構築ピクチャグループから、複数の参照ピクチャ候補を選択する(S501)。この場合のピクチャは、フレームピクチャ又はフィールドピクチャとして参照されうる。
 次に、動き予測部702は、参照ピクチャ候補に対して動き予測を行うことで、M×Nサンプルの非圧縮原画マクロブロック用に複数の動きベクトルのセットを導出する(S502)。導出された複数の動きベクトルのそれぞれは、参照先の参照ピクチャに関連付けられる。
 次に、動き補償部703は、導出された複数の動きベクトルのセットを用いて、関連する参照ピクチャに対して動き補償を行うことで、M×Nサンプルの予測ブロックを導出する(S503)。
 次に、コスト算出部704は、導出されたM×Nサンプルの予測ブロックとM×Nサンプルの原画ブロックとの間のサンプル値の差分に基づいて、コスト値を算出する(S504)。コスト値を求める式は、例えば、以下の(式7)で示される。
Figure JPOXMLDOC01-appb-M000007
 ここで、DiffCostは、予測サンプルと原画サンプルとの間の差分に応じて求められるコスト成分である。DiffCostの計算結果の一例として、予測サンプルと原画サンプルとの間の差分絶対値和がある。Lambdaは、一定の値である。MVCostは、導出された動きベクトルに応じて求められるコスト値を表す。Lambdaは、ゼロ値でもよく、その場合、MVCost成分を無視してもよい。
 上記の処理(S501~S504)を実施することにより、対象原画ピクチャと先行する復号ピクチャとの間の相関を求める。(式7)に示されるように、コスト値が小さければ小さいほど、相関は高くなる。
 次に、動きベクトル比較部706は、動き予測部702によって導出された動きベクトルの絶対値と、動きベクトルの予め定められた第3閾値とを比較する(S505)。動きベクトルの予め定められた第3閾値は、例えば、整数値である。
 動きベクトルの各成分の絶対値が動きベクトルの予め定められた第3閾値よりも大きい場合(S506でYes)、符号化ツール決定初期化部707によって、符号化ツールは「大分割用符号化ツール」に決定されて設定される(S509)。そして、動きアクティビティ条件評価プロセスは終了する。
 なお、動きベクトルが第3閾値より大きいということは、ピクチャ間の動きが大きく、連続性が小さいということを意味する。したがって、対象マクロブロックに歪みが発生したとしても、ピクチャ間の動きが大きいために、主観的な画質の劣化は抑制される。このため、動きが大きい場合に「大分割用符号化ツール」を選択することで、符号化効率を高めることができる。
 動きベクトルの1つ以上の成分の絶対値が動きベクトルの予め定められた第3閾値以下である場合(S506でNo)、コスト比較部705は、コスト算出部704によって算出されたコスト値と、コスト値の予め定められた第4閾値とを比較する(S507)。第4閾値は、例えば、整数値である。
 算出されたコスト値が第4閾値未満である場合(S508でYes)、符号化ツール決定初期化部707によって、符号化ツールは「大分割用符号化ツール」に決定されて設定される(S509)。そして、動きアクティビティ条件評価プロセスは終了する。
 なお、コスト値は、上述したように、差分絶対値和などに基づいて算出される値であり、コスト値が小さいほど符号化効率が良いことを意味する。すなわち、コスト値が第4閾値未満であるということは、符号化効率が十分に優れているため、「大分割用符号化ツール」を選択することで、符号化効率を十分に高めることができる。
 算出されたコスト値が第4閾値以上である場合(S508でNo)、空間アクティビティ条件評価部321によって決定された符号化ツールは変更されずに、動きアクティビティ条件評価プロセスは終了する。つまり、空間アクティビティ条件評価部321による符号化条件の決定結果に基づいて、符号化条件が決定される。
 図11に戻ると、符号化部330は、上記のようにして選択された符号化ツールを用いて、対象マクロブロックの画像を符号化する(S350)。
 以上のように、本発明の実施の形態2に係る画像符号化装置300は、空間アクティビティ条件と動きアクティビティ条件との評価を行い、評価結果に基づいて、対象ブロックを符号化する際の符号化条件を決定する。
 具体的には、画像符号化装置300は、動きベクトルの絶対値が第3閾値より大きい場合は、対象ブロックを大きい分割サイズのサブブロック毎に符号化するような符号化条件(大分割用の符号化条件)を決定する。これにより、大分割用の符号化条件を選択することで、動きが大きい場合は、画像(ピクチャ)間の連続性が小さいために、圧縮率を優先することが好ましい。
 また、画像符号化装置300は、動きベクトルの絶対値が第3閾値以下で、かつ、コスト値が第4閾値より小さい場合も、大分割用の符号化条件を決定する。これにより、コスト値が第4閾値より小さいということは、効果的に対象ブロックを符号化できることを示すので、大分割用の符号化条件を決定することで、符号化効率を高めることができる。
 また、画像符号化装置300は、動きベクトルの絶対値が第3閾値以下で、かつ、コスト値が第4閾値より大きい場合は、対象ブロック及び拡張ブロックの空間アクティビティ条件の評価結果に従って、対象ブロックの符号化条件を決定する。
 具体的には、画像符号化装置300は、対象ブロックに含まれる複数の大ブロックの空間アクティビティ値を算出し、算出した空間アクティビティ値の最大値である第2空間アクティビティ値が第2閾値以下である場合に、大分割用の符号化条件を決定する。これにより、第2空間アクティビティ値が第2閾値以下である場合、対象ブロックは情報量が少ないブロックであるので、大分割用の符号化条件を利用することで、効果的に符号化効率を高めることができる。
 また、画像符号化装置300は、第2空間アクティビティ値が第2閾値より大きい場合に、拡張ブロックに含まれる複数の小ブロッククラスターの空間アクティビティ値を算出する。そして、画像符号化装置300は、算出した空間アクティビティ値の最小値である第1空間アクティビティ値が第1閾値より小さい場合に、対象ブロックを小さい分割サイズのサブブロック毎に符号化するような符号化条件(小分割用の符号化条件)を決定する。
 第2空間アクティビティ値が第2閾値より大きい場合は、対象ブロックの情報量が多いために、大分割用の符号化条件を決定したとしても、第2空間アクティビティ値が第2閾値以下の場合程の効果は得られない。したがって、第1空間アクティビティ値と第1閾値との比較を行い、第1空間アクティビティ値が第1閾値より小さい場合は、小分割用の符号化条件を選択する。
 つまり、画像符号化装置300は、対象ブロックの少なくとも一部に平坦な領域を含む場合は、小分割用の符号化条件を選択する。これにより、平坦な画像にリンギングアーチファクトやブロッキングアーチファクトが発生するのを抑制することができ、画質の劣化を抑制することができる。
 また、小ブロッククラスターの空間アクティビティ値を算出する際には、対象ブロックを含み、対象ブロックより大きなサイズの拡張ブロックに基づいて、小ブロッククラスターを生成するので、対象ブロックだけではなく、周囲の画像情報を利用することができる。例えば、対象ブロックの一部の領域の複雑度が低い場合、すなわち、当該領域が平坦である場合に、周囲のブロックに含まれる領域も平坦であるか否かに基づいて、符号化条件を決定することができる。
 対象ブロックの一部の領域(対象領域)が平坦であり、かつ、周囲のブロックも平坦である場合には、対象領域に歪みが広がった場合に、その歪みが目立ち、画質が劣化してしまう。逆に、対象領域が平坦であり、かつ、周囲のブロックは複雑である場合、周囲が複雑であるため、対象領域に歪みが広がったとしても、その歪みは目立たないので、画質の劣化は抑制される。
 したがって、本発明の実施の形態2のように、対象領域と周囲のブロックの領域とを含む小ブロッククラスターの空間アクティビティ値を利用することで、周囲のブロックの画像情報に基づいて符号化条件の選択を行うことができる。具体的には、上述したように、小ブロッククラスターの空間アクティビティ値の最小値が第1閾値以下である場合は、小分割用の第1符号化条件を、対象ブロックの符号化条件として選択する。これにより、周囲の画像も平坦である場合に、小さい分割サイズで符号化するので、対象ブロック内で歪みが広がらないようにすることができ、画質の劣化を抑制することができる。
 なお、図14に示すフローチャートにおいて、コスト値の比較を行わなくてもよい。具体的には、コスト値の算出(S504)と、コスト値の比較(S507及びS508)とを行わなくてもよい。
 つまり、動きベクトルの絶対値が第3閾値より大きい場合は、大分割用符号化ツールを選択し、動きベクトルの絶対値が第3閾値以下である場合は、空間アクティビティ条件の評価による符号化条件の決定結果に基づいて、符号化条件を決定してもよい。
 また、上記の実施の形態1に係る画像符号化装置100は、図5に示すフローチャートにおいては、図6に示すように空間アクティビティ条件に基づいて符号化条件を決定したが、動きアクティビティ条件のみに基づいて、符号化条件を決定してもよい。具体的には、図15に示すように、動きベクトルの大きさに基づいて符号化条件を決定してもよい。
 まず、符号化条件決定部は、対象ブロックの動きベクトルを算出する(S610)。具体的には、符号化条件決定部は、参照ピクチャの選択及び動き予測を行うことで、対象ブロックの動きベクトルを算出する。
 次に、符号化条件決定部は、算出した動きベクトルと予め定められた第3閾値とを比較する(S620)。動きベクトルが第3閾値以下である場合は(S620でNo)、小分割用の第1符号化条件(「小分割用符号化ツール」)を、対象ブロックの符号化条件として決定する(S630)。動きベクトルが第3閾値より大きい場合は(S620でYes)、大分割用の第2符号化条件(「大分割用符号化ツール」)を、対象ブロックの符号化条件として決定する(S640)。
 以上のように、動きベクトルのみに基づいて符号化条件を決定してもよい。上述のように、動きが大きい場合に「大分割用符号化ツール」を選択することで、符号化効率を高めることができる。この場合、「小分割用符号化ツール」を選択した場合に比べて、対象マクロブロックに歪みが広がりやすいが、ピクチャ間の動きが大きいために、主観的な画質の劣化は抑制される。
(実施の形態3)
 上記実施の形態で示した画像符号化方法又は画像復号方法の構成を実現するためのプログラムを記憶メディアに記録することにより、上記実施の形態で示した処理を独立したコンピュータシステムにおいて簡単に実施することが可能となる。記憶メディアは、磁気ディスク、光ディスク、光磁気ディスク、ICカード、半導体メモリ等、プログラムを記録できるものであればよい。
 さらにここで、上記実施の形態で示した画像符号化方法及び画像復号方法の応用例とそれを用いたシステムを説明する。
 図16は、コンテンツ配信サービスを実現するコンテンツ供給システムex100の全体構成を示す図である。通信サービスの提供エリアを所望の大きさに分割し、各セル内にそれぞれ固定無線局である基地局ex106~ex110が設置されている。
 このコンテンツ供給システムex100は、インターネットex101にインターネットサービスプロバイダex102及び電話網ex104、及び、基地局ex106~ex110を介して、コンピュータex111、PDA(Personal Digital Assistant)ex112、カメラex113、携帯電話ex114、ゲーム機ex115などの各機器が接続される。
 しかし、コンテンツ供給システムex100は図16のような構成に限定されず、いずれかの要素を組み合わせて接続するようにしてもよい。また、固定無線局である基地局ex106~ex110を介さずに、各機器が電話網ex104に直接接続されてもよい。また、各機器が近距離無線等を介して直接相互に接続されていてもよい。
 カメラex113はデジタルビデオカメラ等の動画撮影が可能な機器であり、カメラex116はデジタルカメラ等の静止画撮影、動画撮影が可能な機器である。また、携帯電話ex114は、GSM(Global System for Mobile Communications)方式、CDMA(Code Division Multiple Access)方式、W-CDMA(Wideband-Code Division Multiple Access)方式、もしくはLTE(Long Term Evolution)方式、HSPA(High Speed Packet Access)の携帯電話機、又は、PHS(Personal Handyphone System)等であり、いずれでも構わない。
 コンテンツ供給システムex100では、カメラex113等が基地局ex109、電話網ex104を通じてストリーミングサーバex103に接続されることで、ライブ配信等が可能になる。ライブ配信では、ユーザがカメラex113を用いて撮影するコンテンツ(例えば、音楽ライブの映像等)に対して上記実施の形態で説明したように符号化処理を行い、ストリーミングサーバex103に送信する。一方、ストリーミングサーバex103は要求のあったクライアントに対して送信されたコンテンツデータをストリーム配信する。クライアントとしては、上記符号化処理されたデータを復号することが可能な、コンピュータex111、PDAex112、カメラex113、携帯電話ex114、ゲーム機ex115等がある。配信されたデータを受信した各機器では、受信したデータを復号処理して再生する。
 なお、撮影したデータの符号化処理はカメラex113で行っても、データの送信処理をするストリーミングサーバex103で行ってもよいし、互いに分担して行ってもよい。同様に配信されたデータの復号処理はクライアントで行っても、ストリーミングサーバex103で行ってもよいし、互いに分担して行ってもよい。また、カメラex113に限らず、カメラex116で撮影した静止画像及び/又は動画像データを、コンピュータex111を介してストリーミングサーバex103に送信してもよい。この場合の符号化処理はカメラex116、コンピュータex111、ストリーミングサーバex103のいずれで行ってもよいし、互いに分担して行ってもよい。
 また、これら符号化処理及び復号処理は、一般的にコンピュータex111及び各機器が有するLSI(Large Scale Integration)ex500において処理する。LSIex500は、ワンチップであっても複数チップからなる構成であってもよい。なお、画像符号化用及び画像復号用のソフトウェアをコンピュータex111等で読み取り可能な何らかの記録メディア(CD-ROM、フレキシブルディスク、ハードディスクなど)に組み込み、そのソフトウェアを用いて符号化処理及び復号処理を行ってもよい。さらに、携帯電話ex114がカメラ付きである場合には、そのカメラで取得した動画データを送信してもよい。このときの動画データは携帯電話ex114が有するLSIex500で符号化処理されたデータである。
 また、ストリーミングサーバex103は複数のサーバ又は複数のコンピュータであって、データを分散して処理したり記録したり配信するものであってもよい。
 以上のようにして、コンテンツ供給システムex100では、符号化されたデータをクライアントが受信して再生することができる。このようにコンテンツ供給システムex100では、ユーザが送信した情報をリアルタイムでクライアントが受信して復号し、再生することができ、特別な権利又は設備を有さないユーザでも個人放送を実現できる。
 このコンテンツ供給システムを構成する各機器の符号化、復号には上記実施の形態で示した画像符号化方法あるいは画像復号方法を用いるようにすればよい。
 その一例として携帯電話ex114について説明する。
 図17は、上記実施の形態で説明した画像符号化方法と画像復号方法を用いた携帯電話ex114を示す図である。携帯電話ex114は、基地局ex110との間で電波を送受信するためのアンテナex601、CCDカメラ等の映像、静止画を撮ることが可能なカメラ部ex603、カメラ部ex603で撮影した映像、アンテナex601で受信した映像等が復号されたデータを表示する液晶ディスプレイ等の表示部ex602、操作キーex604群から構成される本体部、音声出力をするためのスピーカ等の音声出力部ex608、音声入力をするためのマイク等の音声入力部ex605、撮影した動画もしくは静止画のデータ、受信したメールのデータ、動画のデータもしくは静止画のデータ等、符号化されたデータ又は復号されたデータを保存するための記録メディアex607、携帯電話ex114に記録メディアex607を装着可能とするためのスロット部ex606を有している。記録メディアex607はSDカード等のプラスチックケース内に電気的に書換え及び消去が可能な不揮発性メモリであるEEPROMの一種であるフラッシュメモリ素子を格納したものである。
 さらに、携帯電話ex114について図18を用いて説明する。携帯電話ex114は表示部ex602及び操作キーex604を備えた本体部の各部を統括的に制御するようになされた主制御部ex711に対して、電源回路部ex710、操作入力制御部ex704、画像符号化部ex712、カメラインターフェース部ex703、LCD(Liquid Crystal Display)制御部ex702、画像復号部ex709、多重分離部ex708、記録再生部ex707、変復調回路部ex706及び音声処理部ex705が同期バスex713を介して互いに接続されている。
 電源回路部ex710は、ユーザの操作により終話及び電源キーがオン状態にされると、バッテリパックから各部に対して電力を供給することによりカメラ付デジタル携帯電話ex114を動作可能な状態に起動する。
 携帯電話ex114は、CPU、ROM及びRAM等でなる主制御部ex711の制御に基づいて、音声通話モード時に音声入力部ex605で集音した音声信号を音声処理部ex705によってデジタル音声データに変換し、これを変復調回路部ex706でスペクトラム拡散処理し、送受信回路部ex701でデジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex601を介して送信する。また携帯電話ex114は、音声通話モード時にアンテナex601で受信した受信データを増幅して周波数変換処理及びアナログデジタル変換処理を施し、変復調回路部ex706でスペクトラム逆拡散処理し、音声処理部ex705によってアナログ音声データに変換した後、音声出力部ex608を介してこれを出力する。
 さらに、データ通信モード時に電子メールを送信する場合、本体部の操作キーex604の操作によって入力された電子メールのテキストデータは操作入力制御部ex704を介して主制御部ex711に送出される。主制御部ex711は、テキストデータを変復調回路部ex706でスペクトラム拡散処理し、送受信回路部ex701でデジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex601を介して基地局ex110へ送信する。
 データ通信モード時に画像データを送信する場合、カメラ部ex603で撮像された画像データを、カメラインターフェース部ex703を介して画像符号化部ex712に供給する。また、画像データを送信しない場合には、カメラ部ex603で撮像した画像データをカメラインターフェース部ex703及びLCD制御部ex702を介して表示部ex602に直接表示することも可能である。
 画像符号化部ex712は、本願発明で説明した画像符号化装置を備えた構成であり、カメラ部ex603から供給された画像データを上記実施の形態で示した画像符号化装置に用いた符号化方法によって圧縮符号化することにより符号化画像データに変換し、これを多重分離部ex708に送出する。また、このとき同時に携帯電話ex114は、カメラ部ex603で撮像中に音声入力部ex605で集音した音声を、音声処理部ex705を介してデジタルの音声データとして多重分離部ex708に送出する。
 多重分離部ex708は、画像符号化部ex712から供給された符号化画像データと音声処理部ex705から供給された音声データとを所定の方式で多重化し、その結果得られる多重化データを変復調回路部ex706でスペクトラム拡散処理し、送受信回路部ex701でデジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex601を介して送信する。
 データ通信モード時にホームページ等にリンクされた動画像ファイルのデータを受信する場合、アンテナex601を介して基地局ex110から受信した受信データを変復調回路部ex706でスペクトラム逆拡散処理し、その結果得られる多重化データを多重分離部ex708に送出する。
 また、アンテナex601を介して受信された多重化データを復号するには、多重分離部ex708は、多重化データを分離することにより画像データのビットストリームと音声データのビットストリームとに分け、同期バスex713を介して当該符号化画像データを画像復号部ex709に供給すると共に当該音声データを音声処理部ex705に供給する。
 次に、画像復号部ex709は、本願で説明した画像復号装置を備えた構成であり、画像データのビットストリームを上記実施の形態で示した符号化方法に対応した復号方法で復号することにより再生動画像データを生成し、これを、LCD制御部ex702を介して表示部ex602に供給し、これにより、例えばホームページにリンクされた動画像ファイルに含まれる動画データが表示される。このとき同時に音声処理部ex705は、音声データをアナログ音声データに変換した後、これを音声出力部ex608に供給し、これにより、例えばホームページにリンクされた動画像ファイルに含まれる音声データが再生される。
 なお、上記システムの例に限られず、最近は衛星、地上波によるデジタル放送が話題となっており、図19に示すようにデジタル放送用システムにも上記実施の形態の少なくとも画像符号化装置又は画像復号装置を組み込むことができる。具体的には、放送局ex201では音声データ、映像データ又はそれらのデータが多重化されたビットストリームが電波を介して通信又は放送衛星ex202に伝送される。これを受けた放送衛星ex202は、放送用の電波を発信し、衛星放送受信設備をもつ家庭のアンテナex204はこの電波を受信し、テレビ(受信機)ex300又はセットトップボックス(STB)ex217などの装置はビットストリームを復号してこれを再生する。また、記録媒体であるCD及びDVD等の記録メディアex215、ex216に記録した画像データと、音声データが多重化されたビットストリームを読み取り、復号するリーダ/レコーダex218にも上記実施の形態で示した画像復号装置を実装することが可能である。この場合、再生された映像信号はモニタex219に表示される。また、ケーブルテレビ用のケーブルex203又は衛星/地上波放送のアンテナex204に接続されたセットトップボックスex217内に画像復号装置を実装し、これをテレビのモニタex219で再生する構成も考えられる。このときセットトップボックスではなく、テレビ内に画像復号装置を組み込んでも良い。また、アンテナex205を有する車ex210で、衛星ex202又は基地局等から信号を受信し、車ex210が有するカーナビゲーションex211等の表示装置に動画を再生することも可能である。
 また、DVD、BD等の記録メディアex215に記録した音声データ、映像データ又はそれらのデータが多重化された符号化ビットストリームを読み取り復号する、又は、記録メディアex215に、音声データ、映像データ又はそれらのデータを符号化し、多重化データとして記録するリーダ/レコーダex218にも上記実施の形態で示した画像復号装置又は画像符号化装置を実装することが可能である。この場合、再生された映像信号はモニタex219に表示される。また、符号化ビットストリームが記録された記録メディアex215により、他の装置及びシステム等は、映像信号を再生することができる。例えば、他の再生装置ex212は、符号化ビットストリームがコピーされた記録メディアex214を用いて、モニタex213に映像信号を再生することができる。
 また、ケーブルテレビ用のケーブルex203又は衛星/地上波放送のアンテナex204に接続されたセットトップボックスex217内に画像復号装置を実装し、これをテレビのモニタex219で表示してもよい。このときセットトップボックスではなく、テレビ内に画像復号装置を組み込んでもよい。
 図20は、上記実施の形態で説明した画像復号方法及び画像符号化方法を用いたテレビ(受信機)ex300を示す図である。テレビex300は、上記放送を受信するアンテナex204又はケーブルex203等を介して映像情報のビットストリームを取得、又は、出力するチューナex301と、受信した符号化データを復調する、又は、生成された符号化データを外部に送信するために変調する変調/復調部ex302と、復調した映像データと音声データとを分離する、又は、符号化された映像データと音声データとを多重化する多重/分離部ex303を備える。また、テレビex300は、音声データ、映像データそれぞれを復号する、又は、それぞれの情報を符号化する音声信号処理部ex304、映像信号処理部ex305を有する信号処理部ex306と、復号された音声信号を出力するスピーカex307、復号された映像信号を表示するディスプレイ等の表示部ex308を有する出力部ex309とを有する。さらに、テレビex300は、ユーザ操作の入力を受け付ける操作入力部ex312等を有するインターフェース部ex317を有する。さらに、テレビex300は、各部を統括的に制御する制御部ex310、各部に電力を供給する電源回路部ex311を有する。インターフェース部ex317は、操作入力部ex312以外に、リーダ/レコーダex218等の外部機器と接続されるブリッジex313、SDカード等の記録メディアex216を装着可能とするためのスロット部ex314、ハードディスク等の外部記録メディアと接続するためのドライバex315、電話網と接続するモデムex316等を有していてもよい。なお記録メディアex216は、格納する不揮発性/揮発性の半導体メモリ素子により電気的に情報の記録を可能としたものである。テレビex300の各部は同期バスを介して互いに接続されている。
 まず、テレビex300がアンテナex204等により外部から取得したデータを復号し、再生する構成について説明する。テレビex300は、リモートコントローラex220等からのユーザ操作を受け、CPU等を有する制御部ex310の制御に基づいて、変調/復調部ex302で復調した映像データ、音声データを多重/分離部ex303で分離する。さらにテレビex300は、分離した音声データを音声信号処理部ex304で復号し、分離した映像データを映像信号処理部ex305で上記実施の形態で説明した復号方法を用いて復号する。復号した音声信号、映像信号は、それぞれ出力部ex309から外部に向けて出力される。出力する際には、音声信号と映像信号が同期して再生するよう、バッファex318、ex319等に一旦これらの信号を蓄積するとよい。また、テレビex300は、放送等からではなく、磁気/光ディスク、SDカード等の記録メディアex215、ex216から符号化された符号化ビットストリームを読み出してもよい。次に、テレビex300が音声信号及び映像信号を符号化し、外部に送信又は記録メディア等に書き込む構成について説明する。テレビex300は、リモートコントローラex220等からのユーザ操作を受け、制御部ex310の制御に基づいて、音声信号処理部ex304で音声信号を符号化し、映像信号処理部ex305で映像信号を上記実施の形態で説明した符号化方法を用いて符号化する。符号化した音声信号、映像信号は多重/分離部ex303で多重化され外部に出力される。多重化する際には、音声信号と映像信号が同期するように、バッファex320、ex321等に一旦これらの信号を蓄積するとよい。なお、バッファex318~ex321は図示しているように複数備えていてもよいし、一つ以上のバッファを共有する構成であってもよい。さらに、図示している以外に、例えば変調/復調部ex302と多重/分離部ex303との間等でもシステムのオーバフロー及びアンダーフローを避ける緩衝材としてバッファにデータを蓄積することとしてもよい。
 また、テレビex300は、放送及び記録メディア等から音声データ及び映像データを取得する以外に、マイク及びカメラのAV入力を受け付ける構成を備え、それらから取得したデータに対して符号化処理を行ってもよい。なお、ここではテレビex300は、上記の符号化処理、多重化、及び、外部出力ができる構成として説明したが、これらの全ての処理を行うことはできず、上記受信、復号処理、及び、外部出力のうちいずれかのみが可能な構成であってもよい。
 また、リーダ/レコーダex218で記録メディアから符号化ビットストリームを読み出す、又は、書き込む場合には、上記復号処理又は符号化処理はテレビex300及びリーダ/レコーダex218のうちいずれかで行ってもよいし、テレビex300とリーダ/レコーダex218とが互いに分担して行ってもよい。
 一例として、光ディスクからデータの読み込み又は書き込みをする場合の情報再生/記録部ex400の構成を図21に示す。情報再生/記録部ex400は、以下に説明する要素ex401~ex407を備える。光ヘッドex401は、光ディスクである記録メディアex215の記録面にレーザスポットを照射して情報を書き込み、記録メディアex215の記録面からの反射光を検出して情報を読み込む。変調記録部ex402は、光ヘッドex401に内蔵された半導体レーザを電気的に駆動し記録データに応じてレーザ光の変調を行う。再生復調部ex403は、光ヘッドex401に内蔵されたフォトディテクタにより記録面からの反射光を電気的に検出した再生信号を増幅し、記録メディアex215に記録された信号成分を分離して復調し、必要な情報を再生する。バッファex404は、記録メディアex215に記録するための情報及び記録メディアex215から再生した情報を一時的に保持する。ディスクモータex405は記録メディアex215を回転させる。サーボ制御部ex406は、ディスクモータex405の回転駆動を制御しながら光ヘッドex401を所定の情報トラックに移動させ、レーザスポットの追従処理を行う。システム制御部ex407は、情報再生/記録部ex400全体の制御を行う。上記の読み出し及び書き込みの処理は、システム制御部ex407が、バッファex404に保持された各種情報を利用し、また必要に応じて新たな情報の生成及び追加を行うと共に、変調記録部ex402、再生復調部ex403及びサーボ制御部ex406を協調動作させながら、光ヘッドex401を通して、情報の記録再生を行うことにより実現される。システム制御部ex407は、例えばマイクロプロセッサで構成され、読み出し書き込みのプログラムを実行することでそれらの処理を実行する。
 以上では、光ヘッドex401はレーザスポットを照射するとして説明したが、近接場光を用いてより高密度な記録を行う構成であってもよい。
 図22に光ディスクである記録メディアex215の模式図を示す。記録メディアex215の記録面には案内溝(グルーブ)がスパイラル状に形成され、情報トラックex230には、予めグルーブの形状の変化によってディスク上の絶対位置を示す番地情報が記録されている。この番地情報はデータを記録する単位である記録ブロックex231の位置を特定するための情報を含み、記録及び再生を行う装置は、情報トラックex230を再生し番地情報を読み取ることで記録ブロックを特定することができる。また、記録メディアex215は、データ記録領域ex233、内周領域ex232、外周領域ex234を含んでいる。ユーザデータを記録するために用いる領域がデータ記録領域ex233であり、データ記録領域ex233の内周又は外周に配置されている内周領域ex232と外周領域ex234は、ユーザデータの記録以外の特定用途に用いられる。情報再生/記録部ex400は、このような記録メディアex215のデータ記録領域ex233に対して、符号化された音声データ、映像データ又はそれらのデータを多重化した符号化データの読み書きを行う。
 以上では、1層のDVD、BD等の光ディスクを例に挙げ説明したが、これらに限ったものではなく、多層構造であって表面以外にも記録可能な光ディスクであってもよい。また、ディスクの同じ場所に様々な異なる波長の色の光を用いて情報を記録したり、様々な角度から異なる情報の層を記録したりするなど、多次元的な記録/再生を行う構造の光ディスクであってもよい。
 また、デジタル放送用システムex200において、アンテナex205を有する車ex210で衛星ex202等からデータを受信し、車ex210が有するカーナビゲーションex211等の表示装置に動画を再生することも可能である。なお、カーナビゲーションex211の構成は例えば図20に示す構成のうち、GPS受信部を加えた構成が考えられ、同様なことがコンピュータex111及び携帯電話ex114等でも考えられる。また、上記携帯電話ex114等の端末は、テレビex300と同様に、符号化器及び復号器を両方持つ送受信型端末の他に、符号化器のみの送信端末、復号器のみの受信端末という3通りの実装形式が考えられる。
 このように、上記実施の形態で示した画像符号化方法あるいは画像復号方法を上述したいずれの機器及びシステムに用いることは可能であり、そうすることで、上記実施の形態で説明した効果を得ることができる。
 また、本発明は、上記実施の形態に限定されるものではなく、本発明の範囲を逸脱することなく種々の変形又は修正が可能である。
 (実施の形態4)
 上記各実施の形態で示した画像符号化方法及び装置、画像復号方法及び装置は、典型的には集積回路であるLSIで実現される。一例として、図23に1チップ化されたLSIex500の構成を示す。LSIex500は、以下に説明する要素ex501~ex509を備え、各要素はバスex510を介して接続している。電源回路部ex505は電源がオン状態の場合に各部に対して電力を供給することで動作可能な状態に起動する。
 例えば符号化処理を行う場合には、LSIex500は、CPUex502、メモリコントローラex503及びストリームコントローラex504等を有する制御部ex501の制御に基づいて、AV I/Oex509によりマイクex117及びカメラex113等からAV信号の入力を受け付ける。入力されたAV信号は、一旦SDRAM等の外部のメモリex511に蓄積される。制御部ex501の制御に基づいて、蓄積したデータは、処理量及び処理速度に応じて適宜複数回に分けるなどされ、信号処理部ex507に送られる。信号処理部ex507は、音声信号の符号化及び/又は映像信号の符号化を行う。ここで映像信号の符号化処理は、上記実施の形態で説明した符号化処理である。信号処理部ex507ではさらに、場合により符号化された音声データと符号化された映像データを多重化するなどの処理を行い、ストリームI/Oex506から外部に出力する。この出力されたビットストリームは、基地局ex107に向けて送信されたり、又は、記録メディアex215に書き込まれたりする。なお、多重化する際には同期するよう、一旦バッファex508にデータを蓄積するとよい。
 また、例えば復号処理を行う場合には、LSIex500は、制御部ex501の制御に基づいて、ストリームI/Oex506によって基地局ex107を介して得た符号化データ、又は、記録メディアex215から読み出して得た符号化データを一旦メモリex511等に蓄積する。制御部ex501の制御に基づいて、蓄積したデータは、処理量及び処理速度に応じて適宜複数回に分けるなどされ信号処理部ex507に送られる。信号処理部ex507は、音声データの復号及び/又は映像データの復号を行う。ここで映像信号の復号処理は、上記実施の形態で説明した復号処理である。さらに、場合により復号された音声信号と復号された映像信号を同期して再生できるようそれぞれの信号を一旦バッファex508等に蓄積するとよい。復号された出力信号は、メモリex511等を適宜介しながら、携帯電話ex114、ゲーム機ex115及びテレビex300等の各出力部から出力される。
 なお、上記では、メモリex511がLSIex500の外部の構成として説明したが、LSIex500の内部に含まれる構成であってもよい。バッファex508も一つに限ったものではなく、複数のバッファを備えていてもよい。また、LSIex500は1チップ化されてもよいし、複数チップ化されてもよい。
 なお、ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。
 また、集積回路化の手法はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA、又は、LSI内部の回路セルの接続及び設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
 さらには、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適応等が可能性としてありえる。
 以上、本発明に係る符号化方法、符号化装置、エラー検出方法、エラー検出装置、復号方法及び復号装置について、実施の形態に基づいて説明したが、本発明は、これらの実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を当該実施の形態に施した形態、及び、異なる実施の形態における構成要素及びステップ等を組み合わせて構築される別の形態も、本発明の範囲内に含まれる。
 本発明は、演算量の増加を抑制するとともに、画質の劣化を十分に抑制することができるという効果を奏し、静止画像及び動画像を符号化する画像符号化装置に利用することができる。例えば、本発明は、携帯電話、デジタルカメラ、BDレコーダ、デジタルテレビなどの各種AV機器に利用することができる。
100、300 画像符号化装置
110 分割部
120、320 符号化条件決定部
121 空間アクティビティ値算出部
122 比較部
123 決定部
130、330 符号化部
201 原画像
202 拡張ブロック
203 対象ブロック
204 符号化条件
205 符号化画像
211 空間アクティビティ値
212 比較結果
310 サンプル抽出部
321 空間アクティビティ条件評価部
322 予測タイプ評価部
323、708、709 スイッチ部
324 動きアクティビティ条件評価部
325 ORゲート部
331 画像符号化部
332 画像復号部
333 ピクチャメモリ部
334 エントロピー符号化部
401 利用可能予測タイプ情報
402 原画ピクチャ
403、404 原画サンプル
405、806 符号化ツール決定信号
406、604、608 制御信号
407、408、409 符号化ツール決定信号
410 インター予測サンプル
411 最終符号化ツール決定信号
412 量子化残差
413 再構築サンプル
414 再構築ピクチャ
415 圧縮ビットストリーム
501 大ブロック分割部
502 大ブロック空間アクティビティ値算出部
503 最大値算出部
504、508 空間アクティビティ値比較部
505 小ブロッククラスター形成部
506 小ブロッククラスター空間アクティビティ値算出部
507 最小値算出部
509 符号化ツール決定部
601 大ブロックサンプル
602 大ブロック空間アクティビティ値
603 最大空間アクティビティ値
605 小ブロッククラスターサンプル
606 小ブロッククラスター空間アクティビティ値
607 最小空間アクティビティ値
701 参照ピクチャ選択部
702 動き予測部
703 動き補償部
704 コスト算出部
705 コスト比較部
706 動きベクトル比較部
707 符号化ツール決定初期化部
801 参照ピクチャ
802 参照ピクチャインデックス
803 動きベクトル
804、808 制御信号
805 初期化信号
807 コスト値
ex100 コンテンツ供給システム
ex101 インターネット
ex102 インターネットサービスプロバイダ
ex103 ストリーミングサーバ
ex104 電話網
ex106、ex107、ex108、ex109、ex110 基地局
ex111 コンピュータ
ex112 PDA
ex113、ex116 カメラ
ex114 カメラ付デジタル携帯電話(携帯電話)
ex115 ゲーム機
ex117 マイク
ex200 デジタル放送用システム
ex201 放送局
ex202 放送衛星(衛星)
ex203 ケーブル
ex204、ex205、ex601 アンテナ
ex210 車
ex211 カーナビゲーション(カーナビ)
ex212 再生装置
ex213、ex219 モニタ
ex214、ex215、ex216、ex607 記録メディア
ex217 セットトップボックス(STB)
ex218 リーダ/レコーダ
ex220 リモートコントローラ
ex230 情報トラック
ex231 記録ブロック
ex232 内周領域
ex233 データ記録領域
ex234 外周領域
ex300 テレビ
ex301 チューナ
ex302 変調/復調部
ex303 多重/分離部
ex304 音声信号処理部
ex305 映像信号処理部
ex306、ex507 信号処理部
ex307 スピーカ
ex308、ex602 表示部
ex309 出力部
ex310、ex501 制御部
ex311、ex505、ex710 電源回路部
ex312 操作入力部
ex313 ブリッジ
ex314、ex606 スロット部
ex315 ドライバ
ex316 モデム
ex317 インターフェース部
ex318、ex319、ex320、ex321、ex404、ex508 バッファ
ex400 情報再生/記録部
ex401 光ヘッド
ex402 変調記録部
ex403 再生復調部
ex405 ディスクモータ
ex406 サーボ制御部
ex407 システム制御部
ex500 LSI
ex502 CPU
ex503 メモリコントローラ
ex504 ストリームコントローラ
ex506 ストリームI/O
ex509 AV I/O
ex510 バス
ex511 メモリ
ex603 カメラ部
ex604 操作キー
ex605 音声入力部
ex608 音声出力部
ex701 送受信回路部
ex702 LCD制御部
ex703 カメラインターフェース部(カメラI/F部)
ex704 操作入力制御部
ex705 音声処理部
ex706 変復調回路部
ex707 記録再生部
ex708 多重分離部
ex709 画像復号部
ex711 主制御部
ex712 画像符号化部
ex713 同期バス
 

Claims (13)

  1.  原画像を符号化する画像符号化方法であって、
     前記原画像を複数のブロックに分割し、
     前記複数のブロックの1つである対象ブロックの符号化条件を決定し、
     決定した符号化条件に従って、前記対象ブロックを符号化し、
     前記対象ブロックの符号化条件の決定では、
     前記対象ブロックの複雑度を示す値である空間アクティビティ値に基づいて、前記対象ブロックの符号化条件を決定し、
     前記空間アクティビティ値に基づいた符号化条件の決定では、
     前記対象ブロックの少なくとも一部の領域の複雑度を示す値である第1空間アクティビティ値を算出し、
     算出した第1空間アクティビティ値と予め定められた第1閾値とを比較し、
     前記第1空間アクティビティ値が前記第1閾値より小さい場合、前記対象ブロックを第1分割サイズのサブブロック毎に符号化することを示す第1符号化条件を、前記対象ブロックの符号化条件として決定し、
     前記第1空間アクティビティ値が前記第1閾値以上である場合、前記対象ブロックを、前記第1分割サイズより大きい第2分割サイズのサブブロック毎に符号化することを示す第2符号化条件を、前記対象ブロックの符号化条件として決定する
     画像符号化方法。
  2.  前記第1空間アクティビティ値の算出では、
     前記対象ブロックを少なくとも含む拡張ブロックに基づいて、前記対象ブロックの少なくとも一部の領域をそれぞれが含む複数の小ブロッククラスターを形成し、
     前記複数の小ブロッククラスターのそれぞれの複雑度を示す値である小ブロッククラスター空間アクティビティ値を算出し、算出した複数の小ブロッククラスター空間アクティビティ値のうち最小の値を、前記第1空間アクティビティ値として算出する
     請求項1記載の画像符号化方法。
  3.  前記符号化条件の決定では、さらに、
     前記対象ブロックを複数の大ブロックに分割し、
     前記複数の大ブロックのそれぞれの複雑度を示す値である大ブロック空間アクティビティ値を算出し、算出した複数の大ブロック空間アクティビティ値のうち最大の値を、第2空間アクティビティ値として算出し、
     算出した第2空間アクティビティ値と予め定められた第2閾値とを比較し、
     前記第2空間アクティビティ値が前記第2閾値以下である場合、前記第2符号化条件を前記対象ブロックの符号化条件として決定し、
     前記第2空間アクティビティ値が前記第2閾値より大きい場合、前記第1空間アクティビティ値の前記算出及び前記比較を行うことで、前記対象ブロックの符号化条件を決定する
     請求項2記載の画像符号化方法。
  4.  前記拡張ブロックは、前記対象ブロックより大きい
     請求項2記載の画像符号化方法。
  5.  前記対象ブロックの複雑度を示す値は、前記対象ブロックに含まれる複数のサンプルのサンプル値の変動を示す値である
     請求項1記載の画像符号化方法。
  6.  前記符号化条件の決定では、さらに、
     前記対象ブロックの動きに基づいて、前記対象ブロックの符号化条件を決定し、
     前記動きに基づいた符号化条件の決定では、
     前記対象ブロックの動きベクトルを算出し、
     算出した動きベクトルの絶対値と予め定められた第3閾値とを比較し、
     前記動きベクトルの絶対値が前記第3閾値より大きい場合、前記第2符号化条件を前記対象ブロックの符号化条件として決定し、
     前記動きベクトルの絶対値が前記第3閾値以下である場合、前記空間アクティビティ値に基づいた符号化条件の決定結果に従って、前記対象ブロックの符号化条件を決定する
     請求項1記載の画像符号化方法。
  7.  前記動きに基づいた符号化条件の決定では、さらに、
     算出した動きベクトルを用いて動き補償を行うことで、前記対象ブロックの予測ブロックを生成し、
     前記対象ブロックと前記予測ブロックと前記動きベクトルとを用いて、前記対象ブロックの符号化効率を示すコスト値を算出し、
     前記動きベクトルの絶対値が前記第3閾値以下である場合、前記コスト値と予め定められた第4閾値との比較を行い、
     前記コスト値が前記第4閾値より小さい場合、前記第2符号化条件を前記対象ブロックの符号化条件として決定し、
     前記コスト値が前記第4閾値以上である場合、前記空間アクティビティ値に基づいた符号化条件の決定結果に従って、前記対象ブロックの符号化条件を決定する
     請求項6記載の画像符号化方法。
  8.  前記コスト値は、前記対象ブロックと前記予測ブロックとの差分絶対値和に基づいて算出される
     請求項6記載の画像符号化方法。
  9.  前記第1分割サイズ又は前記第2分割サイズのサブブロックは、イントラ予測、動き補償、及び、周波数変換の少なくとも1つの処理が実行される処理単位である
     請求項1記載の画像符号化方法。
  10.  原画像を符号化する画像符号化方法であって、
     前記原画像を複数のブロックに分割し、
     前記複数のブロックの1つである対象ブロックの符号化条件を決定し、
     決定した符号化条件に従って、前記対象ブロックを符号化し、
     前記対象ブロックの符号化条件の決定では、
     前記対象ブロックの動きベクトルを算出し、
     算出した動きベクトルの絶対値と予め定められた閾値とを比較し、
     前記動きベクトルの絶対値が前記閾値以下である場合、前記対象ブロックを第1分割サイズのサブブロック毎に符号化することを示す第1符号化条件を、前記対象ブロックの符号化条件として決定し、
     前記動きベクトルの絶対値が前記閾値より大きい場合、前記対象ブロックを、前記第1分割サイズより大きい第2分割サイズのサブブロック毎に符号化することを示す第2符号化条件を前記対象ブロックの符号化条件として決定する
     画像符号化方法。
  11.  原画像を符号化する画像符号化装置であって、
     前記原画像を複数のブロックに分割する分割部と、
     前記複数のブロックの1つである対象ブロックの符号化条件を決定する符号化条件決定部と、
     前記符号化条件決定部によって決定された符号化条件に従って、前記対象ブロックを符号化する符号化部とを備え、
     前記符号化条件決定部は、
     前記対象ブロックの少なくとも一部の領域の複雑度を示す値である空間アクティビティ値を算出する空間アクティビティ値算出部と、
     前記空間アクティビティ値算出部によって算出された空間アクティビティ値と予め定められた閾値とを比較する比較部と、
     前記空間アクティビティ値が前記閾値より小さい場合、前記対象ブロックを第1分割サイズのサブブロック毎に符号化することを示す第1符号化条件を、前記対象ブロックの符号化条件として決定し、前記空間アクティビティ値が前記閾値以上である場合、前記対象ブロックを、前記第1分割サイズより大きい第2分割サイズのサブブロック毎に符号化することを示す第2符号化条件を、前記対象ブロックの符号化条件として決定する決定部とを備える
     画像符号化装置。
  12.  原画像を符号化する画像符号化方法をコンピュータに実行させるためのプログラムであって、
     前記画像符号化方法では、
     前記原画像を複数のブロックに分割し、
     前記複数のブロックの1つである対象ブロックの符号化条件を決定し、
     決定した符号化条件に従って、前記対象ブロックを符号化し、
     前記対象ブロックの符号化条件の決定では、
     前記対象ブロックの少なくとも一部の領域の複雑度を示す値である空間アクティビティ値を算出し、
     算出した空間アクティビティ値と予め定められた閾値とを比較し、
     前記空間アクティビティ値が前記閾値より小さい場合、前記対象ブロックを第1分割サイズのサブブロック毎に符号化することを示す第1符号化条件を、前記対象ブロックの符号化条件として決定し、
     前記空間アクティビティ値が前記閾値以上である場合、前記対象ブロックを、前記第1分割サイズより大きい第2分割サイズのサブブロック毎に符号化することを示す第2符号化条件を、前記対象ブロックの符号化条件として決定する
     プログラム。
  13.  原画像を符号化する集積回路であって、
     前記原画像を複数のブロックに分割する分割部と、
     前記複数のブロックの1つである対象ブロックの符号化条件を決定する符号化条件決定部と、
     前記符号化条件決定部によって決定された符号化条件に従って、前記対象ブロックを符号化する符号化部とを備え、
     前記符号化条件決定部は、
     前記対象ブロックの少なくとも一部の領域の複雑度を示す値である空間アクティビティ値を算出する空間アクティビティ値算出部と、
     前記空間アクティビティ値算出部によって算出された空間アクティビティ値と予め定められた閾値とを比較する比較部と、
     前記空間アクティビティ値が前記閾値より小さい場合、前記対象ブロックを第1分割サイズのサブブロック毎に符号化することを示す第1符号化条件を、前記対象ブロックの符号化条件として決定し、前記空間アクティビティ値が前記閾値以上である場合、前記対象ブロックを、前記第1分割サイズより大きい第2分割サイズのサブブロック毎に符号化することを示す第2符号化条件を、前記対象ブロックの符号化条件として決定する決定部とを備える
     集積回路。
     
     
PCT/JP2010/003985 2009-06-22 2010-06-16 画像符号化方法及び画像符号化装置 WO2010150486A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US13/059,804 US8902985B2 (en) 2009-06-22 2010-06-16 Image coding method and image coding apparatus for determining coding conditions based on spatial-activity value
CN201080002356.9A CN102124741B (zh) 2009-06-22 2010-06-16 图像编码方法及图像编码装置
JP2011519558A JP5588438B2 (ja) 2009-06-22 2010-06-16 画像符号化方法及び画像符号化装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009-148043 2009-06-22
JP2009148043 2009-06-22

Publications (1)

Publication Number Publication Date
WO2010150486A1 true WO2010150486A1 (ja) 2010-12-29

Family

ID=43386274

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/003985 WO2010150486A1 (ja) 2009-06-22 2010-06-16 画像符号化方法及び画像符号化装置

Country Status (4)

Country Link
US (1) US8902985B2 (ja)
JP (1) JP5588438B2 (ja)
CN (1) CN102124741B (ja)
WO (1) WO2010150486A1 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015012253A1 (ja) * 2013-07-25 2015-01-29 日本電信電話株式会社 画像符号化装置及び方法、及び画像符号化プログラム
RU2551473C2 (ru) * 2011-03-09 2015-05-27 Ниппон Телеграф Энд Телефон Корпорейшн Устройство кодирования видео, способ кодирования видео и программа кодирования видео
JP2015115903A (ja) * 2013-12-13 2015-06-22 キヤノン株式会社 撮像装置、撮像装置の制御方法、コンピュータプログラム
JP2015211269A (ja) * 2014-04-24 2015-11-24 富士通株式会社 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム
JP2016213615A (ja) * 2015-05-01 2016-12-15 富士通株式会社 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム
KR101739822B1 (ko) 2015-12-07 2017-05-25 (주)넥스트칩 아날로그 영상 신호 압축 방법 및 장치
JP2017515374A (ja) * 2014-04-15 2017-06-08 クアルコム,インコーポレイテッド ディスプレイストリーム圧縮(dsc)のための平坦度検出のためのシステムおよび方法

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2674310C (en) * 2007-01-16 2016-05-24 Thomson Licensing System and method for reducing artifacts in images
KR101483497B1 (ko) * 2008-09-25 2015-01-20 에스케이텔레콤 주식회사 임펄스 신호를 고려한 영상 부호화/복호화 장치 및 방법
WO2013140722A1 (ja) * 2012-03-21 2013-09-26 パナソニック株式会社 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、および画像符号化復号装置
JP6083973B2 (ja) * 2012-08-08 2017-02-22 株式会社メガチップス データ記憶制御装置およびデータ記憶方法
US10003792B2 (en) * 2013-05-27 2018-06-19 Microsoft Technology Licensing, Llc Video encoder for images
US10136140B2 (en) 2014-03-17 2018-11-20 Microsoft Technology Licensing, Llc Encoder-side decisions for screen content encoding
JP2016066922A (ja) * 2014-09-25 2016-04-28 ソニー株式会社 信号処理装置、撮像装置、および、それらにおける信号処理方法。
US10924743B2 (en) 2015-02-06 2021-02-16 Microsoft Technology Licensing, Llc Skipping evaluation stages during media encoding
US10136132B2 (en) 2015-07-21 2018-11-20 Microsoft Technology Licensing, Llc Adaptive skip or zero block detection combined with transform size decision
MX2018006642A (es) * 2015-12-14 2018-08-01 Panasonic Ip Corp America Metodo de codificacion de datos tridimencionales, metodos de decodificacion de datos tridimensionales, dispositivo de codificacion de datos tridimensionales y dispositivo de decodificacion de datos tridimensionales.
US10674172B2 (en) * 2016-04-19 2020-06-02 Mitsubishi Electric Corporation Image processing apparatus, image processing method, and computer-readable recording medium
WO2018008678A1 (ja) * 2016-07-08 2018-01-11 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 復号装置、符号化装置、復号方法及び符号化方法
US10694202B2 (en) * 2016-12-01 2020-06-23 Qualcomm Incorporated Indication of bilateral filter usage in video coding
US20200036978A1 (en) 2017-03-22 2020-01-30 Industry-University Cooperation Foundation Hanyang University Image encoding/decoding method using pixel value range constituting image
CN112640458A (zh) * 2019-01-16 2021-04-09 Oppo广东移动通信有限公司 信息处理方法及装置、设备、存储介质
US11190774B1 (en) * 2020-05-29 2021-11-30 Microsoft Technology Licensing, Llc Screen content encoding mode evaluation including intra-block evaluation of multiple potential encoding modes

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0591338A (ja) * 1991-09-30 1993-04-09 Victor Co Of Japan Ltd 映像情報量圧縮及び/又は情報量伸長装置
JP2006519565A (ja) * 2003-03-03 2006-08-24 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ビデオ符号化
JP2007060164A (ja) * 2005-08-23 2007-03-08 Matsushita Electric Ind Co Ltd 動きベクトル検出装置および動きベクトル検出方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07284105A (ja) 1994-04-13 1995-10-27 Matsushita Electric Ind Co Ltd 動きベクトル検出装置
KR0139164B1 (ko) 1994-12-19 1998-06-01 김광호 적응적 직교변환부호화 장치
JP4447197B2 (ja) * 2002-01-07 2010-04-07 三菱電機株式会社 動画像符号化装置および動画像復号装置
US20040125204A1 (en) 2002-12-27 2004-07-01 Yoshihisa Yamada Moving picture coding apparatus and moving picture decoding apparatus
CN1757240A (zh) 2003-03-03 2006-04-05 皇家飞利浦电子股份有限公司 视频编码
US20060002474A1 (en) * 2004-06-26 2006-01-05 Oscar Chi-Lim Au Efficient multi-block motion estimation for video compression
JP2007110568A (ja) 2005-10-14 2007-04-26 Matsushita Electric Ind Co Ltd 画像符号化装置
KR100728031B1 (ko) * 2006-01-23 2007-06-14 삼성전자주식회사 가변 블록 크기 움직임 예측을 위한 부호화 모드 결정 방법및 장치
JP4775132B2 (ja) 2006-06-20 2011-09-21 ソニー株式会社 画像理装置および方法、プログラム、並びに記録媒体

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0591338A (ja) * 1991-09-30 1993-04-09 Victor Co Of Japan Ltd 映像情報量圧縮及び/又は情報量伸長装置
JP2006519565A (ja) * 2003-03-03 2006-08-24 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ビデオ符号化
JP2007060164A (ja) * 2005-08-23 2007-03-08 Matsushita Electric Ind Co Ltd 動きベクトル検出装置および動きベクトル検出方法

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2551473C2 (ru) * 2011-03-09 2015-05-27 Ниппон Телеграф Энд Телефон Корпорейшн Устройство кодирования видео, способ кодирования видео и программа кодирования видео
US9445089B2 (en) 2011-03-09 2016-09-13 Nippon Telegraph And Telephone Corporation Video encoding device, video encoding method and video encoding program
WO2015012253A1 (ja) * 2013-07-25 2015-01-29 日本電信電話株式会社 画像符号化装置及び方法、及び画像符号化プログラム
JP2015026964A (ja) * 2013-07-25 2015-02-05 日本電信電話株式会社 画像符号化方法、画像符号化装置及び画像符号化プログラム
US20160156911A1 (en) * 2013-07-25 2016-06-02 Nippon Telegraph And Telephone Corporation Image encoding apparatus and method, and image encoding program
US10375402B2 (en) 2013-07-25 2019-08-06 Nippon Telegraph And Telephone Corporation Image encoding apparatus and method, and image encoding program
JP2015115903A (ja) * 2013-12-13 2015-06-22 キヤノン株式会社 撮像装置、撮像装置の制御方法、コンピュータプログラム
JP2017515374A (ja) * 2014-04-15 2017-06-08 クアルコム,インコーポレイテッド ディスプレイストリーム圧縮(dsc)のための平坦度検出のためのシステムおよび方法
JP2015211269A (ja) * 2014-04-24 2015-11-24 富士通株式会社 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム
JP2016213615A (ja) * 2015-05-01 2016-12-15 富士通株式会社 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム
KR101739822B1 (ko) 2015-12-07 2017-05-25 (주)넥스트칩 아날로그 영상 신호 압축 방법 및 장치

Also Published As

Publication number Publication date
CN102124741A (zh) 2011-07-13
US8902985B2 (en) 2014-12-02
JP5588438B2 (ja) 2014-09-10
US20110142134A1 (en) 2011-06-16
CN102124741B (zh) 2014-09-24
JPWO2010150486A1 (ja) 2012-12-06

Similar Documents

Publication Publication Date Title
JP5588438B2 (ja) 画像符号化方法及び画像符号化装置
JP5574345B2 (ja) 符号化方法、エラー検出方法、復号方法、符号化装置、エラー検出装置及び復号装置
JP5479470B2 (ja) 動画像符号化方法、動画像符号化装置、プログラム、および集積回路
WO2010087157A1 (ja) 画像符号化方法及び画像復号方法
WO2010050156A1 (ja) 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、集積回路およびプログラム
WO2010026770A1 (ja) 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、システム、プログラム、及び集積回路
WO2011016247A1 (ja) 符号化方法、復号方法、符号化装置及び復号装置
WO2010113524A1 (ja) 動画像符号化方法、動画像復号方法、動画像符号化装置および動画像復号装置
WO2010061607A1 (ja) 動画像復号方法、動画像符号化方法、動画像復号装置、動画像符号化方法、プログラム、及び集積回路
WO2011052215A1 (ja) 復号方法、復号装置、符号化方法、および符号化装置
WO2011016251A1 (ja) 符号化方法、復号方法、符号化装置及び復号装置
WO2011052217A1 (ja) 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置、プログラム、及び集積回路
WO2011016250A1 (ja) 符号化方法、復号方法、符号化装置及び復号装置
WO2011111341A1 (ja) 動画像復号装置、動画像符号化装置、動画像復号回路及び動画像復号方法
JP5679980B2 (ja) 画像符号化方法、画像復号方法、画像符号化装置及び画像復号装置
JP5499035B2 (ja) 画像符号化方法、画像符号化装置、プログラムおよび集積回路
JP5546044B2 (ja) 画像復号装置、画像符号化装置、画像復号回路及び画像復号方法
WO2011052216A1 (ja) 画像符号化方法、画像復号方法、画像符号化装置および画像復号装置
JP5468604B2 (ja) 画像復号装置、集積回路、画像復号方法及び画像復号システム
WO2011089865A1 (ja) 画像符号化方法、画像復号方法、それらの装置、プログラムおよび集積回路
JP2011182132A (ja) 画像符号化装置、画像復号装置、画像符号化方法、画像復号方法、集積回路およびプログラム

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201080002356.9

Country of ref document: CN

ENP Entry into the national phase

Ref document number: 2011519558

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 13059804

Country of ref document: US

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

Ref document number: 10791810

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 10791810

Country of ref document: EP

Kind code of ref document: A1