[go: up one dir, main page]

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

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

Info

Publication number
WO2015005132A1
WO2015005132A1 PCT/JP2014/067077 JP2014067077W WO2015005132A1 WO 2015005132 A1 WO2015005132 A1 WO 2015005132A1 JP 2014067077 W JP2014067077 W JP 2014067077W WO 2015005132 A1 WO2015005132 A1 WO 2015005132A1
Authority
WO
WIPO (PCT)
Prior art keywords
unit
image
code number
prediction
format
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/JP2014/067077
Other languages
English (en)
French (fr)
Inventor
佐藤 数史
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Publication of WO2015005132A1 publication Critical patent/WO2015005132A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

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/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/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • 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

Definitions

  • the present disclosure relates to an image encoding apparatus and method, and an image decoding apparatus and method, and in particular, can improve the encoding efficiency of intra prediction when the color difference signal format in an image is 4: 2: 2.
  • the present invention relates to an image encoding apparatus and method, and an image decoding apparatus and method.
  • Non-Patent Document 1 High Efficiency Video Coding
  • JCTVC Joint Collaboration Team-Video Coding
  • HEVC High Efficiency Video Coding
  • MostProbableMode three Most Probable Modes (MostProbableMode) are used as an intra prediction mode encoding method.
  • 0 Planar prediction
  • 1 Horizontal prediction
  • 2 vertical prediction
  • 3 DC prediction
  • 4 application of luminance signal intra prediction mode to color difference signals, etc. Is assigned a mode number. A smaller code number is assigned to a smaller mode number.
  • the input signal was limited to 8 bits or 10 bits and 4: 2: 0 signals.
  • Non-Patent Document 2 Standardization for supporting color difference signal formats such as 4: 2: 2, 4: 4: 4, RGB, and larger bit depths based on the method proposed in Non-Patent Document 2 is HEVC Version2. It is promoted as.
  • the PU of the color difference signal has a vertically long rectangular shape.
  • the distance between the prediction source pixel value and the prediction destination pixel value in the Horizontal prediction and the distance between the prediction source pixel value and the prediction destination pixel value in the Vertical prediction are farther in the case of Vertical prediction, and the prediction efficiency is low.
  • the present disclosure has been made in view of such a situation, and can improve the encoding efficiency of intra prediction when the format of the color difference signal in the image is 4: 2: 2.
  • An image encoding device includes a code number assigning unit that switches code number assignment in an intra prediction mode according to whether or not a format of a color difference signal in an image is 4: 2: 2, and the code Based on the code number allocation switched by the number allocation unit, an intra prediction unit that generates a prediction image of the prediction block of the chrominance signal, a coding using the prediction image generated by the intra prediction unit, and a bitstream And an encoding unit to be generated.
  • the code number assigning unit can switch the code number assignment in the intra prediction mode according to the value of chroma_format_idc in SPS (Sequence Parameter Set).
  • the encoding unit can perform Golomb encoding on the code number of the intra prediction mode corresponding to the prediction image generated by the intra prediction unit.
  • an image encoding device switches and switches code number assignment in an intra prediction mode depending on whether the format of a color difference signal of an image is 4: 2: 2. Based on the assigned code number assignment, a prediction image of the prediction block of the color difference signal is generated and encoded using the generated prediction image to generate a bitstream.
  • An image decoding device includes a decoding unit that decodes a bitstream to generate an image, and a format of a color difference signal of an input image corresponding to the image generated by the decoding unit is 4: 2: A code number allocating unit that switches the code number allocation in the intra prediction mode according to whether the code number is allocated to the intra prediction mode, or the code number allocation switched by the code number allocating unit. And an intra prediction unit for generating.
  • the code number assigning unit can switch the code number assignment in the intra prediction mode according to the value of chroma_format_idc in SPS (Sequence Parameter Set).
  • the decoding unit decodes a code number of an intra prediction mode that has been Golomb encoded, and the intra prediction unit is switched between an intra prediction mode of a code number decoded by the decoding unit and the code number assigning unit. Based on the assigned code number, a prediction image of the prediction block of the color difference signal can be generated.
  • an image decoding device generates an image by decoding a bitstream, and a format of a color difference signal of an input image corresponding to the generated image is 4: 2: 2. Depending on whether or not there is, the code number assignment in the intra prediction mode is switched, and a prediction image of the prediction block of the color difference signal is generated based on the switched code number assignment.
  • the code number assignment of the intra prediction mode is switched according to whether the format of the color difference signal of the image is 4: 2: 2, and the prediction image of the prediction block of the color difference signal is An optimal intra prediction mode is determined from the intra prediction modes based on the code number assignment generated and switched by the intra prediction mode, and encoded using the generated prediction image to generate a bitstream.
  • an image is generated by decoding a bitstream, and depending on whether the format of the color difference signal of the input image corresponding to the generated image is 4: 2: 2.
  • the code number assignment in the intra prediction mode is switched. Based on the switched code number assignment, a prediction image of the prediction block of the color difference signal is generated.
  • image encoding device and image decoding device may be independent image processing devices, or may be internal blocks constituting one image encoding device or image decoding device.
  • an image can be encoded.
  • an image can be decoded.
  • FIG. 20 is a block diagram illustrating a main configuration example of a computer.
  • AVC Advanced Video Coding
  • a hierarchical structure is defined by macroblocks and sub-macroblocks.
  • 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.
  • a coding unit (Coding Unit)) is defined.
  • CU is also called Coding Tree Block (CTB) and is a partial area of a picture unit image that plays the same role as a macroblock in the AVC method.
  • CTB Coding Tree Block
  • the latter is fixed to a size of 16 ⁇ 16 pixels, whereas the size of the former is not fixed, and is specified in the image compression information in each sequence.
  • 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 macro block in the AVC method
  • the CU also includes a block (sub-block) in the AVC method.
  • “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 the entire set of candidate modes for encoding the block or macroblock
  • D is the difference energy between the decoded image and the input image when encoded in the prediction mode.
  • 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.
  • AVC there are intra 4 ⁇ 4 prediction, intra 8 ⁇ 8 prediction, and intra 16 ⁇ 16 prediction
  • HEVC 4 ⁇ 4 to 64 ⁇ 64 pixel blocks are shown in FIG. Angular prediction like this is applied.
  • intra prediction is performed by 8 directions + direct current (DC) prediction.
  • DC direct current
  • HEVC intra prediction is performed by 32 directions + direct current (DC) prediction. In HEVC, this improves the prediction accuracy.
  • planar prediction as shown in FIG. 3 is defined.
  • planar prediction process prediction pixels included in the encoded block are generated from the already encoded adjacent pixels by bi-linear interpolation. Planar prediction improves, for example, the coding efficiency of an area with gradation.
  • the third candidate mode is determined by a combination of the first (intra prediction mode in Abobe) and the second (intra prediction mode in Left). Also, when Abobe and Left are in the same mode, encoding efficiency is improved by selecting different modes as candidates.
  • the index number is transmitted in the output image compression information. If any of the prediction mode and the most probable mode of the block is not the same, the mode information of the prediction block is transmitted with a fixed length of 5 bits.
  • MDIS Mode Dependent IntramooSmoothing
  • this filter processing is determined according to the block size and the prediction mode. That is, this filter process is not applied when the block size is 4 ⁇ 4. When the block size is 8 ⁇ 8, this filtering process is applied only to the prediction mode in the 45 degree direction.
  • this filter processing is applied to the three directions other than the horizontal direction and the three directions close to the vertical direction.
  • this filter processing is applied to modes other than Horizontal and Vertical.
  • Boundry Value Smoothing processing as shown in FIG. 6 is defined in HEVC. That is, [1 3] / 4 filter processing is performed as Boundry Value Smoothing processing on the block boundary and its adjacent pixels. This process is intended to reduce block distortion when the prediction mode is DC, Horizontal, or Vertical.
  • Boundary Value Smoothing processing is performed on both Top and Left adjacent pixels.
  • BoundryBoundValue Smoothing processing is performed on the adjacent pixels of Top.
  • Boundry Value Smoothing processing is performed on adjacent pixels of Left.
  • the input signal was limited to 8 bits or 10 bits and 4: 2: 0 signals.
  • Non-Patent Document 2 Standardization for supporting color difference signal formats such as 4: 2: 2, 4: 4: 4, RGB, and larger bit depths based on the method proposed in Non-Patent Document 2 is HEVC Version2. It is promoted as.
  • the horizontal prediction is a horizontal prediction method as shown in FIG.
  • Vertical prediction is a vertical prediction method as shown in FIG. 7B.
  • an intra prediction mode code number corresponding to 4: 2: 2 is assigned to the input image format.
  • Japanese Unexamined Patent Application Publication No. 2013-012995 proposes to control the encoding method of information related to intra prediction according to the shape of a prediction block.
  • this proposal does not describe anything about the case where the input image format is 4: 2: 2, which is a feature of the present technology.
  • FIGS. 8 and 9 are diagrams illustrating examples of syntax of SPS (Sequence Parameter Set).
  • the color difference signal format of the input image is determined based on chroma_format_idc (hatched portion) in the SPS.
  • chroma_format_idc is information indicating the color difference signal format of the input image.
  • the code number assignment is performed so that the horizontal prediction has a smaller code number than the vertical prediction.
  • DC prediction is considered to realize the encoding efficiency between Horizontal prediction and Vertical prediction shown in A of FIG. 7 and B of FIG. 7 when the input signal is 4: 2: 2, As in the example by the technique, the DC prediction is encoded with a smaller code number than the Vertical prediction.
  • 0 Planar prediction
  • 1 Horizontal prediction
  • 2 DC prediction
  • 3 Vertical prediction
  • 4 Application of luminance signal intra prediction mode to color difference signals, etc.
  • the code numbers are switched so that a smaller code number is assigned.
  • the bit string corresponding to the code number is assigned based on the Exp-Golomb code shown in FIG.
  • bit number 1 is assigned to code number 0.
  • a bit string 010 is assigned to the code number 1.
  • Bit number 011 is assigned to code number 2.
  • Bit number 00100 is assigned to code number 3.
  • Bit number 00101 is assigned to code number 4.
  • bit string 0110 is assigned to the code number 5.
  • Bit number 00111 is assigned to code number 6.
  • Bit number 0001000 is assigned to code number 7.
  • Bit number 0001001 is assigned to code number 8.
  • Bit number 0001010 is assigned to code number 9.
  • bit sequence for horizontal prediction and DC prediction is shorter than the bit sequence for Vertical prediction, which is assumed to have low prediction efficiency. Encoding efficiency can be improved.
  • Golomb code used for encoding is not limited to the Exp-Golomb code shown in FIG. Other Golomb codes may be used.
  • FIG. 12 is a block diagram illustrating a main configuration example of an image encoding device.
  • the motion vector information is also referred to as motion information as appropriate.
  • the image encoding device 101 shown in FIG. 12 is an image information processing device that encodes image data.
  • the image encoding device 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, a storage buffer 117, An inverse quantization unit 118 and an inverse orthogonal transform unit 119 are included.
  • the image coding apparatus 101 includes a calculation unit 120, a deblocking filter 121, a frame memory 122, a selection unit 123, an intra prediction unit 124, a motion prediction / compensation unit 125, a predicted image selection unit 126, and a rate control unit 127.
  • the image encoding device 101 includes an adaptive offset filter 128 between the deblocking filter 121 and the frame memory 122. Furthermore, the image encoding device 101 includes a color format determination unit 131 and a code number assignment unit 132.
  • the A / D conversion unit 111 performs A / D conversion on the input image data, 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.
  • the screen rearrangement buffer 112 also supplies the image in which the frame order is rearranged to the intra prediction unit 124 and the motion prediction / compensation unit 125.
  • the calculation unit 113 subtracts the predicted image supplied from the intra prediction unit 124 or the motion prediction / compensation unit 125 via the predicted image selection unit 126 from the image read from the screen rearrangement buffer 112, and the difference information Is output to the orthogonal transform unit 114. For example, in the case of an image on which intra coding is performed, 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. For example, in the case of an image on which inter coding is performed, the calculation unit 113 subtracts the prediction image supplied from the motion prediction / compensation 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 intra prediction mode from the intra prediction unit 124, and acquires information indicating the inter prediction mode, difference motion vector information, and the like from the motion prediction / compensation unit 125. Furthermore, the lossless encoding unit 116 appropriately generates a NAL unit including a sequence parameter set (SPS), a picture parameter set (PPS), and the like. Note that the lossless encoding unit 116 supplies information about chroma_format_idc, which is information indicating the color difference signal format of the input image, to the color format determination unit 131 in the generated SPS.
  • 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 code number for the intra prediction mode is Gromb encoded as described above with reference to FIG.
  • 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 supplied from the lossless encoding unit 116.
  • the accumulation buffer 117 outputs the held encoded data to, for example, a recording device (recording medium) (not shown) or a transmission path (not shown) at a predetermined timing 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 uses the prediction image selection unit 126 to perform prediction from the intra prediction unit 124 or the motion prediction / compensation unit 125 on the restored difference information, which is the inverse orthogonal transform result supplied from the inverse orthogonal transform unit 119.
  • the images are added to obtain a locally decoded image (decoded image).
  • the decoded image is supplied to the deblocking filter 121 or the frame memory 122.
  • the deblocking filter 121 removes block distortion of the reconstructed image by performing deblocking filter processing on the reconstructed image supplied from the calculation unit 120.
  • the deblocking filter 121 supplies the filtered image to the adaptive offset filter 128.
  • the adaptive offset filter 128 is an adaptive offset filter (SAO: Sample adaptive offset) that mainly removes ringing from the deblocking filter processing result (reconstructed image from which block distortion has been removed) from the deblocking filter 121. Process.
  • SAO Sample adaptive offset
  • the adaptive offset filter 128 determines the type of adaptive offset filter processing for each LCU (Largest Coding Unit) which is the maximum coding unit, and obtains an offset used in the adaptive offset filter processing.
  • the adaptive offset filter 128 performs the determined type of adaptive offset filter processing on the image after the adaptive deblocking filter processing, using the obtained offset. Then, the adaptive offset filter 128 supplies the image after the adaptive offset filter processing (hereinafter referred to as a decoded image) to the frame memory 122.
  • the deblocking filter 121 and the adaptive offset filter 128 may supply information such as filter coefficients used for the filter processing to the lossless encoding unit 116 and encode it as necessary. Further, an adaptive loop filter may be provided after the adaptive offset filter 128.
  • the frame memory 122 stores the reconstructed image supplied from the arithmetic unit 120 and the decoded image supplied from the adaptive offset filter 128, 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 also stores the decoded image stored at a predetermined timing or based on a request from the outside such as the motion prediction / compensation unit 125 via the selection unit 123. 125.
  • 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 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 motion prediction / compensation unit 125. For example, in the case of inter prediction, the selection unit 123 supplies the reference image supplied from the frame memory 122 to the motion prediction / compensation unit 125.
  • the intra prediction unit 124 performs intra prediction (intra-screen prediction) that generates a predicted image using a pixel value in a current picture that is a reference image supplied from the frame memory 122 via the selection unit 123.
  • the intra prediction unit 124 performs this intra prediction in a plurality of intra prediction modes prepared in advance.
  • the intra prediction unit 124 generates a prediction image in all candidate intra prediction modes. Further, the intra prediction unit 124 evaluates the cost function value of each predicted image using the input image supplied from the screen rearrangement buffer 112, and selects an optimal mode. 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 refers to information on code number assignment from the code number assignment unit 132 in particular, and uses the input image supplied from the screen rearrangement buffer 112 to predict each prediction image. Evaluate the cost function value of. That is, the intra prediction unit 124 generates a prediction image of the prediction block of the color difference signal based on the information regarding the code number assignment from the code number assigning unit 132.
  • 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 heel motion prediction / compensation unit 125 performs motion prediction (inter prediction) using the input image supplied from the screen rearrangement buffer 112 and the reference image supplied from the frame memory 122 via the selection unit 123.
  • the motion prediction / compensation unit 125 performs a motion compensation process according to the detected motion vector, and generates a prediction image (inter prediction image information).
  • the motion prediction / compensation unit 125 performs such inter prediction in a plurality of inter prediction modes prepared in advance.
  • the heel motion prediction / compensation unit 125 generates a prediction image in all candidate inter prediction modes.
  • the motion prediction / compensation unit 125 evaluates the cost function value of each predicted image using the input image supplied from the screen rearrangement buffer 112 and information on the generated differential motion vector, and selects an optimal mode. .
  • the motion prediction / compensation unit 125 supplies the predicted image generated in the optimal mode to the predicted image selection unit 126.
  • the motion prediction / compensation unit 125 supplies information indicating the employed 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. And encoding.
  • the necessary information includes, for example, information on the generated differential motion vector and a flag indicating an index of the predicted motion vector as predicted motion vector information.
  • 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 predicted image selection unit 126 selects the motion prediction / compensation unit 125 as a supply source of the predicted image, and calculates the predicted image supplied from the motion prediction / compensation unit 125 as the calculation unit 113.
  • 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 color format discriminating unit 131 refers to the information regarding chroma_format_idc supplied from the lossless encoding unit 116 and determines whether or not the color difference signal format of the input image is related to 4: 2: 2.
  • the color format determination unit 131 outputs a control signal corresponding to the determination result to the code number assignment unit 132.
  • the code number assigning unit 132 has a buffer in which information on code number assignment for default and 4: 2: 2 is stored.
  • the code number assigning unit 132 reads out information related to code number assignment from one of the buffers in response to a control signal from the color format determining unit 131, and supplies the read information related to code number assignment to the intra prediction unit 124. .
  • FIG. 13 is a block diagram illustrating a main configuration example of the color format determination unit 131 and the code number assignment unit 132 of FIG.
  • the color format determination unit 131 includes a color format buffer 141 and a 4: 2: 2 determination unit 142.
  • the code number assigning unit 132 includes a 4: 2: 2 code number buffer 151 and a default code number buffer 152.
  • chroma_format_idc which is information indicating the color difference signal format of the input image
  • the color format buffer 141 accumulates information on chroma_format_idc from the lossless encoding unit 116, reads it at a predetermined timing, and supplies it to the 4: 2: 2 determination unit 142.
  • the 4: 2: 2 determination unit 142 refers to information on chroma_format_idc from the color format buffer 141 and determines whether or not the color difference signal format of the input image is related to 4: 2: 2.
  • the 4: 2: 2 determination unit 142 outputs a control signal to either the 4: 2: 2 code number buffer 151 or the default code number buffer 152 according to the determination result.
  • the 4: 2: 2 determination unit 142 determines that the color difference signal format of the input image is related to 4: 2: 2, it outputs a control signal to the 4: 2: 2 code number buffer 151. If the 4: 2: 2 determination unit 142 determines that the color difference signal format of the input image is not related to 4: 2: 2, the control signal is output to the default code number buffer 152.
  • the 4: 2: 2 code number buffer 151 stores information on code number allocation for 4: 2: 2.
  • the 4: 2: 2 code number buffer 151 reads the stored information on the 4: 2: 2 code number assignment and performs intra prediction. To the unit 124.
  • the default code number buffer 152 stores information on default code number allocation.
  • the default code number buffer 152 reads the stored information on the default code number assignment and supplies the information to the intra prediction unit 124.
  • the intra prediction unit 124 receives information on one of the code number assignments, reassigns the code number according to the received information on the code number assignment, and calculates a cost function value for each intra mode.
  • step S121 the A / D conversion unit 111 of the image encoding apparatus 101 performs A / D conversion on the input image information (image data).
  • step S122 the screen rearrangement buffer 112 stores the A / D converted image information (digital data), and rearranges each picture from the display order to the encoding order.
  • step S123 the intra prediction unit 124 performs an intra prediction process in the intra prediction mode. Details of this intra prediction process will be described later with reference to FIG.
  • the intra prediction unit 124 the cost function value of each intra prediction mode is calculated by code number assignment corresponding to the color format of the input image, and the optimum mode is determined.
  • step S124 the motion prediction / compensation unit 125 performs motion prediction / compensation processing for performing motion prediction or motion compensation in the inter prediction mode.
  • step S ⁇ b> 125 the predicted image selection unit 126 determines an optimum mode based on the cost function values output from the intra prediction unit 124 and the motion prediction / compensation unit 125. That is, the predicted image selection unit 126 selects one of the predicted image generated by the intra prediction unit 124 and the predicted image generated by the motion prediction / compensation unit 125.
  • step S126 the calculation unit 113 calculates the difference between the image rearranged by the process of step S122 and the predicted image selected by the process of step S125.
  • the data amount of the difference data is reduced 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 an orthogonal transform process on the difference information generated by the process in step S126.
  • step S1208 the quantization unit 115 quantizes the orthogonal transform coefficient obtained by the process of step S127, using the quantization parameter calculated by the rate control unit 127.
  • the difference information quantized by the processing in step S128 is locally decoded as follows. That is, in 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. . In step S130, the inverse orthogonal transform unit 119 performs inverse orthogonal transform on the orthogonal transform coefficient obtained by the process of step S127. In step S131, the calculation unit 120 adds the predicted image to the locally decoded difference information, and generates a locally decoded image (an image corresponding to the input to the calculation unit 113).
  • step S132 the deblocking filter 121 performs deblocking filter processing on the image generated by the processing in step S131. Thereby, block distortion and the like are removed.
  • step S ⁇ b> 133 the adaptive offset filter 128 performs adaptive offset filter processing that mainly removes ringing on the deblocking filter processing result from the deblocking filter 121.
  • step S134 the frame memory 122 stores the image from which ringing has been removed by the process of step S133. Note that an image that has not been filtered by the deblocking filter 121 and the adaptive offset filter 128 is also supplied to the frame memory 122 from the computing unit 120 and stored therein. The image stored in the frame memory 122 is used for the processing in step S123 and the processing in step S124.
  • step S135 the lossless encoding unit 116 encodes the coefficient quantized by the process in 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. That is, the lossless encoding unit 116 acquires 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 motion prediction / compensation unit 125, and the like. NAL units including SPS and PPS are generated as appropriate. Then, the lossless encoding unit 116 encodes these various types of information using an arbitrary encoding method, and sets (multiplexes) the encoded information (also referred to as an encoded stream) as a part.
  • the lossless encoding unit 116 further supplies information on chroma_format_idc, which is information indicating the color difference signal format of the input image, to the color format buffer 141 of the color format determination unit 131 in the generated SPS. .
  • step S136 the accumulation buffer 117 accumulates the encoded data obtained by the process in step S135.
  • 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 S137 the rate control unit 127 determines the quantum of the quantization unit 115 so that no overflow or underflow occurs based on the code amount (generated code amount) of the encoded data accumulated in the accumulation buffer 117 in step S136. Control the rate of activation.
  • the encoding process ends.
  • the encoding process is executed in units of pictures, for example. That is, the encoding process is executed for each picture. However, each process in the encoding process is performed for each processing unit.
  • the intra prediction unit 124 When intra prediction processing is started, the intra prediction unit 124 performs intra prediction processing in all modes in step S181 to generate a prediction image.
  • chroma_format_idc which is information indicating the color difference signal format of the input image, is supplied from the lossless encoding unit 116 and stored in the color format buffer 141.
  • the color format buffer 141 reads the stored information about chroma_format_idc and supplies it to the 4: 2: 2 determination unit 142.
  • step S183 the 4: 2: 2 determination unit 142 determines whether the color difference signal format of the input image is 4: 2: 2. If it is determined in step S183 that the color difference signal format of the input image is 4: 2: 2, the process proceeds to step S184.
  • step S184 the intra prediction unit 124 replaces the code number assignment with the code number assignment for 4: 2: 2. That is, at this time, the 4: 2: 2 determination unit 142 supplies the control signal to the code number buffer 151 for 4: 2: 2.
  • the 4: 2: 2 code number buffer 151 reads the stored information on the 4: 2: 2 code number assignment and performs intra prediction.
  • the intra prediction unit 124 refers to the information on the code number assignment for 4: 2: 2, and replaces it with the code number assignment for 4: 2: 2.
  • step S183 If it is determined in step S183 that the color difference signal format of the input image is not 4: 2: 2, the process proceeds to step S185.
  • step S185 the intra prediction unit 124 replaces the code number assignment with the default code number assignment.
  • the 4: 2: 2 determination unit 142 supplies the control signal to the default code number buffer 152.
  • the default code number buffer 152 reads the stored information on the default code number assignment and supplies the information to the intra prediction unit 124.
  • the intra prediction unit 124 refers to the information regarding the default code number assignment, and replaces it with the default code number assignment.
  • step S186 the intra prediction unit 124 refers to the assigned code number and calculates a cost function value for each mode.
  • the intra prediction unit 124 refers to the cost function value of each mode calculated in step S186, and determines the optimal prediction mode. The predicted image of the determined optimal prediction mode and its cost function value are supplied to the predicted image selection unit 126.
  • the code number assignment is such that the horizontal prediction has a smaller code number than the vertical prediction.
  • a code number smaller than the Vertical prediction is assigned to the DC prediction.
  • FIG. 16 is a block diagram illustrating a main configuration example of an image decoding apparatus corresponding to the image encoding apparatus 101 in FIG.
  • An image decoding apparatus 201 illustrated in FIG. 16 decodes encoded data obtained by encoding image data by the image encoding apparatus 101, for example, by a method corresponding to the encoding method.
  • the image decoding apparatus 201 includes a storage buffer 211, a lossless decoding unit 212, an inverse quantization unit 213, an inverse orthogonal transform unit 214, an operation unit 215, a deblocking filter 216, a screen rearrangement buffer 217, and A D / A converter 218 is included.
  • the image decoding apparatus 201 includes a frame memory 219, a selection unit 220, an intra prediction unit 221, a motion compensation unit 222, and a selection unit 223.
  • the image decoding apparatus 201 includes an adaptive offset filter 224 between the deblocking filter 216 and the screen rearrangement buffer 217 and the frame memory 219. Furthermore, the image decoding apparatus 201 includes a color format determination unit 231 and a code number assignment unit 232.
  • 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 in FIG. 12 by a method corresponding to the encoding method of the lossless encoding unit 116.
  • 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 appropriately extracts and acquires NAL units including a video parameter set (VPS), a sequence parameter set (SPS), a picture parameter set (PPS), and the like included in the encoded data.
  • NAL units including a video parameter set (VPS), a sequence parameter set (SPS), a picture parameter set (PPS), and the like included in the encoded data.
  • the lossless decoding unit 212 extracts information on the optimal prediction mode from the information, and determines whether the intra prediction mode or the inter prediction mode is selected as the optimal prediction mode based on the information.
  • the lossless decoding unit 212 supplies information on the optimal prediction mode to the mode determined to be selected from the intra prediction unit 221 and the motion compensation unit 222.
  • the intra prediction mode when the intra prediction mode is selected as the optimal prediction mode in the image encoding device 101 in FIG. 12, information about the optimal prediction mode (specifically, an index indicating the optimal intra prediction mode) is provided. This is supplied to the intra prediction unit 221.
  • the code number for the intra prediction mode is Gromb encoded as described above with reference to FIG.
  • information regarding the optimum prediction mode is supplied to the motion compensation unit 222.
  • the lossless decoding unit 212 supplies information regarding chroma_format_idc, which is information indicating the color difference signal format of the input image, in the SPS to the color format determination unit 231.
  • the lossless decoding unit 212 extracts information necessary for inverse quantization, such as a quantization matrix and a quantization parameter, from the NAL unit or the like, and supplies it to the inverse quantization unit 213.
  • 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. That is, the description of the inverse quantization unit 213 can be applied to the inverse quantization unit 118. However, the data input / output destinations and the like need to be changed appropriately according to the device.
  • 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 coefficient data supplied from the inverse quantization unit 213 using a method corresponding to the orthogonal transform method of the orthogonal transform unit 114.
  • the inverse orthogonal transform unit 214 is a processing unit similar to the inverse orthogonal transform unit 119. That is, the description of the inverse orthogonal transform unit 214 can be applied to the inverse orthogonal transform unit 119. However, the data input / output destinations and the like need to be changed appropriately according to the device.
  • the inverse orthogonal transform unit 214 obtains decoded residual data corresponding to the residual data before being orthogonally transformed by the orthogonal transform unit 114 by the inverse orthogonal transform process.
  • the decoded residual data obtained by the inverse orthogonal transform is supplied to the calculation unit 215.
  • a prediction image is supplied to the calculation unit 215 from the intra prediction unit 221 or the motion compensation unit 222 via the selection unit 223.
  • the calculating unit 215 adds the decoded residual data and the predicted image, and obtains decoded image data corresponding to the image data before the predicted image is subtracted by the calculating unit 113.
  • the arithmetic unit 215 supplies the decoded image data to the deblocking filter 216.
  • the deblocking filter 216 removes block distortion of the decoded image by performing a deblocking filter process on the decoded image.
  • the deblocking filter 216 supplies the filtered image to the adaptive offset filter 224.
  • the adaptive offset filter 224 performs an adaptive offset filter (SAO: Sample adaptive offset) process that mainly removes ringing from the deblocking filter processing result (decoded image from which block distortion has been removed) from the deblocking filter 216. I do.
  • SAO Sample adaptive offset
  • the adaptive offset filter 224 receives the type and offset of adaptive offset filter processing for each LCU (Largest Coding Unit), which is the maximum coding unit, from the lossless decoding unit 212 (not shown).
  • the adaptive offset filter 224 performs the received type of adaptive offset filter processing on the image after the adaptive deblocking filter processing, using the received offset. Then, the adaptive offset filter 224 supplies the image after the adaptive offset filter processing (hereinafter referred to as a decoded image) to the screen rearrangement buffer 217 and the frame memory 219.
  • the decoded image output from the calculation unit 215 can be supplied to the screen rearrangement buffer 217 and the frame memory 219 without passing through the deblocking filter 216 and the adaptive offset filter 224. That is, part or all of the filter processing by the deblocking filter 216 and the adaptive offset filter 224 can be omitted.
  • An adaptive loop filter may be provided after the adaptive offset filter 224.
  • the screen rearrangement buffer 217 rearranges the decoded images. That is, the order of frames rearranged for the encoding order by the screen rearrangement buffer 112 is rearranged in the original display order.
  • the D / A conversion unit 218 performs D / A conversion on the image supplied from the screen rearrangement buffer 217, and outputs and displays the image on a display (not shown).
  • 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 motion compensation unit 222. This is supplied to the selection unit 220.
  • the eyelid selection unit 220 selects a reference image supply destination supplied from the frame memory 219.
  • the selection unit 220 supplies the reference image supplied from the frame memory 219 to the intra prediction unit 221 when decoding an intra-coded image.
  • the selection unit 220 supplies the reference image supplied from the frame memory 219 to the motion compensation unit 222 when decoding an inter-encoded image.
  • the intra-prediction unit 221 is appropriately supplied with information indicating the intra-prediction mode obtained by decoding the header information (that is, an index indicating the optimal intra-prediction mode) from the lossless decoding unit 212 as appropriate.
  • the intra prediction unit 221 performs intra prediction using the reference image acquired from the frame memory 219 in the supplied intra prediction mode, and generates a predicted image.
  • the intra prediction unit 221 supplies the generated predicted image to the selection unit 223.
  • the intra prediction unit 221 is supplied with information on code number allocation from the code number allocation unit 232.
  • the intra prediction unit 221 refers to the index indicating the intra prediction mode from the lossless decoding unit 212 and the information related to code number allocation from the code number allocation unit 232, and is used in the intra prediction unit 124 on the encoding side. Interpret the prediction mode. Then, the intra prediction unit 221 performs intra prediction using the reference image acquired from the frame memory 219 in the interpreted intra prediction mode, and generates a predicted image.
  • the eyelid motion compensation unit 222 acquires information (optimum prediction mode information, reference image information, etc.) obtained by decoding the header information from the lossless decoding unit 212.
  • the heel motion compensation unit 222 performs motion compensation using the reference image acquired from the frame memory 219 in the inter prediction mode indicated by the optimal prediction mode information acquired from the lossless decoding unit 212, and generates a predicted image.
  • the motion compensation unit 222 supplies the generated predicted image to the selection unit 223.
  • the eyelid selection unit 223 supplies the prediction image from the intra prediction unit 221 or the prediction image from the motion compensation unit 222 to the calculation unit 215.
  • the arithmetic unit 215 adds the predicted image generated using the motion vector and the decoded residual data (difference image information) from the inverse orthogonal transform unit 214 to decode the original image.
  • the color format discriminating unit 231 refers to the information related to chroma_format_idc of the SPS supplied from the lossless decoding unit 212 and determines whether or not the color difference signal format of the input image is related to 4: 2: 2.
  • the color format determination unit 231 outputs a control signal corresponding to the determination result to the code number assignment unit 232.
  • the code number assigning unit 232 is basically configured in the same manner as the code number assigning unit 132 in FIG. In other words, the code number assigning unit 232 has a buffer in which information related to code number assignment for default and 4: 2: 2 is stored. The code number assigning unit 232 reads information on code number assignment from one of the buffers in response to a control signal from the color format determining unit 231, and supplies the read information on code number assignment to the intra prediction unit 221. .
  • FIG. 17 is a block diagram illustrating a main configuration example of the color format determination unit 231 and the code number assignment unit 232 of FIG.
  • the color format determination unit 231 includes a color format buffer 241 and a 4: 2: 2 determination unit 242.
  • the code number assigning unit 232 has a 4: 2: 2 code number buffer 251 and a default code number buffer 252.
  • chroma_format_idc which is information indicating the color difference signal format of the input image
  • the color format buffer 241 accumulates information on chroma_format_idc from the lossless decoding unit 212, reads it at a predetermined timing, and supplies it to the 4: 2: 2 determination unit 242.
  • the 4: 2: 2 determination unit 242 refers to information on chroma_format_idc from the color format buffer 241 to determine whether or not the color difference signal format of the input image is related to 4: 2: 2.
  • the 4: 2: 2 determination unit 242 outputs a control signal to either the 4: 2: 2 code number buffer 251 or the default code number buffer 252 according to the determination result.
  • the control signal is output to the code number buffer 251 for 4: 2: 2. If the 4: 2: 2 determination unit 142 determines that the color difference signal format of the input image is not related to 4: 2: 2, the control signal is output to the default code number buffer 252.
  • the 4: 2: 2 code number buffer 251 stores information on 4: 2: 2 code number allocation.
  • the 4: 2: 2 code number buffer 251 reads the stored information on the 4: 2: 2 code number assignment and performs intra prediction. To the unit 221.
  • the default code number buffer 252 stores information on default code number assignment.
  • the default code number buffer 252 reads the stored information on the default code number assignment and supplies the information to the intra prediction unit 221.
  • the intra prediction unit 221 receives information on one of the code number assignments, and performs code number assignment replacement according to the received information on the code number assignment.
  • the intra prediction unit 221 interprets the intra prediction mode indicated by the index of the intra prediction mode from the lossless decoding unit 212 based on the replaced code number assignment, and generates a prediction image.
  • step S421 the accumulation buffer 211 of the image decoding apparatus 202 accumulates the bit stream transmitted from the encoding side.
  • step S422 the lossless decoding unit 212 decodes the bit stream (encoded difference image information) supplied from the accumulation buffer 211. That is, the I picture, P picture, and B picture encoded by the lossless encoding unit 116 in FIG. 12 are decoded. At this time, various information other than the difference image information included in the bit stream such as header information is also decoded.
  • step S423 the inverse quantization unit 213 inversely quantizes the quantized coefficient obtained by the process in step S422.
  • step S424 the inverse orthogonal transform unit 214 performs inverse orthogonal transform on the current block (current TU).
  • step S425 the intra prediction unit 221 or the motion compensation unit 222 performs a prediction process to generate a predicted image. That is, the prediction process is performed in the prediction mode determined at the time of encoding determined by the lossless decoding unit 212.
  • the intra prediction unit 221 when intra prediction is applied at the time of encoding, the intra prediction unit 221 generates a prediction image in an intra prediction mode optimized at the time of encoding.
  • the motion compensation unit 222 when inter prediction is applied at the time of encoding, the motion compensation unit 222 generates a prediction image in an inter prediction mode that is optimized at the time of encoding. Details of this prediction process will be described later with reference to FIG.
  • step S426 the calculation unit 215 adds the predicted image generated in step S425 to the difference image information generated by the inverse orthogonal transform process in step S424. As a result, the original image is decoded.
  • step S427 the deblocking filter 216 performs deblocking filter processing on the decoded image obtained in step S426. Thereby, block distortion and the like are removed.
  • step S428, the adaptive offset filter 224 performs adaptive offset filter processing that mainly removes ringing on the deblocking filter processing result from the deblocking filter 216.
  • step S429 the screen rearrangement buffer 217 rearranges the images from which ringing has been removed in step S428. That is, the order of frames rearranged for encoding by the screen rearrangement buffer 112 in FIG. 12 is rearranged to the original display order.
  • step S430 the D / A conversion unit 218 performs D / A conversion on the image in which the frame order is rearranged in step S429. This image is output to a display (not shown), and the image is displayed.
  • step S431 the frame memory 219 stores the image that has been subjected to the adaptive offset filter processing in step S428.
  • step S431 When the process of step S431 ends, the decoding process ends.
  • the decoding process is executed in units of pictures, for example. However, each process in the decoding process is performed for each processing unit.
  • the motion compensation unit 222 determines whether or not the prediction mode is inter prediction in step S451. When it determines with it being inter prediction, a process progresses to step S452.
  • step S452 the motion compensation unit 222 performs motion information decoding processing to reconstruct the motion information of the current block.
  • step S453 the motion compensation unit 222 performs motion compensation using the motion information obtained by the process in step S452, and generates a predicted image.
  • the prediction process ends, and the process returns to FIG.
  • step S451 when it is determined in step S451 that it is intra prediction, the process proceeds to step S454.
  • step S454 the intra prediction unit 221 performs intra prediction. Details of this intra prediction process will be described later with reference to FIG. When the process of step S454 ends, the prediction process ends, and the process returns to FIG.
  • chroma_format_idc which is information indicating the color difference signal format of the input image
  • the color format buffer 241 accumulates information on chroma_format_idc from the lossless decoding unit 212, reads it at a predetermined timing, and supplies it to the 4: 2: 2 determination unit 242.
  • step S472 determines the color difference signal format of the input image with reference to information on chroma_format_idc from color format buffer 241 in step S471.
  • step S472 determines whether or not the color difference signal format of the input image is 4: 2: 2. If it is determined in step S472 that the color difference signal format of the input image is 4: 2: 2, the process proceeds to step S473.
  • step S473 the intra prediction unit 221 replaces the code number assignment with the code number assignment for 4: 2: 2. That is, at this time, the 4: 2: 2 determination unit 242 supplies the control signal to the code number buffer 251 for 4: 2: 2.
  • the 4: 2: 2 code number buffer 251 reads the stored information on the 4: 2: 2 code number assignment and performs intra prediction. To the unit 221.
  • the intra prediction unit 221 refers to the information on the code number assignment for 4: 2: 2, and replaces it with the code number assignment for 4: 2: 2.
  • step S472 If it is determined in step S472 that the color difference signal format of the input image is not 4: 2: 2, the process proceeds to step S474.
  • step S474 the intra prediction unit 221 replaces the code number assignment with the default code number assignment.
  • the 4: 2: 2 determination unit 242 supplies the control signal to the default code number buffer 252.
  • the default code number buffer 252 reads the stored information on the default code number assignment and supplies the information to the intra prediction unit 221.
  • the intra prediction unit 221 refers to the information related to the default code number assignment, and replaces it with the default code number assignment.
  • step S475 the intra prediction unit 221 calculates the cost function value of each mode with reference to the assigned code number.
  • step S476 the intra prediction unit 124 refers to the cost function value of each mode calculated in step S475 to determine the optimal prediction mode.
  • the predicted image of the determined optimal prediction mode and its cost function value are supplied to the predicted image selection unit 226.
  • the code number assignment is such that the horizontal prediction has a smaller code number than the vertical prediction.
  • a smaller code number is assigned to DC prediction than to Vertical prediction.
  • the HEVC method is used as the encoding method.
  • the present technology is not limited to this, and other encoding / decoding methods can be applied.
  • the present disclosure discloses, for example, image information (bitstream) compressed by orthogonal transformation such as discrete cosine transformation and motion compensation, such as HEVC, satellite broadcasting, cable television, the Internet, or a mobile phone.
  • the present invention can be applied to an image encoding device and an image decoding device used when receiving via a network medium. Further, the present disclosure 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 disk, a magnetic disk, and a flash memory.
  • FIG. 21 shows an example of the multi-view image encoding method.
  • the multi-viewpoint image includes a plurality of viewpoint images, and a predetermined one viewpoint image among the plurality of viewpoints is designated as the base view image.
  • Each viewpoint image other than the base view image is treated as a non-base view image.
  • the code number assignment for intra prediction can be switched in each view (same view). In addition, in each view (different view), it is also possible to share code number assignments for intra prediction switched in other views.
  • code number assignment for intra prediction switched in the base view is used in at least one non-base view.
  • FIG. 22 is a diagram illustrating a multi-view image encoding apparatus that performs the above-described multi-view image encoding.
  • the multi-view image encoding device 600 includes an encoding unit 601, an encoding unit 602, and a multiplexing unit 603.
  • the 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 image encoding device 101 (FIG. 12) can be applied to the encoding unit 601 and the encoding unit 602 of the multi-view image encoding device 600.
  • the multi-view image encoding apparatus 600 uses the code number allocation for the intra prediction switched by the encoding unit 601 and the code number allocation for the intra prediction switched by the encoding unit 602, and information on the intra prediction mode. Is transmitted.
  • the code number assignment for the intra prediction switched by the encoding unit 601 may be shared by the encoding unit 601 and the encoding unit 602 to transmit information on the intra prediction mode.
  • the code number assignment for intra prediction that is switched collectively by the encoding unit 602 may be shared by the encoding unit 601 and the encoding unit 602 to transmit information on the intra prediction mode.
  • FIG. 23 is a diagram illustrating a multi-view image decoding apparatus that performs the above-described multi-view image decoding.
  • the multi-view image decoding device 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 multi-view image decoding device 201 (FIG. 16) can be applied to the decoding unit 612 and the decoding unit 613 of the multi-view image decoding device 610.
  • the multi-view image decoding apparatus 610 performs code number allocation for intra prediction switched by the encoding unit 601 and decoding unit 612 and code number allocation for intra prediction switched by the encoding unit 602 and decoding unit 613. To process.
  • the code number assignment for the intra prediction switched by the encoding unit 601 is shared between the encoding unit 601 and the encoding unit 602, and information related to the intra prediction mode. May be transmitted.
  • processing is performed using code number assignment for intra prediction switched by encoding unit 601 (or encoding unit 602) and decoding unit 612 (or decoding unit 613). Is called.
  • FIG. 24 shows an example of a multi-view image encoding method.
  • a hierarchical image includes images of a plurality of layers (resolutions), and an image of a predetermined one layer among the plurality of resolutions is designated as a base layer image. Images in each layer other than the base layer image are treated as non-base layer images.
  • code number allocation for intra prediction can be switched in each layer (same layer).
  • code number assignment for intra prediction switched in another layer can be shared.
  • code number assignment for intra prediction switched in the base layer is used in at least one non-base layer.
  • FIG. 25 is a diagram illustrating a hierarchical image encoding apparatus that performs the above-described hierarchical image encoding.
  • the hierarchical image encoding device 620 includes an encoding unit 621, an encoding unit 622, and a multiplexing unit 623.
  • the encoding unit 621 encodes the base layer image and generates a base layer image encoded stream.
  • the encoding unit 622 encodes the non-base layer image and generates a non-base layer image encoded stream.
  • the multiplexing unit 623 multiplexes the base layer image encoded stream generated by the encoding unit 621 and the non-base layer image encoded stream generated by the encoding unit 622 to generate a hierarchical image encoded stream. .
  • the image encoding device 101 (FIG. 12) can be applied to the encoding unit 621 and the encoding unit 622 of the hierarchical image encoding device 620.
  • the hierarchical image encoding device 620 uses the code number allocation for the intra prediction switched by the encoding unit 621 and the code number allocation for the intra prediction switched by the encoding unit 602, and information on the intra prediction mode. Is transmitted.
  • the code number assignment for intra prediction switched by the encoding unit 621 may be shared by the encoding unit 621 and the encoding unit 622 to transmit information regarding the intra prediction mode.
  • the code number assignment for the intra prediction switched by the encoding unit 622 may be shared by the encoding unit 621 and the encoding unit 622 to transmit information on the intra prediction mode.
  • FIG. 26 is a diagram illustrating a hierarchical image decoding apparatus that performs the hierarchical image decoding described above.
  • the hierarchical image decoding device 630 includes a demultiplexing unit 631, a decoding unit 632, and a decoding unit 633.
  • the demultiplexing unit 631 demultiplexes the hierarchical image encoded stream in which the base layer image encoded stream and the non-base layer image encoded stream are multiplexed, and the base layer image encoded stream and the non-base layer image code Stream.
  • the decoding unit 632 decodes the base layer image encoded stream extracted by the demultiplexing unit 631 to obtain a base layer image.
  • the decoding unit 633 decodes the non-base layer image encoded stream extracted by the demultiplexing unit 631 to obtain a non-base layer image.
  • the multi-view image decoding device 201 (FIG. 16) can be applied to the decoding unit 632 and the decoding unit 633 of the hierarchical image decoding device 630.
  • the hierarchical image decoding device 630 assigns code numbers for intra prediction in which the encoding unit 621 and the decoding unit 632 are switched, and code number assignments for intra prediction in which the encoding unit 622 and the decoding unit 633 are switched. Process using.
  • the code number assignment for the intra prediction in which the encoding unit 621 (or the encoding unit 622) has been switched is shared by the encoding unit 621 and the encoding unit 622 and used for the intra prediction mode. Information may be transmitted.
  • the code number assignment for the intra prediction set by the encoding unit 621 (or the encoding unit 622) and switched by the decoding unit 632 (or the decoding unit 633) is used. Processing is performed.
  • 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 805 is also connected to the bus 804.
  • An input unit 806, an output unit 807, a storage unit 808, a communication unit 809, and a drive 810 are connected to the input / output interface 805.
  • the bag input unit 806 includes, for example, a keyboard, a mouse, a microphone, a touch panel, an input terminal, and the like.
  • the output unit 807 includes, for example, a display, a speaker, an output terminal, and the like.
  • the storage unit 808 includes, for example, a hard disk, a RAM disk, a nonvolatile memory, and the like.
  • the communication unit 809 includes a network interface, for example.
  • the drive 810 drives a removable recording medium 811 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 808 to the RAM 803 via the input / output interface 805 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 recording medium 811 as a package medium or the like.
  • the program can be installed in the storage unit 808 via the input / output interface 805 by attaching the removable recording medium 811 to the drive 810.
  • 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 809 via a wired or wireless transmission medium and installed in the storage unit 808.
  • this program can be installed in advance in the ROM 802 or the storage unit 808.
  • 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 201 (FIG. 16) according to the above-described embodiment. Thereby, it is possible to improve the encoding efficiency of intra prediction when the format of the color difference signal in the image is 4: 2: 2.
  • 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 101 (FIG. 12) and the image decoding device 201 (FIG. 16) according to the above-described embodiment. Thereby, it is possible to improve the encoding efficiency of intra prediction when the format of the color difference signal in the image is 4: 2: 2.
  • 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 101 (FIG. 12) according to the above-described embodiment.
  • the decoder 947 has the function of the image decoding device 201 (FIG. 16) according to the above-described embodiment. Thereby, it is possible to improve the encoding efficiency of intra prediction when the format of the color difference signal in the image is 4: 2: 2.
  • 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 101 (FIG. 12) and the image decoding device 201 (FIG. 16) according to the above-described embodiment. Thereby, it is possible to improve the encoding efficiency of intra prediction when the format of the color difference signal in the image is 4: 2: 2.
  • 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.
  • 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.
  • 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. 35 illustrates an example of a schematic configuration of a video set to which the present technology is applied.
  • the video set 1300 shown in FIG. 35 has such a multi-functional configuration, and a device having a function relating to image encoding and decoding (either or both of them) can be used for the function. It is a combination of devices having other related functions.
  • the video set 1300 includes a module group such as a video module 1311, an external memory 1312, a power management module 1313, and a front-end module 1314, and an associated module 1321, a camera 1322, a sensor 1323, and the like. And a device having a function.
  • a cocoon module is a component that has several functions that are related to each other and that have a coherent function.
  • the specific physical configuration is arbitrary. For example, a plurality of processors each having a function, electronic circuit elements such as resistors and capacitors, and other devices arranged on a wiring board or the like can be considered. . It is also possible to combine the module with another module, a processor, or the like to form a new module.
  • the video module 1311 is a combination of configurations having functions related to image processing, and includes an application processor, a video processor, a broadband modem 1333, and an RF module 1334.
  • the processor is a configuration in which a configuration having a predetermined function is integrated on a semiconductor chip by an SoC (System On Chip), and for example, there is also a system LSI (Large Scale Integration) or the like.
  • the configuration having the predetermined function may be a logic circuit (hardware configuration), a CPU, a ROM, a RAM, and the like, and a program (software configuration) executed using them. , Or a combination of both.
  • a processor has a logic circuit and a CPU, ROM, RAM, etc., a part of the function is realized by a logic circuit (hardware configuration), and other functions are executed by the CPU (software configuration) It may be realized by.
  • the application processor 1331 in FIG. 35 is a processor that executes an application related to image processing.
  • the application executed in the application processor 1331 not only performs arithmetic processing to realize a predetermined function, but also can control the internal and external configurations of the video module 1311 such as the video processor 1332 as necessary. .
  • the video processor 1332 is a processor having a function related to image encoding / decoding (one or both of them).
  • the broadband modem 1333 is a processor (or module) that performs processing related to wired or wireless (or both) broadband communication performed via a broadband line such as the Internet or a public telephone line network.
  • the broadband modem 1333 digitally modulates data to be transmitted (digital signal) to convert it into an analog signal, or demodulates the received analog signal to convert it into data (digital signal).
  • the broadband modem 1333 can digitally modulate and demodulate arbitrary information such as image data processed by the video processor 1332, a stream obtained by encoding the image data, an application program, setting data, and the like.
  • the RF module 1334 is a module that performs frequency conversion, modulation / demodulation, amplification, filter processing, and the like on an RF (Radio RF Frequency) signal transmitted and received via an antenna. For example, the RF module 1334 generates an RF signal by performing frequency conversion or the like on the baseband signal generated by the broadband modem 1333. Further, for example, the RF module 1334 generates a baseband signal by performing frequency conversion or the like on the RF signal received via the front end module 1314.
  • RF Radio RF Frequency
  • the application processor 1331 and the video processor 1332 may be integrated into a single processor.
  • the external memory 1312 is a module having a storage device that is provided outside the video module 1311 and is used by the video module 1311.
  • the storage device of the external memory 1312 may be realized by any physical configuration, but is generally used for storing a large amount of data such as image data in units of frames. For example, it is desirable to realize it with a relatively inexpensive and large-capacity semiconductor memory such as DRAM (Dynamic Random Access Memory).
  • the power management module 1313 manages and controls power supply to the video module 1311 (each component in the video module 1311).
  • the front end module 1314 is a module that provides the RF module 1334 with a front end function (a circuit on a transmitting / receiving end on the antenna side). As illustrated in FIG. 35, the front end module 1314 includes, for example, an antenna unit 1351, a filter 1352, and an amplification unit 1353.
  • Antenna unit 1351 has an antenna for transmitting and receiving a radio signal and its peripheral configuration.
  • the antenna unit 1351 transmits the signal supplied from the amplification unit 1353 as a radio signal, and supplies the received radio signal to the filter 1352 as an electric signal (RF signal).
  • the filter 1352 performs a filtering process on the RF signal received via the antenna unit 1351 and supplies the processed RF signal to the RF module 1334.
  • the amplifying unit 1353 amplifies the RF signal supplied from the RF module 1334 and supplies the amplified RF signal to the antenna unit 1351.
  • Connectivity 1321 is a module having a function related to connection with the outside.
  • the physical configuration of the connectivity 1321 is arbitrary.
  • the connectivity 1321 has a configuration having a communication function other than the communication standard supported by the broadband modem 1333, an external input / output terminal, and the like.
  • the communication 1321 is compliant with wireless communication standards such as Bluetooth (registered trademark), IEEE 802.11 (for example, Wi-Fi (Wireless Fidelity, registered trademark)), NFC (Near Field Communication), IrDA (InfraRed Data Association), etc. You may make it have a module which has a function, an antenna etc. which transmit / receive the signal based on the standard.
  • the connectivity 1321 has a module having a communication function compliant with a wired communication standard such as USB (Universal Serial Bus), HDMI (registered trademark) (High-Definition Multimedia Interface), or a terminal compliant with the standard. You may do it.
  • the connectivity 1321 may have other data (signal) transmission functions such as analog input / output terminals.
  • the connectivity 1321 may include a data (signal) transmission destination device.
  • the drive 1321 reads and writes data to and from a recording medium such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory (not only a removable medium drive, but also a hard disk, SSD (Solid State Drive) NAS (including Network Attached Storage) and the like.
  • the connectivity 1321 may include an image or audio output device (a monitor, a speaker, or the like).
  • the eyelid camera 1322 is a module having a function of capturing an image of a subject and obtaining image data of the subject.
  • Image data obtained by imaging by the camera 1322 is supplied to, for example, a video processor 1332 and encoded.
  • the sensor 1323 includes, for example, a voice sensor, an ultrasonic sensor, an optical sensor, an illuminance sensor, an infrared sensor, an image sensor, a rotation sensor, an angle sensor, an angular velocity sensor, a velocity sensor, an acceleration sensor, an inclination sensor, a magnetic identification sensor, an impact sensor, It is a module having an arbitrary sensor function such as a temperature sensor.
  • the data detected by the sensor 1323 is supplied to the application processor 1331 and used by an application or the like.
  • the configuration described above as a module may be realized as a processor, or conversely, the configuration described as a processor may be realized as a module.
  • the present technology can be applied to the video processor 1332 as described later. Therefore, the video set 1300 can be implemented as a set to which the present technology is applied.
  • FIG. 36 illustrates an example of a schematic configuration of a video processor 1332 (FIG. 35) to which the present technology is applied.
  • the video processor 1332 receives the video signal and the audio signal, encodes them in a predetermined method, decodes the encoded video data and audio data, A function of reproducing and outputting an audio signal.
  • the video processor 1332 includes a video input processing unit 1401, a first image enlargement / reduction unit 1402, a second image enlargement / reduction unit 1403, a video output processing unit 1404, a frame memory 1405, and a memory control unit 1406.
  • the video processor 1332 includes an encoding / decoding engine 1407, video ES (ElementaryElementStream) buffers 1408A and 1408B, and audio ES buffers 1409A and 1409B.
  • the video processor 1332 includes an audio encoder 1410, an audio decoder 1411, a multiplexing unit (MUX (Multiplexer)) 1412, a demultiplexing unit (DMUX (Demultiplexer)) 1413, and a stream buffer 1414.
  • MUX Multiplexing unit
  • DMUX Demultiplexer
  • the video input processing unit 1401 acquires a video signal input from, for example, the connectivity 1321 (FIG. 35) and converts it into digital image data.
  • the first image enlargement / reduction unit 1402 performs format conversion, image enlargement / reduction processing, and the like on the image data.
  • the second image enlargement / reduction unit 1403 performs image enlargement / reduction processing on the image data in accordance with the format of the output destination via the video output processing unit 1404, or is the same as the first image enlargement / reduction unit 1402. Format conversion and image enlargement / reduction processing.
  • the video output processing unit 1404 performs format conversion, conversion to an analog signal, and the like on the image data and outputs the reproduced video signal to, for example, the connectivity 1321 (FIG. 35).
  • the frame memory 1405 is a memory for image data shared by the video input processing unit 1401, the first image scaling unit 1402, the second image scaling unit 1403, the video output processing unit 1404, and the encoding / decoding engine 1407. .
  • the frame memory 1405 is realized as a semiconductor memory such as a DRAM, for example.
  • the memory control unit 1406 receives the synchronization signal from the encoding / decoding engine 1407, and controls the writing / reading access to the frame memory 1405 according to the access schedule to the frame memory 1405 written in the access management table 1406A.
  • the access management table 1406A is updated by the memory control unit 1406 in accordance with processing executed by the encoding / decoding engine 1407, the first image enlargement / reduction unit 1402, the second image enlargement / reduction unit 1403, and the like.
  • the encoding / decoding engine 1407 performs encoding processing of image data and decoding processing of a video stream that is data obtained by encoding the image data. For example, the encoding / decoding engine 1407 encodes the image data read from the frame memory 1405 and sequentially writes the data as a video stream in the video ES buffer 1408A. Further, for example, the video stream is sequentially read from the video ES buffer 1408B, decoded, and sequentially written in the frame memory 1405 as image data.
  • the encoding / decoding engine 1407 uses the frame memory 1405 as a work area in the encoding and decoding. Also, the encoding / decoding engine 1407 outputs a synchronization signal to the memory control unit 1406, for example, at a timing at which processing for each macroblock is started.
  • the video ES buffer 1408A buffers the video stream generated by the encoding / decoding engine 1407 and supplies the buffered video stream to the multiplexing unit (MUX) 1412.
  • the video ES buffer 1408B buffers the video stream supplied from the demultiplexer (DMUX) 1413 and supplies the buffered video stream to the encoding / decoding engine 1407.
  • the audio ES buffer 1409A buffers the audio stream generated by the audio encoder 1410 and supplies the buffered audio stream to the multiplexing unit (MUX) 1412.
  • the audio ES buffer 1409B buffers the audio stream supplied from the demultiplexer (DMUX) 1413 and supplies the buffered audio stream to the audio decoder 1411.
  • the audio encoder 1410 converts, for example, an audio signal input from the connectivity 1321 (FIG. 35), for example, into a digital format, and encodes the audio signal using a predetermined method such as an MPEG audio method or an AC3 (Audio Code number 3) method.
  • the audio encoder 1410 sequentially writes an audio stream, which is data obtained by encoding an audio signal, in the audio ES buffer 1409A.
  • the audio decoder 1411 decodes the audio stream supplied from the audio ES buffer 1409B, performs conversion to, for example, an analog signal, and supplies the reproduced audio signal to, for example, the connectivity 1321 (FIG. 35).
  • Multiplexer (MUX) 1412 multiplexes the video stream and the audio stream.
  • the multiplexing method (that is, the format of the bit stream generated by multiplexing) is arbitrary.
  • the multiplexing unit (MUX) 1412 can also add predetermined header information or the like to the bit stream. That is, the multiplexing unit (MUX) 1412 can convert the stream format by multiplexing. For example, the multiplexing unit (MUX) 1412 multiplexes the video stream and the audio stream to convert it into a transport stream that is a bit stream in a transfer format. Further, for example, the multiplexing unit (MUX) 1412 multiplexes the video stream and the audio stream, thereby converting the data into file format data (file data) for recording.
  • the demultiplexing unit (DMUX) 1413 demultiplexes the bit stream in which the video stream and the audio stream are multiplexed by a method corresponding to the multiplexing by the multiplexing unit (MUX) 1412. That is, the demultiplexer (DMUX) 1413 extracts the video stream and the audio stream from the bit stream read from the stream buffer 1414 (separates the video stream and the audio stream). That is, the demultiplexer (DMUX) 1413 can convert the stream format by demultiplexing (inverse conversion of the conversion by the multiplexer (MUX) 1412). For example, the demultiplexer (DMUX) 1413 obtains the transport stream supplied from, for example, the connectivity 1321 and the broadband modem 1333 (both in FIG.
  • the demultiplexing unit (DMUX) 1413 obtains file data read from various recording media by, for example, the connectivity 1321 (FIG. 35) via the stream buffer 1414, and demultiplexes the file data. It can be converted into a video stream and an audio stream.
  • DMUX demultiplexing unit
  • the stream buffer 1414 buffers the bit stream.
  • the stream buffer 1414 buffers the transport stream supplied from the multiplexing unit (MUX) 1412 and, for example, at the predetermined timing or based on a request from the outside, for example, the connectivity 1321 or the broadband modem 1333 (whichever Are also supplied to FIG.
  • MUX multiplexing unit
  • the stream buffer 1414 buffers the file data supplied from the multiplexing unit (MUX) 1412 and, for example, the connectivity 1321 (FIG. 35) or the like at a predetermined timing or based on an external request or the like. To be recorded on various recording media.
  • MUX multiplexing unit
  • the connectivity 1321 FIG. 35
  • the stream buffer 1414 buffers the transport stream acquired through, for example, the connectivity 1321 and the broadband modem 1333 (both in FIG. 35), and performs reverse processing at a predetermined timing or based on an external request or the like.
  • the data is supplied to a multiplexing unit (DMUX) 1413.
  • DMUX multiplexing unit
  • the stream buffer 1414 buffers file data read from various recording media in, for example, the connectivity 1321 (FIG. 35), and the demultiplexing unit at a predetermined timing or based on an external request or the like. (DMUX) 1413.
  • DMUX demultiplexing unit
  • a video signal input from the connectivity 1321 (FIG. 35) or the like to the video processor 1332 is converted into digital image data of a predetermined format such as 4: 2: 2Y / Cb / Cr format by the video input processing unit 1401.
  • the data is sequentially written into the frame memory 1405.
  • This digital image data is read by the first image enlargement / reduction unit 1402 or the second image enlargement / reduction unit 1403, and format conversion to a predetermined method such as 4: 2: 0Y / Cb / Cr method and enlargement / reduction processing are performed. Is written again in the frame memory 1405.
  • This image data is encoded by the encoding / decoding engine 1407 and written as a video stream in the video ES buffer 1408A.
  • an audio signal input to the video processor 1332 from the connectivity 1321 (FIG. 35) or the like is encoded by the audio encoder 1410 and written as an audio stream in the audio ES buffer 1409A.
  • the video stream of the video ES buffer 1408A and the audio stream of the audio ES buffer 1409A are read and multiplexed by the multiplexing unit (MUX) 1412 and converted into a transport stream or file data.
  • the transport stream generated by the multiplexing unit (MUX) 1412 is buffered in the stream buffer 1414 and then output to the external network via, for example, the connectivity 1321 and the broadband modem 1333 (both of which are shown in FIG. 35).
  • the file data generated by the multiplexing unit (MUX) 1412 is buffered in the stream buffer 1414, and then output to, for example, the connectivity 1321 (FIG. 35) and recorded on various recording media.
  • a transport stream input from an external network to the video processor 1332 via the connectivity 1321 or the broadband modem 1333 (both in FIG. 35) is buffered in the stream buffer 1414, and then demultiplexed (DMUX) 1413 is demultiplexed.
  • DMUX demultiplexed
  • file data read from various recording media in the connectivity 1321 (FIG. 35) and input to the video processor 1332 is buffered in the stream buffer 1414 and then demultiplexed by the demultiplexer (DMUX) 1413. It becomes. That is, the transport stream or file data input to the video processor 1332 is separated into a video stream and an audio stream by the demultiplexer (DMUX) 1413.
  • the audio stream is supplied to the audio decoder 1411 via the audio ES buffer 1409B and decoded to reproduce the audio signal.
  • the video stream is written to the video ES buffer 1408B, and then sequentially read and decoded by the encoding / decoding engine 1407, and written to the frame memory 1405.
  • the decoded image data is enlarged / reduced by the second image enlargement / reduction unit 1403 and written to the frame memory 1405.
  • the decoded image data is read out to the video output processing unit 1404, format-converted to a predetermined system such as 4: 2: 2Y / Cb / Cr system, and further converted into an analog signal to be converted into a video signal. Is played out.
  • the present technology when the present technology is applied to the video processor 1332 configured as described above, the present technology according to each embodiment described above may be applied to the encoding / decoding engine 1407. That is, for example, the encoding / decoding engine 1407 has the functions of the image encoding device 101 (FIG. 12) according to the first embodiment and the image decoding device 201 (FIG. 16) according to the second embodiment. You can do it. In this way, the video processor 1332 can obtain the same effects as those described above with reference to FIGS.
  • the present technology (that is, the functions of the image encoding device and the image decoding device according to each embodiment described above) may be realized by hardware such as a logic circuit. It may be realized by software such as an embedded program, or may be realized by both of them.
  • FIG. 37 illustrates another example of a schematic configuration of the video processor 1332 (FIG. 35) to which the present technology is applied.
  • the video processor 1332 has a function of encoding and decoding video data by a predetermined method.
  • the video processor 1332 includes a control unit 1511, a display interface 1512, a display engine 1513, an image processing engine 1514, and an internal memory 1515.
  • the video processor 1332 includes a codec engine 1516, a memory interface 1517, a multiplexing / demultiplexing unit (MUX DMUX) 1518, a network interface 1519, and a video interface 1520.
  • MUX DMUX multiplexing / demultiplexing unit
  • the eyelid control unit 1511 controls the operation of each processing unit in the video processor 1332 such as the display interface 1512, the display engine 1513, the image processing engine 1514, and the codec engine 1516.
  • the control unit 1511 includes, for example, a main CPU 1531, a sub CPU 1532, and a system controller 1533.
  • the main CPU 1531 executes a program and the like for controlling the operation of each processing unit in the video processor 1332.
  • the main CPU 1531 generates a control signal according to the program and supplies it to each processing unit (that is, controls the operation of each processing unit).
  • the sub CPU 1532 plays an auxiliary role of the main CPU 1531.
  • the sub CPU 1532 executes a child process such as a program executed by the main CPU 1531, a subroutine, or the like.
  • the system controller 1533 controls operations of the main CPU 1531 and the sub CPU 1532 such as designating a program to be executed by the main CPU 1531 and the sub CPU 1532.
  • the display interface 1512 outputs image data to, for example, the connectivity 1321 (FIG. 35) or the like under the control of the control unit 1511.
  • the display interface 1512 converts image data of digital data into an analog signal, and outputs it to a monitor device or the like of the connectivity 1321 (FIG. 35) as a reproduced video signal or as image data of the digital data.
  • the display engine 1513 Under the control of the control unit 1511, the display engine 1513 performs various conversion processes such as format conversion, size conversion, color gamut conversion, and the like so as to match the image data with hardware specifications such as a monitor device that displays the image. I do.
  • the eyelid image processing engine 1514 performs predetermined image processing such as filter processing for improving image quality on the image data under the control of the control unit 1511.
  • the internal memory 1515 is a memory provided inside the video processor 1332 that is shared by the display engine 1513, the image processing engine 1514, and the codec engine 1516.
  • the internal memory 1515 is used, for example, for data exchange performed between the display engine 1513, the image processing engine 1514, and the codec engine 1516.
  • the internal memory 1515 stores data supplied from the display engine 1513, the image processing engine 1514, or the codec engine 1516, and stores the data as needed (eg, upon request). This is supplied to the image processing engine 1514 or the codec engine 1516.
  • the internal memory 1515 may be realized by any storage device, but is generally used for storing a small amount of data such as image data or parameters in units of blocks. It is desirable to realize a semiconductor memory having a relatively small capacity but a high response speed (for example, as compared with the external memory 1312) such as “Static Random Access Memory”.
  • the codec engine 1516 performs processing related to encoding and decoding of image data.
  • the encoding / decoding scheme supported by the codec engine 1516 is arbitrary, and the number thereof may be one or plural.
  • the codec engine 1516 may be provided with codec functions of a plurality of encoding / decoding schemes, and may be configured to perform encoding of image data or decoding of encoded data using one selected from them.
  • the codec engine 1516 includes, for example, MPEG-2 video 1541, AVC / H.2641542, HEVC / H.2651543, HEVC / H.265 (Scalable) 1544, as function blocks for processing related to the codec.
  • HEVC / H.265 (Multi-view) 1545 and MPEG-DASH 1551 are included.
  • “MPEG-2” Video 1541 is a functional block that encodes and decodes image data in the MPEG-2 format.
  • AVC / H.2641542 is a functional block that encodes and decodes image data using the AVC method.
  • HEVC / H.2651543 is a functional block that encodes and decodes image data using the HEVC method.
  • HEVC / H.265 (Scalable) 1544 is a functional block that performs scalable encoding and scalable decoding of image data using the HEVC method.
  • HEVC / H.265 (Multi-view) 1545 is a functional block that multi-view encodes or multi-view decodes image data using the HEVC method.
  • MPEG-DASH 1551 is a functional block that transmits and receives image data in the MPEG-DASH (MPEG-Dynamic Adaptive Streaming over HTTP) method.
  • MPEG-DASH is a technology for streaming video using HTTP (HyperText Transfer Protocol), and selects and transmits appropriate data from multiple encoded data with different resolutions prepared in advance in segments. This is one of the features.
  • MPEG-DASH 1551 generates a stream compliant with the standard, controls transmission of the stream, and the like.
  • MPEG-2 Video 1541 to HEVC / H.265 (Multi-view) 1545 described above are used. Is used.
  • the memory interface 1517 is an interface for the external memory 1312. Data supplied from the image processing engine 1514 or the codec engine 1516 is supplied to the external memory 1312 via the memory interface 1517. The data read from the external memory 1312 is supplied to the video processor 1332 (the image processing engine 1514 or the codec engine 1516) via the memory interface 1517.
  • a multiplexing / demultiplexing unit (MUX DMUX) 1518 multiplexes and demultiplexes various data related to images such as a bit stream of encoded data, image data, and a video signal.
  • This multiplexing / demultiplexing method is arbitrary.
  • the multiplexing / demultiplexing unit (MUX DMUX) 1518 can not only combine a plurality of data into one but also add predetermined header information or the like to the data.
  • the multiplexing / demultiplexing unit (MUX DMUX) 1518 not only divides one data into a plurality of data but also adds predetermined header information or the like to each divided data. it can.
  • the multiplexing / demultiplexing unit (MUX DMUX) 1518 can convert the data format by multiplexing / demultiplexing.
  • the multiplexing / demultiplexing unit (MUX DMUX) 1518 multiplexes the bitstream, thereby transporting the transport stream, which is a bit stream in a transfer format, or data in a file format for recording (file data).
  • the transport stream which is a bit stream in a transfer format, or data in a file format for recording (file data).
  • file data file format for recording
  • the network interface 1519 is an interface for a broadband modem 1333, connectivity 1321 (both of which are shown in FIG. 35), and the like.
  • the video interface 1520 is an interface for, for example, the connectivity 1321 and the camera 1322 (both are FIG. 35).
  • the transport stream is transmitted to the multiplexing / demultiplexing unit (MUX DMUX) via the network interface 1519. ) 1518 to be demultiplexed and decoded by the codec engine 1516.
  • MUX DMUX multiplexing / demultiplexing unit
  • the image data obtained by decoding by the codec engine 1516 is subjected to predetermined image processing by the image processing engine 1514, subjected to predetermined conversion by the display engine 1513, and connected to, for example, the connectivity 1321 (see FIG. 35) etc., and the image is displayed on the monitor.
  • image data obtained by decoding by the codec engine 1516 is re-encoded by the codec engine 1516, multiplexed by a multiplexing / demultiplexing unit (MUX DMUX) 1518, converted into file data, and video
  • MUX DMUX multiplexing / demultiplexing unit
  • the data is output to, for example, the connectivity 1321 (FIG. 35) through the interface 1520 and recorded on various recording media.
  • encoded data file data obtained by encoding image data read from a recording medium (not shown) by the connectivity 1321 (FIG. 35) or the like is multiplexed / demultiplexed via the video interface 1520. Is supplied to a unit (MUX DMUX) 1518, demultiplexed, and decoded by the codec engine 1516. Image data obtained by decoding by the codec engine 1516 is subjected to predetermined image processing by the image processing engine 1514, subjected to predetermined conversion by the display engine 1513, and, for example, connectivity 1321 via the display interface 1512 (FIG. 35). And the image is displayed on the monitor.
  • MUX DMUX unit
  • image data obtained by decoding by the codec engine 1516 is re-encoded by the codec engine 1516, multiplexed by the multiplexing / demultiplexing unit (MUX DMUX) 1518, and converted into a transport stream,
  • MUX DMUX multiplexing / demultiplexing unit
  • the connectivity 1321 and the broadband modem 1333 are supplied via the network interface 1519 and transmitted to another device (not shown).
  • image data and other data are exchanged between the processing units in the video processor 1332 using, for example, the internal memory 1515 and the external memory 1312.
  • the power management module 1313 controls power supply to the control unit 1511, for example.
  • the present technology when the present technology is applied to the video processor 1332 configured as described above, the present technology according to each of the above-described embodiments may be applied to the codec engine 1516. That is, for example, the codec engine 1516 includes functional blocks that implement the image encoding device 101 (FIG. 12) according to the first embodiment and the image decoding device 201 (FIG. 16) according to the second embodiment. What should I do? In this way, the video processor 1332 can obtain the same effects as those described above with reference to FIGS.
  • the present technology (that is, the functions of the image encoding device and the image decoding device according to each of the above-described embodiments) may be realized by hardware such as a logic circuit or an embedded program. It may be realized by software such as the above, or may be realized by both of them.
  • the configuration of the video processor 1332 is arbitrary and may be other than the two examples described above.
  • the video processor 1332 may be configured as one semiconductor chip, but may be configured as a plurality of semiconductor chips. For example, a three-dimensional stacked LSI in which a plurality of semiconductors are stacked may be used. Further, it may be realized by a plurality of LSIs.
  • Video set 1300 can be incorporated into various devices that process image data.
  • the video set 1300 can be incorporated into the television device 900 (FIG. 27), the mobile phone 920 (FIG. 28), the recording / reproducing device 940 (FIG. 29), the imaging device 960 (FIG. 30), or the like.
  • the apparatus can obtain the same effects as those described above with reference to FIGS.
  • the video set 1300 includes, for example, terminal devices such as the personal computer 1004, the AV device 1005, the tablet device 1006, and the mobile phone 1007 in the data transmission system 1000 in FIG. 32, the broadcasting station 1101 in the data transmission system 1100 in FIG. It can also be incorporated into the terminal device 1102, the imaging device 1201 in the imaging system 1200 of FIG. 34, the scalable encoded data storage device 1202, and the like.
  • the apparatus can obtain the same effects as those described above with reference to FIGS. Furthermore, it can also be incorporated into each device in the content reproduction system of FIG. 38 and the wireless communication system of FIG.
  • each configuration of the video set 1300 described above can be implemented as a configuration to which the present technology is applied as long as it includes the video processor 1332.
  • the video processor 1332 can be implemented as a video processor to which the present technology is applied.
  • the processor or the video module 1311 indicated by the dotted line 1341 can be implemented as a processor or a module to which the present technology is applied.
  • the video module 1311, the external memory 1312, the power management module 1313, and the front end module 1314 can be combined and implemented as a video unit 1361 to which the present technology is applied. In any case, the same effects as those described above with reference to FIGS. 1 to 20 can be obtained.
  • any configuration including the video processor 1332 can be incorporated into various devices that process image data, as in the case of the video set 1300.
  • a video processor 1332 a processor indicated by a dotted line 1341, a video module 1311, or a video unit 1361, a television device 900 (FIG. 27), a mobile phone 920 (FIG. 28), a recording / playback device 940 (FIG. 29), Imaging device 960 (FIG. 30), terminal devices such as personal computer 1004, AV device 1005, tablet device 1006, and mobile phone 1007 in data transmission system 1000 in FIG. 32, broadcast station 1101 and terminal in data transmission system 1100 in FIG.
  • the apparatus 1102 can be incorporated into the apparatus 1102, the imaging apparatus 1201 in the imaging system 1200 of FIG. 34, the scalable encoded data storage apparatus 1202, and the like. Furthermore, it can also be incorporated into each device in the content reproduction system of FIG. 38 and the wireless communication system of FIG. Then, by incorporating any configuration to which the present technology is applied, the apparatus can obtain the same effects as those described above with reference to FIGS. 1 to 20 as in the case of the video set 1300. .
  • this technology selects and uses an appropriate one of a plurality of pieces of encoded data having different resolutions prepared in advance for each segment, for example, HTTP streaming content such as MPEG DASH to be described later
  • HTTP streaming content such as MPEG DASH to be described later
  • the present invention can also be applied to a reproduction system and a Wi-Fi standard wireless communication system.
  • FIG. 38 a basic configuration common to each of such embodiments will be described with reference to FIGS. 38 and 39.
  • FIG. 38 is an explanatory diagram showing the configuration of the content reproduction system.
  • the content reproduction system includes content servers 1610 and 1611, a network 1612, and a content reproduction device 1620 (client device).
  • the content servers 1610 and 1611 and the content playback device 1620 are connected via a network 1612.
  • the network 1612 is a wired or wireless transmission path for information transmitted from a device connected to the network 1612.
  • the network 1612 may include a public line network such as the Internet, a telephone line network, a satellite communication network, various local area networks (LAN) including Ethernet (registered trademark), a wide area network (WAN), and the like.
  • the network 1612 may include a dedicated line network such as IP-VPN (Internet Protocol-Virtual Private Network).
  • the content server 1610 encodes the content data, and generates and stores the encoded data and a data file including the meta information of the encoded data.
  • the encoded data corresponds to “mdat” and the meta information corresponds to “moov”.
  • the content data may be music data such as music, lectures and radio programs, video data such as movies, television programs, video programs, photographs, documents, pictures and charts, games and software, etc. .
  • the content server 1610 generates a plurality of data files at different bit rates for the same content.
  • the content server 1611 includes the URL information of the content server 1610 in the content playback device 1620, including information on parameters to be added to the URL by the content playback device 1620. Send.
  • the matter will be specifically described with reference to FIG.
  • FIG. 39 is an explanatory diagram showing a data flow in the content reproduction system of FIG.
  • the content server 1610 encodes the same content data at different bit rates, and generates, for example, a 2 Mbps file A, a 1.5 Mbps file B, and a 1 Mbps file C as shown in FIG. In comparison, file A has a high bit rate, file B has a standard bit rate, and file C has a low bit rate.
  • the encoded data of each file is divided into a plurality of segments.
  • the encoded data of file A is divided into segments “A1”, “A2”, “A3”,... “An”
  • the encoded data of file B is “B1”, “B2”, “B3”,... “Bn” is segmented
  • the encoded data of file C is segmented as “C1”, “C2”, “C3”,. .
  • Each segment consists of one or more video encoded data and audio encoded data that can be reproduced independently, starting with an MP4 sync sample (for example, IDR-picture for AVC / H.264 video encoding). It may be constituted by. For example, when video data of 30 frames per second is encoded by a GOP (Group of Picture) having a fixed length of 15 frames, each segment is 2 seconds worth of video and audio encoded data corresponding to 4 GOPs. Alternatively, it may be video and audio encoded data for 10 seconds corresponding to 20 GOP.
  • an MP4 sync sample for example, IDR-picture for AVC / H.264 video encoding.
  • GOP Group of Picture
  • each segment is 2 seconds worth of video and audio encoded data corresponding to 4 GOPs.
  • it may be video and audio encoded data for 10 seconds corresponding to 20 GOP.
  • the playback range (the range of time position from the beginning of the content) by the segments with the same arrangement order in each file is the same.
  • the playback ranges of the segment “A2”, the segment “B2”, and the segment “C2” are the same and each segment is encoded data for 2 seconds
  • the segment “A2”, the segment “B2”, and The playback range of the segment “C2” is 2 to 4 seconds for the content.
  • the content server 1610 When the content server 1610 generates the file A to the file C composed of such a plurality of segments, the content server 1610 stores the file A to the file C. Then, as shown in FIG. 39, the content server 1610 sequentially transmits segments constituting different files to the content reproduction device 1620, and the content reproduction device 1620 performs streaming reproduction of the received segment.
  • the content server 1610 transmits a playlist file (MPD: MediaMPPresentation Description) including the bit rate information and access information of each encoded data to the content playback device 1620, and the content playback device 1620. Selects one of a plurality of bit rates based on the MPD, and requests the content server 1610 to transmit a segment corresponding to the selected bit rate.
  • MPD MediaMPPresentation Description
  • FIG. 40 is an explanatory diagram showing a specific example of MPD.
  • MPD includes access information regarding a plurality of encoded data having different bit rates (BANDWIDTH).
  • BANDWIDTH bit rates
  • the MPD shown in FIG. 40 indicates that each encoded data of 256 Kbps, 1.024 Mbps, 1.384 Mbps, 1.536 Mbps, and 2.048 Mbps exists, and includes access information regarding each encoded data.
  • the content playback device 1620 can dynamically change the bit rate of encoded data to be streamed based on the MPD.
  • FIG. 38 shows a mobile terminal as an example of the content playback device 1620
  • the content playback device 1620 is not limited to such an example.
  • the content playback device 1620 is an information processing device such as a PC (Personal Computer), a home video processing device (DVD recorder, VCR, etc.), a PDA (Personal Digital Assistant), a home game device, or a home appliance.
  • the content playback device 1620 may be an information processing device such as a mobile phone, a PHS (Personal Handyphone System), a portable music playback device, a portable video processing device, or a portable game device.
  • FIG. 41 is a functional block diagram showing the configuration of the content server 1610. As illustrated in FIG. 41, the content server 1610 includes a file generation unit 1631, a storage unit 1632, and a communication unit 1633.
  • the file generation unit 1631 includes an encoder 1641 that encodes content data, and generates a plurality of encoded data having the same content and different bit rates, and the MPD described above. For example, when generating each encoded data of 256 Kbps, 1.024 Mbps, 1.384 Mbps, 1.536 Mbps, and 2.048 Mbps, the file generation unit 1631 generates an MPD as shown in FIG.
  • the storage unit 1632 stores a plurality of encoded data and MPD having different bit rates generated by the file generation unit 1631.
  • the storage unit 1632 may be a storage medium such as a nonvolatile memory, a magnetic disk, an optical disk, and an MO (Magneto-Optical) disk.
  • Non-volatile memory includes, for example, EEPROM (Electrically Erasable Programmable Read-Only ⁇ Memory) and EPROM (Erasable Programmable ROM).
  • Examples of the magnetic disk include a hard disk and a disk type magnetic disk.
  • Examples of the optical disc include CD (Compact Disc), DVD-R (Digital Versatile Disc Recordable), and BD (Blu-Ray Disc (registered trademark)).
  • the communication unit 1633 is an interface with the content reproduction device 1620 and communicates with the content reproduction device 1620 via the network 1612. More specifically, the communication unit 1633 has a function as an HTTP server that communicates with the content reproduction device 1620 according to HTTP. For example, the communication unit 1633 transmits the MPD to the content reproduction device 1620, extracts encoded data requested from the content reproduction device 1620 based on the MPD according to HTTP from the storage unit 1632, and transmits the encoded data to the content reproduction device 1620 as an HTTP response. Transmit encoded data.
  • FIG. 42 is a functional block diagram showing the configuration of the content reproduction apparatus 1620.
  • the content reproduction device 1620 includes a communication unit 1651, a storage unit 1652, a reproduction unit 1653, a selection unit 1654, and a current location acquisition unit 1656.
  • the communication unit 1651 is an interface with the content server 1610, requests data from the content server 1610, and acquires data from the content server 1610. More specifically, the communication unit 1651 has a function as an HTTP client that communicates with the content reproduction device 1620 according to HTTP. For example, the communication unit 1651 can selectively acquire an MPD or encoded data segment from the content server 1610 by using HTTP Range.
  • the storage unit 1652 stores various information related to content reproduction. For example, the segments acquired from the content server 1610 by the communication unit 1651 are sequentially buffered. The segments of the encoded data buffered in the storage unit 1652 are sequentially supplied to the reproduction unit 1653 by FIFO (First In First Out).
  • FIFO First In First Out
  • the storage unit 1652 adds a parameter to the URL by the communication unit 1651 based on an instruction to add a parameter to the URL of the content described in the MPD requested from the content server 1611 described later, and accesses the URL.
  • the definition to do is memorized.
  • the playback unit 1653 sequentially plays back the segments supplied from the storage unit 1652. Specifically, the playback unit 1653 performs segment decoding, DA conversion, rendering, and the like.
  • the selection unit 1654 sequentially selects, in the same content, which segment of the encoded data to acquire corresponding to which bit rate included in the MPD. For example, when the selection unit 1654 sequentially selects the segments “A1”, “B2”, and “A3” according to the bandwidth of the network 1612, the communication unit 1651 causes the segment “A1” from the content server 1610 as illustrated in FIG. ”,“ B2 ”, and“ A3 ”are acquired sequentially.
  • the current location acquisition unit 1656 acquires the current position of the content playback device 1620, and may be configured with a module that acquires the current location, such as a GPS (Global Positioning System) receiver.
  • the current location acquisition unit 1656 may acquire the current position of the content reproduction device 1620 using a wireless network.
  • FIG. 43 is an explanatory diagram showing a configuration example of the content server 1611. As shown in FIG. 43, the content server 1611 includes a storage unit 1671 and a communication unit 1672.
  • the storage unit 1671 stores the MPD URL information.
  • the MPD URL information is transmitted from the content server 1611 to the content reproduction device 1620 in response to a request from the content reproduction device 1620 that requests content reproduction.
  • the storage unit 1671 stores definition information when the content playback device 1620 adds a parameter to the URL described in the MPD.
  • the communication unit 1672 is an interface with the content reproduction device 1620 and communicates with the content reproduction device 1620 via the network 1612. That is, the communication unit 1672 receives an MPD URL information request from the content reproduction device 1620 that requests content reproduction, and transmits the MPD URL information to the content reproduction device 1620.
  • the MPD URL transmitted from the communication unit 1672 includes information for adding a parameter by the content reproduction device 1620.
  • the parameters added to the MPD URL by the content playback device 1620 can be variously set by definition information shared by the content server 1611 and the content playback device 1620. For example, information such as the current position of the content playback device 1620, the user ID of the user who uses the content playback device 1620, the memory size of the content playback device 1620, the storage capacity of the content playback device 1620, and the like. Can be added to the MPD URL.
  • the encoder 1641 of the content server 1610 has the function of the image encoding device 101 (FIG. 12) according to the above-described embodiment. Further, the playback unit 1653 of the content playback device 1620 has the function of the image decoding device 201 (FIG. 16) according to the above-described embodiment. Thereby, it is possible to improve the encoding efficiency of intra prediction when the format of the color difference signal in the image is 4: 2: 2.
  • Examples of Wi-Fi standard wireless communication systems> [Example of basic operation of wireless communication device] A basic operation example of a wireless communication device in a wireless communication system to which the present technology can be applied will be described.
  • wireless packet transmission / reception is performed until a specific application is operated after establishing a P2P (Peer-to-Peer) connection.
  • P2P Peer-to-Peer
  • wireless packet transmission / reception is performed from the time when the specific application to be used is specified until the P2P connection is established and the specific application is operated. Thereafter, after connection in the second layer, radio packet transmission / reception is performed when a specific application is started.
  • [Communication example at the start of specific application operation] 44 and 45 are examples of wireless packet transmission / reception from the establishment of the above-described P2P (Peer to Peer) connection to operation of a specific application, and an example of communication processing by each device serving as the basis of wireless communication is shown. It is a sequence chart. Specifically, an example of a procedure for establishing a direct connection leading to a connection based on the Wi-Fi Direct (Direct) standard (sometimes referred to as Wi-Fi P2P) standardized by the Wi-Fi Alliance is shown.
  • Direct Wi-Fi Direct
  • Wi-Fi Direct multiple wireless communication devices detect each other's presence (Device Discovery, Service Discovery).
  • WPS Wi-Fi Protected Setup
  • Wi-Fi Direct a communication group is formed by determining whether a plurality of wireless communication devices play a role as a parent device (Group Owner) or a child device (Client).
  • some packet transmission / reception is omitted.
  • packet exchange for using WPS is necessary, and packet exchange is also necessary for exchange of Authentication Request / Response.
  • FIG. 44 and FIG. 45 illustration of these packet exchanges is omitted, and only the second and subsequent connections are shown.
  • 44 and 45 show an example of communication processing between the first wireless communication device 1701 and the second wireless communication device 1702, but the same applies to communication processing between other wireless communication devices.
  • Device Discovery is performed between the first wireless communication device 1701 and the second wireless communication device 1702 (1711).
  • the first wireless communication device 1701 transmits a Probe request (response request signal) and receives a Probe response (response signal) for the Probe request from the second wireless communication device 1702.
  • the first wireless communication device 1701 and the second wireless communication device 1702 can discover each other's presence.
  • Device Discovery can acquire the device name and type (TV, PC, smartphone, etc.) of the other party.
  • Service Discovery is performed between the first wireless communication device 1701 and the second wireless communication device 1702 (1712).
  • the first wireless communication device 1701 transmits a Service Discovery Query that inquires about the service supported by the second wireless communication device 1702 discovered by Device Discovery.
  • the first wireless communication device 1701 receives a Service Discovery Response from the second wireless communication device 1702, thereby acquiring a service supported by the second wireless communication device 1702.
  • a service or the like that can be executed by the other party can be acquired by Service Discovery.
  • Services that can be executed by the other party are, for example, service and protocol (DLNA (Digital Living Network Alliance) DMR (Digital Media Renderer), etc.).
  • DLNA Digital Living Network Alliance
  • DMR Digital Media Renderer
  • connection partner selection operation (connection partner selection operation) is performed by the user (1713).
  • This connection partner selection operation may occur only in one of the first wireless communication device 1701 and the second wireless communication device 1702.
  • a connection partner selection screen is displayed on the display unit of the first wireless communication device 1701, and the second wireless communication device 1702 is selected as a connection partner on the connection partner selection screen by a user operation.
  • Group Owner Negotiation is performed between the first wireless communication device 1701 and the second wireless communication device 1702 (1714).
  • 44 and 45 show an example in which the first wireless communication device 1701 becomes a group owner (Group Owner) 1715 and the second wireless communication device 1702 becomes a client 1716 based on the result of Group Owner Negotiation.
  • L2 (second layer) link establishment
  • Secure link establishment (1718)
  • L4 setup (1720) on L3 by IP ⁇ Address Assignment (1719), SSDP (Simple Service Discovery Protocol) or the like is sequentially performed.
  • L2 (layer2) means the second layer (data link layer)
  • L3 (layer3) means the third layer (network layer)
  • L4 (layer4) means the fourth layer (transport layer) ).
  • the user designates or activates a specific application (application designation / activation operation) (1721).
  • This application designation / activation operation may occur only in one of the first wireless communication device 1701 and the second wireless communication device 1702.
  • an application designation / startup operation screen is displayed on the display unit of the first wireless communication apparatus 1701, and a specific application is selected by a user operation on the application designation / startup operation screen.
  • connection between AP (Access Point) and STA (Station) is performed within the scope of the specifications before Wi-Fi Direct (standardized by IEEE802.11).
  • Wi-Fi Direct standardized by IEEE802.11.
  • connection partner when searching for a connection candidate partner in Device Discovery or Service Discovery (option), information on the connection partner can be acquired.
  • the information of the connection partner is, for example, a basic device type, a corresponding specific application, or the like. And based on the acquired information of a connection other party, a user can be made to select a connection other party.
  • FIG. 46 shows a configuration example of a frame format (frame ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ format) transmitted and received in this communication process.
  • FIG. 46 is a diagram schematically illustrating a configuration example of a frame format transmitted and received in communication processing by each device that is the basis of the present technology. That is, FIG. 46 shows a configuration example of a MAC frame for establishing a connection in the second layer. Specifically, it is an example of a frame format of Association Request / Response (1787) for realizing the sequence shown in FIG.
  • the MAC frame shown in FIG. 46 is basically the Association Request / Response frame format described in sections 7.2.3.4 and 7.2.3.5 of the IEEE802.11-2007 specification. However, the difference is that it includes not only Information (Element (hereinafter abbreviated as IE) defined in the IEEE802.11 specification but also its own extended IE.
  • IE Information
  • IE Type Information Element ID (1761)
  • Length field (1762) and the OUI field (1763) follow, followed by vendor specific content (1764).
  • Vendor specific content a field indicating the type of vendor specific IE (IE type (1765)) is first provided. Then, it is conceivable that a plurality of subelements (1766) can be stored thereafter.
  • the contents of the subelement (1766) include the name (1767) of a specific application to be used and the role of the device (1768) when the specific application is operating.
  • information such as a port number used for the control of a specific application (information for L4 setup) (1769) and information about Capability (Capability information) in the specific application may be included.
  • the Capability information is information for specifying, for example, that audio transmission / reproduction is supported, video transmission / reproduction, and the like when the specific application to be specified is DLNA.
  • 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.
  • a code number assigning unit that switches the code number assignment in the intra prediction mode according to whether the format of the color difference signal in the image is 4: 2: 2;
  • An intra prediction unit that generates a prediction image of the prediction block of the color difference signal based on the code number assignment switched by the code number assignment unit;
  • An image encoding device comprising: an encoding unit that encodes using a prediction image generated by the intra prediction unit and generates a bitstream.
  • the code number assigning unit switches code number assignment in the intra prediction mode according to a value of chroma_format_idc in SPS (Sequence Parameter Set).
  • the encoding unit performs Golomb encoding on a code number of an intra prediction mode to which the prediction image generated by the intra prediction unit corresponds.
  • the image encoding device is Depending on whether the format of the color difference signal of the image is 4: 2: 2, switch the code number assignment of the intra prediction mode, Based on the switched code number assignment, generate a prediction image of the prediction block of the color difference signal, An image encoding method for generating a bitstream by encoding using a generated predicted image.
  • a decoding unit that decodes the bitstream and generates an image
  • a code number assigning unit that switches the code number assignment of the intra prediction mode according to whether or not the format of the color difference signal of the input image corresponding to the image generated by the decoding unit is 4: 2: 2.
  • An image decoding apparatus comprising: an intra prediction unit configured to generate a prediction image of a prediction block of the color difference signal based on the code number assignment switched by the code number assignment unit.
  • the code number assigning unit switches code number assignment in the intra prediction mode according to a value of chroma_format_idc in SPS (Sequence Parameter Set).
  • the decoding unit decodes the code number of the intra prediction mode that is Golomb encoded, The intra prediction unit generates a prediction image of the prediction block of the color difference signal based on the intra prediction mode of the code number decoded by the decoding unit and the code number allocation switched by the code number allocation unit.
  • the image decoding device according to any one of (8) to (12).
  • the image decoding device Decode the bitstream to generate an image, Depending on whether the format of the color difference signal of the input image corresponding to the generated image is 4: 2: 2, switch the code number assignment of the intra prediction mode, An image decoding method for generating a prediction image of a prediction block of the color difference signal based on the switched code number assignment.

Landscapes

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

Abstract

 本開示は、画像における色差信号のフォーマットが4:2:2の場合のイントラ予測の符号化効率を向上させることができるようにする画像符号化装置および方法、並びに画像復号装置および方法に関する。 カラーフォーマット判別部は、SPSのchroma_format_idcに関する情報を参照して、入力画像の色差信号フォーマットが4:2:2に関するものであるのか否かの判定結果に応じた制御信号をコードナンバ割当部に出力する。コードナンバ割当部は、カラーフォーマット判別部からの制御信号に応じて、デフォルト用と4:2:2用の各コードナンバ割当に関する情報が格納されているバッファのどちらか一方のバッファからコードナンバ割当に関する情報を読み出す。読み出したコードナンバ割当に関する情報は、イントラ予測部に供給される。本開示は、例えば、画像処理装置に適用することができる。

Description

画像符号化装置および方法、並びに画像復号装置および方法
 本開示は画像符号化装置および方法、並びに画像復号装置および方法に関し、特に、画像における色差信号のフォーマットが4:2:2の場合のイントラ予測の符号化効率を向上させることができるようにした画像符号化装置および方法、並びに画像復号装置および方法に関する。
 近年、画像情報をデジタルとして取り扱い、その際、効率の高い情報の伝送、蓄積を目的とし、画像情報特有の冗長性を利用して、離散コサイン変換等の直交変換と動き補償により圧縮する符号化方式を採用して画像を圧縮符号する装置が普及しつつある。この符号化方式には、例えば、MPEG(Moving Picture Experts Group)やH.264及びMPEG-4 Part10 (Advanced Video Coding、以下 AVCと記す)などがある。
 そして、現在、H.264/AVCより更なる符号化効率の向上を目的として、ITU-TとISO/IECとの共同の標準化団体であるJCTVC (Joint Collaboration Team - Video Coding) により、HEVC (High Efficiency Video Coding) と呼ばれる符号化方式の標準化が進められている(非特許文献1)。
 ところで、これまでのAVCにおいては、イントラ4×4予測、イントラ8×8予測、並びに、イントラ16×16予測が存在するのに対し、HEVCにおいては、4×4乃至64×64画素ブロックについて、アングラ(Angular)予測が適用される。さらに、HEVCにおいては、プラナー(Planar)予測が規定されている。
 また、HEVCにおいては、イントラ予測モード符号化方法として、3つのモーストプロバブルモード(MostProbableMode)が用いられている。
 ところで、HEVCにおいては、色差信号に対するイントラ予測モードとして、0=Planar予測、1=Horizonical予測、2=vertical予測、3=DC予測、4=輝度信号イントラ予測モードの色差信号への適用、といったようにモード番号が割り当てられている。小さいモード番号ほど、より小さなコードナンバが割り当てられている。
 なお、HEVC Version1においては、入力信号が8ビットもしくは10ビット、4:2:0信号に限定されていた。
  これを、4:2:2、4:4:4やRGBといった色差信号フォーマットや、より大きなビット深度に対応させるための標準化が、非特許文献2において提案されている方法をベースにしてHEVC Version2として進められている。
Benjamin Bross,Gary J. Sullivan,Ye-Kui Wang,"Editors' proposed corrections to HEVC version 1"JCTVC-MO0432,2013,April P. Silcock, K. Sharman,N. Saunders, J. Gamei,Sony BPRL,"Extension of HM7 to Support Additional Chroma Formats",JCTVC-J0191,2012,7,25
 ここで、入力信号が4:2:2の場合、色差信号のPUは、縦長の長方形の形状となる。このとき、Horizontal予測における予測元画素値および予測先画素値間の距離と、Vertical予測における予測元画素値および予測先画素値間の距離とでは、Vertical予測の場合が遠くなり、予測効率が低くなる。
 しかしながら、符号化の際には、Vertical予測に対してより小さなコードナンバが割り当てられており、出力となる画像圧縮情報の符号化効率を低下させてしまっていた。
 本開示は、このような状況に鑑みてなされたものであり、画像における色差信号のフォーマットが4:2:2の場合のイントラ予測の符号化効率を向上させることができるものである。
 本開示の一側面の画像符号化装置は、画像における色差信号のフォーマットが4:2:2であるか否かに応じて、イントラ予測モードのコードナンバ割当を切り替えるコードナンバ割当部と、前記コードナンバ割当部により切り替えられたコードナンバ割当に基づいて、前記色差信号の予測ブロックの予測画像を生成するイントラ予測部と、前記イントラ予測部により生成された予測画像を用いて符号化し、ビットストリームを生成する符号化部とを備える。
 前記コードナンバ割当部は、SPS(Sequence Parameter Set)におけるchroma_format_idcの値に応じて、前記イントラ予測モードのコードナンバ割当を切り替えることができる。
 前記コードナンバ割当部は、前記chroma_format_idc=2であるとき、Vertical予測よりHorizontal予測に、より小さなコードナンバを割り当てるように設定されたコードナンバ割当に切り替えることができる。
 前記コードナンバ割当部は、前記chroma_format_idc=2であるとき、Vertical予測よりDC予測に、より小さなコードナンバを割り当てるように設定されたコードナンバ割当に切り替えることができる。
 前記コードナンバ割当部は、前記chroma_format_idc=2であるとき、0=Planar予測、1=Horizontal予測、2=DC予測、3=Vertical予測、4=輝度信号イントラ予測モードに設定されたコードナンバ割当に切り替えることができる。
 前記符号化部は、前記イントラ予測部により生成された予測画像が対応するイントラ予測モードのコードナンバをGolomb符号化することができる。
 本開示の一側面の画像符号化方法は、画像符号化装置が、画像の色差信号のフォーマットが4:2:2であるか否かに応じて、イントラ予測モードのコードナンバ割当を切り替え、切り替えられたコードナンバ割当に基づいて、前記色差信号の予測ブロックの予測画像を生成し、生成された予測画像を用いて符号化し、ビットストリームを生成する。
 本開示の他の側面の画像復号装置は、ビットストリームを復号して、画像を生成する復号部と、前記復号部により生成された画像に対応する入力画像の色差信号のフォーマットが4:2:2であるか否かに応じて、イントラ予測モードのコードナンバ割当を切り替えるコードナンバ割当部と、前記コードナンバ割当部により切り替えられたコードナンバ割当に基づいて、前記色差信号の予測ブロックの予測画像を生成するイントラ予測部とを備える。
 前記コードナンバ割当部は、SPS(Sequence Parameter Set)におけるchroma_format_idcの値に応じて、前記イントラ予測モードのコードナンバ割当を切り替えることができる。
 前記コードナンバ割当部は、前記chroma_format_idc=2であるとき、Vertical予測よりHorizontal予測に、より小さなコードナンバを割り当てるように設定されたコードナンバ割当に切り替えることができる。
 前記コードナンバ割当部は、前記chroma_format_idc=2であるとき、Vertical予測よりDC予測に、より小さなコードナンバを割り当てるように設定されたコードナンバ割当に切り替えることができる。
 前記コードナンバ割当部は、前記chroma_format_idc=2であるとき、0=Planar予測、1=Horizontal予測、2=DC予測、3=Vertical予測、4=輝度信号イントラ予測モードに設定されたコードナンバ割当に切り替えることができる。
 前記復号部は、Golomb符号化されているイントラ予測モードのコードナンバを復号し、前記イントラ予測部は、前記復号部により復号されたコードナンバのイントラ予測モードと、前記コードナンバ割当部により切り替えられたコードナンバ割当とに基づいて、前記色差信号の予測ブロックの予測画像を生成することができる。
 本開示の他の側面の画像処理方法は、画像復号装置が、ビットストリームを復号して、画像を生成し、生成された画像に対応する入力画像の色差信号のフォーマットが4:2:2であるか否かに応じて、イントラ予測モードのコードナンバ割当を切り替え、切り替えられたコードナンバ割当に基づいて、前記色差信号の予測ブロックの予測画像を生成する。
  本開示の一側面においては、画像の色差信号のフォーマットが4:2:2であるか否かに応じて、イントラ予測モードのコードナンバ割当が切り替えられ、前記色差信号の予測ブロックの予測画像が前記イントラ予測モードにより生成され、切り替えられたコードナンバ割当に基づいて、前記イントラ予測モードの中から最適なイントラ予測モードが決定され、生成された予測画像を用いて符号化し、ビットストリームが生成される。
 本開示の他の側面においては、ビットストリームを復号して、画像が生成され、生成された画像に対応する入力画像の色差信号のフォーマットが4:2:2であるか否かに応じて、イントラ予測モードのコードナンバ割当が切り替えられる。そして、切り替えられたコードナンバ割当に基づいて、前記色差信号の予測ブロックの予測画像が生成される。
 なお、上述の画像符号化装置と画像復号装置は、独立した画像処理装置であっても良いし、1つの画像符号化装置または画像復号装置を構成している内部ブロックであってもよい。
 本開示の一側面によれば、画像を符号化することができる。特に、画像における色差信号のフォーマットが4:2:2の場合のイントラ予測の符号化効率を向上させることができる。
 本開示の他の側面によれば、画像を復号することができる。特に、画像における色差信号のフォーマットが4:2:2の場合のイントラ予測の符号化効率を向上させることができる。
コーディングユニットの構成例を説明する図である。 AVCおよびHEVCのイントラ予測について説明する図である。 プラナー予測について説明する図である。 イントラ予測モード符号化方式を説明する図である。 MDISについて説明する図である。 Boundry Value Smoothing処理について説明する図である。 4:2:2における色差信号のPUの例を示す図である。 シンタクスの例を示す図である。 シンタクスの例を示す図である。 chroma_format_idcのセマンテクスの例を示す図である。 Exp-Golomb符号の例を示す図である。 画像符号化装置の主な構成例を示すブロック図である。 カラーフォーマット判別部とコードナンバ割当部の主な構成例を示すブロック図である。 符号化処理の流れの例を説明するフローチャートである。 イントラ予測処理の流れの例を説明するフローチャートである。 画像復号装置の主な構成例を示すブロック図である。 カラーフォーマット判別部とコードナンバ割当部の主な構成例を示すブロック図である。 復号処理の流れの例を説明するフローチャートである。 予測処理の流れの例を説明するフローチャートである。 イントラ予測処理の流れの例を説明するフローチャートである。 多視点画像符号化方式の例を示す図である。 本技術を適用した多視点画像符号化装置の主な構成例を示す図である。 本技術を適用した多視点画像復号装置の主な構成例を示す図である。 多視点画像符号化方式の例を示す図である。 本技術を適用した多視点画像符号化装置の主な構成例を示す図である。 本技術を適用した多視点画像復号装置の主な構成例を示す図である。 コンピュータの主な構成例を示すブロック図である。 テレビジョン装置の概略的な構成の一例を示すブロック図である。 携帯電話機の概略的な構成の一例を示すブロック図である。 記録再生装置の概略的な構成の一例を示すブロック図である。 撮像装置の概略的な構成の一例を示すブロック図である。 スケーラブル符号化利用の一例を示すブロック図である。 スケーラブル符号化利用の他の例を示すブロック図である。 スケーラブル符号化利用のさらに他の例を示すブロック図である。 ビデオセットの概略的な構成の一例を示すブロック図である。 ビデオプロセッサの概略的な構成の一例を示すブロック図である。 ビデオプロセッサの概略的な構成の他の例を示すブロック図である。 コンテンツ再生システムの構成を示した説明図である。 コンテンツ再生システムにおけるデータの流れを示した説明図である。 MPDの具体例を示した説明図である。 コンテンツ再生システムのコンテンツサーバの構成を示した機能ブロック図である。 コンテンツ再生システムのコンテンツ再生装置の構成を示した機能ブロック図である。 コンテンツ再生システムのコンテンツサーバの構成を示した機能ブロック図である。 無線通信システムの各装置による通信処理例を示すシーケンスチャートである。 無線通信システムの各装置による通信処理例を示すシーケンスチャートである。 無線通信システムの各装置による通信処理において送受信されるフレームフォーマット(frame format)の構成例を模式的に示す図である。 無線通信システムの各装置による通信処理例を示すシーケンスチャートである。
 以下、本開示を実施するための形態(以下実施の形態とする)について説明する。なお、説明は以下の順序で行う。
 0.概要
 1.第1の実施の形態(画像符号化装置)
 2.第2の実施の形態(画像復号装置)
 3.第3の実施の形態(多視点画像符号化装置、多視点画像復号装置)
 4.第4の実施の形態(階層画像符号化装置、階層画像復号装置)
 5.第5の実施の形態(コンピュータ)
 6.応用例
 7.スケーラブル符号化の応用例
  8.第6の実施の形態(セット・ユニット・モジュール・プロセッサ)
  9.MPEG-DASHのコンテンツ再生システムの応用例
  10.Wi-Fi規格の無線通信システムの応用例
<0.概要>
[符号化方式]
 以下においては、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-I000001
 ここで、Ωは、当該ブロック乃至マクロブロックを符号化するための候補モードの全体集合、Dは、当該予測モードで符号化した場合の、復号画像と入力画像の差分エネルギーである。λは、量子化パラメータの関数として与えられるLagrange未定乗数である。Rは、直交変換係数を含んだ、当該モードで符号化した場合の総符号量である。
 つまり、High Complexity Modeでの符号化を行うには、上記パラメータD及びRを算出するため、全ての候補モードにより、一度、仮エンコード処理を行う必要があり、より高い演算量を要する。
 Low Complexity Modeにおけるコスト関数は、以下の式(2)のように示される。
Figure JPOXMLDOC01-appb-I000002
 ここで、Dは、High Complexity Modeの場合と異なり、予測画像と入力画像の差分エネルギーとなる。QP2Quant(QP)は、量子化パラメータQPの関数として与えられ、HeaderBitは、直交変換係数を含まない、動きベクトルや、モードといった、Headerに属する情報に関する符号量である。
 すなわち、Low Complexity Modeにおいては、それぞれの候補モードに関して、予測処理を行う必要があるが、復号画像までは必要ないため、符号化処理まで行う必要はない。このため、High Complexity Modeより低い演算量での実現が可能である。
[イントラ予測]
  HEVCにおいて定められているイントラ予測方式について述べる。
  AVCにおいては、イントラ4×4予測、イントラ8×8予測、並びに、イントラ16×16予測が存在するのに対し、HEVCにおいては、4×4乃至64×64画素ブロックについて、図2に示されるようなアングラ(Angular)予測が適用される。
  すなわち、AVCにおいては、図2のAに示されるように、8方向+直流(DC)予測によりイントラ予測が行われている。これに対して、HEVCにおいては、図2のBに示されるように、32方向+直流(DC)予測によりイントラ予測が行われている。HEVCにおいては、これにより予測精度を向上させている。
  また、HEVCにおいては、図3に示されるようなプラナー(Planar)予測が規定されている。すなわち、プラナー予測処理においては、既に符号化済みの隣接画素から、バイリニアインターポーレーション(bi-linear interpolation)により符号化ブロックに含まれる予測画素の生成が行われる。プラナー予測は、例えば、グラデーションのあるような領域の符号化効率を向上させる。
[イントラ予測モードの符号化方式]
 次に、HEVCにおけるイントラ予測モード符号化方式について述べる。HEVCにおいては、図4に示されるように、3つのモーストプロバブルモード(MostProbableMode)を用いたイントラ予測モードの符号化処理が行われている。
 すなわち、この方式においては、Abobe,Leftから、3つの候補イントラ予測モードの生成が行われる。3つ目の候補モードは、1つ目(Abobeにおけるイントラ予測モード)と、2つ目(Leftにおけるイントラ予測モード)の組み合わせにより決定される。また、AbobeとLeftが同一モードの場合、異なるモードを候補とすることにより、符号化効率が向上される。
 当該ブロックの予測モードとモーストプロバブルモードのどれかが同一である場合、そのインデックス番号が、出力となる画像圧縮情報内に伝送される。当該ブロックの予測モードとモーストプロバブルモードのどれかが同一ではない場合、予測ブロックのモード情報が5ビットの固定長により伝送される。
 また、図5を参照して、HEVCの符号化方式において規定されているMDIS(Mode Dependent Intra Smoothing)について説明する。AVCの符号化方式の場合も、イントラ8×8予測モードにおいては、隣接画素に対して、図5に示されるように、[1 2 1]/4フィルタ処理が行われていた。
 これに対して、HEVCにおいては、次に述べるように、ブロックサイズと予測モードとに応じて、このフィルタ処理のon/offが決定される。すなわち、ブロックサイズが4×4のときには、このフィルタ処理は適用されない。ブロックサイズが8×8のときには、45度方向の予測モードに対してのみこのフィルタ処理が適用される。
  ブロックサイズが16×16のときには、Horizontalに近い3方向、およびVerticalに近い3方向以外に対して、このフィルタ処理が適用される。ブロックサイズが32×32のときには、HorizontalおよびVertical以外のモードに対して、このフィルタ処理が適用される。
 さらに、HEVCにおいては、図6に示されるようなBoundry Value Smoothing処理が規定されている。すなわち、ブロック境界とその隣接画素に対して、Boundry Value Smoothing処理として、[1 3]/4フィルタ処理が行われる。なお、この処理は、予測モードがDC,Horizontal,Verticalである場合のブロック歪みの低減を目的としている。
  具体的には、DC予測の場合、TopおよびLeftの両方の隣接画素に対して、Boundry Value Smoothing処理が行われる。Horizontal予測の場合、Topの隣接画素に対して、Boundry Value Smoothing処理が行われる。Vertical予測の場合、Leftの隣接画素に対して、Boundry Value Smoothing処理が行われる。
[コードナンバの割り当て]
 ところで、HEVCにおいては、色差信号に対するイントラ予測モードとして、0=Planar予測、1=vertical予測、2= Horizontal予測、3=DC予測、4=輝度信号イントラ予測モードの色差信号への適用、といったようにモード番号が割り当てられている。小さいモード番号ほど、より小さなコードナンバが割り当てられている。
 なお、HEVC Version1においては、入力信号が8ビットもしくは10bit、4:2:0信号に限定されていた。
  これを、4:2:2、4:4:4やRGBといった色差信号フォーマットや、より大きなビット深度に対応させるための標準化が、非特許文献2において提案されている方法をベースにしてHEVC Version2として進められている。
  ここで、入力信号が4:2:2の場合、色差信号のPUは、図7に示されるように、縦長の長方形の形状となる。このとき、Horizontal予測は、図7のAに示されるような横方向の予測方法となる。これに対して、Vertical予測は、図7のBに示されるような縦方向の予測方法となる。
  したがって、Horizontal予測における予測元画素値および予測先画素値間の距離と、Vertical予測における予測元画素値および予測先画素値間の距離とでは、Vertical予測の場合が遠くなり、予測効率が低くなる。
 しかしながら、符号化の際には、Vertical予測に対してより小さなコードナンバが割り当てられており、出力となる画像圧縮情報の符号化効率を低下させてしまっていた。
  そこで、本技術においては、入力画像フォーマットが4:2:2に応じたイントラ予測モードのコードナンバが割り当てられる。
 なお、特開2013-012995号公報には、予測ブロックの形状に応じて、イントラ予測に関する情報の符号化方法を制御することが提案されていた。しかしながら、この提案においては、本技術が特徴とするところの入力画像フォーマットが4:2:2である場合に関することについて一切記載されていない。
[本技術の動作原理]
  図8および図9は、SPS(Sequence Parameter Set)のシンタクスの例を示す図である。
  本技術においては、まず、図8に示されるように、SPSにおけるchroma_format_idc(ハッチング部分)により、入力画像の色差信号フォーマットの判定が行われる。図10に示されるchroma_format_idcのセマンテクスにおいては、chroma_format_idc=0がmonochrome、chroma_format_idc=0が4:2:0、chroma_format_idc=2が4:2:2、chroma_format_idc=3が4:4:4が規定されている。すなわち、chroma_format_idcは、入力画像の色差信号フォーマットを示す情報である。
  判定の結果、chroma_format_idc=2のとき、すなわち、4:2:2の色差信号フォーマットであるとき、以下に述べるように色差信号のイントラ予測モードに対するコードナンバの割当の入れ替えが行われる。
 例えば、上述したように、4:2:2の色差信号フォーマットであるとき、Vertical予測より、Horizontal予測がより小さなコードナンバとなるようなコードナンバ割当に入れ替えられる。
 また、DC予測は、入力信号が4:2:2であるとき、図7のAおよび図7のBに示されたHorizontal予測とVertical予測の間の符号化効率を実現すると考えられるため、本技術による例のように、DC予測をVertical予測より小さなコードナンバにより符号化される。
  具体的には、0=Planar予測、1=Horizontal予測、2=DC予測、3=Vertical予測、4=輝度信号イントラ予測モードの色差信号への適用といったように、Vertical予測よりHorizontal予測に対してより小さなコードナンバを割り当てるように、コードナンバが入れ替える。
  その際、HEVCにおいては、図11に示されるExp-Golomb符号に基づいて、コードナンバに対応したbit列(string)の割り当てが行われる。
 すなわち、コードナンバ0には、ビット列1が割り当てられる。コードナンバ1には、ビット列010が割り当てられる。コードナンバ2には、ビット列011が割り当てられる。コードナンバ3には、ビット列00100が割り当てられる。コードナンバ4には、ビット列00101が割り当てられる。
  コードナンバ5には、ビット列00110が割り当てられる。コードナンバ6には、ビット列00111が割り当てられる。コードナンバ7には、ビット列0001000が割り当てられる。コードナンバ8には、ビット列0001001が割り当てられる。コードナンバ9には、ビット列0001010が割り当てられる。
 本技術によるコードナンバ割当においては、horizontal予測およびDC予測に対するbit列が、予測効率が低いと想定されるVertical予測のbit列に比してより短いものとなるため、出力となる画像圧縮情報の符号化効率を向上させることができる。
 これにより、より予測効率が高く、符号化側においてより選択されやすいと考えられるモードに、より小さなコードナンバが割り当てられるので、出力となる画像圧縮情報の符号化効率を向上させることができる。
 なお、符号化に用いられるGolomb符号は、図10に示されたExp-Golomb符号に限らない。他のGolomb符号であってもよい。
 また、上記説明においては、色差フォーマットが4:2:2であるかに応じてコードナンバ割当の入れ替えを行う例を説明した。これに対して、例えば、色差フォーマットが4:2:2であって、かつ、色差信号の予測ブロックの形状が縦長であるか否かを判定し、そうである場合に、コードナンバ割当の入れ替えを行うようにしてもよい。
  次に、以上のような本技術について、具体的な装置への適用例について説明する。
  <1.第1の実施の形態>
[画像符号化装置]
  図12は、画像符号化装置の主な構成例を示すブロック図である。なお、以下、動きベクトル情報を、適宜動き情報とも称して説明する。
  図12に示される画像符号化装置101は、画像データを符号化する画像情報処理装置である。図12の例において、画像符号化装置101は、A/D変換部111、画面並べ替えバッファ112、演算部113、直交変換部114、量子化部115、可逆符号化部116、蓄積バッファ117、逆量子化部118、および逆直交変換部119を有する。画像符号化装置101は、演算部120、デブロッキングフィルタ121、フレームメモリ122、選択部123、イントラ予測部124、動き予測・補償部125、予測画像選択部126、およびレート制御部127を有する。
  また、画像符号化装置101は、デブロッキングフィルタ121とフレームメモリ122との間に、適応オフセットフィルタ128を有する。さらに、画像符号化装置101は、カラーフォーマット判別部131およびコードナンバ割当部132を有する。
  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は、生成されたSPSのうち、入力画像の色差信号フォーマットを示す情報であるchroma_format_idcに関する情報を、カラーフォーマット判別部131に供給する。
  可逆符号化部116は、これらの各種情報を任意の符号化方式で符号化し、符号化データ(符号化ストリームとも称する)の一部とする(多重化する)。なお、HEVCにおいては、イントラ予測モードに対するコードナンバは、図11を参照して上述したGromb符号化される。可逆符号化部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は、フィルタ処理が施された画像を、適応オフセットフィルタ128に供給する。
 適応オフセットフィルタ128は、デブロッキングフィルタ121からのデブロックフィルタ処理結果(ブロック歪みの除去が行われた再構成画像)に対して、主にリンギングを除去する適応オフセットフィルタ(SAO: Sample adaptive offset)処理を行う。
 より詳細には、適応オフセットフィルタ128は、最大の符号化単位であるLCU(Largest Coding Unit)ごとに適応オフセットフィルタ処理の種類を決定し、その適応オフセットフィルタ処理で用いられるオフセットを求める。適応オフセットフィルタ128は、求められたオフセットを用いて、適応デブロックフィルタ処理後の画像に対して、決定された種類の適応オフセットフィルタ処理を行う。そして、適応オフセットフィルタ128は、適応オフセットフィルタ処理後の画像(以下、復号画像と称する)をフレームメモリ122に供給する。
  なお、デブロッキングフィルタ121および適応オフセットフィルタ128は、必要に応じて、フィルタ処理に用いたフィルタ係数等の情報を可逆符号化部116に供給し、それを符号化させるようにすることもできる。また、適応オフセットフィルタ128の後段に、適応ループフィルタを備えるようにしてもよい。
  フレームメモリ122は、演算部120から供給される再構成画像と、適応オフセットフィルタ128から供給される復号画像とをそれぞれ記憶する。フレームメモリ122は、所定のタイミングにおいて、若しくは、イントラ予測部124等の外部からの要求に基づいて、記憶している再構成画像を、選択部123を介してイントラ予測部124に供給する。また、フレームメモリ122は、所定のタイミングにおいて、若しくは、動き予測・補償部125等の外部からの要求に基づいて、記憶している復号画像を、選択部123を介して、動き予測・補償部125に供給する。
  フレームメモリ122は、供給される復号画像を記憶し、所定のタイミングにおいて、記憶している復号画像を参照画像として、選択部123に供給する。
  選択部123は、フレームメモリ122から供給される参照画像の供給先を選択する。例えば、イントラ予測の場合、選択部123は、フレームメモリ122から供給される参照画像(カレントピクチャ内の画素値)を動き予測・補償部125に供給する。また、例えば、インター予測の場合、選択部123は、フレームメモリ122から供給される参照画像を動き予測・補償部125に供給する。
  イントラ予測部124は、選択部123を介してフレームメモリ122から供給される参照画像であるカレントピクチャ内の画素値を用いて予測画像を生成するイントラ予測(画面内予測)を行う。イントラ予測部124は、予め用意された複数のイントラ予測モードでこのイントラ予測を行う。
  イントラ予測部124は、候補となる全てのイントラ予測モードで予測画像を生成する。また、イントラ予測部124は、画面並べ替えバッファ112から供給される入力画像を用いて各予測画像のコスト関数値を評価し、最適なモードを選択する。イントラ予測部124は、最適なイントラ予測モードを選択すると、その最適なモードで生成された予測画像を、予測画像選択部126に供給する。
  このとき、イントラ予測部124は、色差信号については、特に、コードナンバ割当部132からのコードナンバ割当に関する情報を参照して、画面並べ替えバッファ112から供給される入力画像を用いて各予測画像のコスト関数値を評価する。すなわち、イントラ予測部124は、コードナンバ割当部132からのコードナンバ割当に関する情報に基づいて、色差信号の予測ブロックの予測画像を生成する。
  また、上述したように、イントラ予測部124は、採用されたイントラ予測モードを示すイントラ予測モード情報等を、適宜可逆符号化部116に供給し、符号化させる。
  動き予測・補償部125は、画面並べ替えバッファ112から供給される入力画像と、選択部123を介してフレームメモリ122から供給される参照画像とを用いて動き予測(インター予測)を行う。動き予測・補償部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の量子化動作のレートを制御する。
  カラーフォーマット判別部131は、可逆符号化部116から供給されるchroma_format_idcに関する情報を参照して、入力画像の色差信号フォーマットが4:2:2に関するものであるのか否かを判定する。カラーフォーマット判別部131は、その判定結果に応じた制御信号を、コードナンバ割当部132に出力する。
 コードナンバ割当部132は、デフォルト用と4:2:2用の各コードナンバ割当に関する情報が格納されているバッファを有している。コードナンバ割当部132は、カラーフォーマット判別部131からの制御信号に応じて、どちらか一方のバッファからコードナンバ割当に関する情報を読み出し、読み出したコードナンバ割当に関する情報を、イントラ予測部124に供給する。
[カラーフォーマット判別部およびコードナンバ割当部]
  図13は、図12のカラーフォーマット判別部131およびコードナンバ割当部132の主な構成例を示すブロック図である。
  図13に示されるように、カラーフォーマット判別部131は、カラーフォーマットバッファ141および4:2:2判定部142を有する。
 コードナンバ割当部132は、4:2:2用コードナンババッファ151およびデフォルトコードナンババッファ152を有する。
 可逆符号化部116より、入力画像の色差信号フォーマットを示す情報であるchroma_format_idcに関する情報がカラーフォーマットバッファ141に供給される。カラーフォーマットバッファ141は、可逆符号化部116からのchroma_format_idcに関する情報を蓄積し、所定のタイミングで読み出し、4:2:2判定部142に供給する。
 4:2:2判定部142は、カラーフォーマットバッファ141からのchroma_format_idcに関する情報を参照して、入力画像の色差信号フォーマットが4:2:2に関するものであるのか否かを判定する。4:2:2判定部142は、その判定結果に応じて、4:2:2用コードナンババッファ151およびデフォルトコードナンババッファ152のどちらか一方に制御信号を出力する。
 すなわち、4:2:2判定部142は、入力画像の色差信号フォーマットが4:2:2に関するものと判定した場合、4:2:2用コードナンババッファ151に制御信号を出力する。また、4:2:2判定部142は、入力画像の色差信号フォーマットが4:2:2に関するものではないと判定した場合、デフォルトコードナンババッファ152に制御信号を出力する。
 4:2:2用コードナンババッファ151は、4:2:2用のコードナンバ割当に関する情報を蓄積している。4:2:2用コードナンババッファ151は、4:2:2判定部142からの制御信号を受けると、蓄積している4:2:2用のコードナンバ割当に関する情報を読み出して、イントラ予測部124に供給する。
 デフォルトコードナンババッファ152は、デフォルトのコードナンバ割当に関する情報を蓄積している。デフォルトコードナンババッファ152は、4:2:2判定部142からの制御信号を受けると、蓄積しているデフォルトのコードナンバ割当に関する情報を読み出して、イントラ予測部124に供給する。
  4:2:2用のコードナンバ割当に関する情報は、例えば、0=Planar予測、1=Horizontal予測、2=DC予測、3=Vertical予測、4=輝度信号イントラ予測モードの色差信号への適用といった、Vertical予測よりHorizontal予測に対してより小さなコードナンバを割り当てることを示す情報である。
  これに対して、デフォルトのコードナンバ割当に関する情報は、例えば、0=Planar予測、1=Vertical予測、2=Horizontal予測、3=DC予測、4=輝度信号イントラ予測モードの色差信号への適用を示す情報である。
 イントラ予測部124は、どちらか一方のコードナンバ割当に関する情報を受けて、受けたコードナンバ割当に関する情報に応じて、コードナンバの再割当を行い、各イントラモードのコスト関数値を算出する。
[符号化処理の流れ]
  次に、以上のような画像符号化装置101により実行される各処理の流れについて説明する。最初に、図14のフローチャートを参照して、符号化処理の流れの例を説明する。画像符号化装置101は、ピクチャ毎にこの符号化処理を実行する。
  符号化処理が開始されると、ステップS121において、画像符号化装置101のA/D変換部111は入力された画像情報(画像データ)をA/D変換する。ステップS122において、画面並べ替えバッファ112は、A/D変換された画像情報(デジタルデータ)を記憶し、各ピクチャを、表示する順番から符号化する順番へ並べ替える。
  ステップS123において、イントラ予測部124は、イントラ予測モードのイントラ予測処理を行う。このイントラ予測処理の詳細は、図15を参照して後述する。イントラ予測部124においては、入力画像のカラーフォーマットに応じたコードナンバ割当によって、各イントラ予測モードのコスト関数値が算出され、最適なモードが決定される。
 ステップS124において、動き予測・補償部125は、インター予測モードでの動き予測や動き補償を行う動き予測・補償処理を行う。ステップS125において、予測画像選択部126は、イントラ予測部124および動き予測・補償部125から出力された各コスト関数値に基づいて、最適なモードを決定する。つまり、予測画像選択部126は、イントラ予測部124により生成された予測画像と、動き予測・補償部125により生成された予測画像のいずれか一方を選択する。
  ステップS126において、演算部113は、ステップS122の処理により並び替えられた画像と、ステップS125の処理により選択された予測画像との差分を演算する。差分データは元の画像データに較べてデータ量が低減される。したがって、画像をそのまま符号化する場合に較べて、データ量を圧縮することができる。
  ステップS127において、直交変換部114は、ステップS126の処理により生成された差分情報に対する直交変換処理を行う。ステップS128において、量子化部115は、レート制御部127により算出された量子化パラメータを用いて、ステップS127の処理により得られた直交変換係数を量子化する。
  ステップS128の処理により量子化された差分情報は、次のようにして局部的に復号される。すなわち、ステップS129において、逆量子化部118は、ステップS128の処理により生成された量子化された係数(量子化係数とも称する)を、量子化部115の特性に対応する特性で逆量子化する。ステップS130において、逆直交変換部119は、ステップS127の処理により得られた直交変換係数を逆直交変換する。ステップS131において、演算部120は、予測画像を局部的に復号された差分情報に加算し、局部的に復号された画像(演算部113への入力に対応する画像)を生成する。
  ステップS132においてデブロッキングフィルタ121は、ステップS131の処理により生成された画像に対してデブロッキングフィルタ処理を行う。これによりブロック歪み等が除去される。ステップS133において、適応オフセットフィルタ128は、デブロッキングフィルタ121からのデブロックフィルタ処理結果に対して、主にリンギングを除去する適応オフセットフィルタ処理を行う。
 ステップS134において、フレームメモリ122は、ステップS133の処理によりリンギングの除去等が行われた画像を記憶する。なお、フレームメモリ122にはデブロッキングフィルタ121および適応オフセットフィルタ128によりフィルタ処理されていない画像も演算部120から供給され、記憶される。このフレームメモリ122に記憶された画像は、ステップS123の処理やステップS124の処理に利用される。
  ステップS135において、可逆符号化部116は、ステップS128の処理により量子化された係数を符号化する。すなわち、差分画像に対応するデータに対して、可変長符号化や算術符号化等の可逆符号化が行われる。
  また、このとき、可逆符号化部116は、ステップS125の処理により選択された予測画像の予測モードに関する情報を符号化し、差分画像を符号化して得られる符号化データに付加する。つまり、可逆符号化部116は、イントラ予測部124から供給される最適イントラ予測モード情報、または、動き予測・補償部125から供給される最適インター予測モードに応じた情報などを取得し、適宜、SPS、およびPPS等を含むNALユニットを適宜生成する。そして、可逆符号化部116は、これらの各種情報を任意の符号化方式で符号化し、符号化データ(符号化ストリームとも称する)の一部とする(多重化する)。
 なお、このとき、さらに、可逆符号化部116は、生成されたSPSのうち、入力画像の色差信号フォーマットを示す情報であるchroma_format_idcに関する情報を、カラーフォーマット判別部131のカラーフォーマットバッファ141に供給する。
  ステップS136において蓄積バッファ117は、ステップS135の処理により得られた符号化データを蓄積する。蓄積バッファ117に蓄積された符号化データは、適宜読み出され、伝送路や記録媒体を介して復号側に伝送される。
  ステップS137においてレート制御部127は、ステップS136において蓄積バッファ117に蓄積された符号化データの符号量(発生符号量)に基づいて、オーバフローあるいはアンダーフローが発生しないように、量子化部115の量子化動作のレートを制御する。
  ステップS137の処理が終了すると、符号化処理が終了する。符号化処理は、例えば、ピクチャ単位で実行される。つまり、各ピクチャに対して符号化処理が実行される。ただし、符号化処理内の各処理は、それぞれの処理単位毎に行われる。
[イントラ予測処理の流れ]
  次に、図15のフローチャートを参照して、図14のステップS123において実行されるイントラ処理の流れの例を説明する。
  イントラ予測処理が開始されると、イントラ予測部124は、ステップS181において、全てのモードによるイントラ予測処理を行い、予測画像を生成する。
 図14のステップS135において、入力画像の色差信号フォーマットを示す情報であるchroma_format_idcに関する情報が可逆符号化部116より供給されて、カラーフォーマットバッファ141に蓄積されている。カラーフォーマットバッファ141は、蓄積されているchroma_format_idcに関する情報を読み出し、4:2:2判定部142に供給する。
 ステップS183において、4:2:2判定部142は、入力画像の色差信号フォーマットが4:2:2であるか否かを判定する。ステップS183において、入力画像の色差信号フォーマットが4:2:2であると判定された場合、処理は、ステップS184に進む。
 ステップS184において、イントラ予測部124は、コードナンバ割当を4:2:2用のコードナンバ割当に入れ替える。すなわち、このとき、4:2:2判定部142は、制御信号を、4:2:2用コードナンババッファ151に供給する。4:2:2用コードナンババッファ151は、4:2:2判定部142からの制御信号を受けると、蓄積している4:2:2用のコードナンバ割当に関する情報を読み出して、イントラ予測部124に供給する。イントラ予測部124は、4:2:2用のコードナンバ割当に関する情報を参照して、4:2:2用のコードナンバ割当に入れ替える。
 ステップS183において、入力画像の色差信号フォーマットが4:2:2ではないと判定された場合、処理は、ステップS185に進む。ステップS185において、イントラ予測部124は、コードナンバ割当をデフォルトのコードナンバ割当に入れ替える。
  すなわち、このとき、4:2:2判定部142は、制御信号を、デフォルトコードナンババッファ152に供給する。デフォルトコードナンババッファ152は、4:2:2判定部142からの制御信号を受けると、蓄積しているデフォルトのコードナンバ割当に関する情報を読み出して、イントラ予測部124に供給する。イントラ予測部124は、デフォルトのコードナンバ割当に関する情報を参照して、デフォルトのコードナンバ割当に入れ替える。
 ステップS186において、イントラ予測部124は、割り当てられたコードナンバを参照して、各モードのコスト関数値を算出する。ステップS187において、イントラ予測部124は、ステップS186において算出された各モードのコスト関数値を参照して、最適予測モードを決定する。決定した最適予測モードの予測画像と、そのコスト関数値は、予測画像選択部126に供給される。
 以上のように、4:2:2の色差信号フォーマットであるとき、Vertical予測より、Horizontal予測がより小さなコードナンバとなるようなコードナンバ割当に入れ替えられる。また、DC予測には、Vertical予測より小さなコードナンバに割り当てられる。これにより、出力となる画像圧縮情報の符号化効率を向上させることができる。
  <2.第2の実施の形態>
[スケーラブル復号装置]
  次に、以上のように符号化された符号化データ(ビットストリーム)の復号について説明する。図16は、図12の画像符号化装置101に対応する画像復号装置の主な構成例を示すブロック図である。図16に示される画像復号装置201は、例えば画像符号化装置101により画像データが符号化されて得られた符号化データを、その符号化方法に対応する方法で復号する。
[画像復号装置]
  図16に示されるように画像復号装置201は、蓄積バッファ211、可逆復号部212、逆量子化部213、逆直交変換部214、演算部215、デブロッキングフィルタ216、画面並べ替えバッファ217、およびD/A変換部218を有する。画像復号装置201は、フレームメモリ219、選択部220、イントラ予測部221、動き補償部222、および選択部223を有する。
  また、画像復号装置201は、デブロッキングフィルタ216と、画面並べ替えバッファ217およびフレームメモリ219との間に、適応オフセットフィルタ224を有する。さらに、画像復号装置201は、カラーフォーマット判別部231およびコードナンバ割当部232を有する。
  蓄積バッファ211は、伝送されてきた符号化データを受け取る受け取り部でもある。蓄積バッファ211は、伝送されてきた符号化データを受け取って、蓄積し、所定のタイミングにおいてその符号化データを可逆復号部212に供給する。この符号化データには、予測モード情報などの復号に必要な情報が付加されている。
  可逆復号部212は、蓄積バッファ211より供給された、図12の可逆符号化部116により符号化された情報を、可逆符号化部116の符号化方式に対応する方式で復号する。可逆復号部212は、復号して得られた差分画像の量子化された係数データを、逆量子化部213に供給する。
  また、可逆復号部212は、符号化データに含まれるビデオパラメータセット(VPS)、シーケンスパラメータセット(SPS)、およびピクチャパラメータセット(PPS)等を含むNALユニットを適宜抽出し、取得する。
  可逆復号部212は、それらの情報から、最適な予測モードに関する情報を抽出し、その情報に基づいて最適な予測モードにイントラ予測モードが選択されたかインター予測モードが選択されたかを判定する。可逆復号部212はその最適な予測モードに関する情報を、イントラ予測部221および動き補償部222の内、選択されたと判定したモードの方に供給する。
 つまり、例えば、図12の画像符号化装置101において最適な予測モードとしてイントラ予測モードが選択された場合、その最適な予測モードに関する情報(具体的には、最適なイントラ予測モードを示すインデックス)がイントラ予測部221に供給される。なお、HEVCにおいては、イントラ予測モードに対するコードナンバは、図11を参照して上述したGromb符号化されている。また、例えば、画像符号化装置101において最適な予測モードとしてインター予測モードが選択された場合、その最適な予測モードに関する情報が動き補償部222に供給される。
  また、可逆復号部212は、SPSのうち、入力画像の色差信号フォーマットを示す情報であるchroma_format_idcに関する情報を、カラーフォーマット判別部231に供給する。
  さらに、可逆復号部212は、例えば、量子化行列や量子化パラメータ等の、逆量子化に必要な情報をNALユニット等から抽出し、それを逆量子化部213に供給する。
  逆量子化部213は、可逆復号部212により復号されて得られた量子化された係数データを、量子化部115の量子化方式に対応する方式で逆量子化する。なお、この逆量子化部213は、逆量子化部118と同様の処理部である。つまり、逆量子化部213の説明は、逆量子化部118にも準用することができる。ただし、データの入出力先等は、装置に応じて適宜、変えて読む必要がある。逆量子化部213は、得られた係数データを逆直交変換部214に供給する。
  逆直交変換部214は、逆量子化部213から供給される係数データを、直交変換部114の直交変換方式に対応する方式で逆直交変換する。なお、この逆直交変換部214は、逆直交変換部119と同様の処理部である。つまり、逆直交変換部214の説明は、逆直交変換部119にも準用することができる。ただし、データの入出力先等は、装置に応じて適宜、変えて読む必要がある。
  逆直交変換部214は、この逆直交変換処理により、直交変換部114において直交変換される前の残差データに対応する復号残差データを得る。逆直交変換されて得られた復号残差データは、演算部215に供給される。また、演算部215には、選択部223を介して、イントラ予測部221若しくは動き補償部222から予測画像が供給される。
  演算部215は、その復号残差データと予測画像とを加算し、演算部113により予測画像が減算される前の画像データに対応する復号画像データを得る。演算部215は、その復号画像データをデブロッキングフィルタ216に供給する。
  デブロッキングフィルタ216は、復号画像に対してデブロックフィルタ処理を行うことにより復号画像のブロック歪を除去する。デブロッキングフィルタ216は、フィルタ処理が施された画像を、適応オフセットフィルタ224に供給する。
 適応オフセットフィルタ224は、デブロッキングフィルタ216からのデブロックフィルタ処理結果(ブロック歪みの除去が行われた復号画像)に対して、主にリンギングを除去する適応オフセットフィルタ(SAO: Sample adaptive offset)処理を行う。
 適応オフセットフィルタ224は、図示せぬ可逆復号部212からの最大の符号化単位であるLCU(Largest Coding Unit)ごとの適応オフセットフィルタ処理の種類とオフセットを受信する。適応オフセットフィルタ224は、受信したオフセットを用いて、適応デブロックフィルタ処理後の画像に対して、受信した種類の適応オフセットフィルタ処理を行う。そして、適応オフセットフィルタ224は、適応オフセットフィルタ処理後の画像(以下、復号画像と称する)を、画面並べ替えバッファ217およびフレームメモリ219に供給する。
  なお、演算部215から出力される復号画像は、デブロッキングフィルタ216や適応オフセットフィルタ224を介さずに画面並べ替えバッファ217やフレームメモリ219に供給することができる。つまり、デブロッキングフィルタ216および適応オフセットフィルタ224によるフィルタ処理の一部若しくは全部は省略することができる。また、適応オフセットフィルタ224の後段に、適応ループフィルタを備えるようにしてもよい。
  画面並べ替えバッファ217は、復号画像の並べ替えを行う。すなわち、画面並べ替えバッファ112により符号化の順番のために並べ替えられたフレームの順番が、元の表示の順番に並べ替えられる。D/A変換部218は、画面並べ替えバッファ217から供給された画像をD/A変換し、図示せぬディスプレイに出力し、表示させる。
  フレームメモリ219は、供給される復号画像を記憶し、所定のタイミングにおいて、若しくは、イントラ予測部221や動き補償部222等の外部の要求に基づいて、記憶している復号画像を参照画像として、選択部220に供給する。
  選択部220は、フレームメモリ219から供給される参照画像の供給先を選択する。選択部220は、イントラ符号化された画像を復号する場合、フレームメモリ219から供給される参照画像をイントラ予測部221に供給する。また、選択部220は、インター符号化された画像を復号する場合、フレームメモリ219から供給される参照画像を動き補償部222に供給する。
  イントラ予測部221には、ヘッダ情報を復号して得られたイントラ予測モードを示す情報(すなわち、最適なイントラ予測モードを示すインデックス)等が可逆復号部212から適宜供給される。イントラ予測部221は、供給されたイントラ予測モードで、フレームメモリ219から取得した参照画像を用いてイントラ予測を行い、予測画像を生成する。イントラ予測部221は、生成した予測画像を選択部223に供給する。
 なお、特に、色差信号については、イントラ予測部221には、コードナンバ割当部232からのコードナンバ割当に関する情報が供給される。イントラ予測部221は、可逆復号部212からのイントラ予測モードを示すインデックスとコードナンバ割当部232からのコードナンバ割当に関する情報とを参照して、符号化側のイントラ予測部124において用いられたイントラ予測モードがどれだったかを解釈する。そして、イントラ予測部221は、解釈したイントラ予測モードで、フレームメモリ219から取得した参照画像を用いてイントラ予測を行い、予測画像を生成する。
  動き補償部222は、ヘッダ情報を復号して得られた情報(最適予測モード情報、参照画像情報等)を可逆復号部212から取得する。
  動き補償部222は、可逆復号部212から取得された最適予測モード情報が示すインター予測モードで、フレームメモリ219から取得した参照画像を用いて動き補償を行い、予測画像を生成する。動き補償部222は、生成した予測画像を選択部223に供給する。
  選択部223は、イントラ予測部221からの予測画像または動き補償部222からの予測画像を、演算部215に供給する。そして、演算部215においては、動きベクトルが用いられて生成された予測画像と逆直交変換部214からの復号残差データ(差分画像情報)とが加算されて元の画像が復号される。
  カラーフォーマット判別部231は、可逆復号部212から供給されるSPSのchroma_format_idcに関する情報を参照して、入力画像の色差信号フォーマットが4:2:2に関するものであるのか否かを判定する。カラーフォーマット判別部231は、その判定結果に応じた制御信号を、コードナンバ割当部232に出力する。
 コードナンバ割当部232は、図12のコードナンバ割当部132と基本的に同様に構成されている。すなわち、コードナンバ割当部232は、デフォルト用と4:2:2用の各コードナンバ割当に関する情報が格納されているバッファを有している。コードナンバ割当部232は、カラーフォーマット判別部231からの制御信号に応じて、どちらか一方のバッファからコードナンバ割当に関する情報を読み出し、読み出したコードナンバ割当に関する情報を、イントラ予測部221に供給する。
[カラーフォーマット判別部およびびコードナンバ割当部]
  図17は、図16のカラーフォーマット判別部231およびコードナンバ割当部232の主な構成例を示すブロック図である。
  図17に示されるように、カラーフォーマット判別部231は、カラーフォーマットバッファ241および4:2:2判定部242を有する。
 コードナンバ割当部232は、4:2:2用コードナンババッファ251およびデフォルトコードナンババッファ252を有する。
 可逆復号部212より、入力画像の色差信号フォーマットを示す情報であるchroma_format_idcに関する情報がカラーフォーマットバッファ241に供給される。カラーフォーマットバッファ241は、可逆復号部212からのchroma_format_idcに関する情報を蓄積し、所定のタイミングで読み出し、4:2:2判定部242に供給する。
 4:2:2判定部242は、カラーフォーマットバッファ241からのchroma_format_idcに関する情報を参照して、入力画像の色差信号フォーマットが4:2:2に関するものであるのか否かを判定する。4:2:2判定部242は、その判定結果に応じて、4:2:2用コードナンババッファ251およびデフォルトコードナンババッファ252のどちらか一方に制御信号を出力する。
 すなわち、4:2:2判定部242は、入力画像の色差信号フォーマットが4:2:2に関するものと判定した場合、4:2:2用コードナンババッファ251に制御信号を出力する。また、4:2:2判定部142は、入力画像の色差信号フォーマットが4:2:2に関するものではないと判定した場合、デフォルトコードナンババッファ252に制御信号を出力する。
 4:2:2用コードナンババッファ251は、4:2:2用のコードナンバ割当に関する情報を蓄積している。4:2:2用コードナンババッファ251は、4:2:2判定部242からの制御信号を受けると、蓄積している4:2:2用のコードナンバ割当に関する情報を読み出して、イントラ予測部221に供給する。
 デフォルトコードナンババッファ252は、デフォルトのコードナンバ割当に関する情報を蓄積している。デフォルトコードナンババッファ252は、4:2:2判定部242からの制御信号を受けると、蓄積しているデフォルトのコードナンバ割当に関する情報を読み出して、イントラ予測部221に供給する。
  4:2:2用のコードナンバ割当に関する情報は、例えば、0=Planar予測、1=Horizontal予測、2=DC予測、3=Vertical予測、4=輝度信号イントラ予測モードの色差信号への適用といった、Vertical予測よりHorizontal予測に対してより小さなコードナンバを割り当てることを示す情報である。
  これに対して、デフォルトのコードナンバ割当に関する情報は、例えば、0=Planar予測、1=Vertical予測、2=Horizontal予測、3=DC予測、4=輝度信号イントラ予測モードの色差信号への適用を示す情報である。
 イントラ予測部221は、どちらか一方のコードナンバ割当に関する情報を受けて、受けたコードナンバ割当に関する情報に応じて、コードナンバ割当の入れ替えを行う。イントラ予測部221は、入れ替えられたコードナンバ割当に基づき可逆復号部212からのイントラ予測モードのインデックスが示すイントラ予測モードを解釈し、予測画像を生成する。
[復号処理の流れ]
  次に、以上のような画像復号装置202により実行される各処理の流れについて説明する。最初に、図18のフローチャートを参照して、復号処理の流れの例を説明する。画像復号装置202は、ピクチャ毎にこの復号処理を実行する。
  復号処理が開始されると、ステップS421において、画像復号装置202の蓄積バッファ211は、符号化側から伝送されたビットストリームを蓄積する。ステップS422において、可逆復号部212は、蓄積バッファ211から供給されるビットストリーム(符号化された差分画像情報)を復号する。すなわち、図12の可逆符号化部116により符号化されたIピクチャ、Pピクチャ、並びにBピクチャが復号される。このとき、ヘッダ情報などのビットストリームに含められた差分画像情報以外の各種情報も復号される。
  ステップS423において、逆量子化部213は、ステップS422の処理により得られた、量子化された係数を逆量子化する。
  ステップS424において、逆直交変換部214は、カレントブロック(カレントTU)を逆直交変換する。
  ステップS425において、イントラ予測部221若しくは動き補償部222は、予測処理を行い、予測画像を生成する。すなわち、可逆復号部212において判定された、符号化の際に適用された予測モードで予測処理が行われる。
 より具体的には、例えば、符号化の際にイントラ予測が適用された場合、イントラ予測部221が、符号化の際に最適とされたイントラ予測モードで予測画像を生成する。また、例えば、符号化の際にインター予測が適用された場合、動き補償部222が、符号化の際に最適とされたインター予測モードで予測画像を生成する。なお、この予測処理の詳細は、図19を参照して後述される。
  ステップS426において、演算部215は、ステップS424の逆直交変換処理により生成された差分画像情報に、ステップS425において生成された予測画像を加算する。これにより元の画像が復号される。
  ステップS427において、デブロッキングフィルタ216は、ステップS426において得られた復号画像に対して、デブロッキングフィルタ処理を行う。これによりブロック歪み等が除去される。ステップS428において、適応オフセットフィルタ224は、デブロッキングフィルタ216からのデブロックフィルタ処理結果に対して、主にリンギングを除去する適応オフセットフィルタ処理を行う。
  ステップS429において、画面並べ替えバッファ217は、ステップS428においてリンギングの除去などが行われた画像の並べ替えを行う。すなわち、図12の画面並べ替えバッファ112により符号化のために並べ替えられたフレームの順序が、元の表示の順序に並べ替えられる。
  ステップS430において、D/A変換部218は、ステップS429においてフレームの順序が並べ替えられた画像をD/A変換する。この画像が図示せぬディスプレイに出力され、画像が表示される。
  ステップS431において、フレームメモリ219は、ステップS428において適応オフセットフィルタ処理された画像を記憶する。
  ステップS431の処理が終了すると、復号処理が終了する。復号処理は、例えば、ピクチャ単位で実行される。ただし、復号処理内の各処理は、それぞれの処理単位毎に行われる。
[予測処理の流れ]
  次に、図19のフローチャートを参照して、図18のステップS425において実行される予測処理の流れの例を説明する。
  予測処理が開始されると、動き補償部222は、ステップS451において、予測モードがインター予測であるか否かを判定する。インター予測であると判定した場合、処理はステップS452に進む。
  ステップS452において、動き補償部222は、動き情報復号処理を行い、カレントブロックの動き情報を再構築する。
  ステップS453において、動き補償部222は、ステップS452の処理により得られた動き情報を用いて動き補償を行い、予測画像を生成する。予測画像が生成されると、予測処理が終了し、処理は図18に戻る。
  また、ステップS451において、イントラ予測であると判定された場合、処理はステップS454に進む。ステップS454において、イントラ予測部221は、イントラ予測を行う。このイントラ予測処理の詳細については図20を参照して後述する。ステップS454の処理が終了すると、予測処理が終了し、処理は図18に戻る。
[イントラ予測処理の流れ]
  次に、図20のフローチャートを参照して、図19のステップS454において実行されるイントラ予測処理の流れの例を説明する。
  可逆復号部212より、入力画像の色差信号フォーマットを示す情報であるchroma_format_idcに関する情報がカラーフォーマットバッファ241に供給される。カラーフォーマットバッファ241は、可逆復号部212からのchroma_format_idcに関する情報を蓄積し、所定のタイミングで読み出し、4:2:2判定部242に供給する。
  4:2:2判定部242は、ステップS471において、カラーフォーマットバッファ241からのchroma_format_idcに関する情報を参照して、入力画像の色差信号フォーマットを判定する。ステップS472において、4:2:2判定部242は、入力画像の色差信号フォーマットが4:2:2であるか否かを判定する。ステップS472において、入力画像の色差信号フォーマットが4:2:2であると判定された場合、処理は、ステップS473に進む。
 ステップS473において、イントラ予測部221は、コードナンバ割当を4:2:2用のコードナンバ割当に入れ替える。すなわち、このとき、4:2:2判定部242は、制御信号を、4:2:2用コードナンババッファ251に供給する。4:2:2用コードナンババッファ251は、4:2:2判定部242からの制御信号を受けると、蓄積している4:2:2用のコードナンバ割当に関する情報を読み出して、イントラ予測部221に供給する。イントラ予測部221は、4:2:2用のコードナンバ割当に関する情報を参照して、4:2:2用のコードナンバ割当に入れ替える。
 ステップS472において、入力画像の色差信号フォーマットが4:2:2ではないと判定された場合、処理は、ステップS474に進む。ステップS474において、イントラ予測部221は、コードナンバ割当をデフォルトのコードナンバ割当に入れ替える。
  すなわち、このとき、4:2:2判定部242は、制御信号を、デフォルトコードナンババッファ252に供給する。デフォルトコードナンババッファ252は、4:2:2判定部242からの制御信号を受けると、蓄積しているデフォルトのコードナンバ割当に関する情報を読み出して、イントラ予測部221に供給する。イントラ予測部221は、デフォルトのコードナンバ割当に関する情報を参照して、デフォルトのコードナンバ割当に入れ替える。
 ステップS475において、イントラ予測部221は、割り当てられたコードナンバを参照して、各モードのコスト関数値を算出する。ステップS476において、イントラ予測部124は、ステップS475において算出された各モードのコスト関数値を参照して、最適予測モードを決定する。決定した最適予測モードの予測画像と、そのコスト関数値は、予測画像選択部226に供給される。
 以上のように、4:2:2の色差信号フォーマットであるとき、Vertical予測より、Horizontal予測がより小さなコードナンバとなるようなコードナンバ割当に入れ替えられる。また、DC予測にはVertical予測より小さなコードナンバが割り当てられる。これにより、出力となる画像圧縮情報の符号化効率を向上させることができる。
 以上においては、符号化方式としてHEVC方式をベースに用いるようにした。ただし、本技術はこれに限らず、その他の符号化方式/復号方式を適用することができる。
 なお、本開示は、例えば、HEVC方式等の様に、離散コサイン変換等の直交変換と動き補償によって圧縮された画像情報(ビットストリーム)を、衛星放送、ケーブルテレビジョン、インターネット、または携帯電話機などのネットワークメディアを介して受信する際に用いられる画像符号化装置および画像復号装置に適用することができる。また、本開示は、光、磁気ディスク、およびフラッシュメモリのような記憶メディア上で処理する際に用いられる画像符号化装置および画像復号装置に適用することができる。
  <3.第3の実施の形態>
[多視点画像符号化・多視点画像復号への適用]
 上述した一連の処理は、多視点画像符号化・多視点画像復号に適用することができる。図21は、多視点画像符号化方式の一例を示す。
 図21に示されるように、多視点画像は、複数の視点の画像を含み、その複数の視点のうちの所定の1つの視点の画像が、ベースビューの画像に指定されている。ベースビューの画像以外の各視点の画像は、ノンベースビューの画像として扱われる。
 図21のような多視点画像符号化を行う場合、各ビュー(同一ビュー)において、イントラ予測についてのコードナンバ割当を切り替えることができる。また、各ビュー(異なるビュー)において、他のビューで切り替えられたイントラ予測についてのコードナンバ割当を共有することもできる。
 この場合、ベースビューにおいて切り替えられたイントラ予測についてのコードナンバ割当が、少なくとも1つのノンベースビューで用いられる。あるいは、例えば、ノンベースビュー(view_id=i)において切り替えられたイントラ予測についてのコードナンバ割当が、ベースビューおよびノンベースビュー(view_id=j)の少なくともどちらか一方で用いられる。
 これにより、画像における色差信号のフォーマットが4:2:2の場合のイントラ予測の符号化効率を向上させることができる。
[多視点画像符号化装置]
 図22は、上述した多視点画像符号化を行う多視点画像符号化装置を示す図である。図22に示されるように、多視点画像符号化装置600は、符号化部601、符号化部602、および多重化部603を有する。
 符号化部601は、ベースビュー画像を符号化し、ベースビュー画像符号化ストリームを生成する。符号化部602は、ノンベースビュー画像を符号化し、ノンベースビュー画像符号化ストリームを生成する。多重化部603は、符号化部601において生成されたベースビュー画像符号化ストリームと、符号化部602において生成されたノンベースビュー画像符号化ストリームとを多重化し、多視点画像符号化ストリームを生成する。
 この多視点画像符号化装置600の符号化部601および符号化部602に対して、画像符号化装置101(図12)を適用することができる。この場合、多視点画像符号化装置600は、符号化部601が切り替えたイントラ予測についてのコードナンバ割当と、符号化部602が切り替えたイントラ予測についてのコードナンバ割当を用いてイントラ予測モードに関する情報を伝送させる。
 なお、上述したように符号化部601が切り替えたイントラ予測についてのコードナンバ割当を、符号化部601および符号化部602で共有して用いてイントラ予測モードに関する情報を伝送させるようにしてもよい。逆に、符号化部602がまとめて切り替えたイントラ予測についてのコードナンバ割当を、符号化部601および符号化部602で共有して用いてイントラ予測モードに関する情報を伝送させるようにしてもよい。
[多視点画像復号装置]
 図23は、上述した多視点画像復号を行う多視点画像復号装置を示す図である。図23に示されるように、多視点画像復号装置610は、逆多重化部611、復号部612、および復号部613を有する。
 逆多重化部611は、ベースビュー画像符号化ストリームとノンベースビュー画像符号化ストリームとが多重化された多視点画像符号化ストリームを逆多重化し、ベースビュー画像符号化ストリームと、ノンベースビュー画像符号化ストリームとを抽出する。復号部612は、逆多重化部611により抽出されたベースビュー画像符号化ストリームを復号し、ベースビュー画像を得る。復号部613は、逆多重化部611により抽出されたノンベースビュー画像符号化ストリームを復号し、ノンベースビュー画像を得る。
 この多視点画像復号装置610の復号部612および復号部613に対して、多視点画像復号装置201(図16)を適用することができる。この場合、多視点画像復号装置610は、符号化部601および復号部612が切り替えたイントラ予測についてのコードナンバ割当と、符号化部602および復号部613が切り替えたイントラ予測についてのコードナンバ割当を用いて処理を行う。
 なお、上述したように符号化部601(または、符号化部602)が切り替えたイントラ予測についてのコードナンバ割当を、符号化部601および符号化部602で共有して用いてイントラ予測モードに関する情報が伝送されている場合がある。この場合、多視点画像復号装置610においては、符号化部601(または、符号化部602)および復号部612(または復号部613)が切り替えたイントラ予測についてのコードナンバ割当を用いて処理が行われる。
 <4.第4の実施の形態>
[階層画像符号化・階層画像復号への適用]
 上述した一連の処理は、階層画像符号化・階層画像復号に適用することができる。図24は、多視点画像符号化方式の一例を示す。
 図24に示されるように、階層画像は、複数の階層(解像度)の画像を含み、その複数の解像度のうちの所定の1つの階層の画像が、ベースレイヤの画像に指定されている。ベースレイヤの画像以外の各階層の画像は、ノンベースレイヤの画像として扱われる。
 図24のような階層画像符号化(空間スケーラビリティ)を行う場合、各レイヤ(同一レイヤ)において、イントラ予測についてのコードナンバ割当を切り替えることができる。また、各レイヤ(異なるレイヤ)において、他のレイヤで切り替えたイントラ予測についてのコードナンバ割当を共有することができる。
 この場合、ベースレイヤにおいて切り替えられたイントラ予測についてのコードナンバ割当が、少なくとも1つのノンベースレイヤで用いられる。あるいは、例えば、ノンベースレイヤ(layer _id=i)において切り替えられたイントラ予測についてのコードナンバ割当が、ベースレイヤおよびノンベースレイヤ(layer_id=j)の少なくともどちらか一方で用いられる。
 これにより、画像における色差信号のフォーマットが4:2:2の場合のイントラ予測の符号化効率を向上させることができる。
[階層画像符号化装置]
 図25は、上述した階層画像符号化を行う階層画像符号化装置を示す図である。図25に示されるように、階層画像符号化装置620は、符号化部621、符号化部622、および多重化部623を有する。
 符号化部621は、ベースレイヤ画像を符号化し、ベースレイヤ画像符号化ストリームを生成する。符号化部622は、ノンベースレイヤ画像を符号化し、ノンベースレイヤ画像符号化ストリームを生成する。多重化部623は、符号化部621において生成されたベースレイヤ画像符号化ストリームと、符号化部622において生成されたノンベースレイヤ画像符号化ストリームとを多重化し、階層画像符号化ストリームを生成する。
 この階層画像符号化装置620の符号化部621および符号化部622に対して、画像符号化装置101(図12)を適用することができる。この場合、階層画像符号化装置620は、符号化部621が切り替えたイントラ予測についてのコードナンバ割当と、符号化部602が切り替えたイントラ予測についてのコードナンバ割当とを用いてイントラ予測モードに関する情報を伝送させる。
 なお、上述したように符号化部621が切り替えたイントラ予測についてのコードナンバ割当を、符号化部621および符号化部622で共有して用いてイントラ予測モードに関する情報を伝送させるようにしてもよい。逆に、符号化部622が切り替えたイントラ予測についてのコードナンバ割当を、符号化部621および符号化部622で共有して用いてイントラ予測モードに関する情報を伝送させるようにしてもよい。
[階層画像復号装置]
 図26は、上述した階層画像復号を行う階層画像復号装置を示す図である。図26に示されるように、階層画像復号装置630は、逆多重化部631、復号部632、および復号部633を有する。
 逆多重化部631は、ベースレイヤ画像符号化ストリームとノンベースレイヤ画像符号化ストリームとが多重化された階層画像符号化ストリームを逆多重化し、ベースレイヤ画像符号化ストリームと、ノンベースレイヤ画像符号化ストリームとを抽出する。復号部632は、逆多重化部631により抽出されたベースレイヤ画像符号化ストリームを復号し、ベースレイヤ画像を得る。復号部633は、逆多重化部631により抽出されたノンベースレイヤ画像符号化ストリームを復号し、ノンベースレイヤ画像を得る。
 この階層画像復号装置630の復号部632および復号部633に対して、多視点画像復号装置201(図16)を適用することができる。この場合、階層画像復号装置630は、符号化部621および復号部632が切り替えられたイントラ予測についてのコードナンバ割当と、符号化部622および復号部633が切り替えられたイントラ予測についてのコードナンバ割当を用いて処理を行う。
 なお、上述したように符号化部621(または、符号化部622)が切り替えられたイントラ予測についてのコードナンバ割当を、符号化部621および符号化部622で共有して用いてイントラ予測モードに関する情報が伝送されている場合がある。この場合、階層画像復号装置630においては、符号化部621(または、符号化部622)が設定し、復号部632(または、復号部633)が切り替えたイントラ予測についてのコードナンバ割当を用いて処理が行われる。
  <5.第5の実施の形態>
 [コンピュータ]
  上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここでコンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータ等が含まれる。
  図27は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
  図27に示されるコンピュータ800において、CPU(Central Processing Unit)801、ROM(Read Only Memory)802、RAM(Random Access Memory)803は、バス804を介して相互に接続されている。
  バス804にはまた、入出力インタフェース805も接続されている。入出力インタフェース805には、入力部806、出力部807、記憶部808、通信部809、およびドライブ810が接続されている。
  入力部806は、例えば、キーボード、マウス、マイクロホン、タッチパネル、入力端子などよりなる。出力部807は、例えば、ディスプレイ、スピーカ、出力端子などよりなる。記憶部808は、例えば、ハードディスク、RAMディスク、不揮発性のメモリなどよりなる。通信部809は、例えば、ネットワークインタフェースよりなる。ドライブ810は、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリなどのリムーバブル記録媒体811を駆動する。
  以上のように構成されるコンピュータでは、CPU801が、例えば、記憶部808に記憶されているプログラムを、入出力インタフェース805およびバス804を介して、RAM803にロードして実行することにより、上述した一連の処理が行われる。RAM803にはまた、CPU801が各種の処理を実行する上において必要なデータなども適宜記憶される。
  コンピュータ(CPU801)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブル記録媒体811に記録して適用することができる。その場合、プログラムは、リムーバブル記録媒体811をドライブ810に装着することにより、入出力インタフェース805を介して、記憶部808にインストールすることができる。
  また、このプログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することもできる。その場合、プログラムは、有線または無線の伝送媒体を介して、通信部809で受信し、記憶部808にインストールすることができる。
  その他、このプログラムは、ROM802や記憶部808に、あらかじめインストールしておくこともできる。
  なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
  また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
  また、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、全ての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、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は、上述した実施形態に係る画像復号装置201(図16)の機能を有する。これにより、画像における色差信号のフォーマットが4:2:2の場合のイントラ予測の符号化効率を向上させることができる。
[第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は、上述した実施形態に係る画像符号化装置101(図12)や画像復号装置201(図16)の機能を有する。それにより、画像における色差信号のフォーマットが4:2:2の場合のイントラ予測の符号化効率を向上させることができる。
[第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は、上述した実施形態に係る画像符号化装置101(図12)の機能を有する。また、デコーダ947は、上述した実施形態に係る画像復号装置201(図16)の機能を有する。それにより、画像における色差信号のフォーマットが4:2:2の場合のイントラ予測の符号化効率を向上させることができる。
[第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は、上述した実施形態に係る画像符号化装置101(図12)や画像復号装置201(図16)の機能を有する。それにより、画像における色差信号のフォーマットが4:2:2の場合のイントラ予測の符号化効率を向上させることができる。
  <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乃至図20を参照して上述した本技術を適用することにより、図1乃至図20を参照して上述した効果と同様の効果を得ることができる。
 [第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乃至図20を参照して上述した本技術を適用することにより、図1乃至図20を参照して上述した効果と同様の効果を得ることができる。
[第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乃至図20を参照して上述した本技術を適用することにより、図1乃至図20を参照して上述した効果と同様の効果を得ることができる。
  <8.第6の実施の形態>
[実施のその他の例]
  以上において本技術を適用する装置やシステム等の例を説明したが、本技術は、これに限らず、このような装置またはシステムを構成する装置に搭載するあらゆる構成、例えば、システムLSI(Large Scale Integration)等としてのプロセッサ、複数のプロセッサ等を用いるモジュール、複数のモジュール等を用いるユニット、ユニットにさらにその他の機能を付加したセット等(すなわち、装置の一部の構成)として実施することもできる。
 [ビデオセット]
  本技術をセットとして実施する場合の例について、図35を参照して説明する。図35は、本技術を適用したビデオセットの概略的な構成の一例を示している。
  近年、電子機器の多機能化が進んでおり、その開発や製造において、その一部の構成を販売や提供等として実施する場合、1機能を有する構成として実施を行う場合だけでなく、関連する機能を有する複数の構成を組み合わせ、複数の機能を有する1セットとして実施を行う場合も多く見られるようになってきた。
  図35に示されるビデオセット1300は、このような多機能化された構成であり、画像の符号化や復号(いずれか一方でもよいし、両方でも良い)に関する機能を有するデバイスに、その機能に関連するその他の機能を有するデバイスを組み合わせたものである。
  図35に示されるように、ビデオセット1300は、ビデオモジュール1311、外部メモリ1312、パワーマネージメントモジュール1313、およびフロントエンドモジュール1314等のモジュール群と、コネクティビティ1321、カメラ1322、およびセンサ1323等の関連する機能を有するデバイスとを有する。
  モジュールは、互いに関連するいくつかの部品的機能をまとめ、まとまりのある機能を持った部品としたものである。具体的な物理的構成は任意であるが、例えば、それぞれ機能を有する複数のプロセッサ、抵抗やコンデンサ等の電子回路素子、その他のデバイス等を配線基板等に配置して一体化したものが考えられる。また、モジュールに他のモジュールやプロセッサ等を組み合わせて新たなモジュールとすることも考えられる。
  図35の例の場合、ビデオモジュール1311は、画像処理に関する機能を有する構成を組み合わせたものであり、アプリケーションプロセッサ、ビデオプロセッサ、ブロードバンドモデム1333、およびRFモジュール1334を有する。
  プロセッサは、所定の機能を有する構成をSoC(System On a Chip)により半導体チップに集積したものであり、例えばシステムLSI(Large Scale Integration)等と称されるものもある。この所定の機能を有する構成は、論理回路(ハードウエア構成)であってもよいし、CPU、ROM、RAM等と、それらを用いて実行されるプログラム(ソフトウエア構成)であってもよいし、その両方を組み合わせたものであってもよい。例えば、プロセッサが、論理回路とCPU、ROM、RAM等とを有し、機能の一部を論理回路(ハードウエア構成)により実現し、その他の機能をCPUにおいて実行されるプログラム(ソフトウエア構成)により実現するようにしてもよい。
  図35のアプリケーションプロセッサ1331は、画像処理に関するアプリケーションを実行するプロセッサである。このアプリケーションプロセッサ1331において実行されるアプリケーションは、所定の機能を実現するために、演算処理を行うだけでなく、例えばビデオプロセッサ1332等、ビデオモジュール1311内外の構成を必要に応じて制御することもできる。
  ビデオプロセッサ1332は、画像の符号化・復号(その一方若しくは両方)に関する機能を有するプロセッサである。
  ブロードバンドモデム1333は、インターネットや公衆電話回線網等の広帯域の回線を介して行われる有線若しくは無線(またはその両方)の広帯域通信に関する処理を行うプロセッサ(若しくはモジュール)である。例えば、ブロードバンドモデム1333は、送信するデータ(デジタル信号)をデジタル変調する等してアナログ信号に変換したり、受信したアナログ信号を復調してデータ(デジタル信号)に変換したりする。例えば、ブロードバンドモデム1333は、ビデオプロセッサ1332が処理する画像データや画像データが符号化されたストリーム、アプリケーションプログラム、設定データ等、任意の情報をデジタル変調・復調することができる。
  RFモジュール1334は、アンテナを介して送受信されるRF(Radio Frequency)信号に対して、周波数変換、変復調、増幅、フィルタ処理等を行うモジュールである。例えば、RFモジュール1334は、ブロードバンドモデム1333により生成されたベースバンド信号に対して周波数変換等を行ってRF信号を生成する。また、例えば、RFモジュール1334は、フロントエンドモジュール1314を介して受信されたRF信号に対して周波数変換等を行ってベースバンド信号を生成する。
  なお、図35において点線1341に示されるように、アプリケーションプロセッサ1331とビデオプロセッサ1332を、一体化し、1つのプロセッサとして構成されるようにしてもよい。
  外部メモリ1312は、ビデオモジュール1311の外部に設けられた、ビデオモジュール1311により利用される記憶デバイスを有するモジュールである。この外部メモリ1312の記憶デバイスは、どのような物理構成により実現するようにしてもよいが、一般的にフレーム単位の画像データのような大容量のデータの格納に利用されることが多いので、例えばDRAM(Dynamic Random Access Memory)のような比較的安価で大容量の半導体メモリにより実現するのが望ましい。
  パワーマネージメントモジュール1313は、ビデオモジュール1311(ビデオモジュール1311内の各構成)への電力供給を管理し、制御する。
  フロントエンドモジュール1314は、RFモジュール1334に対してフロントエンド機能(アンテナ側の送受信端の回路)を提供するモジュールである。図35に示されるように、フロントエンドモジュール1314は、例えば、アンテナ部1351、フィルタ1352、および増幅部1353を有する。
  アンテナ部1351は、無線信号を送受信するアンテナおよびその周辺の構成を有する。アンテナ部1351は、増幅部1353から供給される信号を無線信号として送信し、受信した無線信号を電気信号(RF信号)としてフィルタ1352に供給する。フィルタ1352は、アンテナ部1351を介して受信されたRF信号に対してフィルタ処理等を行い、処理後のRF信号をRFモジュール1334に供給する。増幅部1353は、RFモジュール1334から供給されるRF信号を増幅し、アンテナ部1351に供給する。
  コネクティビティ1321は、外部との接続に関する機能を有するモジュールである。コネクティビティ1321の物理構成は、任意である。例えば、コネクティビティ1321は、ブロードバンドモデム1333が対応する通信規格以外の通信機能を有する構成や、外部入出力端子等を有する。
  例えば、コネクティビティ1321が、Bluetooth(登録商標)、IEEE 802.11(例えばWi-Fi(Wireless Fidelity、登録商標))、NFC(Near Field Communication)、IrDA(InfraRed Data Association)等の無線通信規格に準拠する通信機能を有するモジュールや、その規格に準拠した信号を送受信するアンテナ等を有するようにしてもよい。また、例えば、コネクティビティ1321が、USB(Universal Serial Bus)、HDMI(登録商標)(High-Definition Multimedia Interface)等の有線通信規格に準拠する通信機能を有するモジュールや、その規格に準拠した端子を有するようにしてもよい。さらに、例えば、コネクティビティ1321が、アナログ入出力端子等のその他のデータ(信号)伝送機能等を有するようにしてもよい。
  なお、コネクティビティ1321が、データ(信号)の伝送先のデバイスを含むようにしてもよい。例えば、コネクティビティ1321が、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリ等の記録媒体に対してデータの読み出しや書き込みを行うドライブ(リムーバブルメディアのドライブだけでなく、ハードディスク、SSD(Solid State Drive)、NAS(Network Attached Storage)等も含む)を有するようにしてもよい。また、コネクティビティ1321が、画像や音声の出力デバイス(モニタやスピーカ等)を有するようにしてもよい。
  カメラ1322は、被写体を撮像し、被写体の画像データを得る機能を有するモジュールである。カメラ1322の撮像により得られた画像データは、例えば、ビデオプロセッサ1332に供給されて符号化される。
  センサ1323は、例えば、音声センサ、超音波センサ、光センサ、照度センサ、赤外線センサ、イメージセンサ、回転センサ、角度センサ、角速度センサ、速度センサ、加速度センサ、傾斜センサ、磁気識別センサ、衝撃センサ、温度センサ等、任意のセンサ機能を有するモジュールである。センサ1323により検出されたデータは、例えば、アプリケーションプロセッサ1331に供給されてアプリケーション等により利用される。
  以上においてモジュールとして説明した構成をプロセッサとして実現するようにしてもよいし、逆にプロセッサとして説明した構成をモジュールとして実現するようにしてもよい。
  以上のような構成のビデオセット1300において、後述するようにビデオプロセッサ1332に本技術を適用することができる。したがって、ビデオセット1300は、本技術を適用したセットとして実施することができる。
[ビデオプロセッサの構成例]
  図36は、本技術を適用したビデオプロセッサ1332(図35)の概略的な構成の一例を示している。
  図36の例の場合、ビデオプロセッサ1332は、ビデオ信号およびオーディオ信号の入力を受けてこれらを所定の方式で符号化する機能と、符号化されたビデオデータおよびオーディオデータを復号し、ビデオ信号およびオーディオ信号を再生出力する機能とを有する。
  図36に示されるように、ビデオプロセッサ1332は、ビデオ入力処理部1401、第1画像拡大縮小部1402、第2画像拡大縮小部1403、ビデオ出力処理部1404、フレームメモリ1405、およびメモリ制御部1406を有する。また、ビデオプロセッサ1332は、エンコード・デコードエンジン1407、ビデオES(Elementary Stream)バッファ1408Aおよび1408B、並びに、オーディオESバッファ1409Aおよび1409Bを有する。さらに、ビデオプロセッサ1332は、オーディオエンコーダ1410、オーディオデコーダ1411、多重化部(MUX(Multiplexer))1412、逆多重化部(DMUX(Demultiplexer))1413、およびストリームバッファ1414を有する。
  ビデオ入力処理部1401は、例えばコネクティビティ1321(図35)等から入力されたビデオ信号を取得し、デジタル画像データに変換する。第1画像拡大縮小部1402は、画像データに対してフォーマット変換や画像の拡大縮小処理等を行う。第2画像拡大縮小部1403は、画像データに対して、ビデオ出力処理部1404を介して出力する先でのフォーマットに応じて画像の拡大縮小処理を行ったり、第1画像拡大縮小部1402と同様のフォーマット変換や画像の拡大縮小処理等を行ったりする。ビデオ出力処理部1404は、画像データに対して、フォーマット変換やアナログ信号への変換等を行って、再生されたビデオ信号として例えばコネクティビティ1321(図35)等に出力する。
  フレームメモリ1405は、ビデオ入力処理部1401、第1画像拡大縮小部1402、第2画像拡大縮小部1403、ビデオ出力処理部1404、およびエンコード・デコードエンジン1407によって共用される画像データ用のメモリである。フレームメモリ1405は、例えばDRAM等の半導体メモリとして実現される。
  メモリ制御部1406は、エンコード・デコードエンジン1407からの同期信号を受けて、アクセス管理テーブル1406Aに書き込まれたフレームメモリ1405へのアクセススケジュールに従ってフレームメモリ1405に対する書き込み・読み出しのアクセスを制御する。アクセス管理テーブル1406Aは、エンコード・デコードエンジン1407、第1画像拡大縮小部1402、第2画像拡大縮小部1403等で実行される処理に応じて、メモリ制御部1406により更新される。
  エンコード・デコードエンジン1407は、画像データのエンコード処理、並びに、画像データが符号化されたデータであるビデオストリームのデコード処理を行う。例えば、エンコード・デコードエンジン1407は、フレームメモリ1405から読み出した画像データを符号化し、ビデオストリームとしてビデオESバッファ1408Aに順次書き込む。また、例えば、ビデオESバッファ1408Bからビデオストリームを順次読み出して復号し、画像データとしてフレームメモリ1405に順次書き込む。エンコード・デコードエンジン1407は、これらの符号化や復号において、フレームメモリ1405を作業領域として使用する。また、エンコード・デコードエンジン1407は、例えばマクロブロック毎の処理を開始するタイミングで、メモリ制御部1406に対して同期信号を出力する。
  ビデオESバッファ1408Aは、エンコード・デコードエンジン1407によって生成されたビデオストリームをバッファリングして、多重化部(MUX)1412に供給する。ビデオESバッファ1408Bは、逆多重化部(DMUX)1413から供給されたビデオストリームをバッファリングして、エンコード・デコードエンジン1407に供給する。
  オーディオESバッファ1409Aは、オーディオエンコーダ1410によって生成されたオーディオストリームをバッファリングして、多重化部(MUX)1412に供給する。オーディオESバッファ1409Bは、逆多重化部(DMUX)1413から供給されたオーディオストリームをバッファリングして、オーディオデコーダ1411に供給する。
  オーディオエンコーダ1410は、例えばコネクティビティ1321(図35)等から入力されたオーディオ信号を例えばデジタル変換し、例えばMPEGオーディオ方式やAC3(AudioCode number 3)方式等の所定の方式で符号化する。オーディオエンコーダ1410は、オーディオ信号が符号化されたデータであるオーディオストリームをオーディオESバッファ1409Aに順次書き込む。オーディオデコーダ1411は、オーディオESバッファ1409Bから供給されたオーディオストリームを復号し、例えばアナログ信号への変換等を行って、再生されたオーディオ信号として例えばコネクティビティ1321(図35)等に供給する。
  多重化部(MUX)1412は、ビデオストリームとオーディオストリームとを多重化する。この多重化の方法(すなわち、多重化により生成されるビットストリームのフォーマット)は任意である。また、この多重化の際に、多重化部(MUX)1412は、所定のヘッダ情報等をビットストリームに付加することもできる。つまり、多重化部(MUX)1412は、多重化によりストリームのフォーマットを変換することができる。例えば、多重化部(MUX)1412は、ビデオストリームとオーディオストリームとを多重化することにより、転送用のフォーマットのビットストリームであるトランスポートストリームに変換する。また、例えば、多重化部(MUX)1412は、ビデオストリームとオーディオストリームとを多重化することにより、記録用のファイルフォーマットのデータ(ファイルデータ)に変換する。
  逆多重化部(DMUX)1413は、多重化部(MUX)1412による多重化に対応する方法で、ビデオストリームとオーディオストリームとが多重化されたビットストリームを逆多重化する。つまり、逆多重化部(DMUX)1413は、ストリームバッファ1414から読み出されたビットストリームからビデオストリームとオーディオストリームとを抽出する(ビデオストリームとオーディオストリームとを分離する)。つまり、逆多重化部(DMUX)1413は、逆多重化によりストリームのフォーマットを変換(多重化部(MUX)1412による変換の逆変換)することができる。例えば、逆多重化部(DMUX)1413は、例えばコネクティビティ1321やブロードバンドモデム1333等(いずれも図35)から供給されたトランスポートストリームを、ストリームバッファ1414を介して取得し、逆多重化することにより、ビデオストリームとオーディオストリームとに変換することができる。また、例えば、逆多重化部(DMUX)1413は、例えばコネクティビティ1321により(図35)各種記録媒体から読み出されたファイルデータを、ストリームバッファ1414を介して取得し、逆多重化することにより、ビデオストリームとオーディオストリームとに変換することができる。
  ストリームバッファ1414は、ビットストリームをバッファリングする。例えば、ストリームバッファ1414は、多重化部(MUX)1412から供給されたトランスポートストリームをバッファリングし、所定のタイミングにおいて、若しくは外部からの要求等に基づいて、例えばコネクティビティ1321やブロードバンドモデム1333(いずれも図35)等に供給する。
  また、例えば、ストリームバッファ1414は、多重化部(MUX)1412から供給されたファイルデータをバッファリングし、所定のタイミングにおいて、若しくは外部からの要求等に基づいて、例えばコネクティビティ1321(図35)等に供給し、各種記録媒体に記録させる。
  さらに、ストリームバッファ1414は、例えばコネクティビティ1321やブロードバンドモデム1333等(いずれも図35)を介して取得したトランスポートストリームをバッファリングし、所定のタイミングにおいて、若しくは外部からの要求等に基づいて、逆多重化部(DMUX)1413に供給する。
  また、ストリームバッファ1414は、例えばコネクティビティ1321(図35)等において各種記録媒体から読み出されたファイルデータをバッファリングし、所定のタイミングにおいて、若しくは外部からの要求等に基づいて、逆多重化部(DMUX)1413に供給する。
  次に、このような構成のビデオプロセッサ1332の動作の例について説明する。例えば、コネクティビティ1321(図35)等からビデオプロセッサ1332に入力されたビデオ信号は、ビデオ入力処理部1401において4:2:2Y/Cb/Cr方式等の所定の方式のデジタル画像データに変換され、フレームメモリ1405に順次書き込まれる。このデジタル画像データは、第1画像拡大縮小部1402または第2画像拡大縮小部1403に読み出されて、4:2:0Y/Cb/Cr方式等の所定の方式へのフォーマット変換および拡大縮小処理が行われ、再びフレームメモリ1405に書き込まれる。この画像データは、エンコード・デコードエンジン1407によって符号化され、ビデオストリームとしてビデオESバッファ1408Aに書き込まれる。
  また、コネクティビティ1321(図35)等からビデオプロセッサ1332に入力されたオーディオ信号は、オーディオエンコーダ1410によって符号化され、オーディオストリームとして、オーディオESバッファ1409Aに書き込まれる。
  ビデオESバッファ1408Aのビデオストリームと、オーディオESバッファ1409Aのオーディオストリームは、多重化部(MUX)1412に読み出されて多重化され、トランスポートストリーム若しくはファイルデータ等に変換される。多重化部(MUX)1412により生成されたトランスポートストリームは、ストリームバッファ1414にバッファされた後、例えばコネクティビティ1321やブロードバンドモデム1333(いずれも図35)等を介して外部ネットワークに出力される。また、多重化部(MUX)1412により生成されたファイルデータは、ストリームバッファ1414にバッファされた後、例えばコネクティビティ1321(図35)等に出力され、各種記録媒体に記録される。
  また、例えばコネクティビティ1321やブロードバンドモデム1333(いずれも図35)等を介して外部ネットワークからビデオプロセッサ1332に入力されたトランスポートストリームは、ストリームバッファ1414にバッファされた後、逆多重化部(DMUX)1413により逆多重化される。また、例えばコネクティビティ1321(図35)等において各種記録媒体から読み出され、ビデオプロセッサ1332に入力されたファイルデータは、ストリームバッファ1414にバッファされた後、逆多重化部(DMUX)1413により逆多重化される。つまり、ビデオプロセッサ1332に入力されたトランスポートストリームまたはファイルデータは、逆多重化部(DMUX)1413によりビデオストリームとオーディオストリームとに分離される。
  オーディオストリームは、オーディオESバッファ1409Bを介してオーディオデコーダ1411に供給され、復号されてオーディオ信号が再生される。また、ビデオストリームは、ビデオESバッファ1408Bに書き込まれた後、エンコード・デコードエンジン1407により順次読み出されて復号されてフレームメモリ1405に書き込まれる。復号された画像データは、第2画像拡大縮小部1403によって拡大縮小処理されて、フレームメモリ1405に書き込まれる。そして、復号された画像データは、ビデオ出力処理部1404に読み出されて、4:2:2Y/Cb/Cr方式等の所定の方式にフォーマット変換され、さらにアナログ信号に変換されて、ビデオ信号が再生出力される。
  このように構成されるビデオプロセッサ1332に本技術を適用する場合、エンコード・デコードエンジン1407に、上述した各実施形態に係る本技術を適用すればよい。つまり、例えば、エンコード・デコードエンジン1407が、第1の実施の形態に係る画像符号化装置101(図12)や第2の実施の形態に係る画像復号装置201(図16)の機能を有するようにすればよい。このようにすることにより、ビデオプロセッサ1332は、図1乃至図20を参照して上述した効果と同様の効果を得ることができる。
  なお、エンコード・デコードエンジン1407において、本技術(すなわち、上述した各実施形態に係る画像符号化装置や画像復号装置の機能)は、論理回路等のハードウエアにより実現するようにしてもよいし、組み込みプログラム等のソフトウエアにより実現するようにしてもよいし、それらの両方により実現するようにしてもよい。
[ビデオプロセッサの他の構成例]
  図37は、本技術を適用したビデオプロセッサ1332(図35)の概略的な構成の他の例を示している。図37の例の場合、ビデオプロセッサ1332は、ビデオデータを所定の方式で符号化・復号する機能とを有する。
  より具体的には、図37に示されるように、ビデオプロセッサ1332は、制御部1511、ディスプレイインタフェース1512、ディスプレイエンジン1513、画像処理エンジン1514、および内部メモリ1515を有する。また、ビデオプロセッサ1332は、コーデックエンジン1516、メモリインタフェース1517、多重化・逆多重化部(MUX DMUX)1518、ネットワークインタフェース1519、およびビデオインタフェース1520を有する。
  制御部1511は、ディスプレイインタフェース1512、ディスプレイエンジン1513、画像処理エンジン1514、およびコーデックエンジン1516等、ビデオプロセッサ1332内の各処理部の動作を制御する。
  図37に示されるように、制御部1511は、例えば、メインCPU1531、サブCPU1532、およびシステムコントローラ1533を有する。メインCPU1531は、ビデオプロセッサ1332内の各処理部の動作を制御するためのプログラム等を実行する。メインCPU1531は、そのプログラム等に従って制御信号を生成し、各処理部に供給する(つまり、各処理部の動作を制御する)。サブCPU1532は、メインCPU1531の補助的な役割を果たす。例えば、サブCPU1532は、メインCPU1531が実行するプログラム等の子プロセスやサブルーチン等を実行する。システムコントローラ1533は、メインCPU1531およびサブCPU1532が実行するプログラムを指定する等、メインCPU1531およびサブCPU1532の動作を制御する。
  ディスプレイインタフェース1512は、制御部1511の制御の下、画像データを例えばコネクティビティ1321(図35)等に出力する。例えば、ディスプレイインタフェース1512は、デジタルデータの画像データをアナログ信号に変換し、再生されたビデオ信号として、またはデジタルデータの画像データのまま、コネクティビティ1321(図35)のモニタ装置等に出力する。
  ディスプレイエンジン1513は、制御部1511の制御の下、画像データに対して、その画像を表示させるモニタ装置等のハードウエアスペックに合わせるように、フォーマット変換、サイズ変換、色域変換等の各種変換処理を行う。
  画像処理エンジン1514は、制御部1511の制御の下、画像データに対して、例えば画質改善のためのフィルタ処理等、所定の画像処理を施す。
  内部メモリ1515は、ディスプレイエンジン1513、画像処理エンジン1514、およびコーデックエンジン1516により共用される、ビデオプロセッサ1332の内部に設けられたメモリである。内部メモリ1515は、例えば、ディスプレイエンジン1513、画像処理エンジン1514、およびコーデックエンジン1516の間で行われるデータの授受に利用される。例えば、内部メモリ1515は、ディスプレイエンジン1513、画像処理エンジン1514、またはコーデックエンジン1516から供給されるデータを格納し、必要に応じて(例えば、要求に応じて)、そのデータを、ディスプレイエンジン1513、画像処理エンジン1514、またはコーデックエンジン1516に供給する。この内部メモリ1515は、どのような記憶デバイスにより実現するようにしてもよいが、一般的にブロック単位の画像データやパラメータ等といった小容量のデータの格納に利用することが多いので、例えばSRAM(Static Random Access Memory)のような比較的(例えば外部メモリ1312と比較して)小容量だが応答速度が高速な半導体メモリにより実現するのが望ましい。
  コーデックエンジン1516は、画像データの符号化や復号に関する処理を行う。このコーデックエンジン1516が対応する符号化・復号の方式は任意であり、その数は1つであってもよいし、複数であってもよい。例えば、コーデックエンジン1516は、複数の符号化・復号方式のコーデック機能を備え、その中から選択されたもので画像データの符号化若しくは符号化データの復号を行うようにしてもよい。
  図37に示される例において、コーデックエンジン1516は、コーデックに関する処理の機能ブロックとして、例えば、MPEG-2 Video1541、AVC/H.2641542、HEVC/H.2651543、HEVC/H.265(Scalable)1544、HEVC/H.265(Multi-view)1545、およびMPEG-DASH1551を有する。
  MPEG-2 Video1541は、画像データをMPEG-2方式で符号化したり復号したりする機能ブロックである。AVC/H.2641542は、画像データをAVC方式で符号化したり復号したりする機能ブロックである。HEVC/H.2651543は、画像データをHEVC方式で符号化したり復号したりする機能ブロックである。HEVC/H.265(Scalable)1544は、画像データをHEVC方式でスケーラブル符号化したりスケーラブル復号したりする機能ブロックである。HEVC/H.265(Multi-view)1545は、画像データをHEVC方式で多視点符号化したり多視点復号したりする機能ブロックである。
  MPEG-DASH1551は、画像データをMPEG-DASH(MPEG-Dynamic Adaptive Streaming over HTTP)方式で送受信する機能ブロックである。MPEG-DASHは、HTTP(HyperText Transfer Protocol)を使ってビデオのストリーミングを行う技術であり、予め用意された解像度等が互いに異なる複数の符号化データの中から適切なものをセグメント単位で選択し伝送することを特徴の1つとする。MPEG-DASH1551は、規格に準拠するストリームの生成やそのストリームの伝送制御等を行い、画像データの符号化・復号については、上述したMPEG-2 Video1541乃至HEVC/H.265(Multi-view)1545を利用する。
  メモリインタフェース1517は、外部メモリ1312用のインタフェースである。画像処理エンジン1514やコーデックエンジン1516から供給されるデータは、メモリインタフェース1517を介して外部メモリ1312に供給される。また、外部メモリ1312から読み出されたデータは、メモリインタフェース1517を介してビデオプロセッサ1332(画像処理エンジン1514若しくはコーデックエンジン1516)に供給される。
  多重化・逆多重化部(MUX DMUX)1518は、符号化データのビットストリーム、画像データ、ビデオ信号等、画像に関する各種データの多重化や逆多重化を行う。この多重化・逆多重化の方法は任意である。例えば、多重化の際に、多重化・逆多重化部(MUX DMUX)1518は、複数のデータを1つにまとめるだけでなく、所定のヘッダ情報等をそのデータに付加することもできる。また、逆多重化の際に、多重化・逆多重化部(MUX DMUX)1518は、1つのデータを複数に分割するだけでなく、分割した各データに所定のヘッダ情報等を付加することもできる。つまり、多重化・逆多重化部(MUX DMUX)1518は、多重化・逆多重化によりデータのフォーマットを変換することができる。例えば、多重化・逆多重化部(MUX DMUX)1518は、ビットストリームを多重化することにより、転送用のフォーマットのビットストリームであるトランスポートストリームや、記録用のファイルフォーマットのデータ(ファイルデータ)に変換することができる。もちろん、逆多重化によりその逆変換も可能である。
  ネットワークインタフェース1519は、例えばブロードバンドモデム1333やコネクティビティ1321(いずれも図35)等向けのインタフェースである。ビデオインタフェース1520は、例えばコネクティビティ1321やカメラ1322(いずれも図35)等向けのインタフェースである。
  次に、このようなビデオプロセッサ1332の動作の例について説明する。例えば、コネクティビティ1321やブロードバンドモデム1333(いずれも図35)等を介して外部ネットワークからトランスポートストリームを受信すると、そのトランスポートストリームは、ネットワークインタフェース1519を介して多重化・逆多重化部(MUX DMUX)1518に供給されて逆多重化され、コーデックエンジン1516により復号される。コーデックエンジン1516の復号により得られた画像データは、例えば、画像処理エンジン1514により所定の画像処理が施され、ディスプレイエンジン1513により所定の変換が行われ、ディスプレイインタフェース1512を介して例えばコネクティビティ1321(図35)等に供給され、その画像がモニタに表示される。また、例えば、コーデックエンジン1516の復号により得られた画像データは、コーデックエンジン1516により再符号化され、多重化・逆多重化部(MUX DMUX)1518により多重化されてファイルデータに変換され、ビデオインタフェース1520を介して例えばコネクティビティ1321(図35)等に出力され、各種記録媒体に記録される。
  さらに、例えば、コネクティビティ1321(図35)等により図示せぬ記録媒体から読み出された、画像データが符号化された符号化データのファイルデータは、ビデオインタフェース1520を介して多重化・逆多重化部(MUX DMUX)1518に供給されて逆多重化され、コーデックエンジン1516により復号される。コーデックエンジン1516の復号により得られた画像データは、画像処理エンジン1514により所定の画像処理が施され、ディスプレイエンジン1513により所定の変換が行われ、ディスプレイインタフェース1512を介して例えばコネクティビティ1321(図35)等に供給され、その画像がモニタに表示される。また、例えば、コーデックエンジン1516の復号により得られた画像データは、コーデックエンジン1516により再符号化され、多重化・逆多重化部(MUX DMUX)1518により多重化されてトランスポートストリームに変換され、ネットワークインタフェース1519を介して例えばコネクティビティ1321やブロードバンドモデム1333(いずれも図35)等に供給され図示せぬ他の装置に伝送される。
  なお、ビデオプロセッサ1332内の各処理部の間での画像データやその他のデータの授受は、例えば、内部メモリ1515や外部メモリ1312を利用して行われる。また、パワーマネージメントモジュール1313は、例えば制御部1511への電力供給を制御する。
  このように構成されるビデオプロセッサ1332に本技術を適用する場合、コーデックエンジン1516に、上述した各実施形態に係る本技術を適用すればよい。つまり、例えば、コーデックエンジン1516が、第1の実施の形態に係る画像符号化装置101(図12)や第2の実施の形態に係る画像復号装置201(図16)を実現する機能ブロックを有するようにすればよい。このようにすることにより、ビデオプロセッサ1332は、図1乃至図20を参照して上述した効果と同様の効果を得ることができる。
  なお、コーデックエンジン1516において、本技術(すなわち、上述した各実施形態に係る画像符号化装置や画像復号装置の機能)は、論理回路等のハードウエアにより実現するようにしてもよいし、組み込みプログラム等のソフトウエアにより実現するようにしてもよいし、それらの両方により実現するようにしてもよい。
  以上にビデオプロセッサ1332の構成を2例示したが、ビデオプロセッサ1332の構成は任意であり、上述した2例以外のものであってもよい。また、このビデオプロセッサ1332は、1つの半導体チップとして構成されるようにしてもよいが、複数の半導体チップとして構成されるようにしてもよい。例えば、複数の半導体を積層する3次元積層LSIとしてもよい。また、複数のLSIにより実現されるようにしてもよい。
 [装置への適用例]
  ビデオセット1300は、画像データを処理する各種装置に組み込むことができる。例えば、ビデオセット1300は、テレビジョン装置900(図27)、携帯電話機920(図28)、記録再生装置940(図29)、撮像装置960(図30)等に組み込むことができる。ビデオセット1300を組み込むことにより、その装置は、図1乃至図20を参照して上述した効果と同様の効果を得ることができる。
  また、ビデオセット1300は、例えば、図32のデータ伝送システム1000におけるパーソナルコンピュータ1004、AV機器1005、タブレットデバイス1006、および携帯電話機1007等の端末装置、図33のデータ伝送システム1100における放送局1101および端末装置1102、並びに、図34の撮像システム1200における撮像装置1201およびスケーラブル符号化データ記憶装置1202等にも組み込むことができる。ビデオセット1300を組み込むことにより、その装置は、図1乃至図20を参照して上述した効果と同様の効果を得ることができる。さらに、図38のコンテンツ再生システムや、図44の無線通信システムにおける各装置にも組み込むことができる。
  なお、上述したビデオセット1300の各構成の一部であっても、ビデオプロセッサ1332を含むものであれば、本技術を適用した構成として実施することができる。例えば、ビデオプロセッサ1332のみを本技術を適用したビデオプロセッサとして実施することができる。また、例えば、上述したように点線1341により示されるプロセッサやビデオモジュール1311等を、本技術を適用したプロセッサやモジュール等として実施することができる。さらに、例えば、ビデオモジュール1311、外部メモリ1312、パワーマネージメントモジュール1313、およびフロントエンドモジュール1314を組み合わせ、本技術を適用したビデオユニット1361として実施することもできる。いずれの構成の場合であっても、図1乃至図20を参照して上述した効果と同様の効果を得ることができる。
  つまり、ビデオプロセッサ1332を含むものであればどのような構成であっても、ビデオセット1300の場合と同様に、画像データを処理する各種装置に組み込むことができる。例えば、ビデオプロセッサ1332、点線1341により示されるプロセッサ、ビデオモジュール1311、または、ビデオユニット1361を、テレビジョン装置900(図27)、携帯電話機920(図28)、記録再生装置940(図29)、撮像装置960(図30)、図32のデータ伝送システム1000におけるパーソナルコンピュータ1004、AV機器1005、タブレットデバイス1006、および携帯電話機1007等の端末装置、図33のデータ伝送システム1100における放送局1101および端末装置1102、並びに、図34の撮像システム1200における撮像装置1201およびスケーラブル符号化データ記憶装置1202等に組み込むことができる。さらに、図38のコンテンツ再生システムや、図44の無線通信システムにおける各装置にも組み込むことができる。そして、本技術を適用したいずれかの構成を組み込むことにより、その装置は、ビデオセット1300の場合と同様に、図1乃至図20を参照して上述した効果と同様の効果を得ることができる。
  なお、本技術は、予め用意された解像度等が互いに異なる複数の符号化データの中から適切なものをセグメント単位で選択して使用する、例えば、後述するMPEG DASH等のようなHTTPストリーミングのコンテンツ再生システムやWi-Fi規格の無線通信システムにも適用することができる。
  <9.MPEG-DASHの応用例>
 [コンテンツ再生システムの概要]
 まず、図38乃至図40を参照し、本技術を適用可能なコンテンツ再生システムについて概略的に説明する。
 以下では、まず、このような各実施形態において共通する基本構成について図38および図39を参照して説明する。
 図38は、コンテンツ再生システムの構成を示した説明図である。図38に示したように、コンテンツ再生システムは、コンテンツサーバ1610、1611と、ネットワーク1612と、コンテンツ再生装置1620(クライアント装置)と、を備える。
 コンテンツサーバ1610、1611とコンテンツ再生装置1620は、ネットワーク1612を介して接続されている。このネットワーク1612は、ネットワーク1612に接続されている装置から送信される情報の有線、または無線の伝送路である。
 例えば、ネットワーク1612は、インターネット、電話回線網、衛星通信網などの公衆回線網や、Ethernet(登録商標)を含む各種のLAN(Local Area Network)、WAN(Wide Area Network)などを含んでもよい。また、ネットワーク1612は、IP-VPN(Internet Protocol-Virtual Private Network)などの専用回線網を含んでもよい。
 コンテンツサーバ1610は、コンテンツデータを符号化し、符号化データおよび符号化データのメタ情報を含むデータファイルを生成して記憶する。なお、コンテンツサーバ1610がMP4形式のデータファイルを生成する場合、符号化データは「mdat」に該当し、メタ情報は「moov」に該当する。
 また、コンテンツデータは、音楽、講演およびラジオ番組などの音楽データや、映画、テレビジョン番組、ビデオプログラム、写真、文書、絵画および図表などの映像データや、ゲームおよびソフトウエアなどであってもよい。
 ここで、コンテンツサーバ1610は、同一コンテンツに関し、異なるビットレートで複数のデータファイルを生成する。またコンテンツサーバ1611は、コンテンツ再生装置1620からのコンテンツの再生要求に対して、コンテンツサーバ1610のURLの情報に、コンテンツ再生装置1620で当該URLに付加させるパラメータの情報を含めてコンテンツ再生装置1620に送信する。以下、図39を参照して当該事項について具体的に説明する。
 図39は、図38のコンテンツ再生システムにおけるデータの流れを示した説明図である。コンテンツサーバ1610は、同一のコンテンツデータを異なるビットレートで符号化し、図39に示したように例えば2MbpsのファイルA、1.5MbpsのファイルB、1MbpsのファイルCを生成する。相対的に、ファイルAはハイビットレートであり、ファイルBは標準ビットレートであり、ファイルCはロービットレートである。
 また、図39に示したように、各ファイルの符号化データは複数のセグメントに区分されている。例えば、ファイルAの符号化データは「A1」、「A2」、「A3」、・・・「An」というセグメントに区分されており、ファイルBの符号化データは「B1」、「B2」、「B3」、・・・「Bn」というセグメントに区分されており、ファイルCの符号化データは「C1」、「C2」、「C3」、・・・「Cn」というセグメントに区分されている。
 なお、各セグメントはMP4のシンクサンプル(たとえば、AVC/H.264の映像符号化ではIDR-ピクチャ)で始まる単独で再生可能な1または2以上の映像符号化データおよび音声符号化データより構成サンプルで構成されてもよい。例えば、一秒30フレームのビデオデータが15フレーム固定長のGOP(Group of Picture)にて符号化されていた場合、各セグメントは、4GOPに相当する2秒分の映像ならびに音声符号化データであっても、20GOPに相当する10秒分の映像ならびに音声符号化データであってもよい。
 また、各ファイルにおける配置順番が同一のセグメントによる再生範囲(コンテンツの先頭からの時間位置の範囲)は同一である。例えば、セグメント「A2」、セグメント「B2」、およびセグメント「C2」の再生範囲は同一であり、各セグメントが2秒分の符号化データである場合、セグメント「A2」、セグメント「B2」、およびセグメント「C2」の再生範囲は、いずれもコンテンツの2秒乃至4秒である。
 コンテンツサーバ1610は、このような複数のセグメントから構成されるファイルA乃至ファイルCを生成すると、ファイルA乃至ファイルCを記憶する。そして、コンテンツサーバ1610は、図39に示したように、異なるファイルを構成するセグメントをコンテンツ再生装置1620に順次に送信し、コンテンツ再生装置1620は、受信したセグメントをストリーミング再生する。
 ここで、本実施形態によるコンテンツサーバ1610は、各符号化データのビットレート情報およびアクセス情報を含むプレイリストファイル(以下、MPD:Media Presentation Description)をコンテンツ再生装置1620に送信し、コンテンツ再生装置1620は、MPDに基づき、複数のビットレートのうちのいずれかのビットレートを選択し、選択したビットレートに対応するセグメントの送信をコンテンツサーバ1610に要求する。
 図38では、1つのコンテンツサーバ1610のみが図示されているが、本開示は係る例に限定されないことは言うまでもない。
 図40は、MPDの具体例を示した説明図である。図40に示したように、MPDには、異なるビットレート(BANDWIDTH)を有する複数の符号化データに関するアクセス情報が含まれる。例えば、図40に示したMPDは、256Kbps、1.024Mbps、1.384Mbps、1.536Mbps、2.048Mbpsの各々の符号化データが存在することを示す共に、各符号化データに関するアクセス情報を含む。コンテンツ再生装置1620は、かかるMPDに基づき、ストリーミング再生する符号化データのビットレートを動的に変更することが可能である。
 なお、図38にはコンテンツ再生装置1620の一例として携帯端末を示しているが、コンテンツ再生装置1620はかかる例に限定されない。例えば、コンテンツ再生装置1620は、PC(Personal Computer)、家庭用映像処理装置(DVDレコーダ、ビデオデッキなど)、PDA(Personal Digital Assistants)、家庭用ゲーム機器、家電機器などの情報処理装置であってもよい。また、コンテンツ再生装置1620は、携帯電話、PHS(Personal Handyphone System)、携帯用音楽再生装置、携帯用映像処理装置、携帯用ゲーム機器などの情報処理装置であってもよい。
 [コンテンツサーバ1610の構成]
 以上、図38乃至図40を参照し、コンテンツ再生システムの概要を説明した。続いて、図41を参照し、コンテンツサーバ1610の構成を説明する。
 図41は、コンテンツサーバ1610の構成を示した機能ブロック図である。図41に示したように、コンテンツサーバ1610は、ファイル生成部1631と、記憶部1632と、通信部1633と、を備える。
 ファイル生成部1631は、コンテンツデータを符号化するエンコーダ1641を備え、同一のコンテンツでビットレートが異なる複数の符号化データ、および上述したMPDを生成する。例えば、ファイル生成部1631は、256Kbps、1.024Mbps、1.384Mbps、1.536Mbps、2.048Mbpsの各々の符号化データを生成した場合、図40に示したようなMPDを生成する。
 記憶部1632は、ファイル生成部1631により生成されたビットレートが異なる複数の符号化データおよびMPDを記憶する。この記憶部1632は、不揮発性メモリ、磁気ディスク、光ディスク、およびMO(Magneto Optical)ディスクなどの記憶媒体であってもよい。不揮発性メモリとしては、例えば、EEPROM(Electrically Erasable Programmable Read-Only Memory)、EPROM(Erasable Programmable ROM)があげられる。また、磁気ディスクとしては、ハードディスクおよび円盤型磁性体ディスクなどがあげられる。また、光ディスクとしては、CD(Compact Disc)、DVD-R(Digital Versatile Disc Recordable)およびBD(Blu-Ray Disc(登録商標))などがあげられる。
 通信部1633は、コンテンツ再生装置1620とのインタフェースであって、ネットワーク1612を介してコンテンツ再生装置1620と通信する。より詳細には、通信部1633は、HTTPに従ってコンテンツ再生装置1620と通信するHTTPサーバとしての機能を有する。例えば、通信部1633は、MPDをコンテンツ再生装置1620に送信し、HTTPに従ってコンテンツ再生装置1620からMPDに基づいて要求された符号化データを記憶部1632から抽出し、HTTPレスポンスとしてコンテンツ再生装置1620に符号化データを送信する。
 [コンテンツ再生装置1620の構成]
 以上、本実施形態によるコンテンツサーバ1610の構成を説明した。続いて、図42を参照し、コンテンツ再生装置1620の構成を説明する。
 図42は、コンテンツ再生装置1620の構成を示した機能ブロック図である。図42に示したように、コンテンツ再生装置1620は、通信部1651と、記憶部1652と、再生部1653と、選択部1654と、現在地取得部1656と、を備える。
 通信部1651は、コンテンツサーバ1610とのインタフェースであって、コンテンツサーバ1610に対してデータを要求し、コンテンツサーバ1610からデータを取得する。より詳細には、通信部1651は、HTTPに従ってコンテンツ再生装置1620と通信するHTTPクライアントとしての機能を有する。例えば、通信部1651は、HTTP Rangeを利用することにより、コンテンツサーバ1610からMPDや符号化データのセグメントを選択的に取得することができる。
 記憶部1652は、コンテンツの再生に関する種々の情報を記憶する。例えば、通信部1651によりコンテンツサーバ1610から取得されるセグメントを順次にバッファリングする。記憶部1652にバッファリングされた符号化データのセグメントは、FIFO(First In First Out)で再生部1653へ順次に供給される。
 また記憶部1652は、後述のコンテンツサーバ1611から要求された、MPDに記述されているコンテンツのURLへのパラメータの付加指示に基づき、通信部1651でURLにパラメータを付加して、そのURLへアクセスするための定義を記憶する。
 再生部1653は、記憶部1652から供給されるセグメントを順次に再生する。具体的には、再生部1653は、セグメントのデコード、DA変換、およびレンダリングなどを行う。
 選択部1654は、MPDに含まれるいずれのビットレートに対応する符号化データのセグメントを取得するかを同一コンテンツ内で順次に選択する。例えば、選択部1654がネットワーク1612の帯域に応じてセグメント「A1」、「B2」、「A3」を順次に選択すると、図39に示したように、通信部1651がコンテンツサーバ1610からセグメント「A1」、「B2」、「A3」を順次に取得する。
 現在地取得部1656は、コンテンツ再生装置1620の現在の位置を取得するものであり、例えばGPS(Global Positioning System)受信機などの現在地を取得するモジュールで構成されていても良い。また現在地取得部1656は、無線ネットワークを使用してコンテンツ再生装置1620の現在の位置を取得するものであってもよい。
 [コンテンツサーバ1611の構成]
 図43は、コンテンツサーバ1611の構成例を示す説明図である。図43に示したように、コンテンツサーバ1611は、記憶部1671と、通信部1672と、を備える。
 記憶部1671は、MPDのURLの情報を記憶する。MPDのURLの情報は、コンテンツの再生を要求するコンテンツ再生装置1620からの求めに応じ、コンテンツサーバ1611からコンテンツ再生装置1620へ送信される。また記憶部1671は、コンテンツ再生装置1620へのMPDのURLの情報を提供する際に、当該MPDに記述されているURLにコンテンツ再生装置1620でパラメータを付加させる際の定義情報を記憶する。
 通信部1672は、コンテンツ再生装置1620とのインタフェースであって、ネットワーク1612を介してコンテンツ再生装置1620と通信する。すなわち通信部1672は、コンテンツの再生を要求するコンテンツ再生装置1620から、MPDのURLの情報の要求を受信し、コンテンツ再生装置1620へMPDのURLの情報を送信する。通信部1672から送信されるMPDのURLには、コンテンツ再生装置1620でパラメータを付加させるための情報が含まれる。
 コンテンツ再生装置1620でMPDのURLに付加させるパラメータについては、コンテンツサーバ1611およびコンテンツ再生装置1620で共有する定義情報で様々に設定することが出来る。一例を挙げれば、コンテンツ再生装置1620の現在位置、コンテンツ再生装置1620を使用するユーザのユーザID、コンテンツ再生装置1620のメモリサイズ、コンテンツ再生装置1620のストレージの容量などの情報を、コンテンツ再生装置1620でMPDのURLに付加させることが出来る。
 以上のような構成のコンテンツ再生システムにおいて、図1乃至図20を参照して上述したような本技術を適用することにより、図1乃至図20を参照して上述した効果と同様の効果を得ることができる。
  すなわち、コンテンツサーバ1610のエンコーダ1641は、上述した実施形態に係る画像符号化装置101(図12)の機能を有する。また、コンテンツ再生装置1620の再生部1653は、上述した実施形態に係る画像復号装置201(図16)の機能を有する。それにより、画像における色差信号のフォーマットが4:2:2の場合のイントラ予測の符号化効率を向上させることができる。
  また、コンテンツ再生システムにおいて、本技術により符号化されたデータを送受信することにより、画像における色差信号のフォーマットが4:2:2の場合のイントラ予測の符号化効率を向上させることができる。
  <10.Wi-Fi規格の無線通信システムの応用例>
[無線通信装置の基本動作例]
 本技術を適用可能な無線通信システムにおける無線通信装置の基本動作例について説明する。
  最初に、P2P(Peer to Peer)接続を確立して特定のアプリケーションを動作させるまでの無線パケット送受信がなされる。
  次に、第2層で接続する前に、使用する特定のアプリケーションを指定してからP2P接続を確立して特定のアプリケーションを動作させるまでの無線パケット送受信がなされる。その後、第2層での接続後に、特定のアプリケーションを起動する場合の無線パケット送受信がなされる。
[特定のアプリケーション動作開始時における通信例]
  図44および図45は、上述したP2P(Peer to Peer)接続を確立して特定のアプリケーションを動作させるまでの無線パケット送受信の例であり、無線通信の基礎となる各装置による通信処理例を示すシーケンスチャートである。具体的には、Wi-Fi Allianceにおいて標準化されているWi-Fiダイレクト(Direct)規格(Wi-Fi P2Pと呼ばれることもある)での接続に至るダイレクト接続の確立手順の一例を示す。
  ここで、Wi-Fiダイレクトでは、複数の無線通信装置が互いの存在を検出する(Device Discovery、Service Discovery)。そして、接続機器選択を行うとその選択された機器間において、WPS(Wi-Fi Protected Setup)で機器認証を行うことによりダイレクト接続を確立する。また、Wi-Fiダイレクトでは、複数の無線通信装置が親機(Group Owner)または子機(Client)の何れとしての役割を担うかを決定して通信グループを形成する。
  ただし、この通信処理例では、一部のパケット送受信については省略して示す。例えば、初回接続時には、上述したように、WPSを使うためのパケット交換が必要であり、AuthenticationRequest/Responseのやり取り等においてもパケット交換が必要となる。しかしながら、図44および図45では、これらのパケット交換についての図示を省略し、2回目以降の接続についてのみを示す。
 なお、図44および図45では、第1無線通信装置1701および第2無線通信装置1702間における通信処理例を示すが、他の無線通信装置間における通信処理についても同様である。
 最初に、第1無線通信装置1701および第2無線通信装置1702間においてDevice Discoveryが行われる(1711)。例えば、第1無線通信装置1701は、Probe request(応答要求信号)を送信し、このProbe requestに対するProbe response(応答信号)を第2無線通信装置1702から受信する。これにより、第1無線通信装置1701および第2無線通信装置1702は、互いの存在を発見することができる。また、Device Discoveryにより、相手のデバイス名や種類(TV、PC、スマートフォン等)を取得することができる。
 続いて、第1無線通信装置1701および第2無線通信装置1702間においてService Discoveryが行われる(1712)。例えば、第1無線通信装置1701は、Device Discoveryで発見した第2無線通信装置1702が対応しているサービスを問い合わせるService Discovery Queryを送信する。そして、第1無線通信装置1701は、Service Discovery Responseを第2無線通信装置1702から受信することにより、第2無線通信装置1702が対応しているサービスを取得する。すなわち、Service Discoveryにより、相手が実行可能なサービス等を取得することができる。相手が実行可能なサービスは、例えば、service、protocol(DLNA(Digital Living Network Alliance) DMR(Digital Media Renderer)等)である。
 続いて、ユーザにより接続相手の選択操作(接続相手選択操作)が行われる(1713)。この接続相手選択操作は、第1無線通信装置1701および第2無線通信装置1702の何れか一方のみに発生することもある。例えば、第1無線通信装置1701の表示部に接続相手選択画面が表示され、この接続相手選択画面において接続相手として第2無線通信装置1702がユーザ操作により選択される。
 ユーザにより接続相手選択操作が行われると(1713)、第1無線通信装置1701および第2無線通信装置1702間においてGroup Owner Negotiationが行われる(1714)。図44および図45では、Group Owner Negotiationの結果により、第1無線通信装置1701がグループオーナー(Group Owner)1715になり、第2無線通信装置1702がクライアント(Client)1716になる例を示す。
 続いて、第1無線通信装置1701および第2無線通信装置1702間において、各処理(1717乃至1720)が行われることにより、ダイレクト接続が確立される。すなわち、Association(L2(第2層) link確立)(1717)、Secure link確立(1718)が順次行われる。また、IP Address Assignment(1719)、SSDP(Simple Service Discovery Protocol)等によるL3上でのL4 setup(1720)が順次行われる。なお、L2(layer2)は、第2層(データリンク層)を意味し、L3(layer3)は、第3層(ネットワーク層)を意味し、L4(layer4)は、第4層(トランスポート層)を意味する。
 続いて、ユーザにより特定のアプリケーションの指定または起動操作(アプリ指定・起動操作)が行われる(1721)。このアプリ指定・起動操作は、第1無線通信装置1701および第2無線通信装置1702の何れか一方のみに発生することもある。例えば、第1無線通信装置1701の表示部にアプリ指定・起動操作画面が表示され、このアプリ指定・起動操作画面において特定のアプリケーションがユーザ操作により選択される。
 ユーザによりアプリ指定・起動操作が行われると(1721)、このアプリ指定・起動操作に対応する特定のアプリケーションが第1無線通信装置1701および第2無線通信装置1702間において実行される(1722)。
 ここで、Wi-Fi Direct規格以前の仕様(IEEE802.11で標準化された仕様)の範囲内で、AP(Access Point)-STA(Station)間の接続を行う場合を想定する。この場合には、第2層で接続する前(IEEE802.11用語ではassociation前)には、どのようなデバイスと繋ごうとしているのかを事前に知ることができなかった。
 これに対して、図44および図45に示すように、Wi-Fi Directでは、Device discoveryやService Discovery(option)において、接続候補相手を探す際に、接続相手の情報を取得することができる。この接続相手の情報は、例えば、基本的なデバイスのタイプや、対応している特定のアプリケーション等である。そして、その取得された接続相手の情報に基づいて、ユーザに接続相手を選択させることができる。
 この仕組みを拡張して、第2層で接続する前に特定のアプリケーションを指定して、接続相手を選択し、この選択後に、自動的に特定のアプリケーションを起動させる無線通信システムを実現することも可能である。このような場合の接続に至るシーケンスの一例を、図47に示す。また、この通信処理において送受信されるフレームフォーマット(frame format)の構成例を図46に示す。
[フレームフォーマットの構成例]
 図46は、本技術の基礎となる各装置による通信処理において送受信されるフレームフォーマット(frame format)の構成例を模式的に示す図である。すなわち、図46には、第2層での接続を確立するためのMAC frameの構成例を示す。具体的には、図47に示すシーケンスを実現するためのAssociation Request/Response(1787)のフレームフォーマットの一例である。
  なお、Frame Control(1751)からSequence Control(1756)までは、MACヘッダである。また、Association Requestを送信する際には、Frame Control(1751)において、B3B2="0b00"、かつ、B7B6B5B4="0b0000"が設定される。また、Association Responseをencapsulateする際には、Frame Control(1751)において、B3B2="0b00"、かつ、B7B6B5B4="0b0001"が設定される。なお、「0b00」は、2進法で「00」であることを示し、「0b0000」は、2進法で「0000」であることを示し、「0b0001」は、2進法で「0001」であることを示す。
 ここで、図46に示すMAC frameは、基本的には、IEEE802.11-2007仕様書section7.2.3.4節と7.2.3.5節に記載のAssociation Request/Responseframe formatである。ただし、IEEE802.11仕様書内で定義されているInformation Element(以下、IEと省略)だけでなく、独自に拡張したIEを含めている点が異なる。
 また、Vendor Specific IE(1760)であることを示すため、IE Type(Information Element ID(1761))には、10進数で127がセットされる。この場合、IEEE802.11-2007仕様7.3.2.26節により、Lengthフィールド(1762)と、OUIフィールド(1763)が続き、この後にvendor specific content(1764)が配置される。
 Vendor specific content(1764)の内容としては、最初にvendor specific IEのtypeを示すフィールド(IE type(1765))を設ける。そして、この後に、複数のsubelement(1766)を格納することができる構成とすることが考えられる。
 subelement(1766)の内容として、使われるべき特定のアプリケーションの名称(1767)や、その特定のアプリケーション動作時のデバイスの役割(1768)を含めることが考えられる。また、特定のアプリケーション、または、その制御のために使われるポート番号等の情報(L4セットアップのための情報)(1769)や、特定のアプリケーション内でのCapabilityに関する情報(Capability情報)を含めることが考えられる。ここで、Capability情報は、例えば、指定する特定のアプリケーションがDLNAの場合に、音声送出/再生に対応している、映像送出/再生に対応している等を特定するための情報である。
 以上のような構成の無線通信システムにおいて、図1乃至図20を参照して上述したような本技術を適用することにより、図1乃至図20を参照して上述した効果と同様の効果を得ることができる。すなわち、画像における色差信号のフォーマットが4:2:2の場合のイントラ予測の符号化効率を向上させることができる。また、上述した無線通信システムにおいて、本技術により符号化されたデータを送受信することにより、画像における色差信号のフォーマットが4:2:2の場合のイントラ予測の符号化効率を向上させることができる。
  なお、本明細書では、各種情報が、符号化ストリームに多重化されて、符号化側から復号側へ伝送される例について説明した。しかしながら、これら情報を伝送する手法はかかる例に限定されない。例えば、これら情報は、符号化ビットストリームに多重化されることなく、符号化ビットストリームと関連付けられた別個のデータとして伝送され又は記録されてもよい。ここで、「関連付ける」という用語は、ビットストリームに含まれる画像(スライス若しくはブロックなど、画像の一部であってもよい)と当該画像に対応する情報とを復号時にリンクさせ得るようにすることを意味する。即ち、情報は、画像(又はビットストリーム)とは別の伝送路上で伝送されてもよい。また、情報は、画像(又はビットストリーム)とは別の記録媒体(又は同一の記録媒体の別の記録エリア)に記録されてもよい。さらに、情報と画像(又はビットストリーム)とは、例えば、複数フレーム、1フレーム、又はフレーム内の一部分などの任意の単位で互いに関連付けられてよい。
  以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示はかかる例に限定されない。本開示の属する技術の分野における通常の知識を有する者であれば、請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
 なお、本技術は以下のような構成も取ることができる。
 (1) 画像における色差信号のフォーマットが4:2:2であるか否かに応じて、イントラ予測モードのコードナンバ割当を切り替えるコードナンバ割当部と、
 前記コードナンバ割当部により切り替えられたコードナンバ割当に基づいて、前記色差信号の予測ブロックの予測画像を生成するイントラ予測部と、
  前記イントラ予測部により生成された予測画像を用いて符号化し、ビットストリームを生成する符号化部と
 を備える画像符号化装置。
 (2)  前記コードナンバ割当部は、SPS(Sequence Parameter Set)におけるchroma_format_idcの値に応じて、前記イントラ予測モードのコードナンバ割当を切り替える
 前記(1)に記載の画像符号化装置。
 (3) 前記コードナンバ割当部は、前記chroma_format_idc=2であるとき、Vertical予測よりHorizontal予測に、より小さなコードナンバを割り当てるように設定されたコードナンバ割当に切り替える
 前記(2)に記載の画像符号化装置。
 (4) 前記コードナンバ割当部は、前記chroma_format_idc=2であるとき、Vertical予測よりDC予測に、より小さなコードナンバを割り当てるように設定されたコードナンバ割当に切り替える
 前記(2)または(3)に記載の画像符号化装置。
 (5) 前記コードナンバ割当部は、前記chroma_format_idc=2であるとき、0=Planar予測、1=Horizontal予測、2=DC予測、3=Vertical予測、4=輝度信号イントラ予測モードに設定されたコードナンバ割当に切り替える
 前記(2)乃至(4)のいずれかに記載の画像符号化装置。
 (6) 前記符号化部は、前記イントラ予測部により生成された予測画像が対応するイントラ予測モードのコードナンバをGolomb符号化する
 前記(1)乃至(5)のいずれかに記載の画像符号化装置。
 (7) 画像符号化装置が、
  画像の色差信号のフォーマットが4:2:2であるか否かに応じて、イントラ予測モードのコードナンバ割当を切り替え、
 切り替えられたコードナンバ割当に基づいて、前記色差信号の予測ブロックの予測画像を生成し、
  生成された予測画像を用いて符号化し、ビットストリームを生成する
 画像符号化方法。
 (8) ビットストリームを復号して、画像を生成する復号部と、
 前記復号部により生成された画像に対応する入力画像の色差信号のフォーマットが4:2:2であるか否かに応じて、イントラ予測モードのコードナンバ割当を切り替えるコードナンバ割当部と、
 前記コードナンバ割当部により切り替えられたコードナンバ割当に基づいて、前記色差信号の予測ブロックの予測画像を生成するイントラ予測部と
 を備える画像復号装置。
 (9) 前記コードナンバ割当部は、SPS(Sequence Parameter Set)におけるchroma_format_idcの値に応じて、前記イントラ予測モードのコードナンバ割当を切り替える
 前記(8)に記載の画像復号装置。
 (10) 前記コードナンバ割当部は、前記chroma_format_idc=2であるとき、Vertical予測よりHorizontal予測に、より小さなコードナンバを割り当てるように設定されたコードナンバ割当に切り替える
 前記(9)に記載の画像復号装置。
 (11) 前記コードナンバ割当部は、前記chroma_format_idc=2であるとき、Vertical予測よりDC予測に、より小さなコードナンバを割り当てるように設定されたコードナンバ割当に切り替える
 前記(9)または(10)に記載の画像復号装置。
 (12) 前記コードナンバ割当部は、前記chroma_format_idc=2であるとき、0=Planar予測、1=Horizontal予測、2=DC予測、3=Vertical予測、4=輝度信号イントラ予測モードに設定されたコードナンバ割当に切り替える
 前記(9)および(11)のいずれかに記載の画像復号装置。
 (13) 前記復号部は、Golomb符号化されているイントラ予測モードのコードナンバを復号し、
 前記イントラ予測部は、前記復号部により復号されたコードナンバのイントラ予測モードと、前記コードナンバ割当部により切り替えられたコードナンバ割当とに基づいて、前記色差信号の予測ブロックの予測画像を生成する
 前記(8)乃至(12)のいずれかに記載の画像復号装置。
 (14) 画像復号装置が、
 ビットストリームを復号して、画像を生成し、
 生成された画像に対応する入力画像の色差信号のフォーマットが4:2:2であるか否かに応じて、イントラ予測モードのコードナンバ割当を切り替え、
 切り替えられたコードナンバ割当に基づいて、前記色差信号の予測ブロックの予測画像を生成する
 画像復号方法。
  101  画像符号化装置,  116  可逆符号化部,  124  イントラ予測部,  131 カラーフォーマット判別部,  132 コードナンバ割当部,  141 カラーフォーマットバッファ, 142 4:2:2判定部, 151 4:2:2用コードナンババッファ, 152 デフォルトコードナンババッファ, 201 画像復号装置, 212 可逆復号部, 221 イントラ予測部, 231 カラーフォーマット判別部, 232 コードナンバ割当部, 241 カラーフォーマットバッファ, 242 4:2:2判定部, 251 4:2:2用コードナンババッファ, 252 デフォルトコードナンババッファ

Claims (14)

  1.   画像における色差信号のフォーマットが4:2:2であるか否かに応じて、イントラ予測モードのコードナンバ割当を切り替えるコードナンバ割当部と、
     前記コードナンバ割当部により切り替えられたコードナンバ割当に基づいて、前記色差信号の予測ブロックの予測画像を生成するイントラ予測部と、
      前記イントラ予測部により生成された予測画像を用いて符号化し、ビットストリームを生成する符号化部と
     を備える画像符号化装置。
  2.  前記コードナンバ割当部は、SPS(Sequence Parameter Set)におけるchroma_format_idcの値に応じて、前記イントラ予測モードのコードナンバ割当を切り替える
     請求項1に記載の画像符号化装置。
  3.  前記コードナンバ割当部は、前記chroma_format_idc=2であるとき、Vertical予測よりHorizontal予測に、より小さなコードナンバを割り当てるように設定されたコードナンバ割当に切り替える
     請求項2に記載の画像符号化装置。
  4.  前記コードナンバ割当部は、前記chroma_format_idc=2であるとき、Vertical予測よりDC予測に、より小さなコードナンバを割り当てるように設定されたコードナンバ割当に切り替える
     請求項3に記載の画像符号化装置。
  5.  前記コードナンバ割当部は、前記chroma_format_idc=2であるとき、0=Planar予測、1=Horizontal予測、2=DC予測、3=Vertical予測、4=輝度信号イントラ予測モードに設定されたコードナンバ割当に切り替える
     請求項4に記載の画像符号化装置。
  6.  前記符号化部は、前記イントラ予測部により生成された予測画像が対応するイントラ予測モードのコードナンバをGolomb符号化する
     請求項5に記載の画像符号化装置。
  7.  画像符号化装置が、
      画像の色差信号のフォーマットが4:2:2であるか否かに応じて、イントラ予測モードのコードナンバ割当を切り替え、
     切り替えられたコードナンバ割当に基づいて、前記色差信号の予測ブロックの予測画像を生成し、
      生成された予測画像を用いて符号化し、ビットストリームを生成する
     画像符号化方法。
  8.  ビットストリームを復号して、画像を生成する復号部と、
     前記復号部により生成された画像に対応する入力画像の色差信号のフォーマットが4:2:2であるか否かに応じて、イントラ予測モードのコードナンバ割当を切り替えるコードナンバ割当部と、
     前記コードナンバ割当部により切り替えられたコードナンバ割当に基づいて、前記色差信号の予測ブロックの予測画像を生成するイントラ予測部と
     を備える画像復号装置。
  9.  前記コードナンバ割当部は、SPS(Sequence Parameter Set)におけるchroma_format_idcの値に応じて、前記イントラ予測モードのコードナンバ割当を切り替える
     請求項8に記載の画像復号装置。
  10.  前記コードナンバ割当部は、前記chroma_format_idc=2であるとき、Vertical予測よりHorizontal予測に、より小さなコードナンバを割り当てるように設定されたコードナンバ割当に切り替える
     請求項9に記載の画像復号装置。
  11.  前記コードナンバ割当部は、前記chroma_format_idc=2であるとき、Vertical予測よりDC予測に、より小さなコードナンバを割り当てるように設定されたコードナンバ割当に切り替える
     請求項10に記載の画像復号装置。
  12.  前記コードナンバ割当部は、前記chroma_format_idc=2であるとき、0=Planar予測、1=Horizontal予測、2=DC予測、3=Vertical予測、4=輝度信号イントラ予測モードに設定されたコードナンバ割当に切り替える
     請求項11に記載の画像復号装置。
  13.  前記復号部は、Golomb符号化されているイントラ予測モードのコードナンバを復号し、
     前記イントラ予測部は、前記復号部により復号されたコードナンバのイントラ予測モードと、前記コードナンバ割当部により切り替えられたコードナンバ割当とに基づいて、前記色差信号の予測ブロックの予測画像を生成する
     請求項12に記載の画像復号装置。
  14.  画像復号装置が、
     ビットストリームを復号して、画像を生成し、
     生成された画像に対応する入力画像の色差信号のフォーマットが4:2:2であるか否かに応じて、イントラ予測モードのコードナンバ割当を切り替え、
     切り替えられたコードナンバ割当に基づいて、前記色差信号の予測ブロックの予測画像を生成する
     画像復号方法。
PCT/JP2014/067077 2013-07-08 2014-06-26 画像符号化装置および方法、並びに画像復号装置および方法 Ceased WO2015005132A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2013-142334 2013-07-08
JP2013142334 2013-07-08

Publications (1)

Publication Number Publication Date
WO2015005132A1 true WO2015005132A1 (ja) 2015-01-15

Family

ID=52279818

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2014/067077 Ceased WO2015005132A1 (ja) 2013-07-08 2014-06-26 画像符号化装置および方法、並びに画像復号装置および方法

Country Status (1)

Country Link
WO (1) WO2015005132A1 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107409208A (zh) * 2015-03-27 2017-11-28 索尼公司 图像处理装置、图像处理方法、程序以及记录媒体
CN114375574A (zh) * 2019-08-06 2022-04-19 Lg 电子株式会社 基于根据颜色格式确定的预测模式类型确定划分模式的图像编码/解码方法和设备,以及用于发送比特流的方法
US11496736B2 (en) 2019-08-06 2022-11-08 Beijing Bytedance Network Technology Co., Ltd. Using screen content coding tool for video encoding and decoding
US11575893B2 (en) 2019-09-21 2023-02-07 Beijing Bytedance Network Technology Co., Ltd. Size restriction based for chroma intra mode
US11601652B2 (en) * 2019-09-02 2023-03-07 Beijing Bytedance Network Technology Co., Ltd. Coding mode determination based on color format
US12294709B2 (en) 2020-04-10 2025-05-06 Beijing Bytedance Network Technology Co., Ltd. Minimum allowed quantization for transform skip blocks in video coding

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008172599A (ja) * 2007-01-12 2008-07-24 Mitsubishi Electric Corp 動画像符号化装置、動画像復号装置、動画像符号化方法、および動画像復号方法
JP2009105696A (ja) * 2007-10-24 2009-05-14 Nippon Telegr & Teleph Corp <Ntt> 予測モード情報符号化方法,予測モード情報復号方法,これらの装置,およびこれらのプログラム並びにコンピュータ読み取り可能な記録媒体
WO2011155377A1 (ja) * 2010-06-11 2011-12-15 ソニー株式会社 画像処理装置および方法
JP2013009103A (ja) * 2011-06-23 2013-01-10 Jvc Kenwood Corp 画像復号装置、画像復号方法及び画像復号プログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008172599A (ja) * 2007-01-12 2008-07-24 Mitsubishi Electric Corp 動画像符号化装置、動画像復号装置、動画像符号化方法、および動画像復号方法
JP2009105696A (ja) * 2007-10-24 2009-05-14 Nippon Telegr & Teleph Corp <Ntt> 予測モード情報符号化方法,予測モード情報復号方法,これらの装置,およびこれらのプログラム並びにコンピュータ読み取り可能な記録媒体
WO2011155377A1 (ja) * 2010-06-11 2011-12-15 ソニー株式会社 画像処理装置および方法
JP2013009103A (ja) * 2011-06-23 2013-01-10 Jvc Kenwood Corp 画像復号装置、画像復号方法及び画像復号プログラム

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
AKIRA MINEZAWA ET AL.: "AHG5: Simplification of chroma intra prediction process for YUV4:2:2 coding", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 13TH MEETING [JCTVC-M0156_R1], 26 April 2013 (2013-04-26), INCHEON, KR, pages 1 - 11 *
HIROYA NAKAMURA ET AL.: "AHG5: Unified intra prediction angles for 4:2:2 chroma format", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 13TH MEETING [JCTVC-M0127], 26 April 2013 (2013-04-26), INCHEON, KR, pages 1 - 16 *
ZHENZHONG CHEN ET AL.: "AHG5: Intra Prediction Mode-Dependent Coefficient Scanning for 4:2:2 Chroma Extended Format", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT- VC) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 13TH MEETING: [JCTVC-M0232], 26 April 2013 (2013-04-26), INCHEON, KR, pages 1 - 4 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107409208A (zh) * 2015-03-27 2017-11-28 索尼公司 图像处理装置、图像处理方法、程序以及记录媒体
CN107409208B (zh) * 2015-03-27 2021-04-20 索尼公司 图像处理装置、图像处理方法以及计算机可读存储介质
CN114375574A (zh) * 2019-08-06 2022-04-19 Lg 电子株式会社 基于根据颜色格式确定的预测模式类型确定划分模式的图像编码/解码方法和设备,以及用于发送比特流的方法
US11496736B2 (en) 2019-08-06 2022-11-08 Beijing Bytedance Network Technology Co., Ltd. Using screen content coding tool for video encoding and decoding
US11533483B2 (en) 2019-08-06 2022-12-20 Beijing Bytedance Network Technology Co., Ltd. Video region partition based on color format
US11601652B2 (en) * 2019-09-02 2023-03-07 Beijing Bytedance Network Technology Co., Ltd. Coding mode determination based on color format
US11949880B2 (en) 2019-09-02 2024-04-02 Beijing Bytedance Network Technology Co., Ltd. Video region partition based on color format
US12069278B2 (en) 2019-09-02 2024-08-20 Beijing Bytedance Network Technology Co., Ltd. Video region partition based on color format
US11575893B2 (en) 2019-09-21 2023-02-07 Beijing Bytedance Network Technology Co., Ltd. Size restriction based for chroma intra mode
US12294701B2 (en) 2019-09-21 2025-05-06 Beijing Bytedance Network Technology Co., Ltd. Size restriction based for chroma intra mode
US12294709B2 (en) 2020-04-10 2025-05-06 Beijing Bytedance Network Technology Co., Ltd. Minimum allowed quantization for transform skip blocks in video coding
US12363303B2 (en) 2020-04-10 2025-07-15 Beijing Bytedance Network Technology Co., Ltd. Minimum allowed quantization for transform skip blocks in video coding

Similar Documents

Publication Publication Date Title
US12356005B2 (en) Image processing apparatus and image processing method
US12113976B2 (en) Image encoding device and method and image decoding device and method
US10075719B2 (en) Image coding apparatus and method
JP2018121336A (ja) 画像処理装置および方法
WO2014050695A1 (ja) 画像処理装置および方法
US20150208074A1 (en) Image processing device and method
US20150222913A1 (en) Decoding device, decoding method, coding device, and coding method
WO2014050675A1 (ja) 画像処理装置および方法
WO2015005132A1 (ja) 画像符号化装置および方法、並びに画像復号装置および方法
WO2014203505A1 (en) Image decoding apparatus, image encoding apparatus, and image processing system

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

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP