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

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

Info

Publication number
WO2013031575A1
WO2013031575A1 PCT/JP2012/071030 JP2012071030W WO2013031575A1 WO 2013031575 A1 WO2013031575 A1 WO 2013031575A1 JP 2012071030 W JP2012071030 W JP 2012071030W WO 2013031575 A1 WO2013031575 A1 WO 2013031575A1
Authority
WO
WIPO (PCT)
Prior art keywords
depth
image
unit
prediction
parallax
Prior art date
Application number
PCT/JP2012/071030
Other languages
English (en)
French (fr)
Inventor
裕音 櫻井
良知 高橋
しのぶ 服部
Original Assignee
ソニー株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ソニー株式会社 filed Critical ソニー株式会社
Priority to US14/239,591 priority Critical patent/US20140321546A1/en
Priority to CN201280040909.9A priority patent/CN103748881A/zh
Publication of WO2013031575A1 publication Critical patent/WO2013031575A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/161Encoding, multiplexing or demultiplexing different image signal components
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • 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

Definitions

  • the present technology relates to an image processing device and an image processing method, and more particularly, to an image processing device and an image processing method that can improve the encoding efficiency of a parallax image using information related to a parallax image.
  • the parallax image is a parallax representing a horizontal distance between each pixel of the viewpoint color image corresponding to the parallax image and the position of the pixel of the viewpoint color image corresponding to the pixel on the screen. It is an image consisting of values.
  • HEVC High Efficiency Video Coding
  • AVC Advanced Video Coding
  • the present technology has been made in view of such a situation, and makes it possible to improve the encoding efficiency of a parallax image using information on the parallax image.
  • the image processing device is directed to a depth image, and is used when normalizing a depth value representing a position in the depth direction as a pixel value of the depth image.
  • a depth motion prediction unit that performs depth weighting prediction processing using a depth weighting factor and a depth offset based on a depth range, and after performing the depth weighting prediction processing by the depth motion prediction unit, the weighting factor and the offset are
  • a depth prediction image is generated by performing the weighted prediction process used to generate a depth prediction image, and the depth prediction image generated by the motion prediction unit is used to encode a depth image to be encoded.
  • An image processing apparatus including an encoding unit.
  • the image processing method according to the first aspect of the present technology corresponds to the image processing apparatus according to the first aspect of the present technology.
  • the depth indicating the range of the position in the depth direction used when normalizing the depth value representing the position in the depth direction as the pixel value of the depth image for the depth image. Based on the range, the depth weighting prediction process using the depth weighting coefficient and the depth offset is performed, and after the depth weighting prediction process is performed, the weighting prediction process using the weighting coefficient and the offset is performed. Is generated, and the depth image to be encoded is encoded using the depth prediction image to generate a depth stream.
  • An image processing device includes a receiving unit that receives a depth stream encoded using a predicted image of the depth image corrected using information about the depth image, and information about the depth image. And the range of the position in the depth direction used when normalizing the depth value indicating the position in the depth direction as the pixel value of the depth image using the information regarding the depth image received by the receiving unit. Calculating a depth weighting factor and a depth offset based on a depth range, performing a depth weighting prediction process using the depth weighting factor and the depth offset for the depth image, and the depth motion prediction unit After the depth weighting prediction process, weighting prediction using weighting factors and offsets is performed.
  • An image comprising: a motion prediction unit that performs processing to generate a depth prediction image; and a decoding unit that decodes the depth stream received by the reception unit using the depth prediction image generated by the motion prediction unit. It is a processing device.
  • the image processing method according to the second aspect of the present technology corresponds to the image processing device according to the second aspect of the present technology.
  • a depth stream encoded using a predicted image of the depth image corrected using information regarding the depth image and information regarding the depth image are received and received.
  • a depth weight coefficient based on a depth range indicating a range of the position in the depth direction and a depth used when normalizing a depth value indicating a position in the depth direction as a pixel value of the depth image using information on the depth image.
  • the depth weighting prediction process using the depth weighting coefficient and the depth offset is performed on the depth image, and the weighting prediction using the weighting coefficient and the offset is performed after the depth weighting prediction process is performed.
  • a depth prediction image is generated by processing, and the generated depth prediction image is used. Te, the depth stream is decoded.
  • An image processing device is based on a disparity range indicating a disparity range used when normalizing disparity as a pixel value of the depth image for a depth image.
  • a depth motion prediction unit that performs depth weighting prediction processing using a depth weighting factor and a depth offset, and after performing the depth weighting prediction processing by the depth motion prediction unit, performs weighting prediction processing using a weighting factor and an offset
  • An image comprising: a motion prediction unit that generates a depth prediction image; and an encoding unit that generates a depth stream by encoding the depth image to be encoded using the depth prediction image generated by the motion prediction unit. It is a processing device.
  • the image processing method according to the third aspect of the present technology corresponds to the image processing device according to the third aspect of the present technology.
  • depth weighting is performed based on a disparity range indicating the disparity range, which is used when normalizing disparity as a pixel value of the depth image for a depth image.
  • a depth weighted prediction process using a coefficient and a depth offset is performed, and after the depth weighted prediction process is performed, a weighted prediction process using a weight coefficient and an offset is performed to generate a depth prediction image.
  • a depth prediction image to be encoded is encoded to generate a depth stream.
  • An image processing apparatus includes a receiving unit that receives a depth stream encoded using a predicted image of the depth image corrected using information about the depth image, and information about the depth image. And a depth weighting factor based on a disparity range indicating a range of the disparity used when normalizing the disparity as a pixel value of the depth image using information about the depth image received by the receiving unit. And a depth motion prediction unit that performs depth weighting prediction processing using the depth weighting coefficient and the depth offset for the depth image, and the depth weight prediction processing performed by the depth motion prediction unit. Later, a weighted prediction process using weighting factors and offsets is performed.
  • An image processing apparatus comprising: a motion prediction unit that generates a depth prediction image; and a decoding unit that decodes the depth stream received by the reception unit using the depth prediction image generated by the motion prediction unit. is there.
  • the image processing method according to the fourth aspect of the present technology corresponds to the image processing device according to the fourth aspect of the present technology.
  • a depth stream encoded using a predicted image of the depth image corrected using information regarding the depth image and information regarding the depth image are received and received.
  • a depth weight coefficient and a depth offset based on a disparity range indicating the disparity range used when normalizing disparity as a pixel value of the depth image are calculated, and the depth is calculated.
  • a depth weighted prediction process using the depth weighting coefficient and the depth offset is performed on an image, and after performing the depth weighted prediction process, a weighted prediction process using a weighting coefficient and an offset is performed. Is generated and received using the generated depth prediction image.
  • the depth stream is decoded that.
  • FIG. 12 It is a figure which shows the example of the syntax of a slice header. It is a flowchart explaining the encoding process of the encoding apparatus of FIG. 12 is a flowchart illustrating details of the multi-view encoding process of FIG. 11. 13 is a flowchart for explaining details of a parallax image encoding process in FIG. 12. 13 is a flowchart for explaining details of a parallax image encoding process in FIG. 12. It is a block diagram which shows the structural example of one Embodiment of the decoding apparatus to which this technique is applied. It is a block diagram which shows the structural example of the multiview image decoding part of FIG. It is a block diagram which shows the structural example of a decoding part.
  • FIG. 1 is a block diagram illustrating a configuration example of an embodiment of an encoding device to which the present technology is applied.
  • 1 includes a multi-view color image capturing unit 51, a multi-view color image correcting unit 52, a multi-view parallax image correcting unit 53, a viewpoint generating information generating unit 54, and a multi-view image encoding unit 55. Composed.
  • the encoding device 50 encodes a parallax image at a predetermined viewpoint using information on the parallax image.
  • the multi-view color image capturing unit 51 of the encoding device 50 captures a multi-view color image and supplies the multi-view color image to the multi-view color image correction unit 52 as a multi-view color image. Further, the multi-view color image capturing unit 51 generates an external parameter, a parallax maximum value, and a parallax minimum value (details will be described later). The multi-view color image capturing unit 51 supplies the external parameter, the parallax maximum value, and the parallax minimum value to the viewpoint generation information generation unit 54, and supplies the parallax maximum value and the parallax minimum value to the multi-view parallax image generation unit 53. To do.
  • the external parameter is a parameter that defines the horizontal position of the multi-viewpoint color image capturing unit 51.
  • the parallax maximum value and the parallax minimum value are the maximum value and the minimum value of the parallax value on the world coordinates that can be taken in the multi-viewpoint parallax image, respectively.
  • the multi-view color image correction unit 52 performs color correction, brightness correction, distortion correction, and the like on the multi-view color image supplied from the multi-view color image capturing unit 51. Accordingly, the focal length in the horizontal direction (X direction) of the multi-view color image capturing unit 51 in the corrected multi-view color image is common to all viewpoints.
  • the multi-view color image correction unit 52 supplies the corrected multi-view color image as a multi-view correction color image to the multi-view parallax image generation unit 53 and the multi-view image encoding unit 55.
  • the multi-view parallax image generation unit 53 generates a multi-view parallax image from the multi-view correction color image supplied from the multi-view color image correction unit 52 based on the parallax maximum value and the parallax minimum value supplied from the multi-view color image capturing unit 51.
  • a parallax image of the viewpoint is generated.
  • the multi-view parallax image generation unit 53 obtains the parallax value of each pixel from the multi-view corrected color image for each viewpoint of the multi-view, and normalizes the parallax value based on the parallax maximum value and the parallax minimum value. Turn into. Then, the multi-view parallax image generation unit 53 generates a parallax image having the normalized parallax value of each pixel as the pixel value of each pixel of the parallax image for each viewpoint of the multi-view.
  • the multi-view parallax image generation unit 53 supplies the generated multi-view parallax image to the multi-view image encoding unit 55 as a multi-view parallax image. Further, the multi-view parallax image generation unit 53 generates a parallax accuracy parameter indicating the accuracy of the pixel value of the multi-view parallax image and supplies the parallax accuracy parameter to the viewpoint generation information generation unit 54.
  • the viewpoint generation information generation unit 54 generates viewpoint generation information used when generating a color image of a viewpoint other than the multiple viewpoints using the multi-view corrected color image and the parallax image. Specifically, the viewpoint generation information generation unit 54 determines the inter-camera distance based on the external parameters supplied from the multi-viewpoint color image imaging unit 51.
  • the inter-camera distance refers to the horizontal position of the multi-view color image capturing unit 51 when capturing a color image of the viewpoint for each viewpoint of the multi-view parallax image, and the parallax corresponding to the color image and the parallax image. This is the distance of the position in the horizontal direction of the multi-viewpoint color image capturing unit 51 when capturing a color image.
  • the viewpoint generation information generation unit 54 uses the parallax maximum value and the parallax minimum value from the multi-view color image capturing unit 51, the inter-camera distance, and the parallax accuracy parameters from the multi-view parallax image generation unit 53 as viewpoint generation information. .
  • the viewpoint generation information generation unit 54 supplies the generated viewpoint generation information to the multi-view image encoding unit 55.
  • the multi-view image encoding unit 55 encodes the multi-view correction color image supplied from the multi-view color image correction unit 52 using the HEVC method.
  • the multi-view image encoding unit 55 uses the parallax maximum value, the parallax minimum value, and the inter-camera distance in the viewpoint generation information supplied from the viewpoint generation information generation unit 54 as information on the parallax.
  • the multi-view parallax image supplied from the viewpoint parallax image generation unit 53 is encoded by a method according to the HEVC method.
  • the multi-view image encoding unit 55 differentially encodes the parallax maximum value, the parallax minimum value, and the inter-camera distance in the viewpoint generation information supplied from the viewpoint generation information generation unit 54, and multi-view parallax images Is included in information (encoding parameters) relating to encoding used when encoding.
  • the multi-view image encoding unit 55 includes information on encoding including the encoded multi-view corrected color image and multi-view parallax image, differentially encoded parallax maximum value, parallax minimum value, and inter-camera distance, A bit stream composed of parallax accuracy parameters and the like from the viewpoint generation information generation unit 54 is transmitted as an encoded bit stream.
  • the multi-viewpoint image encoding unit 55 since the multi-viewpoint image encoding unit 55 performs differential encoding on the parallax maximum value, the parallax minimum value, and the inter-camera distance, and transmits them, the code amount of the viewpoint generation information can be reduced.
  • the parallax maximum value, the parallax minimum value, and the inter-camera distance do not change significantly between pictures, so that differential encoding is effective in reducing the amount of code. .
  • the multi-view parallax image is generated from the multi-view color image, but may be generated by a sensor that detects the parallax value when the multi-view color image is captured.
  • FIG. 2 is a diagram illustrating the parallax maximum value and the parallax minimum value of the viewpoint generation information.
  • the horizontal axis represents the parallax value before normalization
  • the vertical axis represents the pixel value of the parallax image.
  • the multi-view parallax image generation unit 53 normalizes the parallax value of each pixel to a value of 0 to 255, for example, using the parallax minimum value Dmin and the parallax maximum value Dmax. Then, the multi-view parallax image generation unit 53 generates a parallax image using the parallax value of each pixel after normalization that is one of values 0 to 255 as a pixel value.
  • the pixel value I of each pixel of the parallax image, the parallax value d, the parallax minimum value Dmin, and the parallax maximum value Dmax before normalization of the pixel are expressed by the following formula (1).
  • the parallax value d before normalization is restored from the pixel value I of each pixel of the parallax image by using the parallax minimum value Dmin and the parallax maximum value Dmax by the following equation (2). There is a need.
  • the parallax minimum value Dmin and the parallax maximum value Dmax are transmitted to the decoding device.
  • FIG. 3 is a diagram illustrating parallax accuracy parameters of viewpoint generation information.
  • the parallax accuracy parameter represents the accuracy of the parallax value 0.5. Also, as shown in the lower part of FIG. 3, when the parallax value before normalization per parallax value 1 after normalization is 1, the parallax accuracy parameter represents the parallax value accuracy 1.0.
  • the parallax value before normalization of viewpoint # 1 which is the first viewpoint
  • the parallax value before normalization of viewpoint # 2 which is the second viewpoint
  • the parallax value after normalization of the viewpoint # 1 is 1.0 regardless of whether the accuracy of the parallax value is 0.5 or 1.0
  • the parallax value of viewpoint # 2 is 0.5 when the accuracy of the parallax value is 0.5, and is 0 when the accuracy of the parallax value is 1.0.
  • FIG. 4 is a diagram for explaining the inter-camera distance of the viewpoint generation information.
  • the inter-camera distance of the parallax image with the viewpoint # 1 as the base point is the distance between the position represented by the external parameter of the viewpoint # 1 and the position represented by the external parameter of the viewpoint # 2. is there.
  • FIG. 5 is a block diagram illustrating a configuration example of the multi-view image encoding unit 55 in FIG.
  • 5 includes a slice encoding unit 61, a slice header encoding unit 62, a PPS encoding unit 63, and an SPS encoding unit 64.
  • the slice encoding unit 61 of the multi-view image encoding unit 55 performs encoding in units of slices on the multi-view corrected color image supplied from the multi-view color image correcting unit 52 using the HEVC method.
  • the slice encoding unit 61 uses the parallax maximum value, the parallax minimum value, and the inter-camera distance in the viewpoint generation information supplied from the viewpoint generation information generation unit 54 of FIG.
  • the multi-view parallax image from the multi-view parallax image generation unit 53 is encoded in units of slices by a method according to the HEVC method.
  • the slice encoding unit 61 supplies encoded data in units of slices obtained as a result of encoding to the slice header encoding unit 62.
  • the slice header encoding unit 62 uses the parallax maximum value, the parallax minimum value, and the inter-camera distance in the viewpoint generation information supplied from the viewpoint generation information generation unit 54 as the parallax maximum value of the current processing target slice. , And the minimum parallax value and the inter-camera distance.
  • the slice header encoding unit 62 has the maximum parallax value, the minimum parallax value, and the inter-camera distance of the current processing target slice, respectively, for the previous slice in encoding order from that slice, Whether or not it matches the minimum parallax value and the inter-camera distance is determined by a unit to which the same PPS is added (hereinafter referred to as the same PPS unit).
  • the parallax maximum value, the parallax minimum value, and the inter-camera distance of all slices constituting the same PPS unit match the parallax maximum value, the parallax minimum value, and the inter-camera distance of the previous slice in the coding order. If it is determined, the slice header encoding unit 62 uses a code other than the parallax maximum value, the parallax minimum value, and the inter-camera distance of the slice as the slice header of the encoded data of each slice constituting the same PPS unit. Is added to the PPS encoding unit 63.
  • the slice header encoding unit 62 supplies the PPS encoding unit 63 with a transmission flag indicating that there is no transmission of the differential encoding result of the parallax maximum value, the parallax minimum value, and the inter-camera distance.
  • the parallax maximum value, the parallax minimum value, and the inter-camera distance of at least one slice configuring the same PPS unit are the parallax maximum value, the parallax minimum value, and the inter-camera distance of the previous slice in the encoding order.
  • the slice header encoding unit 62 encodes the encoded data of the intra-type slice including the parallax maximum value, the parallax minimum value, and the inter-camera distance of the slice as the slice header. Is added to the PPS encoding unit 63.
  • the slice header encoding unit 62 differentially encodes the parallax maximum value, the parallax minimum value, and the inter-camera distance of the slice. Specifically, the slice header encoding unit 62 calculates the parallax maximum value and the parallax of the previous slice in the encoding order from the slice based on the parallax maximum value, the parallax minimum value, and the inter-camera distance of the inter-type slice. The minimum value and the inter-camera distance are subtracted respectively to obtain a differential encoding result.
  • the slice header encoding unit 62 adds information related to encoding including the parallax maximum value, the parallax minimum value, and the difference encoding result of the inter-camera distance as the slice header to the inter-type slice encoded data, This is supplied to the PPS encoding unit 63.
  • the slice header encoding unit 62 supplies the PPS encoding unit 63 with a transmission flag indicating the presence of transmission of the differential encoding result of the parallax maximum value, the parallax minimum value, and the inter-camera distance.
  • the PPS encoding unit 63 generates a PPS including the transmission flag supplied from the slice header encoding unit 62 and the parallax accuracy parameter in the viewpoint generation information supplied from the viewpoint generation information generation unit 54 of FIG. Generate.
  • the PPS encoding unit 63 adds the PPS to the encoded data of the slice unit to which the slice header supplied from the slice header encoding unit 62 is added in the same PPS unit, and supplies the PPS to the SPS encoding unit 64.
  • the SPS encoding unit 64 generates an SPS. Then, the SPS encoding unit 64 adds the SPS to the encoded data to which the PPS supplied from the PPS encoding unit 63 is added in sequence units. The SPS encoding unit 64 functions as a transmission unit, and transmits the resulting bit stream as an encoded bit stream.
  • FIG. 6 is a block diagram illustrating a configuration example of an encoding unit that encodes an arbitrary one viewpoint parallax image in the slice encoding unit 61 of FIG. 5. That is, the encoding unit that encodes the multi-view parallax image in the slice encoding unit 61 includes the encoding units 120 in FIG.
  • a / D conversion unit 121 includes an A / D conversion unit 121, a screen rearrangement buffer 122, a calculation unit 123, an orthogonal transformation unit 124, a quantization unit 125, a lossless encoding unit 126, an accumulation buffer 127, and an inverse quantization unit. 128, an inverse orthogonal transform unit 129, an addition unit 130, a deblock filter 131, a frame memory 132, an in-screen prediction unit 133, a motion prediction / compensation unit 134, a correction unit 135, a selection unit 136, and a rate control unit 137.
  • the / D conversion unit 121 includes an A / D conversion unit 121, a screen rearrangement buffer 122, a calculation unit 123, an orthogonal transformation unit 124, a quantization unit 125, a lossless encoding unit 126, an accumulation buffer 127, and an inverse quantization unit. 128, an inverse orthogonal transform unit 129, an addition unit 130, a de
  • the A / D conversion unit 121 of the encoding unit 120 performs A / D conversion on the multiplexed image of the frame unit of the predetermined viewpoint supplied from the multi-view parallax image generation unit 53 of FIG. Output and store.
  • the screen rearrangement buffer 122 rearranges the stored parallax images in the order of display in the order for encoding according to the GOP (Group of Picture) structure, and calculates the operation unit 123 and the in-screen prediction unit 133. And to the motion prediction / compensation unit 134.
  • the calculation unit 123 functions as an encoding unit, and calculates the difference between the prediction image supplied from the selection unit 136 and the parallax image to be encoded output from the screen rearrangement buffer 122, thereby calculating the encoding target.
  • a parallax image is encoded. Specifically, the calculation unit 123 subtracts the predicted image supplied from the selection unit 136 from the parallax image to be encoded output from the screen rearrangement buffer 122.
  • the calculation unit 123 outputs the image obtained as a result of the subtraction to the orthogonal transform unit 124 as residual information.
  • the calculation unit 123 outputs the parallax image read from the screen rearrangement buffer 122 to the orthogonal transformation unit 124 as residual information as it is.
  • the orthogonal transform unit 124 performs orthogonal transform such as discrete cosine transform and Karhunen-Loeve transform on the residual information from the calculation unit 123 and supplies the resulting coefficient to the quantization unit 125.
  • the quantization unit 125 quantizes the coefficient supplied from the orthogonal transform unit 124.
  • the quantized coefficient is input to the lossless encoding unit 126.
  • the lossless encoding unit 126 performs variable length coding (for example, CAVLC (Context-Adaptive Variable Length Coding)), arithmetic coding (for example, CABAC) on the quantized coefficients supplied from the quantization unit 125. (Context-Adaptive Binary Arithmetic Coding) etc.) is performed.
  • the lossless encoding unit 126 supplies the encoded data obtained as a result of the lossless encoding to the accumulation buffer 127 for accumulation.
  • the accumulation buffer 127 temporarily stores the encoded data supplied from the lossless encoding unit 126 and supplies the encoded data to the slice header encoding unit 62 in units of slices.
  • the quantized coefficient output from the quantization unit 125 is also input to the inverse quantization unit 128, and after inverse quantization, is supplied to the inverse orthogonal transform unit 129.
  • the inverse orthogonal transform unit 129 performs inverse orthogonal transform such as inverse discrete cosine transform and inverse Karhunen-Labe transform on the coefficient supplied from the inverse quantization unit 128 and adds the residual information obtained as a result to the adder 130. To supply.
  • inverse orthogonal transform such as inverse discrete cosine transform and inverse Karhunen-Labe transform
  • the adding unit 130 adds the residual information as a decoding target parallax image supplied from the inverse orthogonal transform unit 129 and the prediction image supplied from the selection unit 136 to obtain a locally decoded parallax image. .
  • the addition unit 130 sets the residual information supplied from the inverse orthogonal transform unit 129 as a locally decoded parallax image.
  • the adding unit 130 supplies the locally decoded parallax image to the deblocking filter 131 and also supplies it to the intra-screen prediction unit 133 as a reference image.
  • the deblocking filter 131 removes block distortion by filtering the locally decoded parallax image supplied from the adding unit 130.
  • the deblocking filter 131 supplies the parallax image obtained as a result to the frame memory 132 and accumulates it.
  • the parallax image stored in the frame memory 132 is output to the motion prediction / compensation unit 134 as a reference image.
  • the intra-screen prediction unit 133 performs intra-screen prediction of all candidate intra prediction modes using the reference image supplied from the addition unit 130, and generates a predicted image.
  • the intra-screen prediction unit 133 calculates cost function values (details will be described later) for all candidate intra prediction modes. Then, the intra prediction unit 133 determines the intra prediction mode that minimizes the cost function value as the optimal intra prediction mode. The intra-screen prediction unit 133 supplies the prediction image generated in the optimal intra prediction mode and the corresponding cost function value to the selection unit 136. When the selection unit 136 is notified of selection of a prediction image generated in the optimal intra prediction mode, the intra prediction unit 133 displays the intra prediction information indicating the optimal intra prediction mode and the like in the slice header encoding unit 62 in FIG. To supply. This intra-screen prediction information is included in the slice header as information related to encoding.
  • the cost function value is also called RD (Rate Distortion) cost. It is calculated based on a technique of either High Complexity mode or Low Complexity mode as defined by JM (Joint Model) which is reference software in the H.264 / AVC format.
  • D is the difference (distortion) between the original image and the decoded image
  • R is the amount of generated code including up to the coefficient of orthogonal transform
  • is the Lagrange multiplier given as a function of the quantization parameter QP.
  • D is the difference (distortion) between the original image and the decoded image
  • Header_Bit is the header bit for the prediction mode
  • QPtoQuant is a function given as a function of the quantization parameter QP.
  • the High Complexity mode is employed as a cost function value calculation method.
  • the motion prediction / compensation unit 134 performs motion prediction processing for all candidate inter prediction modes based on the parallax image supplied from the screen rearrangement buffer 122 and the reference image supplied from the frame memory 132, Generate motion vectors. Specifically, the motion prediction / compensation unit 134 performs matching between the reference image and the parallax image supplied from the screen rearrangement buffer 122 for each inter prediction mode, and generates a motion vector.
  • the inter prediction mode is information indicating the size, prediction direction, and reference index of a block to be subjected to inter prediction.
  • a forward prediction (L0 prediction) using a reference image whose display time is earlier than the parallax image targeted for inter prediction, and a reference image whose display time is later than the parallax image targeted for inter prediction are used.
  • the reference index is a number for specifying a reference image. For example, the reference index of an image closer to a parallax image to be subjected to inter prediction is smaller in number.
  • the motion prediction / compensation unit 134 functions as a predicted image generation unit, and performs a motion compensation process by reading a reference image from the frame memory 132 based on the generated motion vector for each inter prediction mode.
  • the motion prediction / compensation unit 134 supplies the prediction image generated as a result to the correction unit 135.
  • the correcting unit 135 uses the parallax maximum value, the parallax minimum value, and the inter-camera distance of the viewpoint generation information supplied from the viewpoint generation information generation unit 54 of FIG. A correction coefficient used for correction is generated.
  • the correction unit 135 corrects the prediction image of each inter prediction mode supplied from the motion prediction / compensation unit 134 using the correction coefficient.
  • the position Z p in the depth direction of the subject in the depth direction position Z c and the prediction image of the subject of the parallax image to be coded is represented by the following formula (5).
  • L c and L p are the inter-camera distance of the parallax image to be encoded and the inter-camera distance of the predicted image, respectively.
  • f is a focal length common to the parallax image to be encoded and the predicted image.
  • D c and d p are the absolute value of the parallax value before normalization of the parallax image to be encoded and the absolute value of the parallax value before normalization of the prediction image, respectively.
  • the parallax value I c of the parallax image to be encoded and the parallax value I p of the predicted image are expressed by the following equation (6) using the absolute values d c and d p of the parallax values before normalization.
  • D c min and D p min are the parallax minimum value of the encoding target parallax image and the parallax minimum value of the prediction image, respectively.
  • D c max and D p max are the parallax maximum value of the encoding target parallax image and the parallax maximum value of the prediction image, respectively.
  • the inter-camera distances L c and L p , and the minimum parallax value D c When at least one of min and D p min and the parallax maximum values D c max and D p max are different, the parallax value I c and the parallax value I p are different.
  • the correction unit 135 generates a correction coefficient for correcting the predicted image so that the parallax value I c and the parallax value I p are the same when the position Z c and the position Z p are the same.
  • the disparity value I c is expressed by the following equation using the disparity value I p (10).
  • the correction unit 135 generates a and b in Expression (10) as correction coefficients. Then, the correction unit 135 uses the correction coefficients a and b and the parallax value I p to obtain the parallax value I c in Expression (10) as the parallax value of the corrected predicted image.
  • the correction unit 135 calculates a cost function value for each inter prediction mode using the corrected predicted image, and determines the inter prediction mode that minimizes the cost function value as the optimal inter measurement mode. Then, the correction unit 135 supplies the prediction image and the cost function value generated in the optimal inter prediction mode to the selection unit 136.
  • the correction unit 135 outputs the motion information to the slice header encoding unit 62 when the selection unit 136 is notified of the selection of the predicted image generated in the optimal inter prediction mode.
  • This motion information includes an optimal inter prediction mode, a prediction vector index, a motion vector residual that is a difference obtained by subtracting the motion vector represented by the prediction vector index from the current motion vector, and the like.
  • the prediction vector index is information for specifying one motion vector among candidate motion vectors used for generating a prediction image of a decoded parallax image.
  • the motion information is included in the slice header as information related to encoding.
  • the selection unit 136 determines one of the optimal intra prediction mode and the optimal inter prediction mode as the optimal prediction mode based on the cost function value supplied from the intra-screen prediction unit 133 and the correction unit 135. Then, the selection unit 136 supplies the prediction image in the optimal prediction mode to the calculation unit 123 and the addition unit 130. Further, the selection unit 136 notifies the intra-screen prediction unit 133 or the correction unit 135 of selection of the prediction image in the optimal prediction mode.
  • the rate control unit 137 controls the rate of the quantization operation of the quantization unit 125 based on the encoded data stored in the storage buffer 127 so that overflow or underflow does not occur.
  • FIG. 7 is a diagram illustrating a configuration example of an encoded bit stream.
  • FIG. 7 for the sake of convenience of explanation, only encoded data of slices of a multi-view color parallax image is shown, but actually, encoded data of slices of a multi-view color image is also included in the encoded bit stream. Be placed. This also applies to FIGS. 22 and 23 described later.
  • the parallax maximum value, the parallax minimum value, and the inter-camera distance of one intra-type slice and two inter-type slices that constitute the same PPS unit of the PPS # 0 that is the 0th PPS are as follows: Each does not match the parallax maximum value, the parallax minimum value, and the inter-camera distance of the previous slice in the coding order. Therefore, PPS # 0 includes a transmission flag “1” indicating the presence of transmission.
  • the disparity accuracy of slices that constitute the same PPS unit of PPS # 0 is 0.5
  • PPS # 0 includes “1” representing disparity accuracy 0.5 as a disparity accuracy parameter.
  • the parallax minimum value of the intra-type slices constituting the same PPS unit of PPS # 0 is 10
  • the parallax maximum value is 50
  • the inter-camera distance is 100. Therefore, the slice header of the slice includes the parallax minimum value “10”, the parallax maximum value “50”, and the inter-camera distance “100”.
  • the parallax minimum value of the first inter-type slice constituting the same PPS unit of PPS # 0 is 9, the parallax maximum value is 48, and the inter-camera distance is 105. Therefore, in the slice header of the slice, a difference “ ⁇ 1” obtained by subtracting the parallax minimum value “10” of the previous intra-type slice in the coding order from the parallax minimum value “9” of the slice, It is included as a differential encoding result of the parallax minimum value.
  • the difference “ ⁇ 2” of the parallax maximum value is included as the difference encoding result of the parallax maximum value
  • the difference “5” of the inter-camera distance is included as the difference encoding result of the inter-camera distance.
  • the parallax minimum value of the second inter-type slice that constitutes the same PPS unit of PPS # 0 is 7
  • the parallax maximum value is 47
  • the inter-camera distance is 110. Therefore, the difference “ ⁇ 2” obtained by subtracting the parallax minimum value “9” of the first intertype slice in the encoding order from the parallax minimum value “7” of the slice in the slice header of the slice. "Is included as the differential encoding result of the parallax minimum value.
  • the difference “ ⁇ 1” of the parallax maximum value is included as the difference encoding result of the parallax maximum value
  • the difference “5” of the inter-camera distance is included as the difference encoding result of the inter-camera distance.
  • the parallax maximum value, the parallax minimum value, and the inter-camera distance of one intra-type slice and two inter-type slices that constitute the same PPS unit of PPS # 1 that is the first PPS are identical to the parallax maximum value, the parallax minimum value, and the inter-camera distance of the previous slice in the coding order. That is, the parallax minimum value, parallax maximum value, and inter-camera distance of one intra-type slice and two inter-type slices that make up the same PPS unit of PPS # 1, respectively, make up the same PPS unit of PPS # 0 "7", "47", and "110" that are the same as the second intertype slice.
  • PPS # 1 includes a transmission flag “0” indicating no transmission.
  • the disparity accuracy of slices constituting the same PPS unit of PPS # 1 is 0.5
  • PPS # 1 includes “1” representing disparity accuracy 0.5 as a disparity accuracy parameter.
  • FIG. 8 is a diagram illustrating an example of the syntax of the PPS in FIG.
  • the PPS includes a parallax accuracy parameter (disparity_precision) and a transmission flag (dsiparity_pic_same_flag).
  • the parallax accuracy parameter is, for example, “0” when representing parallax accuracy 1 and “2” when representing parallax accuracy 0.25. Further, as described above, the parallax accuracy parameter is “1” when the parallax accuracy is 0.5. Further, as described above, the transmission flag is “1” when indicating the presence of transmission, and “0” when indicating the absence of transmission.
  • FIGSlice header syntax example 9 and 10 are diagrams illustrating examples of the syntax of the slice header.
  • the slice header when the transmission flag is 1 and the slice type is an intra type, the slice header includes a minimum disparity value (minimum_disparity), a maximum disparity value (maximum_disparity), and an inter-camera distance (translation_x). Is included.
  • the slice header includes a differential encoding result of the minimum parallax value (delta_minimum_disparity), a differential encoding result of the maximum parallax value (delta_maximum_disparity), and a camera
  • the inter-distance difference encoding result (delta_translation_x) is included.
  • FIG. 11 is a flowchart for explaining the encoding process of the encoding device 50 of FIG.
  • the multi-view color image capturing unit 51 of the encoding device 50 captures a multi-view color image and supplies the multi-view color image to the multi-view color image correction unit 52 as a multi-view color image.
  • step S112 the multi-view color image capturing unit 51 generates a parallax maximum value, a parallax minimum value, and an external parameter.
  • the multi-view color image capturing unit 51 supplies the parallax maximum value, the parallax minimum value, and the external parameter to the viewpoint generation information generation unit 54, and supplies the parallax maximum value and the parallax minimum value to the multi-view parallax image generation unit 53. To do.
  • step S113 the multi-view color image correction unit 52 performs color correction, luminance correction, distortion correction, and the like on the multi-view color image supplied from the multi-view color image capturing unit 51. Accordingly, the focal length in the horizontal direction (X direction) of the multi-view color image capturing unit 51 in the corrected multi-view color image is common to all viewpoints.
  • the multi-view color image correction unit 52 supplies the corrected multi-view color image as a multi-view correction color image to the multi-view parallax image generation unit 53 and the multi-view image encoding unit 55.
  • step S114 the multi-view parallax image generation unit 53 determines the multi-view color correction color supplied from the multi-view color image correction unit 52 based on the parallax maximum value and the parallax minimum value supplied from the multi-view color image capturing unit 51. A multi-view parallax image is generated from the image. Then, the multi-view parallax image generation unit 53 supplies the generated multi-view parallax image to the multi-view image encoding unit 55 as a multi-view parallax image.
  • step S115 the multi-view parallax image generation unit 53 generates a parallax accuracy parameter and supplies the parallax accuracy parameter to the viewpoint generation information generation unit 54.
  • step S116 the viewpoint generation information generation unit 54 determines the inter-camera distance based on the external parameters supplied from the multi-viewpoint color image imaging unit 51.
  • step S117 the viewpoint generation information generation unit 54 generates viewpoints from the parallax maximum value and the parallax minimum value from the multi-view color image capturing unit 51, the inter-camera distance, and the parallax accuracy parameters from the multi-view parallax image generation unit 53. Generate as information.
  • the viewpoint generation information generation unit 54 supplies the generated viewpoint generation information to the multi-view image encoding unit 55.
  • step S ⁇ b> 118 the multi-view image encoding unit 55 encodes the multi-view correction color image from the multi-view color image correction unit 52 and the multi-view parallax image from the multi-view parallax image generation unit 53. I do. Details of this multi-viewpoint encoding process will be described with reference to FIG.
  • step S119 the multi-view image encoding unit 55 transmits the encoded bit stream obtained as a result of the multi-view encoding process, and ends the process.
  • FIG. 12 is a flowchart for explaining the multi-view encoding process in step S118 of FIG.
  • the slice encoding unit 61 (FIG. 5) of the multi-view image encoding unit 55 receives the multi-view correction color image from the multi-view color image correction unit 52 and the multi-view parallax image generation unit 53.
  • the slice encoding unit 61 performs a color image encoding process for encoding a multi-view corrected color image by the HEVC method in units of slices.
  • the slice encoding unit 61 uses the parallax maximum value, the parallax minimum value, and the inter-camera distance in the viewpoint generation information supplied from the viewpoint generation information generation unit 54 of FIG.
  • a parallax image encoding process for encoding the image by a method according to the HEVC method is performed in units of slices. Details of the parallax image encoding processing will be described with reference to FIGS. 13 and 14 to be described later.
  • the slice encoding unit 61 supplies encoded data in units of slices obtained as a result of encoding to the slice header encoding unit 62.
  • step S132 the slice header encoding unit 62 calculates the inter-camera distance, the parallax maximum value, and the parallax minimum value of the viewpoint generation information supplied from the viewpoint generation information generation unit 54 as the current processing target slice.
  • the inter-camera distance, the parallax maximum value, and the parallax minimum value are stored.
  • step S133 the slice header encoding unit 62 determines that the inter-camera distance, the parallax maximum value, and the parallax minimum value of all slices that constitute the same PPS unit are one slice before the slice in the coding order. It is determined whether the distance between the cameras, the parallax maximum value, and the parallax minimum value coincide with each other.
  • step S134 the slice header encoding unit 62 calculates the difference code between the inter-camera distance, the parallax maximum value, and the parallax minimum value.
  • a transmission flag indicating no transmission of the conversion result is generated and supplied to the PPS encoding unit 63.
  • step S135 the slice header encoding unit 62 adds the inter-camera distance, the parallax maximum value, and the parallax of the slice as the slice header to the encoded data of each slice constituting the same PPS unit to be processed in step S133.
  • Information about encoding other than the minimum value is added. Note that the information related to the encoding includes intra-screen prediction information or motion information supplied from the slice encoding unit 61. Then, the slice header encoding unit 62 supplies the encoded data of each slice constituting the same PPS unit obtained as a result to the PPS encoding unit 63, and the process proceeds to step S140.
  • step S136 when it is determined in step S133 that the inter-camera distance, the parallax maximum value, and the parallax minimum value do not match, in step S136, the slice header encoding unit 62 determines the inter-camera distance, the parallax maximum value, and the parallax minimum value. A transmission flag indicating the presence of transmission of the differential encoding result is supplied to the PPS encoding unit 63. Note that the processing in steps S137 to S139 described later is performed for each slice constituting the same PPS unit that is the processing target in step S133.
  • step S137 the slice header encoding unit 62 determines whether the type of the slice constituting the same PPS unit to be processed in step S133 is an intra type.
  • step S138 the slice header encoding unit 62 adds the slice-to-camera distance and the parallax maximum as the slice header to the encoded data of the slice. A value and information related to encoding including the parallax minimum value are added. Note that the information related to the encoding includes intra-screen prediction information or motion information supplied from the slice encoding unit 61. Then, the slice header encoding unit 62 supplies the encoded data of the slice unit obtained as a result to the PPS encoding unit 63, and the process proceeds to step S140.
  • step S137 if it is determined in step S137 that the slice type is not an intra type, that is, if the slice type is an inter type, the process proceeds to step S139.
  • step S139 the slice header encoding unit 62 differentially encodes the inter-camera distance, the parallax maximum value, and the parallax minimum value of the slice, and information on encoding including the differential encoding result in the encoded data of the slice. Is added as a slice header.
  • the information related to the encoding includes intra-screen prediction information or motion information supplied from the slice encoding unit 61.
  • the slice header encoding unit 62 supplies the encoded data of the slice unit obtained as a result to the PPS encoding unit 63, and the process proceeds to step S140.
  • step S140 the PPS encoding unit 63 sets the disparity accuracy parameter in the transmission flag supplied from the slice header encoding unit 62 and the viewpoint generation information supplied from the viewpoint generation information generation unit 54 in FIG. Generate a containing PPS.
  • step S141 the PPS encoding unit 63 adds the PPS to the encoded data of the slice unit to which the slice header supplied from the slice header encoding unit 62 is added in the same PPS unit, and the SPS encoding unit 64 Supply.
  • step S142 the SPS encoding unit 64 generates an SPS.
  • step S143 the SPS encoding unit 64 adds the SPS to the encoded data to which the PPS supplied from the PPS encoding unit 63 is added, in sequence units, and generates an encoded bit stream. And a process returns to step S118 of FIG. 11, and progresses to step S119.
  • FIG. 13 and 14 are flowcharts illustrating details of the parallax image encoding process of the slice encoding unit 61 in FIG. This parallax image encoding process is performed for each viewpoint.
  • step S160 in FIG. 13 the A / D conversion unit 121 of the encoding unit 120 performs A / D conversion on the parallax image in units of frames of a predetermined viewpoint input from the multi-view parallax image generation unit 53, and rearranges the screen. Output to buffer 122 for storage.
  • step S161 the screen rearrangement buffer 122 rearranges the stored parallax images of the frames in the display order in the order for encoding according to the GOP structure.
  • the screen rearrangement buffer 122 supplies the rearranged parallax images in units of frames to the calculation unit 123, the intra-screen prediction unit 133, and the motion prediction / compensation unit 134.
  • step S162 the intra-screen prediction unit 133 performs intra-screen prediction processing of all candidate intra prediction modes using the reference image supplied from the addition unit 130. At this time, the intra prediction unit 133 calculates cost function values for all candidate intra prediction modes. Then, the intra prediction unit 133 determines the intra prediction mode that minimizes the cost function value as the optimal intra prediction mode. The intra-screen prediction unit 133 supplies the prediction image generated in the optimal intra prediction mode and the corresponding cost function value to the selection unit 136.
  • step S163 the motion prediction / compensation unit 134 performs motion prediction / compensation processing based on the parallax image supplied from the screen rearrangement buffer 122 and the reference image supplied from the frame memory 132.
  • the motion prediction / compensation unit 134 performs motions of all candidate inter prediction modes based on the parallax image supplied from the screen rearrangement buffer 122 and the reference image supplied from the frame memory 132. A prediction process is performed to generate a motion vector. Further, the motion prediction / compensation unit 134 performs a motion compensation process by reading a reference image from the frame memory 132 based on the generated motion vector for each inter prediction mode. The motion prediction / compensation unit 134 supplies the prediction image generated as a result to the correction unit 135.
  • step S164 the correction unit 135 calculates a correction coefficient based on the parallax maximum value, the parallax minimum value, and the inter-camera distance in the viewpoint generation information supplied from the viewpoint generation information generation unit 54 in FIG. To do.
  • step S165 the correction unit 135 corrects the prediction image of each inter prediction mode supplied from the motion prediction / compensation unit 134 using the correction coefficient.
  • step S166 the correction unit 135 calculates a cost function value for each inter prediction mode using the corrected predicted image, and determines the inter prediction mode that minimizes the cost function value as the optimal inter measurement mode. . Then, the correction unit 135 supplies the prediction image and the cost function value generated in the optimal inter prediction mode to the selection unit 136.
  • step S167 the selection unit 136 determines which one of the optimal intra prediction mode and the optimal inter prediction mode has the smallest cost function value based on the cost function values supplied from the intra-screen prediction unit 133 and the correction unit 135. The optimum prediction mode is determined. Then, the selection unit 136 supplies the prediction image in the optimal prediction mode to the calculation unit 123 and the addition unit 130.
  • step S168 the selection unit 136 determines whether or not the optimal prediction mode is the optimal inter prediction mode. When it is determined in step S168 that the optimal prediction mode is the optimal inter prediction mode, the selection unit 136 notifies the correction unit 135 of selection of the predicted image generated in the optimal inter prediction mode.
  • step S169 the correction unit 135 outputs the motion information to the slice header encoding unit 62 (FIG. 5), and the process proceeds to step S171.
  • step S168 when it is determined in step S168 that the optimal prediction mode is not the optimal inter prediction mode, that is, when the optimal prediction mode is the optimal intra prediction mode, the selection unit 136 selects the prediction image generated in the optimal intra prediction mode. The selection is notified to the in-screen prediction unit 133.
  • step S170 the intra prediction unit 133 outputs the intra prediction information to the slice header encoding unit 62, and the process proceeds to step S171.
  • step S171 the calculation unit 123 subtracts the predicted image supplied from the selection unit 136 from the parallax image supplied from the screen rearrangement buffer 122.
  • the calculation unit 123 outputs the image obtained as a result of the subtraction to the orthogonal transform unit 124 as residual information.
  • step S 172 the orthogonal transform unit 124 performs orthogonal transform on the residual information from the calculation unit 123 and supplies the coefficient obtained as a result to the quantization unit 125.
  • step S173 the quantization unit 125 quantizes the coefficient supplied from the orthogonal transform unit 124.
  • the quantized coefficient is input to the lossless encoding unit 126 and the inverse quantization unit 128.
  • step S174 the lossless encoding unit 126 performs lossless encoding on the quantized coefficient supplied from the quantization unit 125.
  • step S175 of FIG. 14 the lossless encoding unit 126 supplies the encoded data obtained as a result of the lossless encoding process to the accumulation buffer 127 for accumulation.
  • step S176 the accumulation buffer 127 outputs the accumulated encoded data to the slice header encoding unit 62.
  • step S177 the inverse quantization unit 128 inversely quantizes the quantized coefficient supplied from the quantization unit 125.
  • step S178 the inverse orthogonal transform unit 129 performs inverse orthogonal transform on the coefficient supplied from the inverse quantization unit 128, and supplies the residual information obtained as a result to the addition unit 130.
  • step S179 the addition unit 130 adds the residual information supplied from the inverse orthogonal transform unit 129 and the prediction image supplied from the selection unit 136 to obtain a locally decoded parallax image.
  • the adding unit 130 supplies the obtained parallax image to the deblocking filter 131 and also supplies the parallax image to the intra-screen prediction unit 133 as a reference image.
  • step S180 the deblocking filter 131 removes block distortion by performing filtering on the locally decoded parallax image supplied from the adding unit 130.
  • step S181 the deblock filter 131 supplies the parallax image after filtering to the frame memory 132 and accumulates it.
  • the parallax image stored in the frame memory 132 is output to the motion prediction / compensation unit 134 as a reference image. Then, the process ends.
  • steps S162 to S181 in FIGS. 13 and 14 is performed in units of coding units, for example.
  • the intra-screen prediction process and the motion compensation process are always performed. Sometimes only one is done.
  • the encoding device 50 corrects the predicted image using the information related to the parallax image, and encodes the parallax image using the corrected predicted image. More specifically, the encoding device 50 uses the inter-camera distance, the maximum parallax value, and the minimum parallax value as information on the parallax image, and the position of the subject in the depth direction is the same between the predicted image and the parallax image. In some cases, the predicted image is corrected so that the parallax values are the same, and the parallax image is encoded using the corrected predicted image. Therefore, the difference between the predicted image and the parallax image generated by the information about the parallax image is reduced, and the coding efficiency is improved. In particular, when the information about the parallax image changes for each picture, the encoding efficiency is improved.
  • the encoding device 50 transmits the inter-camera distance, the parallax maximum value, and the parallax minimum value used for calculating the correction coefficient, not the correction coefficient itself, as information used for correcting the predicted image.
  • the inter-camera distance, the parallax maximum value, and the parallax minimum value are part of the viewpoint generation information. Therefore, the inter-camera distance, the parallax maximum value, and the parallax minimum value can be shared as part of the information used for correcting the predicted image and the viewpoint generation information. As a result, the information amount of the encoded bit stream can be reduced.
  • FIG. 15 is a block diagram illustrating a configuration example of an embodiment of a decoding device to which the present technology is applied, which decodes an encoded bitstream transmitted from the encoding device 50 of FIG.
  • the decoding device 150 decodes the encoded bit stream transmitted from the encoding device 50, and uses the resulting multi-view color image, multi-view parallax image, and viewpoint generation information to convert the color image of the display viewpoint. Generate and display.
  • the multi-view image decoding unit 151 of the decoding device 150 receives the encoded bit stream transmitted from the encoding device 50 of FIG.
  • the multi-view image decoding unit 151 extracts a parallax accuracy parameter and a transmission flag from the PPS included in the received encoded bitstream.
  • the multi-view image decoding unit 151 extracts the inter-camera distance, the parallax maximum value, and the parallax minimum value from the slice header of the encoded bitstream according to the transmission flag.
  • the multi-viewpoint image decoding unit 151 generates viewpoint generation information including the parallax accuracy parameter, the inter-camera distance, the parallax maximum value, and the parallax minimum value, and supplies the viewpoint generation unit 152 with the viewpoint generation information.
  • the multi-view image decoding unit 151 converts the encoded data of the multi-view corrected color image in units of slices included in the encoded bitstream in a method corresponding to the encoding method of the multi-view image encoding unit 55 in FIG. Decode and generate a multi-view corrected color image.
  • the multi-view image decoding unit 151 functions as a decoding unit.
  • the multi-view image decoding unit 151 converts the encoded data of the multi-view parallax image included in the encoded bitstream using the inter-camera distance, the parallax maximum value, and the parallax minimum value.
  • the multi-view parallax image is generated by decoding with a method corresponding to the conversion method.
  • the multi-view image decoding unit 151 supplies the generated multi-view correction color image and multi-view parallax image to the view synthesis unit 152.
  • the viewpoint synthesis unit 152 uses the viewpoint generation information from the multi-view image decoding unit 151 to set the number of viewpoints corresponding to the multi-view image display unit 153 for the multi-view parallax image from the multi-view image decoding unit 151. Performs warping processing to the display viewpoint. Specifically, the viewpoint synthesis unit 152 applies the multi-view parallax image with an accuracy corresponding to the parallax accuracy parameter based on the inter-camera distance, the parallax maximum value, the parallax minimum value, and the like included in the viewpoint generation information. To warp the display viewpoint. Note that the warping process is a process of performing geometric conversion from an image at one viewpoint to an image at another viewpoint.
  • the display viewpoint includes viewpoints other than the viewpoint corresponding to the multi-view color image.
  • the viewpoint synthesis unit 152 performs a warping process to the display viewpoint on the multi-view corrected color image supplied from the multi-view image decoding unit 151 using the parallax image of the display viewpoint obtained as a result of the warping process. .
  • the viewpoint synthesis unit 152 supplies the color image of the display viewpoint obtained as a result to the multi-viewpoint image display unit 153 as a multi-viewpoint synthesis color image.
  • the multi-view image display unit 153 displays the multi-view combined color image supplied from the view combining unit 152 so that the viewable angle is different for each viewpoint.
  • a viewer can view a 3D image from a plurality of viewpoints without wearing glasses by viewing each image of two arbitrary viewpoints with the left and right eyes.
  • the viewpoint synthesis unit 152 performs the warping process to the display viewpoint for the multi-view parallax image with the accuracy corresponding to the viewpoint accuracy parameter based on the parallax accuracy parameter, the viewpoint synthesis unit 152 is useless. There is no need to perform highly accurate warping.
  • the viewpoint synthesis unit 152 performs a warping process on the display viewpoint for the multi-view parallax image based on the inter-camera distance, the parallax corresponding to the parallax value of the multi-view parallax image after the warping process is within an appropriate range. If not, the parallax value can be corrected to a value corresponding to an appropriate range of parallax based on the inter-camera distance.
  • FIG. 16 is a block diagram illustrating a configuration example of the multi-view image decoding unit 151 in FIG.
  • the multi-view image decoding unit 151 in FIG. 16 includes an SPS decoding unit 171, a PPS decoding unit 172, a slice header decoding unit 173, and a slice decoding unit 174.
  • the SPS decoding unit 171 of the multi-view image decoding unit 151 functions as a reception unit, receives the encoded bit stream transmitted from the encoding device 50 in FIG. 1, and extracts the SPS from the encoded bit stream. .
  • the SPS decoding unit 171 supplies the extracted SPS and the encoded bit stream other than the SPS to the PPS decoding unit 172.
  • the PPS decoding unit 172 extracts the PPS from the encoded bit stream other than the SPS supplied from the SPS decoding unit 171.
  • the PPS decoding unit 172 supplies the extracted PPS, SPS, and the encoded bit stream other than the SPS and PPS to the slice header decoding unit 173.
  • the slice header decoding unit 173 extracts the slice header from the encoded bit stream other than the SPS and the PPS supplied from the PPS decoding unit 172.
  • the slice header decoding unit 173 calculates the inter-camera distance, the parallax maximum value, and the parallax minimum value included in the slice header.
  • the inter-camera distance, the parallax maximum value, and the parallax minimum value that are held are updated based on the difference encoding result of the inter-camera distance, the parallax maximum value, and the parallax minimum value.
  • the slice header decoding unit 173 generates viewpoint generation information from the inter-camera distance, the parallax maximum value, the parallax minimum value, and the parallax accuracy parameter included in the PPS, and supplies the viewpoint generation information to the viewpoint synthesis unit 152.
  • the slice header decoding unit 173 is an encoded bit stream other than information on the SPS, PPS, and the inter-camera distance, the parallax maximum value, and the parallax minimum value of the slice header, and other than the SPS, PPS, and the slice header.
  • the encoded data in units of slices is supplied to the slice decoding unit 174.
  • the slice header decoding unit 173 supplies the inter-camera distance, the parallax maximum value, and the parallax minimum value to the slice decoding unit 174.
  • the slice decoding unit 174 is based on the SPS and PPS supplied from the slice header decoding unit 173, and information other than the information about the inter-camera distance, the parallax maximum value, and the parallax minimum value of the slice header, and the slice coding unit 61 (FIG. 5).
  • the encoded data of the multiplexed color image in units of slices is decoded by a method corresponding to the encoding method in (1).
  • the slice decoding unit 174 performs slice processing based on the SPS, PPS, information on the inter-camera distance, the parallax maximum value, and the parallax minimum value in the slice header, as well as the inter-camera distance, the parallax maximum value, and the parallax minimum value.
  • the encoded data of the multiplexed parallax image in units of slices is decoded by a method corresponding to the encoding method in the encoding unit 61.
  • the slice header decoding unit 173 supplies the multi-view corrected color image and the multi-view parallax image obtained as a result of the decoding to the view synthesis unit 152 in FIG.
  • FIG. 17 is a block diagram illustrating a configuration example of a decoding unit that decodes a parallax image of an arbitrary viewpoint in the slice decoding unit 174 of FIG. That is, the decoding unit that decodes the multi-view parallax image in the slice decoding unit 174 includes the decoding units 250 in FIG. 17 corresponding to the number of viewpoints.
  • a 17 includes an accumulation buffer 251, a lossless decoding unit 252, an inverse quantization unit 253, an inverse orthogonal transform unit 254, an addition unit 255, a deblock filter 256, a screen rearrangement buffer 257, and a D / A conversion unit 258. , A frame memory 259, an in-screen prediction unit 260, a motion vector generation unit 261, a motion compensation unit 262, a correction unit 263, and a switch 264.
  • the accumulation buffer 251 of the decoding unit 250 receives and accumulates encoded data of a parallax image of a predetermined viewpoint in slice units from the slice header decoding unit 173 of FIG.
  • the accumulation buffer 251 supplies the accumulated encoded data to the lossless decoding unit 252.
  • the lossless decoding unit 252 obtains a quantized coefficient by performing lossless decoding such as variable length decoding or arithmetic decoding on the encoded data from the accumulation buffer 251.
  • the lossless decoding unit 252 supplies the quantized coefficient to the inverse quantization unit 253.
  • the inverse quantization unit 253, the inverse orthogonal transform unit 254, the addition unit 255, the deblocking filter 256, the frame memory 259, the intra prediction unit 260, the motion compensation unit 262, and the correction unit 263 are the same as the inverse quantization unit 128 of FIG. ,
  • the viewpoint parallax image is decoded.
  • the inverse quantization unit 253 inversely quantizes the quantized coefficient from the lossless decoding unit 252 and supplies the coefficient obtained as a result to the inverse orthogonal transform unit 254.
  • the inverse orthogonal transform unit 254 performs inverse orthogonal transform such as inverse discrete cosine transform and inverse Karhunen-Loeve transform on the coefficient from the inverse quantization unit 253, and supplies the residual information obtained as a result to the adder 255. To do.
  • inverse orthogonal transform such as inverse discrete cosine transform and inverse Karhunen-Loeve transform
  • the addition unit 255 functions as a decoding unit, and adds the residual information as the decoding target parallax image supplied from the inverse orthogonal transformation unit 254 and the prediction image supplied from the switch 264, thereby adding the decoding target parallax. Decode the image.
  • the adding unit 255 supplies the parallax image obtained as a result to the deblocking filter 256 and also supplies the parallax image to the intra-screen prediction unit 260 as a reference image.
  • the adding unit 255 supplies the parallax image, which is residual information supplied from the inverse orthogonal transform unit 254, to the deblocking filter 256 and also uses the intra prediction unit as a reference image. 260.
  • the deblocking filter 256 removes block distortion by filtering the parallax image supplied from the adding unit 255.
  • the deblocking filter 256 supplies the parallax image obtained as a result to the frame memory 259 for storage, and also supplies it to the screen rearrangement buffer 257.
  • the parallax image stored in the frame memory 259 is supplied to the motion compensation unit 262 as a reference image.
  • the screen rearrangement buffer 257 stores the parallax image supplied from the deblocking filter 256 in units of frames.
  • the screen rearrangement buffer 257 rearranges the stored parallax images in the order of frames for encoding in the original display order and supplies them to the D / A conversion unit 258.
  • the D / A conversion unit 258 D / A converts the parallax image in units of frames supplied from the screen rearrangement buffer 257, and supplies the parallax image of a predetermined viewpoint to the viewpoint synthesis unit 152 (FIG. 15).
  • the intra-screen prediction unit 260 uses the reference image supplied from the addition unit 255 to perform intra-screen prediction in the optimal intra prediction mode represented by the intra-screen prediction information supplied from the slice header decoding unit 173 (FIG. 16). A prediction image is generated. Then, the intra-screen prediction unit 260 supplies the predicted image to the switch 264.
  • the motion vector generation unit 261 adds the motion vector represented by the prediction vector index included in the motion information supplied from the slice header decoding unit 173 and the motion vector residual among the stored motion vectors. Restore the vector.
  • the motion vector generation unit 261 holds the restored motion vector.
  • the motion vector generation unit 261 supplies the restored motion vector, the optimal inter prediction mode included in the motion information, and the like to the motion compensation unit 262.
  • the motion compensation unit 262 functions as a prediction image generation unit, and performs a motion compensation process by reading a reference image from the frame memory 259 based on the motion vector supplied from the motion vector generation unit 261 and the optimal inter prediction mode. .
  • the motion compensation unit 262 supplies the prediction image generated as a result to the correction unit 263.
  • the correction unit 263 corrects the predicted image based on the parallax maximum value, the parallax minimum value, and the inter-camera distance supplied from the slice header decoding unit 173 in FIG. 16. A correction coefficient to be used is generated. Similarly to the correction unit 135, the correction unit 263 corrects the prediction image in the optimal inter prediction mode supplied from the motion compensation unit 262 using the correction coefficient. The correction unit 263 supplies the corrected predicted image to the switch 264.
  • the switch 264 supplies the prediction image to the addition unit 255 when the prediction image is supplied from the intra-screen prediction unit 260, and supplies the prediction image to the addition unit 255 when the prediction image is supplied from the motion compensation unit 262. Supply.
  • FIG. 18 is a flowchart for explaining the decoding process of the decoding device 150 of FIG. This decoding process is started, for example, when an encoded bit stream is transmitted from the encoding device 50 of FIG.
  • the multi-view image decoding unit 151 of the decoding device 150 receives the encoded bit stream transmitted from the encoding device 50 of FIG. 1.
  • step S202 the multi-view image decoding unit 151 performs multi-view decoding processing for decoding the received encoded bitstream. Details of the multi-view decoding process will be described with reference to FIG.
  • the viewpoint synthesis unit 152 functions as a color image generation unit, and uses the viewpoint generation information, the multi-view correction color image, and the multi-view parallax image supplied from the multi-view image decoding unit 151. Generate a composite color image.
  • step S204 the multi-view image display unit 153 displays the multi-view combined color image supplied from the view combining unit 152 so that the viewable angle is different for each viewpoint, and ends the process.
  • FIG. 19 is a flowchart for explaining the details of the multi-view decoding process in step S202 of FIG.
  • step S221 of FIG. 19 the SPS decoding unit 171 (FIG. 16) of the multi-view image decoding unit 151 extracts the SPS from the received encoded bitstream.
  • the SPS decoding unit 171 supplies the extracted SPS and the encoded bit stream other than the SPS to the PPS decoding unit 172.
  • step S222 the PPS decoder 172 extracts the PPS from the encoded bitstream other than the SPS supplied from the SPS decoder 171.
  • the PPS decoding unit 172 supplies the extracted PPS, SPS, and the encoded bit stream other than the SPS and PPS to the slice header decoding unit 173.
  • step S223 the slice header decoding unit 173 supplies the parallax accuracy parameter included in the PPS supplied from the PPS decoding unit 172 to the viewpoint synthesis unit 152 as a part of the viewpoint generation information.
  • step S224 the slice header decoding unit 173 determines whether the transmission flag included in the PPS from the PPS decoding unit 172 is “1” indicating the presence of transmission. Note that the subsequent processing in steps S225 to S234 is performed in units of slices.
  • step S224 If it is determined in step S224 that the transmission flag is “1” indicating the presence of transmission, the process proceeds to step S225.
  • step S225 the slice header decoding unit 173 receives the maximum parallax value, the minimum parallax value, and the inter-camera distance, or the parallax maximum value, the parallax from the encoded bit stream other than the SPS and the PPS supplied from the PPS decoding unit 172. A slice header including the minimum value and the difference encoding result of the inter-camera distance is extracted.
  • step S226 the slice header decoding unit 173 determines whether the slice type is an intra type. If it is determined in step S226 that the slice type is an intra type, the process proceeds to step S227.
  • step S227 the slice header decoding unit 173 holds the parallax minimum value included in the slice header extracted in step S225, and supplies it to the viewpoint synthesis unit 152 as part of the viewpoint generation information.
  • step S228, the slice header decoding unit 173 holds the parallax maximum value included in the slice header extracted in step S225, and supplies the parallax maximum value as part of the viewpoint generation information to the viewpoint synthesis unit 152.
  • step S229 the slice header decoding unit 173 holds the inter-camera distance included in the slice header extracted in step S225, and supplies the information to the viewpoint synthesis unit 152 as part of the viewpoint generation information. Then, the process proceeds to step S235.
  • step S226 determines whether the slice type is an intra type, that is, if the slice type is an inter type. If it is determined in step S226 that the slice type is not an intra type, that is, if the slice type is an inter type, the process proceeds to step S230.
  • step S230 the slice header decoding unit 173 adds the difference encoding result of the parallax minimum value included in the slice header extracted in step S225 to the held parallax minimum value.
  • the slice header decoding unit 173 supplies the minimum parallax value restored by the addition to the viewpoint synthesis unit 152 as part of the viewpoint generation information.
  • step S231 the slice header decoding unit 173 adds the difference encoding result of the parallax maximum value included in the slice header extracted in step S225 to the held parallax maximum value.
  • the slice header decoding unit 173 supplies the parallax maximum value restored by the addition to the viewpoint synthesis unit 152 as a part of the viewpoint generation information.
  • step S232 the slice header decoding unit 173 adds the difference encoding result of the inter-camera distance included in the slice header extracted in step S225 to the held inter-camera distance.
  • the slice header decoding unit 173 supplies the inter-camera distance restored by the addition to the viewpoint synthesis unit 152 as a part of the viewpoint generation information. Then, the process proceeds to step S235.
  • step S224 determines whether the transmission flag is “1” indicating that there is transmission, that is, if the transmission flag is “0” indicating that there is no transmission. If it is determined in step S224 that the transmission flag is not “1” indicating that there is transmission, that is, if the transmission flag is “0” indicating that there is no transmission, the process proceeds to step S233.
  • step S233 the slice header decoding unit 173 receives the parallax maximum value, the parallax minimum value, the inter-camera distance, the parallax maximum value, and the parallax from the encoded bitstreams other than the SPS and the PPS supplied from the PPS decoding unit 172.
  • a slice header that does not include the minimum value and the difference encoding result of the inter-camera distance is extracted.
  • step S234 the slice header decoding unit 173 holds the maximum parallax value, the parallax minimum value, and the inter-camera distance, that is, the parallax maximum value, the parallax minimum value, and the inter-camera of the previous slice in the coding order.
  • the distance As the parallax maximum value, the parallax minimum value, and the inter-camera distance of the processing target slice, the parallax maximum value, the parallax minimum value, and the inter-camera distance of the processing target slice are restored.
  • the slice header decoding unit 173 supplies the restored parallax maximum value, parallax minimum value, and inter-camera distance to the viewpoint synthesis unit 152 as part of the viewpoint generation information, and the process proceeds to step S235.
  • the slice decoding unit 174 decodes the encoded data in units of slices by a method corresponding to the encoding method in the slice encoding unit 61 (FIG. 5). Specifically, the slice decoding unit 174, based on the SPS and PPS from the slice header decoding unit 173, and the slice header other than the information on the inter-camera distance, the parallax maximum value, and the parallax minimum value, the slice encoding unit 61 The encoded data of the multi-view color image in units of slices is decoded by a method corresponding to the encoding method in FIG.
  • the slice decoding unit 174 includes a slice header other than information regarding the SPS, PPS, inter-camera distance, parallax maximum value, and parallax minimum value from the slice header decoding unit 173, and the inter-camera distance, parallax maximum value, and parallax. Based on the minimum value, a parallax image decoding process for decoding the encoded data of the multi-view corrected image in units of slices is performed by a method corresponding to the encoding method in the slice encoding unit 61. Details of this parallax image decoding processing will be described with reference to FIG.
  • the slice header decoding unit 173 supplies the multi-view corrected color image and the multi-view parallax image obtained as a result of the decoding to the view synthesis unit 152 in FIG.
  • FIG. 20 is a flowchart for explaining details of the parallax image decoding processing of the slice decoding unit 174 in FIG. This parallax image decoding process is performed for each viewpoint.
  • the accumulation buffer 251 of the decoding unit 250 receives and accumulates encoded data in units of slices of a parallax image of a predetermined viewpoint from the slice header decoding unit 173 in FIG. 16.
  • the accumulation buffer 251 supplies the accumulated encoded data to the lossless decoding unit 252.
  • step S262 the lossless decoding unit 252 performs lossless decoding of the encoded data supplied from the accumulation buffer 251, and supplies the quantized coefficient obtained as a result to the inverse quantization unit 253.
  • step S263 the inverse quantization unit 253 inversely quantizes the quantized coefficient from the lossless decoding unit 252, and supplies the coefficient obtained as a result to the inverse orthogonal transform unit 254.
  • step S264 the inverse orthogonal transform unit 254 performs inverse orthogonal transform on the coefficient from the inverse quantization unit 253, and supplies the residual information obtained as a result to the addition unit 255.
  • step S265 the motion vector generation unit 261 determines whether motion information is supplied from the slice header decoding unit 173 in FIG. If it is determined in step S265 that motion information has been supplied, the process proceeds to step S266.
  • step S266 the motion vector generation unit 261 restores and holds the motion vector based on the motion information and the held motion vector.
  • the motion vector generation unit 261 supplies the reconstructed motion vector and the optimal inter prediction mode included in the motion information to the motion compensation unit 262.
  • step S267 the motion compensation unit 262 performs a motion compensation process by reading a reference image from the frame memory 259 based on the motion vector supplied from the motion vector generation unit 261 and the optimal inter prediction mode.
  • the motion compensation unit 262 supplies the prediction image generated as a result of the motion compensation process to the correction unit 263.
  • step S268 the correction unit 263 calculates the correction coefficient based on the parallax maximum value, the parallax minimum value, and the inter-camera distance supplied from the slice header decoding unit 173 in FIG. 16, similarly to the correction unit 135 in FIG. calculate.
  • step S269 the correction unit 263 corrects the prediction image in the optimal inter prediction mode supplied from the motion compensation unit 262 using the correction coefficient, similarly to the correction unit 135.
  • the correcting unit 263 supplies the corrected predicted image to the adding unit 255 via the switch 264, and the process proceeds to step S271.
  • step S265 if it is determined in step S265 that no motion information is supplied, that is, if intra-screen prediction information is supplied from the slice header decoding unit 173 to the intra-screen prediction unit 260, the process proceeds to step S270.
  • step S270 the intra prediction unit 260 uses the reference image supplied from the addition unit 255 to perform the intra prediction process in the optimal intra prediction mode indicated by the intra prediction information supplied from the slice header decoding unit 173. .
  • the intra-screen prediction unit 260 supplies the predicted image generated as a result to the addition unit 255 via the switch 264, and the process proceeds to step S271.
  • step S271 the adding unit 255 adds the residual information supplied from the inverse orthogonal transform unit 254 and the prediction image supplied from the switch 264.
  • the adding unit 255 supplies the parallax image obtained as a result to the deblocking filter 256 and also supplies the parallax image to the intra-screen prediction unit 260 as a reference image.
  • step S272 the deblocking filter 256 performs filtering on the parallax image supplied from the adding unit 255 to remove block distortion.
  • step S273 the deblocking filter 256 supplies the filtered parallax image to the frame memory 259, stores it, and supplies it to the screen rearrangement buffer 257.
  • the parallax image stored in the frame memory 259 is supplied to the motion compensation unit 262 as a reference image.
  • step S274 the screen rearrangement buffer 257 stores the parallax images supplied from the deblocking filter 256 in units of frames, and stores the parallax images in units of frames for encoding in the original display order.
  • the data is rearranged and supplied to the D / A converter 258.
  • step S275 the D / A conversion unit 258 performs D / A conversion on the parallax image in units of frames supplied from the screen rearrangement buffer 257, and supplies the parallax image of a predetermined viewpoint to the viewpoint synthesis unit 152 in FIG. .
  • the decoding apparatus 150 encodes parallax image encoded data whose encoding efficiency is improved by encoding using a prediction image corrected using information regarding a parallax image, and information regarding the parallax image. Is received. Then, the decoding device 150 corrects the predicted image using information about the parallax image, and decodes the encoded data of the parallax image using the corrected predicted image.
  • the decoding apparatus 150 includes the encoded data encoded using the predicted image corrected using the inter-camera distance, the maximum parallax value, and the minimum parallax value as information on the parallax image, and the inter-camera distance. , The parallax maximum value, and the parallax minimum value are received. Then, the decoding apparatus 150 corrects the predicted image using the inter-camera distance, the parallax maximum value, and the parallax minimum value, and decodes the encoded data of the parallax image using the corrected predicted image. Thereby, the decoding apparatus 150 can decode the encoding data of the parallax image in which encoding efficiency was improved by encoding using the prediction image corrected using the information regarding a parallax image.
  • the encoding device 50 transmits the maximum disparity value, the minimum disparity value, and the inter-camera distance included in the slice header as information used for correcting the predicted image, but the transmission method is not limited to this.
  • FIG. 21 is a diagram illustrating a method for transmitting information used for correcting a predicted image.
  • the first transmission method in FIG. 21 is a method of transmitting the disparity maximum value, the disparity minimum value, and the inter-camera distance in the slice header as information used for correcting the predicted image as described above.
  • the information used for correcting the prediction image and the viewpoint generation information can be shared, and the information amount of the encoded bitstream can be reduced.
  • the decoding device 150 it is necessary to calculate the correction coefficient using the parallax maximum value, the parallax minimum value, and the inter-camera distance, and the processing load on the decoding device 150 is larger than that in the second transmission method described later.
  • the second transmission method in FIG. 21 is a method in which the correction coefficient itself is included in the slice header and transmitted as information used for correcting the predicted image.
  • the parallax maximum value, the parallax minimum value, and the inter-camera distance are not used for correction of the predicted image, as part of the viewpoint generation information, for example, SEI (Supplemental Enhancement) that does not need to be referred to at the time of encoding Information).
  • SEI Supplemental Enhancement
  • the second transmission method since the correction coefficient is transmitted, it is not necessary to calculate the correction coefficient in the decoding device 150, and the processing load on the decoding device 150 is smaller than that in the first transmission method. However, since the correction coefficient is newly transmitted, the information amount of the encoded bit stream increases.
  • the predicted image has been corrected using the parallax maximum value, the parallax minimum value, and the inter-camera distance.
  • information related to other parallaxes for example, in the depth direction of the multi-view color image capturing unit 51. It is also possible to make correction using imaging position information representing the imaging position.
  • a certain additional correction coefficient is included in the slice header and transmitted.
  • the difference between the predicted image and the parallax image based on the parallax information is further reduced and encoded. Efficiency can be improved.
  • the additional correction coefficient is newly transmitted, the information amount of the encoded bit stream is larger than that in the first transmission method.
  • the processing load of the decoding device 150 is greater than that of the second transmission method.
  • FIG. 22 is a diagram illustrating a configuration example of an encoded bit stream when information used for correction of a predicted image is transmitted by the second transmission method.
  • PPS # 0 includes a transmission flag “1” indicating the presence of transmission.
  • the transmission flag is a flag indicating whether or not the correction coefficient is transmitted.
  • the correction coefficient a of the intra-type slices constituting the same PPS unit of PPS # 0 is 1, and the correction coefficient b is 0. Therefore, the correction coefficient a “1” and the correction coefficient b “0” are included in the slice header of the slice.
  • the correction coefficient a of the first inter-type slice constituting the same PPS unit of PPS # 0 is 3, and the correction coefficient b is 2. Therefore, in the slice header of the slice, a difference “+2” obtained by subtracting the correction coefficient a “1” of the intra-type slice immediately before in the coding order from the correction coefficient a “3” of the slice, It is included as a result of differential encoding of the correction coefficient. Similarly, the difference “+2” of the correction coefficient b is included as a difference encoding result of the correction coefficient b.
  • the correction coefficient a of the second intertype slice constituting the same PPS unit of PPS # 0 is 0, and the correction coefficient b is -1. Therefore, the difference “ ⁇ 3” obtained by subtracting the correction coefficient a “3” of the first inter-type slice in the encoding order from the correction coefficient a “0” of the slice is added to the slice header of the slice. "Is included as a difference encoding result of the correction coefficient. Similarly, the difference “ ⁇ 3” of the correction coefficient b is included as a difference encoding result of the correction coefficient b.
  • the correction coefficients of one intra-type slice and two inter-type slices that constitute the same PPS unit of PPS # 1 are the correction coefficients of the previous slice in the coding order, respectively. Matches. Therefore, PPS # 1 includes a transmission flag “0” indicating no transmission.
  • FIG. 23 is a diagram illustrating a configuration example of an encoded bit stream when information used for correcting a predicted image is transmitted by the third transmission method.
  • PPS # 0 includes a transmission flag “1” indicating the presence of transmission.
  • the transmission flag is a flag indicating whether or not the parallax minimum value, the parallax maximum value, the inter-camera distance, and the additional correction coefficient are transmitted.
  • the parallax minimum value, the parallax maximum value, and the inter-camera distance of slices that constitute the same PPS unit of PPS # 0 are the same as those in FIG. 7, and are included in the slice header of each slice.
  • the information regarding the minimum parallax value, the maximum parallax value, and the inter-camera distance is the same as in FIG.
  • the additional correction coefficient of the intra-type slices that constitute the same PPS unit of PPS # 0 is 5. Therefore, the additional correction coefficient “5” is included in the slice header of the slice.
  • the additional correction coefficient of the first inter-type slice constituting the same PPS unit of PPS # 0 is 7. Therefore, in the slice header of the slice, a difference “+2” obtained by subtracting the additional correction coefficient “5” of the previous intra-type slice in the encoding order from the additional correction coefficient “7” of the slice, It is included as a difference encoding result of the additional correction coefficient.
  • the additional correction coefficient of the second intertype slice constituting the same PPS unit of PPS # 0 is 8. Therefore, the difference “+1” obtained by subtracting the additional correction coefficient “7” of the first inter-type slice in the coding order from the additional correction coefficient “8” of the slice is added to the slice header of the slice. Is included as a difference encoding result of the additional correction coefficient.
  • PPS # 1 includes a transmission flag “0” indicating no transmission.
  • the encoding device 50 may transmit information used for correcting the predicted image by any one of the first to third transmission methods in FIG. Also, the encoding device 50 includes identification information (for example, a flag, an ID, etc.) for identifying one of the first to third transmission methods adopted as the transmission method in the encoded bitstream. May be transmitted. Furthermore, the first to third transmission methods in FIG. 21 may be appropriately selected in consideration of the balance between the data amount of the encoded bit stream and the processing load of decoding, depending on the application that uses the encoded bit stream. Is possible.
  • information used for correction of a prediction image is arranged in a slice header as information related to encoding.
  • an arrangement area of information used for correction of a prediction image is referred to during encoding.
  • the region is not limited to the slice header.
  • the information used to correct the predicted image is a new NAL such as an existing NAL (Network Abstraction Layer) unit such as a PPS NAL unit or an APS (Adaptation Parameter Set) NAL unit proposed in the HEVC standard. It can be arranged in the unit.
  • the correction coefficient and the additional correction coefficient are common among a plurality of pictures
  • a NAL unit for example, a PAL NAL unit
  • Transmission efficiency can be improved. That is, in this case, it is only necessary to transmit a common correction coefficient or an additional correction coefficient between a plurality of pictures, so there is no need to transmit a correction coefficient or an additional correction coefficient for each slice as in the case of arranging in a slice header. .
  • the color image is a color image having a flash or fade effect
  • parameters such as the parallax minimum value, the parallax maximum value, the distance between cameras, etc. tend not to change. Arrange it on a PPS NAL unit to improve transmission efficiency.
  • the correction coefficient and the additional correction coefficient are different for each picture, the correction coefficient and the additional correction coefficient are arranged in a slice header. can do.
  • the parallax image may be an image (depth image) including a depth value indicating the position of the subject in the depth direction of each pixel of the color image at the viewpoint corresponding to the parallax image.
  • the parallax maximum value and the parallax minimum value are the maximum value and the minimum value of the world coordinate value of the position in the depth direction that can be taken in the multi-viewpoint parallax image, respectively.
  • the present technology can be applied to encoding methods such as AVC and MVC (Multiview Video Coding) other than HEVC.
  • FIG. 24 is a diagram in which the slice encoding unit 61 (FIG. 5) and the slice header encoding unit 62 constituting the multi-view image encoding unit 55 (FIG. 1) are extracted.
  • FIG. 24 in order to distinguish from the slice encoding unit 61 and the slice header encoding unit 62 illustrated in FIG. 5, description is given with different reference numerals, but the basic process is the slice illustrated in FIG. 5. Since it is the same as that of the encoding part 61 and the slice header encoding part 62, the description is abbreviate
  • the slice encoding unit 301 performs the same encoding as the slice encoding unit 61 described above. That is, the slice encoding unit 301 encodes the multi-view corrected color image supplied from the multi-view color image correcting unit 52 (FIG. 1) in units of slices using the HEVC method.
  • the slice encoding unit 301 uses the parallax maximum value, the parallax minimum value, and the inter-camera distance of the viewpoint generation information supplied from the viewpoint generation information generation unit 54 of FIG.
  • the multi-view parallax image from the view parallax image generation unit 53 is encoded in units of slices in a scheme according to the HEVC scheme.
  • the slice encoding unit 301 outputs encoded data in units of slices obtained as a result of encoding to the slice header encoding unit 302.
  • the slice header encoding unit 302 sets the parallax maximum value, the parallax minimum value, and the inter-camera distance in the viewpoint generation information supplied from the viewpoint generation information generation unit 54 (FIG. 1) to the current slice to be processed.
  • the parallax maximum value, the parallax minimum value, and the inter-camera distance are held.
  • the slice header encoding unit 62 has the maximum parallax value, the minimum parallax value, and the inter-camera distance of the current processing target slice, respectively, for the previous slice in encoding order from that slice, Whether the parallax minimum value and the inter-camera distance coincide with each other is determined in the same PPS unit.
  • the above-described maximum parallax value and minimum parallax value are depth directions that can be taken in a multi-view parallax image, respectively.
  • the maximum and minimum world coordinate values for the position of are described, when the depth image including the depth value representing the position in the depth direction is used as the parallax image, the world coordinates of the position in the depth direction are used.
  • the maximum value and the minimum value can be read as appropriate.
  • FIG. 25 is a diagram illustrating an internal configuration example of the slice encoding unit 301.
  • the slice encoding unit 301 illustrated in FIG. 25 includes an A / D conversion unit 321, a screen rearrangement buffer 322, an operation unit 323, an orthogonal transformation unit 324, a quantization unit 325, a lossless encoding unit 326, an accumulation buffer 327, and an inverse buffer.
  • the slice encoding unit 301 illustrated in FIG. 25 has the same configuration as the encoding unit 120 illustrated in FIG. That is, the A / D conversion unit 321 through the rate control unit 337 of the slice encoding unit 301 shown in FIG. 25 are respectively the same as the A / D conversion unit 121 through the rate control unit 137 of the encoding unit 120 shown in FIG. It has the same function. Therefore, detailed description thereof is omitted here.
  • the slice encoding unit 301 illustrated in FIG. 25 has the same configuration as the encoding unit 120 illustrated in FIG. 6, but the internal configuration of the correction unit 335 is the correction unit 135 of the encoding unit 120 illustrated in FIG. 6. And different.
  • FIG. 26 shows the configuration of the correction unit 335.
  • the correction unit 335 illustrated in FIG. 26 includes a depth correction unit 341, a luminance correction unit 32, a cost calculation unit 343, and a setting unit 344. The processing performed by these units will be described later with reference to a flowchart.
  • FIG. 27 is a diagram for explaining parallax and depth.
  • C1 represents the position where the camera C1 is installed
  • C2 represents the position where the camera C2 is installed.
  • the camera C1 and the camera C2 can shoot color images (color images) from different viewpoints.
  • the camera C1 and the camera C2 are installed with a distance L apart.
  • M is an object to be imaged and is described as an object M.
  • f represents the focal length of the camera C1.
  • Z (L / D) ⁇ f
  • Z is the position in the depth direction of the subject of the parallax image (depth image) (the distance in the depth direction between the object M and the camera C1 (camera C2)).
  • D represents a shooting parallax vector (its x component) and represents a parallax value. That is, D is a parallax that occurs between the two cameras.
  • D (d) is determined on the color image captured by the camera C2 from the horizontal distance u1 of the position of the object M on the color image captured by the camera C1 from the center of the color image.
  • the parallax value D and the position Z can be uniquely converted. Therefore, hereinafter, the parallax image and the depth image are collectively referred to as a depth image. The description will be further continued with respect to satisfying the relationship of the above-described formula, in particular, the relationship between the parallax value D and the position Z in the depth direction.
  • FIG. 28 and FIG. 29 are diagrams for explaining the relationship between the image captured by the camera, the depth, and the depth value.
  • the camera 401 images the tube 411, the face 412, and the house 413.
  • a tube 411, a face 412, and a house 413 are arranged in order from the side close to the camera 401.
  • the position in the depth direction of the cylinder 411 arranged closest to the camera 401 is set to the minimum value Znear of the world coordinate value of the position in the depth direction, and is arranged at the position farthest from the camera 401.
  • the position of the house 413 is set to the maximum value Zfar of the world coordinate value of the position in the depth direction.
  • FIG. 29 is a diagram for explaining the relationship between the minimum value Znear and the maximum value Zfar of the position in the depth direction of the viewpoint generation information.
  • the horizontal axis is the reciprocal of the position in the depth direction before normalization
  • the vertical axis is the pixel value of the depth image.
  • the depth value as the pixel value of each pixel is normalized to a value of 0 to 255, for example, using the reciprocal of the maximum value Zfar and the reciprocal of the minimum value Znear.
  • a depth image is generated using the normalized depth value of each pixel, which is one of 0 to 255, as the pixel value.
  • the graph shown in FIG. 29 corresponds to the graph shown in FIG.
  • the graph shown in FIG. 29 is a flag indicating the relationship between the minimum value and the maximum value of the depth position of the viewpoint generation information
  • the graph shown in FIG. 2 is the parallax maximum value and parallax of the viewpoint generation information. It is the graph which showed the relationship of the minimum value.
  • the pixel value I of each pixel of the parallax image is expressed by the equation (1) using the parallax value d, the parallax minimum value Dmin, and the parallax maximum value Dmax before normalization of the pixel. ).
  • formula (1) is again shown as formula (11) below.
  • the pixel value y of each pixel of the depth image is expressed by the following expression (13) using the depth value 1 / Z, the minimum value Znear, and the maximum value Zfar before normalization of the pixel.
  • the reciprocal of the position Z is used as the depth value, but the position Z itself can also be used as the depth value.
  • the pixel value y of the depth image is a value calculated from the maximum value Zfar and the minimum value Znear.
  • the maximum value Zfar and the minimum value Znear are values determined depending on the positional relationship of the object to be imaged. Therefore, when the positional relationship of the object in the captured image changes, the maximum value Zfar and the minimum value Znear also change according to the change.
  • FIG. 30 shows the positional relationship of images captured by the camera 401 at time T 0 , and shows the same positional relationship as the positional relationship shown in FIG. Assume that when the time T 0 changes to the time T 1 , the cylinder 411 located near the camera 401 disappears, and the positional relationship between the face 412 and the house 413 has not changed.
  • the minimum value Znear changes to the minimum value Znear ′. That is, at time T 0 , the position Z in the depth direction of the cylinder 411 is the minimum value Znear, but at time T 1 , the cylinder 411 disappears, so that the object closest to the camera 401 becomes a face. 412, and the position of the minimum value Znear (Znear ′) changes to the position Z of the face 412 with the change.
  • the difference (range) between the minimum value Znear and the maximum value Zfar at time T 0 is the depth range A indicating the range of the position in the depth direction, and the difference (range) between the minimum value Znear ′ and the maximum value Zfar at time T 1. ) Is a depth range B.
  • the depth range A has changed to the depth range B.
  • the pixel value y of the depth image is a value calculated from the maximum value Zfar and the minimum value Znear. When changing to the depth range B, the pixel value calculated using such a value also changes.
  • the depth image 421 at time T 0 is shown on the left side of FIG. 30, but since the cylinder 411 is in front, the pixel value of the cylinder 411 is large (bright), and the pixel values of the face 412 and the house 413 are Since it is located farther than the cylinder 411, it is smaller (darker) than the cylinder 411.
  • the depth image 522 at time T 1 is shown on the right side of FIG. 30, but since the cylinder 411 is eliminated, the depth range is reduced, and the pixel value of the face 412 is larger (brighter) than the depth image 421. Become. This is because, as described above, since the depth range changes, even at the same position Z, the pixel value y obtained by the equation (13) using the maximum value Zfar and the minimum value Znear changes. is there.
  • FIG. 31 is the same as the diagram shown in FIG. However, the positional relationship of the object at the time T 1 shown on the right side shown in FIG. 31 assumes that the cylinder 411 ′ is located on the front side of the camera 401, and processes the minimum value Znear without any change. By processing in this way, it becomes possible to perform processing without changing the above-described depth range A and depth range B. Therefore, the range of the maximum value and the minimum value of the distance in the depth direction is prevented from changing suddenly, and the pixel value (luminance value) of the depth image does not change significantly when the position in the depth direction is the same. It is possible to reduce the possibility of losing the prediction.
  • FIG. 32 it is assumed that the positional relationship of the object changes. 32, the positional relationship at the time T 0 shown on the left side of FIG. 32 is the same as the case shown in FIG. 30 and FIG. This is a case where the cylinder 411, the face 412, and the house 413 are located.
  • the position of the face 412 in the depth direction is smaller than the position of the face 412 in the depth direction at the time T 0 (the pixel of the depth image).
  • the process of preventing the pixel value (luminance value) of the depth image from changing significantly when the position in the depth direction is the same as described above, the pixel value of the depth image of the face 412 is changed to the depth direction. There is a possibility that an appropriate pixel value (luminance value) corresponding to the position is not set. Therefore, after the processing described with reference to FIG.
  • processing is performed such that the pixel value (luminance value) of the face 412 or the like becomes an appropriate pixel value (luminance value).
  • luminance value luminance value
  • a process for preventing the pixel value of the depth image from changing significantly is performed, and a process for obtaining an appropriate pixel value (luminance value) is performed.
  • FIGS. 33 and 34 are flowcharts illustrating details of the parallax image encoding processing of the slice encoding unit 301 illustrated in FIGS. 24 to 26. This parallax image encoding process is performed for each viewpoint.
  • the slice encoding unit 301 shown in FIGS. 24 to 26 has basically the same configuration as the slice encoding unit 61 shown in FIGS. 5 and 6, but the internal configuration of the correction unit 335 is different. . Therefore, the processing other than the processing performed by the correction unit 335 is basically the same as the processing of the slice encoding unit 61 shown in FIGS. 5 and 6, that is, the processing of the flowcharts shown in FIGS. 13 and 14. It is performed as a simple process.
  • the description about the part which overlaps with the part demonstrated with the flowchart shown in FIG. 13, FIG. 14 is abbreviate
  • step S305 is performed by the cost calculation unit 343 in FIG. 26 and the process of step S308 is performed by the setting unit 344.
  • steps S314 to S320 in FIG. 34 are performed in the same manner as the processes in steps S175 to S181 in FIG. That is, basically the same processing is executed except that the predicted image generation processing executed in step S304 is different from the processing of the flowchart shown in FIG.
  • step S341 the depth correction unit 341 (FIG. 26) determines whether or not the pixel value of the depth image to be processed is a parallax value (disparity).
  • step S331 If it is determined in step S331 that the pixel value of the depth image to be processed is a parallax value, the process proceeds to step S332.
  • step S332 a correction coefficient for the parallax value is calculated.
  • the correction coefficient for the parallax value is obtained by the following equation (14).
  • Vref ′ and Vref are the parallax value of the predicted image of the corrected parallax image and the parallax value of the predicted image of the parallax image before correction, respectively.
  • L cur and L ref are the inter-camera distance of the parallax image to be encoded and the inter-camera distance of the predicted image of the parallax image, respectively.
  • F cur and F ref are the focal length of the parallax image to be encoded and the focal length of the predicted image of the parallax image, respectively.
  • Dcur min and Dref min are the parallax minimum value of the parallax image to be encoded and the parallax minimum value of the predicted image of the parallax image, respectively.
  • Dcur max and Dref max are the parallax maximum value of the parallax image to be encoded and the parallax maximum value of the predicted image of the parallax image, respectively.
  • the depth correction unit 341 generates a and b in Expression (14) as correction coefficients as correction coefficients for parallax values.
  • the correction coefficient a is a disparity weighting coefficient (disparity weighting coefficient)
  • the correction coefficient b is a disparity offset (disparity offset).
  • the depth correction unit 341 calculates the pixel value of the predicted image of the corrected depth image from the disparity weighting coefficient and the disparity offset based on the above equation (14).
  • the processing here is based on the disparity range indicating the disparity range used when normalizing the disparity as the pixel value of the parallax image for the parallax image as the depth image.
  • This is a weighted prediction process using a disparity weighting coefficient as a coefficient and a disparity offset as a depth offset.
  • depth weighting prediction processing it is described as depth weighting prediction processing as appropriate.
  • step S333 a correction coefficient for the position (distance) in the depth direction is calculated.
  • the correction coefficient for the position (distance) in the depth direction is obtained by the following equation (15).
  • Vref ′ and Vref are the pixel value of the predicted image of the corrected depth image and the pixel value of the predicted image of the depth image before correction, respectively.
  • Zcur near and Zref near are respectively the position in the depth direction of the subject closest to the depth image to be encoded (minimum value Znear) and the position in the depth direction of the subject closest to the predicted image of the depth image (minimum value).
  • Znear Znear
  • Zcur far and Zref far are respectively the position in the depth direction of the farthest subject in the depth image to be encoded (maximum value Zfar) and the position in the depth direction of the farthest subject in the predicted image of the depth image (maximum value Zfar).
  • the depth correction unit 341 generates a and b in Expression (15) as correction coefficients as correction coefficients for positions in the depth direction.
  • the correction coefficient a is a depth value weighting coefficient (depth weighting coefficient)
  • the correction coefficient b is a depth value offset (depth offset).
  • the depth correction unit 341 calculates the pixel value of the predicted image of the depth image after correction from the depth weighting coefficient and the depth offset based on the above equation (15).
  • the processing here is for a depth image as a depth image, and based on the depth range used when normalizing the depth value as the pixel value of the depth image, the depth weight coefficient as the depth weight coefficient and the depth This is a weighted prediction process using a depth offset as an offset. Here, it is described as depth weighting prediction processing as appropriate.
  • the setting unit 344 When the correction coefficient is calculated in this way, the setting unit 344 generates information indicating whether the correction coefficient for the parallax value is calculated or the correction coefficient for the position (distance) in the depth direction is calculated, The data is transmitted to the decoding side via the slice header encoding unit 302 or the like.
  • the setting unit 344 performs depth weighting prediction processing based on the depth range used when normalizing the depth value representing the position (distance) in the depth direction, or normalizes the parallax value. Determine whether to perform depth weighted prediction processing based on the disparity range to be used, set depth identification data to identify which prediction processing has been performed based on the determination, and transmit the depth identification data to the decoding side Is done.
  • the depth identification data can be set by the setting unit 344 and transmitted by being included in the slice header by the slice header encoding unit 302. If such depth identification data can be shared between the encoding side and the decoding side, the depth side representing the position (distance) in the depth direction can be normalized by referring to the depth identification data on the decoding side. It is possible to determine whether to perform the depth weighted prediction process based on the depth range to be used, or to perform the depth weighted prediction process based on the disparity range used when normalizing the parallax value representing the parallax.
  • the correction coefficient may not be calculated depending on the type of slice. Specifically, when the slice type is a P slice, an SP slice, or a B slice, a correction coefficient is calculated (depth weighting prediction processing is performed), and when the slice type is another slice, the correction coefficient is calculated. It may not be calculated.
  • the configuration for determining whether or not to calculate the correction coefficient depending on the type of slice determines whether or not to calculate the correction coefficient based on the type of picture (picture type). It can also be set as such. For example, when the picture type is a B picture, the correction coefficient may not be calculated. Here, the description will be continued on the assumption that whether or not the correction coefficient is calculated depending on the type of slice.
  • the setting unit 344 sets depth_weighted_pred_flag to 1, for example, and when the depth weighting prediction process is not performed, the setting unit 344 , Depth_weighted_pred_flag may be set to 0, and this depth_weighted_pred_flag may be transmitted by being included in the slice header by the slice header encoding unit 302, for example.
  • the setting unit 344 sets depth_weighted_bipred_flag to 1, for example, and does not perform the depth weighted prediction process (the depth weighted prediction process is skipped).
  • the setting unit 344 may set depth_weighted_bipred_flag to 0, and this depth_weighted_bipred_flag may be transmitted by being included in the slice header by the slice header encoding unit 302, for example.
  • the decoding side can determine whether or not it is necessary to calculate a correction coefficient by referring to depth_weighted_pred_flag and depth_weighted_bipred_flag. In other words, on the decoding side, it is possible to determine whether or not to calculate the correction coefficient depending on the type of slice, and to perform processing such that control is performed so as not to calculate the correction coefficient depending on the type of slice.
  • the luminance correction coefficient is calculated by the luminance correction unit 342.
  • the luminance correction coefficient can be calculated by applying luminance correction in the AVC method, for example.
  • Luminance correction in the AVC method is also corrected by performing weighted prediction processing using a weighting coefficient and an offset, as in the above-described depth weighted prediction processing.
  • a predicted image corrected by the above-described depth weighted prediction process is generated, and a weighted prediction process for correcting the luminance value is performed on the corrected predicted image, and the depth image is encoded.
  • a predicted image (depth predicted image) to be used is generated.
  • data for identifying whether the correction coefficient has been calculated or not calculated may be set and transmitted to the decoding side.
  • the weighted_pred_flag when the luminance value correction coefficient is calculated, for example, the weighted_pred_flag is set to 1, and when the luminance value correction coefficient is not calculated, the weighted_pred_flag is set to 0.
  • the weighted_pred_flag may be set and transmitted by being included in the slice header by the slice header encoding unit 302, for example.
  • weighted_bipred_flag when the luminance value correction coefficient is calculated, for example, weighted_bipred_flag is set to 1, and when the luminance value correction coefficient is not calculated, weighted_bipred_flag is set to 0,
  • This weighted_bipred_flag may be transmitted by being included in the slice header by the slice header encoding unit 302, for example.
  • step S332 or step S333 the normalization deviation is corrected and the effect of converting to the same coordinate system is obtained, and in step S334, the luminance deviation correction process is executed. If the process of correcting the normalization deviation is executed after correcting the luminance first, the relationship between the minimum value Znear and the maximum value Zfar is broken, and the normalization deviation cannot be corrected appropriately. there is a possibility. Therefore, it is preferable to correct the normalization deviation first and then correct the luminance deviation.
  • the description has been made assuming that the depth weighted prediction process for correcting the deviation of normalization and the weighted prediction process for correcting the luminance value are performed, but it is also possible to configure so that only one of the prediction processes is performed. It is.
  • step S335 the brightness correction unit 342 generates a predicted image. Since the generation of the predicted image has already been described, the description thereof is omitted.
  • the depth image is encoded using the generated depth prediction image, and encoded data (depth stream) is generated and transmitted to the decoding side.
  • a decoding device that receives and processes the image generated in this way will be described.
  • FIG. 36 is a diagram in which the slice header decoding unit 173 and the slice decoding unit 174 (FIG. 16) constituting the multi-view image decoding unit 151 (FIG. 15) are extracted.
  • the basic processing is the slice header decoding shown in FIG. Since it is the same as that of the part 173 and the slice decoding part 174, the description is abbreviate
  • the slice decoding unit 552 is based on the SPS and PPS supplied from the slice header decoding unit 551 and the slice encoding unit 301 (FIG. 24) based on information other than the information about the inter-camera distance, the parallax maximum value, and the parallax minimum value of the slice header.
  • the encoded data of the multiplexed color image in units of slices is decoded by a method corresponding to the encoding method in (1).
  • the slice decoding unit 552 performs slice processing based on the SPS, PPS, information other than the information about the inter-camera distance, the parallax maximum value, and the parallax minimum value of the slice header,
  • the encoded data of the multiplexed parallax image (multiplexed depth image) in units of slices is decoded by a method corresponding to the encoding method in the encoding unit 301 (FIG. 24).
  • the slice decoding unit 552 supplies the multi-view corrected color image and the multi-view parallax image obtained as a result of the decoding to the view synthesis unit 152 in FIG.
  • FIG. 37 is a block diagram illustrating a configuration example of a decoding unit that decodes an arbitrary one-view depth image in the slice decoding unit 552 of FIG. That is, the decoding unit that decodes the multi-view parallax image in the slice decoding unit 532 includes the slice decoding units 552 in FIG. 37 corresponding to the number of viewpoints.
  • a lossless decoding unit 572 includes an accumulation buffer 571, a lossless decoding unit 572, an inverse quantization unit 573, an inverse orthogonal transform unit 574, an addition unit 575, a deblock filter 576, a screen rearrangement buffer 577, and a D / A conversion unit. 578, a frame memory 579, an intra-screen prediction unit 580, a motion vector generation unit 581, a motion compensation unit 582, a correction unit 583, and a switch 584.
  • the accumulation buffers 571 to 584 of the slice decoding unit 552 shown in FIG. 37 have the same functions as the accumulation buffers 251 to 534 shown in FIG. Therefore, the detailed description is abbreviate
  • the slice decoding unit 552 shown in FIG. 37 and the decoding unit 250 shown in FIG. 17 have the same configuration, but the internal configuration of the correction unit 583 is different from the correction unit 263 shown in FIG. FIG. 38 shows the configuration of the correction unit 583.
  • FIG. 39 is a flowchart for explaining a process related to a depth image decoding process. That is, the depth of the depth image of the predetermined viewpoint encoded using the depth prediction image of the depth image of the predetermined viewpoint corrected by using the information on the depth image of the predetermined viewpoint in the above-described processing on the encoding side. A process executed on the side of receiving the stream and the information regarding the depth image of the predetermined viewpoint will be described.
  • FIG. 39 is a flowchart for explaining details of the parallax image decoding process of the slice decoding unit 552 shown in FIGS. 36 to 38. This parallax image decoding process is performed for each viewpoint.
  • the slice decoding unit 552 shown in FIG. 39 has basically the same configuration as the slice decoding unit 174 shown in FIGS. 16 and 17, but the internal configuration of the correction unit 583 is different. Therefore, processing other than the processing performed by the correction unit 583 is basically performed as processing similar to the processing of the slice decoding unit 532 illustrated in FIGS. 16 and 17, that is, processing similar to the processing of the flowchart illustrated in FIG. 20. Is called.
  • the description about the part which overlaps with the part demonstrated with the flowchart shown in FIG. 20 is abbreviate
  • steps S351 to S357 and steps S359 to S364 in FIG. 39 are performed in the same manner as the processes in steps S261 to S267 and steps S270 to S275 in FIG. That is, basically the same processing is executed except that the predicted image generation processing executed in step S358 is different from the processing of the flowchart shown in FIG.
  • step S358 the predicted image generation processing executed in step S358 will be described with reference to the flowchart of FIG.
  • step S373 it is determined whether or not the pixel value of the depth image to be processed is a parallax value. If it is determined in step S373 that the pixel value of the depth image to be processed is a parallax value, the process proceeds to step S374.
  • step S374 the depth correction unit 603 calculates a correction coefficient for the parallax value. Similarly to the depth correction unit 341 in FIG. 26, the depth correction unit 603 calculates a correction coefficient (a disparity weight coefficient and a disparity offset) based on the parallax maximum value, the parallax minimum value, and the inter-camera distance. . Once the correction coefficient is calculated, a corrected predicted image is once calculated. Here, “temporarily” is described because it is not the final predicted image used for decoding because the luminance value is further corrected in the subsequent processing as in the encoding side.
  • step S375 the depth correction unit 603 is similar to the depth correction unit 341 in FIG. Based on the maximum value and the minimum value of the position (distance) in the depth direction, correction coefficients (depth weighting coefficient and depth offset) are calculated. Once the correction coefficient is calculated, a corrected predicted image is once calculated.
  • “temporarily” is described because the luminance value is further corrected in the subsequent processing as in the case of the encoding side, and is not the final predicted image used for decoding.
  • step S377 the luminance correction unit 604 calculates a luminance correction coefficient. Similarly to the luminance correction unit 342 in FIG. 26, the luminance correction unit 604 calculates a luminance correction coefficient calculated based on a predetermined method. Using the calculated correction coefficient, a predicted image whose luminance value is corrected is calculated.
  • step S385 a predicted image is generated using the calculated correction coefficient and the like.
  • step S371 determines whether or not the processing target slice is a P slice or an SP slice. If it is determined in step S371 that the processing target slice is not a P slice or an SP slice, the process proceeds to step S378, and it is determined whether or not the processing target slice is a B slice. If it is determined in step S378 that the processing target slice is a B slice, the process proceeds to step S379. If it is determined that the slice is not a B slice, the process proceeds to step S385.
  • step S380 it is determined whether or not the pixel value of the depth image to be processed is a parallax value. If it is determined in step S380 that the pixel value of the depth image to be processed is a parallax value, the process proceeds to step S381, and the depth correction unit 603 calculates a correction coefficient for the parallax value. Similarly to the depth correction unit 341 in FIG. 26, the depth correction unit 603 calculates a correction coefficient based on the parallax maximum value, the parallax minimum value, and the inter-camera distance. The corrected prediction image is calculated using the calculated correction coefficient.
  • step S380 determines whether the pixel value of the depth image to be processed is a parallax value. If it is determined in step S380 that the pixel value of the depth image to be processed is not a parallax value, the process proceeds to step S382.
  • the depth correction unit 603 is similar to the depth correction unit 341 in FIG.
  • the correction coefficient is calculated based on the maximum value and the minimum value of the position (distance) in the depth direction.
  • the corrected prediction image is calculated using the calculated correction coefficient.
  • the luminance correction unit 604 calculates a luminance correction coefficient. Similarly to the luminance correction unit 342 in FIG. 26, the luminance correction unit 604 calculates a correction coefficient for luminance calculated based on a predetermined method, for example, the AVC method. Using the calculated correction coefficient, a predicted image whose luminance value is corrected is calculated.
  • step S360 the processing after step S360 is performed in the same manner as the processing after step S271 in FIG. 20, and since it has already been described, the description thereof is omitted here.
  • the correction coefficient for the parallax value and the correction coefficient for the position (distance) in the depth direction are respectively calculated when the pixel value of the depth image to be processed is a parallax value and when the pixel value is not the parallax value.
  • luminance correction can be appropriately performed by calculating a correction coefficient for luminance.
  • the correction coefficient for the parallax value and the position (distance) in the depth direction are used.
  • the correction coefficients are calculated, either one may be calculated.
  • the correction coefficient for the parallax value is set. Only need to be calculated.
  • the depth value representing the position (distance) in the depth direction is used as the pixel value of the depth image to be processed, and the correction coefficient for the position (distance) in the depth direction is calculated. Is set, only the correction coefficient for the position (distance) in the depth direction needs to be calculated.
  • the encoding side calculates the correction coefficient for the position in the depth direction in step S333 (FIG. 35), and the decoding side, for example, for the position in the depth direction in step S375 (FIG. 40).
  • the correction coefficient is calculated.
  • the encoding side and the decoding side respectively calculate the correction coefficients for the position in the depth direction, but if the calculated correction coefficients are not the same, different predicted images are generated.
  • the same correction coefficient needs to be calculated on the encoding side and the decoding side. In other words, the calculation accuracy needs to be the same on the encoding side and the decoding side.
  • Equation (15) used when calculating the correction coefficient for the position in the depth direction is again shown as Equation (16) below.
  • A, B, C, and D in Expression (17) are calculated from Expression (18) below in order to obtain fixed-point values.
  • A INT ( ⁇ 1 ⁇ shift ⁇ / Zref near )
  • B INT ( ⁇ 1 ⁇ shift ⁇ / Zref far )
  • C INT ( ⁇ 1 ⁇ shift ⁇ / Zcur near )
  • D INT ( ⁇ 1 ⁇ shift ⁇ / Zcur far )
  • A is (1 / Zref near ), but (1 / Zref near ) may be a value including a numerical value after the decimal point. If a value after the decimal point is included and processing such as truncation of the decimal point is performed, there may be a difference in the calculation accuracy between the encoding side and the decoding side depending on the number after the decimal point. is there.
  • the integer part is a large value, even if the number after the decimal point is rounded down, the percentage of the number after the decimal point in the whole number is small, so there is no error in the calculation accuracy, but the integer part is small.
  • a numerical value after the decimal point is important, and truncating such a numerical value after the decimal point may cause an error in calculation accuracy.
  • ⁇ ⁇ When a floating point is entered, it is converted to a fixed decimal, and then converted from a fixed decimal to an integer.
  • the fixed decimal is represented by, for example, an integer Mbit and a decimal Nbit, and M and N are set according to the standard.
  • the integer is, for example, an integer part N digits and a decimal part M digits, and an integer value a and a decimal value b.
  • N 4
  • (a ⁇ M + b) 100011.
  • the portion of the correction coefficient a may be calculated based on the equations (18) and (19). If the shift and denom values are configured to be shared between the encoding side and the decoding side, the calculation accuracy can be matched between the encoding side and the decoding side. As a sharing method, it can be realized by supplying shift and denom values from the encoding side to the decoding side. Further, it can be realized by setting the same shift and denom values on the encoding side and the decoding side, in other words, setting them as fixed values.
  • the correction coefficient a portion has been described as an example, but the correction coefficient b portion may be calculated in the same manner.
  • the shift described above may be greater than the accuracy of the position Z. That is, shift may be set so that the value multiplied by shift is larger than the value of position Z. In other words, the accuracy of the position Z may be set to be equal to or less than the accuracy of shift.
  • the correction coefficient a and the correction coefficient b in other words, the weighting coefficient and the offset of the position Z have been described as being shared between the encoding side and the decoding side, but the calculation order is also set and shared. You may do it.
  • the depth correction unit 341 is configured to set the calculation accuracy used for the calculation when performing the depth weighting prediction process using the depth weight coefficient and the depth offset for the depth image. be able to. Further, as described above, the depth correction unit 341 performs depth weighting prediction processing on the depth image according to the set calculation accuracy, and encodes the depth image using the depth prediction image obtained as a result. It can be configured to generate a depth stream.
  • the calculation order may be shared between the encoding side and the decoding side.
  • the sharing method may be shared by transmission as in the case described above, or may be shared by being set as a fixed value.
  • a shift parameter indicating the shift amount of the shift operation may be set, and the set shift parameter may be transmitted and received together with the generated depth stream.
  • the shift parameter may be fixed in sequence units and variable in GOP, picture, and slice units.
  • the numerator (Zcur near ⁇ Zcur far ) and the denominator (Zref near ⁇ Zref far ) are multiplied by Z and may overflow.
  • the remaining 27 bits are set, so when such a setting is made, 13 bits ⁇ 13 bits becomes the limit. Therefore, in this case, the value of Z can only be used up to ⁇ 4096, but it is also assumed that a value larger than 4096 such as 10,000 is used as the value of Z.
  • Znear Znear ⁇ x
  • Zfar Zfar ⁇ y
  • the shift amount such as x and y may be shared by being transmitted from the encoding side to the decoding side as in the case described above, or may be shared between the encoding side and the decoding side as a fixed value. You may make it do.
  • the information used for the correction coefficients a and b and the information on the accuracy (shift amount) may be included in the slice header, or may be included in a NAL (Network Abstraction Layer) unit such as SPS or PPS.
  • NAL Network Abstraction Layer
  • FIG. 41 shows a configuration example of an embodiment of a computer in which a program for executing the series of processes described above is installed.
  • the program can be recorded in advance in a storage unit 808 or a ROM (Read Only Memory) 802 as a recording medium built in the computer.
  • ROM Read Only Memory
  • the program can be stored (recorded) in the removable medium 811.
  • a removable medium 811 can be provided as so-called package software.
  • the removable media 811 includes, for example, a flexible disk, a CD-ROM (Compact Disc Read Only Memory), an MO (Magneto Optical) disc, a DVD (Digital Versatile Disc), a magnetic disc, a semiconductor memory, and the like.
  • the program can be installed on the computer from the removable medium 811 as described above via the drive 810, or can be downloaded to the computer via a communication network or a broadcast network, and installed in the built-in storage unit 808. That is, the program is transferred from a download site to a computer wirelessly via a digital satellite broadcasting artificial satellite, or wired to a computer via a network such as a LAN (Local Area Network) or the Internet. be able to.
  • LAN Local Area Network
  • the computer incorporates a CPU (Central Processing Unit) 801, and an input / output interface 805 is connected to the CPU 801 via a bus 804.
  • a CPU Central Processing Unit
  • an input / output interface 805 is connected to the CPU 801 via a bus 804.
  • the CPU 801 executes a program stored in the ROM 802 according to an instruction input by the user operating the input unit 806 via the input / output interface 805. Alternatively, the CPU 801 loads a program stored in the storage unit 808 to a RAM (Random Access Memory) 803 and executes it.
  • a RAM Random Access Memory
  • the CPU 801 performs processing according to the flowchart described above or processing performed by the configuration of the block diagram described above. Then, the CPU 801 outputs the processing result as necessary, for example, via the input / output interface 805, from the output unit 807, transmitted from the communication unit 809, and recorded in the storage unit 808.
  • the input unit 806 includes a keyboard, a mouse, a microphone, and the like.
  • the output unit 807 includes an LCD (Liquid Crystal Display), a speaker, and the like.
  • the processing performed by the computer according to the program does not necessarily have to be performed in chronological order in the order described as the flowchart. That is, the processing performed by the computer according to the program includes processing executed in parallel or individually (for example, parallel processing or object processing).
  • the program may be processed by one computer (processor), or may be distributedly processed by a plurality of computers. Furthermore, the program may be transferred to a remote computer and executed.
  • the present technology processes when communicating via network media such as satellite broadcasting, cable TV (television), the Internet, and mobile phones, or on storage media such as light, magnetic disks, and flash memory.
  • the present invention can be applied to an encoding device and a decoding device used at the time.
  • the above-described encoding device and decoding device can be applied to any electronic device. Examples thereof will be described below.
  • FIG. 42 illustrates a schematic configuration of a television apparatus to which the present technology 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, and an external interface unit 909. Furthermore, the television apparatus 900 includes a control unit 910, a user interface unit 911, and the like.
  • the tuner 902 selects a desired channel from the broadcast wave signal received by the antenna 901, demodulates it, and outputs the obtained encoded bit stream to the demultiplexer 903.
  • the demultiplexer 903 extracts video and audio packets of the program to be viewed from the encoded bit stream, and outputs the extracted packet data to the decoder 904. Further, the demultiplexer 903 supplies a packet of data such as EPG (Electronic Program Guide) to the control unit 910. If scrambling is being performed, descrambling is performed by a demultiplexer or the like.
  • EPG Electronic Program Guide
  • the decoder 904 performs packet decoding processing, and outputs video data generated by the decoding processing to the video signal processing unit 905 and audio data to the audio signal processing unit 907.
  • the video signal processing unit 905 performs noise removal, video processing according to user settings, and the like on the video data.
  • the video signal processing unit 905 generates video data of a program to be displayed on the display unit 906, image data by processing based on an application supplied via a network, and the like. Further, the video signal processing unit 905 generates video data for displaying a menu screen for selecting an item and the like, and superimposes the video data on the video data of the program.
  • the video signal processing unit 905 generates a drive signal based on the video data generated in this way, and drives the display unit 906.
  • the display unit 906 drives a display device (for example, a liquid crystal display element or the like) based on a drive signal from the video signal processing unit 905 to display a program video or the like.
  • a display device for example, a liquid crystal display element or the like
  • the audio signal processing unit 907 performs predetermined processing such as noise removal on the audio data, performs D / A conversion processing and amplification processing on the processed audio data, and outputs the audio data to the speaker 908.
  • the external interface unit 909 is an interface for connecting to an external device or a network, and transmits and receives data such as video data and audio data.
  • a user interface unit 911 is connected to the control unit 910.
  • the user interface unit 911 includes an operation switch, a remote control signal receiving unit, and the like, and supplies an operation signal corresponding to a user operation to the control unit 910.
  • the control unit 910 is configured using a CPU (Central Processing Unit), a memory, and the like.
  • the memory stores a program executed by the CPU, various data necessary for the CPU to perform processing, EPG data, data acquired via a network, and the like.
  • the program stored in the memory is read and executed by the CPU at a predetermined timing such as when the television device 900 is activated.
  • the CPU executes each program to control each unit so that the television device 900 operates in accordance with the user operation.
  • the television device 900 includes a bus 912 for connecting the tuner 902, the demultiplexer 903, the video signal processing unit 905, the audio signal processing unit 907, the external interface unit 909, and the control unit 910.
  • the decoder 904 is provided with the function of the decoding apparatus (decoding method) of the present application. For this reason, it is possible to decode the encoded data of the parallax image whose encoding efficiency has been improved by encoding using information related to the parallax image.
  • FIG. 43 illustrates a schematic configuration of a mobile phone to which the present technology is applied.
  • the cellular phone 920 includes a communication unit 922, an audio codec 923, a camera unit 926, an image processing unit 927, a demultiplexing unit 928, a recording / reproducing unit 929, a display unit 930, and a control unit 931. These are connected to each other via a bus 933.
  • an antenna 921 is connected to the communication unit 922, and a speaker 924 and a microphone 925 are connected to the audio codec 923. Further, an operation unit 932 is connected to the control unit 931.
  • the mobile phone 920 performs various operations such as transmission / reception of voice signals, transmission / reception of e-mail and image data, image shooting, and data recording in various modes such as a voice call mode and a data communication mode.
  • the voice signal generated by the microphone 925 is converted into voice data and compressed by the voice codec 923 and supplied to the communication unit 922.
  • the communication unit 922 performs audio data modulation processing, frequency conversion processing, and the like to generate a transmission signal.
  • the communication unit 922 supplies a transmission signal to the antenna 921 and transmits it to a base station (not shown).
  • the communication unit 922 performs amplification, frequency conversion processing, demodulation processing, and the like of the reception signal received by the antenna 921, and supplies the obtained audio data to the audio codec 923.
  • the audio codec 923 performs data expansion of the audio data and conversion to an analog audio signal and outputs the result to the speaker 924.
  • the control unit 931 receives character data input by operating the operation unit 932 and displays the input characters on the display unit 930.
  • the control unit 931 generates mail data based on a user instruction or the like in the operation unit 932 and supplies the mail data to the communication unit 922.
  • the communication unit 922 performs mail data modulation processing, frequency conversion processing, and the like, and transmits the obtained transmission signal from the antenna 921.
  • the communication unit 922 performs amplification, frequency conversion processing, demodulation processing, and the like of the reception signal received by the antenna 921, and restores mail data. This mail data is supplied to the display unit 930 to display the mail contents.
  • the mobile phone 920 can also store the received mail data in a storage medium by the recording / playback unit 929.
  • the storage medium is any rewritable storage medium.
  • the storage medium is a removable medium such as a semiconductor memory such as a RAM or a built-in flash memory, a hard disk, a magnetic disk, a magneto-optical disk, an optical disk, a USB memory, or a memory card.
  • the image data generated by the camera unit 926 is supplied to the image processing unit 927.
  • the image processing unit 927 performs encoding processing of image data and generates encoded data.
  • the demultiplexing unit 928 multiplexes the encoded data generated by the image processing unit 927 and the audio data supplied from the audio codec 923 by a predetermined method, and supplies the multiplexed data to the communication unit 922.
  • the communication unit 922 performs modulation processing and frequency conversion processing of multiplexed data, and transmits the obtained transmission signal from the antenna 921.
  • the communication unit 922 performs amplification, frequency conversion processing, demodulation processing, and the like of the reception signal received by the antenna 921, and restores multiplexed data. This multiplexed data is supplied to the demultiplexing unit 928.
  • the demultiplexing unit 928 performs demultiplexing of the multiplexed data, and supplies the encoded data to the image processing unit 927 and the audio data to the audio codec 923.
  • the image processing unit 927 performs a decoding process on the encoded data to generate image data.
  • the image data is supplied to the display unit 930 and the received image is displayed.
  • the audio codec 923 converts the audio data into an analog audio signal, supplies the analog audio signal to the speaker 924, and outputs the received audio.
  • the image processing unit 927 is provided with the functions of the encoding device and the decoding device (encoding method and decoding method) of the present application. For this reason, the encoding efficiency of a parallax image can be improved using the information regarding a parallax image. Also, it is possible to decode encoded data of a parallax image whose encoding efficiency has been improved by encoding using information related to the parallax image.
  • FIG. 44 illustrates a schematic configuration of a recording / reproducing apparatus to which the present technology is applied.
  • the recording / reproducing apparatus 940 records, for example, audio data and video data of a received broadcast program on a recording medium, and provides the recorded data to the user at a timing according to a user instruction.
  • the recording / reproducing device 940 can also acquire audio data and video data from another device, for example, and record them on a recording medium. Further, the recording / reproducing apparatus 940 decodes and outputs the audio data and video data recorded on the recording medium, thereby enabling image display and audio output on the monitor apparatus or the like.
  • the recording / reproducing apparatus 940 includes a tuner 941, an external interface unit 942, an encoder 943, an HDD (Hard Disk Drive) unit 944, a disk drive 945, a selector 946, a decoder 947, an OSD (On-Screen Display) unit 948, a control unit 949, A user interface unit 950 is included.
  • Tuner 941 selects a desired channel from a broadcast signal received by an antenna (not shown).
  • the tuner 941 outputs an encoded bit stream obtained by demodulating the received signal of a desired channel to the selector 946.
  • the external interface unit 942 includes at least one of an IEEE 1394 interface, a network interface unit, a USB interface, a flash memory interface, and the like.
  • the external interface unit 942 is an interface for connecting to an external device, a network, a memory card, and the like, and receives data such as video data and audio data to be recorded.
  • the encoder 943 performs encoding by a predetermined method when the video data and audio data supplied from the external interface unit 942 are not encoded, and outputs an encoded bit stream to the selector 946.
  • the HDD unit 944 records content data such as video and audio, various programs, and other data on a built-in hard disk, and reads them from the hard disk during playback.
  • the disk drive 945 records and reproduces signals with respect to the mounted optical disk.
  • An optical disk such as a DVD disk (DVD-Video, DVD-RAM, DVD-R, DVD-RW, DVD + R, DVD + RW, etc.), Blu-ray disk, or the like.
  • the selector 946 selects one of the encoded bit streams from the tuner 941 or the encoder 943 and supplies it to either the HDD unit 944 or the disk drive 945 when recording video or audio. Further, the selector 946 supplies the encoded bit stream output from the HDD unit 944 or the disk drive 945 to the decoder 947 at the time of reproduction of video and audio.
  • the decoder 947 performs a decoding process on the encoded bit stream.
  • the decoder 947 supplies the video data generated by performing the decoding process to the OSD unit 948.
  • the decoder 947 outputs audio data generated by performing the decoding process.
  • the OSD unit 948 generates video data for displaying a menu screen for selecting an item and the like, and superimposes it on the video data output from the decoder 947 and outputs the video data.
  • a user interface unit 950 is connected to the control unit 949.
  • the user interface unit 950 includes an operation switch, a remote control signal receiving unit, and the like, and supplies an operation signal corresponding to a user operation to the control unit 949.
  • the control unit 949 is configured using a CPU, a memory, and the like.
  • the memory stores programs executed by the CPU and various data necessary for the CPU to perform processing.
  • the program stored in the memory is read and executed by the CPU at a predetermined timing such as when the recording / reproducing apparatus 940 is activated.
  • the CPU executes the program to control each unit so that the recording / reproducing device 940 operates according to the user operation.
  • the decoder 947 is provided with the function of the decoding apparatus (decoding method) of the present application. For this reason, it is possible to decode the encoded data of the parallax image whose encoding efficiency has been improved by encoding using information related to the parallax image.
  • FIG. 45 illustrates a schematic configuration of an imaging apparatus to which the present technology is applied.
  • the imaging device 960 images a subject, displays an image of the subject on a display unit, and records it on a recording medium as image data.
  • the imaging device 960 includes an optical block 961, an imaging unit 962, a camera signal processing unit 963, an image data processing unit 964, a display unit 965, an external interface unit 966, a memory unit 967, a media drive 968, an OSD unit 969, and a control unit 970. Have. In addition, a user interface unit 971 is connected to the control unit 970. Furthermore, the image data processing unit 964, the external interface unit 966, the memory unit 967, the media drive 968, the OSD unit 969, the control unit 970, and the like are connected via a bus 972.
  • the optical block 961 is configured using a focus lens, a diaphragm mechanism, and the like.
  • the optical block 961 forms an optical image of the subject on the imaging surface of the imaging unit 962.
  • the imaging unit 962 is configured using a CCD or CMOS image sensor, generates an electrical signal corresponding to the optical image by photoelectric conversion, and supplies the electrical signal to the camera signal processing unit 963.
  • the camera signal processing unit 963 performs various camera signal processing such as knee correction, gamma correction, and color correction on the electrical signal supplied from the imaging unit 962.
  • the camera signal processing unit 963 supplies the image data after the camera signal processing to the image data processing unit 964.
  • the image data processing unit 964 performs an encoding process on the image data supplied from the camera signal processing unit 963.
  • the image data processing unit 964 supplies the encoded data generated by performing the encoding process to the external interface unit 966 and the media drive 968. Further, the image data processing unit 964 performs a decoding process on the encoded data supplied from the external interface unit 966 and the media drive 968.
  • the image data processing unit 964 supplies the image data generated by performing the decoding process to the display unit 965. Further, the image data processing unit 964 superimposes the processing for supplying the image data supplied from the camera signal processing unit 963 to the display unit 965 and the display data acquired from the OSD unit 969 on the image data. To supply.
  • the OSD unit 969 generates display data such as a menu screen and icons made up of symbols, characters, or figures and outputs them to the image data processing unit 964.
  • the external interface unit 966 includes, for example, a USB input / output terminal, and is connected to a printer 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 appropriately mounted, and a computer program read from them is installed as necessary.
  • the external interface unit 966 has a network interface connected to a predetermined network such as a LAN or the Internet.
  • the control unit 970 reads the encoded data from the memory unit 967 in accordance with an instruction from the user interface unit 971, and supplies the encoded data to the other device connected via the network from the external interface unit 966. it can.
  • the control unit 970 may acquire encoded data and image data supplied from another device via the network via the external interface unit 966 and supply the acquired data to the image data processing unit 964. it can.
  • any readable / writable removable medium such as a magnetic disk, a magneto-optical disk, an optical disk, or a semiconductor memory is used.
  • the recording medium may be any type of removable medium, and may be a tape device, a disk, or a memory card. Of course, a non-contact IC card or the like may be used.
  • media drive 968 and the recording medium may be integrated and configured by a non-portable storage medium such as a built-in hard disk drive or an SSD (Solid State Drive).
  • a non-portable storage medium such as a built-in hard disk drive or an SSD (Solid State Drive).
  • the control unit 970 is configured using a CPU, a memory, and the like.
  • the memory stores programs executed by the CPU, various data necessary for the CPU to perform processing, and the like.
  • the program stored in the memory is read and executed by the CPU at a predetermined timing such as when the imaging device 960 is activated.
  • the CPU executes the program to control each unit so that the imaging device 960 operates according to the user operation.
  • the image data processing unit 964 is provided with the functions of the encoding apparatus and decoding apparatus (encoding method and decoding method) of the present application. For this reason, the encoding efficiency of a parallax image can be improved using the information regarding a parallax image. Also, it is possible to decode encoded data of a parallax image whose encoding efficiency has been improved by encoding using information related to the parallax image.
  • Embodiments of the present technology are not limited to the above-described embodiments, and various modifications can be made without departing from the gist of the present technology.
  • the depth weight coefficient and the depth A depth motion prediction unit that performs depth weighting prediction processing using an offset;
  • a motion prediction unit that generates a depth prediction image by performing a weighted prediction process using a weighting coefficient and an offset after performing the depth weighted prediction process by the depth motion prediction unit;
  • An image processing apparatus comprising: an encoding unit that encodes a depth image to be encoded using the depth prediction image generated by the motion prediction unit to generate a depth stream.
  • the depth weighted prediction process is performed based on the disparity range indicating the range of the parallax value, which is used when the depth weighted prediction process is performed based on the depth range or when the parallax value as a pixel value of the depth image is normalized
  • a setting unit for setting depth identification data for identifying whether processing has been performed The image processing apparatus according to (1), further including: a transmission unit configured to transmit the depth stream generated by the encoding unit and the depth identification data set by the setting unit.
  • the image processing according to (1) or (2) further including: a control unit that selects whether to perform the depth weighted prediction process by the depth motion prediction unit according to a picture type at the time of encoding the depth image. apparatus.
  • the said control part controls the said depth motion estimation part so that the said depth weighting prediction process by the said depth motion estimation part may be skipped, when encoding the said depth image as a B picture.
  • Processing equipment. (5) The image according to any one of (1) to (4), further including: a control unit that selects whether to perform the weighted prediction processing by the motion prediction unit according to a picture type at the time of encoding the depth image. Processing equipment.
  • the image processing device Based on the depth range indicating the range of the position in the depth direction, which is used when normalizing the depth value representing the position in the depth direction as the pixel value of the depth image for the depth image, the depth weight coefficient and the depth A depth motion prediction step for performing depth weighting prediction processing using an offset; A motion prediction step of generating a depth prediction image by performing a weighted prediction process using a weighting factor and an offset after performing the depth weighted prediction process by the process of the depth motion prediction step; An image processing method comprising: an encoding step of generating a depth stream by encoding a depth image to be encoded using the depth prediction image generated by the process of the motion prediction step.
  • a receiving unit that receives a depth stream encoded using a predicted image of the depth image corrected using information about the depth image, and information about the depth image;
  • a depth range indicating a range of the position in the depth direction used when normalizing a depth value indicating a position in the depth direction as a pixel value of the depth image using the information regarding the depth image received by the receiving unit
  • a depth motion coefficient calculation unit that calculates a depth weighting factor and a depth offset based on the depth image, and performs a depth weighting prediction process using the depth weighting factor and the depth offset for the depth image.
  • a motion prediction unit that generates a depth prediction image by performing a weighted prediction process using a weighting coefficient and an offset after performing the depth weighted prediction process by the depth motion prediction unit;
  • An image processing apparatus comprising: a decoding unit that decodes the depth stream received by the receiving unit using the depth prediction image generated by the motion prediction unit.
  • the reception unit has performed the depth weighting prediction process based on the depth range at the time of encoding, or a disparity range indicating the range of the parallax value used when normalizing a parallax value as a pixel value of the depth image
  • the said control part controls the said depth motion estimation part so that the said depth weighting prediction process by the said depth motion estimation part may be skipped, when decoding the said depth stream as B picture.
  • the image process as described in said (9) Device (11) The image processing according to any one of (7) to (10), further including: a control unit that selects whether to perform the weighted prediction processing by the motion prediction unit according to a picture type at the time of decoding the depth stream.
  • the image processing device Receiving a depth stream encoded using a predicted image of the depth image corrected using information about the depth image, and information about the depth image; The range of the position in the depth direction used when normalizing the depth value indicating the position in the depth direction as the pixel value of the depth image using the information regarding the depth image received by the processing of the receiving step is shown.
  • a depth motion prediction unit for processing A motion prediction unit that generates a depth prediction image by performing a weighted prediction process using a weighting coefficient and an offset after performing the depth weighted prediction process by the depth motion prediction unit;
  • An image processing apparatus comprising: an encoding unit that encodes a depth image to be encoded using the depth prediction image generated by the motion prediction unit to generate a depth stream.
  • the depth motion prediction unit is a depth range indicating a range of the position in the depth direction used when normalizing a depth value indicating a position in the depth direction as a pixel value of the depth image for the depth image.
  • the image processing apparatus wherein the depth weighted prediction process is performed based on the image processing apparatus.
  • the control unit changes the depth weighted prediction process depending on whether the depth image type is a type using the depth value as a pixel value or a type using the disparity as a pixel value.
  • the image processing apparatus according to (14).
  • (16) The image processing device according to any one of (13) to (15), further including a control unit that controls the motion prediction unit so that the weighted prediction process is performed or skipped.
  • the image processing device Depth weighting prediction using a depth weighting factor and a depth offset based on a disparity range indicating the disparity range used when normalizing disparity as a pixel value of the depth image for a depth image.
  • a depth motion prediction step for processing A motion prediction step of generating a depth prediction image by performing a weighted prediction process using a weighting factor and an offset after performing the depth weighted prediction process by the process of the depth motion prediction step;
  • An image processing method comprising: an encoding step of generating a depth stream by encoding a depth image to be encoded using the depth prediction image generated by the process of the motion prediction step.
  • a receiving unit that receives a depth stream encoded using a predicted image of the depth image corrected using information about the depth image, and information about the depth image;
  • a depth weight coefficient based on a disparity range indicating a range of the disparity used when normalizing a disparity as a pixel value of the depth image using the information regarding the depth image received by the receiving unit and a depth
  • a depth motion prediction unit that calculates an offset and performs a depth weighting prediction process using the depth weight coefficient and the depth offset for the depth image;
  • a motion prediction unit that generates a depth prediction image by performing a weighted prediction process using a weighting coefficient and an offset after performing the depth weighted prediction process by the depth motion prediction unit;
  • An image processing apparatus comprising: a decoding unit that decodes the depth stream received by the receiving unit using the depth prediction image generated by the motion prediction unit.
  • the image processing device Receiving a depth stream encoded using a predicted image of the depth image corrected using information about the depth image, and information about the depth image; A depth weight coefficient based on a disparity range indicating a range of the disparity used when normalizing a disparity as a pixel value of the depth image by using information on the depth image received by the processing of the receiving step. And a depth motion prediction step for performing a depth weighting prediction process using the depth weighting coefficient and the depth offset for the depth image.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)

Abstract

本技術は、視差画像に関する情報を用いて視差画像の符号化効率を改善することができるようにする画像処理装置および画像処理方法に関する。 デプス用補正部は、デプス画像を対象として、デプス画像の画素値としての奥行き方向の位置を表す奥行き値を正規化する際に用いる、奥行き方向の位置のレンジを示す奥行きレンジに基づいて、デプス重み係数とデプスオフセットを用いたデプス重み付け予測処理を行う。輝度用補正部は、デプス重み付け予測処理を行った後に、重み係数とオフセットを用いた重み付け予測処理を行ってデプス予測画像を生成する。符号化対象のデプス画像は、デプス予測画像を用いて符号化され、デプスストリームが生成される。本技術は、例えば、デプス画像の符号化装置に適用することができる。

Description

画像処理装置および画像処理方法
 本技術は、画像処理装置および画像処理方法に関し、特に、視差画像に関する情報を用いて視差画像の符号化効率を改善することができるようにした画像処理装置および画像処理方法に関する。
 近年、3D画像が注目されており、多視点の3D画像の生成に用いられる視差画像の符号化方法が提案されている(例えば、非特許文献1参照)。なお、視差画像とは、その視差画像に対応する視点のカラー画像の各画素と、その画素に対応する、基点となる視点のカラー画像の画素の画面上の位置の水平方向の距離を表す視差値からなる画像である。
 また、現在、AVC(Advanced Video Coding)方式より更なる符号化効率の向上を目的として、HEVC(High Efficiency Video Coding)と呼ばれる符号化方式の標準化が進められており、2011年8月現在、Draftとして、非特許文献2が発行されている。
"Call for Proposals on 3D Video Coding Technology",ISO/IEC JTC1/SC29/WG11,MPEG2011/N12036,Geneva,Switzerland,March 2011 Thomas Wiegand,Woo-jin Han,Benjamin Bross,Jens-Rainer Ohm,GaryJ.Sullivian,"WD3:Working Draft3 of High-Efficiency Video Coding",JCTVC-E603_d5(version5),2011年5月20日
 しかしながら、視差画像に関する情報を用いて視差画像の符号化効率を向上させる符号化方法は考案されていなかった。
 本技術は、このような状況に鑑みてなされたものであり、視差画像に関する情報を用いて視差画像の符号化効率を改善することができるようにするものである。
 本技術の第1の側面の画像処理装置は、デプス画像を対象として、前記デプス画像の画素値としての奥行き方向の位置を表す奥行き値を正規化する際に用いる、前記奥行き方向の位置のレンジを示す奥行きレンジに基づいて、デプス重み係数とデプスオフセットを用いたデプス重み付け予測処理を行うデプス動き予測部と、前記デプス動き予測部による前記デプス重み付け予測処理を行った後に、重み係数とオフセットを用いた重み付け予測処理を行ってデプス予測画像を生成する動き予測部と、前記動き予測部により生成された前記デプス予測画像を用いて、符号化対象のデプス画像を符号化してデプスストリームを生成する符号化部とを備える画像処理装置である。
 本技術の第1の側面の画像処理方法は、本技術の第1の側面の画像処理装置に対応するものである。
 本技術の第1の側面においては、デプス画像を対象として、前記デプス画像の画素値としての奥行き方向の位置を表す奥行き値を正規化する際に用いる、前記奥行き方向の位置のレンジを示す奥行きレンジに基づいて、デプス重み係数とデプスオフセットを用いたデプス重み付け予測処理が行われ、前記デプス重み付け予測処理が行われた後に、重み係数とオフセットを用いた重み付け予測処理が行われてデプス予測画像が生成され、前記デプス予測画像を用いて、符号化対象のデプス画像が符号化されてデプスストリームが生成される。
 本技術の第2の側面の画像処理装置は、デプス画像に関する情報を用いて補正された前記デプス画像の予測画像を用いて符号化されたデプスストリームと、前記デプス画像に関する情報とを受け取る受け取り部と、前記受け取り部により受け取られた前記デプス画像に関する情報を用いて、前記デプス画像の画素値としての奥行き方向の位置を示す奥行き値を正規化する際に用いる前記奥行き方向の位置のレンジを示す奥行きレンジに基づくデプス重み係数とデプスオフセットを算出し、前記デプス画像を対象として前記デプス重み係数と前記デプスオフセットを用いたデプス重み付け予測処理を行うデプス動き予測部と、前記デプス動き予測部による前記デプス重み付け予測処理を行った後に、重み係数とオフセットを用いた重み付け予測処理を行ってデプス予測画像を生成する動き予測部と、前記動き予測部により生成された前記デプス予測画像を用いて、前記受け取り部により受け取られた前記デプスストリームを復号する復号部とを備える画像処理装置である。
 本技術の第2の側面の画像処理方法は、本技術の第2の側面の画像処理装置に対応するものである。
 本技術の第2の側面においては、デプス画像に関する情報を用いて補正された前記デプス画像の予測画像を用いて符号化されたデプスストリームと、前記デプス画像に関する情報とが受け取られ、受け取られた前記デプス画像に関する情報を用いて、前記デプス画像の画素値としての奥行き方向の位置を示す奥行き値を正規化する際に用いる前記奥行き方向の位置のレンジを示す奥行きレンジに基づくデプス重み係数とデプスオフセットが算出され、前記デプス画像を対象として前記デプス重み係数と前記デプスオフセットを用いたデプス重み付け予測処理が行われ、前記デプス重み付け予測処理が行われた後に、重み係数とオフセットを用いた重み付け予測処理が行われてデプス予測画像が生成され、生成された前記デプス予測画像を用いて、前記デプスストリームが復号される。
 本技術の第3の側面の画像処理装置は、デプス画像を対象として、前記デプス画像の画素値としてのディスパリティを正規化する際に用いる、前記ディスパリティのレンジを示すディスパリティレンジに基づいて、デプス重み係数とデプスオフセットを用いたデプス重み付け予測処理を行うデプス動き予測部と、前記デプス動き予測部による前記デプス重み付け予測処理を行った後に、重み係数とオフセットを用いた重み付け予測処理を行ってデプス予測画像を生成する動き予測部と、前記動き予測部により生成された前記デプス予測画像を用いて、符号化対象のデプス画像を符号化してデプスストリームを生成する符号化部とを備える画像処理装置である。
 本技術の第3の側面の画像処理方法は、本技術の第3の側面の画像処理装置に対応するものである。
 本技術の第3の側面においては、デプス画像を対象として、前記デプス画像の画素値としてのディスパリティを正規化する際に用いる、前記ディスパリティのレンジを示すディスパリティレンジに基づいて、デプス重み係数とデプスオフセットを用いたデプス重み付け予測処理が行われ、前記デプス重み付け予測処理が行われた後に、重み係数とオフセットを用いた重み付け予測処理が行われてデプス予測画像が生成され、生成された前記デプス予測画像を用いて、符号化対象のデプス画像が符号化されてデプスストリームが生成される。
 本技術の第4の側面の画像処理装置は、デプス画像に関する情報を用いて補正された前記デプス画像の予測画像を用いて符号化されたデプスストリームと、前記デプス画像に関する情報とを受け取る受け取り部と、前記受け取り部により受け取られた前記デプス画像に関する情報を用いて、前記デプス画像の画素値としてのディスパリティを正規化する際に用いる前記ディスパリティのレンジを示すディスパリティレンジに基づくデプス重み係数とデプスオフセットを算出し、前記デプス画像を対象として前記デプス重み係数と前記デプスオフセットを用いたデプス重み付け予測処理を行うデプス動き予測部と、前記デプス動き予測部による前記デプス重み付け予測処理を行った後に、重み係数とオフセットを用いた重み付け予測処理を行ってデプス予測画像を生成する動き予測部と、前記動き予測部により生成された前記デプス予測画像を用いて、前記受け取り部により受け取られた前記デプスストリームを復号する復号部とを備える画像処理装置である。
 本技術の第4の側面の画像処理方法は、本技術の第4の側面の画像処理装置に対応するものである。
 本技術の第4の側面においては、デプス画像に関する情報を用いて補正された前記デプス画像の予測画像を用いて符号化されたデプスストリームと、前記デプス画像に関する情報とが受け取られ、受け取られた前記デプス画像に関する情報を用いて、前記デプス画像の画素値としてのディスパリティを正規化する際に用いる前記ディスパリティのレンジを示すディスパリティレンジに基づくデプス重み係数とデプスオフセットが算出され、前記デプス画像を対象として前記デプス重み係数と前記デプスオフセットを用いたデプス重み付け予測処理が行われ、前記デプス重み付け予測処理を行った後に、重み係数とオフセットを用いた重み付け予測処理が行われてデプス予測画像が生成され、生成された前記デプス予測画像を用いて、受け取られた前記デプスストリームが復号される。
 本技術の第1および第3の側面によれば、視差画像に関する情報を用いて視差画像の符号化効率を改善することができる。
 また、本技術の第2および第4の側面によれば、視差画像に関する情報を用いて符号化することにより符号化効率が改善された視差画像の符号化データを復号することができる。
本技術を適用した符号化装置の一実施の形態の構成例を示すブロック図である。 視点生成用情報の視差最大値と視差最小値を説明する図である。 視点生成用情報の視差精度パラメータを説明する図である。 視点生成用情報のカメラ間距離を説明する図である。 図1の多視点画像符号化部の構成例を示すブロック図である。 符号化部の構成例を示すブロック図である。 符号化ビットストリームの構成例を示す図である。 図7のPPSのシンタックスの例を示す図である。 スライスヘッダのシンタックスの例を示す図である。 スライスヘッダのシンタックスの例を示す図である。 図1の符号化装置の符号化処理を説明するフローチャートである。 図11の多視点符号化処理の詳細を説明するフローチャートである。 図12の視差画像符号化処理の詳細を説明するフローチャートである。 図12の視差画像符号化処理の詳細を説明するフローチャートである。 本技術を適用した復号装置の一実施の形態の構成例を示すブロック図である。 図15の多視点画像復号部の構成例を示すブロック図である。 復号部の構成例を示すブロック図である。 図15の復号装置150の復号処理を説明するフローチャートである。 図18の多視点復号処理の詳細を説明するフローチャートである。 図16の視差画像復号処理の詳細を説明するフローチャートである。 予測画像の補正に用いられる情報の伝送方法を説明する図である。 第2の伝送方法における符号化ビットストリームの構成例を示す図である。 第3の伝送方法における符号化ビットストリームの構成例を示す図である。 スライス符号化部の構成例を示すブロック図である。 符号化部の構成例を示すブロック図である。 補正部の構成例を示すブロック図である。 視差値と奥行き方向の位置について説明するための図である。 撮像される物体の位置関係の一例を示す図である。 奥行き方向の位置の最大と最小の関係を説明する図である。 撮像される物体の位置関係と輝度について説明するための図である。 撮像される物体の位置関係と輝度について説明するための図である。 撮像される物体の位置関係と輝度について説明するための図である。 視差画像符号化処理の詳細を説明するフローチャートである。 視差画像符号化処理の詳細を説明するフローチャートである。 予測画像生成処理について説明するためのフローチャートである。 スライス復号部の構成例を示すブロック図である。 復号部の構成例を示すブロック図である。 補正部の構成例を示すブロック図である。 視差画像復号処理の詳細を説明するフローチャートである。 予測画像生成処理について説明するためのフローチャートである。 コンピュータの一実施の形態の構成例を示す図である。 本技術を適用したテレビジョン装置の概略構成例を示す図である。 本技術を適用した携帯電話機の概略構成例を示す図である。 本技術を適用した記録再生装置の概略構成例を示す図である。 本技術を適用した撮像装置の概略構成例を示す図である。
 <一実施の形態>
 [符号化装置の一実施の形態の構成例]
 図1は、本技術を適用した符号化装置の一実施の形態の構成例を示すブロック図である。
 図1の符号化装置50は、多視点カラー画像撮像部51、多視点カラー画像補正部52、多視点視差画像補正部53、視点生成用情報生成部54、および多視点画像符号化部55により構成される。
 符号化装置50は、所定の視点の視差画像を、視差画像に関する情報を用いて符号化する。
 具体的には、符号化装置50の多視点カラー画像撮像部51は、多視点のカラー画像を撮像し、多視点カラー画像として多視点カラー画像補正部52に供給する。また、多視点カラー画像撮像部51は、外部パラメータ、視差最大値、および視差最小値(詳細は後述する)を生成する。多視点カラー画像撮像部51は、外部パラメータ、視差最大値、および視差最小値を視点生成用情報生成部54に供給するとともに、視差最大値と視差最小値を多視点視差画像生成部53に供給する。
 なお、外部パラメータは、多視点カラー画像撮像部51の水平方向の位置を定義するパラメータである。また、視差最大値と視差最小値は、それぞれ、多視点視差画像においてとり得る世界座標上の視差値の最大値、最小値である。
 多視点カラー画像補正部52は、多視点カラー画像撮像部51から供給される多視点カラー画像に対して、色補正、輝度補正、歪み補正等を行う。これにより、補正後の多視点カラー画像における多視点カラー画像撮像部51の水平方向(X方向)の焦点距離は、全視点で共通となる。多視点カラー画像補正部52は、補正後の多視点カラー画像を多視点補正カラー画像として多視点視差画像生成部53と多視点画像符号化部55に供給する。
 多視点視差画像生成部53は、多視点カラー画像撮像部51から供給される視差最大値と視差最小値に基づいて、多視点カラー画像補正部52から供給される多視点補正カラー画像から、多視点の視差画像を生成する。具体的には、多視点視差画像生成部53は、多視点の各視点について、多視点補正カラー画像から各画素の視差値を求め、その視差値を視差最大値と視差最小値に基づいて正規化する。そして、多視点視差画像生成部53は、多視点の各視点について、正規化された各画素の視差値を視差画像の各画素の画素値とする視差画像を生成する。
 また、多視点視差画像生成部53は、生成された多視点の視差画像を多視点視差画像として多視点画像符号化部55に供給する。さらに、多視点視差画像生成部53は、多視点視差画像の画素値の精度を表す視差精度パラメータを生成し、視点生成用情報生成部54に供給する。
 視点生成用情報生成部54は、多視点の補正カラー画像と視差画像を用いて、その多視点以外の視点のカラー画像を生成する際に用いられる視点生成用情報を生成する。具体的には、視点生成用情報生成部54は、多視点カラー画像撮像部51から供給される外部パラメータに基づいて、カメラ間距離を求める。カメラ間距離とは、多視点視差画像の視点ごとに、その視点のカラー画像を撮像するときの多視点カラー画像撮像部51の水平方向の位置と、そのカラー画像と視差画像に対応する視差を有するカラー画像を撮像するときの多視点カラー画像撮像部51の水平方向の位置の距離である。
 視点生成用情報生成部54は、多視点カラー画像撮像部51からの視差最大値と視差最小値、カメラ間距離、および多視点視差画像生成部53からの視差精度パラメータを視点生成用情報とする。視点生成用情報生成部54は、生成された視点生成用情報を多視点画像符号化部55に供給する。
 多視点画像符号化部55は、多視点カラー画像補正部52から供給される多視点補正カラー画像をHEVC方式で符号化する。また、多視点画像符号化部55は、視点生成用情報生成部54から供給される視点生成用情報のうちの視差最大値、視差最小値、およびカメラ間距離を視差に関する情報として用いて、多視点視差画像生成部53から供給される多視点視差画像を、HEVC方式に準じた方式で符号化する。
 また、多視点画像符号化部55は、視点生成用情報生成部54から供給される視点生成用情報のうちの視差最大値、視差最小値、およびカメラ間距離を差分符号化し、多視点視差画像を符号化する際に用いる符号化に関する情報(符号化パラメータ)に含める。そして、多視点画像符号化部55は、符号化された多視点補正カラー画像および多視点視差画像、差分符号化された視差最大値、視差最小値、およびカメラ間距離を含む符号化に関する情報、視点生成用情報生成部54からの視差精度パラメータ等からなるビットストリームを、符号化ビットストリームとして伝送する。
 以上のように、多視点画像符号化部55は、視差最大値、視差最小値、およびカメラ間距離を差分符号化して伝送するので、視点生成用情報の符号量を削減することができる。快適な3D画像を提供するために、視差最大値、視差最小値、およびカメラ間距離はピクチャ間で大きく変化させない可能性が高いため、差分符号化を行うことは符号量の削減において有効である。
 なお、符号化装置50では、多視点視差画像が、多視点補正カラー画像から生成されたが、多視点カラー画像の撮像時に、視差値を検出するセンサにより生成されてもよい。
 [視点生成用情報の説明]
 図2は、視点生成用情報の視差最大値と視差最小値を説明する図である。
 なお、図2において、横軸は、正規化前の視差値であり、縦軸は、視差画像の画素値である。
 図2に示すように、多視点視差画像生成部53は、各画素の視差値を、視差最小値Dminと視差最大値Dmaxを用いて、例えば0乃至255の値に正規化する。そして、多視点視差画像生成部53は、0乃至255のいずれかの値である正規化後の各画素の視差値を画素値として、視差画像を生成する。
 即ち、視差画像の各画素の画素値Iは、その画素の正規化前の視差値d、視差最小値Dmin、および視差最大値Dmaxは、以下の式(1)で表される。
Figure JPOXMLDOC01-appb-M000001
 従って、後述する復号装置では、以下の式(2)により、視差画像の各画素の画素値Iから、視差最小値Dminと視差最大値Dmaxを用いて、正規化前の視差値dを復元する必要がある。
Figure JPOXMLDOC01-appb-M000002
 よって、視差最小値Dminと視差最大値Dmaxが、復号装置に伝送される。
 図3は、視点生成用情報の視差精度パラメータを説明する図である。
 図3の上段に示すように、正規化後の視差値1当たりの正規化前の視差値が0.5である場合、視差精度パラメータは、視差値の精度0.5を表すものとなる。また、図3の下段に示すように、正規化後の視差値1当たりの正規化前の視差値が1である場合、視差精度パラメータは、視差値の精度1.0を表すものとなる。
 図3の例では、1番目の視点である視点#1の正規化前の視差値が1.0であり、2番目の視点である視点#2の正規化前の視差値が0.5である。従って、視点#1の正規化後の視差値は、視差値の精度が0.5であっても1.0であっても、1.0である。一方、視点#2の視差値は、視差値の精度が0.5である場合0.5であり、視差値の精度が1.0である場合0である。
 図4は、視点生成用情報のカメラ間距離を説明する図である。
 図4に示すように、視点#1の、視点#2を基点とする視差画像のカメラ間距離は、視点#1の外部パラメータが表す位置と、視点#2の外部パラメータが表す位置の距離である。
 [多視点画像符号化部の構成例]
 図5は、図1の多視点画像符号化部55の構成例を示すブロック図である。
 図5の多視点画像符号化部55は、スライス符号化部61、スライスヘッダ符号化部62、PPS符号化部63、およびSPS符号化部64により構成される。
 多視点画像符号化部55のスライス符号化部61は、多視点カラー画像補正部52から供給される多視点補正カラー画像に対して、HEVC方式でスライス単位の符号化を行う。また、スライス符号化部61は、図1の視点生成用情報生成部54から供給される視点生成用情報のうちの視差最大値、視差最小値、およびカメラ間距離を視差に関する情報として用いて、多視点視差画像生成部53からの多視点視差画像に対して、HEVC方式に準じた方式でスライス単位の符号化を行う。スライス符号化部61は、符号化の結果得られるスライス単位の符号化データ等をスライスヘッダ符号化部62に供給する。
 スライスヘッダ符号化部62は、視点生成用情報生成部54から供給される視点生成用情報のうちの視差最大値、視差最小値、およびカメラ間距離を、現在の処理対象のスライスの視差最大値、視差最小値、およびカメラ間距離とし、保持する。
 また、スライスヘッダ符号化部62は、現在の処理対象のスライスの視差最大値、視差最小値、およびカメラ間距離が、それぞれ、そのスライスより符号化順で1つ前のスライスの視差最大値、視差最小値、およびカメラ間距離と一致するかどうかを、同一のPPSが付加される単位(以下では、同一PPS単位という)で判定する。
 そして、同一PPS単位を構成する全てのスライスの視差最大値、視差最小値、およびカメラ間距離が、符号化順で1つ前のスライスの視差最大値、視差最小値、およびカメラ間距離と一致すると判定された場合、スライスヘッダ符号化部62は、その同一PPS単位を構成する各スライスの符号化データのスライスヘッダとして、そのスライスの視差最大値、視差最小値、およびカメラ間距離以外の符号化に関する情報を付加し、PPS符号化部63に供給する。また、スライスヘッダ符号化部62は、視差最大値、視差最小値、およびカメラ間距離の差分符号化結果の伝送の無しを表す伝送フラグをPPS符号化部63に供給する。
 一方、同一PPS単位を構成する少なくとも1つのスライスの視差最大値、視差最小値、およびカメラ間距離が、符号化順で1つ前のスライスの視差最大値、視差最小値、およびカメラ間距離と一致しないと判定された場合、スライスヘッダ符号化部62は、イントラタイプのスライスの符号化データには、スライスヘッダとして、そのスライスの視差最大値、視差最小値、およびカメラ間距離を含む符号化に関する情報を付加し、PPS符号化部63に供給する。
 また、スライスヘッダ符号化部62は、インタータイプのスライスについては、そのスライスの視差最大値、視差最小値、およびカメラ間距離を差分符号化する。具体的には、スライスヘッダ符号化部62は、インタータイプのスライスの視差最大値、視差最小値、およびカメラ間距離から、そのスライスより符号化順で1つ前のスライスの視差最大値、視差最小値、およびカメラ間距離を、それぞれ減算し、差分符号化結果とする。そして、スライスヘッダ符号化部62は、インタータイプのスライスの符号化データに、スライスヘッダとして視差最大値、視差最小値、およびカメラ間距離の差分符号化結果を含む符号化に関する情報を付加し、PPS符号化部63に供給する。
 また、この場合、スライスヘッダ符号化部62は、視差最大値、視差最小値、およびカメラ間距離の差分符号化結果の伝送の有りを表す伝送フラグをPPS符号化部63に供給する。
 PPS符号化部63は、スライスヘッダ符号化部62から供給される伝送フラグと、図1の視点生成用情報生成部54から供給される視点生成用情報のうちの視差精度パラメータとを含むPPSを生成する。PPS符号化部63は、同一PPS単位で、スライスヘッダ符号化部62から供給されるスライスヘッダが付加されたスライス単位の符号化データにPPSを付加し、SPS符号化部64に供給する。
 SPS符号化部64は、SPSを生成する。そして、SPS符号化部64は、シーケンス単位で、PPS符号化部63から供給されるPPSが付加された符号化データにSPSを付加する。SPS符号化部64は、伝送部として機能し、その結果得られるビットストリームを符号化ビットストリームとして伝送する。
 [スライス符号化部の構成例]
 図6は、図5のスライス符号化部61のうちの任意の1視点の視差画像を符号化する符号化部の構成例を示すブロック図である。即ち、スライス符号化部61のうちの多視点視差画像を符号化する符号化部は、視点数分の図6の符号化部120により構成される。
 図6の符号化部120は、A/D変換部121、画面並べ替えバッファ122、演算部123、直交変換部124、量子化部125、可逆符号化部126、蓄積バッファ127、逆量子化部128、逆直交変換部129、加算部130、デブロックフィルタ131、フレームメモリ132、画面内予測部133、動き予測・補償部134、補正部135、選択部136、およびレート制御部137により構成される。
 符号化部120のA/D変換部121は、図1の多視点視差画像生成部53から供給される所定の視点のフレーム単位の多重化画像をA/D変換し、画面並べ替えバッファ122に出力して記憶させる。画面並べ替えバッファ122は、記憶した表示の順番のフレーム単位の視差画像を、GOP(Group of Picture)構造に応じて、符号化のための順番に並べ替え、演算部123、画面内予測部133、および動き予測・補償部134に出力する。
 演算部123は、符号化部として機能し、選択部136から供給される予測画像と、画面並べ替えバッファ122から出力された符号化対象の視差画像の差分を演算することにより、符号化対象の視差画像を符号化する。具体的には、演算部123は、画面並べ替えバッファ122から出力された符号化対象の視差画像から、選択部136から供給される予測画像を減算する。演算部123は、減算の結果得られる画像を、残差情報として直交変換部124に出力する。なお、選択部136から予測画像が供給されない場合、演算部123は、画面並べ替えバッファ122から読み出された視差画像をそのまま残差情報として直交変換部124に出力する。
 直交変換部124は、演算部123からの残差情報に対して離散コサイン変換、カルーネン・レーベ変換等の直交変換を施し、その結果得られる係数を量子化部125に供給する。
 量子化部125は、直交変換部124から供給される係数を量子化する。量子化された係数は、可逆符号化部126に入力される。
 可逆符号化部126は、量子化部125から供給される量子化された係数に対して、可変長符号化(例えば、CAVLC(Context-Adaptive Variable Length Coding)など)、算術符号化(例えば、CABAC(Context-Adaptive Binary Arithmetic Coding)など)などの可逆符号化を行う。可逆符号化部126は、可逆符号化の結果得られる符号化データを蓄積バッファ127に供給し、蓄積させる。
 蓄積バッファ127は、可逆符号化部126から供給される符号化データを、一時的に記憶し、スライス単位でスライスヘッダ符号化部62に供給する。
 また、量子化部125より出力された、量子化された係数は、逆量子化部128にも入力され、逆量子化された後、逆直交変換部129に供給される。
 逆直交変換部129は、逆量子化部128から供給される係数に対して、逆離散コサイン変換、逆カルーネン・レーベ変換等の逆直交変換を施し、その結果得られる残差情報を加算部130に供給する。
 加算部130は、逆直交変換部129から供給される復号対象の視差画像としての残差情報と、選択部136から供給される予測画像を加算して、局部的に復号された視差画像を得る。なお、選択部136から予測画像が供給されない場合、加算部130は、逆直交変換部129から供給される残差情報を局部的に復号された視差画像とする。加算部130は、局部的に復号された視差画像をデブロックフィルタ131に供給するとともに、参照画像として画面内予測部133に供給する。
 デブロックフィルタ131は、加算部130から供給される局部的に復号された視差画像をフィルタリングすることにより、ブロック歪を除去する。デブロックフィルタ131は、その結果得られる視差画像をフレームメモリ132に供給し、蓄積させる。フレームメモリ132に蓄積された視差画像は、参照画像として動き予測・補償部134に出力される。
 画面内予測部133は、加算部130から供給された参照画像を用いて、候補となる全てのイントラ予測モードの画面内予測を行い、予測画像を生成する。
 また、画面内予測部133は、候補となる全てのイントラ予測モードに対してコスト関数値(詳細は後述する)を算出する。そして、画面内予測部133は、コスト関数値が最小となるイントラ予測モードを最適イントラ予測モードに決定する。画面内予測部133は、最適イントラ予測モードで生成された予測画像、および、対応するコスト関数値を、選択部136に供給する。画面内予測部133は、選択部136から最適イントラ予測モードで生成された予測画像の選択が通知された場合、最適イントラ予測モード等を示す画面内予測情報を図5のスライスヘッダ符号化部62に供給する。この画面内予測情報は、符号化に関する情報としてスライスヘッダに含まれる。
 なお、コスト関数値は、RD(Rate Distortion)コストともいい、例えば、H.264/AVC方式における参照ソフトウェアであるJM(Joint Model)で定められているような、High Complexity モードか、Low Complexity モードのいずれかの手法に基づいて算出される。
 具体的には、コスト関数値の算出手法としてHigh Complexity モードが採用される場合、候補となる全ての予測モードに対して、仮に可逆符号化までが行われ、次の式(3)で表わされるコスト関数値が各予測モードに対して算出される。
 Cost(Mode)=D+λ・R ・・・(3)
 Dは、原画像と復号画像の差分(歪)、Rは、直交変換の係数まで含んだ発生符号量、λは、量子化パラメータQPの関数として与えられるラグランジュ乗数である。
 一方、コスト関数値の算出手法としてLow Complexity モードが採用される場合、候補となる全ての予測モードに対して、復号画像の生成、および、予測モードを示す情報などのヘッダビットの算出が行われ、次の式(4)で表わされるコスト関数が各予測モードに対して算出される。
 Cost(Mode)=D+QPtoQuant(QP)・Header_Bit ・・・(4)
 Dは、原画像と復号画像の差分(歪)、Header_Bitは、予測モードに対するヘッダビット、QPtoQuantは、量子化パラメータQPの関数として与えられる関数である。
 Low Complexity モードにおいては、全ての予測モードに対して、復号画像を生成するだけでよく、可逆符号化を行う必要がないため、演算量が少なくて済む。なお、ここでは、コスト関数値の算出手法としてHigh Complexity モードが採用されるものとする。
 動き予測・補償部134は、画面並べ替えバッファ122から供給される視差画像と、フレームメモリ132から供給される参照画像とに基づいて、候補となる全てのインター予測モードの動き予測処理を行い、動きベクトルを生成する。具体的には、動き予測・補償部134は、インター予測モードごとに、参照画像と、画面並べ替えバッファ122から供給される視差画像のマッチングを行い、動きベクトルを生成する。
 なお、インター予測モードとは、インター予測の対象とするブロックのサイズ、予測方向、および参照インデックスを表す情報である。予測方向には、インター予測の対象とする視差画像よりも表示時刻が早い参照画像を用いた前方向の予測(L0予測)、インター予測の対象とする視差画像よりも表示時刻が遅い参照画像を用いた後方向の予測(L1予測)、およびインター予測の対象とする視差画像よりも表示時刻が早い参照画像と遅い参照画像を用いた両方向の予測(Bi-prediction)がある。また、参照インデックスとは、参照画像を特定するための番号であり、例えば、インター予測の対象とする視差画像に近い画像の参照インデックスほど番号が小さい。
 また、動き予測・補償部134は、予測画像生成部として機能し、インター予測モードごとに、生成された動きベクトルに基づいて、フレームメモリ132から参照画像を読み出すことにより、動き補償処理を行う。動き予測・補償部134は、その結果生成される予測画像を補正部135に供給する。
 補正部135は、図1の視点生成用情報生成部54から供給される視点生成用情報のうちの視差最大値、視差最小値、およびカメラ間距離を視差画像に関する情報として用いて、予測画像を補正する際に用いる補正係数を生成する。補正部135は、動き予測・補償部134から供給される各インター予測モードの予測画像を、補正係数を用いて補正する。
 ここで、符号化対象の視差画像の被写体の奥行方向の位置Zcと予測画像の被写体の奥行方向の位置Zpは、以下の式(5)で表される。
Figure JPOXMLDOC01-appb-M000003
 なお、式(5)において、Lc,Lpは、それぞれ、符号化対象の視差画像のカメラ間距離、予測画像のカメラ間距離である。fは、符号化対象の視差画像と予測画像に共通の焦点距離である。また、dc,dpは、それぞれ、符号化対象の視差画像の正規化前の視差値の絶対値、予測画像の正規化前の視差値の絶対値である。
 また、符号化対象の視差画像の視差値Icと予測画像の視差値Ipは、正規化前の視差値の絶対値dc,dpを用いて、以下の式(6)で表される。
Figure JPOXMLDOC01-appb-M000004
 なお、式(6)において、Dc min,Dp minは、それぞれ、符号化対象の視差画像の視差最小値、予測画像の視差最小値である。Dc max,Dp maxは、それぞれ、符号化対象の視差画像の視差最大値、予測画像の視差最大値である。
 従って、符号化対象の視差画像の被写体の奥行方向の位置Zcと予測画像の被写体の奥行方向の位置Zpが同一であっても、カメラ間距離LcとLp、視差最小値Dc minとDp min、および視差最大値Dc max,Dp maxの少なくとも1つが異なると、視差値Icと視差値Ipは異なってしまう。
 そこで、補正部135は、位置Zcと位置Zpが同一である場合に視差値Icと視差値Ipが同一となるように予測画像を補正する補正係数を生成する。
 具体的には、位置Zcと位置Zpが同一である場合、上述した式(5)より、以下の式(7)が成立する。
Figure JPOXMLDOC01-appb-M000005
 また、式(7)を変形すると、以下の式(8)になる。
Figure JPOXMLDOC01-appb-M000006
 そして、上述した式(6)を用いて、式(8)の正規化前の視差値の絶対値dc,dpを視差値Icと視差値Ipに置換すると、以下の式(9)になる。
Figure JPOXMLDOC01-appb-M000007
 これにより、視差値Icは、視差値Ipを用いて以下の式(10)で表される。
Figure JPOXMLDOC01-appb-M000008
 従って、補正部135は、式(10)のaとbを補正係数として生成する。そして、補正部135は、補正係数a,bと視差値Ipを用いて、式(10)における視差値Icを補正後の予測画像の視差値として求める。
 また、補正部135は、補正後の予測画像を用いて、各インター予測モードに対してコスト関数値を算出し、コスト関数値が最小となるインター予測モードを最適インター測モードに決定する。そして、補正部135は、最適インター予測モードで生成された予測画像とコスト関数値とを選択部136に供給する。
 さらに、補正部135は、選択部136から最適インター予測モードで生成された予測画像の選択が通知された場合、動き情報をスライスヘッダ符号化部62に出力する。この動き情報は、最適インター予測モード、予測ベクトルインデックス、現在の動きベクトルから予測ベクトルインデックスが表す動きベクトルを減算した差分である動きベクトル残差等により構成される。なお、予測ベクトルインデックスとは、復号済みの視差画像の予測画像の生成に用いられた候補となる動きベクトルのうちの1つの動きベクトルを特定する情報である。動き情報は、符号化に関する情報としてスライスヘッダに含まれる。
 選択部136は、画面内予測部133および補正部135から供給されるコスト関数値に基づいて、最適イントラ予測モードと最適インター予測モードのうちのいずれかを、最適予測モードに決定する。そして、選択部136は、最適予測モードの予測画像を、演算部123および加算部130に供給する。また、選択部136は、最適予測モードの予測画像の選択を画面内予測部133または補正部135に通知する。
 レート制御部137は、蓄積バッファ127に蓄積された符号化データに基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部125の量子化動作のレートを制御する。
 [符号化ビットストリームの構成例]
 図7は、符号化ビットストリームの構成例を示す図である。
 なお、図7では、説明の便宜上、多視点視差画像のスライスの符号化データのみを記載しているが、実際には、符号化ビットストリームには、多視点カラー画像のスライスの符号化データも配置される。このことは、後述する図22および図23においても同様である。
 図7の例では、0番目のPPSであるPPS#0の同一PPS単位を構成する1つのイントラタイプのスライスと2つのインタータイプのスライスの視差最大値、視差最小値、およびカメラ間距離が、それぞれ、符号化順で1つ前のスライスの視差最大値、視差最小値、およびカメラ間距離と一致しない。従って、PPS#0には、伝送の有りを表す伝送フラグ「1」が含まれる。また、図7の例では、PPS#0の同一PPS単位を構成するスライスの視差精度が0.5であり、PPS#0には、視差精度パラメータとして視差精度0.5を表す「1」が含まれる。
 さらに、図7の例では、PPS#0の同一PPS単位を構成するイントラタイプのスライスの視差最小値が10であり、視差最大値が50であり、カメラ間距離が100である。従って、そのスライスのスライスヘッダには、視差最小値「10」、視差最大値「50」、およびカメラ間距離「100」が含まれる。
 また、図7の例では、PPS#0の同一PPS単位を構成する1番目のインタータイプのスライスの視差最小値が9であり、視差最大値が48であり、カメラ間距離が105である。従って、そのスライスのスライスヘッダには、そのスライスの視差最小値「9」から、符号化順で1つ前のイントラタイプのスライスの視差最小値「10」を減算した差分「-1」が、視差最小値の差分符号化結果として含まれる。同様に、視差最大値の差分「-2」が視差最大値の差分符号化結果として含まれ、カメラ間距離の差分「5」がカメラ間距離の差分符号化結果として含まれる。
 さらに、図7の例では、PPS#0の同一PPS単位を構成する2番目のインタータイプのスライスの視差最小値が7であり、視差最大値が47であり、カメラ間距離が110である。従って、そのスライスのスライスヘッダには、そのスライスの視差最小値「7」から、符号化順で1つ前の1番目のインタータイプのスライスの視差最小値「9」を減算した差分「-2」が、視差最小値の差分符号化結果として含まれる。同様に、視差最大値の差分「-1」が視差最大値の差分符号化結果として含まれ、カメラ間距離の差分「5」がカメラ間距離の差分符号化結果として含まれる。
 また、図7の例では、1番目のPPSであるPPS#1の同一PPS単位を構成する1つのイントラタイプのスライスと2つのインタータイプのスライスの視差最大値、視差最小値、およびカメラ間距離が、それぞれ、符号化順で1つ前のスライスの視差最大値、視差最小値、およびカメラ間距離と一致する。即ち、PPS#1の同一PPS単位を構成する1つのイントラタイプのスライスと2つのインタータイプのスライスの視差最小値、視差最大値、カメラ間距離は、それぞれ、PPS#0の同一PPS単位を構成する2番目のインタータイプのスライスと同一の「7」、「47」、「110」である。従って、PPS#1には、伝送の無しを表す伝送フラグ「0」が含まれる。また、図7の例では、PPS#1の同一PPS単位を構成するスライスの視差精度が0.5であり、PPS#1には、視差精度パラメータとして視差精度0.5を表す「1」が含まれる。
 [PPSのシンタックスの例]
 図8は、図7のPPSのシンタックスの例を示す図である。
 図8に示すように、PPSには、視差精度パラメータ(disparity_precision)と伝送フラグ(dsiparity_pic_same_flag)が含まれる。視差精度パラメータは、例えば、視差精度1を表す場合「0」であり、視差精度0.25を表す場合「2」である。また、上述したように、視差精度パラメータは、視差精度0.5を表す場合「1」である。また、伝送フラグは、上述したように、伝送の有りを表す場合「1」であり、伝送の無しを表す場合「0」である。
 [スライスヘッダのシンタックスの例]
 図9および図10は、スライスヘッダのシンタックスの例を示す図である。
 図10に示すように、伝送フラグが1であり、スライスのタイプがイントラタイプである場合、スライスヘッダには、視差最小値(minimum_disparity)、視差最大値(maximum_disparity)、およびカメラ間距離(translation_x)が含まれる。
 一方、伝送フラグが1であり、スライスのタイプがインタータイプである場合、スライスヘッダには、視差最小値の差分符号化結果(delta_minimum_disparity)、視差最大値の差分符号化結果(delta_maximum_disparity)、およびカメラ間距離の差分符号化結果(delta_translation_x)が含まれる。
 [符号化装置の処理の説明]
 図11は、図1の符号化装置50の符号化処理を説明するフローチャートである。
 図11のステップS111において、符号化装置50の多視点カラー画像撮像部51は、多視点のカラー画像を撮像し、多視点カラー画像として多視点カラー画像補正部52に供給する。
 ステップS112において、多視点カラー画像撮像部51は、視差最大値、視差最小値、および外部パラメータを生成する。多視点カラー画像撮像部51は、視差最大値、視差最小値、および外部パラメータを視点生成用情報生成部54に供給するとともに、視差最大値と視差最小値を多視点視差画像生成部53に供給する。
 ステップS113において、多視点カラー画像補正部52は、多視点カラー画像撮像部51から供給される多視点カラー画像に対して、色補正、輝度補正、歪み補正等を行う。これにより、補正後の多視点カラー画像における多視点カラー画像撮像部51の水平方向(X方向)の焦点距離は、全視点で共通となる。多視点カラー画像補正部52は、補正後の多視点カラー画像を多視点補正カラー画像として多視点視差画像生成部53と多視点画像符号化部55に供給する。
 ステップS114において、多視点視差画像生成部53は、多視点カラー画像撮像部51から供給される視差最大値と視差最小値に基づいて、多視点カラー画像補正部52から供給される多視点補正カラー画像から、多視点の視差画像を生成する。そして、多視点視差画像生成部53は、生成された多視点の視差画像を多視点視差画像として多視点画像符号化部55に供給する。
 ステップS115において、多視点視差画像生成部53は、視差精度パラメータを生成し、視点生成用情報生成部54に供給する。
 ステップS116において、視点生成用情報生成部54は、多視点カラー画像撮像部51から供給される外部パラメータに基づいて、カメラ間距離を求める。
 ステップS117において、視点生成用情報生成部54は、多視点カラー画像撮像部51からの視差最大値および視差最小値、カメラ間距離、並びに多視点視差画像生成部53からの視差精度パラメータを視点生成用情報として生成する。視点生成用情報生成部54は、生成された視点生成用情報を多視点画像符号化部55に供給する。
 ステップS118において、多視点画像符号化部55は、多視点カラー画像補正部52からの多視点補正カラー画像と多視点視差画像生成部53からの多視点視差画像を符号化する多視点符号化処理を行う。この多視点符号化処理の詳細については、後述する図12を参照して説明する。
 ステップS119において、多視点画像符号化部55は、多視点符号化処理の結果得られる符号化ビットストリームを伝送し、処理を終了する。
 図12は、図11のステップS118の多視点符号化処理を説明するフローチャートである。
 図12のステップS131において、多視点画像符号化部55のスライス符号化部61(図5)は、多視点カラー画像補正部52からの多視点補正カラー画像と、多視点視差画像生成部53からの多視点視差画像を、スライス単位で符号化する。具体的には、スライス符号化部61は、多視点補正カラー画像をHEVC方式で符号化するカラー画像符号化処理をスライス単位で行う。また、スライス符号化部61は、図1の視点生成用情報生成部54から供給される視点生成用情報のうちの視差最大値、視差最小値、およびカメラ間距離を用いて、多視点視差画像をHEVC方式に準じた方式で符号化する視差画像符号化処理をスライス単位で行う。この視差画像符号化処理の詳細は、後述する図13および図14を参照して説明する。スライス符号化部61は、符号化の結果得られるスライス単位の符号化データをスライスヘッダ符号化部62に供給する。
 ステップS132において、スライスヘッダ符号化部62は、視点生成用情報生成部54から供給される視点生成用情報のうちのカメラ間距離、視差最大値、および視差最小値を、現在の処理対象のスライスのカメラ間距離、視差最大値、および視差最小値とし、保持する。
 ステップS133において、スライスヘッダ符号化部62は、同一PPS単位を構成する全てのスライスのカメラ間距離、視差最大値、および視差最小値が、それぞれ、そのスライスより符号化順で1つ前のスライスのカメラ間距離、視差最大値、および視差最小値と一致するかどうかを判定する。
 ステップS133でカメラ間距離、視差最大値、および視差最小値が一致すると判定された場合、ステップS134において、スライスヘッダ符号化部62は、カメラ間距離、視差最大値、および視差最小値の差分符号化結果の伝送の無しを表す伝送フラグを生成し、PPS符号化部63に供給する。
 ステップS135において、スライスヘッダ符号化部62は、ステップS133の処理対象である同一PPS単位を構成する各スライスの符号化データに、スライスヘッダとして、そのスライスのカメラ間距離、視差最大値、および視差最小値以外の符号化に関する情報を付加する。なお、この符号化に関する情報には、スライス符号化部61から供給される画面内予測情報または動き情報が含まれる。そして、スライスヘッダ符号化部62は、その結果得られる同一PPS単位を構成する各スライスの符号化データをPPS符号化部63に供給し、処理をステップS140に進める。
 一方、ステップS133でカメラ間距離、視差最大値、および視差最小値が一致しないと判定された場合、ステップS136において、スライスヘッダ符号化部62は、カメラ間距離、視差最大値、および視差最小値の差分符号化結果の伝送の有りを表す伝送フラグをPPS符号化部63に供給する。なお、後述するステップS137乃至S139の処理は、ステップS133の処理対象である同一PPS単位を構成するスライスごとに行われる。
 ステップS137において、スライスヘッダ符号化部62は、ステップS133の処理対象である同一PPS単位を構成するスライスのタイプがイントラタイプであるかどうかを判定する。ステップS137でスライスのタイプがイントラタイプであると判定された場合、ステップS138において、スライスヘッダ符号化部62は、そのスライスの符号化データに、スライスヘッダとして、そのスライスのカメラ間距離、視差最大値、および視差最小値を含む符号化に関する情報を付加する。なお、この符号化に関する情報には、スライス符号化部61から供給される画面内予測情報または動き情報も含まれる。そして、スライスヘッダ符号化部62は、その結果得られるスライス単位の符号化データをPPS符号化部63に供給し、処理をステップS140に進める。
 一方、ステップS137でスライスのタイプがイントラタイプではないと判定された場合、即ちスライスのタイプがインタータイプである場合、処理はステップS139に進む。ステップS139において、スライスヘッダ符号化部62は、そのスライスのカメラ間距離、視差最大値、および視差最小値を差分符号化し、そのスライスの符号化データに、差分符号化結果を含む符号化に関する情報をスライスヘッダとして付加する。なお、この符号化に関する情報には、スライス符号化部61から供給される画面内予測情報または動き情報も含まれる。そして、スライスヘッダ符号化部62は、その結果得られるスライス単位の符号化データをPPS符号化部63に供給し、処理をステップS140に進める。
 ステップS140において、PPS符号化部63は、スライスヘッダ符号化部62から供給される伝送フラグと、図1の視点生成用情報生成部54から供給される視点生成用情報のうちの視差精度パラメータを含むPPSを生成する。
 ステップS141において、PPS符号化部63は、同一PPS単位で、スライスヘッダ符号化部62から供給されるスライスヘッダが付加されたスライス単位の符号化データにPPSを付加し、SPS符号化部64に供給する。
 ステップS142において、SPS符号化部64は、SPSを生成する。
 ステップS143において、SPS符号化部64は、シーケンス単位で、PPS符号化部63から供給されるPPSが付加された符号化データにSPSを付加し、符号化ビットストリームを生成する。そして、処理は図11のステップS118に戻り、ステップS119に進む。
 図13および図14は、図5のスライス符号化部61の視差画像符号化処理の詳細を説明するフローチャートである。この視差画像符号化処理は、視点ごとに行われる。
 図13のステップS160において、符号化部120のA/D変換部121は、多視点視差画像生成部53から入力された所定の視点のフレーム単位の視差画像をA/D変換し、画面並べ替えバッファ122に出力して記憶させる。
 ステップS161において、画面並べ替えバッファ122は、記憶した表示の順番のフレームの視差画像を、GOP構造に応じて、符号化のための順番に並べ替える。画面並べ替えバッファ122は、並べ替え後のフレーム単位の視差画像を、演算部123、画面内予測部133、および動き予測・補償部134に供給する。
 ステップS162において、画面内予測部133は、加算部130から供給される参照画像を用いて、候補となる全てのイントラ予測モードの画面内予測処理を行う。このとき、画面内予測部133は、候補となる全てのイントラ予測モードに対してコスト関数値を算出する。そして、画面内予測部133は、コスト関数値が最小となるイントラ予測モードを最適イントラ予測モードに決定する。画面内予測部133は、最適イントラ予測モードで生成された予測画像、および、対応するコスト関数値を、選択部136に供給する。
 ステップS163において、動き予測・補償部134は、画面並べ替えバッファ122から供給される視差画像と、フレームメモリ132から供給される参照画像とに基づいて、動き予測・補償処理を行う。
 具体的には、動き予測・補償部134は、画面並べ替えバッファ122から供給される視差画像と、フレームメモリ132から供給される参照画像とに基づいて、候補となる全てのインター予測モードの動き予測処理を行い、動きベクトルを生成する。また、動き予測・補償部134は、インター予測モードごとに、生成された動きベクトルに基づいて、フレームメモリ132から参照画像を読み出すことにより、動き補償処理を行う。動き予測・補償部134は、その結果生成される予測画像を補正部135に供給する。
 ステップS164において、補正部135は、図1の視点生成用情報生成部54から供給される視点生成用情報のうちの視差最大値、視差最小値、およびカメラ間距離に基づいて、補正係数を算出する。
 ステップS165において、補正部135は、動き予測・補償部134から供給される各インター予測モードの予測画像を、補正係数を用いて補正する。
 ステップS166において、補正部135は、補正後の予測画像を用いて、各インター予測モードに対してコスト関数値を算出し、コスト関数値が最小となるインター予測モードを最適インター測モードに決定する。そして、補正部135は、最適インター予測モードで生成された予測画像とコスト関数値とを選択部136に供給する。
 ステップS167において、選択部136は、画面内予測部133および補正部135から供給されるコスト関数値に基づいて、最適イントラ予測モードと最適インター予測モードのうちのコスト関数値が最小となる方を、最適予測モードに決定する。そして、選択部136は、最適予測モードの予測画像を、演算部123および加算部130に供給する。
 ステップS168において、選択部136は、最適予測モードが最適インター予測モードであるかどうかを判定する。ステップS168で最適予測モードが最適インター予測モードであると判定された場合、選択部136は、最適インター予測モードで生成された予測画像の選択を補正部135に通知する。
 そして、ステップS169において、補正部135は、動き情報をスライスヘッダ符号化部62(図5)に出力し、処理をステップS171に進める。
 一方、ステップS168で最適予測モードが最適インター予測モードではないと判定された場合、即ち最適予測モードが最適イントラ予測モードである場合、選択部136は、最適イントラ予測モードで生成された予測画像の選択を画面内予測部133に通知する。
 そして、ステップS170において、画面内予測部133は、画面内予測情報をスライスヘッダ符号化部62に出力し、処理をステップS171に進める。
 ステップS171において、演算部123は、画面並べ替えバッファ122から供給される視差画像から、選択部136から供給される予測画像を減算する。演算部123は、減算の結果得られる画像を、残差情報として直交変換部124に出力する。
 ステップS172において、直交変換部124は、演算部123からの残差情報に対して直交変換を施し、その結果得られる係数を量子化部125に供給する。
 ステップS173において、量子化部125は、直交変換部124から供給される係数を量子化する。量子化された係数は、可逆符号化部126と逆量子化部128に入力される。
 ステップS174において、可逆符号化部126は、量子化部125から供給される量子化された係数を可逆符号化する。
 図14のステップS175において、可逆符号化部126は、可逆符号化処理の結果得られる符号化データを蓄積バッファ127に供給し、蓄積させる。
 ステップS176において、蓄積バッファ127は、蓄積されている符号化データをスライスヘッダ符号化部62に出力する。
 ステップS177において、逆量子化部128は、量子化部125から供給される量子化された係数を逆量子化する。
 ステップS178において、逆直交変換部129は、逆量子化部128から供給される係数に対して逆直交変換を施し、その結果得られる残差情報を加算部130に供給する。
 ステップS179において、加算部130は、逆直交変換部129から供給される残差情報と、選択部136から供給される予測画像を加算し、局部的に復号された視差画像を得る。加算部130は、得られた視差画像をデブロックフィルタ131に供給するとともに、参照画像として画面内予測部133に供給する。
 ステップS180において、デブロックフィルタ131は、加算部130から供給される局部的に復号された視差画像に対してフィルタリングを行うことにより、ブロック歪を除去する。
 ステップS181において、デブロックフィルタ131は、フィルタリング後の視差画像をフレームメモリ132に供給し、蓄積させる。フレームメモリ132に蓄積された視差画像は、参照画像として動き予測・補償部134に出力される。そして、処理は終了する。
 なお、図13および図14のステップS162乃至S181の処理は、例えば、コーディングユニット単位で行われる。また、図13および図14の視差画像符号化処理では、説明を簡単化するため、常に、画面内予測処理と動き補償処理が行われるようにしたが、実際には、ピクチャタイプ等によっていずれか一方のみが行われる場合もある。
 以上のように、符号化装置50は、視差画像に関する情報を用いて予測画像を補正し、補正後の予測画像を用いて視差画像を符号化する。より詳細には、符号化装置50は、視差画像に関する情報としてカメラ間距離、視差最大値、および視差最小値を用いて、予測画像と視差画像の間で、奥行方向の被写体の位置が同一である場合に視差値が同一となるように予測画像を補正し、補正後の予測画像を用いて視差画像を符号化する。従って、視差画像に関する情報によって生じる予測画像と視差画像の差分が削減され、符号化効率が向上する。特に、視差画像に関する情報がピクチャごとに変化するとき、符号化効率が向上する。
 また、符号化装置50は、予測画像の補正に用いられる情報として、補正係数そのものではなく、補正係数の算出に用いられるカメラ間距離、視差最大値、および視差最小値を伝送する。ここで、カメラ間距離、視差最大値、および視差最小値は、視点生成用情報の一部である。従って、カメラ間距離、視差最大値、および視差最小値を、予測画像の補正に用いられる情報および視点生成用情報の一部として共有させることができる。その結果、符号化ビットストリームの情報量を削減することができる。
 [復号装置の一実施の形態の構成例]
 図15は、図1の符号化装置50から伝送される符号化ビットストリームを復号する、本技術を適用した復号装置の一実施の形態の構成例を示すブロック図である。
 図15の復号装置150は、多視点画像復号部151、視点合成部152、および多視点画像表示部153により構成される。復号装置150は、符号化装置50から伝送されてくる符号化ビットストリームを復号し、その結果得られる多視点カラー画像、多視点視差画像、および視点生成用情報を用いて表示視点のカラー画像を生成して表示する。
 具体的には、復号装置150の多視点画像復号部151は、図1の符号化装置50から伝送されてくる符号化ビットストリームを受け取る。多視点画像復号部151は、受け取られた符号化ビットストリームに含まれるPPSから視差精度パラメータと伝送フラグを抽出する。また、多視点画像復号部151は、伝送フラグに応じて、符号化ビットストリームのスライスヘッダからカメラ間距離、視差最大値、および視差最小値を抽出する。多視点画像復号部151は、視差精度パラメータ、カメラ間距離、視差最大値、および視差最小値からなる視点生成用情報を生成し、視点合成部152に供給する。
 また、多視点画像復号部151は、符号化ビットストリームに含まれるスライス単位の多視点補正カラー画像の符号化データを、図1の多視点画像符号化部55の符号化方式に対応する方式で復号し、多視点補正カラー画像を生成する。また、多視点画像復号部151は、復号部として機能する。多視点画像復号部151は、カメラ間距離、視差最大値、および視差最小値を用いて、符号化ビットストリームに含まれる多視点視差画像の符号化データを、多視点画像符号化部55の符号化方式に対応する方式で復号し、多視点視差画像を生成する。多視点画像復号部151は、生成された多視点補正カラー画像および多視点視差画像を視点合成部152に供給する。
 視点合成部152は、多視点画像復号部151からの視点生成用情報を用いて、多視点画像復号部151からの多視点視差画像に対して、多視点画像表示部153に対応する視点数の表示視点へのワーピング処理を行う。具体的には、視点合成部152は、視点生成用情報に含まれるカメラ間距離、視差最大値、および視差最小値等に基づいて、視差精度パラメータに対応する精度で、多視点視差画像に対して表示視点へのワーピング処理を行う。なお、ワーピング処理とは、ある視点の画像から別の視点の画像へ幾何変換する処理である。また、表示視点には、多視点カラー画像に対応する視点以外の視点が含まれる。
 また、視点合成部152は、ワーピング処理の結果得られる表示視点の視差画像を用いて、多視点画像復号部151から供給される多視点補正カラー画像に対して、表示視点へのワーピング処理を行う。視点合成部152は、その結果得られる表示視点のカラー画像を、多視点合成カラー画像として多視点画像表示部153に供給する。
 多視点画像表示部153は、視点合成部152から供給される多視点合成カラー画像を、視点ごとに視認可能な角度が異なるように表示する。視聴者は、任意の2視点の各画像を左右の各目で見ることにより、メガネを装着せずに複数の視点から3D画像を見ることができる。
 以上のように、視点合成部152は、視差精度パラメータに基づいて、視点精度パラメータに対応する精度で、多視点視差画像に対する表示視点へのワーピング処理を行うので、視点合成部152は、無駄に高精度のワーピング処理を行う必要がない。
 また、視点合成部152は、カメラ間距離に基づいて、多視点視差画像に対する表示視点へのワーピング処理を行うので、ワーピング処理後の多視点視差画像の視差値に対応する視差が適正な範囲ではない場合、カメラ間距離に基づいて、視差値を適正な範囲の視差に対応する値に修正することができる。
 [多視点画像復号部の構成例]
 図16は、図15の多視点画像復号部151の構成例を示すブロック図である。
 図16の多視点画像復号部151は、SPS復号部171、PPS復号部172、スライスヘッダ復号部173、およびスライス復号部174により構成される。
 多視点画像復号部151のSPS復号部171は、受け取り部として機能し、図1の符号化装置50から伝送されてくる符号化ビットストリームを受け取り、その符号化ビットストリームのうちのSPSを抽出する。SPS復号部171は、抽出されたSPSとSPS以外の符号化ビットストリームをPPS復号部172に供給する。
 PPS復号部172は、SPS復号部171から供給されるSPS以外の符号化ビットストリームからPPSを抽出する。PPS復号部172は、抽出されたPPS、SPS、およびSPSとPPS以外の符号化ビットストリームをスライスヘッダ復号部173に供給する。
 スライスヘッダ復号部173は、PPS復号部172から供給されるSPSとPPS以外の符号化ビットストリームからスライスヘッダを抽出する。スライスヘッダ復号部173は、PPS復号部172からのPPSに含まれる伝送フラグが伝送の有りを表す「1」である場合、スライスヘッダに含まれるカメラ間距離、視差最大値、および視差最小値を保持するか、または、カメラ間距離、視差最大値、および視差最小値の差分符号化結果に基づいて保持されているカメラ間距離、視差最大値、および視差最小値を更新する。スライスヘッダ復号部173は、保持されているカメラ間距離、視差最大値、および視差最小値、並びに、PPSに含まれる視差精度パラメータから視点生成用情報を生成し、視点合成部152に供給する。
 さらに、スライスヘッダ復号部173は、SPS,PPS、およびスライスヘッダのカメラ間距離、視差最大値、および視差最小値に関する情報以外、並びに、SPS,PPS、およびスライスヘッダ以外の符号化ビットストリームであるスライス単位の符号化データを、スライス復号部174に供給する。また、スライスヘッダ復号部173は、カメラ間距離、視差最大値、および視差最小値をスライス復号部174に供給する。
 スライス復号部174は、スライスヘッダ復号部173から供給されるSPS,PPS、およびスライスヘッダのカメラ間距離、視差最大値、および視差最小値に関する情報以外に基づいて、スライス符号化部61(図5)における符号化方式に対応する方式で、スライス単位の多重化カラー画像の符号化データを復号する。また、スライス復号部174は、SPS,PPS、スライスヘッダのカメラ間距離、視差最大値、および視差最小値関する情報以外、並びに、カメラ間距離、視差最大値、および視差最小値に基づいて、スライス符号化部61における符号化方式に対応する方式で、スライス単位の多重化視差画像の符号化データを復号する。スライスヘッダ復号部173は、復号の結果得られる多視点補正カラー画像と多視点視差画像を、図15の視点合成部152に供給する。
 [スライス復号部の構成例]
 図17は、図16のスライス復号部174のうちの任意の1視点の視差画像を復号する復号部の構成例を示すブロック図である。即ち、スライス復号部174のうちの多視点視差画像を復号する復号部は、視点数分の図17の復号部250により構成される。
 図17の復号部250は、蓄積バッファ251、可逆復号部252、逆量子化部253、逆直交変換部254、加算部255、デブロックフィルタ256、画面並べ替えバッファ257、D/A変換部258、フレームメモリ259、画面内予測部260、動きベクトル生成部261、動き補償部262、補正部263、およびスイッチ264により構成される。
 復号部250の蓄積バッファ251は、図16のスライスヘッダ復号部173からスライス単位の所定の視点の視差画像の符号化データを受け取り、蓄積する。蓄積バッファ251は、蓄積されている符号化データを可逆復号部252に供給する。
 可逆復号部252は、蓄積バッファ251からの符号化データに対して、可変長復号や、算術復号等の可逆復号を施すことで、量子化された係数を得る。可逆復号部252は、量子化された係数を逆量子化部253に供給する。
 逆量子化部253、逆直交変換部254、加算部255、デブロックフィルタ256、フレームメモリ259、画面内予測部260、動き補償部262、および補正部263は、図6の逆量子化部128、逆直交変換部129、加算部130、デブロックフィルタ131、フレームメモリ132、画面内予測部133、動き予測・補償部134、および補正部135とそれぞれ同様の処理を行い、これにより、所定の視点の視差画像が復号される。
 具体的には、逆量子化部253は、可逆復号部252からの量子化された係数を逆量子化し、その結果得られる係数を逆直交変換部254に供給する。
 逆直交変換部254は、逆量子化部253からの係数に対して、逆離散コサイン変換、逆カルーネン・レーベ変換等の逆直交変換を施し、その結果得られる残差情報を加算部255に供給する。
 加算部255は、復号部として機能し、逆直交変換部254から供給される復号対象の視差画像としての残差情報と、スイッチ264から供給される予測画像を加算することにより、復号対象の視差画像を復号する。加算部255は、その結果得られる視差画像をデブロックフィルタ256に供給するとともに、参照画像として画面内予測部260に供給する。なお、スイッチ264から予測画像が供給されない場合、加算部255は、逆直交変換部254から供給される残差情報である視差画像をデブロックフィルタ256に供給するとともに、参照画像として画面内予測部260に供給する。
 デブロックフィルタ256は、加算部255から供給される視差画像をフィルタリングすることにより、ブロック歪を除去する。デブロックフィルタ256は、その結果得られる視差画像をフレームメモリ259に供給し、蓄積させるとともに、画面並べ替えバッファ257に供給する。フレームメモリ259に蓄積された視差画像は、参照画像として動き補償部262に供給される。
 画面並べ替えバッファ257は、デブロックフィルタ256から供給される視差画像をフレーム単位で記憶する。画面並べ替えバッファ257は、記憶した符号化のための順番のフレーム単位の視差画像を、元の表示の順番に並び替え、D/A変換部258に供給する。
 D/A変換部258は、画面並べ替えバッファ257から供給されるフレーム単位の視差画像をD/A変換し、所定の視点の視差画像として視点合成部152(図15)に供給する。
 画面内予測部260は、加算部255から供給される参照画像を用いて、スライスヘッダ復号部173(図16)から供給される画面内予測情報が表す最適イントラ予測モードの画面内予測を行い、予測画像を生成する。そして、画面内予測部260は、予測画像をスイッチ264に供給する。
 動きベクトル生成部261は、保持されている動きベクトルのうちの、スライスヘッダ復号部173から供給される動き情報に含まれる予測ベクトルインデックスが表す動きベクトルと、動きベクトル残差とを加算し、動きベクトルを復元する。動きベクトル生成部261は、復元された動きベクトルを保持する。また、動きベクトル生成部261は、復元された動きベクトルと、動き情報に含まれる最適インター予測モード等を動き補償部262に供給する。
 動き補償部262は、予測画像生成部として機能し、動きベクトル生成部261から供給される動きベクトルと最適インター予測モードに基づいて、フレームメモリ259から参照画像を読み出すことにより、動き補償処理を行う。動き補償部262は、その結果生成される予測画像を補正部263に供給する。
 補正部263は、図6の補正部135と同様に、図16のスライスヘッダ復号部173から供給される視差最大値、視差最小値、およびカメラ間距離に基づいて、予測画像を補正する際に用いる補正係数を生成する。また、補正部263は、補正部135と同様に、動き補償部262から供給される最適インター予測モードの予測画像を、補正係数を用いて補正する。補正部263は、補正後の予測画像をスイッチ264に供給する。
 スイッチ264は、画面内予測部260から予測画像が供給された場合、その予測画像を加算部255に供給し、動き補償部262から予測画像が供給された場合、その予測画像を加算部255に供給する。
 [復号装置の処理の説明]
 図18は、図15の復号装置150の復号処理を説明するフローチャートである。この復号処理は、例えば、図1の符号化装置50から符号化ビットストリームが伝送されてきたとき、開始される。
 図18のステップS201において、復号装置150の多視点画像復号部151は、図1の符号化装置50から伝送されてくる符号化ビットストリームを受け取る。
 ステップS202において、多視点画像復号部151は、受け取られた符号化ビットストリームを復号する多視点復号処理を行う。この多視点復号処理の詳細は、後述する図19を参照して説明する。
 ステップS203において、視点合成部152は、カラー画像生成部として機能し、多視点画像復号部151から供給される視点生成用情報、多視点補正カラー画像、および多視点視差画像を用いて、多視点合成カラー画像を生成する。
 ステップS204において、多視点画像表示部153は、視点合成部152から供給される多視点合成カラー画像を、視点ごとに視認可能な角度が異なるように表示し、処理を終了する。
 図19は、図18のステップS202の多視点復号処理の詳細を説明するフローチャートである。
 図19のステップS221において、多視点画像復号部151のSPS復号部171(図16)は、受け取られた符号化ビットストリームのうちのSPSを抽出する。SPS復号部171は、抽出されたSPSとSPS以外の符号化ビットストリームをPPS復号部172に供給する。
 ステップS222において、PPS復号部172は、SPS復号部171から供給されるSPS以外の符号化ビットストリームからPPSを抽出する。PPS復号部172は、抽出されたPPS、SPS、およびSPSとPPS以外の符号化ビットストリームをスライスヘッダ復号部173に供給する。
 ステップS223において、スライスヘッダ復号部173は、PPS復号部172から供給されるPPSに含まれる視差精度パラメータを視点生成用情報の一部として視点合成部152に供給する。
 ステップS224において、スライスヘッダ復号部173は、PPS復号部172からのPPSに含まれる伝送フラグが伝送の有りを表す「1」であるかどうかを判定する。なお、以降のステップS225乃至S234の処理は、スライス単位で行われる。
 ステップS224で伝送フラグが伝送の有りを表す「1」であると判定された場合、処理はステップS225に進む。ステップS225において、スライスヘッダ復号部173は、PPS復号部172から供給されるSPSとPPS以外の符号化ビットストリームから、視差最大値、視差最小値、およびカメラ間距離、または、視差最大値、視差最小値、およびカメラ間距離の差分符号化結果を含むスライスヘッダを抽出する。
 ステップS226において、スライスヘッダ復号部173は、スライスのタイプがイントラタイプであるかどうかを判定する。ステップS226でスライスのタイプがイントラタイプであると判定された場合、処理はステップS227に進む。
 ステップS227において、スライスヘッダ復号部173は、ステップS225で抽出されたスライスヘッダに含まれる視差最小値を保持し、視点生成用情報の一部として視点合成部152に供給する。
 ステップS228において、スライスヘッダ復号部173は、ステップS225で抽出されたスライスヘッダに含まれる視差最大値を保持し、視点生成用情報の一部として視点合成部152に供給する。
 ステップS229において、スライスヘッダ復号部173は、ステップS225で抽出されたスライスヘッダに含まれるカメラ間距離を保持し、視点生成用情報の一部として視点合成部152に供給する。そして、処理はステップS235に進む。
 一方、ステップS226でスライスのタイプがイントラタイプではないと判定された場合、即ちスライスのタイプがインタータイプである場合、処理はステップS230に進む。
 ステップS230において、スライスヘッダ復号部173は、ステップS225で抽出されたスライスヘッダに含まれる視差最小値の差分符号化結果を、保持されている視差最小値に加算する。スライスヘッダ復号部173は、加算により復元された視差最小値を視点生成用情報の一部として視点合成部152に供給する。
 ステップS231において、スライスヘッダ復号部173は、ステップS225で抽出されたスライスヘッダに含まれる視差最大値の差分符号化結果を、保持されている視差最大値に加算する。スライスヘッダ復号部173は、加算により復元された視差最大値を視点生成用情報の一部として視点合成部152に供給する。
 ステップS232において、スライスヘッダ復号部173は、ステップS225で抽出されたスライスヘッダに含まれるカメラ間距離の差分符号化結果を、保持されているカメラ間距離に加算する。スライスヘッダ復号部173は、加算により復元されたカメラ間距離を視点生成用情報の一部として視点合成部152に供給する。そして、処理はステップS235に進む。
 一方、ステップS224で伝送フラグが伝送の有りを表す「1」ではないと判定された場合、即ち伝送フラグが伝送の無しを表す「0」である場合、処理はステップS233に進む。
 ステップS233において、スライスヘッダ復号部173は、PPS復号部172から供給されるSPSとPPS以外の符号化ビットストリームから、視差最大値、視差最小値、およびカメラ間距離、および、視差最大値、視差最小値、およびカメラ間距離の差分符号化結果を含まないスライスヘッダを抽出する。
 ステップS234において、スライスヘッダ復号部173は、保持されている視差最大値、視差最小値、およびカメラ間距離、即ち符号化順で1つ前のスライスの視差最大値、視差最小値、およびカメラ間距離を、処理対象のスライスの視差最大値、視差最小値、およびカメラ間距離とすることにより、処理対象のスライスの視差最大値、視差最小値、およびカメラ間距離を復元する。そして、スライスヘッダ復号部173は、復元された視差最大値、視差最小値、およびカメラ間距離を、視点生成用情報の一部として視点合成部152に供給し、処理をステップS235に進める。
 ステップS235において、スライス復号部174は、スライス符号化部61(図5)における符号化方式に対応する方式で、スライス単位の符号化データを復号する。具体的には、スライス復号部174は、スライスヘッダ復号部173からのSPS,PPS、およびカメラ間距離、視差最大値、および視差最小値に関する情報以外のスライスヘッダに基づいて、スライス符号化部61における符号化方式に対応する方式で、スライス単位の多視点カラー画像の符号化データを復号する。また、スライス復号部174は、スライスヘッダ復号部173からのSPS,PPS、カメラ間距離、視差最大値、および視差最小値に関する情報以外のスライスヘッダ、並びに、カメラ間距離、視差最大値、および視差最小値に基づいて、スライス符号化部61における符号化方式に対応する方式で、スライス単位の多視点補正画像の符号化データを復号する視差画像復号処理を行う。この視差画像復号処理の詳細は、後述する図20を参照して説明する。スライスヘッダ復号部173は、復号の結果得られる多視点補正カラー画像と多視点視差画像を、図15の視点合成部152に供給する。
 図20は、図16のスライス復号部174の視差画像復号処理の詳細を説明するフローチャートである。この視差画像復号処理は、視点ごとに行われる。
 図20のステップS261において、復号部250の蓄積バッファ251は、図16のスライスヘッダ復号部173から所定の視点の視差画像のスライス単位の符号化データを受け取り、蓄積する。蓄積バッファ251は、蓄積されている符号化データを可逆復号部252に供給する。
 ステップS262において、可逆復号部252は、蓄積バッファ251から供給される符号化データを可逆復号し、その結果得られる量子化された係数を逆量子化部253に供給する。
 ステップS263において、逆量子化部253は、可逆復号部252からの量子化された係数を逆量子化し、その結果得られる係数を逆直交変換部254に供給する。
 ステップS264において、逆直交変換部254は、逆量子化部253からの係数に対して逆直交変換を施し、その結果得られる残差情報を加算部255に供給する。
 ステップS265において、動きベクトル生成部261は、図16のスライスヘッダ復号部173から動き情報が供給されたかどうかを判定する。ステップS265で動き情報が供給されたと判定された場合、処理はステップS266に進む。
 ステップS266において、動きベクトル生成部261は、動き情報と保持している動きベクトルに基づいて動きベクトルを復元し、保持する。動きベクトル生成部261は、復元された動きベクトルと、動き情報に含まれる最適インター予測モード等を動き補償部262に供給する。
 ステップS267において、動き補償部262は、動きベクトル生成部261から供給される動きベクトルと最適インター予測モードに基づいて、フレームメモリ259から参照画像を読み出すことにより動き補償処理を行う。動き補償部262は、動き補償処理の結果生成される予測画像を補正部263に供給する。
 ステップS268において、補正部263は、図6の補正部135と同様に、図16のスライスヘッダ復号部173から供給される視差最大値、視差最小値、およびカメラ間距離に基づいて、補正係数を算出する。
 ステップS269において、補正部263は、補正部135と同様に、動き補償部262から供給される最適インター予測モードの予測画像を、補正係数を用いて補正する。補正部263は、補正後の予測画像を、スイッチ264を介して加算部255に供給し、処理をステップS271に進める。
 一方、ステップS265で動き情報が供給されていないと判定された場合、即ち画面内予測情報がスライスヘッダ復号部173から画面内予測部260に供給された場合、処理はステップS270に進む。
 ステップS270において、画面内予測部260は、加算部255から供給される参照画像を用いて、スライスヘッダ復号部173から供給される画面内予測情報が示す最適イントラ予測モードの画面内予測処理を行う。画面内予測部260は、その結果生成される予測画像を、スイッチ264を介して加算部255に供給し、処理をステップS271に進める。
 ステップS271において、加算部255は、逆直交変換部254から供給される残差情報と、スイッチ264から供給される予測画像を加算する。加算部255は、その結果得られる視差画像をデブロックフィルタ256に供給するとともに、参照画像として画面内予測部260に供給する。
 ステップS272において、デブロックフィルタ256は、加算部255から供給される視差画像に対してフィルタリングを行い、ブロック歪を除去する。
 ステップS273において、デブロックフィルタ256は、フィルタリング後の視差画像をフレームメモリ259に供給し、蓄積させるとともに、画面並べ替えバッファ257に供給する。フレームメモリ259に蓄積された視差画像は、参照画像として動き補償部262に供給される。
 ステップS274において、画面並べ替えバッファ257は、デブロックフィルタ256から供給される視差画像をフレーム単位で記憶し、記憶した符号化のための順番のフレーム単位の視差画像を、元の表示の順番に並び替え、D/A変換部258に供給する。
 ステップS275において、D/A変換部258は、画面並べ替えバッファ257から供給されるフレーム単位の視差画像をD/A変換し、所定の視点の視差画像として図15の視点合成部152に供給する。
 以上のように、復号装置150は、視差画像に関する情報を用いて補正された予測画像を用いて符号化することにより符号化効率が向上された視差画像の符号化データと、その視差画像に関する情報を含む符号化ビットストリームを受け取る。そして、復号装置150は、視差画像に関する情報を用いて予測画像を補正し、補正後の予測画像を用いて視差画像の符号化データを復号する。
 より詳細には、復号装置150は、視差画像に関する情報としてカメラ間距離、視差最大値、および視差最小値を用いて補正された予測画像を用いて符号化された符号化データと、カメラ間距離、視差最大値、および視差最小値とを受け取る。そして、復号装置150は、カメラ間距離、視差最大値、および視差最小値を用いて予測画像を補正し、補正後の予測画像を用いて視差画像の符号化データを復号する。これにより、復号装置150は、視差画像に関する情報を用いて補正された予測画像を用いて符号化することにより符号化効率が向上された視差画像の符号化データを復号することができる。
 なお、符号化装置50は、予測画像の補正に用いられる情報として、視差最大値、視差最小値、およびカメラ間距離をスライスヘッダに含めて伝送したが、伝送方法は、これに限定されない。
 [予測画像の補正に用いられる情報の伝送方法の説明]
 図21は、予測画像の補正に用いられる情報の伝送方法を説明する図である。
 図21の第1の伝送方法は、上述したように、予測画像の補正に用いられる情報として、視差最大値、視差最小値、およびカメラ間距離をスライスヘッダに含めて伝送する方法である。この場合、予測画像の補正に用いられる情報と視点生成用情報を共有させ、符号化ビットストリームの情報量を削減することができる。しかしながら、復号装置150において、視差最大値、視差最小値、およびカメラ間距離を用いて補正係数を算出する必要があり、復号装置150の処理負荷は後述する第2の伝送方法に比べて大きい。
 一方、図21の第2の伝送方法は、予測画像の補正に用いられる情報として補正係数そのものをスライスヘッダに含めて伝送する方法である。この場合、視差最大値、視差最小値、およびカメラ間距離は、予測画像の補正に用いられないため、視点生成用情報の一部として、例えば、符号化時に参照する必要がないSEI(Supplemental Enhancement Information)に含めて伝送される。第2の伝送方法では、補正係数が伝送されるので、復号装置150において補正係数を算出する必要がなく、復号装置150の処理負荷は第1の伝送方法に比べて小さい。しかしながら、補正係数が新たに伝送されるので、符号化ビットストリームの情報量は多くなる。
 なお、上述した説明では、予測画像は、視差最大値、視差最小値、およびカメラ間距離を用いて補正されたが、他の視差に関する情報(例えば、多視点カラー画像撮像部51の奥行き方向の撮像位置を表す撮像位置情報など)も用いて補正されるようにすることもできる。
 この場合、図21の第3の伝送方法により、予測画像の補正に用いられる情報として、視差最大値、視差最小値、カメラ間距離、および他の視差に関する情報を用いて生成された補正係数である追加補正係数がスライスヘッダに含められて伝送される。このように、視差最大値、視差最小値、およびカメラ間距離以外の視差に関する情報も用いて予測画像が補正される場合、視差に関する情報による予測画像と視差画像の差分をより削減し、符号化効率を向上させることができる。しかしながら、追加補正係数が新たに伝送されるので、第1の伝送方法に比べて符号化ビットストリームの情報量は多くなる。また、視差最大値、視差最小値、およびカメラ間距離を用いて補正係数を算出する必要があるので、第2の伝送方法に比べて復号装置150の処理負荷は大きい。
 図22は、第2の伝送方法で予測画像の補正に用いられる情報を伝送する場合の符号化ビットストリームの構成例を示す図である。
 図22の例では、PPS#0の同一PPS単位を構成する1つのイントラタイプのスライスと2つのインタータイプのスライスの補正係数が、それぞれ、符号化順で1つ前のスライスの補正係数と一致しない。従って、PPS#0には、伝送の有りを表す伝送フラグ「1」が含まれる。なお、ここでは、伝送フラグは、補正係数の伝送の有無を表すフラグである。
 また、図22の例では、PPS#0の同一PPS単位を構成するイントラタイプのスライスの補正係数aが1であり、補正係数bが0である。従って、そのスライスのスライスヘッダには、補正係数a「1」と補正係数b「0」が含まれる。
 さらに、図22の例では、PPS#0の同一PPS単位を構成する1番目のインタータイプのスライスの補正係数aが3であり、補正係数bが2である。従って、そのスライスのスライスヘッダには、そのスライスの補正係数a「3」から、符号化順で1つ前のイントラタイプのスライスの補正係数a「1」を減算した差分「+2」が、補正係数の差分符号化結果として含まれる。同様に、補正係数bの差分「+2」が補正係数bの差分符号化結果として含まれる。
 また、図22の例では、PPS#0の同一PPS単位を構成する2番目のインタータイプのスライスの補正係数aが0であり、補正係数bが-1である。従って、そのスライスのスライスヘッダには、そのスライスの補正係数a「0」から、符号化順で1つ前の1番目のインタータイプのスライスの補正係数a「3」を減算した差分「-3」が、補正係数の差分符号化結果として含まれる。同様に、補正係数bの差分「-3」が補正係数bの差分符号化結果として含まれる。
 また、図22の例では、PPS#1の同一PPS単位を構成する1つのイントラタイプのスライスと2つのインタータイプのスライスの補正係数が、それぞれ、符号化順で1つ前のスライスの補正係数と一致する。従って、PPS#1には、伝送の無しを表す伝送フラグ「0」が含まれる。
 図23は、第3の伝送方法で予測画像の補正に用いられる情報を伝送する場合の符号化ビットストリームの構成例を示す図である。
 図23の例では、PPS#0の同一PPS単位を構成する1つのイントラタイプのスライスと2つのインタータイプのスライスの視差最小値、視差最大値、カメラ間距離、および追加補正係数が、それぞれ、符号化順で1つ前のスライスの視差最小値、視差最大値、カメラ間距離、および追加補正係数と一致しない。従って、PPS#0には、伝送の有りを表す伝送フラグ「1」が含まれる。なお、ここでは、伝送フラグは、視差最小値、視差最大値、カメラ間距離、および追加補正係数の伝送の有無を表すフラグである。
 また、図23の例では、PPS#0の同一PPS単位を構成するスライスの視差最小値、視差最大値、およびカメラ間距離は、図7の場合と同様であり、各スライスのスライスヘッダに含まれる視差最小値、視差最大値、およびカメラ間距離に関する情報は図7と同様であるので、説明は省略する。
 また、図23の例では、PPS#0の同一PPS単位を構成するイントラタイプのスライスの追加補正係数は5である。従って、そのスライスのスライスヘッダには、追加補正係数「5」が含まれる。
 さらに、図23の例では、PPS#0の同一PPS単位を構成する1番目のインタータイプのスライスの追加補正係数が7である。従って、そのスライスのスライスヘッダには、そのスライスの追加補正係数「7」から、符号化順で1つ前のイントラタイプのスライスの追加補正係数「5」を減算した差分「+2」が、追加補正係数の差分符号化結果として含まれる。
 また、図23の例では、PPS#0の同一PPS単位を構成する2番目のインタータイプのスライスの追加補正係数が8である。従って、そのスライスのスライスヘッダには、そのスライスの追加補正係数「8」から、符号化順で1つ前の1番目のインタータイプのスライスの追加補正係数「7」を減算した差分「+1」が、追加補正係数の差分符号化結果として含まれる。
 また、図23の例では、PPS#1の同一PPS単位を構成する1つのイントラタイプのスライスと2つのインタータイプのスライスの視差最小値、視差最大値、カメラ間距離、および追加補正係数が、それぞれ、符号化順で1つ前のスライスの視差最小値、視差最大値、カメラ間距離、および追加補正係数と一致する。従って、PPS#1には、伝送の無しを表す伝送フラグ「0」が含まれる。
 符号化装置50は、図21の第1乃至第3の伝送方法のいずれの方法で、予測画像の補正に用いられる情報を伝送するようにしてもよい。また、符号化装置50は、伝送方法として採用した、第1乃至第3の伝送方法のうちの1つの伝送方法を識別する識別情報(例えば、フラグ、IDなど)を、符号化ビットストリームに含めて伝送するようにしてもよい。さらに、図21の第1乃至第3の伝送方法は、符号化ビットストリームを利用するアプリケーションに応じて、符号化ビットストリームのデータ量と復号の処理負荷のバランスを考慮して適宜選択することが可能である。
 また、本実施の形態では、予測画像の補正に用いられる情報は、符号化に関する情報としてスライスヘッダに配置されたが、予測画像の補正に用いられる情報の配置領域は、符号化時に参照される領域であれば、スライスヘッダに限定されない。例えば、予測画像の補正に用いられる情報は、PPSのNALユニット等の既存のNAL(Network Abstraction Layer)ユニットや、HEVC規格で提案されているAPS(Adaptation Parameter Set)のNALユニット等の新たなNALユニットに配置されるようにすることができる。
 例えば、補正係数や追加補正係数が複数のピクチャ間で共通である場合、その複数のピクチャに適応可能なNALユニット(例えば、PPSのNALユニット等)に、その共通の値を配置させることにより、伝送効率を向上させることができる。即ち、この場合、複数のピクチャ間で共通の補正係数や追加補正係数を伝送すればよいので、スライスヘッダに配置させる場合のように、スライスごとに補正係数や追加補正係数を伝送する必要がない。
 従って、例えば、カラー画像が、フラッシュやフェード効果を有するカラー画像である場合、視差最小値、視差最大値、カメラ間距離等などのパラメータが変化しない傾向があるため、補正係数や追加補正係数はPPSのNALユニットなどに配置させ、伝送効率を向上させる。
 補正係数や追加補正係数は、例えば、ピクチャごとに異なる場合、スライスヘッダに配置させ、複数のピクチャ間で共通である場合、スライスヘッダよりも上のレイヤ(例えば、PPSのNALユニット等)に配置することができる。
 さらに、視差画像は、その視差画像に対応する視点のカラー画像の各画素の被写体の奥行方向の位置を表す奥行き値からなる画像(奥行き画像)であってもよい。この場合、視差最大値と視差最小値は、ぞれぞれ、多視点視差画像においてとり得る奥行方向の位置の世界座標値の最大値、最小値である。
 また、本技術は、HEVC方式以外のAVC,MVC(Multiview Video Coding)等の符号化方式にも適用することができる。
 <スライス符号化部の他の構成>
 図24は、多視点画像符号化部55(図1)を構成するスライス符号化部61(図5)とスライスヘッダ符号化部62を抜き出した図である。図24では、図5に示したスライス符号化部61、スライスヘッダ符号化部62と区別を付けるために、異なる符号を付して説明するが、基本的な処理は、図5に示したスライス符号化部61、スライスヘッダ符号化部62と同様であるので、その説明は適宜省略する。
 スライス符号化部301は、上記したスライス符号化部61と同様の符号化を行う。すなわち、スライス符号化部301は、多視点カラー画像補正部52(図1)から供給される多視点補正カラー画像に対して、HEVC方式でスライス単位の符号化を行う。
 またスライス符号化部301は、図1の視点生成用情報生成部54から供給される視点生成用情報のうちの視差最大値、視差最小値、およびカメラ間距離を視差に関する情報として用いて、多視点視差画像生成部53からの多視点視差画像に対して、HEVC方式に準じた方式でスライス単位の符号化を行う。スライス符号化部301は、符号化の結果得られるスライス単位の符号化データ等をスライスヘッダ符号化部302に出力する。
 スライスヘッダ符号化部302は、視点生成用情報生成部54(図1)から供給される視点生成用情報のうちの視差最大値、視差最小値、およびカメラ間距離を、現在の処理対象のスライスの視差最大値、視差最小値、およびカメラ間距離とし、保持する。また、スライスヘッダ符号化部62は、現在の処理対象のスライスの視差最大値、視差最小値、およびカメラ間距離が、それぞれ、そのスライスより符号化順で1つ前のスライスの視差最大値、視差最小値、およびカメラ間距離と一致するかどうかを、同一PPS単位で判定する。
 なお、視差画像として奥行き方向の位置(距離)を表す奥行き値からなる奥行き画像が用いられる場合、上記した視差最大値と視差最小値は、ぞれぞれ、多視点視差画像においてとり得る奥行方向の位置の世界座標値の最大値、最小値となる。ここでは、視差最大値と視差最小値との記載をする部分であっても、視差画像として奥行き方向の位置を表す奥行き値からなる奥行き画像が用いられる場合には、奥行方向の位置の世界座標値の最大値、最小値と適宜読み替えられる。
 図25は、スライス符号化部301の内部構成例を示す図である。図25に示したスライス符号化部301は、A/D変換部321、画面並べ替えバッファ322、演算部323、直交変換部324、量子化部325、可逆符号化部326、蓄積バッファ327、逆量子化部328、逆直交変換部329、加算部330、デブロックフィルタ331、フレームメモリ332、画面内予測部333、動き予測・補償部334、補正部335、選択部336、およびレート制御部337により構成される。
 図25に示したスライス符号化部301は、図6に示した符号化部120と同様の構成を有している。すなわち、図25に示したスライス符号化部301のA/D変換部321乃至レート制御部337は、それぞれ、図6に示した符号化部120のA/D変換部121乃至レート制御部137と同様の機能を有している。よって、ここではその詳細な説明は省略する。
 図25に示したスライス符号化部301は、図6に示した符号化部120と構成は同じであるが、補正部335の内部構成が、図6に示した符号化部120の補正部135と異なる。図26に補正部335の構成を示す。
 図26に示した補正部335は、デプス用補正部341、輝度用補正部32、コスト算出部343、および設定部344から構成されている。これらの各部が行う処理については、フローチャートを参照し後述する。
 図27は、視差と奥行きについて説明するための図である。図27中、C1は、カメラC1が設置されている位置を表し、C2は、カメラC2が設置されている位置を示す。カメラC1とカメラC2により、異なる視点の色画像(カラー画像)を撮影することができるようになされている。またカメラC1とカメラC2は、距離Lだけ離れて設置されている。Mは、撮像対象とされている物体であり、対象物Mと記述する。fは、カメラC1の焦点距離を表す。
 このような関係のとき、次式が満たされる。
 Z=(L/D)×f
この式において、Zは、視差画像(奥行き画像)の被写体の奥行き方向の位置(対象物MとカメラC1(カメラC2)との奥行方向の距離)である。Dは撮影視差ベクトル(のx成分)を表し、視差値を表す。すなわちDは、2つのカメラ間で生じる視差である。具体的には、D(d)は、カメラC1で撮像されたカラー画像上の対象物Mの位置の、カラー画像の中心からの水平方向の距離u1から、カメラC2で撮像されたカラー画像上の対象物Mの位置の、カラー画像の中心からの水平方向の距離u2を減算した値である。上述した式に示すように、視差値Dと位置Zは一意に変換可能である。従って、以下では、視差画像と奥行き画像を総称してデプス画像とする。上述した式の関係が満たされること、特に、視差値Dと奥行き方向の位置Zの関係についてさらに説明を続ける。
 図28と図29は、カメラにより撮像される画像、奥行き、奥行き値の関係について説明するための図である。カメラ401は、筒411、顔412、家413を撮像する。カメラ401に近い側から順に、筒411、顔412、家413が配置されている。このとき、カメラ401に一番近い位置に配置されている筒411の奥行き方向の位置が奥行き方向の位置の世界座標値の最小値Znearに設定され、カメラ401から一番遠い位置に配置されている家413の位置が奥行方向の位置の世界座標値の最大値Zfarに設定される。
 図29は、視点生成用情報の奥行き方向の位置の最小値Znearと最大値Zfarとの関係を説明する図である。図29において、横軸は、正規化前の奥行き方向の位置の逆数であり、縦軸は、デプス画像の画素値である。図29に示すように、各画素の画素値としての奥行き値は、最大値Zfarの逆数と最小値Znearの逆数が用いられて、例えば0乃至255の値に正規化される。そして、0乃至255のいずれかの値である正規化後の各画素の奥行き値を画素値として、デプス画像が生成される。
 図29に示したグラフは、図2に示したグラフに対応している。図29に示したグラフは、視点生成用情報の奥行きの位置の最小値と最大値との関係を示したフラグであり、図2に示したグラフは、視点生成用情報の視差最大値と視差最小値の関係を示したグラフである。
 図2を参照して説明したように、視差画像の各画素の画素値Iは、その画素の正規化前の視差値d、視差最小値Dmin、および視差最大値Dmaxを用いて、式(1)で表された。ここで、再度式(1)を、式(11)として以下に示す。
Figure JPOXMLDOC01-appb-M000009
 また、奥行き画像の各画素の画素値yは、その画素の正規化前の奥行き値1/Z、最小値Znear、および最大値Zfarを用いて、以下の式(13)で表される。なお、ここでは、奥行き値として位置Zの逆数が用いられるものとするが、奥行き値としては位置Zそのものを用いることもできる。
Figure JPOXMLDOC01-appb-M000010
 式(13)からわかるように、デプス画像の画素値yは、最大値Zfarと最小値Znearから算出される値である。この最大値Zfarと最小値Znearは、図28を参照して説明したように、撮像される物体の位置関係に依存して決定される値である。よって、撮像される画像内の物体の位置関係が変わったときには、その変化に応じて最大値Zfarと最小値Znearもそれぞれ変化する。
 ここで、図30を参照し、物体の位置関係が変化したときについて説明する。図30の左側は時刻T0のときのカメラ401で撮像される画像の位置関係を示し、図28に示した位置関係と同様の位置関係を示している。時刻T0から時刻T1に変化したとき、カメラ401の近くに位置していた筒411がなくなり、顔412と家413の位置関係には変化がなかった場合を想定する。
 この場合、時刻T0から時刻T1に変化したときに、最小値Znearは最小値Znear’に変化する。すなわち、時刻T0では、筒411の奥行方向の位置Zが最小値Znearであったのに対して、時刻T1では、筒411がなくなることで、カメラ401から一番近い位置の物体が顔412に変化し、その変化に伴い、最小値Znear(Znear’)の位置が、顔412の位置Zに変化する。
 時刻T0のときの最小値Znearと最大値Zfarの差分(レンジ)を奥行き方向の位置のレンジを示す奥行きレンジAとし、時刻T1のときの最小値Znear’と最大値Zfarの差分(レンジ)を、奥行きレンジBとする。この場合、奥行きレンジAから奥行きレンジBに変化したことになる。ここで、上記したように、式(13)を再度参照するに、奥行き画像の画素値yは、最大値Zfarと最小値Znearから算出される値であるため、このように、奥行きレンジAから奥行きレンジBに変化したときには、そのような値を用いて算出される画素値も変化することになる。
 例えば、図30の左側に、時刻T0の奥行き画像421を示したが、筒411は手前にあるために、筒411の画素値は大きく(明るく)、顔412と家413の画素値は、筒411よりも遠くに位置するため筒411よりも小さい(暗い)。同様に、図30の右側に、時刻T1の奥行き画像522を示したが、筒411が無くなったために、奥行きレンジが小さくなり、奥行き画像421に比べて顔412の画素値が大きく(明るく)なる。これは、上記したように、奥行きレンジが変化するために、同一の位置Zであっても、最大値Zfarと最小値Znearを用いて式(13)により求められる画素値yが変化するからである。
 しかしながら、時刻T0と時刻T1において、顔412の位置は変化していないため、時刻T0と時刻T1において顔412の奥行き画像の画素値に急激な変化がないことが好ましい。すなわち、このように、奥行き方向の位置(距離)の最大値と最小値のレンジが急激に変わると、奥行き方向の位置が同一であっても、奥行き画像の画素値(輝度値)が大幅に変化し、予測が当たらなくなる可能性がある。そこで、このようなことが無いように制御される場合について説明する。
 図31は、図30に示した図と同じである。しかしながら、図31に示した右側に示した時刻T1における物体の位置関係は、カメラ401の手前側に筒411’が位置していると想定し、最小値Znearに変化がないとして処理する。このように処理することで、上記した奥行きレンジAと奥行きレンジBが変化すること無く処理することが可能となる。よって、奥行き方向の距離の最大値と最小値のレンジが急激に変わることを防ぎ、奥行き方向の位置が同一である場合に奥行き画像の画素値(輝度値)が大幅に変化するようなことなく、予測が当たらなくなる可能性を低減させることが可能となる。
 また、図32に示したように、物体の位置関係が変化する場合も想定される。図32に示した物体の位置関係において、図32の左側に示した時刻T0のときの位置関係は、図30や図31に示した場合と同じであり、カメラ401に近い位置から順に、筒411、顔412、家413が位置している場合である。
 このような状態から、時刻T1のときに、顔412がカメラ401の方に移動し、筒411もカメラ401の方に移動した場合、まず、図32に示したように、最小値Znearが最小値Znear’になるため、最大値Zfarとの差分が変化し、奥行きレンジが変化することになる。このような奥行き方向の位置の最大値と最小値のレンジの急激な変化は、図31を参照して説明したように、筒411の位置が変わらないとして処理することで、奥行き方向の位置が同一である場合に奥行き画像の画素値(輝度値)が大幅に変化するようなことを防ぐことが可能である。
 図32に示した場合、顔412もカメラ401方向に移動しているため、顔412の奥行き方向の位置は、時刻T0のときの顔412の奥行き方向の位置よりも小さく(奥行き画像の画素値(輝度値)が高く)なる。しかしながら、上記したような奥行き方向の位置が同一である場合に奥行き画像の画素値(輝度値)が大幅に変化することを防ぐ処理が行われると、顔412の奥行き画像の画素値が奥行き方向の位置に対応する適切な画素値(輝度値)に設定されない可能性がある。そこで、図31を参照して説明したような処理が行われた後に、顔412などの画素値(輝度値)が適切な画素値(輝度値)となるような処理が実行されるようにする。このように、奥行き方向の位置が同一である場合に奥行き画像の画素値が大幅に変化するようなことを防ぐ処理が行われるとともに、適切な画素値(輝度値)となるような処理が行われるようにする。
 このような処理が行われるときのデプス画像の符号化に関わる処理について、図33、図34のフローチャートを参照して説明する。図33、図34は、図24乃至図26に示したスライス符号化部301の視差画像符号化処理の詳細を説明するフローチャートである。この視差画像符号化処理は、視点ごとに行われる。
 図24乃至図26に示したスライス符号化部301は、図5、図6に示したスライス符号化部61と基本的に同様の構成を有するが、補正部335の内部構成が異なると説明した。よって、補正部335が行う処理以外の処理は、基本的に、図5、図6に示したスライス符号化部61と同様な処理、すなわち、図13、図14に示したフローチャートの処理と同様な処理として行われる。ここでは、図13、図14に示したフローチャートで説明した部分と重複する部分に関する説明は省略する。
 図33のステップS300乃至S303、ステップS305乃至S313の処理は、図13のステップS160乃至S163、ステップS166乃至S174の処理と同様に行われる。但し、ステップS305の処理は、図26のコスト算出部343により行われ、ステップS308の処理は、設定部344により行われる。また、図34のステップS314乃至S320の処理は、図14のステップS175乃至S181の処理と同様に行われる。すなわち、ステップS304において実行される予測画像生成処理が、図13に示したフローチャートの処理と異なる以外は、基本的に同一の処理が実行される。
 ここで、ステップS304において実行される予測画像生成処理について、図35のフローチャートを参照して説明する。ステップS331において、デプス用補正部341(図26)は、処理対象のデプス画像の画素値が視差値(ディスパリティ)であるか否かが判断される。
 ステップS331において、処理対象のデプス画像の画素値が視差値であると判断された場合、ステップS332に処理が進められる。ステップS332において、視差値用の補正係数が算出される。視差値用の補正係数は、以下の式(14)で求められる。
Figure JPOXMLDOC01-appb-M000011
 式(14)において、Vref’,Vrefは、それぞれ、補正後の視差画像の予測画像の視差値、補正前の視差画像の予測画像の視差値である。またLcur,Lrefは、それぞれ、符号化対象の視差画像のカメラ間距離、視差画像の予測画像のカメラ間距離である。Fcur,Frefは、それぞれ符号化対象の視差画像の焦点距離、視差画像の予測画像の焦点距離である。Dcurmin,Drefminは、それぞれ、符号化対象の視差画像の視差最小値、視差画像の予測画像の視差最小値である。Dcurmax,Drefmaxは、それぞれ、符号化対象の視差画像の視差最大値、視差画像の予測画像の視差最大値である。
 デプス用補正部341は、視差値用の補正係数として、式(14)のaとbを補正係数として生成する。補正係数aは、ディスパリティの重み係数(ディスパリティ重み係数)であり、補正係数bは、ディスパリティのオフセット(ディスパリティオフセット)である。デプス用補正部341は、このディスパリティ重み係数とディスパリティオフセットから、上記した式(14)に基づき、補正後のデプス画像の予測画像の画素値を算出する。
 ここでの処理は、デプス画像としての視差画像を対象とした、その視差画像の画素値としてのディスパリティを正規化する際に用いる、ディスパリティのレンジを示すディスパリティレンジに基づいて、デプス重み係数としてのディスパリティ重み係数とデプスオフセットとしてのディスパリティオフセットを用いた重み付け予測処理である。ここでは、適宜、デプス重み付け予測処理と記述する。
 一方、ステップS331において、処理対象のデプス画像の画素値が視差値ではないと判断された場合、ステップS333に処理が進められる。ステップS333において、奥行き方向の位置(距離)用の補正係数が算出される。奥行き方向の位置(距離)用の補正係数は、以下の式(15)で求められる。
Figure JPOXMLDOC01-appb-M000012
 式(15)において、Vref’,Vrefは、それぞれ、補正後の奥行き画像の予測画像の画素値、補正前の奥行き画像の予測画像の画素値である。またZcurnear,Zrefnearは、それぞれ、符号化対象の奥行き画像の一番近い被写体の奥行方向の位置(最小値Znear)、奥行き画像の予測画像の一番近い被写体の奥行方向の位置(最小値Znear)である。Zcurfar,Zreffarは、それぞれ、符号化対象の奥行き画像の一番遠い被写体の奥行方向の位置(最大値Zfar)、奥行き画像の予測画像の一番遠い被写体の奥行方向の位置(最大値Zfar)である。
 デプス用補正部341は、奥行き方向の位置用の補正係数として、式(15)のaとbを補正係数として生成する。補正係数aは、奥行き値の重み係数(奥行き重み係数)であり、補正係数bは、奥行き値のオフセット(奥行きオフセット)である。デプス用補正部341は、この奥行き重み係数と奥行きオフセットから、上記した式(15)に基づき、補正後のデプス画像の予測画像の画素値を算出する。
 ここでの処理は、デプス画像としての奥行き画像を対象とした、その奥行き画像の画素値としての奥行き値を正規化する際に用いる奥行きレンジに基づいて、デプス重み係数としての奥行き重み係数とデプスオフセットとしての奥行きオフセットを用いた重み付け予測処理である。ここでは、適宜、デプス重み付け予測処理と記述する。
 このように、処理対象のデプス画像の画素値が視差値(D)であるか、奥行き方向の位置(距離)(Z)を表す奥行き値1/Zであるかにより異なる式が用いられて補正係数が算出される。また補正係数が用いられて、一旦、補正後の予測画像が算出される。ここで、一旦と記載したのは、後段において、輝度値の補正が行われるためである。このようにして補正係数が算出されると、ステップS334に処理が進められる。
 このようにして補正係数が算出された場合、設定部344は、視差値用の補正係数を算出したのか、奥行き方向の位置(距離)用の補正係数を算出したのかを示す情報を生成し、スライスヘッダ符号化部302等を介して復号側に伝送する。
 換言すれば、設定部344は、奥行方向の位置(距離)を表す奥行き値を正規化する際に用いる奥行きレンジに基づいてデプス重み付け予測処理を行うか、または、視差値を正規化する際に用いるディスパリティレンジに基づいてデプス重み付け予測処理を行うかを判断し、その判断に基づき、どちらの予測処理を行ったかを識別するデプス識別データを設定し、そのデプス識別データが、復号側に伝送される。
 このデプス識別データは、設定部344により設定され、スライスヘッダ符号化部302によりスライスヘッダに含まれて送信されるようにすることができる。このようなデプス識別データを符号化側と復号側で共有できるようにすると、復号側において、デプス識別データを参照することで、奥行方向の位置(距離)を表す奥行き値を正規化する際に用いる奥行きレンジに基づいてデプス重み付け予測処理を行うか、または、視差を表す視差値を正規化する際に用いるディスパリティレンジに基づいてデプス重み付け予測処理を行うかを判断することが可能となる。
 また、スライスの種類により補正係数を算出するか否かを判断し、スライスの種類によっては補正係数を算出しないようにしても良い。具体的には、スライスの種類が、Pスライス、SPスライス、Bスライスである場合には、補正係数を算出し(デプス重み付け予測処理を行い)、その他のスライスである場合には、補正係数を算出しないようにしても良い。
 なお、1ピクチャは複数のスライスから構成されるため、スライスの種類により補正係数を算出するか否かを判断する構成は、ピクチャの種類(ピクチャタイプ)により補正係数を算出するか否かを判断するような構成とすることもできる。例えば、ピクチャタイプがBピクチャである場合には、補正係数を算出しないようにすることができる。ここでは、スライスの種類により補正係数が算出されるか否かが決定されるとして説明を続ける。
 Pスライス、SPスライスの場合において、デプス重み付け予測処理を行った場合には、設定部344は、例えば、depth_weighted_pred_flagを1に設定し、デプス重み付け予測処理を行わなかった場合には、設定部344は、depth_weighted_pred_flagを0に設定し、このdepth_weighted_pred_flagが、例えば、スライスヘッダ符号化部302によりスライスヘッダに含まれて送信されるようにしても良い。
 また、Bスライスの場合において、デプス重み付け予測処理を行った場合には、設定部344は、例えば、depth_weighted_bipred_flagを1に設定し、デプス重み付け予測処理を行わなかった(デプス重み付け予測処理をスキップした)場合には、設定部344は、depth_weighted_bipred_flagを0に設定し、このdepth_weighted_bipred_flagが、例えば、スライスヘッダ符号化部302によりスライスヘッダに含まれて送信されるようにしても良い。
 以上により、復号側においては、depth_weighted_pred_flagやdepth_weighted_bipred_flagを参照することで、補正係数を算出する必要があるか否かを判断することができるようになる。換言すれば、復号側において、スライスの種類により補正係数を算出するか否かを判断し、スライスの種類によっては補正係数を算出しないように制御するといった処理を行うことができるようになる。
 ステップS334において、輝度用補正部342により輝度用の補正係数が算出される。輝度用の補正係数は、例えば、AVC方式における輝度補正を適用し、算出することができる。AVC方式における輝度補正も、上記したデプス重み付け予測処理と同じく、重み係数とオフセットを用いた重み付け予測処理が行われることで、補正される。
 すなわち、上記したデプス重み付け予測処理により補正された予測画像が生成され、その補正された予測画像に対して、輝度値を補正するための重み付け予測処理が行われ、デプス画像を符号化する際に用いられる予測画像(デプス予測画像)が生成される。
 この輝度用の補正係数の場合も、補正係数を算出した場合と、算出していない場合とを識別するデータを設定し、復号側に伝送するようにしても良い。例えば、Pスライス、SPスライスの場合において、輝度値の補正係数を算出した場合には、例えば、weighted_pred_flagを1に設定し、輝度値の補正係数を算出しなかった場合には、weighted_pred_flagを0に設定し、このweighted_pred_flagを、例えば、スライスヘッダ符号化部302によりスライスヘッダに含まれて送信されるようにしても良い。
 また、Bスライスの場合において、輝度値の補正係数を算出した場合には、例えば、weighted_bipred_flagを1に設定し、輝度値の補正係数を算出しなかった場合には、weighted_bipred_flagを0に設定し、このweighted_bipred_flagを、例えば、スライスヘッダ符号化部302によりスライスヘッダに含まれて送信されるようにしても良い。
 このように、まず、ステップS332またはステップS333において、正規化のずれを直し、同一の座標系に変換する効果を得てから、ステップS334において、輝度のずれを直す処理が実行される。仮に、先に輝度を直してから、正規化のずれを直す処理を実行するようにすると、最小値Znearと最大値Zfarの関係性が崩れてしまい、適切に正規化のずれを直すことができない可能性がある。よって、先に正規化のずれを直し、その後、輝度のずれを直すのが良い。
 なおここでは、正規化のずれを直すデプス重み付け予測処理と、輝度値を補正する重み付け予測処理が行われるとして説明をしたが、どちらか一方のみの予測処理が行われるように構成することも可能である。
 このようにして、補正係数が算出されると、ステップS335に処理が進められる。ステップS335において輝度用補正部342により予測画像が生成される。この予測画像の生成は、既に説明したので、その説明は省略する。また生成されたデプス予測画像を用いてデプス画像が符号化されて、符号化データ(デプスストリーム)が生成され、復号側に伝送される。
 このようにして生成された画像を受け取り処理する復号装置について説明する。
 <スライス復号部の構成>
 図36は、多視点画像復号部151(図15)を構成するスライスヘッダ復号部173とスライス復号部174(図16)を抜き出した図である。図36では、図16に示したスライスヘッダ復号部173、スライス復号部174と区別が付けるために、異なる符号を付して説明するが、基本的な処理は、図5に示したスライスヘッダ復号部173とスライス復号部174と同様であるので、その説明は適宜省略する。
 スライス復号部552は、スライスヘッダ復号部551から供給されるSPS,PPS、およびスライスヘッダのカメラ間距離、視差最大値、および視差最小値に関する情報以外に基づいて、スライス符号化部301(図24)における符号化方式に対応する方式で、スライス単位の多重化カラー画像の符号化データを復号する。
 また、スライス復号部552は、SPS,PPS、スライスヘッダのカメラ間距離、視差最大値、および視差最小値関する情報以外、並びに、カメラ間距離、視差最大値、および視差最小値に基づいて、スライス符号化部301(図24)における符号化方式に対応する方式で、スライス単位の多重化視差画像(多重化デプス画像)の符号化データを復号する。スライス復号部552は、復号の結果得られる多視点補正カラー画像と多視点視差画像を、図15の視点合成部152に供給する。
 図37は、図35のスライス復号部552のうちの任意の1視点のデプス画像を復号する復号部の構成例を示すブロック図である。即ち、スライス復号部532のうちの多視点視差画像を復号する復号部は、視点数分の図37のスライス復号部552により構成される。
 図37のスライス復号部552は、蓄積バッファ571、可逆復号部572、逆量子化部573、逆直交変換部574、加算部575、デブロックフィルタ576、画面並べ替えバッファ577、D/A変換部578、フレームメモリ579、画面内予測部580、動きベクトル生成部581、動き補償部582、補正部583、およびスイッチ584により構成される。
 図37に示したスライス復号部552は、図17に示した復号部250と同様の構成を有している。すなわち、図37に示したスライス復号部552の蓄積バッファ571乃至スイッチ584は、それぞれ、図17に示した蓄積バッファ251乃至スイッチ534と同様の機能を有している。よってここではその詳細な説明は省略する。
 図37に示したスライス復号部552と、図17に示した復号部250は、同様の構成を有しているが補正部583の内部構成が、図17に示した補正部263と異なる。図38に、補正部583の構成を示す。
 図38に示した補正部583は、選択部601、設定部602、デプス用補正部603、および輝度用補正部604から構成されている。これらの各部が行う処理については、フローチャートを参照し説明する。
 図39は、デプス画像の復号処理に関わる処理について説明するためのフローチャートである。すなわち、上述した符号化側の処理で、所定の視点のデプス画像に関する情報を用いて補正された所定の視点のデプス画像のデプス予測画像を用いて符号化された所定の視点のデプス画像のデプスストリームと、所定の視点のデプス画像に関する情報とを受け取る側において実行される処理について説明する。
 図39は、図36乃至図38に示したスライス復号部552の視差画像復号処理の詳細を説明するフローチャートである。この視差画像復号処理は、視点ごとに行われる。
 図39に示したスライス復号部552は、図16、図17に示したスライス復号部174と基本的に同様の構成を有するが、補正部583の内部構成が異なると説明した。よって、補正部583が行う処理以外の処理は、基本的に、図16、図17に示したスライス復号部532と同様な処理、すなわち、図20に示したフローチャートの処理と同様な処理として行われる。ここでは、図20に示したフローチャートで説明した部分と重複する部分に関する説明は省略する。
 図39のステップS351乃至S357、ステップS359乃至S364の処理は、図20のステップS261乃至S267、ステップS270乃至S275の処理と同様に行われる。すなわち、ステップS358において実行される予測画像生成処理が、図20に示したフローチャートの処理と異なる以外は、基本的に同一の処理が実行される。
 ここで、ステップS358において実行される予測画像生成処理について、図40のフローチャートを参照して説明する。
 ステップS371において、処理対象のスライスがPスライスまたはSPスライスであるかが判断される。ステップS371において、処理対象のスライスがPスライスまたはSPスライスであると判断された場合、ステップS372に処理が進められる。ステップS372において、depth_weighted_pred_flag=1であるか否かが判断される。
 ステップS372において、depth_weighted_pred_flag=1であると判断された場合、ステップS373に処理が進められ、ステップS372において、depth_weighted_pred_flag=1ではないと判断された場合、ステップS373乃至S375の処理はスキップされ、ステップS376に処理が進められる。
 ステップS373において、処理対象のデプス画像の画素値が視差値であるか否かが判断される。ステップS373において、処理対象のデプス画像の画素値が視差値であると判断された場合、ステップS374に処理が進められる。
 ステップS374において、デプス用補正部603により、視差値用の補正係数が算出される。デプス用補正部603は、図26のデプス用補正部341と同様に、視差最大値、視差最小値、およびカメラ間距離に基づいて、補正係数(ディスパリティ重み係数とディスパリティオフセット)を算出する。補正係数が算出されると、一旦、補正後の予測画像を算出する。ここで“一旦”と記載したのは、符号化側と同じく、後段処理でさらに輝度値を補正するため、復号に用いる最終的な予測画像ではないからである。
 一方、ステップS373において、処理対象のデプス画像の画素値は視差値ではないと判断された場合、ステップS375に処理が進められる。この場合、処理対象のデプス画像の画素値は、奥行き方向の位置(距離)を表す奥行き値であるため、ステップS375において、デプス用補正部603は、図26のデプス用補正部341と同様に、奥行き方向の位置(距離)の最大値、最小値に基づいて、補正係数(奥行き重み係数と奥行きオフセット)を算出する。補正係数が算出されると、一旦、補正後の予測画像を算出する。ここで“一旦”と記載したのは、符号化側と同じく、後段処理でさらに輝度値を補正するため、復号に用いる最終的な予測画像ではないからである。
 ステップS374またはステップS375において、補正係数が算出された場合、またはステップS372において、depth_weighted_pred_flag=1ではないと判断された場合、ステップS376に処理が進められる。
 ステップS376において、weighted_pred_flag=1であるか否かが判断される。ステップS376において、weighted_pred_flag=1であると判断された場合、ステップS377に処理が進められる。ステップS377において、輝度用補正部604により、輝度用の補正係数が算出される。輝度用補正部604は、図26の輝度用補正部342と同様に、所定の方式に基づき算出された輝度用の補正係数を算出する。この算出された補正係数が用いられて、輝度値が補正された予測画像が算出される。
 このようにして、輝度用の補正係数が算出された場合、または、ステップS376において、weighted_pred_flag=1ではないと判断された場合、ステップS385に処理が進められる。ステップS385において、算出された補正係数などが用いられ、予測画像が生成される。
 一方、ステップS371において、処理対象のスライスがPスライスまたはSPスライスではないと判断された場合、ステップS378に処理が進められ、処理対象のスライスが、Bスライスであるか否かが判断される。ステップS378において、処理対象のスライスが、Bスライスであると判断された場合、ステップS379に処理が進められ、Bスライスではないと判断された場合、ステップS385に処理が進められる。
 ステップS379において、depth_weighted_bipred_flag=1であるか否かが判断される。ステップS379において、depth_weighted_bipred_flag=1であると判断された場合、ステップS380に処理が進められ、depth_weighted_bipred_flag=1ではないと判断された場合、ステップS380乃至S382の処理はスキップされ、ステップS383に処理が進められる。
 ステップS380において、処理対象のデプス画像の画素値が視差値であるか否かが判断される。ステップS380において、処理対象のデプス画像の画素値が視差値であると判断された場合、ステップS381に処理が進められ、デプス用補正部603により、視差値用の補正係数が算出される。デプス用補正部603は、図26のデプス用補正部341と同様に、視差最大値、視差最小値、およびカメラ間距離に基づいて、補正係数を算出する。この算出された補正係数が用いられて、補正された予測画像が算出される。
 一方、ステップS380において、処理対象のデプス画像の画素値が視差値ではないと判断された場合、ステップS382に処理が進められる。この場合、処理対象のデプス画像の画素値は、奥行き方向の位置(距離)を表す奥行き値であるため、ステップS382において、デプス用補正部603は、図26のデプス用補正部341と同様に、奥行き方向の位置(距離)の最大値、最小値に基づいて、補正係数を算出する。この算出された補正係数が用いられて、補正された予測画像が算出される。
 ステップS381またはステップS382において、補正係数が算出された場合、またはステップS379において、depth_weighted_bipred_flag=1ではないと判断された場合、ステップS383に処理が進められる。
 ステップS383において、weighted_bipred_idc=1であるか否かが判断される。ステップS383において、weighted_bipred_idc=1であると判断された場合、ステップS383に処理が進められる。ステップS383において、輝度用補正部604により、輝度用の補正係数が算出される。輝度用補正部604は、図26の輝度用補正部342と同様に、所定の方式、例えばAVC方式に基づき算出された輝度用の補正係数を算出する。この算出された補正係数が用いられて、輝度値が補正された予測画像が算出される。
 このようにして、輝度用の補正係数が算出された場合、ステップS383において、weighted_bipred_idc=1ではないと判断された場合、またはステップS378において、処理対象のスライスがBスライスではないと判断された場合、ステップS385に処理が進められる。ステップS385において、算出された補正係数などが用いられ、予測画像が生成される。
 このようにして、ステップS358(図39)における予測画像生成処理が実行されると、ステップS360に処理が進められる。ステップS360以降の処理は、図20のステップS271以降の処理と同様に行われ、その説明は既にしたので、ここでは省略する。
 このように、処理対象のデプス画像の画素値が視差値である場合と、視差値でない場合とで、視差値用の補正係数と奥行き方向の位置(距離)用の補正係数を、それぞれ算出するようにしたことで、予測画像が視差値から生成される場合と、奥行き方向の位置を表す奥行き値から生成される場合とで適切に対応することができ、適切な補正係数を算出することが可能となる。また、輝度用の補正係数も算出するようにすることで、輝度補正も適切に行うことが可能となる。
 なおここでは、処理対象のデプス画像の画素値が視差値である場合と、視差値でない場合(奥行き値である場合)とで、視差値用の補正係数と奥行き方向の位置(距離)用の補正係数が、それぞれ算出されるとして説明したが、どちらか一方が算出されるようにしても良い。例えば、符号化側と復号側で、処理対象のデプス画像の画素値としては視差値を用い、視差値用の補正係数が算出されると設定されている場合には、視差値用の補正係数だけが算出されれば良い。また例えば、符号化側と復号側で、処理対象のデプス画像の画素値としては奥行方向の位置(距離)を表す奥行き値を用い、奥行き方向の位置(距離)用の補正係数が算出されると設定されている場合には、奥行方向の位置(距離)用の補正係数だけが算出されれば良い。
 <演算精度1について>
上記したように、符号化側は、例えば、ステップS333(図35)において奥行き方向の位置用の補正係数を算出し、復号側は、例えば、ステップS375(図40)において、奥行き方向の位置用の補正係数を算出する。このように、符号化側と復号側は、奥行き方向の位置用の補正係数をそれぞれ算出するが、この算出される補正係数は、同じでなければ、異なる予測画像が生成されることになるため、符号化側と復号側で同一の補正係数が算出される必要がある。換言すれば、符号化側と復号側で、演算精度が同一である必要がある。
 なおここでは、奥行き方向の位置(距離)用の補正係数を例にあげて説明を続けるが、視差値用の補正係数についても同様である。
 ここで、奥行き方向の位置用の補正係数を算出する際に用いられる式(15)を、式(16)として再度以下に示す。
Figure JPOXMLDOC01-appb-M000013
 この式(16)のうち、補正係数aの部分を、以下の式(17)のように表す。
Figure JPOXMLDOC01-appb-M000014
 式(17)におけるA,B,C,Dは、それぞれ固定小数点化された値とするために、以下の式(18)から算出される。
 A=INT({1<<shift}/Zrefnear
 B=INT({1<<shift}/Zreffar
 C=INT({1<<shift}/Zcurnear
 D=INT({1<<shift}/Zcurfar)   ・・・(18)
 式(17)において、Aは、(1/Zrefnear)であるが、(1/Zrefnear)は小数点以下の数値を含む値になる可能性がある。仮に、小数点以下の値を含むときに、小数点以下を切り捨てるなどの処理が行われた場合、その切り捨てられた小数点以下の数値により、符号化側と復号側で演算精度に違いが出る可能性がある。
 例えば、整数部分が大きな値の場合には、仮に小数点以下の数値を切り捨てたとしても、数値全体に占める小数点以下の数値の割合は小さいため、さほど演算精度に誤差はでないが、整数部分が小さな値の場合、例えば整数部分が0であるような場合には、小数点以下の数値が重要であり、そのような小数点以下の数値を切り捨てると演算精度に誤差がでる可能性がある。
 そこで、上記したように、固定小数点化することで、小数点以下の数値が重要である場合に、その小数点以下の数値が切り捨てられることがないように制御することが可能となる。また、上記したA,B,C,Dは、それぞれ固定小数点化されるが、これらの値から算出される補正係数aも、以下の式(19)が満たされるような値とされる。
 a={(A-B)<<denom}/(C-D)   ・・・(19)
式(19)において、denomとしては、AVCで定義されているluma_log2_weight_denomを用いることができる。
 例えば、1/Zの値が、0.12345であった場合に、Mbit shiftした後、INTに丸めて整数として扱われる場合、以下のようになる。
 0.12345 → ×1000INT(123.45)=123
この場合、1000が乗算された値である123.45のINTが算出されることで、123という整数値が1/Zの値として用いられる。またこの場合、×1000という情報が符号化側と復号側で共有されれば、演算精度をマッチさせることが可能となる。
 このように、浮動小数が入ってきた場合には、固定小数に変換し、固定小数からさらに整数へと変換される。固定小数は、例えば、整数Mbit、小数Nbitで表され、MとNは規格により設定される。また、整数は、例えば、整数部N桁、小数部M桁とされ、整数値a、小数値bとされる。例えば、12.25の場合、N=4、M=2、a=1100、b=0.01となる。またこのとき、(a<<M+b)=110001となる。
 このように、補正係数aの部分は、式(18)と式(19)に基づいて算出されるようにしても良い。そして、このshiftとdenomの値を、符号化側と復号側で共有するように構成すれば、符号化側と復号側で演算精度を合わせることが可能となる。共有の方法として、符号化側から復号側にshiftとdenomの値を供給することで、実現できる。また、符号化側と復号側で、同一のshiftとdenomの値を使うと設定、換言すれば固定値として設定されているようにすることで、実現できる。
 ここでは、補正係数aの部分を例にあげて説明したが、補正係数bの部分も同様に算出されるようにしても良い。また、上記したshiftは、位置Zの精度以上とするようにしても良い。すなわち、shiftで乗算される値が、位置Zの値より大きいようになるように、shiftが設定されているようにしても良い。さらに換言すれば、位置Zの精度が、shiftの精度以下に設定されるようにしても良い。
 また、shiftやdenomを伝送する場合、depth_weighted_pred_flagとともに伝送するようにしても良い。ここでは、補正係数aと補正係数b、換言すれば、位置Zの重み係数とオフセットが、符号化側と復号側で共有されるとして説明したが、さらに、演算順序も設定され、共有されるようにしても良い。
 このような演算精度を設定する設定部を、デプス用補正部341(図26)が備えるように構成することが可能である。そのようにした場合、デプス用補正部341は、デプス画像を対象として、デプス重み係数とデプスオフセットを用いたデプス重み付け予測処理を行う際に、その演算に用いる演算精度を設定するように構成することができる。また、上記したように、デプス用補正部341は、設定された演算精度に従って、デプス画像に対してデプス重み付け予測処理を行い、その結果得られるデプス予測画像を用いて、デプス画像を符号化してデプスストリームを生成するように構成されるようにすることができる。
 演算の順序が異なると、同一の補正係数が算出されない可能性があるため、演算順序も符号化側と復号側で共有されるようにしても良い。またその共有の仕方は、上記した場合と同じく、伝送されることで共有されるようにしても良いし、固定値として設定されているようにすることで共有されるようにしても良い。
 また、シフト演算のシフト量を示すシフトパラメータを設定し、生成されたデプスストリームとともに、設定されたシフトパラメータが伝送、受け取りされるようにしても良い。シフトパラメータは、シーケンス単位で固定、GOP、Picture(ピクチャ)、Slice(スライス)単位で可変とするようにしても良い。
 <演算精度2について>
 上記した式(16)における補正係数aの部分を変形すると、以下の式(20)で表すことができる。
Figure JPOXMLDOC01-appb-M000015
 この式(20)において、分子の(Zcurnear×Zcurfar)、分母の(Zrefnear×Zreffar)は、Z同士を乗算しているため、オーバーフローする可能性がある。例えば、32bit上限とし、denom=5とした場合、残り27bitとなるため、このような設定がされていたときには、13bit×13bitが限界となる。よってこの場合、Zの値としては、±4096までしか使えないことになるが、Zの値としては、例えば、1万といった4096よりも大きな値が用いられることも想定される。
 よって、Z×Zの部分がオーバーフローしないように制御し、かつZの値の範囲を広げるために、式(20)により補正係数aを算出する場合、以下の式(21)が満たされるZの値にすることで、補正係数aが算出されるようにする。
 Znear = Znear << x
 Zfar  = Zfar  <<y   ・・・(21)
この式(21)が満たされるように、ZnearとZfarの精度をshiftで下げて、オーバーフローしないように制御される。
 このxやyといったshift量は、上記した場合と同じく、符号化側から復号側に伝送されることで、共有されるようにしても良いし、固定値として、符号化側と復号側で共有するようにしても良い。
 補正係数a,bに用いる情報、精度に関する情報(シフト量)は、スライスヘッダに含まれてもよいし、SPSやPPS等のNAL(Network Abstraction Layer)ユニットに含まれるようにしてもよい。
 <第2実施の形態>
 [本技術を適用したコンピュータの説明]
 次に、上述した一連の処理は、ハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、汎用のコンピュータ等にインストールされる。
 そこで、図41は、上述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施の形態の構成例を示している。
 プログラムは、コンピュータに内蔵されている記録媒体としての記憶部808やROM(Read Only Memory)802に予め記録しておくことができる。
 あるいはまた、プログラムは、リムーバブルメディア811に格納(記録)しておくことができる。このようなリムーバブルメディア811は、いわゆるパッケージソフトウエアとして提供することができる。ここで、リムーバブルメディア811としては、例えば、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory),MO(Magneto Optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリ等がある。
 なお、プログラムは、上述したようなリムーバブルメディア811からドライブ810を介してコンピュータにインストールする他、通信網や放送網を介して、コンピュータにダウンロードし、内蔵する記憶部808にインストールすることができる。すなわち、プログラムは、例えば、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、コンピュータに無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送することができる。
 コンピュータは、CPU(Central Processing Unit)801を内蔵しており、CPU801には、バス804を介して、入出力インタフェース805が接続されている。
 CPU801は、入出力インタフェース805を介して、ユーザによって、入力部806が操作等されることにより指令が入力されると、それに従って、ROM802に格納されているプログラムを実行する。あるいは、CPU801は、記憶部808に格納されたプログラムを、RAM(Random Access Memory)803にロードして実行する。
 これにより、CPU801は、上述したフローチャートにしたがった処理、あるいは上述したブロック図の構成により行われる処理を行う。そして、CPU801は、その処理結果を、必要に応じて、例えば、入出力インタフェース805を介して、出力部807から出力、あるいは、通信部809から送信、さらには、記憶部808に記録等させる。
 なお、入力部806は、キーボードや、マウス、マイク等で構成される。また、出力部807は、LCD(Liquid Crystal Display)やスピーカ等で構成される。
 ここで、本明細書において、コンピュータがプログラムに従って行う処理は、必ずしもフローチャートとして記載された順序に沿って時系列に行われる必要はない。すなわち、コンピュータがプログラムに従って行う処理は、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)も含む。
 また、プログラムは、1のコンピュータ(プロセッサ)により処理されるものであっても良いし、複数のコンピュータによって分散処理されるものであっても良い。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであっても良い。
 本技術は、衛星放送、ケーブルTV(テレビジョン)、インターネット、および携帯電話機などのネットワークメディアを介して通信する際に、あるいは、光、磁気ディスク、およびフラッシュメモリのような記憶メディア上で処理する際に用いられる符号化装置および復号装置に適用することができる。
 また、上述した符号化装置および復号装置は、任意の電子機器に適用することができる。以下にその例について説明する。
 <第3実施の形態>
 [テレビジョン装置の構成例]
 図42は、本技術を適用したテレビジョン装置の概略構成を例示している。テレビジョン装置900は、アンテナ901、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、表示部906、音声信号処理部907、スピーカ908、外部インタフェース部909を有している。さらに、テレビジョン装置900は、制御部910、ユーザインタフェース部911等を有している。
 チューナ902は、アンテナ901で受信された放送波信号から所望のチャンネルを選局して復調を行い、得られた符号化ビットストリームをデマルチプレクサ903に出力する。
 デマルチプレクサ903は、符号化ビットストリームから視聴対象である番組の映像や音声のパケットを抽出して、抽出したパケットのデータをデコーダ904に出力する。また、デマルチプレクサ903は、EPG(Electronic Program Guide)等のデータのパケットを制御部910に供給する。なお、スクランブルが行われている場合、デマルチプレクサ等でスクランブルの解除を行う。
 デコーダ904は、パケットの復号化処理を行い、復号処理化によって生成された映像データを映像信号処理部905、音声データを音声信号処理部907に出力する。
 映像信号処理部905は、映像データに対して、ノイズ除去やユーザ設定に応じた映像処理等を行う。映像信号処理部905は、表示部906に表示させる番組の映像データや、ネットワークを介して供給されるアプリケーションに基づく処理による画像データなどを生成する。また、映像信号処理部905は、項目の選択などのメニュー画面等を表示するための映像データを生成し、それを番組の映像データに重畳する。映像信号処理部905は、このようにして生成した映像データに基づいて駆動信号を生成して表示部906を駆動する。
 表示部906は、映像信号処理部905からの駆動信号に基づき表示デバイス(例えば液晶表示素子等)を駆動して、番組の映像などを表示させる。
 音声信号処理部907は、音声データに対してノイズ除去などの所定の処理を施し、処理後の音声データのD/A変換処理や増幅処理を行いスピーカ908に供給することで音声出力を行う。
 外部インタフェース部909は、外部機器やネットワークと接続するためのインタフェースであり、映像データや音声データ等のデータ送受信を行う。
 制御部910にはユーザインタフェース部911が接続されている。ユーザインタフェース部911は、操作スイッチやリモートコントロール信号受信部等で構成されており、ユーザ操作に応じた操作信号を制御部910に供給する。
 制御部910は、CPU(Central Processing Unit)やメモリ等を用いて構成されている。メモリは、CPUにより実行されるプログラムやCPUが処理を行う上で必要な各種のデータ、EPGデータ、ネットワークを介して取得されたデータ等を記憶する。メモリに記憶されているプログラムは、テレビジョン装置900の起動時などの所定タイミングでCPUにより読み出されて実行される。CPUは、プログラムを実行することで、テレビジョン装置900がユーザ操作に応じた動作となるように各部を制御する。
 なお、テレビジョン装置900では、チューナ902、デマルチプレクサ903、映像信号処理部905、音声信号処理部907、外部インタフェース部909等と制御部910を接続するためバス912が設けられている。
 このように構成されたテレビジョン装置では、デコーダ904に本願の復号装置(復号方法)の機能が設けられる。このため、視差画像に関する情報を用いて符号化することにより符号化効率が改善された視差画像の符号化データを復号することができる。
 <第4実施の形態>
 [携帯電話機の構成例]
 図43は、本技術を適用した携帯電話機の概略構成を例示している。携帯電話機920は、通信部922、音声コーデック923、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、制御部931を有している。これらは、バス933を介して互いに接続されている。
 また、通信部922にはアンテナ921が接続されており、音声コーデック923には、スピーカ924とマイクロホン925が接続されている。さらに制御部931には、操作部932が接続されている。
 携帯電話機920は、音声通話モードやデータ通信モード等の各種モードで、音声信号の送受信、電子メールや画像データの送受信、画像撮影、またはデータ記録等の各種動作を行う。
 音声通話モードにおいて、マイクロホン925で生成された音声信号は、音声コーデック923で音声データへの変換やデータ圧縮が行われて通信部922に供給される。通信部922は、音声データの変調処理や周波数変換処理等を行い、送信信号を生成する。また、通信部922は、送信信号をアンテナ921に供給して図示しない基地局へ送信する。また、通信部922は、アンテナ921で受信した受信信号の増幅や周波数変換処理および復調処理等を行い、得られた音声データを音声コーデック923に供給する。音声コーデック923は、音声データのデータ伸張やアナログ音声信号への変換を行いスピーカ924に出力する。
 また、データ通信モードにおいて、メール送信を行う場合、制御部931は、操作部932の操作によって入力された文字データを受け付けて、入力された文字を表示部930に表示する。また、制御部931は、操作部932におけるユーザ指示等に基づいてメールデータを生成して通信部922に供給する。通信部922は、メールデータの変調処理や周波数変換処理等を行い、得られた送信信号をアンテナ921から送信する。また、通信部922は、アンテナ921で受信した受信信号の増幅や周波数変換処理および復調処理等を行い、メールデータを復元する。このメールデータを、表示部930に供給して、メール内容の表示を行う。
 なお、携帯電話機920は、受信したメールデータを、記録再生部929で記憶媒体に記憶させることも可能である。記憶媒体は、書き換え可能な任意の記憶媒体である。例えば、記憶媒体は、RAMや内蔵型フラッシュメモリ等の半導体メモリ、ハードディスク、磁気ディスク、光磁気ディスク、光ディスク、USBメモリ、またはメモリカード等のリムーバブルメディアである。
 データ通信モードにおいて画像データを送信する場合、カメラ部926で生成された画像データを、画像処理部927に供給する。画像処理部927は、画像データの符号化処理を行い、符号化データを生成する。
 多重分離部928は、画像処理部927で生成された符号化データと、音声コーデック923から供給された音声データを所定の方式で多重化して通信部922に供給する。通信部922は、多重化データの変調処理や周波数変換処理等を行い、得られた送信信号をアンテナ921から送信する。また、通信部922は、アンテナ921で受信した受信信号の増幅や周波数変換処理および復調処理等を行い、多重化データを復元する。この多重化データを多重分離部928に供給する。多重分離部928は、多重化データの分離を行い、符号化データを画像処理部927、音声データを音声コーデック923に供給する。画像処理部927は、符号化データの復号化処理を行い、画像データを生成する。この画像データを表示部930に供給して、受信した画像の表示を行う。音声コーデック923は、音声データをアナログ音声信号に変換してスピーカ924に供給して、受信した音声を出力する。
 このように構成された携帯電話装置では、画像処理部927に本願の符号化装置および復号装置(符号化方法および復号方法)の機能が設けられる。このため、視差画像に関する情報を用いて視差画像の符号化効率を改善することができる。また、視差画像に関する情報を用いて符号化することにより符号化効率が改善された視差画像の符号化データを復号することができる。
 <第5実施の形態>
 [記録再生装置の構成例]
 図44は、本技術を適用した記録再生装置の概略構成を例示している。記録再生装置940は、例えば受信した放送番組のオーディオデータとビデオデータを、記録媒体に記録して、その記録されたデータをユーザの指示に応じたタイミングでユーザに提供する。また、記録再生装置940は、例えば他の装置からオーディオデータやビデオデータを取得し、それらを記録媒体に記録させることもできる。さらに、記録再生装置940は、記録媒体に記録されているオーディオデータやビデオデータを復号して出力することで、モニタ装置等において画像表示や音声出力を行うことができるようにする。
 記録再生装置940は、チューナ941、外部インタフェース部942、エンコーダ943、HDD(Hard Disk Drive)部944、ディスクドライブ945、セレクタ946、デコーダ947、OSD(On-Screen Display)部948、制御部949、ユーザインタフェース部950を有している。
 チューナ941は、図示しないアンテナで受信された放送信号から所望のチャンネルを選局する。チューナ941は、所望のチャンネルの受信信号を復調して得られた符号化ビットストリームをセレクタ946に出力する。
 外部インタフェース部942は、IEEE1394インタフェース、ネットワークインタフェース部、USBインタフェース、フラッシュメモリインタフェース等の少なくともいずれかで構成されている。外部インタフェース部942は、外部機器やネットワーク、メモリカード等と接続するためのインタフェースであり、記録する映像データや音声データ等のデータ受信を行う。
 エンコーダ943は、外部インタフェース部942から供給された映像データや音声データが符号化されていないとき所定の方式で符号化を行い、符号化ビットストリームをセレクタ946に出力する。
 HDD部944は、映像や音声等のコンテンツデータ、各種プログラムやその他のデータ等を内蔵のハードディスクに記録し、また再生時等にそれらを当該ハードディスクから読み出す。
 ディスクドライブ945は、装着されている光ディスクに対する信号の記録および再生を行う。光ディスク、例えばDVDディスク(DVD-Video、DVD-RAM、DVD-R、DVD-RW、DVD+R、DVD+RW等)やBlu-rayディスク等である。
 セレクタ946は、映像や音声の記録時には、チューナ941またはエンコーダ943からのいずれかの符号化ビットストリームを選択して、HDD部944やディスクドライブ945のいずれかに供給する。また、セレクタ946は、映像や音声の再生時に、HDD部944またはディスクドライブ945から出力された符号化ビットストリームをデコーダ947に供給する。
 デコーダ947は、符号化ビットストリームの復号化処理を行う。デコーダ947は、復号処理化を行うことにより生成された映像データをOSD部948に供給する。また、デコーダ947は、復号処理化を行うことにより生成された音声データを出力する。
 OSD部948は、項目の選択などのメニュー画面等を表示するための映像データを生成し、それをデコーダ947から出力された映像データに重畳して出力する。
 制御部949には、ユーザインタフェース部950が接続されている。ユーザインタフェース部950は、操作スイッチやリモートコントロール信号受信部等で構成されており、ユーザ操作に応じた操作信号を制御部949に供給する。
 制御部949は、CPUやメモリ等を用いて構成されている。メモリは、CPUにより実行されるプログラムやCPUが処理を行う上で必要な各種のデータを記憶する。メモリに記憶されているプログラムは、記録再生装置940の起動時などの所定タイミングでCPUにより読み出されて実行される。CPUは、プログラムを実行することで、記録再生装置940がユーザ操作に応じた動作となるように各部を制御する。
 このように構成された記録再生装置では、デコーダ947に本願の復号装置(復号方法)の機能が設けられる。このため、視差画像に関する情報を用いて符号化することにより符号化効率が改善された視差画像の符号化データを復号することができる。
 <第6実施の形態>
 [撮像装置の構成例]
 図45は、本技術を適用した撮像装置の概略構成を例示している。撮像装置960は、被写体を撮像し、被写体の画像を表示部に表示させたり、それを画像データとして、記録媒体に記録する。
 撮像装置960は、光学ブロック961、撮像部962、カメラ信号処理部963、画像データ処理部964、表示部965、外部インタフェース部966、メモリ部967、メディアドライブ968、OSD部969、制御部970を有している。また、制御部970には、ユーザインタフェース部971が接続されている。さらに、画像データ処理部964や外部インタフェース部966、メモリ部967、メディアドライブ968、OSD部969、制御部970等は、バス972を介して接続されている。
 光学ブロック961は、フォーカスレンズや絞り機構等を用いて構成されている。光学ブロック961は、被写体の光学像を撮像部962の撮像面に結像させる。撮像部962は、CCDまたはCMOSイメージセンサを用いて構成されており、光電変換によって光学像に応じた電気信号を生成してカメラ信号処理部963に供給する。
 カメラ信号処理部963は、撮像部962から供給された電気信号に対してニー補正やガンマ補正、色補正等の種々のカメラ信号処理を行う。カメラ信号処理部963は、カメラ信号処理後の画像データを画像データ処理部964に供給する。
 画像データ処理部964は、カメラ信号処理部963から供給された画像データの符号化処理を行う。画像データ処理部964は、符号化処理を行うことにより生成された符号化データを外部インタフェース部966やメディアドライブ968に供給する。また、画像データ処理部964は、外部インタフェース部966やメディアドライブ968から供給された符号化データの復号化処理を行う。画像データ処理部964は、復号化処理を行うことにより生成された画像データを表示部965に供給する。また、画像データ処理部964は、カメラ信号処理部963から供給された画像データを表示部965に供給する処理や、OSD部969から取得した表示用データを、画像データに重畳させて表示部965に供給する。
 OSD部969は、記号、文字、または図形からなるメニュー画面やアイコンなどの表示用データを生成して画像データ処理部964に出力する。
 外部インタフェース部966は、例えば、USB入出力端子などで構成され、画像の印刷を行う場合に、プリンタと接続される。また、外部インタフェース部966には、必要に応じてドライブが接続され、磁気ディスク、光ディスク等のリムーバブルメディアが適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて、インストールされる。さらに、外部インタフェース部966は、LANやインターネット等の所定のネットワークに接続されるネットワークインタフェースを有する。制御部970は、例えば、ユーザインタフェース部971からの指示にしたがって、メモリ部967から符号化データを読み出し、それを外部インタフェース部966から、ネットワークを介して接続される他の装置に供給させることができる。また、制御部970は、ネットワークを介して他の装置から供給される符号化データや画像データを、外部インタフェース部966を介して取得し、それを画像データ処理部964に供給したりすることができる。
 メディアドライブ968で駆動される記録メディアとしては、例えば、磁気ディスク、光磁気ディスク、光ディスク、または半導体メモリ等の、読み書き可能な任意のリムーバブルメディアが用いられる。また、記録メディアは、リムーバブルメディアとしての種類も任意であり、テープデバイスであってもよいし、ディスクであってもよいし、メモリカードであってもよい。もちろん、非接触ICカード等であってもよい。
 また、メディアドライブ968と記録メディアを一体化し、例えば、内蔵型ハードディスクドライブやSSD(Solid State Drive)等のように、非可搬性の記憶媒体により構成されるようにしてもよい。
 制御部970は、CPUやメモリ等を用いて構成されている。メモリは、CPUにより実行されるプログラムやCPUが処理を行う上で必要な各種のデータ等を記憶する。メモリに記憶されているプログラムは、撮像装置960の起動時などの所定タイミングでCPUにより読み出されて実行される。CPUは、プログラムを実行することで、撮像装置960がユーザ操作に応じた動作となるように各部を制御する。
 このように構成された撮像装置では、画像データ処理部964に本願の符号化装置および復号装置(符号化方法および復号方法)の機能が設けられる。このため、視差画像に関する情報を用いて視差画像の符号化効率を改善することができる。また、視差画像に関する情報を用いて符号化することにより符号化効率が改善された視差画像の符号化データを復号することができる。
 本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
 なお、本技術は、以下のような構成もとることができる。
 (1)
 デプス画像を対象として、前記デプス画像の画素値としての奥行き方向の位置を表す奥行き値を正規化する際に用いる、前記奥行き方向の位置のレンジを示す奥行きレンジに基づいて、デプス重み係数とデプスオフセットを用いたデプス重み付け予測処理を行うデプス動き予測部と、
 前記デプス動き予測部による前記デプス重み付け予測処理を行った後に、重み係数とオフセットを用いた重み付け予測処理を行ってデプス予測画像を生成する動き予測部と、
 前記動き予測部により生成された前記デプス予測画像を用いて、符号化対象のデプス画像を符号化してデプスストリームを生成する符号化部と
 を備える画像処理装置。
 (2)
 前記奥行きレンジに基づいて前記デプス重み付け予測処理を行ったか、前記デプス画像の画素値としての視差値を正規化する際に用いる、前記視差値のレンジを示すディスパリティレンジに基づいて前記デプス重み付け予測処理を行ったかを識別するデプス識別データを設定する設定部と、
 前記符号化部により生成された前記デプスストリームと前記設定部により設定された前記デプス識別データとを伝送する伝送部と
 をさらに備える
 前記(1)に記載の画像処理装置。
 (3)
 前記デプス画像を符号化する際のピクチャタイプに応じて、前記デプス動き予測部による前記デプス重み付け予測処理を行うかを選択する制御部
 をさらに備える
 前記(1)または(2)に記載の画像処理装置。
 (4)
 前記制御部は、前記デプス画像をBピクチャとして符号化する場合、前記デプス動き予測部による前記デプス重み付け予測処理をスキップするように、前記デプス動き予測部を制御する
 前記(3)に記載の画像処理装置。
 (5)
 前記デプス画像を符号化する際のピクチャタイプに応じて、前記動き予測部による前記重み付け予測処理を行うかを選択する制御部
 をさらに備える
 前記(1)乃至(4)のいずれかに記載の画像処理装置。
 (6)
 画像処理装置が、
 デプス画像を対象として、前記デプス画像の画素値としての奥行き方向の位置を表す奥行き値を正規化する際に用いる、前記奥行き方向の位置のレンジを示す奥行きレンジに基づいて、デプス重み係数とデプスオフセットを用いたデプス重み付け予測処理を行うデプス動き予測ステップと、
 前記デプス動き予測ステップの処理による前記デプス重み付け予測処理を行った後に、重み係数とオフセットを用いた重み付け予測処理を行ってデプス予測画像を生成する動き予測ステップと、
 前記動き予測ステップの処理により生成された前記デプス予測画像を用いて、符号化対象のデプス画像を符号化してデプスストリームを生成する符号化ステップと
 を含む画像処理方法。
 (7)
 デプス画像に関する情報を用いて補正された前記デプス画像の予測画像を用いて符号化されたデプスストリームと、前記デプス画像に関する情報とを受け取る受け取り部と、
 前記受け取り部により受け取られた前記デプス画像に関する情報を用いて、前記デプス画像の画素値としての奥行き方向の位置を示す奥行き値を正規化する際に用いる前記奥行き方向の位置のレンジを示す奥行きレンジに基づくデプス重み係数とデプスオフセットを算出し、前記デプス画像を対象として前記デプス重み係数と前記デプスオフセットを用いたデプス重み付け予測処理を行うデプス動き予測部と、
 前記デプス動き予測部による前記デプス重み付け予測処理を行った後に、重み係数とオフセットを用いた重み付け予測処理を行ってデプス予測画像を生成する動き予測部と、
 前記動き予測部により生成された前記デプス予測画像を用いて、前記受け取り部により受け取られた前記デプスストリームを復号する復号部と
 を備える画像処理装置。
 (8)
 前記受け取り部は、符号化時に前記奥行きレンジに基づいて前記デプス重み付け予測処理を行ったか、前記デプス画像の画素値としての視差値を正規化する際に用いる前記視差値のレンジを示すディスパリティレンジに基づいて前記デプス重み付け予測処理を行ったかを識別するデプス識別データを受け取り、
 前記デプス動き予測部は、前記受け取り部により受け取られた前記デプス識別データにしたがって、前記デプス重み付け予測処理を行う
 前記(7)に記載の画像処理装置。
 (9)
 前記デプスストリームを復号する際のピクチャタイプに応じて、前記デプス動き予測部による前記デプス重み付け予測処理を行うかを選択する制御部
 をさらに備える
 前記(7)または(8)に記載の画像処理装置
 (10)
 前記制御部は、前記デプスストリームをBピクチャとして復号する場合、前記デプス動き予測部による前記デプス重み付け予測処理をスキップするように、前記デプス動き予測部を制御する
 前記(9)に記載の画像処理装置
 (11)
 前記デプスストリームを復号する際のピクチャタイプに応じて、前記動き予測部による前記重み付け予測処理を行うかを選択する制御部
 をさらに備える
 前記(7)乃至(10)のいずれかに記載の画像処理装置
 (12)
 画像処理装置が、
 デプス画像に関する情報を用いて補正された前記デプス画像の予測画像を用いて符号化されたデプスストリームと、前記デプス画像に関する情報とを受け取る受け取りステップと、
 前記受け取りステップの処理により受け取られた前記デプス画像に関する情報を用いて、前記デプス画像の画素値としての奥行き方向の位置を示す奥行き値を正規化する際に用いる前記奥行き方向の位置のレンジを示す奥行きレンジに基づくデプス重み係数とデプスオフセットを算出し、前記デプス画像を対象として前記デプス重み係数と前記デプスオフセットを用いたデプス重み付け予測処理を行うデプス動き予測ステップと、
 前記デプス動き予測ステップの処理による前記デプス重み付け予測処理を行った後に、重み係数とオフセットを用いた重み付け予測処理を行ってデプス予測画像を生成する動き予測ステップと、
 前記動き予測ステップの処理により生成された前記デプス予測画像を用いて、前記受け取りステップの処理により受け取られた前記デプスストリームを復号する復号ステップと
 を含む画像処理方法。
 (13)
 デプス画像を対象として、前記デプス画像の画素値としてのディスパリティを正規化する際に用いる、前記ディスパリティのレンジを示すディスパリティレンジに基づいて、デプス重み係数とデプスオフセットを用いたデプス重み付け予測処理を行うデプス動き予測部と、
 前記デプス動き予測部による前記デプス重み付け予測処理を行った後に、重み係数とオフセットを用いた重み付け予測処理を行ってデプス予測画像を生成する動き予測部と、
 前記動き予測部により生成された前記デプス予測画像を用いて、符号化対象のデプス画像を符号化してデプスストリームを生成する符号化部と
 を備える画像処理装置。
 (14)
 前記デプス画像のタイプに応じて、前記デプス重み付け予測処理を変更するように、前記デプス重み付け予測部を制御する制御部
 をさらに備え、
 前記デプス動き予測部は、前記デプス画像を対象として、前記デプス画像の画素値としての奥行き方向の位置を示す奥行き値を正規化する際に用いる、前記奥行き方向の位置のレンジを示す奥行きレンジに基づいて、前記デプス重み付け予測処理を行う
 前記(13)に記載の画像処理装置。
 (15)
 前記制御部は、前記デプス画像のタイプが前記奥行き値を画素値とするタイプであるか、または、前記ディスパリティを画素値とするタイプであるかに応じて、前記デプス重み付け予測処理を変更する
 前記(14)に記載の画像処理装置。
 (16)
 前記重み付け予測処理を行わせるか、または、スキップさせるように、前記動き予測部を制御する制御部
 をさらに備える
 前記(13)乃至(15)のいずれかに記載の画像処理装置。
 (17)
 前記重み付け予測処理を行うか、または、スキップするかを識別する重み付け予測識別データを設定する設定部と、
 前記符号化部により生成された前記デプスストリームと、前記設定部により設定された前記重み付け予測識別データとを伝送する伝送部と
 をさらに備える
 前記(13)乃至(16)のいずれかに記載の画像処理装置。
 (18)
 画像処理装置が、
 デプス画像を対象として、前記デプス画像の画素値としてのディスパリティを正規化する際に用いる、前記ディスパリティのレンジを示すディスパリティレンジに基づいて、デプス重み係数とデプスオフセットを用いたデプス重み付け予測処理を行うデプス動き予測ステップと、
 前記デプス動き予測ステップの処理による前記デプス重み付け予測処理を行った後に、重み係数とオフセットを用いた重み付け予測処理を行ってデプス予測画像を生成する動き予測ステップと、
 前記動き予測ステップの処理により生成された前記デプス予測画像を用いて、符号化対象のデプス画像を符号化してデプスストリームを生成する符号化ステップと
 を含む画像処理方法。
 (19)
 デプス画像に関する情報を用いて補正された前記デプス画像の予測画像を用いて符号化されたデプスストリームと、前記デプス画像に関する情報とを受け取る受け取り部と、
 前記受け取り部により受け取られた前記デプス画像に関する情報を用いて、前記デプス画像の画素値としてのディスパリティを正規化する際に用いる前記ディスパリティのレンジを示すディスパリティレンジに基づくデプス重み係数とデプスオフセットを算出し、前記デプス画像を対象として前記デプス重み係数と前記デプスオフセットを用いたデプス重み付け予測処理を行うデプス動き予測部と、
 前記デプス動き予測部による前記デプス重み付け予測処理を行った後に、重み係数とオフセットを用いた重み付け予測処理を行ってデプス予測画像を生成する動き予測部と、
 前記動き予測部により生成された前記デプス予測画像を用いて、前記受け取り部により受け取られた前記デプスストリームを復号する復号部と
 を備える画像処理装置。
 (20)
 画像処理装置が、
 デプス画像に関する情報を用いて補正された前記デプス画像の予測画像を用いて符号化されたデプスストリームと、前記デプス画像に関する情報とを受け取る受け取りステップと、
 前記受け取りステップの処理により受け取られた前記デプス画像に関する情報を用いて、前記デプス画像の画素値としてのディスパリティを正規化する際に用いる前記ディスパリティのレンジを示すディスパリティレンジに基づくデプス重み係数とデプスオフセットを算出し、前記デプス画像を対象として前記デプス重み係数と前記デプスオフセットを用いたデプス重み付け予測処理を行うデプス動き予測ステップと、
 前記デプス動き予測ステップの処理による前記デプス重み付け予測処理を行った後に、重み係数とオフセットを用いた重み付け予測処理を行ってデプス予測画像を生成する動き予測ステップと、
 前記動き予測ステップの処理により生成された前記デプス予測画像を用いて、前記受け取りステップの処理で受け取られた前記デプスストリームを復号する復号ステップと
 を含む画像処理方法。
 50 符号化装置, 64 SPS符号化部, 123 演算部, 134 動き予測・補償部, 135 補正部, 150 復号装置, 152 視点合成部, 171 SPS復号部, 255 加算部, 262 動き補償部, 263 補正部

Claims (20)

  1.  デプス画像を対象として、前記デプス画像の画素値としての奥行き方向の位置を表す奥行き値を正規化する際に用いる、前記奥行き方向の位置のレンジを示す奥行きレンジに基づいて、デプス重み係数とデプスオフセットを用いたデプス重み付け予測処理を行うデプス動き予測部と、
     前記デプス動き予測部による前記デプス重み付け予測処理を行った後に、重み係数とオフセットを用いた重み付け予測処理を行ってデプス予測画像を生成する動き予測部と、
     前記動き予測部により生成された前記デプス予測画像を用いて、符号化対象のデプス画像を符号化してデプスストリームを生成する符号化部と
     を備える画像処理装置。
  2.  前記奥行きレンジに基づいて前記デプス重み付け予測処理を行ったか、前記デプス画像の画素値としての視差値を正規化する際に用いる、前記視差値のレンジを示すディスパリティレンジに基づいて前記デプス重み付け予測処理を行ったかを識別するデプス識別データを設定する設定部と、
     前記符号化部により生成された前記デプスストリームと前記設定部により設定された前記デプス識別データとを伝送する伝送部と
     をさらに備える
     請求項1に記載の画像処理装置。
  3.  前記デプス画像を符号化する際のピクチャタイプに応じて、前記デプス動き予測部による前記デプス重み付け予測処理を行うかを選択する制御部
     をさらに備える
     請求項1に記載の画像処理装置。
  4.  前記制御部は、前記デプス画像をBピクチャとして符号化する場合、前記デプス動き予測部による前記デプス重み付け予測処理をスキップするように、前記デプス動き予測部を制御する
     請求項3に記載の画像処理装置。
  5.  前記デプス画像を符号化する際のピクチャタイプに応じて、前記動き予測部による前記重み付け予測処理を行うかを選択する制御部
     をさらに備える
     請求項1に記載の画像処理装置。
  6.  画像処理装置が、
     デプス画像を対象として、前記デプス画像の画素値としての奥行き方向の位置を表す奥行き値を正規化する際に用いる、前記奥行き方向の位置のレンジを示す奥行きレンジに基づいて、デプス重み係数とデプスオフセットを用いたデプス重み付け予測処理を行うデプス動き予測ステップと、
     前記デプス動き予測ステップの処理による前記デプス重み付け予測処理を行った後に、重み係数とオフセットを用いた重み付け予測処理を行ってデプス予測画像を生成する動き予測ステップと、
     前記動き予測ステップの処理により生成された前記デプス予測画像を用いて、符号化対象のデプス画像を符号化してデプスストリームを生成する符号化ステップと
     を含む画像処理方法。
  7.  デプス画像に関する情報を用いて補正された前記デプス画像の予測画像を用いて符号化されたデプスストリームと、前記デプス画像に関する情報とを受け取る受け取り部と、
     前記受け取り部により受け取られた前記デプス画像に関する情報を用いて、前記デプス画像の画素値としての奥行き方向の位置を示す奥行き値を正規化する際に用いる前記奥行き方向の位置のレンジを示す奥行きレンジに基づくデプス重み係数とデプスオフセットを算出し、前記デプス画像を対象として前記デプス重み係数と前記デプスオフセットを用いたデプス重み付け予測処理を行うデプス動き予測部と、
     前記デプス動き予測部による前記デプス重み付け予測処理を行った後に、重み係数とオフセットを用いた重み付け予測処理を行ってデプス予測画像を生成する動き予測部と、
     前記動き予測部により生成された前記デプス予測画像を用いて、前記受け取り部により受け取られた前記デプスストリームを復号する復号部と
     を備える画像処理装置。
  8.  前記受け取り部は、符号化時に前記奥行きレンジに基づいて前記デプス重み付け予測処理を行ったか、前記デプス画像の画素値としての視差値を正規化する際に用いる前記視差値のレンジを示すディスパリティレンジに基づいて前記デプス重み付け予測処理を行ったかを識別するデプス識別データを受け取り、
     前記デプス動き予測部は、前記受け取り部により受け取られた前記デプス識別データにしたがって、前記デプス重み付け予測処理を行う
     請求項7に記載の画像処理装置。
  9.  前記デプスストリームを復号する際のピクチャタイプに応じて、前記デプス動き予測部による前記デプス重み付け予測処理を行うかを選択する制御部
     をさらに備える
     請求項7に記載の画像処理装置
  10.  前記制御部は、前記デプスストリームをBピクチャとして復号する場合、前記デプス動き予測部による前記デプス重み付け予測処理をスキップするように、前記デプス動き予測部を制御する
     請求項9に記載の画像処理装置
  11.  前記デプスストリームを復号する際のピクチャタイプに応じて、前記動き予測部による前記重み付け予測処理を行うかを選択する制御部
     をさらに備える
     請求項7に記載の画像処理装置
  12.  画像処理装置が、
     デプス画像に関する情報を用いて補正された前記デプス画像の予測画像を用いて符号化されたデプスストリームと、前記デプス画像に関する情報とを受け取る受け取りステップと、
     前記受け取りステップの処理により受け取られた前記デプス画像に関する情報を用いて、前記デプス画像の画素値としての奥行き方向の位置を示す奥行き値を正規化する際に用いる前記奥行き方向の位置のレンジを示す奥行きレンジに基づくデプス重み係数とデプスオフセットを算出し、前記デプス画像を対象として前記デプス重み係数と前記デプスオフセットを用いたデプス重み付け予測処理を行うデプス動き予測ステップと、
     前記デプス動き予測ステップの処理による前記デプス重み付け予測処理を行った後に、重み係数とオフセットを用いた重み付け予測処理を行ってデプス予測画像を生成する動き予測ステップと、
     前記動き予測ステップの処理により生成された前記デプス予測画像を用いて、前記受け取りステップの処理により受け取られた前記デプスストリームを復号する復号ステップと
     を含む画像処理方法。
  13.  デプス画像を対象として、前記デプス画像の画素値としてのディスパリティを正規化する際に用いる、前記ディスパリティのレンジを示すディスパリティレンジに基づいて、デプス重み係数とデプスオフセットを用いたデプス重み付け予測処理を行うデプス動き予測部と、
     前記デプス動き予測部による前記デプス重み付け予測処理を行った後に、重み係数とオフセットを用いた重み付け予測処理を行ってデプス予測画像を生成する動き予測部と、
     前記動き予測部により生成された前記デプス予測画像を用いて、符号化対象のデプス画像を符号化してデプスストリームを生成する符号化部と
     を備える画像処理装置。
  14.  前記デプス画像のタイプに応じて、前記デプス重み付け予測処理を変更するように、前記デプス重み付け予測部を制御する制御部
     をさらに備え、
     前記デプス動き予測部は、前記デプス画像を対象として、前記デプス画像の画素値としての奥行き方向の位置を示す奥行き値を正規化する際に用いる、前記奥行き方向の位置のレンジを示す奥行きレンジに基づいて、前記デプス重み付け予測処理を行う
     請求項13に記載の画像処理装置。
  15.  前記制御部は、前記デプス画像のタイプが前記奥行き値を画素値とするタイプであるか、または、前記ディスパリティを画素値とするタイプであるかに応じて、前記デプス重み付け予測処理を変更する
     請求項14に記載の画像処理装置。
  16.  前記重み付け予測処理を行わせるか、または、スキップさせるように、前記動き予測部を制御する制御部
     をさらに備える
     請求項13に記載の画像処理装置。
  17.  前記重み付け予測処理を行うか、または、スキップするかを識別する重み付け予測識別データを設定する設定部と、
     前記符号化部により生成された前記デプスストリームと、前記設定部により設定された前記重み付け予測識別データとを伝送する伝送部と
     をさらに備える
     請求項13に記載の画像処理装置。
  18.  画像処理装置が、
     デプス画像を対象として、前記デプス画像の画素値としてのディスパリティを正規化する際に用いる、前記ディスパリティのレンジを示すディスパリティレンジに基づいて、デプス重み係数とデプスオフセットを用いたデプス重み付け予測処理を行うデプス動き予測ステップと、
     前記デプス動き予測ステップの処理による前記デプス重み付け予測処理を行った後に、重み係数とオフセットを用いた重み付け予測処理を行ってデプス予測画像を生成する動き予測ステップと、
     前記動き予測ステップの処理により生成された前記デプス予測画像を用いて、符号化対象のデプス画像を符号化してデプスストリームを生成する符号化ステップと
     を含む画像処理方法。
  19.  デプス画像に関する情報を用いて補正された前記デプス画像の予測画像を用いて符号化されたデプスストリームと、前記デプス画像に関する情報とを受け取る受け取り部と、
     前記受け取り部により受け取られた前記デプス画像に関する情報を用いて、前記デプス画像の画素値としてのディスパリティを正規化する際に用いる前記ディスパリティのレンジを示すディスパリティレンジに基づくデプス重み係数とデプスオフセットを算出し、前記デプス画像を対象として前記デプス重み係数と前記デプスオフセットを用いたデプス重み付け予測処理を行うデプス動き予測部と、
     前記デプス動き予測部による前記デプス重み付け予測処理を行った後に、重み係数とオフセットを用いた重み付け予測処理を行ってデプス予測画像を生成する動き予測部と、
     前記動き予測部により生成された前記デプス予測画像を用いて、前記受け取り部により受け取られた前記デプスストリームを復号する復号部と
     を備える画像処理装置。
  20.  画像処理装置が、
     デプス画像に関する情報を用いて補正された前記デプス画像の予測画像を用いて符号化されたデプスストリームと、前記デプス画像に関する情報とを受け取る受け取りステップと、
     前記受け取りステップの処理により受け取られた前記デプス画像に関する情報を用いて、前記デプス画像の画素値としてのディスパリティを正規化する際に用いる前記ディスパリティのレンジを示すディスパリティレンジに基づくデプス重み係数とデプスオフセットを算出し、前記デプス画像を対象として前記デプス重み係数と前記デプスオフセットを用いたデプス重み付け予測処理を行うデプス動き予測ステップと、
     前記デプス動き予測ステップの処理による前記デプス重み付け予測処理を行った後に、重み係数とオフセットを用いた重み付け予測処理を行ってデプス予測画像を生成する動き予測ステップと、
     前記動き予測ステップの処理により生成された前記デプス予測画像を用いて、前記受け取りステップの処理で受け取られた前記デプスストリームを復号する復号ステップと
     を含む画像処理方法。
PCT/JP2012/071030 2011-08-31 2012-08-21 画像処理装置および画像処理方法 WO2013031575A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US14/239,591 US20140321546A1 (en) 2011-08-31 2012-08-21 Image processing apparatus and image processing method
CN201280040909.9A CN103748881A (zh) 2011-08-31 2012-08-21 图像处理设备和图像处理方法

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
JP2011188995 2011-08-31
JP2011-188995 2011-08-31
JP2011-253173 2011-11-18
JP2011253173 2011-11-18
JP2012-018978 2012-01-31
JP2012-018410 2012-01-31
JP2012018978 2012-01-31
JP2012018410 2012-01-31

Publications (1)

Publication Number Publication Date
WO2013031575A1 true WO2013031575A1 (ja) 2013-03-07

Family

ID=47756069

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/071030 WO2013031575A1 (ja) 2011-08-31 2012-08-21 画像処理装置および画像処理方法

Country Status (4)

Country Link
US (1) US20140321546A1 (ja)
JP (1) JPWO2013031575A1 (ja)
CN (1) CN103748881A (ja)
WO (1) WO2013031575A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013115024A1 (ja) * 2012-01-31 2013-08-08 ソニー株式会社 画像処理装置および画像処理方法
WO2013115025A1 (ja) * 2012-01-31 2013-08-08 ソニー株式会社 符号化装置および符号化方法、並びに、復号装置および復号方法

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9445092B2 (en) * 2011-03-18 2016-09-13 Sony Corporation Image processing apparatus, image processing method, and program
CN103430557A (zh) 2011-03-18 2013-12-04 索尼公司 图像处理设备和图像处理方法
CN107197227B (zh) 2011-03-18 2019-05-10 索尼公司 图像处理设备、图像处理方法和计算机可读存储介质
BR122015001002B1 (pt) 2011-06-30 2022-07-26 Sony Corporation Dispositivo e método de processamento de imagem
RU2597256C2 (ru) 2011-08-31 2016-09-10 Сони Корпорейшн Устройство кодирования, способ кодирования, устройство декодирования и способ декодирования
US9939253B2 (en) * 2014-05-22 2018-04-10 Brain Corporation Apparatus and methods for distance estimation using multiple image sensors
CN104023221B (zh) * 2014-06-23 2016-04-13 深圳超多维光电子有限公司 立体图像视差调节方法和装置
US10283091B2 (en) * 2014-10-13 2019-05-07 Microsoft Technology Licensing, Llc Buffer optimization
WO2017064829A1 (ja) * 2015-10-15 2017-04-20 ソニー株式会社 映像信号処理装置、映像信号処理方法およびプログラム
US10244164B1 (en) 2017-09-11 2019-03-26 Qualcomm Incorporated Systems and methods for image stitching
EP3554082A1 (en) * 2018-04-11 2019-10-16 InterDigital VC Holdings, Inc. A method and device for coding the geometry of a point cloud
US10638130B1 (en) * 2019-04-09 2020-04-28 Google Llc Entropy-inspired directional filtering for image coding

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002058031A (ja) * 2000-08-08 2002-02-22 Nippon Telegr & Teleph Corp <Ntt> 画像符号化方法及び装置、並びに、画像復号化方法及び装置
JP2010506287A (ja) * 2006-10-04 2010-02-25 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 画像強調
JP2011511597A (ja) * 2008-02-05 2011-04-07 トムソン ライセンシング ビデオ符号化および復号におけるインプリシットなブロック分割のための方法および装置
JP2011512067A (ja) * 2008-01-21 2011-04-14 テレフオンアクチーボラゲット エル エム エリクソン(パブル) 予測に基づく画像処理

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007166381A (ja) * 2005-12-15 2007-06-28 Univ Of Tokyo 多視点画像の圧縮符号化方法及び復号化方法
CN101242530B (zh) * 2007-02-08 2011-06-01 华为技术有限公司 运动估计方法、基于运动估计的多视编解码方法及装置
JP4952657B2 (ja) * 2007-07-19 2012-06-13 株式会社Jvcケンウッド 擬似立体画像生成装置、画像符号化装置、画像符号化方法、画像伝送方法、画像復号化装置及び画像復号化方法
KR101619450B1 (ko) * 2009-01-12 2016-05-10 엘지전자 주식회사 뎁스 정보를 이용한 비디오 신호 처리 방법 및 장치
KR101807886B1 (ko) * 2009-10-14 2017-12-11 돌비 인터네셔널 에이비 깊이 맵 처리를 위한 방법 및 디바이스
US8537200B2 (en) * 2009-10-23 2013-09-17 Qualcomm Incorporated Depth map generation techniques for conversion of 2D video data to 3D video data
KR101913993B1 (ko) * 2010-08-11 2018-10-31 지이 비디오 컴프레션, 엘엘씨 멀티-뷰 신호 코덱
US10404998B2 (en) * 2011-02-22 2019-09-03 Sun Patent Trust Moving picture coding method, moving picture coding apparatus, moving picture decoding method, and moving picture decoding apparatus
US9191646B2 (en) * 2011-08-29 2015-11-17 Nokia Technologies Oy Apparatus, a method and a computer program for video coding and decoding

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002058031A (ja) * 2000-08-08 2002-02-22 Nippon Telegr & Teleph Corp <Ntt> 画像符号化方法及び装置、並びに、画像復号化方法及び装置
JP2010506287A (ja) * 2006-10-04 2010-02-25 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 画像強調
JP2011512067A (ja) * 2008-01-21 2011-04-14 テレフオンアクチーボラゲット エル エム エリクソン(パブル) 予測に基づく画像処理
JP2011511597A (ja) * 2008-02-05 2011-04-07 トムソン ライセンシング ビデオ符号化および復号におけるインプリシットなブロック分割のための方法および装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
KWAN-JUNG OH ET AL.: "Non-linear Bi-directional Prediction for Depth Coding", ADVANCES IN MULTIMEDIA INFORMATION PROCESSING - PCM 2009, 15 December 2009 (2009-12-15), BERLIN HEIDELBERG, pages 522 - 531, XP019134927 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013115024A1 (ja) * 2012-01-31 2013-08-08 ソニー株式会社 画像処理装置および画像処理方法
WO2013115025A1 (ja) * 2012-01-31 2013-08-08 ソニー株式会社 符号化装置および符号化方法、並びに、復号装置および復号方法
US10085007B2 (en) 2012-01-31 2018-09-25 Sony Corporation Encoding device and encoding method, and decoding device and decoding method
US10205927B2 (en) 2012-01-31 2019-02-12 Sony Corporation Encoding device and encoding method, and decoding device and decoding method

Also Published As

Publication number Publication date
JPWO2013031575A1 (ja) 2015-03-23
US20140321546A1 (en) 2014-10-30
CN103748881A (zh) 2014-04-23

Similar Documents

Publication Publication Date Title
WO2013031575A1 (ja) 画像処理装置および画像処理方法
WO2013115024A1 (ja) 画像処理装置および画像処理方法
JP2021044832A (ja) パーティション符号化を用いた有効な予測
JP2018186528A (ja) 画像処理装置および画像処理方法
WO2012070500A1 (ja) 符号化装置および符号化方法、並びに、復号装置および復号方法
CN103703777A (zh) 对具有深度范围变化的运动深度图进行译码
WO2012111756A1 (ja) 画像処理装置および画像処理方法
WO2012147621A1 (ja) 符号化装置および符号化方法、並びに、復号装置および復号方法
US8810628B2 (en) Image processing apparatus and image processing method
WO2012111757A1 (ja) 画像処理装置および画像処理方法
JP6206559B2 (ja) 復号装置、復号方法、プログラム、および記録媒体
JPWO2012176684A1 (ja) 画像処理装置および方法
WO2013031574A1 (ja) 画像処理装置および方法
WO2013031573A1 (ja) 符号化装置および符号化方法、復号装置および復号方法
JPWO2012128241A1 (ja) 画像処理装置、画像処理方法、及び、プログラム
TWI545935B (zh) Encoding apparatus and an encoding method, a decoding apparatus and decoding method
WO2013157439A1 (ja) 復号装置および復号方法、並びに、符号化装置および符号化方法
WO2013154029A1 (ja) 復号装置および復号方法、並びに、符号化装置および符号化方法

Legal Events

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

Ref document number: 12828033

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2013531222

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 14239591

Country of ref document: US

122 Ep: pct application non-entry in european phase

Ref document number: 12828033

Country of ref document: EP

Kind code of ref document: A1