WO2014156707A1 - 画像符号化装置および方法、並びに、画像復号装置および方法 - Google Patents

画像符号化装置および方法、並びに、画像復号装置および方法 Download PDF

Info

Publication number
WO2014156707A1
WO2014156707A1 PCT/JP2014/056830 JP2014056830W WO2014156707A1 WO 2014156707 A1 WO2014156707 A1 WO 2014156707A1 JP 2014056830 W JP2014056830 W JP 2014056830W WO 2014156707 A1 WO2014156707 A1 WO 2014156707A1
Authority
WO
WIPO (PCT)
Prior art keywords
unit
image
data
encoding
residual data
Prior art date
Application number
PCT/JP2014/056830
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 ソニー株式会社
Publication of WO2014156707A1 publication Critical patent/WO2014156707A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/187Methods 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 a scalable video layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop

Definitions

  • the present disclosure relates to an image encoding apparatus and method, and an image decoding apparatus and method, and in particular, an image encoding apparatus and method capable of suppressing an increase in storage capacity necessary for encoding or decoding, and
  • the present invention relates to an image decoding apparatus and method.
  • MPEG2 (ISO / IEC 13818-2) is defined as a general-purpose image encoding system, and is a standard that covers both interlaced scanning images and progressive scanning images, as well as standard resolution images and high-definition images.
  • MPEG2 is currently widely used in a wide range of applications for professional and consumer applications.
  • a code amount (bit rate) of 4 to 8 Mbps is assigned to an interlaced scanned image having a standard resolution of 720 ⁇ 480 pixels.
  • a high resolution interlaced scanned image having 1920 ⁇ 1088 pixels is assigned a code amount (bit rate) of 18 to 22 Mbps.
  • bit rate code amount
  • MPEG2 was mainly intended for high-quality encoding suitable for broadcasting, but did not support encoding methods with a lower code amount (bit rate) than MPEG1, that is, a higher compression rate.
  • bit rate code amount
  • MPEG4 encoding system has been standardized accordingly.
  • the standard was approved as an international standard in December 1998 as ISO / IEC 14496-2.
  • H.26L International Telecommunication Union Telecommunication Standardization Sector
  • Q6 / 16 VCEG Video Coding Expert Group
  • H.26L is known to achieve higher encoding efficiency than the conventional encoding schemes such as MPEG2 and MPEG4, although a large amount of calculation is required for encoding and decoding.
  • Joint ⁇ ⁇ ⁇ ⁇ Model of Enhanced-Compression Video Coding has been implemented based on this H.26L and incorporating functions not supported by H.26L to achieve higher coding efficiency. It was broken.
  • AVC Advanced Video Coding
  • HEVC High Efficiency Video Video Coding
  • JCTVC Joint Collaboration Collaboration Team Video Coding
  • ISO / IEC ISO / IEC
  • the standardization of the encoding method called is being advanced.
  • CommitteeCommitdraft which is a draft version specification, was issued in January 2013 (see Non-Patent Document 1, for example).
  • an interpolation filter for motion compensation is defined.
  • the luminance signal is subjected to motion compensation with 1/4 pixel accuracy using an 8-tap filter.
  • the color difference signal is subjected to motion compensation with 1/8 pixel accuracy using a 4-tap filter.
  • the processing is specified to be within 16-bit accuracy.
  • DCT-IF see, for example, Non-Patent Document 2.
  • the conventional image encoding methods such as MPEG-2 and AVC have a scalability function for encoding an image by layering it into a plurality of layers.
  • the same hierarchical coding / hierarchical decoding also referred to as scalable coding / scalable decoding
  • image data to be processed is hierarchized, and a base layer (Base layer) that performs encoding / decoding without referring to other layers and other layers (base
  • Base layer that performs encoding / decoding without referring to other layers and other layers
  • base layer that performs encoding / decoding without referring to other layers and other layers
  • enhancement layer enhancement layer that performs encoding / decoding with reference to a layer or another enhancement layer
  • a layer is used for a prediction error signal (also referred to as a residual signal) of an inter block that is a macroblock coded by inter-frame prediction coding. Inter-prediction can be performed.
  • a prediction error signal also referred to as a residual signal
  • it has been proposed to perform similar processing (for example, see Non-Patent Document 4). Also in this Non-Patent Document 4, it is proposed to use an interpolation filter for motion compensation in the upsampling process of the residual signal.
  • JCTVC-L1003_v4 Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO / IEC JTC 1 / SC 29 / WG 11 12th Meeting: Geneva, CH, 14-23 Jan.
  • JCTVC-A124 Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO / IEC JTC1 / SC29 / WG111st Meeting: Dres -23 April, 2010 Jianle Chen, Jill Boyce, Yan Ye, Miska M.
  • JCT-VC Joint Collaborative Team on Video Coding
  • the storage capacity of the register or buffer for holding the residual signal may increase.
  • the present disclosure has been made in view of such a situation, and is intended to suppress an increase in storage capacity necessary for encoding or decoding.
  • One aspect of the present technology performs a process of reducing the amount of information by reducing accuracy with respect to residual data that is a prediction error of inter-frame prediction in another layer different from the current layer of image data including a plurality of layers.
  • An information amount reducing unit a storage unit storing the residual data whose information amount is reduced by the information amount reducing unit, and reading the residual data from the storage unit, and using the read residual data
  • An image encoding device comprising: an encoding unit that encodes the current layer of image data.
  • the information amount reduction unit can quantize the residual data.
  • the information amount reduction unit can quantize the residual data by bit-shifting the residual data in a direction to reduce the bit depth.
  • the information amount reduction unit can perform the bit shift after rounding off the lower bits of the residual data.
  • a transmission unit that transmits the encoded data of the image data generated by the encoding unit and information indicating the shift amount of the bit shift can be further provided.
  • the transmission unit can transmit information indicating the shift amount of the bit shift for each of the luminance signal and the color difference signal.
  • the transmission unit transmits information indicating whether to perform encoding using the residual data of the other layer, and the information performs encoding using the residual data of the other layer. Only when indicated, information indicating the shift amount of the bit shift can be further transmitted.
  • an inverse quantization unit that inversely quantizes the residual data
  • an upsampling unit that upsamples the residual data according to a resolution ratio between the current layer and the other layer
  • the inverse quantization unit and the up-sampling unit are configured to inverse-quantize and then up-sample the residual data read from the storage unit, or up-sample and then inverse-quantize the encoding unit.
  • One aspect of the present technology also reduces the amount of information by reducing accuracy with respect to residual data that is a prediction error of inter-frame prediction in another layer different from the current layer of image data including a plurality of layers, An image encoding method for storing the residual data with a reduced amount of information, reading the stored residual data, and encoding the current layer of the image data using the read residual data. .
  • Another aspect of the present technology is a process for reducing the amount of information by reducing accuracy with respect to residual data that is a prediction error of inter-frame prediction in another layer different from the current layer of image data including a plurality of layers.
  • An information amount reducing unit to perform a storage unit for storing the residual data whose information amount has been reduced by the information amount reducing unit, and reading the residual data from the storage unit, and using the read residual data
  • a decoding unit that decodes the current layer of the encoded data of the image data.
  • the information amount reduction unit can quantize the residual data.
  • the information amount reduction unit can quantize the residual data by bit-shifting the residual data in a direction to reduce the bit depth.
  • the information amount reduction unit can perform the bit shift after rounding off the lower bits of the residual data.
  • the information processing apparatus further includes a receiving unit that receives the encoded data and information indicating a shift amount of the bit shift, and the information amount reducing unit is configured to reduce the residual by the shift amount indicated in the information received by the receiving unit.
  • Bit-shift data, and the decoding unit reads the residual data from the storage unit, and uses the read residual data to decode the current layer of the encoded data received by the receiving unit. It can be carried out.
  • the receiving unit can receive information indicating the shift amount of the bit shift for each of the luminance signal and the color difference signal.
  • the receiving unit receives information indicating whether to perform encoding using the residual data of the other layer, and the received information performs encoding using the residual data of the other layer Only when this indicates, it is possible to further receive information indicating the shift amount of the bit shift.
  • the encoding unit can perform prediction processing using the residual data, generate a prediction image, and encode the current layer of the image data using the generated prediction image.
  • an inverse quantization unit that inversely quantizes the residual data
  • an upsampling unit that upsamples the residual data according to a resolution ratio between the current layer and the other layer
  • the inverse quantization unit and the up-sampling unit are configured to inverse-quantize and then up-sample the residual data read from the storage unit, or up-sample and then inverse-quantize the encoding unit. Can encode the current layer of the image data using the residual data subjected to both the inverse quantization and the upsampling.
  • Another aspect of the present technology also reduces the amount of information by reducing accuracy with respect to residual data that is a prediction error of inter-frame prediction in another layer different from the current layer of image data including a plurality of layers. Processing, storing the residual data with a reduced amount of information, reading the stored residual data, and decoding the current layer of the encoded data of the image data using the read residual data This is an image decoding method.
  • the amount of information is reduced by reducing accuracy with respect to residual data that is a prediction error of inter-frame prediction in another layer different from the current layer of image data including a plurality of layers.
  • the residual data with a reduced amount is stored, the stored residual data is read, and the current layer of the image data is encoded using the read residual data.
  • Another aspect of the present technology also reduces the amount of information by reducing accuracy with respect to residual data that is a prediction error of inter-frame prediction in another layer different from the current layer of image data including a plurality of layers.
  • the residual data in which the amount of information is reduced is stored, the stored residual data is read, and the current data of the encoded data of the image data is read using the read residual data Layer decoding is performed.
  • an image can be encoded and decoded.
  • an increase in storage capacity required for encoding or decoding can be suppressed.
  • FIG. 9 is a diagram subsequent to FIG. 8 for explaining an example of syntax of a sequence parameter set. It is a block diagram which shows the main structural examples of an image coding apparatus.
  • FIG. 20 is a block diagram which shows the other structural example of a residual signal acquisition part. It is a flowchart explaining the example of the flow of an image decoding process. It is a flowchart explaining the example of the flow of a base layer decoding process. It is a flowchart explaining the example of the flow of an enhancement layer decoding process. It is a figure which shows the example of a multiview image encoding system. It is a figure which shows the main structural examples of the multiview image coding apparatus to which this technique is applied. It is a figure which shows the main structural examples of the multiview image decoding apparatus to which this technique is applied. And FIG. 20 is a block diagram illustrating a main configuration example of a computer.
  • ⁇ Coding unit> In the AVC (Advanced Video Coding) method, a hierarchical structure is defined by macroblocks and sub-macroblocks. However, a macroblock of 16 pixels ⁇ 16 pixels is not optimal for a large image frame such as UHD (Ultra High Definition; 4000 pixels ⁇ 2000 pixels), which is a target of the next generation encoding method.
  • UHD Ultra High Definition
  • a coding unit (Coding Unit)) is defined.
  • CU also called Coding Tree Block (CTB)
  • CTB Coding Tree Block
  • the maximum size (LCU (Largest Coding Unit)) and the minimum size (SCU (Smallest Coding Unit)) are specified.
  • the LCU size is 128 and the maximum hierarchical depth is 5.
  • split_flag is “1”
  • the 2N ⁇ 2N size CU is divided into N ⁇ N size CUs that are one level below.
  • the CU is divided into prediction units (Prediction Units (PU)) that are regions (partial regions of images in units of pictures) that are processing units of intra or inter prediction, and are regions that are processing units of orthogonal transformation It is divided into transform units (Transform Unit (TU)), which is (a partial area of an image in units of pictures).
  • Prediction Units PU
  • transform Unit Transform Unit
  • a macro block in the AVC method corresponds to an LCU
  • a block (sub block) corresponds to a CU. Then you can think.
  • a motion compensation block in the AVC method can be considered to correspond to a PU.
  • the size of the LCU of the highest hierarchy is generally set larger than the macro block of the AVC method, for example, 128 ⁇ 128 pixels.
  • the LCU also includes a macroblock in the AVC scheme
  • the CU also includes a block (sub-block) in the AVC scheme.
  • “block” used in the following description indicates an arbitrary partial area in the picture, and its size, shape, characteristics, and the like are not limited. That is, the “block” includes an arbitrary area (processing unit) such as a TU, PU, SCU, CU, LCU, sub-block, macroblock, or slice. Of course, other partial areas (processing units) are also included. When it is necessary to limit the size, processing unit, etc., it will be described as appropriate.
  • CTU Coding Tree Unit
  • CTB Coding Tree Block
  • CU Coding ⁇ Unit
  • CB Coding ⁇ ⁇ ⁇ ⁇ Block
  • JM Job Model
  • JM JM
  • High Complexity Mode Low Complexity Mode.
  • a cost function value for each prediction mode Mode is calculated, and a prediction mode that minimizes the cost function value is selected as the optimum mode for the block or macroblock.
  • is a whole set of candidate modes for encoding the block or macroblock
  • D is a difference energy between the decoded image and the input image when encoded in the prediction mode.
  • is a Lagrange undetermined multiplier given as a function of the quantization parameter.
  • R is the total code amount when encoding is performed in this mode, including orthogonal transform coefficients.
  • D is the difference energy between the predicted image and the input image, unlike the case of High Complexity Mode.
  • QP2Quant QP
  • HeaderBit is a code amount related to information belonging to Header, such as a motion vector and mode, which does not include an orthogonal transform coefficient.
  • Scalable encoding is a scheme in which an image is divided into a plurality of layers (hierarchical) and encoded for each layer.
  • FIG. 2 is a diagram illustrating an example of a hierarchical image encoding scheme.
  • the hierarchized image includes images of a plurality of hierarchies (layers) having different predetermined parameter values.
  • a plurality of layers of this hierarchical image are encoded / decoded using only the image of the own layer without using the image of the other layer, and encoded / decoded using the image of the other layer.
  • It consists of a non-base layer (also called enhancement layer) that performs decoding.
  • the non-base layer an image of the base layer may be used, or an image of another non-base layer may be used.
  • the non-base layer is composed of difference image data (difference data) between its own image and an image of another layer so that redundancy is reduced.
  • difference image data difference data
  • an image with lower quality than the original image can be obtained using only the base layer data.
  • an original image that is, a high-quality image
  • image compression information of only the base layer (base layer) is transmitted, and a moving image with low spatiotemporal resolution or poor image quality is played
  • base layer For terminals with high processing power, such as televisions and personal computers, in addition to the base layer (base layer), image enhancement information of the enhancement layer (enhancement layer) is transmitted.
  • Image compression information corresponding to the capabilities of the terminal and the network can be transmitted from the server without performing transcoding processing, such as playing a moving image with high image quality.
  • parameters having a scalability function are arbitrary.
  • the spatial resolution as shown in FIG. 3 may be used as the parameter (spatial scalability).
  • the resolution of the image is different for each layer. That is, as shown in FIG. 3, the enhancement is such that each picture is synthesized with the base layer having a spatially lower resolution than the original image and the base layer image to obtain the original image (original spatial resolution). Layered into two layers.
  • this number of hierarchies is an example, and the number of hierarchies can be hierarchized.
  • temporal resolution as shown in FIG. 4 may be applied (temporal scalability).
  • the frame rate is different for each layer. That is, in this case, as shown in FIG. 4, layers are layered at different frame rates, and by adding a high frame rate layer to a low frame rate layer, a higher frame rate moving image is obtained. By adding all the layers, the original moving image (original frame rate) can be obtained.
  • This number of hierarchies is an example, and can be hierarchized to an arbitrary number of hierarchies.
  • a signal-to-noise ratio (SNR (Signal to Noise ratio)) may be applied (SNR ⁇ ⁇ scalability) as a parameter for providing such scalability.
  • SNR Signal-to-noise ratio
  • the SN ratio is different for each layer. That is, as shown in FIG. 5, each picture has two layers of enhancement layers in which the original image (original SNR) is obtained by combining the base layer with a lower SNR than the original image and the base layer image. Is layered. In other words, in the base layer image compression information, information related to the low PSNR image is transmitted, and the enhancement layer (enhancement layer) image compression information is added to this to reconstruct a high PSNR image. It is possible.
  • this number of hierarchies is an example, and the number of hierarchies can be hierarchized.
  • the base layer (base layer) consists of 8-bit (bit) images, and by adding an enhancement layer (enhancement layer) to this, the bit depth scalability (bit-depth ⁇ ⁇ ⁇ scalability) from which a 10-bit (bit) image can be obtained is there.
  • base layer (base ⁇ ⁇ layer) consists of component images in 4: 2: 0 format, and by adding the enhancement layer (enhancement layer) to this, chroma scalability (chroma) scalability).
  • an interpolation filter for motion compensation as shown in FIG. 6 is defined.
  • the luminance signal is subjected to motion compensation with 1/4 pixel accuracy using an 8-tap filter.
  • the color difference signal is subjected to motion compensation with 1/8 pixel accuracy using a 4-tap filter.
  • the processing is specified to be within 16-bit accuracy.
  • Inter-layer prediction> By the way, in the scalable coding process based on the AVC coding process, a layer is used for a prediction error signal (also referred to as a residual signal) of an inter block that is a macroblock coded by inter-frame prediction coding. Inter-prediction can be performed.
  • Non-patent document 4 proposes to perform the same processing in scalable encoding processing based on HEVC encoding processing.
  • the residual signal [Res E ] in the enhancement layer includes the image data [Cur E ] of the current block of the enhancement layer and the image data [Ref E ] of the reference block of the enhancement layer. And is calculated as in the following equation (3).
  • the residual signal [Res B ] in the base layer is obtained by using the following formula using the image data [Cur B ] of the current block of the base layer and the image data [Ref B ] of the reference block of the base layer: It is calculated as in 4).
  • the resolution is different between the base layer and the enhancement layer. Therefore, the residual signal [Res B ] in the base layer is upsampled to the enhancement layer resolution, and the residual signal information in the enhancement layer is reduced using the upsampled residual signal in the base layer. Like that.
  • the residual signal in the enhancement layer after the operation [Res E '] is the residual signal in the enhancement layer before calculating a [Res E], and a residual signal UP [Res B] in the upsampled base layer And is calculated as shown in the following equation (5).
  • the residual signal also referred to as residual data
  • the input signal is 8 bits (bits)
  • the residual signal is 9 bits with a sign. Therefore, the storage capacity of the register or buffer for holding the residual signal may increase.
  • residual data also referred to as a residual signal
  • the processing result is stored in a storage unit such as a register or a buffer.
  • residual data with a reduced amount of information stored in the storage unit is used.
  • an increase in the amount of information of residual data stored in the storage unit can be suppressed. That is, an increase in the storage capacity of the storage unit can be suppressed. That is, an increase in storage capacity required for encoding / decoding can be suppressed.
  • the “current layer” is a layer to be encoded / decoded, for example, an enhancement layer.
  • the “other layer” is a layer other than the current layer for acquiring residual data used in the processing of the current layer, and indicates, for example, a base layer or another enhancement layer.
  • This “processing for reducing the amount of information by reducing accuracy” may be, for example, quantization processing. That is, for example, the residual data in the base layer may be quantized, and the quantized residual data in the base layer may be stored in a storage unit (for example, a register or a buffer). In this case, in the encoding / decoding process in the enhancement layer, the quantized residual data in the base layer is read from the storage unit and used.
  • a storage unit for example, a register or a buffer
  • the “quantization process” may be a bit shift in the direction of reducing the bit depth for the residual data, for example. More specifically, for example, bit shift of the residual data in the base layer may be performed (that is, quantized) as in the following Expression (6) or Expression (7).
  • the residual data in the base layer is Res_Base
  • the quantized residual data in the base layer is Q (Res_Base)
  • the shift amount of the bit shift is n bits. To do.
  • bit shift quantization processing
  • the bit depth of the residual data Res_Base in the base layer can be reduced (that is, the information amount can be reduced).
  • the shift amount n may be a predetermined value, but this shift amount may be set at the time of encoding.
  • the shift amount is set based on arbitrary information such as an instruction or request from the outside such as a user or another device, information acquired from the outside, or information calculated based on the information. You may be able to.
  • it may be set according to the bit depth of the input signal.
  • Bit shift (quantization processing) as described above increases the storage capacity required for encoding / decoding, especially when data is byte-aligned and processed in units of bytes (8 bits). It can be significantly suppressed.
  • the data needs to be byte-aligned. That is, the residual data in the base layer is handled as data in units of bytes (8 bits).
  • the storage unit needs to secure a bit width of 16 bits (2 bytes) in order to store the residual data in the 9-bit base layer. For this reason, the storage capacity required for encoding / decoding may increase significantly.
  • the storage unit only needs to secure a bit width of 8 bits (1 byte) to store the residual data in the base layer. That is, an increase in storage capacity necessary for encoding / decoding can be more significantly suppressed.
  • the quantized residual data in the base layer stored in the storage unit is read from the storage unit, and is used in intra prediction and inter prediction for enhancement layer encoding / decoding. At that time, the residual data in the quantized base layer read out from the storage unit may be inversely quantized.
  • This “inverse quantization process” may be, for example, a bit shift in the direction of increasing the bit depth for the residual data. More specifically, for example, bit shift of the residual data in the quantized base layer may be performed (that is, inverse quantization) as in the following Expression (8).
  • the residual data in the dequantized base layer is Res_Base ′
  • the residual data in the quantized base layer is Q (Res_Base)
  • the shift amount of the bit shift is n bits. To do.
  • the inverse quantization process is a bit shift in the opposite direction to the quantization process.
  • the bit depth of the residual data in the base layer can be restored. That is, residual data in the base layer can be used more easily in the enhancement layer encoding / decoding.
  • the residual data in the base layer read from the storage unit may be up-sampled according to the ratio of scalable parameters between layers (for example, between the base layer and the enhancement layer) in scalable coding.
  • the residual data in the base layer may be upsampled according to the resolution ratio between the base layer and the enhancement layer.
  • the residual data Res_Base ′ in the base layer can be set to the enhancement layer reference scale. That is, residual data in the base layer can be used more easily in the enhancement layer encoding / decoding.
  • the accuracy of the residual data in the base layer is naturally reduced by performing the process of reducing the amount of information by reducing the accuracy, but in practice, The effect on the image quality (degradation of image quality) due to the accuracy reduction of the residual data is very small.
  • the accuracy of residual data in the base layer is also reduced by upsampling. That is, when the residual data in the base layer is upsampled and used, the effect on image quality (image quality degradation) by applying the present technology is further reduced. In other words, by applying the present technology, it is possible to reduce the storage capacity necessary for encoding / decoding while suppressing reduction in encoding efficiency.
  • both the above-described inverse quantization processing and up-sampling processing may be performed on the residual data in the base layer read from the storage unit.
  • the up-sampling process may be performed after the inverse quantization process is performed, or the inverse quantization process may be performed after the up-sampling process.
  • the calculation can be performed with higher accuracy than when the upsampling process is performed first.
  • the calculation accuracy can be lowered and the circuit scale can be reduced as compared with the case where the inverse quantization process is performed first.
  • the processing for reducing the information amount of residual data in the base layer as described above can be applied to each of the luminance signal and the color difference signal.
  • the process of reducing the amount of residual data information in the base layer may be performed only in encoding / decoding of the luminance signal, or may be performed only in encoding / decoding of the color difference signal.
  • the luminance signal may be encoded / decoded and the chrominance signal may be encoded / decoded.
  • the shift amount (n bits) of the bit shift is shared by both the luminance signal and the color difference signal (The same value may be used, or they may be set independently of each other (can be set to different values).
  • information indicating the bit shift amount n may be transmitted to the decoding side.
  • processing for reducing the amount of information is performed on the residual data in the base layer based on this information by reducing the accuracy, as in the case of encoding. Will be able to. That is, an increase in storage capacity necessary for decoding can be suppressed.
  • information indicating the shift amount n of the bit shift is transmitted from the encoding side to the decoding side, and the bit shift is performed with the same shift amount as in the encoding based on the information at the time of decoding.
  • the bit shift is performed with the same shift amount as in the encoding based on the information at the time of decoding.
  • information indicating whether the enhancement layer encoding / decoding is performed using the residual data in the base layer may be transmitted from the encoding side to the decoding side. Also, for example, only when the information indicates that enhancement layer encoding / decoding is performed using residual data in the base layer, information indicating the shift amount of the bit shift may be further transmitted. By doing so, it is possible to transmit information indicating the shift amount of the bit shift only when necessary, and it is possible to suppress a reduction in encoding efficiency.
  • the information indicating the shift amount of the bit shift may be transmitted as information for luminance signal and information for color difference signal.
  • Information indicating whether enhancement layer encoding / decoding is performed using residual data in the base layer may also be transmitted as luminance signal information and color difference signal information.
  • SPS Sequence Parameter Set
  • PPS Picture Parameter Set
  • residual_prediction_enable_flag is transmitted as information indicating whether enhancement layer encoding / decoding is performed using residual data in the base layer.
  • this value is “1 (true)”
  • residual data in the base layer is used in encoding / decoding of the enhancement layer.
  • bit_shift_luma_minus8 and bit_shift_chroma_minus8 are transmitted as information indicating the shift amount of the bit shift.
  • bit_shift_luma_minus8 is information indicating the shift amount of the bit shift for the luminance signal, and a value obtained by subtracting 8 from the shift amount is set.
  • bit_shift_chroma_minus8 is information indicating the shift amount of the bit shift for the color difference signal, and a value obtained by subtracting 8 from the shift amount is set.
  • the shift amount can be set independently for each of the luminance signal and the color difference signal. Note that the shift amount may be common to the luminance signal and the color difference signal, and information indicating the common shift amount may be transmitted.
  • bit_depth_luma_minus8 and bit_depth_chroma_minus8 are transmitted as information indicating the bit depth of the input signal.
  • bit_depth_luma_minus8 is information indicating the bit depth of the input signal for the luminance signal, and a value obtained by subtracting 8 from the bit depth is set.
  • bit_depth_chroma_minus8 is information indicating the bit depth of the input signal for the color difference signal, and a value obtained by subtracting 8 from the bit depth is set.
  • FIG. 10 is a diagram illustrating an image encoding device that is an aspect of an image processing device to which the present technology is applied.
  • An image encoding device 100 shown in FIG. 10 is a device that performs hierarchical image encoding. As illustrated in FIG. 10, the image encoding device 100 includes a base layer image encoding unit 101, an enhancement layer image encoding unit 102, and a multiplexing unit 103.
  • the base layer image encoding unit 101 encodes the base layer image and generates a base layer image encoded stream.
  • the enhancement layer image encoding unit 102 encodes the enhancement layer image, and generates an enhancement layer image encoded stream.
  • the multiplexing unit 103 multiplexes the base layer image encoded stream generated by the base layer image encoding unit 101 and the enhancement layer image encoded stream generated by the enhancement layer image encoding unit 102 to generate a hierarchical image code Generate a stream.
  • the multiplexing unit 103 transmits the generated hierarchical image encoded stream to the decoding side.
  • the base layer image encoding unit 101 performs ⁇ 1. As described above in Overview>, the residual data in the base layer is supplied to the enhancement layer image encoding unit 102 for the block subjected to the inter prediction.
  • the enhancement layer image encoding unit 102 performs ⁇ 1. As described above in Overview>, processing for reducing residual information in the base layer from the base layer image encoding unit 101 and reducing the amount of information by reducing accuracy with respect to the residual data in the base layer is performed. And store the processing result. The enhancement layer image encoding unit 102 performs prediction processing in the enhancement layer encoding using the stored residual data in the base layer.
  • the enhancement layer image encoding unit 102 transmits information on processing for reducing the information amount to the decoding side via the multiplexing unit 103 (as a hierarchical image encoded stream).
  • FIG. 11 is a block diagram illustrating a main configuration example of the base layer image encoding unit 101 in FIG. 10.
  • the base layer image encoding unit 101 includes an A / D conversion unit 111, a screen rearrangement buffer 112, a calculation unit 113, an orthogonal transformation unit 114, a quantization unit 115, a lossless encoding unit 116, The storage buffer 117, the inverse quantization unit 118, and the inverse orthogonal transform unit 119 are included.
  • the base layer image encoding unit 101 includes a calculation unit 120, a loop filter 121, a frame memory 122, a selection unit 123, an intra prediction unit 124, an inter prediction unit 125, a predicted image selection unit 126, and a rate control unit 127. .
  • the A / D conversion unit 111 performs A / D conversion on the input image data (base layer image information), and supplies the converted image data (digital data) to the screen rearrangement buffer 112 for storage.
  • the screen rearrangement buffer 112 rearranges the images of the frames in the stored display order in the order of frames for encoding according to the GOP (Group Of Picture), and rearranges the images in the order of the frames. It supplies to the calculating part 113. Further, the screen rearrangement buffer 112 also supplies the image in which the frame order is rearranged to the intra prediction unit 124 and the inter prediction unit 125.
  • the calculation unit 113 subtracts the prediction image supplied from the intra prediction unit 124 or the inter prediction unit 125 via the prediction image selection unit 126 from the image read from the screen rearrangement buffer 112, and orthogonalizes the difference information.
  • the data is output to the conversion unit 114.
  • the calculation unit 113 subtracts the prediction image supplied from the intra prediction unit 124 from the image read from the screen rearrangement buffer 112.
  • the calculation unit 113 subtracts the prediction image supplied from the inter prediction unit 125 from the image read from the screen rearrangement buffer 112.
  • the orthogonal transform unit 114 performs orthogonal transform such as discrete cosine transform and Karhunen-Loeve transform on the difference information supplied from the computation unit 113.
  • the orthogonal transform unit 114 supplies the transform coefficient to the quantization unit 115.
  • the quantization unit 115 quantizes the transform coefficient supplied from the orthogonal transform unit 114.
  • the quantization unit 115 sets a quantization parameter based on the information regarding the target value of the code amount supplied from the rate control unit 127, and performs the quantization.
  • the quantization unit 115 supplies the quantized transform coefficient to the lossless encoding unit 116.
  • the lossless encoding unit 116 encodes the transform coefficient quantized by the quantization unit 115 using an arbitrary encoding method. Since the coefficient data is quantized under the control of the rate control unit 127, the code amount becomes the target value set by the rate control unit 127 (or approximates the target value).
  • the lossless encoding unit 116 acquires information indicating the mode of intra prediction from the intra prediction unit 124, and acquires information indicating the mode of inter prediction, difference motion vector information, and the like from the inter prediction unit 125. Furthermore, the lossless encoding unit 116 appropriately generates a base layer NAL unit including a sequence parameter set (SPS), a picture parameter set (PPS), and the like.
  • SPS sequence parameter set
  • PPS picture parameter set
  • the lossless encoding unit 116 encodes these various types of information by an arbitrary encoding method, and uses (multiplexes) a part of the encoded data (also referred to as an encoded stream).
  • the lossless encoding unit 116 supplies the encoded data obtained by encoding to the accumulation buffer 117 for accumulation.
  • Examples of the encoding method of the lossless encoding unit 116 include variable length encoding or arithmetic encoding.
  • Examples of variable length coding include H.264.
  • CAVLC Context-Adaptive Variable Length Coding
  • Examples of arithmetic coding include CABAC (Context-Adaptive Binary Arithmetic Coding).
  • the cocoon accumulation buffer 117 temporarily holds the encoded data (base layer encoded data) supplied from the lossless encoding unit 116.
  • the accumulation buffer 117 outputs the stored base layer encoded data to, for example, a recording device (recording medium) (not shown) or a transmission path at a later stage at a predetermined timing. That is, the accumulation buffer 117 is also a transmission unit that transmits encoded data.
  • the transform coefficient quantized by the quantization unit 115 is also supplied to the inverse quantization unit 118.
  • the inverse quantization unit 118 inversely quantizes the quantized transform coefficient by a method corresponding to the quantization by the quantization unit 115.
  • the inverse quantization unit 118 supplies the obtained transform coefficient to the inverse orthogonal transform unit 119.
  • the inverse orthogonal transform unit 119 performs inverse orthogonal transform on the transform coefficient supplied from the inverse quantization unit 118 by a method corresponding to the orthogonal transform processing by the orthogonal transform unit 114.
  • the inversely orthogonal transformed output (restored difference information) is supplied to the calculation unit 120.
  • the calculation unit 120 adds the prediction image from the intra prediction unit 124 or the inter prediction unit 125 to the restored difference information, which is the inverse orthogonal transformation result supplied from the inverse orthogonal transformation unit 119, via the prediction image selection unit 126. Addition is performed to obtain a locally decoded image (decoded image).
  • the decoded image is supplied to the loop filter 121 or the frame memory 122.
  • the loop filter 121 includes a deblocking filter, an adaptive loop filter, and the like, and appropriately performs a filtering process on the reconstructed image supplied from the calculation unit 120.
  • the loop filter 121 removes block distortion of the reconstructed image by performing deblocking filter processing on the reconstructed image.
  • the loop filter 121 improves the image quality by performing loop filter processing using a Wiener filter on the deblock filter processing result (reconstructed image from which block distortion has been removed). I do.
  • the loop filter 121 supplies a filter processing result (hereinafter referred to as a decoded image) to the frame memory 122.
  • the loop filter 121 may further perform other arbitrary filter processing on the reconstructed image. Further, the loop filter 121 can supply information such as filter coefficients used for the filter processing to the lossless encoding unit 116 and encode the information as necessary.
  • the kite frame memory 122 stores the supplied decoded image, and supplies the stored decoded image as a reference image to the selection unit 123 at a predetermined timing.
  • the frame memory 122 stores the reconstructed image supplied from the calculation unit 120 and the decoded image supplied from the loop filter 121, respectively.
  • the frame memory 122 supplies the stored reconstructed image to the intra prediction unit 124 via the selection unit 123 at a predetermined timing or based on a request from the outside such as the intra prediction unit 124.
  • the frame memory 122 supplies the stored decoded image to the inter prediction unit 125 via the selection unit 123 at a predetermined timing or based on a request from the outside such as the inter prediction unit 125. .
  • the eyelid selection unit 123 selects a supply destination of the reference image supplied from the frame memory 122. For example, in the case of intra prediction, the selection unit 123 supplies the reference image (pixel value in the current picture) supplied from the frame memory 122 to the intra prediction unit 124. For example, in the case of inter prediction, the selection unit 123 supplies the reference image (pixel value outside the current picture) supplied from the frame memory 122 to the inter prediction unit 125.
  • the intra prediction unit 124 performs a prediction process on the current picture that is the image of the processing target frame, and generates a predicted image.
  • the intra prediction unit 124 performs this prediction processing for each predetermined block (using blocks as processing units). That is, the intra prediction unit 124 generates a predicted image of the current block that is the processing target of the current picture.
  • the intra prediction unit 124 performs a prediction process (intra-screen prediction (also referred to as intra prediction)) using a reconstructed image supplied as a reference image from the frame memory 122 via the selection unit 123. That is, the intra prediction unit 124 generates a predicted image using pixel values around the current block included in the reconstructed image.
  • the peripheral pixel value used for this intra prediction is the pixel value of the pixel processed in the past of the current picture.
  • a plurality of methods also referred to as intra prediction modes
  • the intra prediction unit 124 performs the intra prediction in the plurality of intra prediction modes prepared in advance.
  • the intra prediction unit 124 generates prediction images in all candidate intra prediction modes, evaluates the cost function value of each prediction image using the input image supplied from the screen rearrangement buffer 112, and selects the optimum mode. select. When the optimal intra prediction mode is selected, the intra prediction unit 124 supplies the predicted image generated in the optimal mode to the predicted image selection unit 126.
  • the intra prediction unit 124 appropriately supplies the intra prediction mode information indicating the adopted intra prediction mode to the lossless encoding unit 116 for encoding.
  • the inter prediction unit 125 performs a prediction process on the current picture to generate a predicted image.
  • the inter prediction unit 125 performs this prediction processing for each predetermined block (using blocks as processing units). That is, the inter prediction unit 125 generates a predicted image of the current block that is the processing target of the current picture.
  • the inter prediction unit 125 performs prediction processing using the image data of the input image supplied from the screen rearrangement buffer 112 and the image data of the decoded image supplied as a reference image from the frame memory 122.
  • This decoded image is an image of a frame processed before the current picture (another picture that is not the current picture). That is, the inter prediction unit 125 performs a prediction process (inter-screen prediction (also referred to as inter prediction)) that generates a prediction image using an image of another picture.
  • inter-screen prediction also referred to as inter prediction
  • This inter prediction consists of motion prediction and motion compensation. More specifically, the inter prediction unit 125 performs motion prediction on the current block using the input image and the reference image, and detects a motion vector. Then, the inter prediction unit 125 performs motion compensation processing according to the detected motion vector using the reference image, and generates a prediction image (inter prediction image information) of the current block.
  • a plurality of methods also referred to as inter prediction modes
  • inter prediction modes are prepared in advance as candidates for the inter prediction (that is, how to generate a predicted image). The inter prediction unit 125 performs such inter prediction in the plurality of inter prediction modes prepared in advance.
  • Inter prediction unit 125 generates a prediction image in all candidate inter prediction modes.
  • the inter prediction unit 125 evaluates the cost function value of each predicted image using the input image supplied from the screen rearrangement buffer 112, information on the generated difference motion vector, and the like, and selects an optimal mode.
  • the inter prediction unit 125 supplies the predicted image generated in the optimal mode to the predicted image selection unit 126.
  • the inter prediction unit 125 supplies information indicating the adopted inter prediction mode, information necessary for performing processing in the inter prediction mode, and the like to the lossless encoding unit 116 when decoding the encoded data, Encode.
  • the necessary information includes, for example, information on the generated differential motion vector, a flag indicating an index of the motion vector predictor as motion vector predictor information, and the like.
  • the predicted image selection unit 126 selects a supply source of the predicted image to be supplied to the calculation unit 113 or the calculation unit 120.
  • the prediction image selection unit 126 selects the intra prediction unit 124 as a supply source of the prediction image, and supplies the prediction image supplied from the intra prediction unit 124 to the calculation unit 113 and the calculation unit 120.
  • the prediction image selection unit 126 selects the inter prediction unit 125 as a supply source of the prediction image, and calculates the prediction image supplied from the inter prediction unit 125 as the calculation unit 113 or the calculation unit 120. To supply.
  • the rate control unit 127 controls the rate of the quantization operation of the quantization unit 115 based on the code amount of the encoded data stored in the storage buffer 117 so that no overflow or underflow occurs.
  • the base layer image encoding unit 101 performs encoding without referring to other layers. That is, the intra prediction unit 124 and the inter prediction unit 125 do not refer to information regarding encoding of other layers.
  • the base layer image encoding unit 101 performs ⁇ 1.
  • the above-described processing is performed in the overview>. That is, the inter prediction unit 125 supplies the residual data of inter blocks encoded by inter-frame prediction encoding in the base layer to the enhancement layer image encoding unit 102.
  • ⁇ Enhancement layer image encoding unit> 12 is a block diagram illustrating a main configuration example of the enhancement layer image encoding unit 102 of FIG. As shown in FIG. 12, the enhancement layer image encoding unit 102 has basically the same configuration as the base layer image encoding unit 101 of FIG.
  • the enhancement layer image encoding unit 102 includes an A / D conversion unit 131, a screen rearrangement buffer 132, a calculation unit 133, an orthogonal transformation unit 134, a quantization unit 135, and a lossless encoding unit as illustrated in FIG. 136, an accumulation buffer 137, an inverse quantization unit 138, and an inverse orthogonal transform unit 139. Also, the enhancement layer image encoding unit 102 includes a calculation unit 140, a loop filter 141, a frame memory 142, a selection unit 143, an intra prediction unit 144, an inter prediction unit 145, a predicted image selection unit 146, and a rate control unit 147. .
  • a / D conversion units 131 to rate control unit 147 correspond to the A / D conversion unit 111 to rate control unit 127 of FIG. 11, and perform the same processing as the corresponding processing units, respectively.
  • each part of the enhancement layer image encoding unit 102 performs processing for encoding enhancement layer image information, not the base layer. Therefore, as the description of the processing of the A / D conversion unit 131 to the rate control unit 147, the above description of the A / D conversion unit 111 to the rate control unit 127 of FIG. 11 can be applied.
  • the data to be processed is not the base layer data but the enhancement layer data.
  • the data input source and output destination processing units need to be replaced with the corresponding processing units in the A / D conversion unit 131 through the rate control unit 147 as appropriate.
  • the enhancement layer image encoding unit 102 performs encoding with reference to information of another layer (for example, a base layer). Then, the enhancement layer image encoding unit 102 performs ⁇ 1. The above-described processing is performed in the overview>.
  • the enhancement layer image encoding unit 102 includes a residual signal acquisition unit 148.
  • the residual signal acquisition unit 148 acquires, from the base layer image encoding unit 101, inter block residual data encoded by inter-frame prediction encoding in the base layer.
  • the residual signal acquisition unit 148 performs processing for reducing the amount of information by reducing accuracy with respect to the acquired residual data in the base layer, and the processing result, that is, residual data with the reduced amount of information is obtained.
  • the residual signal acquisition unit 148 supplies the residual data stored in the storage unit to the intra prediction unit 144 or the inter prediction unit 145 as appropriate. Details of the processing executed by the residual signal acquisition unit 148 in this way are described in ⁇ 1. As described above in Overview>.
  • the residual signal acquisition unit 148 is information regarding processing for reducing the amount of residual data information (for example, information indicating the amount of bit shift shift, or whether encoding is performed using residual data in the base layer).
  • the information shown) is supplied to the lossless encoding unit 136, encoded, and transmitted to the decoding side. Details of the information transmitted in this way are described in ⁇ 1. As described above in Overview>.
  • FIG. 13 is a block diagram illustrating a main configuration example of the residual signal acquisition unit 148 of FIG.
  • the residual signal acquisition unit 148 includes a setting unit 171, a residual signal quantization unit 172, a base layer residual signal buffer 173, a residual signal inverse quantization unit 174, and an upsampling unit 175.
  • the heel setting unit 171 performs settings related to processing for reducing the amount of information of residual data. For example, the setting unit 171 sets the value of the shift amount n bits of the quantization process (bit shift) performed as an example of the process for reducing the information amount of the residual data. For example, the setting unit 171 determines whether or not to perform encoding using residual data in the base layer. Details of such a setting method are described in ⁇ 1. As described above in Overview>.
  • the kite setting unit 171 supplies control information indicating the setting contents to each processing unit of the residual signal quantization unit 172 to the upsampling unit 175. Further, the setting unit 171 includes this control information, for example, information indicating the shift amount of the bit shift, information indicating whether the enhancement layer is encoded / decoded using the residual data in the base layer, and the like. Information relating to processing for reducing the amount of information of residual data is supplied to the lossless encoding unit 136, encoded, and transmitted to the decoding side. Details of this information can be found in ⁇ 1. As described above in Overview>.
  • the residual signal quantization unit 172 acquires residual data (also referred to as a base layer residual signal) in the base layer from the base layer image encoding unit 101, and reduces the accuracy of the base layer residual signal.
  • quantization processing for example, bit shift
  • This quantization process is performed according to control information supplied from the setting unit 171. That is, for example, the residual signal quantization unit 172 reduces the bit depth by the shift amount indicated by the control information supplied from the setting unit 171 for the base layer residual signal acquired from the base layer image encoding unit 101. Bit shift in the direction of Details of this processing are described in ⁇ 1. As described above in Overview>.
  • the residual signal quantization unit 172 supplies the processing result, that is, the quantized base layer residual signal to the base layer residual signal buffer 173.
  • the base layer residual signal buffer 173 stores the quantized base layer residual signal supplied from the residual signal quantization unit 172. Further, the base layer residual signal buffer 173 supplies the stored quantized base layer residual signal to the residual signal inverse quantization unit 174 as necessary.
  • the residual signal inverse quantization unit 174 reads the quantized base layer residual signal from the base layer residual signal buffer 173, and performs inverse quantization on the read quantized base layer residual signal. Processing (for example, bit shift) is performed. This inverse quantization process (bit shift) is performed according to the control information supplied from the setting unit 171. That is, for example, the residual signal inverse quantization unit 174 shifts the quantized base layer residual signal read from the base layer residual signal buffer 173 in the control information supplied from the setting unit 171. And bit shift in the direction of increasing the bit depth. Details of this processing are described in ⁇ 1. As described above in Overview>. The residual signal dequantization unit 174 supplies the processing result, that is, the dequantized base layer residual signal to the upsampling unit 175.
  • the up-sampling unit 175 up-samples the inverse-quantized base layer residual signal supplied from the residual signal inverse quantization unit 174 so as to be an enhancement layer reference. This upsampling is performed according to the control information supplied from the setting unit 171. For example, the up-sampling unit 175 converts the dequantized base layer residual signal supplied from the residual signal inverse quantization unit 174 to the resolution ratio between layers indicated in the control information supplied from the setting unit 171. , Upsample. Details of this processing are described in ⁇ 1. As described above in Overview>. The up-sampling unit 175 supplies the processing result, that is, the up-sampled base layer residual signal, to the intra prediction unit 144 and the inter prediction unit 145.
  • the residual signal acquisition unit 148 processes the residual signal, so that the storage capacity of the base layer residual signal buffer 173 can be reduced. That is, the image encoding device 100 (enhancement layer image encoding unit 102) can suppress an increase in storage capacity necessary for encoding and decoding.
  • step S101 the base layer image encoding unit 101 of the image encoding device 100 encodes the base layer image data.
  • step S102 the enhancement layer image encoding unit 102 encodes enhancement layer image data.
  • step S103 the multiplexing unit 103 uses the base layer image encoded stream generated by the process of step S101 and the enhancement layer image encoded stream generated by the process of step S102 (that is, the bit stream of each layer). Are multiplexed to generate a single hierarchical image encoded stream.
  • step S103 the image encoding device 100 ends the image encoding process.
  • One picture is processed by such an image encoding process. Therefore, the image encoding device 100 repeatedly executes such image encoding processing for each picture of the moving image data that is hierarchized.
  • the A / D conversion unit 111 of the base layer image encoding unit 101 A / D converts the image of each frame (picture) of the input moving image in step S121. .
  • step S122 the screen rearrangement buffer 112 stores the image that has been A / D converted in step S121, and performs rearrangement from the display order of each picture to the encoding order.
  • step S123 the intra prediction unit 124 performs an intra prediction process in the intra prediction mode.
  • step S124 the inter prediction unit 125 performs inter prediction processing for performing motion prediction, motion compensation, and the like in the inter prediction mode.
  • step S125 the predicted image selection unit 126 selects a predicted image based on the cost function value or the like. That is, the predicted image selection unit 126 selects either the predicted image generated by the intra prediction in step S123 or the predicted image generated by the inter prediction in step S124.
  • step S126 the calculation unit 113 calculates the difference between the input image whose frame order is rearranged by the process of step S122 and the predicted image selected by the process of step S125. That is, the calculation unit 113 generates image data of a difference image between the input image and the predicted image.
  • the image data of the difference image obtained in this way is reduced in data amount compared to the original image data. Therefore, the data amount can be compressed as compared with the case where the image is encoded as it is.
  • step S127 the orthogonal transform unit 114 performs orthogonal transform on the image data of the difference image generated by the process in step S126.
  • step S128 the quantization unit 115 quantizes the orthogonal transform coefficient obtained by the process in step S127, using the quantization parameter calculated by the rate control unit 127.
  • step S129 the inverse quantization unit 118 inversely quantizes the quantized coefficient (also referred to as a quantization coefficient) generated by the process in step S128 with characteristics corresponding to the characteristics of the quantization unit 115.
  • the quantized coefficient also referred to as a quantization coefficient
  • step S130 the inverse orthogonal transform unit 119 performs inverse orthogonal transform on the orthogonal transform coefficient obtained by the process in step S129.
  • step S131 the calculation unit 120 generates the image data of the reconstructed image by adding the predicted image selected by the process of step S125 to the difference image restored by the process of step S130.
  • step S132 the loop filter 121 performs a loop filter process on the image data of the reconstructed image generated by the process in step S131. Thereby, block distortion and the like of the reconstructed image are removed.
  • step S133 the frame memory 122 stores data such as a decoded image obtained by the process of step S132 and a reconstructed image obtained by the process of step S131.
  • step S134 the lossless encoding unit 116 encodes the quantized coefficient obtained by the process of step S128. That is, lossless encoding such as variable length encoding or arithmetic encoding is performed on the data corresponding to the difference image.
  • the lossless encoding unit 116 encodes information on the prediction mode of the prediction image selected by the process of step S125, and adds the encoded information to the encoded data obtained by encoding the difference image.
  • the lossless encoding unit 116 also encodes the optimal intra prediction mode information supplied from the intra prediction unit 124 or the information corresponding to the optimal inter prediction mode supplied from the inter prediction unit 125, and the like, into encoded data. Append.
  • the lossless encoding unit 116 sets syntax elements such as various null units, encodes them, and adds them to the encoded data.
  • step S135 the accumulation buffer 117 accumulates the encoded data obtained by the process in step S134.
  • the encoded data stored in the storage buffer 117 is appropriately read and transmitted to the decoding side via a transmission path or a recording medium.
  • step S136 the rate control unit 127 causes the quantization unit 115 to prevent overflow or underflow from occurring based on the code amount (generated code amount) of the encoded data accumulated in the accumulation buffer 117 by the process of step S135. Controls the rate of quantization operation. Further, the rate control unit 127 supplies information regarding the quantization parameter to the quantization unit 115.
  • step S137 the inter prediction unit 125 supplies the residual signal in the base layer obtained in the base layer encoding process as described above to the enhancement layer encoding process.
  • step S137 When the process of step S137 ends, the base layer encoding process ends, and the process returns to FIG.
  • the setting unit 171 of the enhancement layer image encoding unit 102 performs setting related to prediction using the residual signal of the base layer in step S151.
  • step S152 the setting unit 171 transmits control information indicating the setting performed in step S151, that is, control information related to prediction using the base layer residual signal, to the decoding side.
  • step S153 the residual signal quantization unit 172 acquires the base layer residual signal from the base layer image encoding unit 101.
  • step S154 the residual signal quantization unit 172 quantizes the base layer residual signal acquired in step S153.
  • step S155 the base layer residual signal buffer 173 stores the quantized base layer residual signal obtained by the process of step S154.
  • step S156 the A / D conversion unit 111 performs A / D conversion on the image of each frame (picture) of the input moving image of the enhancement layer.
  • step S157 the screen rearrangement buffer 112 stores the image that has been A / D converted in step S156, and performs rearrangement from the display order of each picture to the encoding order.
  • step S158 the residual signal inverse quantization unit 174 reads the quantized base layer residual signal corresponding to the current block to be processed from the base layer residual signal buffer 173.
  • step S159 the residual signal inverse quantization unit 174 inversely quantizes the quantized base layer residual signal read in step S158.
  • step S160 the upsampling unit 175 upsamples the dequantized base layer residual signal.
  • step S161 the intra prediction unit 144 performs an intra prediction process. At that time, the intra prediction unit 144 performs inter-layer prediction using the base layer residual signal up-sampled in step S160 as a candidate for the intra prediction mode.
  • step S162 the inter prediction unit 145 performs inter prediction processing.
  • the inter prediction unit 145 performs inter-layer prediction using the base layer residual signal up-sampled in step S160 as a candidate for the inter prediction mode.
  • steps S163 to S174 correspond to the processes in steps S125 to S136 in FIG. 15 and are executed in the same manner as those processes.
  • step S174 When the process of step S174 ends, the enhancement layer encoding process ends, and the process returns to FIG.
  • the image encoding device 100 suppresses an increase in the storage capacity of the storage unit used for storing the residual signal in the base layer, and the storage capacity necessary for encoding / decoding. Can be suppressed.
  • FIG. 17 is a block diagram illustrating a main configuration example of an image decoding apparatus corresponding to the image encoding apparatus 100 in FIG. 10, which is an aspect of an image processing apparatus to which the present technology is applied.
  • the image decoding apparatus 200 shown in FIG. 17 decodes the encoded data generated by the image encoding apparatus 100 by a decoding method corresponding to the encoding method (that is, hierarchically encoded encoded data is hierarchically decoded). To do).
  • the image decoding device 200 includes a demultiplexing unit 201, a base layer image decoding unit 202, and an enhancement layer image decoding unit 203.
  • the demultiplexing unit 201 receives a layered image encoded stream in which a base layer image encoded stream and an enhancement layer image encoded stream are multiplexed transmitted from the encoding side, demultiplexes them, An image encoded stream and an enhancement layer image encoded stream are extracted.
  • the base layer image decoding unit 202 decodes the base layer image encoded stream extracted by the demultiplexing unit 201 to obtain a base layer image.
  • the enhancement layer image decoding unit 203 decodes the enhancement layer image encoded stream extracted by the demultiplexing unit 201 to obtain an enhancement layer image.
  • the base layer image decoding unit 202 performs ⁇ 1. As described above in Overview>, residual data in the base layer is supplied to the enhancement layer image decoding unit 203 for the block on which inter prediction has been performed.
  • the enhancement layer image decoding unit 203 performs ⁇ 1. As described above in Overview>, the residual data in the base layer is acquired from the base layer image decoding unit 202, and the residual data in the base layer is processed to reduce the amount of information by reducing accuracy. The processing result is stored. The enhancement layer image decoding unit 203 performs prediction processing in enhancement layer decoding using the stored residual data in the base layer.
  • FIG. 18 is a block diagram illustrating a main configuration example of the base layer image decoding unit 202 of FIG.
  • the base layer image decoding unit 202 includes a storage buffer 211, a lossless decoding unit 212, an inverse quantization unit 213, an inverse orthogonal transform unit 214, a calculation unit 215, a loop filter 216, a screen rearrangement buffer 217, And a D / A converter 218.
  • the base layer image decoding unit 202 includes a frame memory 219, a selection unit 220, an intra prediction unit 221, an inter prediction unit 222, and a predicted image selection unit 223.
  • the soot storage buffer 211 is also a receiving unit that receives the transmitted encoded data.
  • the accumulation buffer 211 receives and accumulates the transmitted encoded data, and supplies the encoded data to the lossless decoding unit 212 at a predetermined timing. Information necessary for decoding such as prediction mode information is added to the encoded data.
  • the lossless decoding unit 212 decodes the information supplied from the accumulation buffer 211 and encoded by the lossless encoding unit 116 using a decoding method corresponding to the encoding method.
  • the lossless decoding unit 212 supplies the quantized coefficient data of the difference image obtained by decoding to the inverse quantization unit 213.
  • the lossless decoding unit 212 determines whether the intra prediction mode is selected as the optimal prediction mode or the inter prediction mode is selected, and information on the optimal prediction mode is stored in the intra prediction unit 221 and the inter prediction unit 222. It is supplied to the mode determined to be selected. That is, for example, when the intra prediction mode is selected as the optimal prediction mode on the encoding side, information regarding the optimal prediction mode is supplied to the intra prediction unit 221. For example, when the inter prediction mode is selected as the optimal prediction mode on the encoding side, information regarding the optimal prediction mode is supplied to the inter prediction unit 222.
  • the lossless decoding unit 212 supplies information necessary for inverse quantization, such as a quantization matrix and a quantization parameter, to the inverse quantization unit 213, for example.
  • the inverse quantization unit 213 inversely quantizes the quantized coefficient data obtained by decoding by the lossless decoding unit 212 using a method corresponding to the quantization method of the quantization unit 115.
  • the inverse quantization unit 213 is a processing unit similar to the inverse quantization unit 118.
  • the inverse quantization unit 213 supplies the obtained coefficient data to the inverse orthogonal transform unit 214.
  • the inverse orthogonal transform unit 214 performs inverse orthogonal transform on the orthogonal transform coefficient supplied from the inverse quantization unit 213 by a method corresponding to the orthogonal transform method of the orthogonal transform unit 114 as necessary.
  • the inverse orthogonal transform unit 214 is a processing unit similar to the inverse orthogonal transform unit 119.
  • the image data of the difference image is restored by this inverse orthogonal transform process.
  • the restored image data of the difference image corresponds to the image data of the difference image before being orthogonally transformed in the image encoding device.
  • the restored image data of the difference image obtained by the inverse orthogonal transform process of the inverse orthogonal transform unit 214 is also referred to as decoded residual data.
  • the inverse orthogonal transform unit 214 supplies the decoded residual data to the calculation unit 215. Further, the image data of the predicted image is supplied to the calculation unit 215 from the intra prediction unit 221 or the inter prediction unit 222 via the predicted image selection unit 223.
  • the calculating unit 215 uses the decoded residual data and the image data of the predicted image to obtain image data of a reconstructed image obtained by adding the difference image and the predicted image. This reconstructed image corresponds to the input image before the predicted image is subtracted by the calculation unit 113.
  • the calculation unit 215 supplies the reconstructed image to the loop filter 216.
  • the loop filter 216 appropriately performs loop filter processing including deblock filter processing and adaptive loop filter processing on the supplied reconstructed image to generate a decoded image.
  • the loop filter 216 removes block distortion by performing deblocking filter processing on the reconstructed image.
  • the loop filter 216 performs image quality improvement by performing loop filter processing using a Wiener filter on the deblock filter processing result (reconstructed image from which block distortion has been removed). I do.
  • the type of filter processing performed by the loop filter 216 is arbitrary, and filter processing other than that described above may be performed. Further, the loop filter 216 may perform filter processing using the filter coefficient supplied from the image encoding device. Furthermore, the loop filter 216 can omit such filter processing and output the input data without performing the filter processing.
  • the loop filter 216 supplies the decoded image (or reconstructed image) as the filter processing result to the screen rearrangement buffer 217 and the frame memory 219.
  • the screen rearrangement buffer 217 rearranges the frame order of the decoded image. That is, the screen rearrangement buffer 217 rearranges the images of the frames rearranged in the encoding order by the screen rearrangement buffer 112 in the original display order. That is, the screen rearrangement buffer 217 stores the image data of the decoded images of the frames supplied in the encoding order in that order, and reads the image data of the decoded images of the frames stored in the encoding order in the display order.
  • / A converter 218 The D / A conversion unit 218 performs D / A conversion on the decoded image (digital data) of each frame supplied from the screen rearrangement buffer 217, and outputs it as analog data to a display (not shown) for display.
  • the frame memory 219 stores the supplied decoded image, and uses the stored decoded image as a reference image at a predetermined timing or based on an external request such as the intra prediction unit 221 or the inter prediction unit 222.
  • the data is supplied to the intra prediction unit 221 and the inter prediction unit 222 via the selection unit 220.
  • the intra prediction mode information and the like are appropriately supplied from the lossless decoding unit 212 to the intra prediction unit 221.
  • the intra prediction unit 221 performs intra prediction in the intra prediction mode (optimum intra prediction mode) used in the intra prediction unit 124, and generates a predicted image.
  • the intra prediction unit 221 performs intra prediction using the image data of the reconstructed image supplied from the frame memory 219 via the selection unit 220. That is, the intra prediction unit 221 uses this reconstructed image as a reference image (neighboring pixels).
  • the intra prediction unit 221 supplies the generated predicted image to the predicted image selection unit 223.
  • the optimal prediction mode information, motion information, and the like are appropriately supplied from the lossless decoding unit 212 to the inter prediction unit 222.
  • the inter prediction unit 222 performs inter prediction using the decoded image (reference image) acquired from the frame memory 219 in the inter prediction mode (optimum inter prediction mode) indicated by the optimal prediction mode information acquired from the lossless decoding unit 212. Generate a predicted image.
  • the predicted image selection unit 223 supplies the prediction image supplied from the intra prediction unit 221 or the prediction image supplied from the inter prediction unit 222 to the calculation unit 215. Then, the calculation unit 215 adds the predicted image and the decoded residual data (difference image information) from the inverse orthogonal transform unit 214 to obtain a reconstructed image.
  • the base layer image decoding unit 202 performs decoding without referring to other layers. That is, the intra prediction unit 221 and the inter prediction unit 222 do not refer to information regarding encoding of other layers.
  • the base layer image decoding unit 202 performs ⁇ 1.
  • the above-described processing is performed in the overview>. That is, the inter prediction unit 222 supplies the residual data of inter blocks encoded by inter-frame prediction encoding in the base layer to the enhancement layer image decoding unit 203.
  • FIG. 19 is a block diagram illustrating a main configuration example of the enhancement layer image decoding unit 203 of FIG. As shown in FIG. 19, the enhancement layer image decoding unit 203 has basically the same configuration as the base layer image decoding unit 202 of FIG.
  • the enhancement layer image decoding unit 203 includes a storage buffer 231, a lossless decoding unit 232, an inverse quantization unit 233, an inverse orthogonal transform unit 234, a calculation unit 235, a loop filter 236, and a screen rearrangement as illustrated in FIG. A buffer 237 and a D / A converter 238 are included.
  • the enhancement layer image decoding unit 203 includes a frame memory 239, a selection unit 240, an intra prediction unit 241, an inter prediction unit 242, and a predicted image selection unit 243.
  • the storage buffer 231 to the predicted image selection unit 243 correspond to the storage buffer 211 to the predicted image selection unit 223 of FIG. 18 and perform the same processing as the corresponding processing unit, respectively.
  • each unit of the enhancement layer image decoding unit 203 performs processing for encoding enhancement layer image information, not the base layer. Therefore, as the description of the processing of the storage buffer 231 to the predicted image selection unit 243, the description of the storage buffer 211 to the predicted image selection unit 223 of FIG. 18 described above can be applied.
  • the data to be processed is It should be enhancement layer data, not base layer data.
  • the enhancement layer image decoding unit 203 performs encoding with reference to information of another layer (for example, a base layer). Then, the enhancement layer image decoding unit 203 performs ⁇ 1. The above-described processing is performed in the overview>.
  • the enhancement layer image decoding unit 203 includes a residual signal acquisition unit 244.
  • the residual signal acquisition unit 244 receives, from the base layer image decoding unit 202, inter block residual data encoded by inter-frame prediction encoding in the base layer. get.
  • the residual signal acquisition unit 244 performs processing for reducing the amount of information by reducing accuracy with respect to the acquired residual data in the base layer, and the processing result, that is, residual data with the reduced amount of information is obtained.
  • the residual signal acquisition unit 244 supplies the residual data stored in the storage unit to the intra prediction unit 241 or the inter prediction unit 242 (the one corresponding to the optimal (adopted) prediction mode) as appropriate. Details of the processing executed by the residual signal acquisition unit 244 in this way are described in ⁇ 1. As described above in Overview>.
  • control information relating to processing for reducing the amount of residual data information (for example, information indicating the amount of bit shift shift or whether encoding is performed using residual data in the base layer) Information etc.) is transmitted.
  • the lossless decoding unit 232 extracts the control information by decoding the encoded data, and supplies the control information to the residual signal acquisition unit 244.
  • the residual signal acquisition unit 244 performs the above-described processing based on this control information. Details of the control information transmitted in this way are described in ⁇ 1. As described above in Overview>.
  • FIG. 20 is a block diagram illustrating a main configuration example of the residual signal acquisition unit 244 of FIG.
  • the residual signal acquisition unit 244 includes a control information acquisition unit 271, a residual signal quantization unit 272, a base layer residual signal buffer 273, a residual signal inverse quantization unit 274, and an upsample. Part 275.
  • the heel control signal acquisition unit 271 acquires the control information supplied from the lossless decoding unit 232.
  • the control signal acquisition unit 271 supplies the control information to the residual signal quantization unit 272 through the upsampling unit 275 as appropriate. In this way, the control signal acquisition unit 271 supplies the control information transmitted from the encoding side, so that each processing unit of the residual signal quantization unit 272 to the upsampling unit 275 has the setting adopted on the encoding side. Can be grasped, and each process can be performed with the same setting as in the encoding.
  • the residual signal quantization unit 272 obtains a base layer residual signal from the base layer image decoding unit 202 and performs quantum processing as an example of processing for reducing the amount of information by reducing the accuracy of the base layer residual signal. (For example, bit shift).
  • This quantization process (bit shift) is performed according to the control information supplied from the control information acquisition unit 271. That is, for example, the residual signal quantization unit 272 reduces the bit depth of the base layer residual signal acquired from the base layer image decoding unit 202 by the shift amount indicated in the control information supplied from the encoding side. Bit shift in direction. Details of this processing are described in ⁇ 1. As described above in Overview>.
  • the residual signal quantization unit 272 supplies the processing result, that is, the quantized base layer residual signal to the base layer residual signal buffer 273.
  • the base layer residual signal buffer 273 stores the quantized base layer residual signal supplied from the residual signal quantizing unit 272. Also, the base layer residual signal buffer 273 supplies the stored quantized base layer residual signal to the residual signal inverse quantization unit 274 as necessary.
  • the residual signal inverse quantization unit 274 is configured to generate a base layer residual signal buffer when the intra prediction unit 241 or the inter prediction unit 242 generates a predicted image using residual data in the base layer in decoding of the enhancement layer.
  • the base layer residual signal quantized from 273 is read out.
  • the residual signal inverse quantization unit 274 performs inverse quantization processing (for example, bit shift) on the read quantized base layer residual signal.
  • This inverse quantization process (bit shift) is performed according to the control information supplied from the control information acquisition unit 271. That is, for example, the residual signal dequantization unit 274 shifts the quantized base layer residual signal read from the base layer residual signal buffer 273 in the control information supplied from the encoding side. And bit shift in the direction of increasing the bit depth. Details of this processing are described in ⁇ 1. As described above in Overview>.
  • the residual signal inverse quantization unit 274 supplies the processing result, that is, the dequantized base layer residual signal to the upsampling unit 275.
  • the up-sampling unit 275 up-samples the inverse-quantized base layer residual signal supplied from the residual signal inverse quantization unit 274 so as to be an enhancement layer reference. This upsampling is performed according to the control information supplied from the control information acquisition unit 271. For example, the up-sampling unit 275 converts the dequantized base layer residual signal supplied from the residual signal inverse quantization unit 274 into the resolution ratio between layers indicated in the control information supplied from the encoding side. , Upsample. Details of this processing are described in ⁇ 1. As described above in Overview>. The upsampling unit 275 supplies the processing result, that is, the upsampled base layer residual signal, to the intra prediction unit 241 or the inter prediction unit 242 (the one corresponding to the optimal (adopted) prediction mode).
  • the residual signal acquisition unit 244 processes the residual signal, so that the storage capacity of the base layer residual signal buffer 273 can be reduced. That is, the image decoding apparatus 200 (enhancement layer image decoding unit 203) can suppress an increase in storage capacity necessary for decoding.
  • step S201 the demultiplexing unit 201 of the image decoding device 200 demultiplexes the layered image encoded stream transmitted from the encoding side for each layer.
  • step S202 the base layer image decoding unit 202 decodes the base layer image encoded stream extracted by the process in step S201.
  • the base layer image decoding unit 202 outputs base layer image data generated by this decoding.
  • step S203 the enhancement layer image decoding unit 203 decodes the enhancement layer image encoded stream extracted by the process in step S201.
  • the enhancement layer image decoding unit 203 outputs enhancement layer image data generated by the decoding.
  • step S203 the image decoding device 200 ends the image decoding process.
  • One picture is processed by such an image decoding process. Therefore, the image decoding apparatus 200 repeatedly executes such an image decoding process for each picture of hierarchized moving image data.
  • step S221 the accumulation buffer 211 accumulates the transmitted bit stream (encoded data).
  • step S222 the lossless decoding unit 212 decodes the bit stream (encoded data) supplied from the accumulation buffer 211. That is, image data such as an I picture, a P picture, and a B picture encoded by the lossless encoding unit 116 is decoded. At this time, various information other than the image data included in the bit stream such as header information is also decoded.
  • step S223 the inverse quantization unit 213 inversely quantizes the quantized coefficient obtained by the process in step S222.
  • step S224 the inverse orthogonal transform unit 214 performs inverse orthogonal transform on the coefficient inversely quantized in step S223.
  • the intra prediction unit 221 or the inter prediction unit 222 performs a prediction process to generate a predicted image. That is, the prediction process is performed in the prediction mode that is determined in the lossless decoding unit 212 and applied at the time of encoding. More specifically, for example, when intra prediction is applied at the time of encoding, the intra prediction unit 221 generates a prediction image in the intra prediction mode that is optimized at the time of encoding. Further, for example, when inter prediction is applied at the time of encoding, the inter prediction unit 222 generates a prediction image in the inter prediction mode that is optimized at the time of encoding.
  • step S227 the calculation unit 215 adds the predicted image generated in step S226 to the difference image obtained by the inverse orthogonal transform in step S225. Thereby, image data of the reconstructed image is obtained.
  • step S229 the screen rearrangement buffer 217 rearranges each frame of the reconstructed image filtered in step S228. That is, the order of frames rearranged at the time of encoding is rearranged in the original display order.
  • step S230 the D / A conversion unit 218 performs D / A conversion on the image in which the frame order is rearranged in step S229. This image is output to a display (not shown), and the image is displayed.
  • step S231 the frame memory 219 stores data such as a decoded image obtained by the process of step S228 and a reconstructed image obtained by the process of step S227.
  • step S232 the inter prediction unit 222 supplies the residual signal in the base layer obtained in the decoding process of the base layer as described above to the decoding process of the enhancement layer.
  • step S232 When the process of step S232 ends, the base layer decoding process ends, and the process returns to FIG.
  • control information acquisition unit 271 of the enhancement layer image decoding unit 203 acquires control information related to prediction using the base layer residual signal transmitted from the encoding side in step S251. .
  • step S252 the residual signal quantization unit 272 acquires a base layer residual signal obtained in the decoding process of the base layer.
  • the residual signal quantization unit 272 quantizes the base layer residual signal acquired in step S252 using the setting indicated in the control information acquired in step S251. For example, the residual signal quantization unit 272 bit-shifts the base layer residual signal by the shift amount (n bits) indicated in the control information.
  • step S254 the base layer residual signal buffer 273 stores the base layer residual signal quantized in step S253.
  • step S255 to step S258 corresponds to each process of step S221 to step S224 in FIG. 22, and is executed in the same manner as those processes.
  • step S259 the residual signal inverse quantization unit 274 determines whether or not the optimal prediction mode (prediction mode employed during encoding) is a mode in which prediction processing using the base layer residual signal is performed. judge. If it is determined that the mode uses the base layer residual signal, the process proceeds to step S260.
  • the optimal prediction mode prediction mode employed during encoding
  • step S260 the residual signal inverse quantization unit 274, from the base layer residual signal buffer 273, quantizes the base layer residual signal of the collocated block that is a block corresponding to the current block in the base layer. Is read.
  • step S261 the residual signal inverse quantization unit 274 inversely quantizes the quantized base layer residual signal read in step S260.
  • the residual signal inverse quantization unit 274 inversely quantizes the quantized base layer residual signal using the setting indicated in the control information acquired in step S251. For example, the residual signal inverse quantization unit 274 bit-shifts the base layer residual signal in the direction opposite to that in the case of quantization by the shift amount (n bits) indicated in the control information.
  • step S262 the upsampling unit 275 upsamples the base layer residual signal inversely quantized in step S261.
  • the up-sampling unit 275 up-samples the inversely quantized base layer residual signal using the setting indicated in the control information acquired in step S251. For example, the up-sampling unit 275 up-samples the base layer residual signal that has been inversely quantized according to the resolution ratio between the base layer and the enhancement layer, and converts the base layer residual signal to an enhancement layer reference scale. .
  • step S262 When the process of step S262 ends, the process proceeds to step S263. If it is determined in step S259 that the mode is not the mode using the base layer residual signal, the process proceeds to step S263.
  • step S263 to step S268 corresponds to each process from step S225 to step S230 in FIG. 22, and is executed in the same manner as those processes.
  • the image decoding apparatus 200 suppresses an increase in storage capacity of a storage unit used for storing residual signals in the base layer, and suppresses an increase in storage capacity necessary for decoding. can do.
  • image data is hierarchized into a plurality of layers by scalable coding, but the number of layers is arbitrary.
  • the enhancement layer is described as being processed using the base layer residual signal in encoding / decoding.
  • the enhancement layer is not limited to this, and other enhancement layers that have been processed may be processed.
  • the residual signal may be used for processing.
  • the inter prediction unit 145 (FIG. 12) of the enhancement layer image encoding unit 102 is similar to the inter prediction unit 125 (FIG. 11) in the interblock of the enhancement layer.
  • the residual signal may be supplied to the enhancement layer image encoding unit 102 of another enhancement layer.
  • the inter prediction unit 242 (FIG. 19) of the enhancement layer image decoding unit 203 is similar to the inter prediction unit 222 (FIG. 18).
  • the residual signal may be supplied to the enhancement layer image decoding unit 203 of another enhancement layer.
  • the application range of the present technology can be applied to any image encoding device and image decoding device based on a scalable encoding / decoding method.
  • the present technology is disclosed in, for example, MPEG, H.264, and the like.
  • image information compressed by orthogonal transformation such as discrete cosine transformation and motion compensation, such as 26x
  • network media such as satellite broadcasting, cable television, the Internet, or mobile phones.
  • the present invention can be applied to an image encoding device and an image decoding device used in the above.
  • the present technology can be applied to an image encoding device and an image decoding device that are used when processing on a storage medium such as an optical, magnetic disk, and flash memory.
  • FIG. 24 shows an example of a multi-view image encoding method.
  • the multi-viewpoint image includes images of a plurality of viewpoints (views).
  • the multiple views of this multi-viewpoint image are encoded using the base view that encodes and decodes using only the image of its own view without using the information of other views, and the information of other views.
  • -It consists of a non-base view that performs decoding.
  • Non-base view encoding / decoding may use base view information or other non-base view information.
  • the reference relationship between views in multi-view image encoding / decoding is the same as the reference relationship between layers in hierarchical image encoding / decoding. Therefore, the above-described method may be applied to the encoding / decoding of a multi-view image as shown in FIG. That is, the residual signal of the base view (or other non-base view) used in encoding / decoding of the non-base view may be stored with a reduced amount of information by reducing its accuracy. For example, the residual signal of the base view (or other non-base view) may be quantized and stored. By doing in this way, similarly in the case of a multi-viewpoint image, it is possible to suppress an increase in storage capacity necessary for encoding or decoding.
  • FIG. 25 is a diagram illustrating a multi-view image encoding apparatus that performs the above-described multi-view image encoding.
  • the multi-view image encoding apparatus 600 includes an encoding unit 601, an encoding unit 602, and a multiplexing unit 603.
  • the cocoon encoding unit 601 encodes the base view image and generates a base view image encoded stream.
  • the encoding unit 602 encodes the non-base view image and generates a non-base view image encoded stream.
  • the multiplexing unit 603 multiplexes the base view image encoded stream generated by the encoding unit 601 and the non-base view image encoded stream generated by the encoding unit 602 to generate a multi-view image encoded stream. To do.
  • the base layer image encoding unit 101 (FIG. 11) is applied as the encoding unit 601 of the multi-view image encoding apparatus 600, and the enhancement layer image encoding unit 102 (FIG. 12) is applied as the encoding unit 602. Good. That is, a residual signal of a base view (or other non-base view) used in non-base view encoding may be stored with a reduced amount of information by reducing the accuracy. For example, the residual signal of the base view (or other non-base view) may be quantized and stored. By doing so, an increase in storage capacity necessary for encoding can be suppressed. Even in the case of this multi-view image encoding, an increase in the storage capacity necessary for decoding can be suppressed similarly to the encoding by transmitting information related to the reduction of the information amount to the decoding side. .
  • FIG. 26 is a diagram illustrating a multi-view image decoding apparatus that performs the above-described multi-view image decoding.
  • the multi-view image decoding apparatus 610 includes a demultiplexing unit 611, a decoding unit 612, and a decoding unit 613.
  • the demultiplexing unit 611 demultiplexes the multi-view image encoded stream in which the base view image encoded stream and the non-base view image encoded stream are multiplexed, and the base view image encoded stream and the non-base view image The encoded stream is extracted.
  • the decoding unit 612 decodes the base view image encoded stream extracted by the demultiplexing unit 611 to obtain a base view image.
  • the decoding unit 613 decodes the non-base view image encoded stream extracted by the demultiplexing unit 611 to obtain a non-base view image.
  • the base layer image decoding unit 202 (FIG. 18) may be applied as the decoding unit 612 of the multi-view image decoding device 610, and the enhancement layer image decoding unit 203 (FIG. 19) may be applied as the decoding unit 613. That is, the residual signal of the base view (or other non-base view) used in the decoding of the non-base view may be stored with a reduced amount of information by reducing its accuracy. For example, the residual signal of the base view (or other non-base view) may be quantized and stored. By doing so, an increase in storage capacity necessary for decoding can be suppressed.
  • the series of processes described above can be executed by hardware or can be executed by software.
  • a program constituting the software is installed in the computer.
  • the computer includes, for example, a general-purpose personal computer that can execute various functions by installing a computer incorporated in dedicated hardware and various programs.
  • FIG. 27 is a block diagram showing an example of the hardware configuration of a computer that executes the above-described series of processing by a program.
  • a CPU Central Processing Unit
  • ROM Read Only Memory
  • RAM Random Access Memory
  • An input / output interface 810 is also connected to the bus 804.
  • An input unit 811, an output unit 812, a storage unit 813, a communication unit 814, and a drive 815 are connected to the input / output interface 810.
  • the bag input unit 811 includes, for example, a keyboard, a mouse, a microphone, a touch panel, an input terminal, and the like.
  • the output unit 812 includes, for example, a display, a speaker, an output terminal, and the like.
  • the storage unit 813 includes, for example, a hard disk, a RAM disk, a nonvolatile memory, and the like.
  • the communication unit 814 includes a network interface, for example.
  • the drive 815 drives a removable medium 821 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory.
  • the CPU 801 loads the program stored in the storage unit 813 into the RAM 803 via the input / output interface 810 and the bus 804 and executes the program, for example. Is performed.
  • the RAM 803 also appropriately stores data necessary for the CPU 801 to execute various processes.
  • the program executed by the computer (CPU 801) can be recorded and applied to, for example, a removable medium 821 as a package medium or the like.
  • the program can be installed in the storage unit 813 via the input / output interface 810 by attaching the removable medium 821 to the drive 815.
  • This program can also be provided via a wired or wireless transmission medium such as a local area network, the Internet, or digital satellite broadcasting.
  • the program can be received by the communication unit 814 via a wired or wireless transmission medium and installed in the storage unit 813.
  • this program can be installed in the ROM 802 or the storage unit 813 in advance.
  • the program executed by the computer may be a program that is processed in time series in the order described in this specification, or in parallel or at a necessary timing such as when a call is made. It may be a program for processing.
  • the step of describing the program recorded on the recording medium is not limited to the processing performed in chronological order according to the described order, but may be performed in parallel or It also includes processes that are executed individually.
  • the system means a set of a plurality of components (devices, modules (parts), etc.), and it does not matter whether all the components are in the same housing. Accordingly, a plurality of devices housed in separate housings and connected via a network and a single device housing a plurality of modules in one housing are all systems. .
  • the configuration described as one device (or processing unit) may be divided and configured as a plurality of devices (or processing units). Conversely, the configurations described above as a plurality of devices (or processing units) may be combined into a single device (or processing unit). Of course, a configuration other than that described above may be added to the configuration of each device (or each processing unit). Furthermore, if the configuration and operation of the entire system are substantially the same, a part of the configuration of a certain device (or processing unit) may be included in the configuration of another device (or other processing unit). .
  • the present technology can take a configuration of cloud computing in which one function is shared by a plurality of devices via a network and is jointly processed.
  • each step described in the above flowchart can be executed by one apparatus or can be shared by a plurality of apparatuses.
  • the plurality of processes included in the one step can be executed by being shared by a plurality of apparatuses in addition to being executed by one apparatus.
  • the image encoding device and the image decoding device include, for example, a transmitter or a receiver in cable broadcasting such as satellite broadcasting and cable TV, distribution on the Internet, and distribution to terminals by cellular communication
  • the present invention can be applied to various electronic devices such as a recording device that records an image on a medium such as an optical disk, a magnetic disk, and a flash memory, or a playback device that reproduces an image from these storage media.
  • a recording device that records an image on a medium such as an optical disk, a magnetic disk, and a flash memory
  • a playback device that reproduces an image from these storage media.
  • FIG. 28 shows an example of a schematic configuration of a television apparatus to which the above-described embodiment is applied.
  • the television apparatus 900 includes an antenna 901, a tuner 902, a demultiplexer 903, a decoder 904, a video signal processing unit 905, a display unit 906, an audio signal processing unit 907, a speaker 908, an external interface (I / F) unit 909, and a control unit. 910, a user interface (I / F) unit 911, and a bus 912.
  • the tuner 902 extracts a signal of a desired channel from a broadcast signal received via the antenna 901, and demodulates the extracted signal. Then, the tuner 902 outputs the encoded bit stream obtained by the demodulation to the demultiplexer 903. That is, the tuner 902 has a role as a transmission unit in the television device 900 that receives an encoded stream in which an image is encoded.
  • the demultiplexer 903 separates the video stream and audio stream of the viewing target program from the encoded bit stream, and outputs each separated stream to the decoder 904. Further, the demultiplexer 903 extracts auxiliary data such as EPG (Electronic Program Guide) from the encoded bit stream, and supplies the extracted data to the control unit 910. Note that the demultiplexer 903 may perform descrambling when the encoded bit stream is scrambled.
  • EPG Electronic Program Guide
  • the decoder 904 decodes the video stream and audio stream input from the demultiplexer 903. Then, the decoder 904 outputs the video data generated by the decoding process to the video signal processing unit 905. In addition, the decoder 904 outputs audio data generated by the decoding process to the audio signal processing unit 907.
  • the video signal processing unit 905 reproduces the video data input from the decoder 904 and causes the display unit 906 to display the video.
  • the video signal processing unit 905 may cause the display unit 906 to display an application screen supplied via a network.
  • the video signal processing unit 905 may perform additional processing such as noise removal on the video data according to the setting.
  • the video signal processing unit 905 may generate a GUI (Graphical User Interface) image such as a menu, a button, or a cursor, and superimpose the generated image on the output image.
  • GUI Graphic User Interface
  • the display unit 906 is driven by a drive signal supplied from the video signal processing unit 905, and displays an image on a video screen of a display device (for example, a liquid crystal display, a plasma display, or an OELD (Organic ElectroLuminescence Display) (organic EL display)). Or an image is displayed.
  • a display device for example, a liquid crystal display, a plasma display, or an OELD (Organic ElectroLuminescence Display) (organic EL display)). Or an image is displayed.
  • the audio signal processing unit 907 performs reproduction processing such as D / A conversion and amplification on the audio data input from the decoder 904, and outputs audio from the speaker 908.
  • the audio signal processing unit 907 may perform additional processing such as noise removal on the audio data.
  • the external interface unit 909 is an interface for connecting the television device 900 to an external device or a network.
  • a video stream or an audio stream received via the external interface unit 909 may be decoded by the decoder 904. That is, the external interface unit 909 also has a role as a transmission unit in the television apparatus 900 that receives an encoded stream in which an image is encoded.
  • the bag control unit 910 includes a processor such as a CPU and memories such as a RAM and a ROM.
  • the memory stores a program executed by the CPU, program data, EPG data, data acquired via a network, and the like.
  • the program stored in the memory is read and executed by the CPU when the television apparatus 900 is activated.
  • the CPU controls the operation of the television device 900 according to an operation signal input from the user interface unit 911 by executing the program.
  • the user interface unit 911 is connected to the control unit 910.
  • the user interface unit 911 includes, for example, buttons and switches for the user to operate the television device 900, a remote control signal receiving unit, and the like.
  • the user interface unit 911 detects an operation by the user via these components, generates an operation signal, and outputs the generated operation signal to the control unit 910.
  • the bus 912 connects the tuner 902, the demultiplexer 903, the decoder 904, the video signal processing unit 905, the audio signal processing unit 907, the external interface unit 909, and the control unit 910 to each other.
  • the decoder 904 has the function of the image decoding apparatus 200 (FIG. 17) according to the above-described embodiment. Thereby, an increase in storage capacity necessary for decoding the image in the television device 900 can be suppressed.
  • FIG. 29 shows an example of a schematic configuration of a mobile phone to which the above-described embodiment is applied.
  • a cellular phone 920 includes an antenna 921, a communication unit 922, an audio codec 923, a speaker 924, a microphone 925, a camera unit 926, an image processing unit 927, a demultiplexing unit 928, a recording / reproducing unit 929, a display unit 930, a control unit 931, an operation A portion 932 and a bus 933.
  • the cage antenna 921 is connected to the communication unit 922.
  • the speaker 924 and the microphone 925 are connected to the audio codec 923.
  • the operation unit 932 is connected to the control unit 931.
  • the bus 933 connects the communication unit 922, the audio codec 923, the camera unit 926, the image processing unit 927, the demultiplexing unit 928, the recording / reproducing unit 929, the display unit 930, and the control unit 931 to each other.
  • the mobile phone 920 has various operation modes including a voice call mode, a data communication mode, a shooting mode, and a videophone mode, and is used for sending and receiving voice signals, sending and receiving e-mail or image data, taking images, and recording data. Perform the action.
  • the analog voice signal generated by the microphone 925 is supplied to the voice codec 923.
  • the audio codec 923 converts an analog audio signal into audio data, A / D converts the compressed audio data, and compresses it. Then, the audio codec 923 outputs the compressed audio data to the communication unit 922.
  • the communication unit 922 encodes and modulates the audio data and generates a transmission signal. Then, the communication unit 922 transmits the generated transmission signal to a base station (not shown) via the antenna 921. In addition, the communication unit 922 amplifies a radio signal received via the antenna 921 and performs frequency conversion to acquire a received signal.
  • the communication unit 922 demodulates and decodes the received signal to generate audio data, and outputs the generated audio data to the audio codec 923.
  • the audio codec 923 decompresses the audio data and performs D / A conversion to generate an analog audio signal. Then, the audio codec 923 supplies the generated audio signal to the speaker 924 to output audio.
  • control unit 931 in the data communication mode, for example, the control unit 931 generates character data constituting an e-mail in response to an operation by the user via the operation unit 932. In addition, the control unit 931 causes the display unit 930 to display characters. In addition, the control unit 931 generates e-mail data in response to a transmission instruction from the user via the operation unit 932, and outputs the generated e-mail data to the communication unit 922.
  • the communication unit 922 encodes and modulates email data and generates a transmission signal. Then, the communication unit 922 transmits the generated transmission signal to a base station (not shown) via the antenna 921. In addition, the communication unit 922 amplifies a radio signal received via the antenna 921 and performs frequency conversion to acquire a received signal.
  • the communication unit 922 demodulates and decodes the received signal to restore the email data, and outputs the restored email data to the control unit 931.
  • the control unit 931 displays the content of the electronic mail on the display unit 930 and stores the electronic mail data in the storage medium of the recording / reproducing unit 929.
  • the recording / reproducing unit 929 has a readable / writable arbitrary storage medium.
  • the storage medium may be a built-in storage medium such as a RAM or a flash memory, or an externally mounted type such as a hard disk, magnetic disk, magneto-optical disk, optical disk, USB (Universal Serial Bus) memory, or memory card. It may be a storage medium.
  • the camera unit 926 images a subject to generate image data, and outputs the generated image data to the image processing unit 927.
  • the image processing unit 927 encodes the image data input from the camera unit 926 and stores the encoded stream in the storage medium of the recording / playback unit 929.
  • the demultiplexing unit 928 multiplexes the video stream encoded by the image processing unit 927 and the audio stream input from the audio codec 923, and the multiplexed stream is the communication unit 922. Output to.
  • the communication unit 922 encodes and modulates the stream and generates a transmission signal. Then, the communication unit 922 transmits the generated transmission signal to a base station (not shown) via the antenna 921.
  • the communication unit 922 amplifies a radio signal received via the antenna 921 and performs frequency conversion to acquire a received signal.
  • These transmission signal and reception signal may include an encoded bit stream.
  • the communication unit 922 demodulates and decodes the received signal to restore the stream, and outputs the restored stream to the demultiplexing unit 928.
  • the demultiplexing unit 928 separates the video stream and the audio stream from the input stream, and outputs the video stream to the image processing unit 927 and the audio stream to the audio codec 923.
  • the image processing unit 927 decodes the video stream and generates video data.
  • the video data is supplied to the display unit 930, and a series of images is displayed on the display unit 930.
  • the audio codec 923 decompresses the audio stream and performs D / A conversion to generate an analog audio signal. Then, the audio codec 923 supplies the generated audio signal to the speaker 924 to output audio.
  • the image processing unit 927 has the functions of the image encoding device 100 (FIG. 10) and the image decoding device 200 (FIG. 17) according to the above-described embodiment. Accordingly, an increase in storage capacity necessary for image encoding and decoding in the mobile phone 920 can be suppressed.
  • FIG. 30 shows an example of a schematic configuration of a recording / reproducing apparatus to which the above-described embodiment is applied.
  • the recording / reproducing device 940 encodes audio data and video data of a received broadcast program and records the encoded data on a recording medium.
  • the recording / reproducing device 940 may encode audio data and video data acquired from another device and record them on a recording medium, for example.
  • the recording / reproducing device 940 reproduces data recorded on the recording medium on a monitor and a speaker, for example, in accordance with a user instruction. At this time, the recording / reproducing device 940 decodes the audio data and the video data.
  • the recording / reproducing apparatus 940 includes a tuner 941, an external interface (I / F) unit 942, an encoder 943, an HDD (Hard Disk Drive) 944, a disk drive 945, a selector 946, a decoder 947, an OSD (On-Screen Display) 948, and a control. Part 949 and a user interface (I / F) part 950.
  • I / F external interface
  • Tuner 941 extracts a signal of a desired channel from a broadcast signal received via an antenna (not shown), and demodulates the extracted signal. Then, the tuner 941 outputs the encoded bit stream obtained by the demodulation to the selector 946. That is, the tuner 941 serves as a transmission unit in the recording / reproducing apparatus 940.
  • the external interface unit 942 is an interface for connecting the recording / reproducing device 940 to an external device or a network.
  • the external interface unit 942 may be, for example, an IEEE1394 interface, a network interface, a USB interface, or a flash memory interface.
  • video data and audio data received via the external interface unit 942 are input to the encoder 943. That is, the external interface unit 942 has a role as a transmission unit in the recording / reproducing apparatus 940.
  • Encoder 943 encodes video data and audio data when video data and audio data input from external interface unit 942 are not encoded. Then, the encoder 943 outputs the encoded bit stream to the selector 946.
  • HDD 944 records an encoded bit stream in which content data such as video and audio is compressed, various programs, and other data on an internal hard disk. Further, the HDD 944 reads out these data from the hard disk when reproducing video and audio.
  • the disk drive 945 records and reads data on a recording medium loaded.
  • the recording medium mounted on the disk drive 945 is, for example, a DVD disk (DVD-Video, DVD-RAM, DVD-R, DVD-RW, DVD + R, DVD + RW, etc.) or a Blu-ray (registered trademark) disk. It may be.
  • the selector 946 selects an encoded bit stream input from the tuner 941 or the encoder 943 when recording video and audio, and outputs the selected encoded bit stream to the HDD 944 or the disk drive 945. In addition, the selector 946 outputs the encoded bit stream input from the HDD 944 or the disk drive 945 to the decoder 947 during video and audio reproduction.
  • the decoder 947 decodes the encoded bit stream and generates video data and audio data. Then, the decoder 947 outputs the generated video data to the OSD 948. The decoder 947 outputs the generated audio data to an external speaker.
  • the OSD 948 reproduces the video data input from the decoder 947 and displays the video. Further, the OSD 948 may superimpose a GUI image such as a menu, a button, or a cursor on the video to be displayed.
  • a GUI image such as a menu, a button, or a cursor
  • the bag control unit 949 includes a processor such as a CPU and memories such as a RAM and a ROM.
  • the memory stores a program executed by the CPU, program data, and the like.
  • the program stored in the memory is read and executed by the CPU when the recording / reproducing apparatus 940 is activated, for example.
  • the CPU executes the program to control the operation of the recording / reproducing device 940 in accordance with, for example, an operation signal input from the user interface unit 950.
  • the user interface unit 950 is connected to the control unit 949.
  • the user interface unit 950 includes, for example, buttons and switches for the user to operate the recording / reproducing device 940, a remote control signal receiving unit, and the like.
  • the user interface unit 950 detects an operation by the user via these components, generates an operation signal, and outputs the generated operation signal to the control unit 949.
  • the encoder 943 has the function of the image encoding apparatus 100 (FIG. 10) according to the above-described embodiment.
  • the decoder 947 has the function of the image decoding device 200 (FIG. 17) according to the above-described embodiment. Thereby, it is possible to suppress an increase in storage capacity necessary for image encoding and decoding in the recording / reproducing device 940.
  • FIG. 31 illustrates an example of a schematic configuration of an imaging apparatus to which the above-described embodiment is applied.
  • the imaging device 960 images a subject to generate an image, encodes the image data, and records it on a recording medium.
  • the imaging device 960 includes an optical block 961, an imaging unit 962, a signal processing unit 963, an image processing unit 964, a display unit 965, an external interface (I / F) unit 966, a memory 967, a media drive 968, an OSD 969, a control unit 970, A user interface (I / F) unit 971 and a bus 972 are provided.
  • the optical block 961 is connected to the imaging unit 962.
  • the imaging unit 962 is connected to the signal processing unit 963.
  • the display unit 965 is connected to the image processing unit 964.
  • the user interface unit 971 is connected to the control unit 970.
  • the bus 972 connects the image processing unit 964, the external interface unit 966, the memory 967, the media drive 968, the OSD 969, and the control unit 970 to each other.
  • the optical block 961 includes a focus lens and a diaphragm mechanism.
  • the optical block 961 forms an optical image of the subject on the imaging surface of the imaging unit 962.
  • the imaging unit 962 includes an image sensor such as a CCD (Charge-Coupled Device) or a CMOS (Complementary Metal-Oxide Semiconductor), and converts an optical image formed on the imaging surface into an image signal as an electrical signal by photoelectric conversion. Then, the imaging unit 962 outputs the image signal to the signal processing unit 963.
  • CCD Charge-Coupled Device
  • CMOS Complementary Metal-Oxide Semiconductor
  • the eyelid signal processing unit 963 performs various camera signal processing such as knee correction, gamma correction, and color correction on the image signal input from the imaging unit 962.
  • the signal processing unit 963 outputs the image data after the camera signal processing to the image processing unit 964.
  • the haze image processing unit 964 encodes the image data input from the signal processing unit 963 to generate encoded data. Then, the image processing unit 964 outputs the generated encoded data to the external interface unit 966 or the media drive 968. In addition, the image processing unit 964 decodes encoded data input from the external interface unit 966 or the media drive 968 to generate image data. Then, the image processing unit 964 outputs the generated image data to the display unit 965. In addition, the image processing unit 964 may display the image by outputting the image data input from the signal processing unit 963 to the display unit 965. Further, the image processing unit 964 may superimpose display data acquired from the OSD 969 on an image output to the display unit 965.
  • the OSD 969 generates a GUI image such as a menu, a button, or a cursor, for example, and outputs the generated image to the image processing unit 964.
  • the external interface unit 966 is configured as a USB input / output terminal, for example.
  • the external interface unit 966 connects the imaging device 960 and a printer, for example, when printing an image.
  • a drive is connected to the external interface unit 966 as necessary.
  • a removable medium such as a magnetic disk or an optical disk is attached to the drive, and a program read from the removable medium can be installed in the imaging device 960.
  • the external interface unit 966 may be configured as a network interface connected to a network such as a LAN or the Internet. That is, the external interface unit 966 has a role as a transmission unit in the imaging device 960.
  • the recording medium loaded in the media drive 968 may be any readable / writable removable medium such as a magnetic disk, a magneto-optical disk, an optical disk, or a semiconductor memory.
  • a recording medium may be fixedly mounted on the media drive 968, and a non-portable storage unit such as an internal hard disk drive or an SSD (Solid State Drive) may be configured.
  • the bag control unit 970 includes a processor such as a CPU and memories such as a RAM and a ROM.
  • the memory stores a program executed by the CPU, program data, and the like.
  • the program stored in the memory is read and executed by the CPU when the imaging device 960 is activated, for example.
  • the CPU controls the operation of the imaging device 960 according to an operation signal input from the user interface unit 971 by executing the program.
  • the user interface unit 971 is connected to the control unit 970.
  • the user interface unit 971 includes, for example, buttons and switches for the user to operate the imaging device 960.
  • the user interface unit 971 detects an operation by the user via these components, generates an operation signal, and outputs the generated operation signal to the control unit 970.
  • the image processing unit 964 has the functions of the image encoding device 100 (FIG. 10) and the image decoding device 200 (FIG. 17) according to the above-described embodiment. Accordingly, it is possible to suppress an increase in storage capacity necessary for image encoding and decoding in the imaging device 960.
  • Scalable encoding is used for selection of data to be transmitted, as in the example shown in FIG.
  • the distribution server 1002 reads the scalable encoded data stored in the scalable encoded data storage unit 1001, and via the network 1003, the personal computer 1004, the AV device 1005, the tablet This is distributed to the terminal device such as the device 1006 and the mobile phone 1007.
  • the distribution server 1002 selects and transmits encoded data of appropriate quality according to the capability of the terminal device, the communication environment, and the like. Even if the distribution server 1002 transmits high-quality data unnecessarily, a high-quality image is not always obtained in the terminal device, which may cause a delay or an overflow. Moreover, there is a possibility that the communication band is unnecessarily occupied or the load on the terminal device is unnecessarily increased. On the other hand, even if the distribution server 1002 transmits unnecessarily low quality data, there is a possibility that an image with sufficient image quality cannot be obtained in the terminal device. Therefore, the distribution server 1002 appropriately reads and transmits the scalable encoded data stored in the scalable encoded data storage unit 1001 as encoded data having an appropriate quality with respect to the capability and communication environment of the terminal device. .
  • the scalable encoded data storage unit 1001 stores scalable encoded data (BL + EL) 1011 encoded in a scalable manner.
  • the scalable encoded data (BL + EL) 1011 is encoded data including both a base layer and an enhancement layer, and is a data that can be decoded to obtain both a base layer image and an enhancement layer image. It is.
  • Distribution server 1002 selects an appropriate layer according to the capability of the terminal device that transmits data, the communication environment, and the like, and reads the data of that layer. For example, the distribution server 1002 reads high-quality scalable encoded data (BL + EL) 1011 from the scalable encoded data storage unit 1001 and transmits it to the personal computer 1004 and the tablet device 1006 with high processing capability as they are. . On the other hand, for example, the distribution server 1002 extracts base layer data from the scalable encoded data (BL + EL) 1011 for the AV device 1005 and the cellular phone 1007 having a low processing capability, and performs scalable encoding. Although it is data of the same content as the data (BL + EL) 1011, it is transmitted as scalable encoded data (BL) 1012 having a lower quality than the scalable encoded data (BL + EL) 1011.
  • BL scalable encoded data
  • scalable encoded data By using scalable encoded data in this way, the amount of data can be easily adjusted, so that the occurrence of delays and overflows can be suppressed, and unnecessary increases in the load on terminal devices and communication media can be suppressed. be able to.
  • scalable encoded data (BL + EL) 1011 since scalable encoded data (BL + EL) 1011 has reduced redundancy between layers, the amount of data can be reduced as compared with the case where encoded data of each layer is used as individual data. . Therefore, the storage area of the scalable encoded data storage unit 1001 can be used more efficiently.
  • the hardware performance of the terminal device varies depending on the device.
  • the application which a terminal device performs is also various, the capability of the software is also various.
  • the network 1003 serving as a communication medium can be applied to any communication network including wired, wireless, or both, such as the Internet and a LAN (Local Area Network), and has various data transmission capabilities. Furthermore, there is a risk of change due to other communications.
  • the distribution server 1002 communicates with the terminal device that is the data transmission destination before starting data transmission, and the hardware performance of the terminal device, the performance of the application (software) executed by the terminal device, etc. Information regarding the capability of the terminal device and information regarding the communication environment such as the available bandwidth of the network 1003 may be obtained. The distribution server 1002 may select an appropriate layer based on the information obtained here.
  • the layer extraction may be performed by the terminal device.
  • the personal computer 1004 may decode the transmitted scalable encoded data (BL + EL) 1011 and display a base layer image or an enhancement layer image. Further, for example, the personal computer 1004 extracts the base layer scalable encoded data (BL) 1012 from the transmitted scalable encoded data (BL + EL) 1011 and stores it or transfers it to another device. The base layer image may be displayed after decoding.
  • the data transmission system 1000 may be any system as long as it transmits a scalable encoded data to a terminal device by selecting an appropriate layer according to the capability of the terminal device or a communication environment. Can be applied to the system.
  • FIG. 32 by applying the present technology in the same manner as the application to the hierarchical encoding / decoding described above with reference to FIGS. 1 to 23, FIG. The effect similar to the effect mentioned above with reference to can be acquired.
  • scalable coding is used for transmission via a plurality of communication media, for example, as in the example shown in FIG.
  • a broadcasting station 1101 transmits base layer scalable encoded data (BL) 1121 by terrestrial broadcasting 1111. Also, the broadcast station 1101 transmits enhancement layer scalable encoded data (EL) 1122 via an arbitrary network 1112 including a wired or wireless communication network or both (for example, packetized transmission).
  • BL base layer scalable encoded data
  • EL enhancement layer scalable encoded data
  • Terminal device 1102 has a reception function of terrestrial broadcast 1111 broadcasted by broadcast station 1101 and receives base layer scalable encoded data (BL) 1121 transmitted via terrestrial broadcast 1111.
  • the terminal apparatus 1102 further has a communication function for performing communication via the network 1112, and receives enhancement layer scalable encoded data (EL) 1122 transmitted via the network 1112.
  • BL base layer scalable encoded data
  • EL enhancement layer scalable encoded data
  • the terminal device 1102 decodes the base layer scalable encoded data (BL) 1121 acquired via the terrestrial broadcast 1111 according to, for example, a user instruction, and obtains or stores a base layer image. Or transmit to other devices.
  • BL base layer scalable encoded data
  • the terminal device 1102 for example, in response to a user instruction, the base layer scalable encoded data (BL) 1121 acquired via the terrestrial broadcast 1111 and the enhancement layer scalable encoded acquired via the network 1112 Data (EL) 1122 is combined to obtain scalable encoded data (BL + EL), or decoded to obtain an enhancement layer image, stored, or transmitted to another device.
  • BL base layer scalable encoded data
  • EL enhancement layer scalable encoded acquired via the network 1112 Data
  • the scalable encoded data can be transmitted via, for example, different communication media for each layer. Therefore, the load can be distributed, and the occurrence of delay and overflow can be suppressed.
  • a communication medium used for transmission may be selected for each layer.
  • scalable encoded data (BL) 1121 of a base layer having a relatively large amount of data is transmitted via a communication medium having a wide bandwidth
  • scalable encoded data (EL) 1122 having a relatively small amount of data is transmitted. You may make it transmit via a communication medium with a narrow bandwidth.
  • the communication medium for transmitting the enhancement layer scalable encoded data (EL) 1122 is switched between the network 1112 and the terrestrial broadcast 1111 according to the available bandwidth of the network 1112. May be.
  • the number of layers is arbitrary, and the number of communication media used for transmission is also arbitrary.
  • the number of terminal devices 1102 serving as data distribution destinations is also arbitrary.
  • broadcasting from the broadcasting station 1101 has been described as an example, but the usage example is not limited to this.
  • the data transmission system 1100 can be applied to any system as long as it is a system that divides scalable encoded data into a plurality of layers and transmits them through a plurality of lines.
  • the present technology is applied in the same manner as the application to the hierarchical encoding / decoding described above with reference to FIGS. Effects similar to those described above with reference to FIGS. 1 to 23 can be obtained.
  • scalable encoding is used for storing encoded data as in the example shown in FIG. 34, for example.
  • the imaging device 1201 performs scalable coding on image data obtained by imaging the subject 1211, and obtains scalable coded data (BL + EL) 1221 as a scalable coded data storage device 1202. To supply.
  • the scalable encoded data storage device 1202 stores the scalable encoded data (BL + EL) 1221 supplied from the imaging device 1201 with quality according to the situation. For example, in the normal case, the scalable encoded data storage device 1202 extracts base layer data from the scalable encoded data (BL + EL) 1221, and the base layer scalable encoded data ( BL) 1222. On the other hand, for example, in the case of attention, the scalable encoded data storage device 1202 stores scalable encoded data (BL + EL) 1221 with high quality and a large amount of data.
  • the scalable encoded data storage device 1202 can store an image with high image quality only when necessary, so that an increase in the amount of data can be achieved while suppressing a reduction in the value of the image due to image quality degradation. And the use efficiency of the storage area can be improved.
  • the imaging device 1201 is a surveillance camera.
  • the monitoring target for example, an intruder
  • the content of the captured image is likely to be unimportant, so reduction of the data amount is given priority, and the image data (scalable coding) Data) is stored in low quality.
  • the image quality is given priority and the image data (scalable) (Encoded data) is stored with high quality.
  • the imaging apparatus 1201 may make a determination, and the determination result may be transmitted to the scalable encoded data storage device 1202.
  • the criterion for determining whether the time is normal or noting is arbitrary, and the content of the image as the criterion is arbitrary. Of course, conditions other than the contents of the image can also be used as the criterion. For example, it may be switched according to the volume or waveform of the recorded sound, may be switched at every predetermined time, or may be switched by an external instruction such as a user instruction.
  • the number of states is arbitrary, for example, normal, slightly attention, attention, very attention, etc.
  • three or more states may be switched.
  • the upper limit number of states to be switched depends on the number of layers of scalable encoded data.
  • the imaging apparatus 1201 may determine the number of layers for scalable coding according to the state. For example, in a normal case, the imaging apparatus 1201 may generate base layer scalable encoded data (BL) 1222 with low quality and a small amount of data, and supply the scalable encoded data storage apparatus 1202 to the scalable encoded data storage apparatus 1202. For example, when attention is paid, the imaging device 1201 generates scalable encoded data (BL + EL) 1221 having a high quality and a large amount of data, and supplies the scalable encoded data storage device 1202 to the scalable encoded data storage device 1202. May be.
  • BL base layer scalable encoded data
  • BL + EL scalable encoded data
  • the surveillance camera has been described as an example.
  • the use of the imaging system 1200 is arbitrary and is not limited to the surveillance camera.
  • FIG. 34 by applying the present technology in the same manner as the application to the hierarchical encoding / decoding described above with reference to FIGS. 1 to 23, FIGS. The effect similar to the effect mentioned above with reference can be acquired.
  • the present technology can also be applied to HTTP streaming such as MPEGASHDASH, for example, by selecting an appropriate piece of data from a plurality of encoded data with different resolutions prepared in advance. Can do. That is, information regarding encoding and decoding can be shared among a plurality of such encoded data.
  • the method for transmitting such information is not limited to such an example.
  • these pieces of information may be transmitted or recorded as separate data associated with the encoded bitstream without being multiplexed into the encoded bitstream.
  • the term “associate” means that an image (which may be a part of an image such as a slice or a block) included in the bitstream and information corresponding to the image can be linked at the time of decoding. Means. That is, information may be transmitted on a transmission path different from that of the image (or bit stream).
  • Information may be recorded on a recording medium (or another recording area of the same recording medium) different from the image (or bit stream). Furthermore, the information and the image (or bit stream) may be associated with each other in an arbitrary unit such as a plurality of frames, one frame, or a part of the frame.
  • this technique can also take the following structures.
  • An information amount reduction unit that performs processing for reducing the amount of information by reducing accuracy with respect to residual data that is a prediction error of inter-frame prediction in another layer different from the current layer of image data including a plurality of layers
  • a storage unit for storing the residual data in which the information amount is reduced by the information amount reducing unit An image encoding apparatus comprising: an encoding unit that reads out the residual data from the storage unit and encodes the current layer of the image data using the read out residual data.
  • the information amount reduction unit quantizes the residual data.
  • the image encoding device according to any one of (3) to (9).
  • the information amount reduction unit quantizes the residual data by bit-shifting the residual data in a direction to reduce a bit depth.
  • (1), (2), (4) to (4) 9) The image encoding device according to any one of the above.
  • (4) The information amount reduction unit rounds off the lower bits of the residual data, and then performs the bit shift.
  • a transmission unit that transmits the encoded data of the image data generated by the encoding unit and information indicating the shift amount of the bit shift is further provided.
  • (1) to (4), (6) to (9) The image encoding device according to any one of (9).
  • the transmission unit transmits information indicating the shift amount of the bit shift for each of the luminance signal and the color difference signal.
  • the transmission unit transmits information indicating whether to perform encoding using the residual data of the other layer, and the information is encoded using the residual data of the other layer.
  • an inverse quantization unit that inversely quantizes the residual data
  • An upsampling unit that upsamples the residual data according to a resolution ratio between the current layer and the other layer
  • the inverse quantization unit and the up-sampling unit are configured to inverse-quantize and then up-sample the residual data read from the storage unit, or up-sample and then inverse-quantize,
  • the encoding unit performs a prediction process using the residual data subjected to both the inverse quantization and the upsampling, and encodes the current layer of the image data.
  • An information amount reduction unit that performs a process of reducing the amount of information by reducing accuracy with respect to residual data that is a prediction error of inter-frame prediction in another layer different from the current layer of image data including a plurality of layers
  • a storage unit for storing the residual data in which the information amount is reduced by the information amount reducing unit An image decoding apparatus comprising: a decoding unit that reads out the residual data from the storage unit and decodes the current layer of the encoded data of the image data using the read out residual data.
  • the image decoding device according to any one of (11), (13) to (19), wherein the information amount reduction unit quantizes the residual data.
  • the information amount reduction unit quantizes the residual data by bit-shifting the residual data in a direction to reduce a bit depth. (11), (12), (14) to (14) The image decoding device according to any one of 19). (14) The information amount reduction unit performs the bit shift after rounding off the lower bits of the residual data. (11) to (13), (15) to (19) Decoding device. (15) a receiving unit that receives the encoded data and information indicating a shift amount of the bit shift; The information amount reducing unit bit-shifts the residual data by a shift amount indicated by the information received by the receiving unit, The decoding unit reads the residual data from the storage unit, and performs decoding of the current layer of the encoded data received by the receiving unit using the read residual data.
  • the image decoding device according to any one of (16) to (19).
  • (16) The image receiving unit according to any one of (11) to (15) and (17) to (19), wherein the receiving unit receives information indicating a shift amount of the bit shift for each of a luminance signal and a color difference signal.
  • (17) The reception unit receives information indicating whether encoding is performed using the residual data of the other layer, and the received information is encoded using the residual data of the other layer.
  • the image decoding device according to any one of (11) to (16), (18), and (19), which further receives information indicating the shift amount of the bit shift only when indicating that the conversion is performed.
  • the encoding unit performs prediction processing using the residual data, generates a predicted image, and encodes the current layer of the image data using the generated predicted image.
  • An upsampling unit that upsamples the residual data according to a resolution ratio between the current layer and the other layer;
  • the inverse quantization unit and the up-sampling unit are configured to inverse-quantize and then up-sample the residual data read from the storage unit, or up-sample and then inverse-quantize,
  • the encoding unit encodes the current layer of the image data using the residual data subjected to both the inverse quantization and the upsampling.
  • 100 image encoding device 101 base layer image encoding unit, 102 enhancement layer image encoding unit, 103 multiplexing unit, residual signal acquisition unit, setting unit, residual signal quantization unit, Difference signal buffer, 174 residual signal inverse quantization unit, 175 upsampling unit, 200 image decoding device, 201 demultiplexing unit, 202 base layer image decoding unit, 203 enhancement layer image decoding unit, 244 residual signal acquisition unit, 271 control information acquisition unit, 272 residual signal quantization unit, 273 base layer residual signal buffer, 274 residual signal inverse quantization unit, 275 up-sampling unit

Landscapes

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

Abstract

本開示は、符号化または復号に必要な記憶容量の増大を抑制することができるようにする画像符号化装置および方法、並びに、画像復号装置および方法に関する。 複数レイヤよりなる画像データのカレントレイヤと異なる他のレイヤにおけるフレーム間予測の予測誤差である残差データを、精度を落とすことにより情報量を低減してから記憶する。本開示は、例えば、画像データをスケーラブルに符号化する画像符号化装置、または、画像データがスケーラブルに符号化された符号化データを復号する画像復号装置等の画像処理装置に適用することができる。

Description

画像符号化装置および方法、並びに、画像復号装置および方法
  本開示は画像符号化装置および方法、並びに、画像復号装置および方法に関し、特に、符号化または復号に必要な記憶容量の増大を抑制することができるようにした画像符号化装置および方法、並びに、画像復号装置および方法に関する。
  近年、画像情報をデジタルとして取り扱い、その際、効率の高い情報の伝送、蓄積を目的とし、画像情報特有の冗長性を利用して、離散コサイン変換等の直交変換と動き補償により圧縮する符号化方式を採用して画像を圧縮符号する装置が普及しつつある。この符号化方式には、例えば、MPEG(Moving Picture Experts Group)などがある。
  特に、MPEG2(ISO/IEC 13818-2)は、汎用画像符号化方式として定義されており、飛び越し走査画像及び順次走査画像の双方、並びに標準解像度画像及び高精細画像を網羅する標準である。例えば、MPEG2は、プロフェッショナル用途及びコンシューマ用途の広範なアプリケーションに現在広く用いられている。MPEG2圧縮方式を用いることにより、例えば720×480画素を持つ標準解像度の飛び越し走査画像であれば4乃至8Mbpsの符号量(ビットレート)が割り当てられる。また、MPEG2圧縮方式を用いることにより、例えば1920×1088画素を持つ高解像度の飛び越し走査画像であれば18乃至22 Mbpsの符号量(ビットレート)が割り当てられる。これにより、高い圧縮率と良好な画質の実現が可能である。
  MPEG2は主として放送用に適合する高画質符号化を対象としていたが、MPEG1より低い符号量(ビットレート)、つまりより高い圧縮率の符号化方式には対応していなかった。携帯端末の普及により、今後そのような符号化方式のニーズは高まると思われ、これに対応してMPEG4符号化方式の標準化が行われた。画像符号化方式に関しては、1998年12月にISO/IEC 14496-2としてその規格が国際標準に承認された。
  更に、近年、当初テレビ会議用の画像符号化を目的として、H.26L (ITU-T(International Telecommunication Union Telecommunication Standardization Sector) Q6/16 VCEG(Video Coding Expert Group))という標準の規格化が進められた。H.26LはMPEG2やMPEG4といった従来の符号化方式に比べ、その符号化、復号化により多くの演算量が要求されるものの、より高い符号化効率が実現されることが知られている。また、現在、MPEG4の活動の一環として、このH.26Lをベースに、H.26Lではサポートされない機能をも取り入れ、より高い符号化効率を実現する標準化がJoint Model of Enhanced-Compression Video Codingとして行われた。
  標準化のスケジュールとしては、2003年3月にはH.264及びMPEG-4 Part10 (Advanced Video Coding、以下AVCと記す)という名の元に国際標準となった。
  さらに、このH.264/AVCの拡張として、RGBや4:2:2、4:4:4といった、業務用に必要な符号化ツールや、MPEG-2で規定されていた8x8DCTや量子化マトリクスをも含んだFRExt (Fidelity Range Extension) の標準化が2005年2月に完了した。これにより、H.264/AVCを用いて、映画に含まれるフィルムノイズをも良好に表現することが可能な符号化方式となって、Blu-Ray Disc(商標)等の幅広いアプリケーションに用いられる運びとなった。
  しかしながら、昨今、ハイビジョン画像の4倍の、4000×2000画素程度の画像を圧縮したい、あるいは、インターネットのような、限られた伝送容量の環境において、ハイビジョン画像を配信したいといった、更なる高圧縮率符号化に対するニーズが高まっている。このため、先述の、ITU-T傘下のVCEGにおいて、符号化効率の改善に関する検討が継続され行なわれている。
  そこで、現在、AVCより更なる符号化効率の向上を目的として、ITU-Tと、ISO/IECの共同の標準化団体であるJCTVC(Joint Collaboration Team - Video Coding)により、HEVC(High Efficiency Video Coding)と呼ばれる符号化方式の標準化が進められている。HEVC規格については、2013年1月にドラフト版仕様であるCommittee draftが発行されている(例えば、非特許文献1参照)。
  HEVCにおいては、動き補償のための内挿フィルタが定められている。例えば、輝度信号は、8タップ(tap)フィルタを用いて、1/4画素精度の動き補償を行う。また、色差信号は、4タップ(tap)フィルタを用いて、1/8画素精度の動き補償を行う。いずれも、処理が16ビット(bit)精度に収まるよう規定されている。これらの係数は、DCT-IFと呼ばれる手法により設計されたものである(例えば、非特許文献2参照)。
  ところで、これまでの、MPEG-2やAVCといった画像符号化方式は、画像を複数のレイヤに階層化して符号化するスケーラビリティ(scalability)機能を有していた。HEVCにおいても同様の階層符号化・階層復号(スケーラブル符号化・スケーラブル復号とも称する)が提案されている。
  このようなスケーラブル符号化・スケーラブル復号においては、処理対象の画像データは、階層化され、他のレイヤを参照せずに符号化・復号を行うベースレイヤ(Base layer)と、他のレイヤ(ベースレイヤ若しくは他のエンハンスメントレイヤ)を参照して符号化・復号を行うエンハンスメントレイヤ(Enhancement layer)を有する。
  例えば、空間解像度がスケーラブルな(レイヤ間で空間解像度が異なる)スペーシャルスケーラビリティ(Spatial Scalability)の場合、ベースレイヤ(Baselayer)の画像をエンハンスメントレイヤの処理に利用するためには、そのベースレイヤの画像をアップサンプル処理する必要がある。このアップサンプル処理において、上述した動き補償のための内挿フィルタと同様の、DCT-IFにより設計されたフィルタを用いることが提案されている(例えば、非特許文献3参照)。
  ところで、AVC符号化処理に基づくスケーラブル(Scalable)符号化処理においては、フレーム間予測符号化で符号化されたマクロブロックであるインターブロックの予測誤差信号(残差信号とも称する)に対して、階層間予測を行うことが可能である。HEVC符号化処理に基づくスケーラブル(Scalable)符号化処理においても、これと同様の処理を行うことが提案されている(例えば、非特許文献4参照)。そして、この非特許文献4においても、残差信号のアップサンプル処理に、動き補償のための内挿フィルタを用いることが提案されている。
  このようにベースレイヤの残差信号をエンハンスメントレイヤの処理に利用するために、ベースレイヤの残差信号を保持する必要がある。
Benjamin Bross, Woo-Jin Han, Gary J. Sullivan, Jens-Rainer Ohm, Gary J. Sullivan, Ye-Kui Wang, Thomas Wiegand, " High Efficiency Video Coding (HEVC) text specification draft 10 (for FDIS & Consent)", JCTVC-L1003_v4, Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 12th Meeting: Geneva, CH, 14-23 Jan. 2013 Ken McCann, Woo-Jin Han, Il-Koo Kim, Jung-Hye Min, Elena Alshina, Alexander Alshin, Tammy Lee, Jianle Chen, Vadim Seregin, Sunil Lee, Yoon-Mi Hong, Min-Su Cheon, Nikolay Shlyakhov, "Samsung's Response to the Call for Proposals on Video Compression Technology", JCTVC-A124, Joint Collaborative Team on Video Coding (JCT-VC)of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG111st Meeting: Dresden, DE, 15-23 April, 2010 Jianle Chen, Jill Boyce, Yan Ye, Miska M. Hannuksela, "SHVC Test Model 1 (SHM 1)", JCTVC-L1007, Joint Collaborative Team on Video Coding (JCT-VC)of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG1112th Meeting: Geneva, CH, 14-23 Jan. 2013 Jianle Chen, Krishna Rapaka, Xiang Li, Vadim Seregin, Liwei Guo, Marta Karczewicz, Geert Van der Auwera, Joel Sole, Xianglin Wang, Chengjie Tu, Ying Chen, "Description of scalable video coding technology proposal by Qualcomm", JCTVC-K0036, Joint Collaborative Team on Video Coding (JCT-VC)of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG1111th Meeting: Shanghai, CN, 10-19 Oct., 2012
  しかしながら、入力信号が8ビット(bit)である場合、残差信号は符号付きの9bitとなる。そのため、この残差信号を保持しておくためのレジスタ若しくはバッファの記憶容量が増大する恐れがあった。
  本開示は、このような状況に鑑みてなされたものであり、符号化または復号に必要な記憶容量の増大を抑制することができるようにするものである。
  本技術の一側面は、複数レイヤよりなる画像データのカレントレイヤと異なる他のレイヤにおけるフレーム間予測の予測誤差である残差データに対して、精度を落とすことにより情報量を低減する処理を行う情報量低減部と、前記情報量低減部により情報量が低減された前記残差データを記憶する記憶部と、前記記憶部から前記残差データを読み出し、読み出した前記残差データを用いて前記画像データの前記カレントレイヤの符号化を行う符号化部とを備える画像符号化装置である。
  前記情報量低減部は、前記残差データを量子化することができる。
  前記情報量低減部は、前記残差データに対して、ビット深度を減らす方向にビットシフトすることにより前記残差データを量子化することができる。
  前記情報量低減部は、前記残差データの下位ビットを四捨五入してから、前記ビットシフトを行うことができる。
  前記符号化部により生成された前記画像データの符号化データと、前記ビットシフトのシフト量を示す情報とを伝送する伝送部をさらに備えることができる。
  前記伝送部は、前記ビットシフトのシフト量を示す情報を、輝度信号と色差信号のそれぞれについて伝送することができる。
  前記伝送部は、前記他のレイヤの前記残差データを用いて符号化を行うかを示す情報を伝送し、前記情報が前記他のレイヤの前記残差データを用いて符号化を行うことを示す場合のみ、前記ビットシフトのシフト量を示す情報をさらに伝送することができる。
  前記画像データのビット深度に応じて、前記ビットシフトのシフト量を設定する設定部をさらに備えるようにすることができる。
  前記残差データを逆量子化する逆量子化部と、前記カレントレイヤと前記他のレイヤとの間の解像度比に応じて、前記残差データをアップサンプルするアップサンプル部とをさらに備え、前記逆量子化部および前記アップサンプル部は、前記記憶部から読み出された前記残差データを、逆量子化してからアップサンプリングするか、若しくは、アップサンプリングしてから逆量子化し、前記符号化部は、前記逆量子化および前記アップサンプリングの両方が行われた前記残差データを用いて予測処理を行い、前記画像データの前記カレントレイヤの符号化を行うことができる。
  本技術の一側面は、また、複数レイヤよりなる画像データのカレントレイヤと異なる他のレイヤにおけるフレーム間予測の予測誤差である残差データに対して、精度を落とすことにより情報量を低減し、情報量が低減された前記残差データを記憶し、記憶した前記残差データを読み出し、読み出した前記残差データを用いて前記画像データの前記カレントレイヤの符号化を行う画像符号化方法である。
  本技術の他の側面は、複数レイヤよりなる画像データのカレントレイヤと異なる他のレイヤにおけるフレーム間予測の予測誤差である残差データに対して、精度を落とすことにより情報量を低減する処理を行う情報量低減部と、前記情報量低減部により情報量が低減された前記残差データを記憶する記憶部と、前記記憶部から前記残差データを読み出し、読み出した前記残差データを用いて前記画像データの符号化データの前記カレントレイヤの復号を行う復号部とを備える画像復号装置である。
  前記情報量低減部は、前記残差データを量子化することができる。
  前記情報量低減部は、前記残差データに対して、ビット深度を減らす方向にビットシフトすることにより前記残差データを量子化することができる。
  前記情報量低減部は、前記残差データの下位ビットを四捨五入してから、前記ビットシフトを行うことができる。
  前記符号化データと、前記ビットシフトのシフト量を示す情報とを受け取る受け取り部をさらに備え、前記情報量低減部は、前記受け取り部により受け取られた前記情報に示されるシフト量だけ、前記残差データをビットシフトし、前記復号部は、前記記憶部から前記残差データを読み出し、読み出した前記残差データを用いて、前記受け取り部により受け取られた前記符号化データの前記カレントレイヤの復号を行うことができる。
  前記受け取り部は、輝度信号と色差信号のそれぞれについての前記ビットシフトのシフト量を示す情報を受け取ることができる。
  前記受け取り部は、前記他のレイヤの前記残差データを用いて符号化を行うかを示す情報を受け取り、受け取られた前記情報が前記他のレイヤの前記残差データを用いて符号化を行うことを示す場合のみ、前記ビットシフトのシフト量を示す情報をさらに受け取ることができる。
  前記符号化部は、前記残差データを用いて予測処理を行い、予測画像を生成し、生成した前記予測画像を用いて前記画像データの前記カレントレイヤの符号化を行うことができる。
  前記残差データを逆量子化する逆量子化部と、前記カレントレイヤと前記他のレイヤとの間の解像度比に応じて、前記残差データをアップサンプルするアップサンプル部とをさらに備え、前記逆量子化部および前記アップサンプル部は、前記記憶部から読み出された前記残差データを、逆量子化してからアップサンプリングするか、若しくは、アップサンプリングしてから逆量子化し、前記符号化部は、前記逆量子化および前記アップサンプリングの両方が行われた前記残差データを用いて、前記画像データの前記カレントレイヤの符号化を行うことができる。
  本技術の他の側面は、また、複数レイヤよりなる画像データのカレントレイヤと異なる他のレイヤにおけるフレーム間予測の予測誤差である残差データに対して、精度を落とすことにより情報量を低減する処理を行い、情報量が低減された前記残差データを記憶し、記憶された前記残差データを読み出し、読み出した前記残差データを用いて前記画像データの符号化データの前記カレントレイヤの復号を行う画像復号方法である。
  本技術の一側面においては、複数レイヤよりなる画像データのカレントレイヤと異なる他のレイヤにおけるフレーム間予測の予測誤差である残差データに対して、精度を落とすことにより情報量が低減され、情報量が低減された前記残差データが記憶され、記憶した前記残差データが読み出され、読み出した前記残差データを用いて前記画像データの前記カレントレイヤの符号化が行われる。
  本技術の他の側面は、また、複数レイヤよりなる画像データのカレントレイヤと異なる他のレイヤにおけるフレーム間予測の予測誤差である残差データに対して、精度を落とすことにより情報量を低減する処理が行われ、情報量が低減された前記残差データが記憶され、記憶された前記残差データが読み出され、読み出した前記残差データを用いて前記画像データの符号化データの前記カレントレイヤの復号が行われる。
  本開示によれば、画像を符号化・復号することができる。特に、符号化または復号に必要な記憶容量の増大を抑制することができる。
コーディングユニットの構成例を説明する図である。 階層画像符号化方式の例を示す図である。 スペーシャルなスケーラブル符号化の例を説明する図である。 テンポラルなスケーラブル符号化の例を説明する図である。 信号雑音比のスケーラブル符号化の例を説明する図である。 動き補償のための内挿フィルタの例を示す図である。 スケーラブル符号化における残差信号の予測について説明する図である。 シーケンスパラメータセットのシンタクスの例を説明する図である。 シーケンスパラメータセットのシンタクスの例を説明する、図8に続く図である。 画像符号化装置の主な構成例を示すブロック図である。 ベースレイヤ画像符号化部の主な構成例を示すブロック図である。 エンハンスメントレイヤ画像符号化部の主な構成例を示すブロック図である。 残差信号取得部の主な構成例を示すブロック図である。 画像符号化処理の流れの例を説明するフローチャートである。 ベースレイヤ符号化処理の流れの例を説明するフローチャートである。 エンハンスメントレイヤ符号化処理の流れの例を説明するフローチャートである。 画像復号装置の主な構成例を示すブロック図である。 ベースレイヤ画像復号部の主な構成例を示すブロック図である。 エンハンスメントレイヤ画像復号部の主な構成例を示すブロック図である。 残差信号取得部の他の構成例を示すブロック図である。 画像復号処理の流れの例を説明するフローチャートである。 ベースレイヤ復号処理の流れの例を説明するフローチャートである。 エンハンスメントレイヤ復号処理の流れの例を説明するフローチャートである。 多視点画像符号化方式の例を示す図である。 本技術を適用した多視点画像符号化装置の主な構成例を示す図である。 本技術を適用した多視点画像復号装置の主な構成例を示す図である。 コンピュータの主な構成例を示すブロック図である。 テレビジョン装置の概略的な構成の一例を示すブロック図である。 携帯電話機の概略的な構成の一例を示すブロック図である。 記録再生装置の概略的な構成の一例を示すブロック図である。 撮像装置の概略的な構成の一例を示すブロック図である。 スケーラブル符号化利用の一例を示すブロック図である。 スケーラブル符号化利用の他の例を示すブロック図である。 スケーラブル符号化利用のさらに他の例を示すブロック図である。
  以下、本開示を実施するための形態(以下実施の形態とする)について説明する。なお、説明は以下の順序で行う。
  1.概要
  2.第1の実施の形態(画像符号化装置)
  3.第2の実施の形態(画像復号装置)
  4.第3の実施の形態(多視点画像符号化・多視点画像復号装置)
  5.第4の実施の形態(コンピュータ)
  6.応用例
  7.スケーラブル符号化の応用例
  <1.概要>
    <符号化方式>
  以下においては、HEVC(High Efficiency Video Coding)方式の画像符号化・復号に適用する場合を例に、本技術を説明する。
    <コーディングユニット>
  AVC(Advanced Video Coding)方式においては、マクロブロックとサブマクロブロックによる階層構造が規定されている。しかしながら、16画素×16画素のマクロブロックでは、次世代符号化方式の対象となるような、UHD(Ultra High Definition;4000画素×2000画素)といった大きな画枠に対して最適ではない。
  これに対して、HEVC方式においては、図1に示されるように、コーディングユニット(CU(Coding Unit))が規定されている。
  CUは、Coding Tree Block(CTB)とも呼ばれ、AVC方式におけるマクロブロックと同様の役割を果たす、ピクチャ単位の画像の部分領域である。後者は、16×16画素の大きさに固定されているのに対し、前者の大きさは固定されておらず、それぞれのシーケンスにおいて、画像圧縮情報中において指定されることになる。
  例えば、出力となる符号化データに含まれるシーケンスパラメータセット(SPS(Sequence Parameter Set))において、CUの最大サイズ(LCU(Largest Coding Unit))と最小サイズ(SCU(Smallest Coding Unit))が規定される。
  それぞれのLCU内においては、SCUのサイズを下回らない範囲で、split-flag=1とすることにより、より小さなサイズのCUに分割することができる。図1の例では、LCUの大きさが128であり、最大階層深度が5となる。2N×2Nの大きさのCUは、split_flagの値が「1」である時、1つ下の階層となる、N×Nの大きさのCUに分割される。
  更に、CUは、イントラ若しくはインター予測の処理単位となる領域(ピクチャ単位の画像の部分領域)であるプレディクションユニット(Prediction Unit(PU))に分割され、また、直交変換の処理単位となる領域(ピクチャ単位の画像の部分領域)である、トランスフォームユニット(Transform Unit(TU))に分割される。現在、HEVC方式においては、4×4及び8×8に加え、16×16及び32×32直交変換を用いることが可能である。
  以上のHEVC方式のように、CUを定義し、そのCUを単位として各種処理を行うような符号化方式の場合、AVC方式におけるマクロブロックはLCUに相当し、ブロック(サブブロック)はCUに相当すると考えることができる。また、AVC方式における動き補償ブロックは、PUに相当すると考えることができる。ただし、CUは、階層構造を有するので、その最上位階層のLCUのサイズは、例えば128×128画素のように、AVC方式のマクロブロックより大きく設定されることが一般的である。
  よって、以下、LCUは、AVC方式におけるマクロブロックをも含むものとし、CUは、AVC方式におけるブロック(サブブロック)をも含むものとする。つまり、以下の説明に用いる「ブロック」は、ピクチャ内の任意の部分領域を示し、その大きさ、形状、および特性等は限定されない。つまり、「ブロック」には、例えば、TU、PU、SCU、CU、LCU、サブブロック、マクロブロック、またはスライス等任意の領域(処理単位)が含まれる。もちろん、これら以外の部分領域(処理単位)も含まれる。サイズや処理単位等を限定する必要がある場合は、適宜説明する。
  また、本明細書において、CTU(Coding Tree Unit)は、LCU(最大数のCU)のCTB(Coding Tree Block)と、そのLCUベース(レベル)で処理するときのパラメータを含む単位であるとする。また、CTUを構成するCU(Coding Unit)は、CB(Coding Block)と、そのCUベース(レベル)で処理するときのパラメータを含む単位であるとする。
    <モード選択>
  ところで、AVCそしてHEVC符号化方式において、より高い符号化効率を達成するには、適切な予測モードの選択が重要である。
  かかる選択方式の例として、JM (Joint Model) と呼ばれるH.264/MPEG-4 AVCの参照ソフトウエア (http://iphome.hhi.de/suehring/tml/index.htm において公開されている) に実装されている方法を挙げることが出来る。
  JMにおいては、以下に述べる、High Complexity Modeと、Low Complexity Modeの2通りのモード判定方法を選択することが可能である。どちらも、それぞれの予測モードModeに関するコスト関数値を算出し、これを最小にする予測モードを当該ブロック乃至マクロブロックに対する最適モードとして選択する。
  High Complexity Modeにおけるコスト関数は、以下の式(1)のように示される。
Figure JPOXMLDOC01-appb-M000001
  ここで、Ωは、当該ブロック乃至マクロブロックを符号化するための候補モードの全体集合、Dは、当該予測モードで符号化した場合の、復号画像と入力画像の差分エネルギーである。λは、量子化パラメータの関数として与えられるLagrange未定乗数である。Rは、直交変換係数を含んだ、当該モードで符号化した場合の総符号量である。
  つまり、High Complexity Modeでの符号化を行うには、上記パラメータD及びRを算出するため、全ての候補モードにより、一度、仮エンコード処理を行う必要があり、より高い演算量を要する。
  Low Complexity Modeにおけるコスト関数は、以下の式(2)のように示される。
Figure JPOXMLDOC01-appb-M000002
  ここで、Dは、High Complexity Modeの場合と異なり、予測画像と入力画像の差分エネルギーとなる。QP2Quant(QP)は、量子化パラメータQPの関数として与えられ、HeaderBitは、直交変換係数を含まない、動きベクトルや、モードといった、Headerに属する情報に関する符号量である。
  すなわち、Low Complexity Modeにおいては、それぞれの候補モードに関して、予測処理を行う必要があるが、復号画像までは必要ないため、符号化処理まで行う必要はない。このため、High Complexity Modeより低い演算量での実現が可能である。
    <階層符号化>
  ところで、これまでの、MPEG2、AVCといった画像符号化方式は、スケーラビリティ(scalability)機能を有していた。スケーラブル符号化(階層符号化)とは、画像を複数レイヤ化(階層化)し、レイヤ毎に符号化する方式である。図2は、階層画像符号化方式の一例を示す図である。
  図2に示されるように、画像の階層化においては、スケーラビリティ機能を有する所定のパラメータを基準として1の画像が複数の階層(レイヤ)に分割される。つまり、階層化された画像(階層画像)は、その所定のパラメータの値が互いに異なる複数の階層(レイヤ)の画像を含む。この階層画像の複数のレイヤは、他のレイヤの画像を利用せずに自身のレイヤの画像のみを用いて符号化・復号を行うベースレイヤと、他のレイヤの画像を利用して符号化・復号を行うノンベースレイヤ(エンハンスメントレイヤとも称する)とによりなる。ノンベースレイヤは、ベースレイヤの画像を利用するようにしても良いし、他のノンベースレイヤの画像を利用するようにしてもよい。
  一般的に、ノンベースレイヤは、冗長性が低減されるように、自身の画像と、他のレイヤの画像との差分画像のデータ(差分データ)により構成される。例えば、1の画像をベースレイヤとノンベースレイヤ(エンハンスメントレイヤとも称する)に2階層化した場合、ベースレイヤのデータのみで元の画像よりも低品質な画像が得られ、ベースレイヤのデータとノンベースレイヤのデータを合成することで、元の画像(すなわち高品質な画像)が得られる。
  このように画像を階層化することにより、状況に応じて多様な品質の画像を容易に得ることができる。例えば携帯電話のような、処理能力の低い端末に対しては、ベースレイヤ(base layer)のみの画像圧縮情報を伝送し、空間時間解像度の低い、或いは、画質の良くない動画像を再生し、テレビやパーソナルコンピュータのような、処理能力の高い端末に対しては、ベースレイヤ(base layer)に加えて、エンハンスメントレイヤ(enhancement layer)の画像圧縮情報を伝送し、空間時間解像度の高い、或いは、画質の高い動画像を再生するといったように、トランスコード処理を行うことなく、端末やネットワークの能力に応じた画像圧縮情報を、サーバから送信することが可能となる。
    <スケーラブルなパラメータ>
  このような階層画像符号化・階層画像復号(スケーラブル符号化・スケーラブル復号)において、スケーラビリティ(scalability)機能を有するパラメータは、任意である。例えば、図3に示されるような空間解像度をそのパラメータとしてもよい(spatial scalability)。このスペーシャルスケーラビリティ(spatial scalability)の場合、レイヤ毎に画像の解像度が異なる。つまり、図3に示されるように、各ピクチャが、元の画像より空間的に低解像度のベースレイヤと、ベースレイヤの画像と合成することにより元の画像(元の空間解像度)が得られるエンハンスメントレイヤの2階層に階層化される。もちろん、この階層数は一例であり、任意の階層数に階層化することができる。
  また、このようなスケーラビリティ性を持たせるパラメータとして、他には、例えば、図4に示されるような、時間解像度を適用しても良い(temporal scalability)。このテンポラルスケーラビリティ(temporal scalability)の場合、レイヤ毎にフレームレートが異なる。つまり、この場合、図4に示されるように、互いに異なるフレームレートのレイヤに階層化されており、低フレームレートのレイヤに、高フレームレートのレイヤを加えることで、より高フレームレートの動画像を得ることができ、全てのレイヤを加えることで、元の動画像(元のフレームレート)を得ることができる。この階層数は一例であり、任意の階層数に階層化することができる。
  さらに、このようなスケーラビリティ性を持たせるパラメータとして、例えば、信号雑音比(SNR(Signal to Noise ratio))を適用しても良い(SNR scalability)。このSNRスケーラビリティ(SNR scalability)の場合、レイヤ毎にSN比が異なる。つまり、図5に示されるように、各ピクチャが、元の画像よりSNRの低いベースレイヤと、ベースレイヤの画像と合成することにより元の画像(元のSNR)が得られるエンハンスメントレイヤの2階層に階層化される。すなわち、ベースレイヤ(base layer)画像圧縮情報においては、低PSNRの画像に関する情報が伝送されており、これに、エンハンスメントレイヤ(enhancement layer)画像圧縮情報を加えることで、高PSNR画像を再構築することが可能である。もちろん、この階層数は一例であり、任意の階層数に階層化することができる。
  スケーラビリティ性を持たせるパラメータは、上述した例以外であっても、もちろんよい。例えば、ベースレイヤ(base layer)が8ビット(bit)画像よりなり、これにエンハンスメントレイヤ(enhancement layer)を加えることにより、10ビット(bit)画像が得られるビット深度スケーラビリティ(bit-depth scalability)がある。
  また、ベースレイヤ(base layer)が4:2:0フォーマットのコンポーネント画像よりなり、これにエンハンスメントレイヤ(enhancement layer)を加えることにより、4:2:2フォーマットのコンポーネント画像が得られるクロマスケーラビリティ(chroma scalability)がある。
    <動き補償のための内挿フィルタ>
  HEVCにおいては、図6に示されるような動き補償のための内挿フィルタが定められている。例えば、輝度信号は、8タップ(tap)フィルタを用いて、1/4画素精度の動き補償を行う。また、色差信号は、4タップ(tap)フィルタを用いて、1/8画素精度の動き補償を行う。いずれも、処理が16ビット(bit)精度に収まるよう規定されている。これらの係数は、非特許文献2に記載されているようにDCT-IFと呼ばれる手法により設計されたものである。
    <階層間予測>
  ところで、AVC符号化処理に基づくスケーラブル(Scalable)符号化処理においては、フレーム間予測符号化で符号化されたマクロブロックであるインターブロックの予測誤差信号(残差信号とも称する)に対して、階層間予測を行うことが可能である。HEVC符号化処理に基づくスケーラブル(Scalable)符号化処理においても、これと同様の処理を行うことが非特許文献4において提案されている。
  例えば、図7において、エンハンスメントレイヤ(Enhancement layer)における残差信号[ResE]は、エンハンスメントレイヤのカレントブロックの画像データ[CurE]と、エンハンスメントレイヤの参照ブロックの画像データ[RefE]とを用いて、以下の式(3)のように算出される。
Figure JPOXMLDOC01-appb-M000003
  同様に、ベースレイヤにおける残差信号[ResB]は、ベースレイヤのカレントブロックの画像データ[CurB]と、ベースレイヤの参照ブロックの画像データ[RefB]とを用いて、以下の式(4)のように算出される。
Figure JPOXMLDOC01-appb-M000004
  スケーラブル符号化においては、エンハンスメントレイヤにおける予測効率と、ベースレイヤにおける予測効率には相関があると考えられる。すなわち、上記において、エンハンスメントレイヤにおける残差信号[ResE]が大きい値を取る時、ベースレイヤにおける残差信号[ResB]の値も大きいと考えられる。したがって、ベースレイヤにおける残差信号を用いてエンハンスメントレイヤにおける残差信号の情報量を低減させることができる。
  しかしながら、スペーシャルスケーラビリティ(Spatial Scalability)による処理がなされる時、ベースレイヤとエンハンスメントレイヤでは解像度が異なる。そこで、ベースレイヤにおける残差信号[ResB]をエンハンスメントレイヤの解像度にアップサンプルするようにし、そのアップサンプルされたベースレイヤにおける残差信号を用いてエンハンスメントレイヤにおける残差信号の情報量を低減させるようにする。
  つまり、演算後のエンハンスメントレイヤにおける残差信号[ResE']は、演算前のエンハンスメントレイヤにおける残差信号[ResE]と、アップサンプルされたベースレイヤにおける残差信号UP[ResB]とを用いて、以下の式(5)のように算出される。
Figure JPOXMLDOC01-appb-M000005
  このようにエンハンスメントレイヤにおける残差信号を算出することにより、エンハンスメントレイヤにおける符号化効率を向上させることができる。
  ところが、このようにベースレイヤにおける残差信号(残差データとも称する)をエンハンスメントレイヤの処理に利用するためには、ベースレイヤの残差信号を保持する必要がある。しかしながら、入力信号が8ビット(bit)である場合、残差信号は符号付きの9bitとなる。そのため、この残差信号を保持しておくためのレジスタ若しくはバッファの記憶容量が増大する恐れがあった。
    <残差データの情報量低減>
  そこで、複数レイヤよりなる画像データのカレントレイヤと異なる他のレイヤにおけるフレーム間予測の予測誤差である残差データ(残差信号とも称する)に対して、精度を落とすことにより情報量を低減する処理を行い、その処理結果をレジスタ若しくはバッファ等の記憶部に記憶するようにする。カレントレイヤの符号化・復号には、その記憶部に記憶された、情報量を低減させた残差データを用いるようにする。
  このようにすることにより、記憶部に記憶する残差データの情報量の増大を抑制することができる。つまり、記憶部の記憶容量の増大を抑制することができる。すなわち、符号化・復号に必要な記憶容量の増大を抑制することができる。
  なお、「カレントレイヤ」とは、符号化・復号の処理対象のレイヤであり、例えばエンハンスメントレイヤを示す。また、「他のレイヤ」とは、カレントレイヤの処理において利用する残差データを取得するカレントレイヤ以外のレイヤのことであり、例えばベースレイヤ若しくは他のエンハンスメントレイヤを示す。
  この「精度を落とすことにより情報量を低減する処理」は、例えば、量子化処理であってもよい。つまり、例えば、ベースレイヤにおける残差データが、量子化され、その量子化されたベースレイヤにおける残差データが記憶部(例えばレジスタやバッファ等)に記憶されるようにしてもよい。その場合、エンハンスメントレイヤにおける符号化・復号の処理においては、その量子化されたベースレイヤにおける残差データが記憶部から読み出され、利用される。
  また、この「量子化処理」は、例えば、残差データに対する、ビット深度を低減させる方向へのビットシフトであってもよい。より具体的には、例えば、以下の式(6)若しくは式(7)のように、ベースレイヤにおける残差データのビットシフトを行う(すなわち、量子化する)ようにしてもよい。なお、式(6)および式(7)において、ベースレイヤにおける残差データをRes_Baseとし、量子化されたベースレイヤにおける残差データを、Q(Res_Base)とし、ビットシフトのシフト量をnビットとする。
Figure JPOXMLDOC01-appb-M000006
Figure JPOXMLDOC01-appb-M000007
  なお、このビットシフト(量子化処理)により、ベースレイヤにおける残差データRes_Baseの下位nビットは除去される。その下位nビットを四捨五入する場合、ビットシフトは、式(6)のように行われる。また、下位nビットを切り捨てる場合、ビットシフトは、式(7)のように行われる。
  以上のようなビットシフト(量子化処理)により、ベースレイヤにおける残差データRes_Baseのビット深度を低減させることができる(すなわち、情報量を低減させることができる)。
  なお、このシフト量nは、任意の自然数である。例えば、ベースレイヤの入力信号が8ビット(bit)である場合、ベースレイヤにおける残差データRes_Baseは9ビットとなるが、上述した式(6)若しくは式(7)においてn=1であるとすると、この量子化処理により、ベースレイヤにおける残差データを8ビットとして記憶部に記憶させることができる。
  また、ベースレイヤの入力信号が10ビットである場合、ベースレイヤにおける残差データRes_Baseは11ビットとなるが、上述した式(6)若しくは式(7)においてn=3であるとすると、この量子化処理により、ベースレイヤにおける残差データを8ビットとして記憶部に記憶させることができる。つまり、シフト量nの値をより大きくすることにより、ベースレイヤにおける残差データを記憶する記憶部として必要な記憶容量をさらに低減させることができる。
  なお、このシフト量nは、予め定められた所定の値としてもよいが、符号化の際に、このシフト量を設定することができるようにしてもよい。例えば、ユーザや他の装置等の外部からの指示若しくは要求、外部から取得した情報、または、それらの情報に基づいて算出された情報等、任意の情報に基づいて、このシフト量を設定することができるようにしてもよい。例えば、入力信号のビット深度に応じて設定されるようにしてもよい。例えば、常に残差データのビット深度が8ビットになるように、入力信号のビット深度に応じて設定されるようにしてもよい。その場合、例えば、入力信号のビット深度が8ビットの場合、n=1とされ、入力信号のビット深度が10ビットの場合、n=3とされる。
  以上のようなビットシフト(量子化処理)は、特に、データがバイトアライメント(byte allignment)され、バイト(8ビット)単位で処理される場合に、符号化・復号に必要な記憶容量の増大をより大幅に抑制することができる。
  例えば、以上のような符号化・復号が、ソフトウェアにより実装される場合、データは、バイトアライメントされている必要がある。つまり、ベースレイヤにおける残差データは、バイト(8ビット)単位のデータとして扱われる。
  この場合、記憶部は、9ビットのベースレイヤにおける残差データを記憶するのに、16ビット(2バイト)のビット幅を確保する必要がある。そのため、符号化・復号に必要な記憶容量がより大幅に増大する恐れがあった。
  このような場合に、本技術を適用すると、上述したようにベースレイヤにおける残差データは8ビットになる。したがって、記憶部は、ベースレイヤにおける残差データを記憶するのに、8ビット(1バイト)のビット幅を確保すればよい。つまり、符号化・復号に必要な記憶容量の増大をより大幅に抑制することができる。
    <残差データの利用>
  記憶部に格納された、量子化されたベースレイヤにおける残差データは、記憶部から読みだされ、エンハンスメントレイヤの符号化・復号のイントラ予測やインター予測において利用される。その際、記憶部から読み出された、量子化されたベースレイヤにおける残差データを、逆量子化するようにしてもよい。
  この「逆量子化処理」は、例えば、残差データに対する、ビット深度を増大させる方向へのビットシフトであってもよい。より具体的には、例えば、以下の式(8)のように、量子化されたベースレイヤにおける残差データのビットシフトを行う(すなわち、逆量子化する)ようにしてもよい。なお、式(8)において、逆量子化されたベースレイヤにおける残差データをRes_Base'とし、量子化されたベースレイヤにおける残差データをQ(Res_Base)とし、ビットシフトのシフト量をnビットとする。
Figure JPOXMLDOC01-appb-M000008
  つまり、この場合、逆量子化処理は、量子化処理の場合と逆方向へのビットシフトである。このようにすることにより、ベースレイヤにおける残差データのビット深度を元に戻すことができる。つまり、エンハンスメントレイヤの符号化・復号において、ベースレイヤにおける残差データをより容易に利用することができる。
  また、スケーラブル符号化におけるスケーラブルなパラメータのレイヤ間(例えばベースレイヤとエンハンスメントレイヤとの間)の比に応じて、記憶部から読み出されたベースレイヤにおける残差データをアップサンプルするようにしてもよい。例えば、スペーシャルスケーラビリティ(Spatial Scalability)の場合、ベースレイヤとエンハンスメントレイヤとの間の解像度比に応じて、ベースレイヤにおける残差データをアップサンプルするようにしてもよい。このようにすることにより、ベースレイヤにおける残差データRes_Base'を、エンハンスメントレイヤ基準のスケールにすることができる。つまり、エンハンスメントレイヤの符号化・復号において、ベースレイヤにおける残差データをより容易に利用することができる。
  なお、ベースレイヤにおける残差データを記憶する際に、その精度を落とすことにより情報量を低減する処理を行うことにより、当然、ベースレイヤにおける残差データの精度は低減するが、実際上、この残差データの精度低減による画質への影響(画質劣化)は、非常に小さい。特に、ベースレイヤにおける残差データの精度は、アップサンプルによっても低減する。つまり、ベースレイヤにおける残差データがアップサンプルされて利用される場合、本技術を適用することによる画質への影響(画質劣化)は、さらに小さいものとなる。換言するに、本技術を適用することにより、符号化効率の低減を抑制しながら、符号化・復号に必要な記憶容量を低減させることができる。
  なお、記憶部から読み出したベースレイヤにおける残差データに対して、上述した逆量子化処理およびアップサンプル処理の両方を行うようにしてもよい。その場合、逆量子化処理を行ってからアップサンプル処理を行うようにしてもよいし、アップサンプル処理を行ってから逆量子化処理を行うようにしても良い。
  逆量子化処理を先に行う場合の方が、アップサンプル処理を先に行う場合に比べて、より高精度に演算を行うことができる。アップサンプル処理を先に行う場合の方が、逆量子化処理を先に行う場合に比べて、演算精度を低くし、回路規模を縮小することができる。
    <輝度信号・色差信号>
  また、以上に説明したような、ベースレイヤにおける残差データの情報量を低減させる処理は、輝度信号及び色差信号のそれぞれに適用することができる。つまり、ベースレイヤにおける残差データの情報量を低減させる処理を、輝度信号の符号化・復号においてのみ行うようにしてもよいし、色差信号の符号化・復号においてのみ行うようにしてもよいし、輝度信号の符号化・復号および色差信号の符号化・復号の両方において行うようにしてもよい。
  また、輝度信号の符号化・復号および色差信号の符号化・復号の両方において本技術を適用する場合、ビットシフトのシフト量(nビット)は、輝度信号と色差信号の両方において共通化する(同じ値とする)ようにしてもよいし、互いに独立に設定される(異なる値とすることができる)ようにしてもよい。
    <情報の伝送>
  さらに、ビットシフトのシフト量nを示す情報を復号側に伝送するようにしてもよい。このようにすることにより、復号の際には、この情報に基づいて、符号化の場合と同様に、ベースレイヤにおける残差データに対して、精度を落とすことにより情報量を低減する処理を行うことができるようになる。つまり、復号に必要な記憶容量の増大を抑制することができる。
  なお、復号の際に新たにシフト量を設定することもできるが、ベースレイヤにおける残差データの精度を不要に低減させずに、かつ、最大限、復号に必要な記憶容量の増大を抑制することができるようにするためには、符号化の際と同一のシフト量でビットシフトを行うのが望ましい。
  上述したように、符号化側からビットシフトのシフト量nを示す情報を復号側に伝送し、復号の際にその情報に基づいて、符号化の際と同一のシフト量でビットシフトを行うようにすることにより、より容易に、ベースレイヤにおける残差データの精度低減を抑制しながら、復号に必要な記憶容量の増大を抑制することができる。
  また、ベースレイヤにおける残差データを用いてエンハンスメントレイヤの符号化・復号を行うかを示す情報も、符号化側から復号側に伝送するようにしてもよい。また、例えば、その情報が、ベースレイヤにおける残差データを用いてエンハンスメントレイヤの符号化・復号を行うことを示す場合のみ、ビットシフトのシフト量を示す情報をさらに伝送するようにしてもよい。このようにすることにより、必要な場合にのみ、ビットシフトのシフト量を示す情報を伝送させるようにすることができ、符号化効率の低減を抑制することができる。
  さらに、ビットシフトのシフト量を示す情報は、輝度信号用の情報と、色差信号用の情報とのそれぞれを伝送するようにしてもよい。なお、ベースレイヤにおける残差データを用いてエンハンスメントレイヤの符号化・復号を行うかを示す情報も、輝度信号用の情報と、色差信号用の情報とのそれぞれを伝送するようにしてもよい。
  これらの情報は、任意のデータ単位で伝送することができる。例えば、シーケンスパラメータセット(SPS(Sequence Parameter Set))において伝送されるようにしてもよいし、ピクチャパラメータセット(PPS(Picture Parameter Set))において伝送されるようにしても良い。
  これらの情報を伝送する場合の、シーケンスパラメータセットのシンタクスの例を図8および図9に示す。
  図8に示されるように、この場合、ベースレイヤにおける残差データを用いてエンハンスメントレイヤの符号化・復号を行うかを示す情報として、residual_prediction_enable_flagが伝送される。この値が「1(真)」の場合、エンハンスメントレイヤの符号化・復号において、ベースレイヤにおける残差データが利用される。
  また、この値が「1(真)」の場合、ビットシフトのシフト量を示す情報として、bit_shift_luma_minus8およびbit_shift_chroma_minus8が伝送される。bit_shift_luma_minus8は、輝度信号についてのビットシフトのシフト量を示す情報であり、シフト量から8を減算した値がセットされる。また、bit_shift_chroma_minus8は、色差信号についてのビットシフトのシフト量を示す情報であり、シフト量から8を減算した値がセットされる。この場合、輝度信号と色差信号のそれぞれに対してシフト量を互いに独立に設定することができる。なお、シフト量は、輝度信号と色差信号で共通とし、その共通のシフト量を示す情報を伝送するようにしてもよい。
  なお、入力信号のビット深度を示す情報を符号化側から復号側に伝送するようにしてもよい。例えば、図8の場合、入力信号のビット深度を示す情報として、bit_depth_luma_minus8およびbit_depth_chroma_minus8が伝送される。bit_depth_luma_minus8は、輝度信号についての入力信号のビット深度を示す情報であり、ビット深度から8を減算した値がセットされる。また、bit_depth_chroma_minus8は、色差信号についての入力信号のビット深度を示す情報であり、ビット深度から8を減算した値がセットされる。このような情報を伝送することにより、復号側においても入力信号のビット深度をより容易に把握することができ、その入力信号のビット深度に応じた処理を容易に行うことができる。
  <2.第1の実施の形態>
    <画像符号化装置>
  次に、以上のような本技術を実現する装置とその方法について説明する。図10は、本技術を適用した画像処理装置の一態様である、画像符号化装置を示す図である。図10に示される画像符号化装置100は、階層画像符号化を行う装置である。図10に示されるように、画像符号化装置100は、ベースレイヤ画像符号化部101、エンハンスメントレイヤ画像符号化部102、および多重化部103を有する。
  ベースレイヤ画像符号化部101は、ベースレイヤ画像を符号化し、ベースレイヤ画像符号化ストリームを生成する。エンハンスメントレイヤ画像符号化部102は、エンハンスメントレイヤ画像を符号化し、エンハンスメントレイヤ画像符号化ストリームを生成する。多重化部103は、ベースレイヤ画像符号化部101において生成されたベースレイヤ画像符号化ストリームと、エンハンスメントレイヤ画像符号化部102において生成されたエンハンスメントレイヤ画像符号化ストリームとを多重化し、階層画像符号化ストリームを生成する。多重化部103は、生成した階層画像符号化ストリームを復号側に伝送する。
  ベースレイヤ画像符号化部101は、<1.概要>において上述したように、インター予測を行ったブロックについて、ベースレイヤにおける残差データを、エンハンスメントレイヤ画像符号化部102に供給する。
  エンハンスメントレイヤ画像符号化部102は、<1.概要>において上述したように、ベースレイヤにおける残差データを、ベースレイヤ画像符号化部101から取得し、そのベースレイヤにおける残差データに対して、精度を落とすことにより情報量を低減する処理を行い、その処理結果を記憶する。エンハンスメントレイヤ画像符号化部102は、その記憶したベースレイヤにおける残差データを用いて、エンハンスメントレイヤの符号化における予測処理を行う。
  また、エンハンスメントレイヤ画像符号化部102は、その情報量を低減する処理に関する情報を、多重化部103を介して(階層画像符号化ストリームとして)、復号側に伝送する。
    <ベースレイヤ画像符号化部>
  図11は、図10のベースレイヤ画像符号化部101の主な構成例を示すブロック図である。図11に示されるように、ベースレイヤ画像符号化部101は、A/D変換部111、画面並べ替えバッファ112、演算部113、直交変換部114、量子化部115、可逆符号化部116、蓄積バッファ117、逆量子化部118、および逆直交変換部119を有する。また、ベースレイヤ画像符号化部101は、演算部120、ループフィルタ121、フレームメモリ122、選択部123、イントラ予測部124、インター予測部125、予測画像選択部126、およびレート制御部127を有する。
  A/D変換部111は、入力された画像データ(ベースレイヤ画像情報)をA/D変換し、変換後の画像データ(デジタルデータ)を、画面並べ替えバッファ112に供給し、記憶させる。画面並べ替えバッファ112は、記憶した表示の順番のフレームの画像を、GOP(Group Of Picture)に応じて、符号化のためのフレームの順番に並べ替え、フレームの順番を並び替えた画像を、演算部113に供給する。また、画面並べ替えバッファ112は、フレームの順番を並び替えた画像を、イントラ予測部124およびインター予測部125にも供給する。
  演算部113は、画面並べ替えバッファ112から読み出された画像から、予測画像選択部126を介してイントラ予測部124若しくはインター予測部125から供給される予測画像を減算し、その差分情報を直交変換部114に出力する。例えば、イントラ符号化が行われる画像の場合、演算部113は、画面並べ替えバッファ112から読み出された画像から、イントラ予測部124から供給される予測画像を減算する。また、例えば、インター符号化が行われる画像の場合、演算部113は、画面並べ替えバッファ112から読み出された画像から、インター予測部125から供給される予測画像を減算する。
  直交変換部114は、演算部113から供給される差分情報に対して、離散コサイン変換やカルーネン・レーベ変換等の直交変換を施す。直交変換部114は、その変換係数を量子化部115に供給する。
  量子化部115は、直交変換部114から供給される変換係数を量子化する。量子化部115は、レート制御部127から供給される符号量の目標値に関する情報に基づいて量子化パラメータを設定し、その量子化を行う。量子化部115は、量子化された変換係数を可逆符号化部116に供給する。
  可逆符号化部116は、量子化部115において量子化された変換係数を任意の符号化方式で符号化する。係数データは、レート制御部127の制御の下で量子化されているので、この符号量は、レート制御部127が設定した目標値となる(若しくは目標値に近似する)。
  また、可逆符号化部116は、イントラ予測のモードを示す情報などをイントラ予測部124から取得し、インター予測のモードを示す情報や差分動きベクトル情報などをインター予測部125から取得する。さらに、可逆符号化部116は、シーケンスパラメータセット(SPS)、およびピクチャパラメータセット(PPS)等を含むベースレイヤのNALユニットを適宜生成する。
  可逆符号化部116は、これらの各種情報を任意の符号化方式で符号化し、符号化データ(符号化ストリームとも称する)の一部とする(多重化する)。可逆符号化部116は、符号化して得られた符号化データを蓄積バッファ117に供給して蓄積させる。
  可逆符号化部116の符号化方式としては、例えば、可変長符号化または算術符号化等が挙げられる。可変長符号化としては、例えば、H.264/AVC方式で定められているCAVLC(Context-Adaptive Variable Length Coding)などが挙げられる。算術符号化としては、例えば、CABAC(Context-Adaptive Binary Arithmetic Coding)などが挙げられる。
  蓄積バッファ117は、可逆符号化部116から供給された符号化データ(ベースレイヤ符号化データ)を、一時的に保持する。蓄積バッファ117は、所定のタイミングにおいて、保持しているベースレイヤ符号化データを、例えば、後段の図示せぬ記録装置(記録媒体)や伝送路などに出力する。すなわち、蓄積バッファ117は、符号化データを伝送する伝送部でもある。
  また、量子化部115において量子化された変換係数は、逆量子化部118にも供給される。逆量子化部118は、その量子化された変換係数を、量子化部115による量子化に対応する方法で逆量子化する。逆量子化部118は、得られた変換係数を、逆直交変換部119に供給する。
  逆直交変換部119は、逆量子化部118から供給された変換係数を、直交変換部114による直交変換処理に対応する方法で逆直交変換する。逆直交変換された出力(復元された差分情報)は、演算部120に供給される。
  演算部120は、逆直交変換部119から供給された逆直交変換結果である、復元された差分情報に、予測画像選択部126を介してイントラ予測部124若しくはインター予測部125からの予測画像を加算し、局部的に復号された画像(復号画像)を得る。その復号画像は、ループフィルタ121またはフレームメモリ122に供給される。
  ループフィルタ121は、デブロックフィルタや適応ループフィルタ等を含み、演算部120から供給される再構成画像に対して適宜フィルタ処理を行う。例えば、ループフィルタ121は、再構成画像に対してデブロックフィルタ処理を行うことにより再構成画像のブロック歪を除去する。また、例えば、ループフィルタ121は、そのデブロックフィルタ処理結果(ブロック歪みの除去が行われた再構成画像)に対して、ウィナーフィルタ(Wiener Filter)を用いてループフィルタ処理を行うことにより画質改善を行う。ループフィルタ121は、フィルタ処理結果(以下、復号画像と称する)をフレームメモリ122に供給する。
  なお、ループフィルタ121が、再構成画像に対してさらに、他の任意のフィルタ処理を行うようにしてもよい。また、ループフィルタ121は、必要に応じて、フィルタ処理に用いたフィルタ係数等の情報を可逆符号化部116に供給し、それを符号化させるようにすることもできる。
  フレームメモリ122は、供給される復号画像を記憶し、所定のタイミングにおいて、記憶している復号画像を参照画像として、選択部123に供給する。
  より具体的には、フレームメモリ122は、演算部120から供給される再構成画像と、ループフィルタ121から供給される復号画像とをそれぞれ記憶する。フレームメモリ122は、所定のタイミングにおいて、若しくは、イントラ予測部124等の外部からの要求に基づいて、記憶している再構成画像を、選択部123を介してイントラ予測部124に供給する。また、フレームメモリ122は、所定のタイミングにおいて、若しくは、インター予測部125等の外部からの要求に基づいて、記憶している復号画像を、選択部123を介して、インター予測部125に供給する。
  選択部123は、フレームメモリ122から供給される参照画像の供給先を選択する。例えば、イントラ予測の場合、選択部123は、フレームメモリ122から供給される参照画像(カレントピクチャ内の画素値)をイントラ予測部124に供給する。また、例えば、インター予測の場合、選択部123は、フレームメモリ122から供給される参照画像(カレントピクチャ外の画素値)をインター予測部125に供給する。
  イントラ予測部124は、処理対象のフレームの画像であるカレントピクチャについて、予測処理を行い、予測画像を生成する。イントラ予測部124は、この予測処理を、所定のブロック毎に(ブロックを処理単位として)行う。つまり、イントラ予測部124は、カレントピクチャの、処理対象であるカレントブロックの予測画像を生成する。その際、イントラ予測部124は、選択部123を介してフレームメモリ122から参照画像として供給される再構成画像を用いて予測処理(画面内予測(イントラ予測とも称する))を行う。つまり、イントラ予測部124は、再構成画像に含まれる、カレントブロックの周辺の画素値を用いて予測画像を生成する。このイントラ予測に利用される周辺画素値は、カレントピクチャの、過去に処理された画素の画素値である。このイントラ予測には(すなわち、予測画像の生成の仕方には)、複数の方法(イントラ予測モードとも称する)が、候補として予め用意されている。イントラ予測部124は、この予め用意された複数のイントラ予測モードでこのイントラ予測を行う。
  イントラ予測部124は、候補となる全てのイントラ予測モードで予測画像を生成し、画面並べ替えバッファ112から供給される入力画像を用いて各予測画像のコスト関数値を評価し、最適なモードを選択する。イントラ予測部124は、最適なイントラ予測モードを選択すると、その最適なモードで生成された予測画像を、予測画像選択部126に供給する。
  また、上述したように、イントラ予測部124は、採用されたイントラ予測モードを示すイントラ予測モード情報等を、適宜可逆符号化部116に供給し、符号化させる。
  インター予測部125は、カレントピクチャについて、予測処理を行い、予測画像を生成する。インター予測部125は、この予測処理を、所定のブロック毎に(ブロックを処理単位として)行う。つまり、インター予測部125は、カレントピクチャの、処理対象であるカレントブロックの予測画像を生成する。その際、インター予測部125は、画面並べ替えバッファ112から供給される入力画像の画像データと、フレームメモリ122から参照画像として供給される復号画像の画像データとを用いて、予測処理を行う。この復号画像は、カレントピクチャより前に処理されたフレームの画像(カレントピクチャでない他のピクチャ)である。つまり、インター予測部125は、他のピクチャの画像を用いて予測画像を生成する予測処理(画面間予測(インター予測とも称する))を行う。
  このインター予測は、動き予測と動き補償よりなる。より具体的には、インター予測部125は、入力画像と参照画像を用いて、カレントブロックについて動き予測を行い、動きベクトルを検出する。そして、インター予測部125は、参照画像を用いて、検出された動きベクトルに応じて動き補償処理を行い、カレントブロックの予測画像(インター予測画像情報)を生成する。このインター予測には(すなわち、予測画像の生成の仕方には)、複数の方法(インター予測モードとも称する)が、候補として予め用意されている。インター予測部125は、この予め用意された複数のインター予測モードでこのようなインター予測を行う。
  インター予測部125は、候補となる全てのインター予測モードで予測画像を生成する。インター予測部125は、画面並べ替えバッファ112から供給される入力画像と、生成した差分動きベクトルの情報などを用いて、各予測画像のコスト関数値を評価し、最適なモードを選択する。インター予測部125は、最適なインター予測モードを選択すると、その最適なモードで生成された予測画像を、予測画像選択部126に供給する。
  インター予測部125は、採用されたインター予測モードを示す情報や、符号化データを復号する際に、そのインター予測モードで処理を行うために必要な情報等を可逆符号化部116に供給し、符号化させる。必要な情報としては、例えば、生成された差分動きベクトルの情報や、予測動きベクトル情報として予測動きベクトルのインデックスを示すフラグなどがある。
  予測画像選択部126は、演算部113や演算部120に供給する予測画像の供給元を選択する。例えば、イントラ符号化の場合、予測画像選択部126は、予測画像の供給元としてイントラ予測部124を選択し、そのイントラ予測部124から供給される予測画像を演算部113や演算部120に供給する。また、例えば、インター符号化の場合、予測画像選択部126は、予測画像の供給元としてインター予測部125を選択し、そのインター予測部125から供給される予測画像を演算部113や演算部120に供給する。
  レート制御部127は、蓄積バッファ117に蓄積された符号化データの符号量に基づいて、オーバフローあるいはアンダーフローが発生しないように、量子化部115の量子化動作のレートを制御する。
  なお、ベースレイヤ画像符号化部101は、他のレイヤを参照せずに符号化を行う。つまり、イントラ予測部124およびインター予測部125は、他のレイヤの符号化に関する情報を参照しない。
  また、ベースレイヤ画像符号化部101は、<1.概要>において上述した処理を行う。すなわち、インター予測部125は、ベースレイヤにおける、フレーム間予測符号化で符号化されたインターブロックの残差データを、エンハンスメントレイヤ画像符号化部102に供給する。
    <エンハンスメントレイヤ画像符号化部>
  図12は、図10のエンハンスメントレイヤ画像符号化部102の主な構成例を示すブロック図である。図12に示されるように、エンハンスメントレイヤ画像符号化部102は、図11のベースレイヤ画像符号化部101と基本的に同様の構成を有する。
  つまり、エンハンスメントレイヤ画像符号化部102は、図12に示されるように、A/D変換部131、画面並べ替えバッファ132、演算部133、直交変換部134、量子化部135、可逆符号化部136、蓄積バッファ137、逆量子化部138、および逆直交変換部139を有する。また、エンハンスメントレイヤ画像符号化部102は、演算部140、ループフィルタ141、フレームメモリ142、選択部143、イントラ予測部144、インター予測部145、予測画像選択部146、およびレート制御部147を有する。
  これらのA/D変換部131乃至レート制御部147は、図11のA/D変換部111乃至レート制御部127に対応し、それぞれ、対応する処理部と同様の処理を行う。ただし、エンハンスメントレイヤ画像符号化部102の各部は、ベースレイヤではなく、エンハンスメントレイヤ画像情報の符号化についての処理を行う。したがって、A/D変換部131乃至レート制御部147の処理の説明として、上述した図11のA/D変換部111乃至レート制御部127についての説明を適用することができるが、その場合、処理するデータは、ベースレイヤのデータではなく、エンハンスメントレイヤのデータであるものとする必要がある。また、データの入力元や出力先の処理部は、適宜、A/D変換部131乃至レート制御部147の中の対応する処理部に置き換えて読む必要がある。
  なお、エンハンスメントレイヤ画像符号化部102は、他のレイヤ(例えばベースレイヤ)の情報を参照して符号化を行う。そして、エンハンスメントレイヤ画像符号化部102は、<1.概要>において上述した処理を行う。
  エンハンスメントレイヤ画像符号化部102は、残差信号取得部148を有する。残差信号取得部148は、ベースレイヤ画像符号化部101から、ベースレイヤにおける、フレーム間予測符号化で符号化されたインターブロックの残差データを取得する。残差信号取得部148は、取得したベースレイヤにおける残差データに対して、精度を落とすことにより情報量を低減する処理を行い、その処理結果、すなわち、情報量が低減された残差データを内蔵する記憶部(レジスタ若しくはバッファ等)に記憶する。残差信号取得部148は、その記憶部に記憶した残差データを、適宜、イントラ予測部144若しくはインター予測部145に供給する。このように残差信号取得部148が実行する処理の詳細は、<1.概要>において上述した通りである。
  また、残差信号取得部148は、残差データの情報量を低減する処理に関する情報(例えば、ビットシフトのシフト量を示す情報や、ベースレイヤにおける残差データを用いて符号化を行うかを示す情報等)を、可逆符号化部136に供給し、符号化させ、復号側に伝送させる。このように伝送される情報の詳細は、<1.概要>において上述した通りである。
    <残差信号取得部>
  図13は、図12の残差信号取得部148の主な構成例を示すブロック図である。
  図13に示されるように、残差信号取得部148は、設定部171、残差信号量子化部172、ベースレイヤ残差信号バッファ173、残差信号逆量子化部174、およびアップサンプル部175を有する。
  設定部171は、残差データの情報量を低減する処理に関する設定を行う。例えば、設定部171は、残差データの情報量を低減する処理の一例として行われる量子化処理(ビットシフト)のシフト量nビットの値を設定する。また、例えば、設定部171は、ベースレイヤにおける残差データを用いて符号化を行うか否かを決定する。このような設定方法の詳細は、<1.概要>において上述した通りである。
  設定部171は、設定内容を示す制御情報を、残差信号量子化部172乃至アップサンプル部175の各処理部に対して供給する。また、設定部171は、この制御情報、すなわち、例えば、ビットシフトのシフト量を示す情報や、ベースレイヤにおける残差データを用いてエンハンスメントレイヤの符号化・復号を行うかを示す情報等といった、残差データの情報量を低減する処理に関する情報を可逆符号化部136に供給し、符号化させ、復号側に伝送させる。この情報の詳細は、<1.概要>において上述した通りである。
  残差信号量子化部172は、ベースレイヤ画像符号化部101からベースレイヤにおける残差データ(ベースレイヤ残差信号とも称する)を取得し、そのベースレイヤ残差信号に対して、精度を落とすことにより情報量を低減する処理の一例として量子化処理(例えばビットシフト)を行う。この量子化処理(ビットシフト)は、設定部171から供給される制御情報に従って行われる。つまり、例えば、残差信号量子化部172は、ベースレイヤ画像符号化部101から取得したベースレイヤ残差信号を、設定部171から供給される制御情報に示されるシフト量分、ビット深度を低減させる方向にビットシフトする。この処理の詳細は、<1.概要>において上述した通りである。残差信号量子化部172は、その処理結果、すなわち、量子化されたベースレイヤ残差信号をベースレイヤ残差信号バッファ173に供給する。
  ベースレイヤ残差信号バッファ173は、残差信号量子化部172から供給された、量子化されたベースレイヤ残差信号を記憶する。また、ベースレイヤ残差信号バッファ173は、必要に応じて、記憶している、量子化されたベースレイヤ残差信号を残差信号逆量子化部174に供給する。
  残差信号逆量子化部174は、ベースレイヤ残差信号バッファ173から量子化されたベースレイヤ残差信号を読み出し、その読み出した、量子化されたベースレイヤ残差信号に対して、逆量子化処理(例えばビットシフト)を行う。この逆量子化処理(ビットシフト)は、設定部171から供給される制御情報に従って行われる。つまり、例えば、残差信号逆量子化部174は、ベースレイヤ残差信号バッファ173から読み出した、量子化されたベースレイヤ残差信号を、設定部171から供給される制御情報に示されるシフト量分、ビット深度を増大させる方向にビットシフトする。この処理の詳細は、<1.概要>において上述した通りである。残差信号逆量子化部174は、その処理結果、すなわち、逆量子化されたベースレイヤ残差信号をアップサンプル部175に供給する。
  アップサンプル部175は、残差信号逆量子化部174から供給された、逆量子化されたベースレイヤ残差信号を、エンハンスメントレイヤ基準となるようにアップサンプルする。このアップサンプルは、設定部171から供給される制御情報に従って行われる。例えば、アップサンプル部175は、残差信号逆量子化部174から供給された、逆量子化されたベースレイヤ残差信号を、設定部171から供給される制御情報に示されるレイヤ間の解像度比分、アップサンプルする。この処理の詳細は、<1.概要>において上述した通りである。アップサンプル部175は、その処理結果、すなわち、アップサンプルされたベースレイヤ残差信号をイントラ予測部144およびインター予測部145に供給する。
  以上のように残差信号取得部148が残差信号を処理することにより、ベースレイヤ残差信号バッファ173の記憶容量を低減させることができる。つまり、画像符号化装置100(エンハンスメントレイヤ画像符号化部102)は、符号化や復号に必要な記憶容量の増大を抑制することができる。
    <画像符号化処理の流れ>
  次に、以上のような画像符号化装置100により実行される各処理の流れについて説明する。最初に、図14のフローチャートを参照して、画像符号化処理の流れの例を説明する。
  画像符号化処理が開始されると、ステップS101において、画像符号化装置100のベースレイヤ画像符号化部101は、ベースレイヤの画像データを符号化する。
  ステップS102において、エンハンスメントレイヤ画像符号化部102は、エンハンスメントレイヤの画像データを符号化する。
  ステップS103において、多重化部103は、ステップS101の処理により生成されたベースレイヤ画像符号化ストリームと、ステップS102の処理により生成されたエンハンスメントレイヤ画像符号化ストリームとを(すなわち、各レイヤのビットストリームを)多重化し、1系統の階層画像符号化ストリームを生成する。
  ステップS103の処理が終了すると、画像符号化装置100は、画像符号化処理を終了する。このような画像符号化処理により1ピクチャが処理される。したがって、画像符号化装置100は、このような画像符号化処理を階層化された動画像データの各ピクチャについて繰り返し実行する。
    <ベースレイヤ符号化処理の流れ>
  次に、図14のステップS101において、ベースレイヤ画像符号化部101により実行されるベースレイヤ符号化処理の流れの例を、図15のフローチャートを参照して説明する。
  ベースレイヤ符号化処理が開始されると、ベースレイヤ画像符号化部101のA/D変換部111は、ステップS121において、入力された動画像の各フレーム(ピクチャ)の画像をA/D変換する。
  ステップS122において、画面並べ替えバッファ112は、ステップS121においてA/D変換された画像を記憶し、各ピクチャの表示する順番から符号化する順番への並べ替えを行う。
  ステップS123において、イントラ予測部124は、イントラ予測モードのイントラ予測処理を行う。
  ステップS124において、インター予測部125は、インター予測モードでの動き予測や動き補償等を行うインター予測処理を行う。
  ステップS125において、予測画像選択部126は、コスト関数値等に基づいて、予測画像を選択する。つまり、予測画像選択部126は、ステップS123のイントラ予測により生成された予測画像と、ステップS124のインター予測により生成された予測画像のいずれか一方を選択する。
  ステップS126において、演算部113は、ステップS122の処理によりフレーム順を並び替えられた入力画像と、ステップS125の処理により選択された予測画像との差分を演算する。つまり、演算部113は、入力画像と予測画像との差分画像の画像データを生成する。このようにして求められた差分画像の画像データは、元の画像データに比べてデータ量が低減される。したがって、画像をそのまま符号化する場合に較べて、データ量を圧縮することができる。
  ステップS127において、直交変換部114は、ステップS126の処理により生成された差分画像の画像データを直交変換する。
  ステップS128において、量子化部115は、レート制御部127により算出された量子化パラメータを用いて、ステップS127の処理により得られた直交変換係数を量子化する。
  ステップS129において、逆量子化部118は、ステップS128の処理により生成された量子化された係数(量子化係数とも称する)を、量子化部115の特性に対応する特性で逆量子化する。
  ステップS130において、逆直交変換部119は、ステップS129の処理により得られた直交変換係数を逆直交変換する。
  ステップS131において、演算部120は、ステップS130の処理により復元された差分画像に、ステップS125の処理により選択された予測画像を加算することにより、再構成画像の画像データを生成する。
  ステップS132においてループフィルタ121は、ステップS131の処理により生成された再構成画像の画像データにループフィルタ処理を行う。これにより、再構成画像のブロック歪み等が除去される。
  ステップS133において、フレームメモリ122は、ステップS132の処理により得られた復号画像やステップS131の処理により得られた再構成画像等のデータを記憶する。
  ステップS134において、可逆符号化部116は、ステップS128の処理により得られた、量子化された係数を符号化する。すなわち、差分画像に対応するデータに対して、可変長符号化や算術符号化等の可逆符号化が行われる。
  また、このとき、可逆符号化部116は、ステップS125の処理により選択された予測画像の予測モードに関する情報を符号化し、差分画像を符号化して得られる符号化データに付加する。つまり、可逆符号化部116は、イントラ予測部124から供給される最適イントラ予測モード情報、または、インター予測部125から供給される最適インター予測モードに応じた情報なども符号化し、符号化データに付加する。
  さらに、可逆符号化部116は、各種ナルユニット等のシンタクス要素も設定し、符号化し、符号化データに付加する。
  ステップS135において蓄積バッファ117は、ステップS134の処理により得られた符号化データを蓄積する。蓄積バッファ117に蓄積された符号化データは、適宜読み出され、伝送路や記録媒体を介して復号側に伝送される。
  ステップS136においてレート制御部127は、ステップS135の処理により蓄積バッファ117に蓄積された符号化データの符号量(発生符号量)に基づいて、オーバフローあるいはアンダーフローが発生しないように、量子化部115の量子化動作のレートを制御する。また、レート制御部127は、量子化パラメータに関する情報を、量子化部115に供給する。
  ステップS137において、インター予測部125は、以上のようなベースレイヤ符号化処理において得られたベースレイヤにおける残差信号を、エンハンスメントレイヤの符号化処理に供給する。
  ステップS137の処理が終了すると、ベースレイヤ符号化処理が終了し、処理は図14に戻る。
    <エンハンスメントレイヤ符号化処理の流れ>
  次に、図14のステップS102において、エンハンスメントレイヤ画像符号化部102により実行されるエンハンスメントレイヤ符号化処理の流れの例を、図15のフローチャートを参照して説明する。
  エンハンスメントレイヤ符号化処理が開始されると、エンハンスメントレイヤ画像符号化部102の設定部171は、ステップS151において、ベースレイヤの残差信号を用いた予測に関する設定を行う。
  ステップS152において、設定部171は、ステップS151において行った設定の内容を示す制御情報、すなわち、ベースレイヤの残差信号を用いた予測に関する制御情報を復号側に伝送させる。
  ステップS153において、残差信号量子化部172は、ベースレイヤ画像符号化部101からベースレイヤ残差信号を取得する。
  ステップS154において、残差信号量子化部172は、ステップS153において取得したベースレイヤ残差信号を量子化する。
  ステップS155において、ベースレイヤ残差信号バッファ173は、ステップS154の処理により得られた、量子化されたベースレイヤ残差信号を記憶する。
  ステップS156において、A/D変換部111は、入力されたエンハンスメントレイヤの動画像の各フレーム(ピクチャ)の画像をA/D変換する。
  ステップS157において、画面並べ替えバッファ112は、ステップS156においてA/D変換された画像を記憶し、各ピクチャの表示する順番から符号化する順番への並べ替えを行う。
  ステップS158において、残差信号逆量子化部174は、ベースレイヤ残差信号バッファ173から、処理対象であるカレントブロックに対応する量子化されたベースレイヤ残差信号を読み出す。
  ステップS159において、残差信号逆量子化部174は、ステップS158において読み出された、量子化されたベースレイヤ残差信号を逆量子化する。
  ステップS160において、アップサンプル部175は、逆量子化されたベースレイヤ残差信号をアップサンプルする。
  ステップS161において、イントラ予測部144は、イントラ予測処理を行う。その際、イントラ予測部144は、イントラ予測モードの候補として、ステップS160においてアップサンプルされたベースレイヤ残差信号を用いて階層間予測を行う。
  ステップS162において、インター予測部145は、インター予測処理を行う。インター予測部145は、インター予測モードの候補として、ステップS160においてアップサンプルされたベースレイヤ残差信号を用いて階層間予測を行う。
  ステップS163乃至ステップS174の各処理は、図15のステップS125乃至ステップS136の各処理に対応し、それらの処理と同様に実行される。
  ステップS174の処理が終了すると、エンハンスメントレイヤ符号化処理が終了し、処理は、図14に戻る。
  以上のように各処理を実行することにより、画像符号化装置100は、ベースレイヤにおける残差信号の記憶に用いられる記憶部の記憶容量の増大を抑制し、符号化・復号に必要な記憶容量の増大を抑制することができる。
  <3.第2の実施の形態>
    <画像復号装置>
  次に、以上のように符号化された符号化データの復号について説明する。図17は、本技術を適用した画像処理装置の一態様である、図10の画像符号化装置100に対応する画像復号装置の主な構成例を示すブロック図である。
  図17に示される画像復号装置200は、画像符号化装置100が生成した符号化データを、その符号化方法に対応する復号方法で復号する(すなわち、階層符号化された符号化データを階層復号する)。
  図17に示されるように、画像復号装置200は、逆多重化部201、ベースレイヤ画像復号部202、およびエンハンスメントレイヤ画像復号部203を有する。
  逆多重化部201は、符号化側から伝送された、ベースレイヤ画像符号化ストリームとエンハンスメントレイヤ画像符号化ストリームとが多重化された階層画像符号化ストリームを受け取り、それを逆多重化し、ベースレイヤ画像符号化ストリームと、エンハンスメントレイヤ画像符号化ストリームとを抽出する。
  ベースレイヤ画像復号部202は、逆多重化部201により抽出されたベースレイヤ画像符号化ストリームを復号し、ベースレイヤ画像を得る。エンハンスメントレイヤ画像復号部203は、逆多重化部201により抽出されたエンハンスメントレイヤ画像符号化ストリームを復号し、エンハンスメントレイヤ画像を得る。
  ベースレイヤ画像復号部202は、<1.概要>において上述したように、インター予測を行ったブロックについて、ベースレイヤにおける残差データを、エンハンスメントレイヤ画像復号部203に供給する。
  エンハンスメントレイヤ画像復号部203は、<1.概要>において上述したように、ベースレイヤにおける残差データを、ベースレイヤ画像復号部202から取得し、そのベースレイヤにおける残差データに対して、精度を落とすことにより情報量を低減する処理を行い、その処理結果を記憶する。エンハンスメントレイヤ画像復号部203は、その記憶したベースレイヤにおける残差データを用いて、エンハンスメントレイヤの復号における予測処理を行う。
    <ベースレイヤ画像復号部>
  図18は、図17のベースレイヤ画像復号部202の主な構成例を示すブロック図である。図18に示されるようにベースレイヤ画像復号部202は、蓄積バッファ211、可逆復号部212、逆量子化部213、逆直交変換部214、演算部215、ループフィルタ216、画面並べ替えバッファ217、およびD/A変換部218を有する。また、ベースレイヤ画像復号部202は、フレームメモリ219、選択部220、イントラ予測部221、インター予測部222、および予測画像選択部223を有する。
  蓄積バッファ211は、伝送されてきた符号化データを受け取る受け取り部でもある。蓄積バッファ211は、伝送されてきた符号化データを受け取って、蓄積し、所定のタイミングにおいてその符号化データを可逆復号部212に供給する。この符号化データには、予測モード情報などの復号に必要な情報が付加されている。
  可逆復号部212は、蓄積バッファ211より供給された、可逆符号化部116により符号化された情報を、その符号化方式に対応する復号方式で復号する。可逆復号部212は、復号して得られた差分画像の量子化された係数データを、逆量子化部213に供給する。
  また、可逆復号部212は、最適な予測モードにイントラ予測モードが選択されたかインター予測モードが選択されたかを判定し、その最適な予測モードに関する情報を、イントラ予測部221およびインター予測部222の内、選択されたと判定したモードの方に供給する。つまり、例えば、符号化側において最適な予測モードとしてイントラ予測モードが選択された場合、その最適な予測モードに関する情報がイントラ予測部221に供給される。また、例えば、符号化側において最適な予測モードとしてインター予測モードが選択された場合、その最適な予測モードに関する情報がインター予測部222に供給される。
  さらに、可逆復号部212は、例えば、量子化行列や量子化パラメータ等の、逆量子化に必要な情報を逆量子化部213に供給する。
  逆量子化部213は、可逆復号部212により復号されて得られた量子化された係数データを、量子化部115の量子化方式に対応する方式で逆量子化する。なお、この逆量子化部213は、逆量子化部118と同様の処理部である。
  逆量子化部213は、得られた係数データを逆直交変換部214に供給する。
  逆直交変換部214は、逆量子化部213から供給される直交変換係数を、必要に応じて、直交変換部114の直交変換方式に対応する方式で逆直交変換する。なお、この逆直交変換部214は、逆直交変換部119と同様の処理部である。
  この逆直交変換処理により差分画像の画像データが復元される。この復元された差分画像の画像データは、画像符号化装置において直交変換される前の差分画像の画像データに対応する。以下においては、この、逆直交変換部214の逆直交変換処理により得られた、復元された差分画像の画像データを、復号残差データとも称する。逆直交変換部214は、この復号残差データを、演算部215に供給する。また、演算部215には、予測画像選択部223を介して、イントラ予測部221若しくはインター予測部222から予測画像の画像データが供給される。
  演算部215は、この復号残差データと予測画像の画像データとを用いて、差分画像と予測画像とを加算した再構成画像の画像データを得る。この再構成画像は、演算部113により予測画像が減算される前の入力画像に対応する。演算部215は、その再構成画像をループフィルタ216に供給する。
  ループフィルタ216は、供給された再構成画像に対して、デブロックフィルタ処理や適応ループフィルタ処理等を含むループフィルタ処理を適宜施して復号画像を生成する。例えば、ループフィルタ216は、再構成画像に対してデブロックフィルタ処理を行うことにより、ブロック歪を除去する。また、例えば、ループフィルタ216は、そのデブロックフィルタ処理結果(ブロック歪みの除去が行われた再構成画像)に対して、ウィナーフィルタ(Wiener Filter)を用いてループフィルタ処理を行うことにより画質改善を行う。
  なお、ループフィルタ216が行うフィルタ処理の種類は任意であり、上述した以外のフィルタ処理を行ってもよい。また、ループフィルタ216が、画像符号化装置から供給されたフィルタ係数を用いてフィルタ処理を行うようにしてもよい。さらに、ループフィルタ216が、このようなフィルタ処理を省略し、入力されたデータをフィルタ処理せずに出力することもできる。
  ループフィルタ216は、フィルタ処理結果である復号画像(若しくは再構成画像)を画面並べ替えバッファ217およびフレームメモリ219に供給する。
  画面並べ替えバッファ217は、復号画像についてフレームの順番の並べ替えを行う。すなわち、画面並べ替えバッファ217は、画面並べ替えバッファ112により符号化順に並べ替えられた各フレームの画像を、元の表示順に並べ替える。つまり、画面並べ替えバッファ217は、符号化順に供給される各フレームの復号画像の画像データを、その順に記憶し、符号化順に記憶した各フレームの復号画像の画像データを、表示順に読み出してD/A変換部218に供給する。D/A変換部218は、画面並べ替えバッファ217から供給された各フレームの復号画像(デジタルデータ)をD/A変換し、アナログデータとして、図示せぬディスプレイに出力し、表示させる。
  フレームメモリ219は、供給される復号画像を記憶し、所定のタイミングにおいて、若しくは、イントラ予測部221やインター予測部222等の外部の要求に基づいて、記憶している復号画像を参照画像として、選択部220を介してイントラ予測部221やインター予測部222に供給する。
  イントラ予測部221には、イントラ予測モード情報等が可逆復号部212から適宜供給される。イントラ予測部221は、イントラ予測部124において用いられたイントラ予測モード(最適イントラ予測モード)でイントラ予測を行い、予測画像を生成する。その際、イントラ予測部221は、選択部220を介してフレームメモリ219から供給される再構成画像の画像データを用いてイントラ予測を行う。すなわち、イントラ予測部221は、この再構成画像を参照画像(周辺画素)として利用する。イントラ予測部221は、生成した予測画像を予測画像選択部223に供給する。
  インター予測部222には、最適予測モード情報や動き情報等が可逆復号部212から適宜供給される。インター予測部222は、可逆復号部212から取得された最適予測モード情報が示すインター予測モード(最適インター予測モード)で、フレームメモリ219から取得した復号画像(参照画像)を用いてインター予測を行い、予測画像を生成する。
  予測画像選択部223は、イントラ予測部221から供給される予測画像またはインター予測部222から供給される予測画像を、演算部215に供給する。そして、演算部215においては、その予測画像と逆直交変換部214からの復号残差データ(差分画像情報)とが加算されて再構成画像が得られる。
  なお、ベースレイヤ画像復号部202は、他のレイヤを参照せずに復号を行う。つまり、イントラ予測部221およびインター予測部222は、他のレイヤの符号化に関する情報を参照しない。
  また、ベースレイヤ画像復号部202は、<1.概要>において上述した処理を行う。すなわち、インター予測部222は、ベースレイヤにおける、フレーム間予測符号化で符号化されたインターブロックの残差データを、エンハンスメントレイヤ画像復号部203に供給する。
    <エンハンスメントレイヤ画像復号部>
  図19は、図17のエンハンスメントレイヤ画像復号部203の主な構成例を示すブロック図である。図19に示されるように、エンハンスメントレイヤ画像復号部203は、図18のベースレイヤ画像復号部202と基本的に同様の構成を有する。
  つまり、エンハンスメントレイヤ画像復号部203は、図19に示されるように、蓄積バッファ231、可逆復号部232、逆量子化部233、逆直交変換部234、演算部235、ループフィルタ236、画面並べ替えバッファ237、およびD/A変換部238を有する。また、エンハンスメントレイヤ画像復号部203は、フレームメモリ239、選択部240、イントラ予測部241、インター予測部242、および予測画像選択部243を有する。
  これらの蓄積バッファ231乃至予測画像選択部243は、図18の蓄積バッファ211乃至予測画像選択部223に対応し、それぞれ、対応する処理部と同様の処理を行う。ただし、エンハンスメントレイヤ画像復号部203の各部は、ベースレイヤではなく、エンハンスメントレイヤ画像情報の符号化についての処理を行う。したがって、蓄積バッファ231乃至予測画像選択部243の処理の説明として、上述した図18の蓄積バッファ211乃至予測画像選択部223についての説明を適用することができるが、その場合、処理するデータは、ベースレイヤのデータではなく、エンハンスメントレイヤのデータであるものとする必要がある。また、データの入力元や出力先の処理部は、適宜、エンハンスメントレイヤ画像復号部203の、対応する処理部に置き換えて読む必要がある。
  なお、エンハンスメントレイヤ画像復号部203は、他のレイヤ(例えばベースレイヤ)の情報を参照して符号化を行う。そして、エンハンスメントレイヤ画像復号部203は、<1.概要>において上述した処理を行う。
  エンハンスメントレイヤ画像復号部203は、残差信号取得部244を有する。エンハンスメントレイヤの符号化の際に、ベースレイヤにおける残差データを利用して予測処理が行われた場合、すなわち、イントラ予測部241若しくはインター予測部242が、エンハンスメントレイヤの復号において、ベースレイヤにおける残差データを利用して予測画像を生成する場合、残差信号取得部244は、ベースレイヤ画像復号部202から、ベースレイヤにおける、フレーム間予測符号化で符号化されたインターブロックの残差データを取得する。残差信号取得部244は、取得したベースレイヤにおける残差データに対して、精度を落とすことにより情報量を低減する処理を行い、その処理結果、すなわち、情報量が低減された残差データを内蔵する記憶部(レジスタ若しくはバッファ等)に記憶する。残差信号取得部244は、その記憶部に記憶した残差データを、適宜、イントラ予測部241若しくはインター予測部242(最適な(採用された)予測モードに対応する方)に供給する。このように残差信号取得部244が実行する処理の詳細は、<1.概要>において上述した通りである。
  なお、符号化側からは、残差データの情報量を低減する処理に関する制御情報(例えば、ビットシフトのシフト量を示す情報や、ベースレイヤにおける残差データを用いて符号化を行うかを示す情報等)が伝送される。可逆復号部232は、符号化データを復号してこの制御情報を抽出し、残差信号取得部244に供給する。残差信号取得部244は、この制御情報に基づいて、上述した処理を行う。このように伝送される制御情報の詳細は、<1.概要>において上述した通りである。
    <残差信号取得部>
  図20は、図19の残差信号取得部244の主な構成例を示すブロック図である。
  図20に示されるように、残差信号取得部244は、制御情報取得部271、残差信号量子化部272、ベースレイヤ残差信号バッファ273、残差信号逆量子化部274、およびアップサンプル部275を有する。
  制御信号取得部271は、可逆復号部232から供給される制御情報を取得する。制御信号取得部271は、適宜、その制御情報を残差信号量子化部272乃至アップサンプル部275に供給する。このように制御信号取得部271が符号化側から伝送された制御情報を供給することにより、残差信号量子化部272乃至アップサンプル部275の各処理部は、符号化側において採用された設定を把握することができ、符号化の際と同様の設定で各処理を行うことができる。
  残差信号量子化部272は、ベースレイヤ画像復号部202からベースレイヤ残差信号を取得し、そのベースレイヤ残差信号に対して、精度を落とすことにより情報量を低減する処理の一例として量子化処理(例えばビットシフト)を行う。この量子化処理(ビットシフト)は、制御情報取得部271から供給される制御情報に従って行われる。つまり、例えば、残差信号量子化部272は、ベースレイヤ画像復号部202から取得したベースレイヤ残差信号を、符号化側から供給される制御情報に示されるシフト量分、ビット深度を低減させる方向にビットシフトする。この処理の詳細は、<1.概要>において上述した通りである。残差信号量子化部272は、その処理結果、すなわち、量子化されたベースレイヤ残差信号をベースレイヤ残差信号バッファ273に供給する。
  ベースレイヤ残差信号バッファ273は、残差信号量子化部272から供給された、量子化されたベースレイヤ残差信号を記憶する。また、ベースレイヤ残差信号バッファ273は、必要に応じて、記憶している、量子化されたベースレイヤ残差信号を残差信号逆量子化部274に供給する。
  残差信号逆量子化部274は、イントラ予測部241若しくはインター予測部242が、エンハンスメントレイヤの復号において、ベースレイヤにおける残差データを利用して予測画像を生成する場合、ベースレイヤ残差信号バッファ273から量子化されたベースレイヤ残差信号を読み出す。残差信号逆量子化部274は、その読み出した、量子化されたベースレイヤ残差信号に対して、逆量子化処理(例えばビットシフト)を行う。この逆量子化処理(ビットシフト)は、制御情報取得部271から供給される制御情報に従って行われる。つまり、例えば、残差信号逆量子化部274は、ベースレイヤ残差信号バッファ273から読み出した、量子化されたベースレイヤ残差信号を、符号化側から供給される制御情報に示されるシフト量分、ビット深度を増大させる方向にビットシフトする。この処理の詳細は、<1.概要>において上述した通りである。残差信号逆量子化部274は、その処理結果、すなわち、逆量子化されたベースレイヤ残差信号をアップサンプル部275に供給する。
  アップサンプル部275は、残差信号逆量子化部274から供給された、逆量子化されたベースレイヤ残差信号を、エンハンスメントレイヤ基準となるようにアップサンプルする。このアップサンプルは、制御情報取得部271から供給される制御情報に従って行われる。例えば、アップサンプル部275は、残差信号逆量子化部274から供給された、逆量子化されたベースレイヤ残差信号を、符号化側から供給される制御情報に示されるレイヤ間の解像度比分、アップサンプルする。この処理の詳細は、<1.概要>において上述した通りである。アップサンプル部275は、その処理結果、すなわち、アップサンプルされたベースレイヤ残差信号をイントラ予測部241若しくはインター予測部242(最適な(採用された)予測モードに対応する方)に供給する。
  以上のように残差信号取得部244が残差信号を処理することにより、ベースレイヤ残差信号バッファ273の記憶容量を低減させることができる。つまり、画像復号装置200(エンハンスメントレイヤ画像復号部203)は、復号に必要な記憶容量の増大を抑制することができる。
    <画像復号処理の流れ>
  次に、以上のような画像復号装置200により実行される各処理の流れについて説明する。最初に、図21のフローチャートを参照して、画像復号処理の流れの例を説明する。
  画像復号処理が開始されると、ステップS201において、画像復号装置200の逆多重化部201は、符号化側から伝送される階層画像符号化ストリームをレイヤ毎に逆多重化する。
  ステップS202において、ベースレイヤ画像復号部202は、ステップS201の処理により抽出されたベースレイヤ画像符号化ストリームを復号する。ベースレイヤ画像復号部202は、この復号により生成されたベースレイヤ画像のデータを出力する。
  ステップS203において、エンハンスメントレイヤ画像復号部203は、ステップS201の処理により抽出されたエンハンスメントレイヤ画像符号化ストリームを復号する。エンハンスメントレイヤ画像復号部203は、この復号により生成されたエンハンスメントレイヤ画像のデータを出力する。
  ステップS203の処理が終了すると、画像復号装置200は、画像復号処理を終了する。このような画像復号処理により1ピクチャが処理される。したがって、画像復号装置200は、このような画像復号処理を階層化された動画像データの各ピクチャについて繰り返し実行する。
    <ベースレイヤ復号処理の流れ>
  次に、図21のステップS202において、ベースレイヤ画像復号部202により実行されるベースレイヤ復号処理の流れの例を、図22のフローチャートを参照して説明する。
  ベースレイヤ復号処理が開始されると、ステップS221において、蓄積バッファ211は、伝送されてきたビットストリーム(符号化データ)を蓄積する。ステップS222において、可逆復号部212は、蓄積バッファ211から供給されるビットストリーム(符号化データ)を復号する。すなわち、可逆符号化部116により符号化されたIピクチャ、Pピクチャ、並びにBピクチャ等の画像データが復号される。このとき、ヘッダ情報などのビットストリームに含められた画像データ以外の各種情報も復号される。
  ステップS223において、逆量子化部213は、ステップS222の処理により得られた、量子化された係数を逆量子化する。
  ステップS224において、逆直交変換部214は、ステップS223において逆量子化された係数を逆直交変換する。
  ステップS225において、イントラ予測部221若しくはインター予測部222は、予測処理を行い、予測画像を生成する。つまり、可逆復号部212において判定された、符号化の際に適用された予測モードで予測処理が行われる。より具体的には、例えば、符号化の際にイントラ予測が適用された場合、イントラ予測部221が、符号化の際に最適とされたイントラ予測モードで予測画像を生成する。また、例えば、符号化の際にインター予測が適用された場合、インター予測部222が、符号化の際に最適とされたインター予測モードで予測画像を生成する。
  ステップS227において、演算部215は、ステップS225において逆直交変換されて得られた差分画像に、ステップS226において生成された予測画像を加算する。これにより再構成画像の画像データが得られる。
  ステップS228において、ループフィルタ216は、ステップS227の処理により得られた再構成画像の画像データに対して、デブロックフィルタ処理や適応ループフィルタ処理等を含むループフィルタ処理を適宜行う。
  ステップS229において、画面並べ替えバッファ217は、ステップS228においてフィルタ処理された再構成画像の各フレームの並べ替えを行う。すなわち、符号化の際に並べ替えられたフレームの順序が、元の表示の順序に並べ替えられる。
  ステップS230において、D/A変換部218は、ステップS229においてフレームの順序が並べ替えられた画像をD/A変換する。この画像が図示せぬディスプレイに出力され、画像が表示される。
  ステップS231において、フレームメモリ219は、ステップS228の処理により得られた復号画像やステップS227の処理により得られた再構成画像等のデータを記憶する。
  ステップS232において、インター予測部222は、以上のようなベースレイヤの復号処理において得られたベースレイヤにおける残差信号を、エンハンスメントレイヤの復号処理に供給する。
  ステップS232の処理が終了すると、ベースレイヤ復号処理が終了し、処理は図21に戻る。
    <エンハンスメントレイヤ復号処理の流れ>
  次に、図21のステップS203において、エンハンスメントレイヤ画像復号部203により実行されるエンハンスメントレイヤ復号処理の流れの例を、図23のフローチャートを参照して説明する。
  エンハンスメントレイヤ復号処理が開始されると、エンハンスメントレイヤ画像復号部203の制御情報取得部271は、ステップS251において、符号化側から伝送されるベースレイヤ残差信号を用いた予測に関する制御情報を取得する。
  ステップS252において、残差信号量子化部272は、ベースレイヤの復号処理において得られるベースレイヤ残差信号を取得する。
  ステップS253において、残差信号量子化部272は、ステップS251において取得した制御情報に示される設定を用いて、ステップS252において取得したベースレイヤ残差信号を量子化する。例えば、残差信号量子化部272は、制御情報に示されるシフト量(nビット)分、ベースレイヤ残差信号をビットシフトする。
  ステップS254において、ベースレイヤ残差信号バッファ273は、ステップS253において量子化されたベースレイヤ残差信号を記憶する。
  ステップS255乃至ステップS258の各処理は、図22のステップS221乃至ステップS224の各処理に対応し、それらの処理と同様に実行される。
  ステップS259において、残差信号逆量子化部274は、最適予測モード(符号化の際に採用された予測モード)が、ベースレイヤ残差信号を用いた予測処理を行うモードであるか否かを判定する。ベースレイヤ残差信号を用いるモードであると判定された場合、処理は、ステップS260に進む。
  ステップS260において、残差信号逆量子化部274は、ベースレイヤ残差信号バッファ273から、ベースレイヤにおける、カレントブロックに対応するブロックであるコロケーテッドブロックの、量子化されたベースレイヤ残差信号を読み出す。
  ステップS261において、残差信号逆量子化部274は、ステップS260において読みだした、量子化されたベースレイヤ残差信号を逆量子化する。残差信号逆量子化部274は、ステップS251において取得した制御情報に示される設定を用いて、この量子化されたベースレイヤ残差信号を逆量子化する。例えば、残差信号逆量子化部274は、制御情報に示されるシフト量(nビット)分、量子化の場合と逆方向に、ベースレイヤ残差信号をビットシフトする。
  ステップS262において、アップサンプル部275は、ステップS261において逆量子化されたベースレイヤ残差信号をアップサンプルする。アップサンプル部275は、ステップS251において取得した制御情報に示される設定を用いて、この逆量子化されたベースレイヤ残差信号をアップサンプルする。例えば、アップサンプル部275は、ベースレイヤとエンハンスメントレイヤの間の解像度比に応じて逆量子化されたベースレイヤ残差信号をアップサンプルし、ベースレイヤ残差信号をエンハンスメントレイヤ基準のスケールに変換する。
  ステップS262の処理が終了すると、処理は、ステップS263に進む。また、ステップS259において、ベースレイヤ残差信号を用いるモードではないと判定された場合、処理は、ステップS263に進む。
  ステップS263乃至ステップS268の各処理は、図22のステップS225乃至ステップS230の各処理に対応し、それらの処理と同様に実行される。
  以上のように各処理を実行することにより、画像復号装置200は、ベースレイヤにおける残差信号の記憶に用いられる記憶部の記憶容量の増大を抑制し、復号に必要な記憶容量の増大を抑制することができる。
  以上においては、スケーラブル符号化により画像データが階層化されて複数レイヤ化されるように説明したが、そのレイヤ数は任意である。また、以上においては、符号化・復号において、エンハンスメントレイヤは、ベースレイヤ残差信号を用いて処理されるように説明したが、これに限らず、エンハンスメントレイヤが、処理済の他のエンハンスメントレイヤの残差信号を用いて処理されるようにしてもよい。
  例えば、図10の画像符号化装置100の場合、エンハンスメントレイヤ画像符号化部102のインター予測部145(図12)が、インター予測部125(図11)と同様に、そのエンハンスメントレイヤのインターブロックの残差信号を、他のエンハンスメントレイヤのエンハンスメントレイヤ画像符号化部102に供給するようにすればよい。
  また、例えば、図17の画像復号装置200の場合、エンハンスメントレイヤ画像復号部203のインター予測部242(図19)が、インター予測部222(図18)と同様に、そのエンハンスメントレイヤのインターブロックの残差信号を、他のエンハンスメントレイヤのエンハンスメントレイヤ画像復号部203に供給するようにすればよい。
  本技術の適用範囲は、スケーラブルな符号化・復号方式に基づくあらゆる画像符号化装置及び画像復号装置に適用することができる。
  また、本技術は、例えば、MPEG、H.26x等の様に、離散コサイン変換等の直交変換と動き補償によって圧縮された画像情報(ビットストリーム)を、衛星放送、ケーブルテレビジョン、インターネット、または携帯電話機などのネットワークメディアを介して受信する際に用いられる画像符号化装置および画像復号装置に適用することができる。また、本技術は、光、磁気ディスク、およびフラッシュメモリのような記憶メディア上で処理する際に用いられる画像符号化装置および画像復号装置に適用することができる。
  <4.第3の実施の形態>
    <多視点画像符号化・多視点画像復号への適用>
  上述した一連の処理は、多視点画像符号化・多視点画像復号に適用することができる。図24は、多視点画像符号化方式の一例を示す。
  図24に示されるように、多視点画像は、複数の視点(ビュー(view))の画像を含む。この多視点画像の複数のビューは、他のビューの情報を利用せずに自身のビューの画像のみを用いて符号化・復号を行うベースビューと、他のビューの情報を利用して符号化・復号を行うノンベースビューとによりなる。ノンベースビューの符号化・復号は、ベースビューの情報を利用するようにしても良いし、他のノンベースビューの情報を利用するようにしてもよい。
  つまり、多視点画像符号化・復号におけるビュー間の参照関係は、階層画像符号化・復号におけるレイヤ間の参照関係と同様である。したがって、図24のような多視点画像の符号化・復号において、上述した方法を適用するようにしてもよい。つまり、ノンベースビューの符号化・復号において利用するベースビュー(若しくは他のノンベースビュー)の残差信号を、その精度を落とすことにより情報量を低減させて記憶するようにしてもよい。例えば、ベースビュー(若しくは他のノンベースビュー)の残差信号を量子化して記憶するようにしてもよい。このようにすることにより、多視点画像の場合も同様に、符号化若しくは復号に必要な記憶容量の増大を抑制することができる。
    <多視点画像符号化装置>
  図25は、上述した多視点画像符号化を行う多視点画像符号化装置を示す図である。図25に示されるように、多視点画像符号化装置600は、符号化部601、符号化部602、および多重化部603を有する。
  符号化部601は、ベースビュー画像を符号化し、ベースビュー画像符号化ストリームを生成する。符号化部602は、ノンベースビュー画像を符号化し、ノンベースビュー画像符号化ストリームを生成する。多重化部603は、符号化部601において生成されたベースビュー画像符号化ストリームと、符号化部602において生成されたノンベースビュー画像符号化ストリームとを多重化し、多視点画像符号化ストリームを生成する。
  この多視点画像符号化装置600の符号化部601としてベースレイヤ画像符号化部101(図11)を適用し、符号化部602としてエンハンスメントレイヤ画像符号化部102(図12)を適用してもよい。つまり、ノンベースビューの符号化において利用するベースビュー(若しくは他のノンベースビュー)の残差信号を、その精度を落とすことにより情報量を低減させて記憶するようにしてもよい。例えば、ベースビュー(若しくは他のノンベースビュー)の残差信号を量子化して記憶するようにしてもよい。このようにすることにより、符号化に必要な記憶容量の増大を抑制することができる。なお、この多視点画像符号化の場合も、この情報量の低減に関する情報を復号側に伝送することにより、復号に必要な記憶容量の増大も、符号化の際と同様に抑制することができる。
    <多視点画像復号装置>
  図26は、上述した多視点画像復号を行う多視点画像復号装置を示す図である。図26に示されるように、多視点画像復号装置610は、逆多重化部611、復号部612、および復号部613を有する。
  逆多重化部611は、ベースビュー画像符号化ストリームとノンベースビュー画像符号化ストリームとが多重化された多視点画像符号化ストリームを逆多重化し、ベースビュー画像符号化ストリームと、ノンベースビュー画像符号化ストリームとを抽出する。復号部612は、逆多重化部611により抽出されたベースビュー画像符号化ストリームを復号し、ベースビュー画像を得る。復号部613は、逆多重化部611により抽出されたノンベースビュー画像符号化ストリームを復号し、ノンベースビュー画像を得る。
  この多視点画像復号装置610の復号部612としてベースレイヤ画像復号部202(図18)を適用し、復号部613としてエンハンスメントレイヤ画像復号部203(図19)を適用してもよい。つまり、ノンベースビューの復号において利用するベースビュー(若しくは他のノンベースビュー)の残差信号を、その精度を落とすことにより情報量を低減させて記憶するようにしてもよい。例えば、ベースビュー(若しくは他のノンベースビュー)の残差信号を量子化して記憶するようにしてもよい。このようにすることにより、復号に必要な記憶容量の増大を抑制することができる。
  <5.第4の実施の形態>
    <コンピュータ>
  上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここでコンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータ等が含まれる。
  図27は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
  図27に示されるコンピュータ800において、CPU(Central Processing Unit)801、ROM(Read Only Memory)802、RAM(Random Access Memory)803は、バス804を介して相互に接続されている。
  バス804にはまた、入出力インタフェース810も接続されている。入出力インタフェース810には、入力部811、出力部812、記憶部813、通信部814、およびドライブ815が接続されている。
  入力部811は、例えば、キーボード、マウス、マイクロホン、タッチパネル、入力端子などよりなる。出力部812は、例えば、ディスプレイ、スピーカ、出力端子などよりなる。記憶部813は、例えば、ハードディスク、RAMディスク、不揮発性のメモリなどよりなる。通信部814は、例えば、ネットワークインタフェースよりなる。ドライブ815は、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリなどのリムーバブルメディア821を駆動する。
  以上のように構成されるコンピュータでは、CPU801が、例えば、記憶部813に記憶されているプログラムを、入出力インタフェース810およびバス804を介して、RAM803にロードして実行することにより、上述した一連の処理が行われる。RAM803にはまた、CPU801が各種の処理を実行する上において必要なデータなども適宜記憶される。
  コンピュータ(CPU801)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア821に記録して適用することができる。その場合、プログラムは、リムーバブルメディア821をドライブ815に装着することにより、入出力インタフェース810を介して、記憶部813にインストールすることができる。
  また、このプログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することもできる。その場合、プログラムは、有線または無線の伝送媒体を介して、通信部814で受信し、記憶部813にインストールすることができる。
  その他、このプログラムは、ROM802や記憶部813に、あらかじめインストールしておくこともできる。
  なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
  また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
  また、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、全ての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
  また、以上において、1つの装置(または処理部)として説明した構成を分割し、複数の装置(または処理部)として構成するようにしてもよい。逆に、以上において複数の装置(または処理部)として説明した構成をまとめて1つの装置(または処理部)として構成されるようにしてもよい。また、各装置(または各処理部)の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置(または処理部)の構成の一部を他の装置(または他の処理部)の構成に含めるようにしてもよい。
  以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
  例えば、本技術は、1つの機能を、ネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
  また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
  さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
  上述した実施形態に係る画像符号化装置及び画像復号装置は、例えば、衛星放送、ケーブルTVなどの有線放送、インターネット上での配信、及びセルラー通信による端末への配信などにおける送信機若しくは受信機、光ディスク、磁気ディスク及びフラッシュメモリなどの媒体に画像を記録する記録装置、又は、これら記憶媒体から画像を再生する再生装置などの様々な電子機器に応用され得る。以下、4つの応用例について説明する。
  <6.応用例>
    <第1の応用例:テレビジョン受像機>
  図28は、上述した実施形態を適用したテレビジョン装置の概略的な構成の一例を示している。テレビジョン装置900は、アンテナ901、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、表示部906、音声信号処理部907、スピーカ908、外部インタフェース(I/F)部909、制御部910、ユーザインタフェース(I/F)部911、及びバス912を備える。
  チューナ902は、アンテナ901を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ902は、復調により得られた符号化ビットストリームをデマルチプレクサ903へ出力する。即ち、チューナ902は、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送部としての役割を有する。
  デマルチプレクサ903は、符号化ビットストリームから視聴対象の番組の映像ストリーム及び音声ストリームを分離し、分離した各ストリームをデコーダ904へ出力する。また、デマルチプレクサ903は、符号化ビットストリームからEPG(Electronic Program Guide)などの補助的なデータを抽出し、抽出したデータを制御部910に供給する。なお、デマルチプレクサ903は、符号化ビットストリームがスクランブルされている場合には、デスクランブルを行ってもよい。
  デコーダ904は、デマルチプレクサ903から入力される映像ストリーム及び音声ストリームを復号する。そして、デコーダ904は、復号処理により生成される映像データを映像信号処理部905へ出力する。また、デコーダ904は、復号処理により生成される音声データを音声信号処理部907へ出力する。
  映像信号処理部905は、デコーダ904から入力される映像データを再生し、表示部906に映像を表示させる。また、映像信号処理部905は、ネットワークを介して供給されるアプリケーション画面を表示部906に表示させてもよい。また、映像信号処理部905は、映像データについて、設定に応じて、例えばノイズ除去などの追加的な処理を行ってもよい。さらに、映像信号処理部905は、例えばメニュー、ボタン又はカーソルなどのGUI(Graphical User Interface)の画像を生成し、生成した画像を出力画像に重畳してもよい。
  表示部906は、映像信号処理部905から供給される駆動信号により駆動され、表示デバイス(例えば、液晶ディスプレイ、プラズマディスプレイ又はOELD(Organic ElectroLuminescence Display)(有機ELディスプレイ)など)の映像面上に映像又は画像を表示する。
  音声信号処理部907は、デコーダ904から入力される音声データについてD/A変換及び増幅などの再生処理を行い、スピーカ908から音声を出力させる。また、音声信号処理部907は、音声データについてノイズ除去などの追加的な処理を行ってもよい。
  外部インタフェース部909は、テレビジョン装置900と外部機器又はネットワークとを接続するためのインタフェースである。例えば、外部インタフェース部909を介して受信される映像ストリーム又は音声ストリームが、デコーダ904により復号されてもよい。即ち、外部インタフェース部909もまた、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送部としての役割を有する。
  制御部910は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、プログラムデータ、EPGデータ、及びネットワークを介して取得されるデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、テレビジョン装置900の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース部911から入力される操作信号に応じて、テレビジョン装置900の動作を制御する。
  ユーザインタフェース部911は、制御部910と接続される。ユーザインタフェース部911は、例えば、ユーザがテレビジョン装置900を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース部911は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部910へ出力する。
  バス912は、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、音声信号処理部907、外部インタフェース部909及び制御部910を相互に接続する。
  このように構成されたテレビジョン装置900において、デコーダ904は、上述した実施形態に係る画像復号装置200(図17)の機能を有する。それにより、テレビジョン装置900での画像の復号に必要な記憶容量の増大を抑制することができる。
    <第2の応用例:携帯電話機>
  図29は、上述した実施形態を適用した携帯電話機の概略的な構成の一例を示している。携帯電話機920は、アンテナ921、通信部922、音声コーデック923、スピーカ924、マイクロホン925、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、制御部931、操作部932、及びバス933を備える。
  アンテナ921は、通信部922に接続される。スピーカ924及びマイクロホン925は、音声コーデック923に接続される。操作部932は、制御部931に接続される。バス933は、通信部922、音声コーデック923、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、及び制御部931を相互に接続する。
  携帯電話機920は、音声通話モード、データ通信モード、撮影モード及びテレビ電話モードを含む様々な動作モードで、音声信号の送受信、電子メール又は画像データの送受信、画像の撮像、及びデータの記録などの動作を行う。
  音声通話モードにおいて、マイクロホン925により生成されるアナログ音声信号は、音声コーデック923に供給される。音声コーデック923は、アナログ音声信号を音声データへ変換し、変換された音声データをA/D変換し圧縮する。そして、音声コーデック923は、圧縮後の音声データを通信部922へ出力する。通信部922は、音声データを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調及び復号して音声データを生成し、生成した音声データを音声コーデック923へ出力する。音声コーデック923は、音声データを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。
  また、データ通信モードにおいて、例えば、制御部931は、操作部932を介するユーザによる操作に応じて、電子メールを構成する文字データを生成する。また、制御部931は、文字を表示部930に表示させる。また、制御部931は、操作部932を介するユーザからの送信指示に応じて電子メールデータを生成し、生成した電子メールデータを通信部922へ出力する。通信部922は、電子メールデータを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調及び復号して電子メールデータを復元し、復元した電子メールデータを制御部931へ出力する。制御部931は、表示部930に電子メールの内容を表示させると共に、電子メールデータを記録再生部929の記憶媒体に記憶させる。
  記録再生部929は、読み書き可能な任意の記憶媒体を有する。例えば、記憶媒体は、RAM又はフラッシュメモリなどの内蔵型の記憶媒体であってもよく、ハードディスク、磁気ディスク、光磁気ディスク、光ディスク、USB(Universal Serial Bus)メモリ、又はメモリカードなどの外部装着型の記憶媒体であってもよい。
  また、撮影モードにおいて、例えば、カメラ部926は、被写体を撮像して画像データを生成し、生成した画像データを画像処理部927へ出力する。画像処理部927は、カメラ部926から入力される画像データを符号化し、符号化ストリームを記録再生部929の記憶媒体に記憶させる。
  また、テレビ電話モードにおいて、例えば、多重分離部928は、画像処理部927により符号化された映像ストリームと、音声コーデック923から入力される音声ストリームとを多重化し、多重化したストリームを通信部922へ出力する。通信部922は、ストリームを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。これら送信信号及び受信信号には、符号化ビットストリームが含まれ得る。そして、通信部922は、受信信号を復調及び復号してストリームを復元し、復元したストリームを多重分離部928へ出力する。多重分離部928は、入力されるストリームから映像ストリーム及び音声ストリームを分離し、映像ストリームを画像処理部927、音声ストリームを音声コーデック923へ出力する。画像処理部927は、映像ストリームを復号し、映像データを生成する。映像データは、表示部930に供給され、表示部930により一連の画像が表示される。音声コーデック923は、音声ストリームを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。
  このように構成された携帯電話機920において、画像処理部927は、上述した実施形態に係る画像符号化装置100(図10)や画像復号装置200(図17)の機能を有する。それにより、携帯電話機920での画像の符号化および復号に必要な記憶容量の増大を抑制することができる。
    <第3の応用例:記録再生装置>
  図30は、上述した実施形態を適用した記録再生装置の概略的な構成の一例を示している。記録再生装置940は、例えば、受信した放送番組の音声データ及び映像データを符号化して記録媒体に記録する。また、記録再生装置940は、例えば、他の装置から取得される音声データ及び映像データを符号化して記録媒体に記録してもよい。また、記録再生装置940は、例えば、ユーザの指示に応じて、記録媒体に記録されているデータをモニタ及びスピーカ上で再生する。このとき、記録再生装置940は、音声データおよび映像データを復号する。
  記録再生装置940は、チューナ941、外部インタフェース(I/F)部942、エンコーダ943、HDD(Hard Disk Drive)944、ディスクドライブ945、セレクタ946、デコーダ947、OSD(On-Screen Display)948、制御部949、およびユーザインタフェース(I/F)部950を備える。
  チューナ941は、アンテナ(図示せず)を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ941は、復調により得られた符号化ビットストリームをセレクタ946へ出力する。即ち、チューナ941は、記録再生装置940における伝送部としての役割を有する。
  外部インタフェース部942は、記録再生装置940と外部機器又はネットワークとを接続するためのインタフェースである。外部インタフェース部942は、例えば、IEEE1394インタフェース、ネットワークインタフェース、USBインタフェース、又はフラッシュメモリインタフェースなどであってよい。例えば、外部インタフェース部942を介して受信される映像データおよび音声データは、エンコーダ943へ入力される。即ち、外部インタフェース部942は、記録再生装置940における伝送部としての役割を有する。
  エンコーダ943は、外部インタフェース部942から入力される映像データおよび音声データが符号化されていない場合に、映像データおよび音声データを符号化する。そして、エンコーダ943は、符号化ビットストリームをセレクタ946へ出力する。
  HDD944は、映像および音声などのコンテンツデータが圧縮された符号化ビットストリーム、各種プログラムおよびその他のデータを内部のハードディスクに記録する。また、HDD944は、映像および音声の再生時に、これらデータをハードディスクから読み出す。
  ディスクドライブ945は、装着されている記録媒体へのデータの記録および読み出しを行う。ディスクドライブ945に装着される記録媒体は、例えばDVDディスク(DVD-Video、DVD-RAM、DVD-R、DVD-RW、DVD+R、DVD+RW等)又はBlu-ray(登録商標)ディスクなどであってよい。
  セレクタ946は、映像および音声の記録時には、チューナ941又はエンコーダ943から入力される符号化ビットストリームを選択し、選択した符号化ビットストリームをHDD944又はディスクドライブ945へ出力する。また、セレクタ946は、映像及び音声の再生時には、HDD944又はディスクドライブ945から入力される符号化ビットストリームをデコーダ947へ出力する。
  デコーダ947は、符号化ビットストリームを復号し、映像データ及び音声データを生成する。そして、デコーダ947は、生成した映像データをOSD948へ出力する。また、デコーダ947は、生成した音声データを外部のスピーカへ出力する。
  OSD948は、デコーダ947から入力される映像データを再生し、映像を表示する。また、OSD948は、表示する映像に、例えばメニュー、ボタン又はカーソルなどのGUIの画像を重畳してもよい。
  制御部949は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、記録再生装置940の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース部950から入力される操作信号に応じて、記録再生装置940の動作を制御する。
  ユーザインタフェース部950は、制御部949と接続される。ユーザインタフェース部950は、例えば、ユーザが記録再生装置940を操作するためのボタンおよびスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース部950は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部949へ出力する。
  このように構成された記録再生装置940において、エンコーダ943は、上述した実施形態に係る画像符号化装置100(図10)の機能を有する。また、デコーダ947は、上述した実施形態に係る画像復号装置200(図17)の機能を有する。それにより、記録再生装置940での画像の符号化および復号に必要な記憶容量の増大を抑制することができる。
    <第4の応用例:撮像装置>
  図31は、上述した実施形態を適用した撮像装置の概略的な構成の一例を示している。撮像装置960は、被写体を撮像して画像を生成し、画像データを符号化して記録媒体に記録する。
  撮像装置960は、光学ブロック961、撮像部962、信号処理部963、画像処理部964、表示部965、外部インタフェース(I/F)部966、メモリ967、メディアドライブ968、OSD969、制御部970、ユーザインタフェース(I/F)部971、およびバス972を備える。
  光学ブロック961は、撮像部962に接続される。撮像部962は、信号処理部963に接続される。表示部965は、画像処理部964に接続される。ユーザインタフェース部971は、制御部970に接続される。バス972は、画像処理部964、外部インタフェース部966、メモリ967、メディアドライブ968、OSD969、および制御部970を相互に接続する。
  光学ブロック961は、フォーカスレンズ及び絞り機構などを有する。光学ブロック961は、被写体の光学像を撮像部962の撮像面に結像させる。撮像部962は、CCD(Charge Coupled Device)又はCMOS(Complementary Metal Oxide Semiconductor)などのイメージセンサを有し、撮像面に結像した光学像を光電変換によって電気信号としての画像信号に変換する。そして、撮像部962は、画像信号を信号処理部963へ出力する。
  信号処理部963は、撮像部962から入力される画像信号に対してニー補正、ガンマ補正、色補正などの種々のカメラ信号処理を行う。信号処理部963は、カメラ信号処理後の画像データを画像処理部964へ出力する。
  画像処理部964は、信号処理部963から入力される画像データを符号化し、符号化データを生成する。そして、画像処理部964は、生成した符号化データを外部インタフェース部966またはメディアドライブ968へ出力する。また、画像処理部964は、外部インタフェース部966またはメディアドライブ968から入力される符号化データを復号し、画像データを生成する。そして、画像処理部964は、生成した画像データを表示部965へ出力する。また、画像処理部964は、信号処理部963から入力される画像データを表示部965へ出力して画像を表示させてもよい。また、画像処理部964は、OSD969から取得される表示用データを、表示部965へ出力する画像に重畳してもよい。
  OSD969は、例えばメニュー、ボタン又はカーソルなどのGUIの画像を生成して、生成した画像を画像処理部964へ出力する。
  外部インタフェース部966は、例えばUSB入出力端子として構成される。外部インタフェース部966は、例えば、画像の印刷時に、撮像装置960とプリンタとを接続する。また、外部インタフェース部966には、必要に応じてドライブが接続される。ドライブには、例えば、磁気ディスク又は光ディスクなどのリムーバブルメディアが装着され、リムーバブルメディアから読み出されるプログラムが、撮像装置960にインストールされ得る。さらに、外部インタフェース部966は、LAN又はインターネットなどのネットワークに接続されるネットワークインタフェースとして構成されてもよい。即ち、外部インタフェース部966は、撮像装置960における伝送部としての役割を有する。
  メディアドライブ968に装着される記録媒体は、例えば、磁気ディスク、光磁気ディスク、光ディスク、又は半導体メモリなどの、読み書き可能な任意のリムーバブルメディアであってよい。また、メディアドライブ968に記録媒体が固定的に装着され、例えば、内蔵型ハードディスクドライブ又はSSD(Solid State Drive)のような非可搬性の記憶部が構成されてもよい。
  制御部970は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、撮像装置960の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース部971から入力される操作信号に応じて、撮像装置960の動作を制御する。
  ユーザインタフェース部971は、制御部970と接続される。ユーザインタフェース部971は、例えば、ユーザが撮像装置960を操作するためのボタン及びスイッチなどを有する。ユーザインタフェース部971は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部970へ出力する。
  このように構成された撮像装置960において、画像処理部964は、上述した実施形態に係る画像符号化装置100(図10)や画像復号装置200(図17)の機能を有する。それにより、撮像装置960での画像の符号化および復号に必要な記憶容量の増大を抑制することができる。
  <7.スケーラブル符号化の応用例>
    <第1のシステム>
  次に、スケーラブル符号化(階層(画像)符号化)されたスケーラブル符号化データの具体的な利用例について説明する。スケーラブル符号化は、例えば、図32に示される例のように、伝送するデータの選択のために利用される。
  図32に示されるデータ伝送システム1000において、配信サーバ1002は、スケーラブル符号化データ記憶部1001に記憶されているスケーラブル符号化データを読み出し、ネットワーク1003を介して、パーソナルコンピュータ1004、AV機器1005、タブレットデバイス1006、および携帯電話機1007等の端末装置に配信する。
  その際、配信サーバ1002は、端末装置の能力や通信環境等に応じて、適切な品質の符号化データを選択して伝送する。配信サーバ1002が不要に高品質なデータを伝送しても、端末装置において高画質な画像を得られるとは限らず、遅延やオーバフローの発生要因となる恐れがある。また、不要に通信帯域を占有したり、端末装置の負荷を不要に増大させたりしてしまう恐れもある。逆に、配信サーバ1002が不要に低品質なデータを伝送しても、端末装置において十分な画質の画像を得ることができない恐れがある。そのため、配信サーバ1002は、スケーラブル符号化データ記憶部1001に記憶されているスケーラブル符号化データを、適宜、端末装置の能力や通信環境等に対して適切な品質の符号化データとして読み出し、伝送する。
  例えば、スケーラブル符号化データ記憶部1001は、スケーラブルに符号化されたスケーラブル符号化データ(BL+EL)1011を記憶するとする。このスケーラブル符号化データ(BL+EL)1011は、ベースレイヤとエンハンスメントレイヤの両方を含む符号化データであり、復号することにより、ベースレイヤの画像およびエンハンスメントレイヤの画像の両方を得ることができるデータである。
  配信サーバ1002は、データを伝送する端末装置の能力や通信環境等に応じて、適切なレイヤを選択し、そのレイヤのデータを読み出す。例えば、配信サーバ1002は、処理能力の高いパーソナルコンピュータ1004やタブレットデバイス1006に対しては、高品質なスケーラブル符号化データ(BL+EL)1011をスケーラブル符号化データ記憶部1001から読み出し、そのまま伝送する。これに対して、例えば、配信サーバ1002は、処理能力の低いAV機器1005や携帯電話機1007に対しては、スケーラブル符号化データ(BL+EL)1011からベースレイヤのデータを抽出し、スケーラブル符号化データ(BL+EL)1011と同じコンテンツのデータであるが、スケーラブル符号化データ(BL+EL)1011よりも低品質なスケーラブル符号化データ(BL)1012として伝送する。
  このようにスケーラブル符号化データを用いることにより、データ量を容易に調整することができるので、遅延やオーバフローの発生を抑制したり、端末装置や通信媒体の負荷の不要な増大を抑制したりすることができる。また、スケーラブル符号化データ(BL+EL)1011は、レイヤ間の冗長性が低減されているので、各レイヤの符号化データを個別のデータとする場合よりもそのデータ量を低減させることができる。したがって、スケーラブル符号化データ記憶部1001の記憶領域をより効率よく使用することができる。
  なお、パーソナルコンピュータ1004乃至携帯電話機1007のように、端末装置には様々な装置を適用することができるので、端末装置のハードウエアの性能は、装置によって異なる。また、端末装置が実行するアプリケーションも様々であるので、そのソフトウエアの能力も様々である。さらに、通信媒体となるネットワーク1003も、例えばインターネットやLAN(Local Area Network)等、有線若しくは無線、またはその両方を含むあらゆる通信回線網を適用することができ、そのデータ伝送能力は様々である。さらに、他の通信等によっても変化する恐れがある。
  そこで、配信サーバ1002は、データ伝送を開始する前に、データの伝送先となる端末装置と通信を行い、端末装置のハードウエア性能や、端末装置が実行するアプリケーション(ソフトウエア)の性能等といった端末装置の能力に関する情報、並びに、ネットワーク1003の利用可能帯域幅等の通信環境に関する情報を得るようにしてもよい。そして、配信サーバ1002が、ここで得た情報を基に、適切なレイヤを選択するようにしてもよい。
  なお、レイヤの抽出は、端末装置において行うようにしてもよい。例えば、パーソナルコンピュータ1004が、伝送されたスケーラブル符号化データ(BL+EL)1011を復号し、ベースレイヤの画像を表示しても良いし、エンハンスメントレイヤの画像を表示しても良い。また、例えば、パーソナルコンピュータ1004が、伝送されたスケーラブル符号化データ(BL+EL)1011から、ベースレイヤのスケーラブル符号化データ(BL)1012を抽出し、記憶したり、他の装置に転送したり、復号してベースレイヤの画像を表示したりするようにしてもよい。
  もちろん、スケーラブル符号化データ記憶部1001、配信サーバ1002、ネットワーク1003、および端末装置の数はいずれも任意である。また、以上においては、配信サーバ1002がデータを端末装置に伝送する例について説明したが、利用例はこれに限定されない。データ伝送システム1000は、スケーラブル符号化された符号化データを端末装置に伝送する際、端末装置の能力や通信環境等に応じて、適切なレイヤを選択して伝送するシステムであれば、任意のシステムに適用することができる。
  そして、図32のようなデータ伝送システム1000においても、図1乃至図23を参照して上述した階層符号化・階層復号への適用と同様に本技術を適用することにより、図1乃至図23を参照して上述した効果と同様の効果を得ることができる。
    <第2のシステム>
  また、スケーラブル符号化は、例えば、図33に示される例のように、複数の通信媒体を介する伝送のために利用される。
  図33に示されるデータ伝送システム1100において、放送局1101は、地上波放送1111により、ベースレイヤのスケーラブル符号化データ(BL)1121を伝送する。また、放送局1101は、有線若しくは無線またはその両方の通信網よりなる任意のネットワーク1112を介して、エンハンスメントレイヤのスケーラブル符号化データ(EL)1122を伝送する(例えばパケット化して伝送する)。
  端末装置1102は、放送局1101が放送する地上波放送1111の受信機能を有し、この地上波放送1111を介して伝送されるベースレイヤのスケーラブル符号化データ(BL)1121を受け取る。また、端末装置1102は、ネットワーク1112を介した通信を行う通信機能をさらに有し、このネットワーク1112を介して伝送されるエンハンスメントレイヤのスケーラブル符号化データ(EL)1122を受け取る。
  端末装置1102は、例えばユーザ指示等に応じて、地上波放送1111を介して取得したベースレイヤのスケーラブル符号化データ(BL)1121を、復号してベースレイヤの画像を得たり、記憶したり、他の装置に伝送したりする。
  また、端末装置1102は、例えばユーザ指示等に応じて、地上波放送1111を介して取得したベースレイヤのスケーラブル符号化データ(BL)1121と、ネットワーク1112を介して取得したエンハンスメントレイヤのスケーラブル符号化データ(EL)1122とを合成して、スケーラブル符号化データ(BL+EL)を得たり、それを復号してエンハンスメントレイヤの画像を得たり、記憶したり、他の装置に伝送したりする。
  以上のように、スケーラブル符号化データは、例えばレイヤ毎に異なる通信媒体を介して伝送させることができる。したがって、負荷を分散させることができ、遅延やオーバフローの発生を抑制することができる。
  また、状況に応じて、伝送に使用する通信媒体を、レイヤ毎に選択することができるようにしてもよい。例えば、データ量が比較的多いベースレイヤのスケーラブル符号化データ(BL)1121を帯域幅の広い通信媒体を介して伝送させ、データ量が比較的少ないエンハンスメントレイヤのスケーラブル符号化データ(EL)1122を帯域幅の狭い通信媒体を介して伝送させるようにしてもよい。また、例えば、エンハンスメントレイヤのスケーラブル符号化データ(EL)1122を伝送する通信媒体を、ネットワーク1112とするか、地上波放送1111とするかを、ネットワーク1112の利用可能帯域幅に応じて切り替えるようにしてもよい。もちろん、任意のレイヤのデータについて同様である。
  このように制御することにより、データ伝送における負荷の増大を、より抑制することができる。
  もちろん、レイヤ数は任意であり、伝送に利用する通信媒体の数も任意である。また、データ配信先となる端末装置1102の数も任意である。さらに、以上においては、放送局1101からの放送を例に説明したが、利用例はこれに限定されない。データ伝送システム1100は、スケーラブル符号化された符号化データを、レイヤを単位として複数に分割し、複数の回線を介して伝送するシステムであれば、任意のシステムに適用することができる。
  そして、以上のような図33のようなデータ伝送システム1100においても、図1乃至図23を参照して上述した階層符号化・階層復号への適用と同様に本技術を適用することにより、図1乃至図23を参照して上述した効果と同様の効果を得ることができる。
    <第3のシステム>
  また、スケーラブル符号化は、例えば、図34に示される例のように、符号化データの記憶に利用される。
  図34に示される撮像システム1200において、撮像装置1201は、被写体1211を撮像して得られた画像データをスケーラブル符号化し、スケーラブル符号化データ(BL+EL)1221として、スケーラブル符号化データ記憶装置1202に供給する。
  スケーラブル符号化データ記憶装置1202は、撮像装置1201から供給されるスケーラブル符号化データ(BL+EL)1221を、状況に応じた品質で記憶する。例えば、通常時の場合、スケーラブル符号化データ記憶装置1202は、スケーラブル符号化データ(BL+EL)1221からベースレイヤのデータを抽出し、低品質でデータ量の少ないベースレイヤのスケーラブル符号化データ(BL)1222として記憶する。これに対して、例えば、注目時の場合、スケーラブル符号化データ記憶装置1202は、高品質でデータ量の多いスケーラブル符号化データ(BL+EL)1221のまま記憶する。
  このようにすることにより、スケーラブル符号化データ記憶装置1202は、必要な場合のみ、画像を高画質に保存することができるので、画質劣化による画像の価値の低減を抑制しながら、データ量の増大を抑制することができ、記憶領域の利用効率を向上させることができる。
  例えば、撮像装置1201が監視カメラであるとする。撮像画像に監視対象(例えば侵入者)が写っていない場合(通常時の場合)、撮像画像の内容は重要でない可能性が高いので、データ量の低減が優先され、その画像データ(スケーラブル符号化データ)は、低品質に記憶される。これに対して、撮像画像に監視対象が被写体1211として写っている場合(注目時の場合)、その撮像画像の内容は重要である可能性が高いので、画質が優先され、その画像データ(スケーラブル符号化データ)は、高品質に記憶される。
  なお、通常時であるか注目時であるかは、例えば、スケーラブル符号化データ記憶装置1202が、画像を解析することにより判定しても良い。また、撮像装置1201が判定し、その判定結果をスケーラブル符号化データ記憶装置1202に伝送するようにしてもよい。
  なお、通常時であるか注目時であるかの判定基準は任意であり、判定基準とする画像の内容は任意である。もちろん、画像の内容以外の条件を判定基準とすることもできる。例えば、収録した音声の大きさや波形等に応じて切り替えるようにしてもよいし、所定の時間毎に切り替えるようにしてもよいし、ユーザ指示等の外部からの指示によって切り替えるようにしてもよい。
  また、以上においては、通常時と注目時の2つの状態を切り替える例を説明したが、状態の数は任意であり、例えば、通常時、やや注目時、注目時、非常に注目時等のように、3つ以上の状態を切り替えるようにしてもよい。ただし、この切り替える状態の上限数は、スケーラブル符号化データのレイヤ数に依存する。
  また、撮像装置1201が、スケーラブル符号化のレイヤ数を、状態に応じて決定するようにしてもよい。例えば、通常時の場合、撮像装置1201が、低品質でデータ量の少ないベースレイヤのスケーラブル符号化データ(BL)1222を生成し、スケーラブル符号化データ記憶装置1202に供給するようにしてもよい。また、例えば、注目時の場合、撮像装置1201が、高品質でデータ量の多いベースレイヤのスケーラブル符号化データ(BL+EL)1221を生成し、スケーラブル符号化データ記憶装置1202に供給するようにしてもよい。
  以上においては、監視カメラを例に説明したが、この撮像システム1200の用途は任意であり、監視カメラに限定されない。
  そして、図34のような撮像システム1200においても、図1乃至図23を参照して上述した階層符号化・階層復号への適用と同様に本技術を適用することにより、図1乃至図23を参照して上述した効果と同様の効果を得ることができる。
  なお、本技術は、予め用意された解像度等が互いに異なる複数の符号化データの中から適切なものをセグメント単位で選択して使用する、例えばMPEG DASH等のようなHTTPストリーミングにも適用することができる。つまり、このような複数の符号化データ間で、符号化や復号に関する情報を共有することもできる。
  また、本明細書では、各種情報が、符号化ストリームに多重化されて、符号化側から復号側へ伝送される例について説明した。しかしながら、これら情報を伝送する手法はかかる例に限定されない。例えば、これら情報は、符号化ビットストリームに多重化されることなく、符号化ビットストリームと関連付けられた別個のデータとして伝送され又は記録されてもよい。ここで、「関連付ける」という用語は、ビットストリームに含まれる画像(スライス若しくはブロックなど、画像の一部であってもよい)と当該画像に対応する情報とを復号時にリンクさせ得るようにすることを意味する。即ち、情報は、画像(又はビットストリーム)とは別の伝送路上で伝送されてもよい。また、情報は、画像(又はビットストリーム)とは別の記録媒体(又は同一の記録媒体の別の記録エリア)に記録されてもよい。さらに、情報と画像(又はビットストリーム)とは、例えば、複数フレーム、1フレーム、又はフレーム内の一部分などの任意の単位で互いに関連付けられてよい。
  なお、本技術は以下のような構成も取ることができる。
  (1)  複数レイヤよりなる画像データのカレントレイヤと異なる他のレイヤにおけるフレーム間予測の予測誤差である残差データに対して、精度を落とすことにより情報量を低減する処理を行う情報量低減部と、
  前記情報量低減部により情報量が低減された前記残差データを記憶する記憶部と、
  前記記憶部から前記残差データを読み出し、読み出した前記残差データを用いて前記画像データの前記カレントレイヤの符号化を行う符号化部と
  を備える画像符号化装置。
  (2)  前記情報量低減部は、前記残差データを量子化する
  (1)、(3)乃至(9)のいずれかに記載の画像符号化装置。
  (3)  前記情報量低減部は、前記残差データに対して、ビット深度を減らす方向にビットシフトすることにより前記残差データを量子化する
  (1)、(2)、(4)乃至(9)のいずれかに記載の画像符号化装置。
  (4)  前記情報量低減部は、前記残差データの下位ビットを四捨五入してから、前記ビットシフトを行う
  (1)乃至(3)、(5)乃至(9)のいずれかに記載の画像符号化装置。
  (5)  前記符号化部により生成された前記画像データの符号化データと、前記ビットシフトのシフト量を示す情報とを伝送する伝送部をさらに備える
  (1)乃至(4)、(6)乃至(9)のいずれかに記載の画像符号化装置。
  (6)  前記伝送部は、前記ビットシフトのシフト量を示す情報を、輝度信号と色差信号のそれぞれについて伝送する
  (1)乃至(5)、(7)乃至(9)のいずれかに記載の画像符号化装置。
  (7)  前記伝送部は、前記他のレイヤの前記残差データを用いて符号化を行うかを示す情報を伝送し、前記情報が前記他のレイヤの前記残差データを用いて符号化を行うことを示す場合のみ、前記ビットシフトのシフト量を示す情報をさらに伝送する
  (1)乃至(6)、(8)、(9)のいずれかに記載の画像符号化装置。
  (8)  前記画像データのビット深度に応じて、前記ビットシフトのシフト量を設定する設定部をさらに備える
  (1)乃至(7)、(9)のいずれかに記載の画像符号化装置。
  (9)  前記残差データを逆量子化する逆量子化部と、
  前記カレントレイヤと前記他のレイヤとの間の解像度比に応じて、前記残差データをアップサンプルするアップサンプル部とをさらに備え、
  前記逆量子化部および前記アップサンプル部は、前記記憶部から読み出された前記残差データを、逆量子化してからアップサンプリングするか、若しくは、アップサンプリングしてから逆量子化し、
  前記符号化部は、前記逆量子化および前記アップサンプリングの両方が行われた前記残差データを用いて予測処理を行い、前記画像データの前記カレントレイヤの符号化を行う
  (1)乃至(8)のいずれかに記載の画像符号化装置。
  (10)  複数レイヤよりなる画像データのカレントレイヤと異なる他のレイヤにおけるフレーム間予測の予測誤差である残差データに対して、精度を落とすことにより情報量を低減し、
  情報量が低減された前記残差データを記憶し、
  記憶した前記残差データを読み出し、読み出した前記残差データを用いて前記画像データの前記カレントレイヤの符号化を行う
  画像符号化方法。
  (11)  複数レイヤよりなる画像データのカレントレイヤと異なる他のレイヤにおけるフレーム間予測の予測誤差である残差データに対して、精度を落とすことにより情報量を低減する処理を行う情報量低減部と、
  前記情報量低減部により情報量が低減された前記残差データを記憶する記憶部と、
  前記記憶部から前記残差データを読み出し、読み出した前記残差データを用いて前記画像データの符号化データの前記カレントレイヤの復号を行う復号部と
  を備える画像復号装置。
  (12)  前記情報量低減部は、前記残差データを量子化する
  (11)、(13)乃至(19)のいずれかに記載の画像復号装置。
  (13)  前記情報量低減部は、前記残差データに対して、ビット深度を減らす方向にビットシフトすることにより前記残差データを量子化する
  (11)、(12)、(14)乃至(19)のいずれかに記載の画像復号装置。
  (14)  前記情報量低減部は、前記残差データの下位ビットを四捨五入してから、前記ビットシフトを行う
  (11)乃至(13)、(15)乃至(19)のいずれかに記載の画像復号装置。
  (15)  前記符号化データと、前記ビットシフトのシフト量を示す情報とを受け取る受け取り部をさらに備え、
  前記情報量低減部は、前記受け取り部により受け取られた前記情報に示されるシフト量だけ、前記残差データをビットシフトし、
  前記復号部は、前記記憶部から前記残差データを読み出し、読み出した前記残差データを用いて、前記受け取り部により受け取られた前記符号化データの前記カレントレイヤの復号を行う
  (11)乃至(14)、(16)乃至(19)のいずれかに記載の画像復号装置。
  (16)  前記受け取り部は、輝度信号と色差信号のそれぞれについての前記ビットシフトのシフト量を示す情報を受け取る
  (11)乃至(15)、(17)乃至(19)のいずれかに記載の画像復号装置。
  (17)  前記受け取り部は、前記他のレイヤの前記残差データを用いて符号化を行うかを示す情報を受け取り、受け取られた前記情報が前記他のレイヤの前記残差データを用いて符号化を行うことを示す場合のみ、前記ビットシフトのシフト量を示す情報をさらに受け取る
  (11)乃至(16)、(18)、(19)のいずれかに記載の画像復号装置。
  (18)  前記符号化部は、前記残差データを用いて予測処理を行い、予測画像を生成し、生成した前記予測画像を用いて前記画像データの前記カレントレイヤの符号化を行う
  (11)乃至(17)、(19)のいずれかに記載の画像復号装置。
  (19)  前記残差データを逆量子化する逆量子化部と、
  前記カレントレイヤと前記他のレイヤとの間の解像度比に応じて、前記残差データをアップサンプルするアップサンプル部とをさらに備え、
  前記逆量子化部および前記アップサンプル部は、前記記憶部から読み出された前記残差データを、逆量子化してからアップサンプリングするか、若しくは、アップサンプリングしてから逆量子化し、
  前記符号化部は、前記逆量子化および前記アップサンプリングの両方が行われた前記残差データを用いて、前記画像データの前記カレントレイヤの符号化を行う
  (11)乃至(18)のいずれかに記載の画像復号装置。
  (20)  複数レイヤよりなる画像データのカレントレイヤと異なる他のレイヤにおけるフレーム間予測の予測誤差である残差データに対して、精度を落とすことにより情報量を低減する処理を行い、
  情報量が低減された前記残差データを記憶し、
  記憶された前記残差データを読み出し、読み出した前記残差データを用いて前記画像データの符号化データの前記カレントレイヤの復号を行う
  画像復号方法。
  100  画像符号化装置,  101  ベースレイヤ画像符号化部,  102  エンハンスメントレイヤ画像符号化部,  103  多重化部,  148  残差信号取得部,  171  設定部,  172  残差信号量子化部,  173  ベースレイヤ残差信号バッファ,  174  残差信号逆量子化部,  175  アップサンプル部,  200  画像復号装置,  201  逆多重化部,  202  ベースレイヤ画像復号部,  203  エンハンスメントレイヤ画像復号部,  244  残差信号取得部,  271  制御情報取得部,  272  残差信号量子化部,  273  ベースレイヤ残差信号バッファ,  274  残差信号逆量子化部,  275  アップサンプル部

Claims (20)

  1.   複数レイヤよりなる画像データのカレントレイヤと異なる他のレイヤにおけるフレーム間予測の予測誤差である残差データに対して、精度を落とすことにより情報量を低減する処理を行う情報量低減部と、
      前記情報量低減部により情報量が低減された前記残差データを記憶する記憶部と、
      前記記憶部から前記残差データを読み出し、読み出した前記残差データを用いて前記画像データの前記カレントレイヤの符号化を行う符号化部と
      を備える画像符号化装置。
  2.   前記情報量低減部は、前記残差データを量子化する
      請求項1に記載の画像符号化装置。
  3.   前記情報量低減部は、前記残差データに対して、ビット深度を減らす方向にビットシフトすることにより前記残差データを量子化する
      請求項2に記載の画像符号化装置。
  4.   前記情報量低減部は、前記残差データの下位ビットを四捨五入してから、前記ビットシフトを行う
      請求項3に記載の画像符号化装置。
  5.   前記符号化部により生成された前記画像データの符号化データと、前記ビットシフトのシフト量を示す情報とを伝送する伝送部をさらに備える
      請求項3に記載の画像符号化装置。
  6.   前記伝送部は、前記ビットシフトのシフト量を示す情報を、輝度信号と色差信号のそれぞれについて伝送する
      請求項5に記載の画像符号化装置。
  7.   前記伝送部は、前記他のレイヤの前記残差データを用いて符号化を行うかを示す情報を伝送し、前記情報が前記他のレイヤの前記残差データを用いて符号化を行うことを示す場合のみ、前記ビットシフトのシフト量を示す情報をさらに伝送する
      請求項5に記載の画像符号化装置。
  8.   前記画像データのビット深度に応じて、前記ビットシフトのシフト量を設定する設定部をさらに備える
      請求項3に記載の画像符号化装置。
  9.   前記残差データを逆量子化する逆量子化部と、
      前記カレントレイヤと前記他のレイヤとの間の解像度比に応じて、前記残差データをアップサンプルするアップサンプル部とをさらに備え、
      前記逆量子化部および前記アップサンプル部は、前記記憶部から読み出された前記残差データを、逆量子化してからアップサンプリングするか、若しくは、アップサンプリングしてから逆量子化し、
      前記符号化部は、前記逆量子化および前記アップサンプリングの両方が行われた前記残差データを用いて予測処理を行い、前記画像データの前記カレントレイヤの符号化を行う
      請求項1に記載の画像符号化装置。
  10.   複数レイヤよりなる画像データのカレントレイヤと異なる他のレイヤにおけるフレーム間予測の予測誤差である残差データに対して、精度を落とすことにより情報量を低減し、
      情報量が低減された前記残差データを記憶し、
      記憶した前記残差データを読み出し、読み出した前記残差データを用いて前記画像データの前記カレントレイヤの符号化を行う
      画像符号化方法。
  11.   複数レイヤよりなる画像データのカレントレイヤと異なる他のレイヤにおけるフレーム間予測の予測誤差である残差データに対して、精度を落とすことにより情報量を低減する処理を行う情報量低減部と、
      前記情報量低減部により情報量が低減された前記残差データを記憶する記憶部と、
      前記記憶部から前記残差データを読み出し、読み出した前記残差データを用いて前記画像データの符号化データの前記カレントレイヤの復号を行う復号部と
      を備える画像復号装置。
  12.   前記情報量低減部は、前記残差データを量子化する
      請求項11に記載の画像復号装置。
  13.   前記情報量低減部は、前記残差データに対して、ビット深度を減らす方向にビットシフトすることにより前記残差データを量子化する
      請求項12に記載の画像復号装置。
  14.   前記情報量低減部は、前記残差データの下位ビットを四捨五入してから、前記ビットシフトを行う
      請求項13に記載の画像復号装置。
  15.   前記符号化データと、前記ビットシフトのシフト量を示す情報とを受け取る受け取り部をさらに備え、
      前記情報量低減部は、前記受け取り部により受け取られた前記情報に示されるシフト量だけ、前記残差データをビットシフトし、
      前記復号部は、前記記憶部から前記残差データを読み出し、読み出した前記残差データを用いて、前記受け取り部により受け取られた前記符号化データの前記カレントレイヤの復号を行う
      請求項13に記載の画像復号装置。
  16.   前記受け取り部は、輝度信号と色差信号のそれぞれについての前記ビットシフトのシフト量を示す情報を受け取る
      請求項15に記載の画像復号装置。
  17.   前記受け取り部は、前記他のレイヤの前記残差データを用いて符号化を行うかを示す情報を受け取り、受け取られた前記情報が前記他のレイヤの前記残差データを用いて符号化を行うことを示す場合のみ、前記ビットシフトのシフト量を示す情報をさらに受け取る
      請求項15に記載の画像復号装置。
  18.   前記符号化部は、前記残差データを用いて予測処理を行い、予測画像を生成し、生成した前記予測画像を用いて前記画像データの前記カレントレイヤの符号化を行う
      請求項11に記載の画像復号装置。
  19.   前記残差データを逆量子化する逆量子化部と、
      前記カレントレイヤと前記他のレイヤとの間の解像度比に応じて、前記残差データをアップサンプルするアップサンプル部とをさらに備え、
      前記逆量子化部および前記アップサンプル部は、前記記憶部から読み出された前記残差データを、逆量子化してからアップサンプリングするか、若しくは、アップサンプリングしてから逆量子化し、
      前記符号化部は、前記逆量子化および前記アップサンプリングの両方が行われた前記残差データを用いて、前記画像データの前記カレントレイヤの符号化を行う
      請求項11に記載の画像復号装置。
  20.   複数レイヤよりなる画像データのカレントレイヤと異なる他のレイヤにおけるフレーム間予測の予測誤差である残差データに対して、精度を落とすことにより情報量を低減する処理を行い、
      情報量が低減された前記残差データを記憶し、
      記憶された前記残差データを読み出し、読み出した前記残差データを用いて前記画像データの符号化データの前記カレントレイヤの復号を行う
      画像復号方法。
PCT/JP2014/056830 2013-03-29 2014-03-14 画像符号化装置および方法、並びに、画像復号装置および方法 WO2014156707A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2013074758 2013-03-29
JP2013-074758 2013-03-29

Publications (1)

Publication Number Publication Date
WO2014156707A1 true WO2014156707A1 (ja) 2014-10-02

Family

ID=51623689

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2014/056830 WO2014156707A1 (ja) 2013-03-29 2014-03-14 画像符号化装置および方法、並びに、画像復号装置および方法

Country Status (1)

Country Link
WO (1) WO2014156707A1 (ja)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0955942A (ja) * 1995-08-11 1997-02-25 Sony Corp 画像信号処理装置および方法
JP2006081152A (ja) * 2004-08-12 2006-03-23 Seiko Epson Corp デジタル画像符号化装置、デジタル画像符号化プログラム、デジタル画像符号化方法、及びデジタル画像復号化装置、デジタル画像復号化プログラム、並びにデジタル画像復号化方法
JP2007142670A (ja) * 2005-11-16 2007-06-07 Olympus Corp 画像処理システム、画像処理プログラム
WO2007116551A1 (ja) * 2006-03-30 2007-10-18 Kabushiki Kaisha Toshiba 画像符号化装置及び画像符号化方法並びに画像復号化装置及び画像復号化方法
JP2010531584A (ja) * 2007-06-27 2010-09-24 トムソン ライセンシング ビット深さスケーラビリティのために向上層残差予測を使ってビデオ・データをエンコードおよび/またはデコードする方法および装置
JP2010531585A (ja) * 2007-06-29 2010-09-24 フラウンホファー・ゲゼルシャフト・ツール・フォルデルング・デル・アンゲバンテン・フォルシュング・アインゲトラーゲネル・フェライン ビデオエンコーダ、ビデオデコーダ、エンコードするための方法、デコードするための方法、コンピュータプログラム、およびスケーラブルなビットストリーム
WO2012147350A1 (ja) * 2011-04-28 2012-11-01 パナソニック株式会社 高画質化に関わる記録媒体、再生装置、記録装置、符号化方法、復号化方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0955942A (ja) * 1995-08-11 1997-02-25 Sony Corp 画像信号処理装置および方法
JP2006081152A (ja) * 2004-08-12 2006-03-23 Seiko Epson Corp デジタル画像符号化装置、デジタル画像符号化プログラム、デジタル画像符号化方法、及びデジタル画像復号化装置、デジタル画像復号化プログラム、並びにデジタル画像復号化方法
JP2007142670A (ja) * 2005-11-16 2007-06-07 Olympus Corp 画像処理システム、画像処理プログラム
WO2007116551A1 (ja) * 2006-03-30 2007-10-18 Kabushiki Kaisha Toshiba 画像符号化装置及び画像符号化方法並びに画像復号化装置及び画像復号化方法
JP2012191642A (ja) * 2006-03-30 2012-10-04 Toshiba Corp 画像復号化装置及び方法
JP2010531584A (ja) * 2007-06-27 2010-09-24 トムソン ライセンシング ビット深さスケーラビリティのために向上層残差予測を使ってビデオ・データをエンコードおよび/またはデコードする方法および装置
JP2010531585A (ja) * 2007-06-29 2010-09-24 フラウンホファー・ゲゼルシャフト・ツール・フォルデルング・デル・アンゲバンテン・フォルシュング・アインゲトラーゲネル・フェライン ビデオエンコーダ、ビデオデコーダ、エンコードするための方法、デコードするための方法、コンピュータプログラム、およびスケーラブルなビットストリーム
WO2012147350A1 (ja) * 2011-04-28 2012-11-01 パナソニック株式会社 高画質化に関わる記録媒体、再生装置、記録装置、符号化方法、復号化方法

Similar Documents

Publication Publication Date Title
JP6635184B2 (ja) 画像処理装置および方法
US9794563B2 (en) Image processing apparatus and method
JP6358475B2 (ja) 画像復号装置および方法、並びに、画像符号化装置および方法
JP6287035B2 (ja) 復号装置および復号方法
WO2013137047A1 (ja) 画像処理装置および方法
WO2014050731A1 (ja) 画像処理装置および方法
WO2015098561A1 (ja) 復号装置および復号方法、並びに、符号化装置および符号化方法
WO2013108688A1 (ja) 画像処理装置および方法
US9930353B2 (en) Image decoding device and method
US20160005155A1 (en) Image processing device and image processing method
WO2014103764A1 (ja) 画像処理装置および方法
WO2014141899A1 (ja) 画像処理装置および方法
WO2014002900A1 (ja) 画像処理装置および画像処理方法
WO2015098563A1 (ja) 画像符号化装置および方法、並びに画像復号装置および方法
WO2014162916A1 (ja) 画像符号化装置および方法、並びに、画像復号装置および方法
WO2014156707A1 (ja) 画像符号化装置および方法、並びに、画像復号装置および方法
WO2014141964A1 (ja) 画像処理装置および方法
WO2014156705A1 (ja) 復号装置および復号方法、並びに、符号化装置および符号化方法

Legal Events

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

Ref document number: 14774707

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP