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

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

Info

Publication number
WO2012176684A1
WO2012176684A1 PCT/JP2012/065236 JP2012065236W WO2012176684A1 WO 2012176684 A1 WO2012176684 A1 WO 2012176684A1 JP 2012065236 W JP2012065236 W JP 2012065236W WO 2012176684 A1 WO2012176684 A1 WO 2012176684A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
prediction
prediction vector
unit
vector
Prior art date
Application number
PCT/JP2012/065236
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 CN201280029321.3A priority Critical patent/CN103597833A/zh
Priority to US14/125,451 priority patent/US20140104383A1/en
Publication of WO2012176684A1 publication Critical patent/WO2012176684A1/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/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • 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
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive 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/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding

Definitions

  • the present disclosure relates to an image processing apparatus and method, and more particularly, to an image processing apparatus and method capable of improving encoding efficiency in multi-viewpoint encoding.
  • MPEG2 (ISO / IEC 13818-2) is defined as a general-purpose image encoding system, and is a standard that covers both interlaced scanning images and progressive scanning images, as well as standard resolution images and high-definition images.
  • MPEG2 is currently widely used in a wide range of applications for professional and consumer applications.
  • a code amount (bit rate) of 4 to 8 Mbps is assigned to an interlaced scanned image having a standard resolution of 720 ⁇ 480 pixels.
  • a high resolution interlaced scanned image having 1920 ⁇ 1088 pixels is assigned a code amount (bit rate) of 18 to 22 Mbps.
  • bit rate code amount
  • MPEG2 was mainly intended for high-quality encoding suitable for broadcasting, but it did not support encoding methods with a lower code amount (bit rate) than MPEG1, that is, a higher compression rate. With the widespread use of mobile terminals, the need for such an encoding system is expected to increase in the future, and the MPEG4 encoding system has been standardized accordingly. Regarding the image coding system, the standard was approved as an international standard in December 1998 as ISO / IEC 14496-2.
  • H.264 and MPEG-4 Part 10 Advanced Video Coding, hereinafter referred to as H.264 / AVC.
  • HEVC High Efficiency Video (Coding) by JCTVC (Joint Collaboration (Team-Video Coding)), which is a joint standardization organization of ITU-T and ISO / IEC, for the purpose of further improving encoding efficiency than H.264 / AVC. Standardization of the encoding method is underway.
  • Non-Patent Document 1 is issued as a draft.
  • the prediction vector is predicted from motion vectors of peripheral blocks around the block to be processed.
  • 0 is used as the prediction vector.
  • disparity vector there is no description about the disparity vector in the draft of HEVC.
  • it is inefficient That is, when the surrounding blocks cannot be referred to, if 0 is used as the prediction vector, the disparity vector itself is sent to the decoding side, which may reduce the coding efficiency.
  • the present disclosure has been made in view of such a situation, and can improve the encoding efficiency in multi-view encoding.
  • An image processing apparatus decodes a bitstream to generate an image, and predicts a disparity vector of a region to be decoded of the image generated by the decoding unit.
  • the upper limit value or the lower limit value of the parallax range between the image obtained from the bitstream and the view image of the same time having different parallax from the image is set.
  • a prediction vector determination unit that determines the prediction vector; and a prediction image generation unit that generates a prediction image of the image generated by the decoding unit using the prediction vector determined by the prediction vector determination unit.
  • the upper limit value or lower limit value of the parallax range between the images is the maximum value or the minimum value of the parallax between the images.
  • the decoding receives a flag indicating which value of the upper limit value and the lower limit value of the parallax range between the images is used as the prediction vector, and the prediction vector determination unit is received by the decoding The value indicated by the flag can be determined as the prediction vector.
  • the prediction vector generation unit can determine any one of an upper limit value, a lower limit value, and an average value of the parallax range between the images as the prediction vector.
  • the prediction vector generation unit determines, as the prediction vector, any one of an upper limit value, a lower limit value, and a predetermined value within a parallax range between the images. Can do.
  • the prediction vector generation unit scales the upper limit value or the lower limit value of the parallax range between the images, and calculates the prediction vector. Can be determined as
  • an image processing apparatus decodes a bitstream to generate an image, and predicts a disparity vector of a region to be decoded of the generated image
  • the upper limit value or the lower limit value of the range of parallax between the image obtained from the bitstream and the view image of the same time having different parallax from the image is predicted. It determines as a vector, The prediction image of the produced
  • the image processing device predicts a parallax vector and a parallax between the image and the image when predicting a parallax vector of a region to be encoded of the image when all the peripheral regions around the region cannot be referred to Are determined by a prediction vector determination unit that determines an upper limit value or a lower limit value of a range of parallax between images of view images at different times at the same time, a parallax vector of the region, and the prediction vector determination unit And a coding unit for coding a difference from the prediction vector.
  • the upper limit value or lower limit value of the parallax range between the images is the maximum value or the minimum value of the parallax between the images.
  • the prediction vector determination unit transmits a flag indicating which one of the upper limit value and the lower limit value of the parallax range between the images is determined as a prediction vector, and an encoded stream obtained by encoding the image
  • the transmission part which performs can be further provided.
  • the prediction vector generation unit can determine any one of an upper limit value, a lower limit value, and an average value of the parallax range between the images as the prediction vector.
  • the prediction vector generation unit determines, as the prediction vector, any one of an upper limit value, a lower limit value, and a predetermined value within a parallax range between the images. Can do.
  • the prediction vector generation unit scales the upper limit value or the lower limit value of the parallax range between the images, and calculates the prediction vector. Can be determined as
  • the image processing apparatus predicts the disparity vector of the region to be encoded of the image, if the peripheral regions around the region cannot be referred to, the image And an upper limit value or a lower limit value of the range of parallax between the images of the view image at the same time different in parallax from the image is determined as a prediction vector, and the parallax vector of the region and the determined prediction vector Encode the difference.
  • the upper limit value or the lower limit value of the range of parallax between the image obtained from the bitstream and the view image of the same time with different parallax from the image is determined as a prediction vector. Then, a predicted image of the generated image is generated using the determined prediction vector.
  • the image and the image have the same disparity.
  • the upper limit value or the lower limit value of the parallax range between the view images at the time is determined as the prediction vector. Then, the difference between the disparity vector of the region and the determined prediction vector is encoded.
  • the above-described image processing apparatus may be an independent apparatus, or may be an internal block constituting one image encoding apparatus or image decoding apparatus.
  • an image can be decoded.
  • encoding efficiency can be improved.
  • an image can be encoded.
  • encoding efficiency can be improved.
  • FIG. 26 is a block diagram illustrating a main configuration example of a personal computer. It is a block diagram which shows an example of a schematic structure of a television apparatus. It is a block diagram which shows an example of a schematic structure of a mobile telephone. It is a block diagram which shows an example of a schematic structure of a recording / reproducing apparatus. It is a block diagram which shows an example of a schematic structure of an imaging device.
  • FIG. 1 is a diagram illustrating parallax and depth.
  • the depth of the subject M from the camera c1 (camera c2).
  • the depth Z which is the distance in the direction, is defined by the following equation (1).
  • L is a horizontal distance between the position C1 and the position C2 (hereinafter, referred to as an inter-camera distance).
  • D is the position of the subject M on the color image photographed by the camera c2 from the horizontal distance u1 of the position of the subject M on the color image photographed by the camera c1 from the center of the color image.
  • f is the focal length of the camera c1, and in the expression (1), the focal lengths of the camera c1 and the camera c2 are the same.
  • the parallax d and the depth Z can be uniquely converted. Therefore, in this specification, the image representing the parallax d and the image representing the depth Z of the two viewpoint color images captured by the camera c1 and the camera c2 are collectively referred to as a depth image (view image).
  • the depth image (view image) may be an image representing the parallax d or the depth Z, and the pixel value of the depth image (view image) is not the parallax d or the depth Z itself, but the parallax d is normalized.
  • a value obtained by normalizing the value, the reciprocal 1 / Z of the depth Z, or the like can be employed.
  • the value I obtained by normalizing the parallax d with 8 bits (0 to 255) can be obtained by the following equation (2). Note that the normalization bit number of the parallax d is not limited to 8 bits, and other bit numbers such as 10 bits and 12 bits may be used.
  • D max is the maximum value of the parallax d
  • D min is the minimum value of the parallax d.
  • the maximum value D max and the minimum value D min may be set in units of one screen, or may be set in units of a plurality of screens.
  • the value y obtained by normalizing the reciprocal 1 / Z of the depth Z by 8 bits (0 to 255) can be obtained by the following equation (3).
  • the normalized bit number of the inverse 1 / Z of the depth Z is not limited to 8 bits, and other bit numbers such as 10 bits and 12 bits may be used.
  • Z far is the maximum value of the depth Z
  • Z near is the minimum value of the depth Z.
  • the maximum value Z far and the minimum value Z near may be set in units of one screen or may be set in units of a plurality of screens.
  • an image having a pixel value of the value I obtained by normalizing the parallax d, and an inverse 1 / of the depth Z Images with the pixel value normalized by the value y obtained by normalizing Z are collectively referred to as a depth image (view image).
  • the color format of the depth image (view image) is YUV420 or YUV400, but other color formats are also possible.
  • the value I or the value y is set as depth information (disparity information / view information). Further, a map obtained by mapping the value I or the value y is a depth map (disparity map).
  • FIG. 2 illustrates a configuration of an embodiment of an image encoding device as an image processing device to which the present disclosure is applied.
  • the image encoding device 100 shown in FIG. 2 encodes image data using a prediction process.
  • an encoding method for example, H.264. H.264 and MPEG (Moving Picture Experts Group) 4 Part 10 (AVC (Advanced Video Coding)) (hereinafter referred to as H.264 / AVC) method, HEVC (High Efficiency Video Coding) method, and the like are used.
  • a macro block or a block is used as an area serving as a processing unit.
  • CU coding unit
  • PU prediction unit
  • TU transform unit
  • the image encoding device 100 includes an A / D (Analog / Digital) conversion unit 101, a screen rearrangement buffer 102, a calculation unit 103, an orthogonal transformation unit 104, a quantization unit 105, and a lossless encoding unit 106.
  • the image encoding device 100 includes an inverse orthogonal transform unit 109, a calculation unit 110, a deblock filter 111, a decoded picture buffer 112, a selection unit 113, an intra prediction unit 114, a motion parallax prediction / compensation unit 115, a selection unit 116, And a rate control unit 117.
  • the image encoding device 100 further includes a multi-viewpoint decoded picture buffer 121 and a parallax detection unit 122.
  • the A / D conversion unit 101 performs A / D conversion on the input image data, outputs it to the screen rearrangement buffer 102, and stores it.
  • the screen rearrangement buffer 102 rearranges the stored frame images in the display order in the order of frames for encoding in accordance with the GOP (Group of Picture) structure.
  • the screen rearrangement buffer 102 supplies the image with the rearranged frame order to the arithmetic unit 103. Further, the screen rearrangement buffer 102 also supplies the image in which the order of the frames is rearranged to the intra prediction unit 114 and the motion parallax prediction / compensation unit 115.
  • the calculation unit 103 subtracts the prediction image supplied from the intra prediction unit 114 or the motion parallax prediction / compensation unit 115 via the selection unit 116 from the image read from the screen rearrangement buffer 102, and calculates the difference information. Output to the orthogonal transform unit 104.
  • the calculation unit 103 subtracts the prediction image supplied from the intra prediction unit 114 from the image read from the screen rearrangement buffer 102.
  • the arithmetic unit 103 subtracts the predicted image supplied from the motion parallax prediction / compensation unit 115 from the image read from the screen rearrangement buffer 102.
  • the orthogonal transform unit 104 performs orthogonal transform such as discrete cosine transform and Karhunen-Loeve transform on the difference information supplied from the computation unit 103 and supplies the transform coefficient to the quantization unit 105.
  • the quantization unit 105 quantizes the transform coefficient output from the orthogonal transform unit 104.
  • the quantization unit 105 supplies the quantized transform coefficient to the lossless encoding unit 106.
  • the lossless encoding unit 106 performs lossless encoding such as variable length encoding and arithmetic encoding on the quantized transform coefficient.
  • the lossless encoding unit 106 acquires information indicating the intra prediction mode from the intra prediction unit 114, and acquires information indicating the inter prediction mode, motion disparity vector information, and the like from the motion disparity prediction / compensation unit 115.
  • the lossless encoding unit 106 encodes the quantized transform coefficient, and uses information such as intra prediction mode information, inter prediction mode information, and motion disparity vector information as part of the header information of the encoded data. (Multiplex).
  • the lossless encoding unit 106 also uses the parallax maximum value, the parallax minimum value supplied from the parallax detection unit 122, and the reference view information based on them as part of the header information of the encoded data. .
  • the lossless encoding unit 106 supplies the encoded data obtained by encoding to the accumulation buffer 107 for accumulation.
  • the lossless encoding unit 106 performs lossless encoding processing such as variable length encoding or arithmetic encoding.
  • lossless encoding processing such as variable length encoding or arithmetic encoding.
  • variable length coding include CAVLC (Context-Adaptive Variable Length Coding).
  • arithmetic coding include CABAC (Context-Adaptive Binary Arithmetic Coding).
  • the accumulation buffer 107 temporarily stores the encoded data supplied from the lossless encoding unit 106, and, for example, as a encoded image encoded at a predetermined timing, for example, a recording device or a transmission device (not shown) in the subsequent stage. Output to the road.
  • the transform coefficient quantized by the quantization unit 105 is also supplied to the inverse quantization unit 108.
  • the inverse quantization unit 108 inversely quantizes the quantized transform coefficient by a method corresponding to the quantization by the quantization unit 105.
  • the inverse quantization unit 108 supplies the obtained transform coefficient to the inverse orthogonal transform unit 109.
  • the inverse orthogonal transform unit 109 performs inverse orthogonal transform on the supplied transform coefficient by a method corresponding to the orthogonal transform processing by the orthogonal transform unit 104.
  • the inversely orthogonal transformed output (restored difference information) is supplied to the calculation unit 110.
  • the calculation unit 110 is supplied from the intra prediction unit 114 or the motion parallax prediction / compensation unit 115 via the selection unit 116 to the inverse orthogonal transform result supplied from the inverse orthogonal transform unit 109, that is, the restored difference information. Add predicted images. Thereby, a locally decoded image (decoded image) is obtained.
  • the calculation unit 110 adds the prediction image supplied from the intra prediction unit 114 to the difference information.
  • the calculation unit 110 adds the predicted image supplied from the motion parallax prediction / compensation unit 115 to the difference information.
  • the addition result is supplied to the deblock filter 111 and the decoded picture buffer 112.
  • the deblocking filter 111 removes block distortion of the decoded image by appropriately performing deblocking filter processing.
  • the deblocking filter 111 supplies the filter processing result to the decoded picture buffer 112.
  • the decoded picture buffer 112 stores a decoded image of the encoding viewpoint from the deblocking filter 111 or a decoding image other than the encoding viewpoint from the multi-view decoding picture buffer 121.
  • the decoded picture buffer 112 outputs the stored reference image to the intra prediction unit 114 or the motion parallax prediction / compensation unit 115 via the selection unit 113 at a predetermined timing.
  • the decoded picture buffer 112 supplies the reference image to the intra prediction unit 114 via the selection unit 113.
  • the decoded picture buffer 112 supplies the reference image to the motion parallax prediction / compensation unit 115 via the selection unit 113.
  • the selection unit 113 supplies the reference image to the intra prediction unit 114 when the reference image supplied from the decoded picture buffer 112 is an image to be subjected to intra coding. In addition, when the reference image supplied from the decoded picture buffer 112 is an image to be subjected to inter coding, the selection unit 113 supplies the reference image to the motion parallax prediction / compensation unit 115.
  • the intra prediction unit 114 performs intra prediction (intra-screen prediction) that generates a predicted image using pixel values in the screen.
  • the intra prediction unit 114 performs intra prediction in a plurality of modes (intra prediction modes).
  • the intra prediction unit 114 generates predicted images in all intra prediction modes, evaluates each predicted image, and selects an optimal mode. When the optimal intra prediction mode is selected, the intra prediction unit 114 supplies the prediction image generated in the optimal mode to the calculation unit 103 and the calculation unit 110 via the selection unit 116.
  • the intra prediction unit 114 supplies information such as intra prediction mode information indicating the adopted intra prediction mode to the lossless encoding unit 106 as appropriate.
  • the motion parallax prediction / compensation unit 115 uses an input image supplied from the screen rearrangement buffer 102 and a reference image supplied from the decoded picture buffer 112 via the selection unit 113 for an image to be inter-coded. Then, motion parallax prediction is performed. Then, the motion parallax prediction / compensation unit 115 performs motion parallax compensation processing according to the detected motion parallax vector, and generates a predicted image (inter-predicted image information). These processes are performed for all candidate inter prediction modes, and the optimal inter prediction mode is determined from them. The motion parallax prediction / compensation unit 115 supplies the generated predicted image to the calculation unit 103 and the calculation unit 110 via the selection unit 116.
  • the motion parallax prediction / compensation unit 115 generates a prediction vector using the motion parallax vector of the peripheral area around the area to be processed. At this time, when the prediction vector of the disparity vector is obtained and all the surrounding areas are not referable, the motion disparity prediction / compensation unit 115 determines the minimum value of the disparity or the disparity value supplied from the disparity detection unit 122. One of the maximum values is set as a prediction vector.
  • the motion disparity prediction / compensation unit 115 supplies information such as inter prediction mode information indicating the adopted inter prediction mode, motion disparity vector information, a reference image index, and a prediction vector index to the lossless encoding unit 106.
  • the motion parallax vector information is information indicating a difference between the motion parallax vector and the prediction vector.
  • the selection unit 116 supplies the output of the intra prediction unit 114 to the calculation unit 103 and the calculation unit 110 in the case of an image to be subjected to intra coding, and the output of the motion parallax prediction / compensation unit 115 in the case of an image to be subjected to inter coding. Is supplied to the calculation unit 103 and the calculation unit 110.
  • the rate control unit 117 controls the quantization operation rate of the quantization unit 105 based on the compressed image stored in the storage buffer 107 so that overflow or underflow does not occur.
  • the multi-viewpoint decoded picture buffer 121 exchanges the decoded image of the encoded viewpoint stored in the decoded picture buffer 112 and the decoded image other than the encoded viewpoint in accordance with the view (viewpoint) to be processed.
  • the disparity detection unit 122 calculates the maximum and minimum values of disparity between the image to be processed and the reference view image at the same time with different disparity from the image, the motion disparity prediction / compensation unit 115 and the lossless encoding unit. 106. Further, the parallax detection unit 122 supplies information of an image referred to when calculating the parallax to the motion parallax prediction / compensation unit 115 and the lossless encoding unit 106 as reference view information. Here, an image that is referred to when calculating the parallax is referred to as a reference view image.
  • the parallax maximum value, minimum value, and reference view information are input to the parallax detection unit 122 via an operation unit (not shown), for example, by a stream producer.
  • the maximum and minimum values of the parallax are inserted into the slice header by the lossless encoding unit 106.
  • the reference view information is inserted into the sequence parameter set.
  • Prediction mode selection In order to achieve higher encoding efficiency, selection of an appropriate prediction mode is important.
  • H.M. In the H.264 / AVC system, as an example of such a selection system, H.264 / MPEG-4 AVC reference software called JM (Joint Model) (http://iphome.hhi.de/suehring/tml/index. You can list the methods implemented in htm).
  • JM JM
  • High Complexity Mode Low Complexity Mode.
  • the encoding cost value for each prediction mode Mode is calculated, and the prediction mode that minimizes this is selected as the optimum mode for the target block or macroblock.
  • the cost function in High Complexity Mode can be expressed as the following equation (4).
  • is the entire set of candidate modes for encoding the target block or macroblock
  • D is the differential energy between the decoded image and the input image when encoded in the prediction mode Mode
  • is a Lagrange undetermined multiplier given as a function of the quantization parameter
  • R is a total code amount when encoding is performed in the mode Mode, including orthogonal transform coefficients.
  • the cost function in Low Complexity Mode is shown as the following formula (5).
  • D is the difference energy between the predicted image and the input image, unlike the case of High Complexity Mode.
  • QP2Quant QP
  • HeaderBit is a code amount related to information belonging to Header, such as a motion vector and a mode, which does not include an orthogonal transform coefficient.
  • FIG. 3 is a diagram illustrating an example of a reference relationship between views in the case of a three-viewpoint image.
  • An index of PicNum (decoding order) is also shown above the POC index.
  • View 0 is called a base view, and the image can be encoded using temporal prediction.
  • View 1 and view 2 are called non-base views, and the images can be encoded using temporal prediction and disparity prediction.
  • the image of the view 1 can refer to the encoded image of the view 0 and the image of the view 2 as indicated by an arrow during the parallax prediction.
  • the P picture in which the POC of view 1 is the eighth is a P picture in temporal prediction, but is a B picture in disparity prediction.
  • the image of the view 2 can refer to the encoded image of the view 0 as indicated by an arrow during the parallax prediction.
  • the base view image is decoded. After all the other view images at the same time are decoded, the base view image at the next time (PicNum) is decoded. Decoding is performed in the order of starting.
  • the motion parallax vector of the spatial correlation regions A, B, C, and D that are spatially neighboring and the temporal correlation region N that is temporally neighboring is used as the prediction vector of the region M to be processed. Generated.
  • the processing target The prediction vector of the region M is 0 vector.
  • the prediction vector is a 0 vector
  • the value of the disparity vector searched in the processing target area is sent to the decoding side as it is. As a result, the coding efficiency may be reduced.
  • the image encoding device 100 sends the minimum and maximum values of parallax necessary for parallax adjustment and viewpoint synthesis on the display side to the decoding side by including them in the slice header. Then, when predicting a disparity vector, the image encoding device 100 uses one of these values as a prediction vector when all the surrounding areas cannot be referred to.
  • the view ID of the reference view image based on the minimum and maximum values of the parallax may be different from the view ID of the reference image of the parallax vector. In such a case, scaling according to the distance of those views is performed on the minimum value or the maximum value, and the result is used as a prediction vector.
  • FIG. 5 is a block diagram illustrating a configuration example of the motion parallax prediction / compensation unit 115. In the example of FIG. 5, only the main information flow is shown.
  • the motion parallax prediction / compensation unit 115 is configured to include a motion parallax vector search unit 131, a predicted image generation unit 132, an encoding cost calculation unit 133, and a mode determination unit 134.
  • the motion parallax prediction / compensation unit 115 is configured to include an encoded information accumulation buffer 135, a spatial prediction vector generation unit 136, a temporal parallax prediction vector generation unit 137, and a prediction vector generation unit 138.
  • the decoded image pixel value from the decoded picture buffer 112 is supplied to the motion disparity vector search unit 131 and the predicted image generation unit 132.
  • the original image pixel value from the screen rearrangement buffer 102 is supplied to the motion parallax vector search unit 131 and the encoding cost calculation unit 133.
  • the motion disparity vector search unit 131 uses the original image pixel value from the screen rearrangement buffer 102 and the decoded image pixel value from the decoded picture buffer 112 to perform motion disparity prediction for all candidate inter prediction modes. To search for a motion parallax vector.
  • the motion disparity vector search unit 131 supplies the searched motion disparity vector, the referenced reference image index, and the prediction mode information to the predicted image generation unit 132 and the encoding cost calculation unit 133.
  • the predicted image generation unit 132 performs motion parallax compensation processing on the decoded image pixel value from the decoded picture buffer 112 using the motion parallax vector from the motion parallax vector search unit 131 to generate a predicted image.
  • the predicted image generation unit 132 supplies the generated predicted image pixel value to the encoding cost calculation unit 133.
  • the encoding cost calculation unit 133 includes an original image pixel value from the screen rearrangement buffer 102, a motion parallax vector from the motion parallax vector search unit 131, a reference image index, and prediction mode information, and a prediction from the prediction image generation unit 132. Image pixel values are supplied.
  • the encoding cost calculation unit 133 is further supplied with a motion parallax vector prediction value (ie, a prediction vector) from the prediction vector generation unit 138.
  • the encoding cost calculation unit 133 calculates an encoding cost value using the supplied information and, for example, the cost function of the above formula (4) or formula (5).
  • the encoding cost calculation unit 133 supplies the calculated encoding cost value to the mode determination unit 134.
  • the encoding cost calculation unit 133 also supplies the information supplied from each unit to the mode determination unit 134.
  • the mode determination unit 134 determines the optimal inter prediction mode by comparing the encoding cost values from the encoding cost calculation unit 133. In addition, the mode determination unit 134 determines, for each slice, which of the maximum value and the minimum value of the parallax should be used as the prediction vector as the prediction vector, based on the encoding cost value. When there are a plurality of prediction vectors as candidates, the mode determination unit 134 determines the optimum one based on the encoding cost value.
  • the mode determination unit 134 supplies the determined prediction image pixel value of the optimal inter prediction mode to the selection unit 116. Further, the mode determination unit 134 supplies the mode information of the determined optimal inter prediction mode, the reference image index, the prediction vector index, and motion disparity vector information indicating the difference between the motion disparity vector and the prediction vector to the lossless encoding unit 106. To do. At this time, a flag inserted in the slice header and indicating which parallax maximum value or minimum value is used is also supplied to the lossless encoding unit 106.
  • the mode determination unit 134 also supplies the mode information, the reference image index, and the motion parallax vector itself to the encoding information accumulation buffer 135 as the encoding information of the surrounding area.
  • the encoding information storage buffer 135 stores encoding information of the surrounding area, that is, information such as mode information, reference image index, and motion disparity vector, in order to generate a prediction vector.
  • the spatial prediction vector generation unit 136 acquires information such as the mode information of the surrounding area, the reference image index, and the motion disparity vector from the encoding information accumulation buffer 135 as necessary, and uses them to process the processing target. Generate a prediction vector of the spatial correlation of the region. The spatial prediction vector generation unit 136 supplies the generated prediction vector of the spatial correlation and the information on the peripheral region used for the generation to the prediction vector generation unit 138.
  • the temporal disparity prediction vector generation unit 137 obtains information such as the mode information of the surrounding area, the reference image index, and the motion disparity vector from the encoding information accumulation buffer 135 as necessary, and uses them to process The prediction vector of the temporal parallax correlation of the area is generated.
  • the temporal parallax prediction vector generation unit 137 supplies the generated prediction vector of the temporal parallax correlation and information on the surrounding area used for the generation to the prediction vector generation unit 138.
  • the prediction vector generation unit 138 acquires the minimum and maximum values of parallax and the reference view information from the parallax detection unit 122.
  • the prediction vector generation unit 138 acquires information on the generated prediction vector and the surrounding area from the spatial prediction vector generation unit 136 and the temporal parallax prediction vector generation unit 137.
  • the prediction vector generation unit 138 also acquires information on the reference image index of the region to be processed from the encoding cost calculation unit 133.
  • the prediction vector generation unit 138 refers to the acquired information, and obtains the prediction vector, the zero vector, or the parallax minimum and maximum values generated by the spatial prediction vector generation unit 136 or the temporal parallax prediction vector generation unit 137.
  • the predicted vector is supplied to the encoding cost calculation unit 133.
  • the prediction vector generation unit 138 sets the 0 vector as the prediction vector when all the surrounding areas cannot be referred to. .
  • the prediction vector generation unit 138 calculates the minimum or maximum value of the disparity when all the surrounding areas cannot be referred to. And supplied to the coding cost calculation unit 133 as a prediction vector candidate. At this time, if the view ID of the reference view image referred to by the minimum and maximum values of the disparity is different from the view ID of the reference image index, the prediction vector generation unit 138 scales the minimum and maximum values of the disparity, respectively. Are supplied to the encoding cost calculation unit 133 as prediction vector candidates.
  • FIG. 6 is a diagram illustrating an example of the syntax of the sequence parameter set. The number at the left end of each line is the line number given for explanation.
  • max_num_ref_frames is set in the 21st line. This max_num_ref_frames is the maximum value (number of sheets) of reference images in this stream.
  • View reference information is described in the 31st to 38th lines.
  • the view reference information includes the total number of views, the view identifier, the number of disparity predictions in the list L0, the identifier of the reference view in the list L0, the number of disparity predictions in the list L1, and the identifier of the reference view in the list L1. Composed.
  • num_views is set in the 31st line. This num_views is the total number of views contained in this stream.
  • the view_id [i] is set on the 33rd line.
  • This view_id [i] is an identifier for distinguishing views.
  • Num_ref_views_l0 [i] is set in the 34th line. This num_ref_views_l0 [i] is the number of parallax predictions in the list L0. For example, when “num_ref_views_l0 [i]” indicates 2, it indicates that only two views can be referred to in the list L0.
  • Ref_view_id_l0 [i] [j] is set in the 35th line.
  • This ref_view_id_l0 [i] [j] is an identifier of a view to be referred to in the disparity prediction in the list L0. For example, even if there are three views, when “num_ref_views_l0 [i]” indicates 2, in order to identify which of the three views that the list L0 refers to is “ref_view_id_l0” [i] [j] "is set.
  • Num_ref_views_l1 [i] is set in the 36th line.
  • the num_ref_views_l1 [i] is the number of parallax predictions in the list L1. For example, when “num_ref_views_l1 [i]” indicates 2, it indicates that only two views can be referred to in the list L1.
  • Ref_view_id_l1 [i] [j] is set in the 37th line.
  • This ref_view_id_l1 [i] [j] is a view identifier to be referred to in the disparity prediction in the list L1. For example, even if there are three views, when “num_ref_views_l1 [i]” indicates 2, in order to identify which of the three views that the list L1 refers to is “ref_view_id_l1” [i] [j] "is set.
  • Min min_max_ref_view_id [i] is set in the 40th line.
  • the min_max_ref_view_id [i] is a view ID (reference view information) of a reference view image that is a reference for the minimum value and the maximum value of parallax.
  • the minimum or maximum parallax value is not scaled and is a prediction vector.
  • the minimum or maximum disparity is scaled according to the distance between the two views, and the prediction vector and Is done.
  • FIG. 7 is a diagram illustrating an example of the syntax of the slice header. The number at the left end of each line is the line number given for explanation.
  • slice_type is set in the fifth line. This slice_type indicates which of the I slice, P slice, and B slice this slice is.
  • the view_id is set on the 8th line.
  • This view_id is an ID for identifying a view.
  • the minimum_disparity is set on the 9th line. This minimum_disparity is the minimum value of parallax.
  • the maximum_disparity is set in the 10th line. This maximum _disparity is the maximum value of parallax.
  • initialized_disparity_flag is set. This initialized_disparity_flag is a flag indicating which of the minimum value and the maximum value of the parallax is used as the value of the prediction vector.
  • initialized_disparity_flag 0
  • initialized_disparity_flag 1
  • the pic_order_cnt_lsb is set in the 12th line.
  • This pic_order_cnt_lsb is time information (that is, POC: Picture Order Count).
  • step S101 the A / D converter 101 performs A / D conversion on the input image.
  • step S102 the screen rearrangement buffer 102 stores the A / D converted image, and rearranges the picture from the display order to the encoding order.
  • step S103 the calculation unit 103 calculates the difference between the image rearranged by the process in step S102 and the predicted image.
  • the predicted image is supplied from the motion parallax prediction / compensation unit 115 in the case of inter prediction or from the intra prediction unit 114 in the case of intra prediction to the calculation unit 103 via the selection unit 116.
  • the data amount of difference data is reduced compared to the original image data. Therefore, the data amount can be compressed as compared with the case where the image is encoded as it is.
  • step S104 the orthogonal transform unit 104 orthogonally transforms the difference information generated by the process in step S103. Specifically, orthogonal transformation such as discrete cosine transformation and Karhunen-Loeve transformation is performed, and transformation coefficients are output.
  • orthogonal transformation such as discrete cosine transformation and Karhunen-Loeve transformation is performed, and transformation coefficients are output.
  • step S105 the quantization unit 105 quantizes the orthogonal transform coefficient obtained by the process in step S104.
  • step S105 The difference information quantized by the process of step S105 is locally decoded as follows. That is, in step S106, the inverse quantization unit 108 inversely quantizes the quantized orthogonal transform coefficient (also referred to as a quantization coefficient) generated by the process in step S105 with characteristics corresponding to the characteristics of the quantization unit 105. To do.
  • the quantized orthogonal transform coefficient also referred to as a quantization coefficient
  • step S107 the inverse orthogonal transform unit 109 performs inverse orthogonal transform on the orthogonal transform coefficient obtained by the process in step S106 with characteristics corresponding to the characteristics of the orthogonal transform unit 104.
  • step S108 the calculation unit 110 adds the predicted image to the locally decoded difference information, and generates a locally decoded image (an image corresponding to the input to the calculation unit 103).
  • step S109 the deblock filter 111 performs a deblock filter process on the image generated by the process in step S108. As a result, block distortion (that is, area distortion of a processing unit) is removed.
  • step S110 the decoded picture buffer 112 stores the image from which block distortion has been removed by the processing in step S109.
  • the decoded picture buffer 112 is also supplied with an image that has not been filtered by the deblocking filter 111 from the arithmetic unit 110 and stored therein.
  • step S111 the intra prediction unit 114 performs an intra prediction process in the intra prediction mode.
  • step S112 the motion parallax prediction / compensation unit 115 performs an inter motion parallax prediction process for performing motion parallax prediction and motion parallax compensation in the inter prediction mode. This inter motion parallax prediction process will be described later with reference to FIG.
  • step S112 motion parallax is predicted in all inter prediction modes, and a predicted image is generated.
  • a prediction vector is generated for the motion parallax vector.
  • the minimum value or the maximum value of the disparity is set as the prediction vector.
  • an encoding cost value is obtained, an optimal inter prediction mode is determined, and a prediction image in the optimal inter prediction mode is output to the selection unit 116 together with the encoding cost value.
  • step S113 the selection unit 116 determines the optimal prediction mode based on the encoding cost values output from the intra prediction unit 114 and the motion parallax prediction / compensation unit 115. That is, the selection unit 116 selects either the prediction image generated by the intra prediction unit 114 or the prediction image generated by the motion parallax prediction / compensation unit 115.
  • the selection information indicating which prediction image has been selected is supplied to the intra prediction unit 114 and the motion parallax prediction / compensation unit 115 for which the prediction image is selected.
  • the intra prediction unit 114 supplies information indicating the optimal intra prediction mode (that is, intra prediction mode information) to the lossless encoding unit 106.
  • the motion parallax prediction / compensation unit 115 When a prediction image in the optimal inter prediction mode is selected, the motion parallax prediction / compensation unit 115 performs lossless encoding unit 106 on information indicating the optimal inter prediction mode and, if necessary, information corresponding to the optimal inter prediction mode. Output to.
  • Information according to the optimal inter prediction mode includes motion disparity vector information, a prediction vector index, an initialized_disparity flag, a reference image index, and the like.
  • step S114 the lossless encoding unit 106 encodes the transform coefficient quantized by the process in step S105. That is, lossless encoding such as variable length encoding or arithmetic encoding is performed on the difference image (secondary difference image in the case of inter).
  • the lossless encoding unit 106 encodes information regarding the prediction mode of the prediction image selected by the process of step S113, and adds the encoded information to the encoded data obtained by encoding the difference image. Specifically, the lossless encoding unit 106 also encodes intra prediction mode information supplied from the intra prediction unit 114, information corresponding to the optimal inter prediction mode supplied from the motion parallax prediction / compensation unit 115, and the like. Is added to the encoded data. That is, motion disparity vector information, a prediction vector index, an initialized_disparity flag, a reference frame index, and the like are also encoded and added to the encoded data. Further, the parallax maximum value, the minimum value, and the reference view information from the parallax detection unit 122 are also encoded and added.
  • initialized_disparity flag and the maximum and minimum values of disparity are included in the slice header as described above with reference to FIG. 7, and the reference view information is the sequence parameter as described above with reference to FIG. Included in the set.
  • step S115 the accumulation buffer 107 accumulates the encoded data output from the lossless encoding unit 106.
  • the encoded data stored in the storage buffer 107 is appropriately read out and transmitted to the decoding side via the transmission path.
  • step S116 the rate control unit 117 controls the quantization operation rate of the quantization unit 105 based on the compressed image accumulated in the accumulation buffer 107 by the process in step S115 so that overflow or underflow does not occur. .
  • step S116 When the process of step S116 is finished, the encoding process is finished.
  • the decoded image pixel value from the decoded picture buffer 112 is supplied to the motion disparity vector search unit 131 and the predicted image generation unit 132.
  • the original image pixel value from the screen rearrangement buffer 102 is supplied to the motion parallax vector search unit 131 and the encoding cost calculation unit 133.
  • step S131 the motion disparity vector search unit 131 performs motion disparity prediction in each inter prediction mode using the original image pixel value from the screen rearrangement buffer 102 and the decoded image pixel value from the decoded picture buffer 112. As a result, since a motion disparity vector is searched, the motion disparity vector search unit 131 uses the searched motion disparity vector, the referenced reference image index, and the prediction mode information as the predicted image generation unit 132 and the encoding cost calculation unit 133. To supply.
  • step S132 the predicted image generation unit 132 performs motion parallax compensation processing on the decoded image pixel value from the decoded picture buffer 112 using the motion parallax vector from the motion parallax vector search unit 131, and generates a predicted image. To do. This process is also performed for every inter prediction mode.
  • step S133 the spatial prediction vector generation unit 136, the temporal parallax prediction vector generation unit 137, and the prediction vector generation unit 138 perform motion parallax vector prediction processing in each inter prediction mode. This motion disparity vector prediction process will be described later with reference to FIG.
  • step S133 a prediction vector in each inter prediction mode is generated. The generated prediction vector is supplied to the encoding cost calculation unit 133.
  • step S134 the spatial prediction vector generation unit 136, the temporal parallax prediction vector generation unit 137, and the prediction vector generation unit 138 perform a motion parallax vector prediction process in merge mode.
  • the motion parallax vector prediction processing in the merge mode will be described later with reference to FIG.
  • prediction vectors in the merge mode and the skip mode are generated.
  • the generated prediction vector is supplied to the encoding cost calculation unit 133.
  • the merge mode is a mode in which only the merge index that is an index indicating a prediction vector and a residual coefficient are sent to the decoding side in the merge mode
  • the skip mode is a mode in which only the merge index is sent to the decoding side.
  • the motion index of the target region is obtained from the surrounding motion parallax vector using the merge index.
  • step S135 the encoding cost calculation unit 133 calculates an encoding cost value for each mode (that is, each inter prediction mode, merge mode, and skip mode). For example, the cost function of Equation (4) or Equation (5) described above is used to calculate the encoding cost.
  • the encoding cost calculation unit 133 supplies the calculated encoding cost value to the mode determination unit 134 together with information supplied from each unit.
  • step S136 the mode determination unit 134 determines the optimal inter prediction mode by comparing the encoding cost values from the encoding cost calculation unit 133.
  • the mode determination unit 134 supplies the determined predicted image pixel value of the optimal inter prediction mode to the selection unit 116.
  • the mode determination unit 134 determines the prediction vector. Whether the initialized_disparity flag is 0 or 1 is determined by the mode determination unit 134 by determining the coding cost value for each slice by the process of step S133.
  • the mode determination unit 134 converts the mode information of the determined optimal inter prediction mode, the determined prediction vector index, the reference image index, and motion disparity vector information indicating the difference between the motion disparity vector and the prediction vector into the lossless encoding unit. 106.
  • the mode determination unit 134 supplies the determined mode information and merge index (prediction vector index in the merge mode) to the lossless encoding unit 106. Further, the mode determination unit 134 supplies the value of the initialized_disparity flag to the lossless encoding unit 106 for each slice.
  • the mode determination unit 134 supplies the determined mode information, reference image index, and motion parallax vector itself to the encoded information accumulation buffer 135.
  • mode information In the encoding information storage buffer 135, mode information, a reference image index, a motion parallax vector, and the like are stored as the encoding information of the peripheral area.
  • the spatial prediction vector generation unit 136 acquires information such as the mode information of the surrounding area, the reference image index, and the motion disparity vector from the encoded information accumulation buffer 135 as necessary. In step S151, the spatial prediction vector generation unit 136 generates a spatial correlation prediction vector of the processing target region using the acquired information. The spatial prediction vector generation unit 136 supplies the generated prediction vector of the spatial correlation and the information on the peripheral region used for the generation to the prediction vector generation unit 138.
  • the temporal disparity prediction vector generation unit 137 acquires information such as the mode information of the surrounding area, the reference image index, and the motion disparity vector from the encoded information accumulation buffer 135 as necessary. In step S152, the temporal disparity prediction vector generation unit 137 generates a prediction vector of the temporal disparity correlation of the processing target region using the acquired information. The temporal parallax prediction vector generation unit 137 supplies the generated prediction vector of the temporal parallax correlation and information on the surrounding area used for the generation to the prediction vector generation unit 138.
  • step S153 the prediction vector generation unit 138 determines whether or not all the peripheral areas of the processing target area are unreferenceable. When the prediction vector from the spatial prediction vector generation unit 136 or the temporal parallax prediction vector generation unit 137 is not supplied, it is determined in step S153 that there is no motion parallax information, that is, all the surrounding areas cannot be referred to, and processing Advances to step S154.
  • step S154 the predicted vector generation unit 138 acquires various necessary information. That is, the prediction vector generation unit 138 acquires the minimum and maximum values of parallax and the reference view information from the parallax detection unit 122. In addition, the prediction vector generation unit 138 also acquires information on the reference image index of the region to be processed from the encoding cost calculation unit 133.
  • step S155 the prediction vector generation unit 138 determines whether or not the vector is a disparity vector. In step S155, when the reference images indicated by the reference image index are different views at the same time, it is determined to be a disparity vector, and the predicted vector generation unit 138 predicts the minimum and maximum values of disparity in step S156, respectively. Determine a vector candidate.
  • step S157 the prediction vector generation unit 138 determines whether or not the reference image index and the view ID of the reference view image indicated by the reference view information are the same. If it is determined in step S157 that the view IDs of the reference image index and the reference view image are different, in step S158, the prediction vector generation unit 138 scales each prediction vector candidate according to the view distance. Then, the prediction vector generation unit 138 supplies the scaled prediction vector candidate to the encoding cost calculation unit 133, and ends the motion disparity vector prediction process.
  • the prediction vector generation unit 138 supplies the prediction vector candidate to the encoding cost calculation unit 133, and motion parallax vector prediction processing Exit.
  • step S155 when the reference image indicated by the reference image index is at a different time in the same view, it is determined in step S155 that it is a motion vector, and the process proceeds to step S159.
  • step S159 the prediction vector generation unit 138 supplies 0 as the prediction vector to the encoding cost calculation unit 133, and ends the motion disparity vector prediction process.
  • step S153 determines whether there is motion information, that is, it is not possible to refer to the entire surrounding area. If it is determined in step S153 that there is motion information, that is, it is not possible to refer to the entire surrounding area, the process proceeds to step S160.
  • step S160 the prediction vector generation unit 138 deletes any overlapping motion information. Then, the prediction vector generation unit 138 supplies all the others as the prediction vector candidates to the encoding cost calculation unit 133, and ends the motion disparity vector prediction process.
  • the mode determination unit 134 determines one prediction vector based on the encoding cost value, and supplies the determined prediction vector index to the lossless encoding unit 106.
  • mode information In the encoding information storage buffer 135, mode information, a reference image index, a motion parallax vector, and the like are stored as the encoding information of the peripheral area.
  • the spatial prediction vector generation unit 136 acquires information such as the mode information of the surrounding area, the reference image index, and the motion disparity vector from the encoded information accumulation buffer 135 as necessary. In step S171, the spatial prediction vector generation unit 136 generates a spatial correlation prediction vector of the processing target region using the acquired information. The spatial prediction vector generation unit 136 supplies the generated prediction vector of the spatial correlation and the information on the peripheral region used for the generation to the prediction vector generation unit 138.
  • the temporal disparity prediction vector generation unit 137 acquires information such as the mode information of the surrounding area, the reference image index, and the motion disparity vector from the encoded information accumulation buffer 135 as necessary. In step S172, the temporal disparity prediction vector generation unit 137 generates a prediction vector of the temporal disparity correlation of the processing target region using them. The temporal parallax prediction vector generation unit 137 supplies the generated prediction vector of the temporal parallax correlation and information on the surrounding area used for the generation to the prediction vector generation unit 138.
  • step S173 the predicted vector generation unit 138 determines whether or not all the surrounding areas cannot be referred to.
  • the prediction vector information from the spatial prediction vector generation unit 136 or the temporal parallax prediction vector generation unit 137 is not supplied, it is determined in step S173 that there is no motion information, that is, all the surrounding areas cannot be referred to, and the process Advances to step S174.
  • step S174 the prediction vector generation unit 138 acquires various necessary information. That is, the prediction vector generation unit 138 acquires the minimum and maximum values of parallax and the reference view information from the parallax detection unit 122.
  • step S175 the prediction vector generation unit 138 sets the reference image index to 0.
  • step S176 the prediction vector generation unit 138 determines whether or not the vector is a disparity vector.
  • step S176 when the reference images indicated by the reference image index are different views at the same time, it is determined to be a disparity vector, and the predicted vector generation unit 138 predicts the minimum and maximum values of disparity in step S177, respectively. Determine a vector candidate.
  • step S178 the prediction vector generation unit 138 determines whether or not the view ID of the reference view image indicated by the reference image index and the reference view information is the same. If it is determined in step S178 that the reference image index and the view ID of the reference view image are different, in step S179, the prediction vector generation unit 138 scales each prediction vector candidate according to the distance of the view. Then, the prediction vector generation unit 138 supplies the scaled prediction vector candidate to the encoding cost calculation unit 133, and ends the motion disparity vector prediction process.
  • step S178 If it is determined in step S178 that the reference ID of the reference image and the view ID of the reference view image are the same, the prediction vector generation unit 138 supplies the prediction vector candidate to the encoding cost calculation unit 133, and motion parallax in merge mode The vector prediction process is terminated.
  • step S176 when the reference image indicated by the reference image index is at a different time in the same view, it is determined in step S176 that it is a motion vector, and the process proceeds to step S180.
  • step S180 the prediction vector generation unit 138 supplies 0 as the prediction vector to the encoding cost calculation unit 133, and ends the motion parallax vector prediction process in the merge mode.
  • step S173 determines whether there is motion information, that is, it is not possible to refer to the entire surrounding area. If there is overlapping motion information in step S181, the prediction vector generation unit 138 deletes it. Then, the prediction vector generation unit 138 supplies all the others as the prediction vector candidates to the encoding cost calculation unit 133, and ends the motion disparity vector prediction process.
  • the mode determination unit 134 determines one prediction vector based on the encoding cost value, and the determined prediction vector index is supplied to the lossless encoding unit 106 as a merge index.
  • the prediction vector of the parallax vector when the prediction vector of the parallax vector is obtained, if all the surrounding areas cannot be referred to, the minimum or maximum value of the parallax is set as the prediction vector. As a result, the coding efficiency is improved as compared with the case where the previous prediction vector is set to 0 vector.
  • FIG. 12 illustrates a configuration of an embodiment of an image decoding device as an image processing device to which the present disclosure is applied.
  • An image decoding apparatus 200 shown in FIG. 12 is a decoding apparatus corresponding to the image encoding apparatus 100 of FIG.
  • encoded data encoded by the image encoding device 100 is transmitted to the image decoding device 200 corresponding to the image encoding device 100 via a predetermined transmission path and decoded.
  • the image decoding apparatus 200 includes a storage buffer 201, a lossless decoding unit 202, an inverse quantization unit 203, an inverse orthogonal transform unit 204, a calculation unit 205, a deblock filter 206, a screen rearrangement buffer 207, And a D / A converter 208.
  • the image decoding apparatus 200 includes a decoded picture buffer 209, a selection unit 210, an intra prediction unit 211, a motion parallax prediction / compensation unit 212, and a selection unit 213.
  • the image decoding apparatus 200 includes a multi-viewpoint decoded picture buffer 221.
  • the accumulation buffer 201 accumulates the transmitted encoded data. This encoded data is encoded by the image encoding device 100.
  • the lossless decoding unit 202 decodes the encoded data read from the accumulation buffer 201 at a predetermined timing by a method corresponding to the encoding method of the lossless encoding unit 106 in FIG.
  • the inverse quantization unit 203 inversely quantizes the coefficient data (quantization coefficient) obtained by decoding by the lossless decoding unit 202 by a method corresponding to the quantization method of the quantization unit 105 in FIG. That is, the inverse quantization unit 203 uses the quantization parameter supplied from the image encoding device 100 to perform inverse quantization of the quantization coefficient by the same method as the inverse quantization unit 108 in FIG.
  • the inverse quantization unit 203 supplies the inversely quantized coefficient data, that is, the orthogonal transform coefficient, to the inverse orthogonal transform unit 204. Also, the inverse quantization unit 203 supplies the quantization parameter obtained when the inverse quantization is performed to the deblocking filter 206.
  • the inverse orthogonal transform unit 204 is a method corresponding to the orthogonal transform method of the orthogonal transform unit 104 in FIG. Corresponding decoding residual data is obtained.
  • the decoded residual data obtained by the inverse orthogonal transform is supplied to the calculation unit 205.
  • a prediction image is supplied to the calculation unit 205 from the intra prediction unit 211 or the motion parallax prediction / compensation unit 212 via the selection unit 213.
  • the calculation unit 205 adds the decoded residual data and the prediction image, and obtains decoded image data corresponding to the image data before the prediction image is subtracted by the calculation unit 103 of the image encoding device 100.
  • the arithmetic unit 205 supplies the decoded image data to the deblock filter 206.
  • the deblock filter 206 is configured basically in the same manner as the deblock filter 111 of the image encoding device 100.
  • the deblocking filter 206 removes block distortion of the decoded image by appropriately performing deblocking filter processing.
  • the screen rearrangement buffer 207 rearranges images. That is, the order of frames rearranged for the encoding order by the screen rearrangement buffer 102 in FIG. 2 is rearranged in the original display order.
  • the D / A conversion unit 208 D / A converts the image supplied from the screen rearrangement buffer 207, outputs it to a display (not shown), and displays it.
  • the output of the deblock filter 206 is further supplied to the decoded picture buffer 209.
  • the decoded picture buffer 209, the selection unit 210, the intra prediction unit 211, the motion parallax prediction / compensation unit 212, and the selection unit 213 are the decoded picture buffer 112, the selection unit 113, the intra prediction unit 114, the motion parallax of the image encoding device 100. This corresponds to the prediction / compensation unit 115 and the selection unit 116, respectively.
  • the decoded picture buffer 209 stores the decoded image of the encoding viewpoint from the deblocking filter 206 or the decoded image other than the encoding viewpoint from the multi-view decoding picture buffer 221.
  • the selection unit 210 reads the inter-processed image and the referenced image from the decoded picture buffer 209 and supplies them to the motion parallax prediction / compensation unit 212.
  • the selection unit 210 reads an image used for intra prediction from the decoded picture buffer 209 and supplies the read image to the intra prediction unit 211.
  • the intra prediction unit 211 is appropriately supplied from the lossless decoding unit 202 with information indicating the intra prediction mode obtained by decoding the header information.
  • the intra prediction unit 211 generates a prediction image from the reference image acquired from the decoded picture buffer 209 based on this information, and supplies the generated prediction image to the selection unit 213.
  • the motion disparity prediction / compensation unit 212 includes information obtained by decoding the header information (prediction mode information, motion disparity vector information indicating a difference between the motion disparity vector and the prediction vector, a reference image index, a flag, various parameters, and the like) ) Is supplied from the lossless decoding unit 202. Furthermore, the motion parallax prediction / compensation unit 212 is also supplied with the parallax minimum value, maximum value, and reference view information from the lossless decoding unit 202.
  • the motion disparity prediction / compensation unit 212 generates a prediction vector based on the information supplied from the lossless decoding unit 202 using the motion disparity vector of the peripheral region around the region to be processed. At this time, when the prediction vector of the disparity vector is obtained and all the motion disparity vectors in the surrounding area cannot be referred to, the motion disparity prediction / compensation unit 212 uses the minimum disparity supplied from the lossless decoding unit 202. Either the value or the maximum value of the parallax is used as the prediction vector.
  • the motion disparity prediction / compensation unit 212 reconstructs a motion disparity vector using the generated prediction vector and motion disparity vector information, generates a prediction image from the reference image acquired from the decoded picture buffer 209, and generates the prediction image The predicted image is supplied to the selection unit 213.
  • the selection unit 213 selects the prediction image generated by the motion parallax prediction / compensation unit 212 or the intra prediction unit 211 and supplies the selected prediction image to the calculation unit 205.
  • the multi-viewpoint decoded picture buffer 221 interchanges the decoded image of the encoded viewpoint stored in the decoded picture buffer 209 and the decoded image other than the encoded viewpoint according to the view (viewpoint) to be processed.
  • FIG. 13 is a block diagram illustrating a configuration example of the motion parallax prediction / compensation unit 212. In the example of FIG. 13, only the main information flow is shown.
  • the motion disparity prediction / compensation unit 212 includes an encoded information accumulation buffer 231, a spatial prediction vector generation unit 232, a temporal disparity prediction vector generation unit 233, a prediction vector generation unit 234, a calculation unit 235, and a prediction image.
  • the generation unit 236 is included.
  • the spatial prediction vector generation unit 232, the temporal parallax prediction vector generation unit 233, and the prediction vector generation unit 234 are added to the spatial prediction vector generation unit 136, the temporal parallax prediction vector generation unit 137, and the prediction vector generation unit 138 of FIG. It corresponds.
  • mode information of a processing target region, a reference image index, a prediction vector index, and motion disparity vector information indicating a difference between a motion disparity vector and a prediction vector are supplied to the encoded information accumulation buffer 231. Further, the lossless decoding unit 202 supplies the initialized_disparity flag obtained from the slice header, the minimum parallax value, the maximum parallax value, and the reference view information obtained from the sequence parameter set to the encoded information accumulation buffer 231.
  • the encoded information storage buffer 231 is also supplied with the motion disparity vector (hereinafter also referred to as a decoded motion disparity vector) of the peripheral area reconstructed by the calculation unit 235.
  • the motion disparity vector hereinafter also referred to as a decoded motion disparity vector
  • the spatial prediction vector generation unit 232 acquires information such as the mode information of the surrounding area, the reference image index, and the decoded motion disparity vector from the encoded information accumulation buffer 231 as necessary, and uses them to perform processing. Generate a prediction vector of the spatial correlation of the region of interest. The spatial prediction vector generation unit 232 supplies the generated prediction vector of the spatial correlation and information on the surrounding area used for the generation to the prediction vector generation unit 234.
  • the temporal disparity prediction vector generation unit 233 acquires information such as the mode information of the surrounding area, the reference image index, and the decoded motion disparity vector from the encoded information accumulation buffer 231 as necessary.
  • the temporal parallax prediction vector generation unit 233 generates a prediction vector of the temporal parallax correlation of the region to be processed using such information.
  • the temporal parallax prediction vector generation unit 233 supplies the generated prediction vector of the temporal parallax correlation and information on the surrounding area used for the generation to the prediction vector generation unit 234.
  • the prediction vector generation unit 234 acquires a reference image index, a prediction vector index, an initialized_disparity flag, a minimum value and a maximum value of disparity, and reference view information from the encoded information accumulation buffer 231.
  • the prediction vector generation unit 234 acquires the generated prediction vector and information on the surrounding area from the spatial prediction vector generation unit 232 and the temporal parallax prediction vector generation unit 233.
  • the prediction vector generation unit 234 refers to the acquired information, and the prediction obtained from the prediction vector, the zero vector, or the parallax minimum or maximum value from the spatial prediction vector generation unit 232 or the temporal parallax prediction vector generation unit 233 The vector is supplied to the calculation unit 235.
  • the prediction vector generation unit 234 performs the minimum disparity value or disparity supplied from the lossless decoding unit 202.
  • One of the maximum values of is a prediction vector.
  • the calculation unit 235 acquires motion disparity vector information (difference value of motion disparity vectors) from the encoded information accumulation buffer 231 and adds it to the prediction vector from the prediction vector generation unit 234 to reconstruct the motion disparity vector. .
  • the calculation unit 235 supplies the reconstructed motion disparity vector to the predicted image generation unit 236 and the encoded information accumulation buffer 231.
  • the predicted image generation unit 236 acquires the pixel value of the decoded image indicated by the reference image index from the encoded information accumulation buffer 231 from the decoded picture buffer 209, and uses the motion disparity vector from the calculation unit 235 to generate the predicted image. Generate.
  • the predicted image generation unit 236 supplies the pixel value of the generated predicted image to the selection unit 213.
  • step S201 the accumulation buffer 201 accumulates the transmitted encoded data.
  • step S202 the lossless decoding unit 202 decodes the encoded data supplied from the accumulation buffer 201. That is, the I picture, P picture, and B picture encoded by the lossless encoding unit 106 in FIG. 2 are decoded.
  • prediction mode information (such as intra prediction mode, inter prediction mode, merge mode, or skip mode) is also decoded.
  • information according to the inter prediction mode such as motion disparity vector information, reference image index, prediction vector index, initialized_disparity flag, minimum and maximum values of disparity, and reference view information is also decoded.
  • the prediction mode information is intra prediction mode information
  • the prediction mode information is supplied to the intra prediction unit 211.
  • the prediction mode information is inter prediction mode information, merge mode, or skip mode
  • the prediction mode information and information corresponding to the inter prediction mode are supplied to the motion parallax prediction / compensation unit 212.
  • step S203 the inverse quantization unit 203 inversely quantizes the quantized orthogonal transform coefficient obtained by decoding by the lossless decoding unit 202.
  • step S204 the inverse orthogonal transform unit 204 performs inverse orthogonal transform on the orthogonal transform coefficient obtained by inverse quantization by the inverse quantization unit 203 by a method corresponding to the orthogonal transform unit 104 in FIG. As a result, the difference information corresponding to the input of the orthogonal transform unit 104 (output of the calculation unit 103) in FIG. 2 is decoded.
  • step S205 the calculation unit 205 adds the predicted image to the difference information obtained by the process in step S204. As a result, the original image data is decoded.
  • step S206 the deblocking filter 206 appropriately filters the decoded image obtained by the process in step S205. Thereby, block distortion is appropriately removed from the decoded image.
  • step S207 the decoded picture buffer 209 stores the filtered decoded image.
  • step S ⁇ b> 208 the intra prediction unit 211 or the motion parallax prediction / compensation unit 212 determines whether or not intra coding is performed in accordance with the prediction mode information supplied from the lossless decoding unit 202.
  • the intra prediction unit 211 acquires the intra prediction mode from the lossless decoding unit 202 in step S209. In step S210, the intra prediction unit 211 generates a prediction image according to the intra prediction mode acquired in step S209. The intra prediction unit 211 outputs the generated predicted image to the selection unit 213.
  • step S208 when the prediction mode information is the inter prediction mode, the merge mode, the skip mode, or the like, and it is determined in step S208 that the intra coding is not performed, the process proceeds to step S211.
  • the motion parallax prediction / compensation unit 212 performs an inter motion parallax prediction process. Details of the inter motion parallax prediction process will be described later with reference to FIG.
  • step S211 based on the information supplied from the lossless decoding unit 202, a prediction vector is generated using the motion parallax vector of the peripheral area around the area to be processed.
  • the motion disparity prediction / compensation unit 212 determines the minimum disparity supplied from the lossless decoding unit 202. Either the value or the maximum value of the parallax is used as the prediction vector.
  • the motion disparity vector is reconstructed, a prediction image is generated from the reference image acquired from the decoded picture buffer 209, and the generated prediction image is generated. Is supplied to the selection unit 213.
  • step S212 the selection unit 213 selects a predicted image. That is, the prediction unit 213 is supplied with the prediction image generated by the intra prediction unit 211 or the prediction image generated by the motion parallax prediction / compensation unit 212. The selection unit 213 selects the side to which the predicted image is supplied, and supplies the predicted image to the calculation unit 205. This predicted image is added to the difference information by the process of step S205.
  • step S213 the screen rearrangement buffer 207 rearranges the frames of the decoded image data. That is, the order of the frames of the decoded image data rearranged for encoding by the screen rearrangement buffer 102 (FIG. 2) of the image encoding device 100 is rearranged to the original display order.
  • step S214 the D / A converter 208 D / A converts the decoded image data in which the frames are rearranged in the screen rearrangement buffer 207.
  • the decoded image data is output to a display (not shown), and the image is displayed.
  • the mode information, reference image index, motion parallax vector information, and prediction vector index of the processing target area decoded from the lossless decoding unit 202 are supplied. If necessary, an initialized_disparity flag, a minimum and maximum parallax value, and reference view information are also supplied.
  • the encoded information accumulation buffer 231 acquires the motion parallax vector information and the like in step S231, and accumulates it in step S232.
  • the spatial prediction vector generation unit 232 and the temporal disparity prediction vector generation unit 233 refer to the mode information stored in the encoded information storage buffer 231 and in step S233, the mode of the processing target region is the skip mode. It is determined whether or not.
  • step S234 the spatial prediction vector generation unit 232 and the temporal parallax prediction vector generation unit 233 determine whether or not the mode of the region to be processed is the merge mode. judge. When it is determined in step S234 that the mode is not the merge mode, the process proceeds to step S235.
  • step S235 the prediction vector generation unit 234 and the prediction image generation unit 236 acquire the reference image index of the processing target region stored in the encoded information storage buffer 231.
  • step S236 the calculation unit 235 obtains motion parallax vector information that is a difference value of motion parallax vectors of the processing target area accumulated in the encoded information accumulation buffer 231.
  • step S237 the spatial prediction vector generation unit 232, the temporal parallax prediction vector generation unit 233, and the prediction vector generation unit 234 perform motion parallax vector prediction processing. Details of the motion parallax vector prediction processing will be described later with reference to FIG.
  • the prediction vector is generated by the process of step S237. At this time, when a disparity vector is generated and the surrounding area cannot be referred to, the maximum or minimum value of the disparity obtained from the slice header is used to generate a prediction vector.
  • the prediction vector generation unit 234 outputs the generated prediction vector to the calculation unit 235.
  • step S2308 the calculation unit 235 adds the difference value of the motion parallax vector obtained in step S236 and the prediction vector generated in step S237. Thereby, a motion parallax vector is reconstructed.
  • the reconstructed motion disparity vector is supplied to the predicted image generation unit 236, and the process proceeds to step S240.
  • step S233 if it is determined in step S233 that the mode is the skip mode, or if it is determined in step S234 that the mode is the merge mode, the process proceeds to step S239.
  • step S239 the spatial prediction vector generation unit 232, the temporal disparity prediction vector generation unit 233, and the prediction vector generation unit 234 perform a merge mode motion disparity vector prediction process. Details of the motion parallax vector prediction processing in the merge mode will be described later with reference to FIG.
  • the merge mode prediction vector is generated by the process of step S237.
  • the prediction vector is generated using the maximum or minimum value of the disparity obtained from the slice header.
  • the predicted vector generation unit 234 supplies the generated predicted vector and reference image index to the predicted image generation unit 236 via the calculation unit 235.
  • step S240 the predicted image generation unit 236 generates a predicted image.
  • the predicted image generation unit 236 reads the decoded image pixel value indicated by the reference image index from the encoded information accumulation buffer 231 from the decoded picture buffer 209. Then, the predicted image generation unit 236 generates a predicted image using the decoded image pixel value and the motion parallax vector.
  • the predicted image generation unit 236 reads the decoded image pixel value indicated by the reference image index from the predicted vector generation unit 234 from the decoded picture buffer 209. Then, the predicted image generation unit 236 generates a predicted image using the decoded image pixel value and the generated predicted vector.
  • the pixel value of the predicted image generated in step S240 is output to the selection unit 213, and the inter motion parallax prediction process ends.
  • the spatial prediction vector generation unit 232 acquires information such as the mode information of the surrounding area, the reference image index, and the decoded motion disparity vector from the encoded information accumulation buffer 231 as necessary. In step S251, the spatial prediction vector generation unit 232 generates a spatial correlation prediction vector of the processing target region using the acquired information. The spatial prediction vector generation unit 232 supplies the generated prediction vector of the spatial correlation and information on the surrounding area used for the generation to the prediction vector generation unit 234.
  • the temporal disparity prediction vector generation unit 233 acquires information such as the mode information of the surrounding area, the reference image index, and the decoded motion disparity vector from the encoded information accumulation buffer 231 as necessary. In step S252, the temporal parallax prediction vector generation unit 233 generates a prediction vector of the temporal parallax correlation of the processing target region using the acquired information. The temporal parallax prediction vector generation unit 233 supplies the generated prediction vector of the temporal parallax correlation and information on the surrounding area used for the generation to the prediction vector generation unit 234.
  • step S253 the prediction vector generation unit 234 determines whether there is motion parallax information.
  • the prediction vector generation unit 234 determines in step S253 that there is motion parallax information, The process proceeds to step S254.
  • step S254 the prediction vector generation unit 234 deletes overlapping motion disparity information, if any, from the prediction vector from the spatial prediction vector generation unit 232 or the prediction vector from the temporal disparity prediction vector generation unit 233. .
  • step S255 the prediction vector generation unit 234 determines a prediction vector.
  • the prediction vector generation unit 234 determines a prediction vector corresponding to the prediction vector index stored in the encoded information storage buffer 231 as a prediction vector.
  • the determined prediction vector is output to the calculation unit 235, and the motion parallax vector prediction process is terminated.
  • step S253 if it is determined in step S253 that there is no motion parallax information, the process proceeds to step S256.
  • step S256 the prediction vector generation unit 234 determines whether or not the prediction vector is a disparity vector.
  • the prediction vector is a disparity vector. Determination is made, and the process proceeds to step S257.
  • step S257 the predicted vector generation unit 234 determines whether or not the initialized_disparity flag obtained from the slice header stored in the encoded information storage buffer 231 is zero.
  • step S257 If it is determined in step S257 that the initialized_disparity flag is 0, the process proceeds to step S258.
  • step S258 the prediction vector generation unit 234 sets the minimum_disparity value obtained from the slice header, that is, the minimum value of disparity as the prediction vector.
  • step S259 the prediction vector generation unit 234 determines whether the view ID of the reference image index and the view ID of the reference view image indicated by the reference view information are the same. In step S259, when it is determined that the view ID of the reference image index and the view ID of the reference view image are the same, the process of step S260 is skipped, and the motion disparity vector generation process ends. That is, in this case, the prediction vector of step S258 is supplied to the calculation unit 235.
  • step S260 the prediction vector generation unit 234 scales the prediction vector obtained in step S258. That is, the prediction vector generation unit 234 supplies a value obtained by scaling the minimum value of parallax according to the viewpoint distance of the view image as a prediction vector to the calculation unit 235, and the motion parallax vector generation processing is ended.
  • step S257 If it is determined in step S257 that the initialized_disparity flag is 1, the process proceeds to step S261.
  • step S261 the prediction vector generation unit 234 sets the maximum_disparity value obtained from the slice header, that is, the parallax maximum value as the prediction vector.
  • step S262 the prediction vector generation unit 234 determines whether or not the view ID of the reference image index and the view ID of the reference view image indicated by the reference view information are the same. In step S262, when it is determined that the view ID of the reference image index and the view ID of the reference view image are the same, the process of step S263 is skipped, and the motion parallax vector generation process ends. That is, in this case, the prediction vector in step S261 is supplied to the calculation unit 235.
  • step S262 When it is determined in step S262 that the view ID of the reference image index is different from the view ID of the reference view image, in step S263, the prediction vector generation unit 234 scales the prediction vector obtained in step S261. That is, the prediction vector generation unit 234 supplies a value obtained by scaling the minimum value of parallax according to the viewpoint distance of the view image as a prediction vector to the calculation unit 235, and the motion parallax vector generation processing is ended.
  • step S264 the prediction vector generation unit 234 gives an initial value (0) to the prediction vector. That is, in step S264, the prediction vector generation unit 234 supplies the 0 vector as the prediction vector to the calculation unit 235, and the motion parallax vector generation processing is ended.
  • the spatial prediction vector generation unit 232 acquires information such as the mode information of the surrounding area, the reference image index, and the decoded motion disparity vector from the encoded information accumulation buffer 231 as necessary. In step S271, the spatial prediction vector generation unit 232 generates a spatial correlation prediction vector of the region to be processed using the acquired information. The spatial prediction vector generation unit 232 supplies the generated prediction vector of the spatial correlation and information on the surrounding area used for the generation to the prediction vector generation unit 234.
  • the temporal disparity prediction vector generation unit 233 acquires information such as the mode information of the surrounding area, the reference image index, and the decoded motion disparity vector from the encoded information accumulation buffer 231 as necessary. In step S272, the temporal parallax prediction vector generation unit 233 generates a prediction vector of the temporal parallax correlation of the processing target region using the acquired information. The temporal parallax prediction vector generation unit 233 supplies the generated prediction vector of the temporal parallax correlation and information on the surrounding area used for the generation to the prediction vector generation unit 234.
  • step S273 the prediction vector generation unit 234 determines whether or not motion parallax information exists.
  • the prediction vector generation unit 234 determines in step S273 that motion disparity information exists, and the process The process proceeds to step S274.
  • step S274 the prediction vector generation unit 234 deletes overlapping motion disparity information, if any, from the prediction vector from the spatial prediction vector generation unit 232 or the prediction vector from the temporal disparity prediction vector generation unit 233. .
  • step S275 the prediction vector generation unit 234 determines whether or not there is a plurality of pieces of motion parallax information. If it is determined in step S275 that there is a plurality of pieces of motion disparity information, the predicted vector generation unit 234 acquires a merge index from the encoded information accumulation buffer 231 in step S276.
  • the merge index is information indicating an index of a prediction vector in the merge mode.
  • step S276 is skipped.
  • step S277 the prediction vector generation unit 234 determines a prediction vector. That is, the motion parallax information indicated by the merge index is determined as a prediction vector from the plurality of motion parallax information. On the other hand, if only one motion parallax information exists, it is determined as a prediction vector.
  • step S278 the prediction vector generation unit 234 acquires the reference image index referred to by the motion disparity information determined as the prediction vector, and supplies the prediction vector and the reference image index to the calculation unit 235. Thereafter, the motion parallax vector prediction process in the merge mode is terminated.
  • step S273 if it is determined in step S273 that there is no motion parallax information, the process proceeds to step S279.
  • step S279 the prediction vector generation unit 234 gives an initial value (0) to the reference image index.
  • step S280 the prediction vector generation unit 234 determines whether or not the prediction vector is a disparity vector.
  • the reference image indicated by the reference image index is an image of a view that is different from the processing target picture at the same time, it is determined in step S280 that the prediction vector is a disparity vector, and the process proceeds to step S281.
  • the predicted vector generation unit 234 determines whether or not the initialized_disparity flag obtained from the slice header stored in the encoded information storage buffer 231 is 0 in step S281.
  • step S281 If it is determined in step S281 that the initialized_disparity flag is 0, the process proceeds to step S282.
  • step S282 the prediction vector generation unit 234 sets the minimum_disparity value obtained from the slice header, that is, the minimum value of disparity as the prediction vector.
  • step S283 the prediction vector generation unit 234 determines whether the view ID of the reference image index and the view ID of the reference view image indicated by the reference view information are the same. In step S283, when it is determined that the view ID of the reference image index and the view ID of the reference view image are the same, the process of step S284 is skipped, and the motion disparity vector generation process ends. That is, in this case, the prediction vector in step S282 is supplied to the calculation unit 235.
  • step S284 When it is determined in step S283 that the view ID of the reference image index is different from the view ID of the reference view image, in step S284, the prediction vector generation unit 234 scales the prediction vector obtained in step S282. That is, the prediction vector generation unit 234 supplies a value obtained by scaling the minimum value of parallax according to the viewpoint distance of the view image as a prediction vector to the calculation unit 235, and the motion parallax vector generation processing is ended.
  • step S281 If it is determined in step S281 that the initialized_disparity flag is 1, the process proceeds to step S285.
  • step S285 the prediction vector generation unit 234 sets the maximum_disparity value obtained from the slice header, that is, the parallax maximum value as the prediction vector.
  • step S286 the prediction vector generation unit 234 determines whether the view ID of the reference image index and the view ID of the reference view image indicated by the reference view information are the same. In step S286, when it is determined that the view ID of the reference image index and the view ID of the reference view image are the same, the process of step S287 is skipped, and the motion parallax vector generation process ends. That is, in this case, the prediction vector in step S285 is supplied to the calculation unit 235.
  • step S286 If it is determined in step S286 that the view ID of the reference image index is different from the view ID of the reference view image, in step S287, the prediction vector generation unit 234 scales the prediction vector obtained in step S285. That is, the prediction vector generation unit 234 supplies a value obtained by scaling the minimum value of parallax according to the viewpoint distance of the view image as a prediction vector to the calculation unit 235, and the motion parallax vector generation processing is ended.
  • step S280 when the reference image indicated by the reference image index is an image at a different time in the same view as the processing target image, it is determined in step S280 that the reference image is not a disparity vector, and the process proceeds to step S288.
  • step S288 the prediction vector generation unit 234 gives an initial value (0) to the prediction vector. That is, in step S288, the prediction vector generation unit 234 supplies the 0 vector as a prediction vector to the calculation unit 235, and the motion parallax vector generation processing is ended.
  • the prediction vector when predicting the disparity vector, if the surrounding area cannot be referred to, either the maximum value or the minimum value of the disparity in the picture is set as the prediction vector. Thereby, the performance of the prediction vector of a parallax vector can be improved. That is, unlike the conventional case, the difference value of the disparity vector to be transmitted is smaller than when the motion disparity vector itself is transmitted using the 0 vector as a prediction vector, so that the coding efficiency is improved.
  • the disparity vector is considered to occur between the minimum and maximum values of disparity defined in the slice header. Therefore, when none of the surrounding areas can be referred to, it is possible to generate a predictive vector with high probability by setting either the minimum value or the maximum value as the predictive vector.
  • parallax maximum and minimum values and reference view information are information necessary for parallax adjustment and viewpoint synthesis on the display side, they must be included in the slice header to be sent and used. More efficient.
  • the maximum parallax value used for the prediction vector may be a predetermined upper limit value within the parallax range, and the minimum parallax value may be a predetermined lower limit value within the parallax range. It is also possible to use an average value of parallax in a picture as a prediction vector. Furthermore, a predetermined value (setting value) within the parallax range may be used as the prediction vector.
  • the parallax maximum value and the minimum value are used as the prediction vectors.
  • the parallax maximum value, minimum value, upper limit value, lower limit value, average value, or predetermined value described above is used as the motion parallax vector. May be used as one of the candidate vectors.
  • H.264 / AVC format or the HEVC format is used as a base, the present disclosure is not limited to this, and other encoding / decoding methods can be applied.
  • the present disclosure includes, for example, MPEG, H.264, and the like.
  • image information such as discrete cosine transformation and motion compensation, such as 26x
  • network media such as satellite broadcasting, cable television, the Internet, or mobile phones.
  • the present invention can be applied to an image encoding device and an image decoding device used in
  • the present disclosure can be applied to an image encoding device and an image decoding device that are used when processing on a storage medium such as an optical disk, a magnetic disk, and a flash memory.
  • the present disclosure can also be applied to motion prediction / compensation devices included in those image encoding devices and image decoding devices.
  • a CPU (Central Processing Unit) 501 of the personal computer 500 performs various processes according to a program stored in a ROM (Read Only Memory) 502 or a program loaded from a storage unit 513 to a RAM (Random Access Memory) 503. Execute the process.
  • the RAM 503 also appropriately stores data necessary for the CPU 501 to execute various processes.
  • the CPU 501, the ROM 502, and the RAM 503 are connected to each other via a bus 504.
  • An input / output interface 510 is also connected to the bus 504.
  • the input / output interface 510 includes an input unit 511 including a keyboard and a mouse, a display including a CRT (Cathode Ray Tube) and an LCD (Liquid Crystal Display), an output unit 512 including a speaker, and a hard disk.
  • a communication unit 514 including a storage unit 513 and a modem is connected. The communication unit 514 performs communication processing via a network including the Internet.
  • a drive 515 is connected to the input / output interface 510 as necessary, and a removable medium 521 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory is appropriately mounted, and a computer program read from them is It is installed in the storage unit 513 as necessary.
  • a removable medium 521 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory is appropriately mounted, and a computer program read from them is It is installed in the storage unit 513 as necessary.
  • a program constituting the software is installed from a network or a recording medium.
  • the recording medium is distributed to distribute the program to the user separately from the apparatus main body, and includes a magnetic disk (including a flexible disk) on which the program is recorded, an optical disk ( It only consists of removable media 521 consisting of CD-ROM (compact disc -read only memory), DVD (including digital Versatile disc), magneto-optical disk (including MD (mini disc)), or semiconductor memory. Rather, it is composed of a ROM 502 on which a program is recorded and a hard disk included in the storage unit 513, which is distributed to the user in a state of being pre-installed in the apparatus main body.
  • a magnetic disk including a flexible disk
  • an optical disk It only consists of removable media 521 consisting of CD-ROM (compact disc -read only memory), DVD (including digital Versatile disc), magneto-optical disk (including MD (mini disc)), or semiconductor memory. Rather, it is composed of a ROM 502 on which a program is recorded and a hard disk included in the storage unit 513, which is
  • the program executed by the computer may be a program that is processed in time series in the order described in this specification, or in parallel or at a necessary timing such as when a call is made. It may be a program for processing.
  • the step of describing the program recorded on the recording medium is not limited to the processing performed in chronological order according to the described order, but may be performed in parallel or It also includes processes that are executed individually.
  • system represents the entire apparatus composed of a plurality of devices (apparatuses).
  • the configuration described as one device (or processing unit) may be divided and configured as a plurality of devices (or processing units).
  • the configurations described above as a plurality of devices (or processing units) may be combined into a single device (or processing unit).
  • a configuration other than that described above may be added to the configuration of each device (or each processing unit).
  • a part of the configuration of a certain device (or processing unit) may be included in the configuration of another device (or other processing unit). . That is, the present technology is not limited to the above-described embodiment, and various modifications can be made without departing from the gist of the present technology.
  • An image encoding device and an image decoding device include a transmitter or a receiver in optical broadcasting, satellite broadcasting, cable broadcasting such as cable TV, distribution on the Internet, and distribution to terminals by cellular communication
  • the present invention can be applied to various electronic devices such as a recording device that records an image on a medium such as a magnetic disk and a flash memory, or a playback device that reproduces an image from these storage media.
  • a recording device that records an image on a medium such as a magnetic disk and a flash memory
  • a playback device that reproduces an image from these storage media.
  • FIG. 19 shows an example of a schematic configuration of a television apparatus to which the above-described embodiment is applied.
  • the television apparatus 900 includes an antenna 901, a tuner 902, a demultiplexer 903, a decoder 904, a video signal processing unit 905, a display unit 906, an audio signal processing unit 907, a speaker 908, an external interface 909, a control unit 910, a user interface 911, And a bus 912.
  • Tuner 902 extracts a signal of a desired channel from a broadcast signal received via antenna 901, and demodulates the extracted signal. Then, the tuner 902 outputs the encoded bit stream obtained by the demodulation to the demultiplexer 903. In other words, the tuner 902 serves as a transmission unit in the television apparatus 900 that receives an encoded stream in which an image is encoded.
  • the demultiplexer 903 separates the video stream and audio stream of the viewing target program from the encoded bit stream, and outputs each separated stream to the decoder 904. Further, the demultiplexer 903 extracts auxiliary data such as EPG (Electronic Program Guide) from the encoded bit stream, and supplies the extracted data to the control unit 910. Note that the demultiplexer 903 may perform descrambling when the encoded bit stream is scrambled.
  • EPG Electronic Program Guide
  • the decoder 904 decodes the video stream and audio stream input from the demultiplexer 903. Then, the decoder 904 outputs the video data generated by the decoding process to the video signal processing unit 905. In addition, the decoder 904 outputs audio data generated by the decoding process to the audio signal processing unit 907.
  • the video signal processing unit 905 reproduces the video data input from the decoder 904 and causes the display unit 906 to display the video.
  • the video signal processing unit 905 may cause the display unit 906 to display an application screen supplied via a network.
  • the video signal processing unit 905 may perform additional processing such as noise removal on the video data according to the setting.
  • the video signal processing unit 905 may generate a GUI (Graphical User Interface) image such as a menu, a button, or a cursor, and superimpose the generated image on the output image.
  • GUI Graphic User Interface
  • the display unit 906 is driven by a drive signal supplied from the video signal processing unit 905, and displays a video on a video screen of a display device (for example, a liquid crystal display, a plasma display, or an OELD (Organic ElectroLuminescence Display) (organic EL display)). Or an image is displayed.
  • a display device for example, a liquid crystal display, a plasma display, or an OELD (Organic ElectroLuminescence Display) (organic EL display)). Or an image is displayed.
  • the audio signal processing unit 907 performs reproduction processing such as D / A conversion and amplification on the audio data input from the decoder 904, and outputs audio from the speaker 908.
  • the audio signal processing unit 907 may perform additional processing such as noise removal on the audio data.
  • the external interface 909 is an interface for connecting the television apparatus 900 to an external device or a network.
  • a video stream or an audio stream received via the external interface 909 may be decoded by the decoder 904. That is, the external interface 909 also has a role as a transmission unit in the television apparatus 900 that receives an encoded stream in which an image is encoded.
  • the control unit 910 includes a processor such as a CPU and memories such as a RAM and a ROM.
  • the memory stores a program executed by the CPU, program data, EPG data, data acquired via a network, and the like.
  • the program stored in the memory is read and executed by the CPU when the television device 900 is activated, for example.
  • the CPU controls the operation of the television device 900 according to an operation signal input from the user interface 911 by executing the program.
  • the user interface 911 is connected to the control unit 910.
  • the user interface 911 includes, for example, buttons and switches for the user to operate the television device 900, a remote control signal receiving unit, and the like.
  • the user interface 911 detects an operation by the user via these components, generates an operation signal, and outputs the generated operation signal to the control unit 910.
  • the bus 912 connects the tuner 902, the demultiplexer 903, the decoder 904, the video signal processing unit 905, the audio signal processing unit 907, the external interface 909, and the control unit 910 to each other.
  • the decoder 904 has the function of the image decoding apparatus according to the above-described embodiment. Therefore, when the image is decoded by the television apparatus 900, block distortion can be more appropriately removed, and the subjective image quality in the decoded image can be improved.
  • FIG. 20 shows an example of a schematic configuration of a mobile phone to which the above-described embodiment is applied.
  • a mobile phone 920 includes an antenna 921, a communication unit 922, an audio codec 923, a speaker 924, a microphone 925, a camera unit 926, an image processing unit 927, a demultiplexing unit 928, a recording / reproducing unit 929, a display unit 930, a control unit 931, an operation A portion 932 and a bus 933.
  • the antenna 921 is connected to the communication unit 922.
  • the speaker 924 and the microphone 925 are connected to the audio codec 923.
  • the operation unit 932 is connected to the control unit 931.
  • the bus 933 connects the communication unit 922, the audio codec 923, the camera unit 926, the image processing unit 927, the demultiplexing unit 928, the recording / reproducing unit 929, the display unit 930, and the control unit 931 to each other.
  • the mobile phone 920 has various operation modes including a voice call mode, a data communication mode, a shooting mode, and a videophone mode, and is used for sending and receiving voice signals, sending and receiving e-mail or image data, taking images, and recording data. Perform the action.
  • the analog voice signal generated by the microphone 925 is supplied to the voice codec 923.
  • the audio codec 923 converts an analog audio signal into audio data, A / D converts the compressed audio data, and compresses it. Then, the audio codec 923 outputs the compressed audio data to the communication unit 922.
  • the communication unit 922 encodes and modulates the audio data and generates a transmission signal. Then, the communication unit 922 transmits the generated transmission signal to a base station (not shown) via the antenna 921. In addition, the communication unit 922 amplifies a radio signal received via the antenna 921 and performs frequency conversion to acquire a received signal.
  • the communication unit 922 demodulates and decodes the received signal to generate audio data, and outputs the generated audio data to the audio codec 923.
  • the audio codec 923 decompresses the audio data and performs D / A conversion to generate an analog audio signal. Then, the audio codec 923 supplies the generated audio signal to the speaker 924 to output audio.
  • the control unit 931 generates character data constituting the e-mail in response to an operation by the user via the operation unit 932.
  • the control unit 931 causes the display unit 930 to display characters.
  • the control unit 931 generates e-mail data in response to a transmission instruction from the user via the operation unit 932, and outputs the generated e-mail data to the communication unit 922.
  • the communication unit 922 encodes and modulates email data and generates a transmission signal. Then, the communication unit 922 transmits the generated transmission signal to a base station (not shown) via the antenna 921.
  • the communication unit 922 amplifies a radio signal received via the antenna 921 and performs frequency conversion to acquire a received signal.
  • the communication unit 922 demodulates and decodes the received signal to restore the email data, and outputs the restored email data to the control unit 931.
  • the control unit 931 displays the content of the electronic mail on the display unit 930 and stores the electronic mail data in the storage medium of the recording / reproducing unit 929.
  • the recording / reproducing unit 929 has an arbitrary readable / writable storage medium.
  • the storage medium may be a built-in storage medium such as RAM or flash memory, and is externally mounted such as a hard disk, magnetic disk, magneto-optical disk, optical disk, USB (Unallocated Space Space Bitmap) memory, or memory card. It may be a storage medium.
  • the camera unit 926 images a subject to generate image data, and outputs the generated image data to the image processing unit 927.
  • the image processing unit 927 encodes the image data input from the camera unit 926 and stores the encoded stream in the storage medium of the storage / playback unit 929.
  • the demultiplexing unit 928 multiplexes the video stream encoded by the image processing unit 927 and the audio stream input from the audio codec 923, and the multiplexed stream is the communication unit 922. Output to.
  • the communication unit 922 encodes and modulates the stream and generates a transmission signal. Then, the communication unit 922 transmits the generated transmission signal to a base station (not shown) via the antenna 921.
  • the communication unit 922 amplifies a radio signal received via the antenna 921 and performs frequency conversion to acquire a received signal.
  • These transmission signal and reception signal may include an encoded bit stream.
  • the communication unit 922 demodulates and decodes the received signal to restore the stream, and outputs the restored stream to the demultiplexing unit 928.
  • the demultiplexing unit 928 separates the video stream and the audio stream from the input stream, and outputs the video stream to the image processing unit 927 and the audio stream to the audio codec 923.
  • the image processing unit 927 decodes the video stream and generates video data.
  • the video data is supplied to the display unit 930, and a series of images is displayed on the display unit 930.
  • the audio codec 923 decompresses the audio stream and performs D / A conversion to generate an analog audio signal. Then, the audio codec 923 supplies the generated audio signal to the speaker 924 to output audio.
  • the image processing unit 927 has the functions of the image encoding device and the image decoding device according to the above-described embodiment. Therefore, when encoding and decoding an image with the mobile phone 920, block distortion can be removed more appropriately, and the subjective image quality in the decoded image can be improved.
  • FIG. 21 shows an example of a schematic configuration of a recording / reproducing apparatus to which the above-described embodiment is applied.
  • the recording / reproducing device 940 encodes audio data and video data of a received broadcast program and records the encoded data on a recording medium.
  • the recording / reproducing device 940 may encode audio data and video data acquired from another device and record them on a recording medium, for example.
  • the recording / reproducing device 940 reproduces data recorded on the recording medium on a monitor and a speaker, for example, in accordance with a user instruction. At this time, the recording / reproducing device 940 decodes the audio data and the video data.
  • the recording / reproducing apparatus 940 includes a tuner 941, an external interface 942, an encoder 943, an HDD (Hard Disk Drive) 944, a disk drive 945, a selector 946, a decoder 947, an OSD (On-Screen Display) 948, a control unit 949, and a user interface. 950.
  • Tuner 941 extracts a signal of a desired channel from a broadcast signal received via an antenna (not shown), and demodulates the extracted signal. Then, the tuner 941 outputs the encoded bit stream obtained by the demodulation to the selector 946. That is, the tuner 941 has a role as a transmission unit in the recording / reproducing apparatus 940.
  • the external interface 942 is an interface for connecting the recording / reproducing apparatus 940 to an external device or a network.
  • the external interface 942 may be, for example, an IEEE1394 interface, a network interface, a USB interface, or a flash memory interface.
  • video data and audio data received via the external interface 942 are input to the encoder 943. That is, the external interface 942 serves as a transmission unit in the recording / reproducing device 940.
  • the encoder 943 encodes video data and audio data when the video data and audio data input from the external interface 942 are not encoded. Then, the encoder 943 outputs the encoded bit stream to the selector 946.
  • the HDD 944 records an encoded bit stream in which content data such as video and audio are compressed, various programs, and other data on an internal hard disk. Further, the HDD 944 reads out these data from the hard disk when reproducing video and audio.
  • the disk drive 945 performs recording and reading of data to and from the mounted recording medium.
  • the recording medium mounted on the disk drive 945 is, for example, a DVD disk (DVD-Video, DVD-RAM, DVD-R, DVD-RW, DVD + R, DVD + RW, etc.) or a Blu-ray (registered trademark) disk. It may be.
  • the selector 946 selects an encoded bit stream input from the tuner 941 or the encoder 943 when recording video and audio, and outputs the selected encoded bit stream to the HDD 944 or the disk drive 945. In addition, the selector 946 outputs the encoded bit stream input from the HDD 944 or the disk drive 945 to the decoder 947 during video and audio reproduction.
  • the decoder 947 decodes the encoded bit stream and generates video data and audio data. Then, the decoder 947 outputs the generated video data to the OSD 948. The decoder 904 outputs the generated audio data to an external speaker.
  • OSD 948 reproduces the video data input from the decoder 947 and displays the video. Further, the OSD 948 may superimpose a GUI image such as a menu, a button, or a cursor on the video to be displayed.
  • the control unit 949 includes a processor such as a CPU and memories such as a RAM and a ROM.
  • the memory stores a program executed by the CPU, program data, and the like.
  • the program stored in the memory is read and executed by the CPU when the recording / reproducing apparatus 940 is activated, for example.
  • the CPU controls the operation of the recording / reproducing apparatus 940 in accordance with an operation signal input from the user interface 950, for example, by executing the program.
  • the user interface 950 is connected to the control unit 949.
  • the user interface 950 includes, for example, buttons and switches for the user to operate the recording / reproducing device 940, a remote control signal receiving unit, and the like.
  • the user interface 950 detects an operation by the user via these components, generates an operation signal, and outputs the generated operation signal to the control unit 949.
  • the encoder 943 has the function of the image encoding apparatus according to the above-described embodiment.
  • the decoder 947 has the function of the image decoding apparatus according to the above-described embodiment.
  • FIG. 22 shows an example of a schematic configuration of an imaging apparatus to which the above-described embodiment is applied.
  • the imaging device 960 images a subject to generate an image, encodes the image data, and records it on a recording medium.
  • the imaging device 960 includes an optical block 961, an imaging unit 962, a signal processing unit 963, an image processing unit 964, a display unit 965, an external interface 966, a memory 967, a media drive 968, an OSD 969, a control unit 970, a user interface 971, and a bus. 972.
  • the optical block 961 is connected to the imaging unit 962.
  • the imaging unit 962 is connected to the signal processing unit 963.
  • the display unit 965 is connected to the image processing unit 964.
  • the user interface 971 is connected to the control unit 970.
  • the bus 972 connects the image processing unit 964, the external interface 966, the memory 967, the media drive 968, the OSD 969, and the control unit 970 to each other.
  • the optical block 961 includes a focus lens and a diaphragm mechanism.
  • the optical block 961 forms an optical image of the subject on the imaging surface of the imaging unit 962.
  • the imaging unit 962 includes an image sensor such as a CCD (Charge-Coupled Device) or a CMOS (Complementary Metal-Oxide Semiconductor), and converts an optical image formed on the imaging surface into an image signal as an electrical signal by photoelectric conversion. Then, the imaging unit 962 outputs the image signal to the signal processing unit 963.
  • CCD Charge-Coupled Device
  • CMOS Complementary Metal-Oxide Semiconductor
  • the signal processing unit 963 performs various camera signal processing such as knee correction, gamma correction, and color correction on the image signal input from the imaging unit 962.
  • the signal processing unit 963 outputs the image data after the camera signal processing to the image processing unit 964.
  • the image processing unit 964 encodes the image data input from the signal processing unit 963 and generates encoded data. Then, the image processing unit 964 outputs the generated encoded data to the external interface 966 or the media drive 968. The image processing unit 964 also decodes encoded data input from the external interface 966 or the media drive 968 to generate image data. Then, the image processing unit 964 outputs the generated image data to the display unit 965. In addition, the image processing unit 964 may display the image by outputting the image data input from the signal processing unit 963 to the display unit 965. Further, the image processing unit 964 may superimpose display data acquired from the OSD 969 on an image output to the display unit 965.
  • the OSD 969 generates a GUI image such as a menu, a button, or a cursor, and outputs the generated image to the image processing unit 964.
  • the external interface 966 is configured as a USB input / output terminal, for example.
  • the external interface 966 connects the imaging device 960 and a printer, for example, when printing an image.
  • a drive is connected to the external interface 966 as necessary.
  • a removable medium such as a magnetic disk or an optical disk is attached to the drive, and a program read from the removable medium can be installed in the imaging device 960.
  • the external interface 966 may be configured as a network interface connected to a network such as a LAN or the Internet. That is, the external interface 966 has a role as a transmission unit in the imaging device 960.
  • the recording medium mounted on the media drive 968 may be any readable / writable removable medium such as a magnetic disk, a magneto-optical disk, an optical disk, or a semiconductor memory.
  • a recording medium may be fixedly mounted on the media drive 968, and a non-portable storage unit such as an internal hard disk drive or an SSD (Solid State Drive) may be configured.
  • the control unit 970 includes a processor such as a CPU and memories such as a RAM and a ROM.
  • the memory stores a program executed by the CPU, program data, and the like.
  • the program stored in the memory is read and executed by the CPU when the imaging device 960 is activated, for example.
  • the CPU controls the operation of the imaging device 960 according to an operation signal input from the user interface 971 by executing the program.
  • the user interface 971 is connected to the control unit 970.
  • the user interface 971 includes, for example, buttons and switches for the user to operate the imaging device 960.
  • the user interface 971 detects an operation by the user via these components, generates an operation signal, and outputs the generated operation signal to the control unit 970.
  • the image processing unit 964 has the functions of the image encoding device and the image decoding device according to the above-described embodiment. Thereby, when encoding and decoding an image by the imaging device 960, it is possible to more appropriately remove block distortion and improve the subjective image quality in the decoded image.
  • the method for transmitting such information is not limited to such an example.
  • these pieces of information may be transmitted or recorded as separate data associated with the encoded bitstream without being multiplexed into the encoded bitstream.
  • the term “associate” means that an image (which may be a part of an image such as a slice or a block) included in the bitstream and information corresponding to the image can be linked at the time of decoding. Means. That is, information may be transmitted on a transmission path different from that of the image (or bit stream).
  • the information may be recorded on a recording medium (or another recording area of the same recording medium) different from the image (or bit stream). Furthermore, the information and the image (or the bit stream) may be associated with each other in an arbitrary unit such as a plurality of frames, one frame, or a part of the frame.
  • this technique can also take the following structures.
  • a decoding unit that decodes a bitstream and generates an image;
  • a prediction vector determination unit that determines, as a prediction vector, an upper limit value or a lower limit value of a parallax range between images of view images at the same time with different parallaxes;
  • An image processing apparatus comprising: a prediction image generation unit that generates a prediction image of the image generated by the decoding unit using the prediction vector determined by the prediction vector determination unit.
  • the upper limit value or the lower limit value of the parallax range between the images is a maximum value or a minimum value of the parallax between the images.
  • the image processing device according to (1).
  • the decoding receives a flag indicating which value is used as the prediction vector among the upper limit value and the lower limit value of the parallax range between the images,
  • the image processing apparatus according to (1) or (2), wherein the prediction vector determination unit determines a value indicated by a flag received by the decoding as the prediction vector.
  • the prediction vector generation unit determines any one of an upper limit value, a lower limit value, and an average value of a parallax range between the images as the prediction vector.
  • the prediction vector generation unit uses any one of an upper limit value, a lower limit value, and a predetermined value within the parallax range between the images as the prediction vector.
  • the image processing apparatus according to any one of (1) to (3).
  • the predicted vector generation unit scales the upper limit value or the lower limit value of the parallax range between the images,
  • the image processing device according to any one of (1) to (5), which is determined as the prediction vector.
  • the image processing apparatus Decode the bitstream to generate an image, When predicting the disparity vector of the region to be decoded of the generated image, if all the peripheral regions around the region are unreferenceable, the image obtained from the bitstream and the same disparity from the image are the same
  • the upper limit value or the lower limit value of the parallax range between the view images of the time is determined as a prediction vector, An image processing method for generating a predicted image of the generated image using the determined prediction vector.
  • a prediction vector determination unit that determines an upper limit value or a lower limit value of a parallax range as a prediction vector;
  • An image processing apparatus comprising: an encoding unit that encodes a difference between a disparity vector of the region and the prediction vector determined by the prediction vector determination unit.
  • the image processing apparatus according to (8) or (9), further including: a transmission unit that transmits.
  • the prediction vector generation unit determines any one of an upper limit value, a lower limit value, and an average value of a parallax range between the images as the prediction vector.
  • the prediction vector generation unit may use, as the prediction vector, any one of an upper limit value, a lower limit value, and a predetermined value within the parallax range between the images.
  • the image processing apparatus according to any one of (8) to (10). (13) When the image indicated by the reference image index of the image is different from the view image, the predicted vector generation unit scales the upper limit value or the lower limit value of the parallax range between the images, The image processing device according to any one of (8) to (12), which is determined as the prediction vector. (14) The image processing apparatus When predicting the disparity vector of the region to be encoded of the image, if all the peripheral regions around the region are not referable, the disparity between the image and the image of the view image at the same time with different disparity from the image Determine the upper or lower value of the range of as a prediction vector, An image processing method for encoding a difference between a disparity vector of the region and the determined prediction vector

Landscapes

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

Abstract

本技術は、多視点符号化における符号化効率を改善することができるようにする画像処理装置および方法に関する。予測ベクトル生成部は、処理対象の領域の周辺にある周辺領域の動き視差ベクトルを用いて、予測ベクトルを生成する。その際、視差ベクトルの予測ベクトルを求める場合であって、かつ、周辺領域が全て参照不可のとき、予測ベクトル生成部は、視差検出部から供給される視差の最小値または視差の最大値のどちらかを、予測ベクトルとする。本開示は、例えば、画像処理装置に適用することができる。

Description

画像処理装置および方法
 本開示は画像処理装置および方法に関し、特に、多視点符号化において、符号化効率を改善することができるようにした画像処理装置および方法に関する。
 近年、画像情報をデジタルとして取り扱い、その際、効率の高い情報の伝送、蓄積を目的とし、画像情報特有の冗長性を利用して、離散コサイン変換等の直交変換と動き補償により圧縮する符号化方式を採用して画像を圧縮符号する装置が普及しつつある。この符号化方式には、例えば、MPEG(Moving Picture Experts Group)などがある。
 特に、MPEG2(ISO/IEC 13818-2)は、汎用画像符号化方式として定義されており、飛び越し走査画像及び順次走査画像の双方、並びに標準解像度画像及び高精細画像を網羅する標準である。例えば、MPEG2は、プロフェッショナル用途及びコンシューマ用途の広範なアプリケーションに現在広く用いられている。MPEG2圧縮方式を用いることにより、例えば720×480画素を持つ標準解像度の飛び越し走査画像であれば4乃至8Mbpsの符号量(ビットレート)が割り当てられる。また、MPEG2圧縮方式を用いることにより、例えば1920×1088画素を持つ高解像度の飛び越し走査画像であれば18乃至22 Mbpsの符号量(ビットレート)が割り当てられる。これにより、高い圧縮率と良好な画質の実現が可能である。
 MPEG2は主として放送用に適合する高画質符号化を対象としていたが、MPEG1より低い符号量(ビットレート)、つまりより高い圧縮率の符号化方式には対応していなかった。携帯端末の普及により、今後そのような符号化方式のニーズは高まると思われ、これに対応してMPEG4符号化方式の標準化が行われた。画像符号化方式に関しては、1998年12月にISO/IEC 14496-2としてその規格が国際標準に承認された。
 標準化のスケジュールとしては、2003年3月にはH.264及びMPEG-4 Part10 (Advanced Video Coding、以下H.264/AVCと記す)という国際標準となっている。
 さらに、このH.264/AVCの拡張として、RGBや4:2:2、4:4:4といった、業務用に必要な符号化ツールや、MPEG-2で規定されていた8x8DCTや量子化マトリクスをも含んだFRExt (Fidelity Range Extension) の標準化が2005年2月に完了した。これにより、H.264/AVCを用いて、映画に含まれるフィルムノイズをも良好に表現することが可能な符号化方式となって、Blu-Ray Disc(商標)等の幅広いアプリケーションに用いられる運びとなった。
 しかしながら、昨今、ハイビジョン画像の4倍の、4000×2000画素程度の画像を圧縮したい、あるいは、インターネットのような、限られた伝送容量の環境において、ハイビジョン画像を配信したいといった、更なる高圧縮率符号化に対するニーズが高まっている。このため、先述の、ITU-T傘下のVCEG (=Video Coding Expert Group) において、符号化効率の改善に関する検討が継続され行なわれている。
 そして、現在、H.264/AVCより更なる符号化効率の向上を目的として、ITU-TとISO/IECとの共同の標準化団体であるJCTVC (Joint Collaboration Team - Video Coding) により、HEVC (High Efficiency Video Coding) と呼ばれる符号化方式の標準化が進められている。HEVCにおいては、ドラフトとして非特許文献1が発行されている。
 ところで、HEVCのドラフトにおいては、予測ベクトルを生成する処理がある。予測ベクトルは、処理対象のブロックの周辺にある周辺ブロックの動きベクトルから予測されるが、これらの参照ブロックが参照不可の時、予測ベクトルとして、0が用いられる。
Thomas Wiegand,Woo-jin Han,Benjamin Bross,Jens-Rainer Ohm,Gary J. Sullivian,"WD3:Working Draft3 of High-Efficiency Video Coding", JCTVc-E603, 2011年3月
 ここで、HEVCのドラフトにおいては、視差ベクトルについての記述がない。しかしながら、視差ベクトルについても同様の方法を適用する場合、非効率である。すなわち、周辺ブロックが参照不可の場合、予測ベクトルとして、0が用いられるとすると、復号側に視差ベクトルそのものが送られてしまうこととなるため、符号化効率の低下の恐れがある。
 本開示は、このような状況に鑑みてなされたものであり、多視点符号化において、符号化効率を改善することができるものである。
 本開示の一側面の画像処理装置は、ビットストリームを復号して、画像を生成する復号部と、前記復号部により生成された前記画像の復号対象の領域の視差ベクトルを予測する際に、前記領域の周辺にある周辺領域がすべて参照不可の場合、前記ビットストリームから得られる前記画像および前記画像と視差が異なる同一時刻のビュー画像の画像間の視差の範囲の上限の値または下限の値を、予測ベクトルとして決定する予測ベクトル決定部と、前記予測ベクトル決定部により決定された前記予測ベクトルを用いて、前記復号部により生成された前記画像の予測画像を生成する予測画像生成部とを備える。
 前記画像間の視差の範囲の上限の値または下限の値は、前記画像間の視差の最大値または最小値である。
 前記復号は、前記画像間の視差の範囲の上限の値および下限の値のうち、どの値を前記予測ベクトルとして用いるかを示すフラグを受け取り、前記予測ベクトル決定部は、前記復号により受け取られたフラグに示される値を、前記予測ベクトルとして決定することができる。
 前記予測ベクトル生成部は、前記画像間の視差の範囲の上限の値、下限の値、および平均値のいずれか1つを、前記予測ベクトルとして決定することができる。
 前記予測ベクトル生成部は、前記画像間の視差の範囲の上限の値、下限の値、および前記画像間の視差の範囲内の所定の値のいずれか1つを、前記予測ベクトルとして決定することができる。
 前記予測ベクトル生成部は、前記画像の参照画像インデックスが示す画像と、前記ビュー画像とが異なる場合、前記画像間の視差の範囲の上限の値または下限の値をスケーリングしたものを、前記予測ベクトルとして決定することができる。
 本開示の一側面の画像処理方法は、画像処理装置が、ビットストリームを復号して、画像を生成し、生成された前記画像の復号対象の領域の視差ベクトルを予測する際に、前記領域の周辺にある周辺領域がすべて参照不可の場合、前記ビットストリームから得られる前記画像および前記画像と視差が異なる同一時刻のビュー画像の画像間の視差の範囲の上限の値または下限の値を、予測ベクトルとして決定し、決定された前記予測ベクトルを用いて、生成された前記画像の予測画像を生成する。
 本開示の他の側面の画像処理装置は、画像の符号化対象の領域の視差ベクトルを予測する際に、前記領域の周辺にある周辺領域がすべて参照不可の場合、前記画像および前記画像と視差が異なる同一時刻のビュー画像の画像間の視差の範囲の上限の値または下限の値を、予測ベクトルとして決定する予測ベクトル決定部と、前記領域の視差ベクトルと、前記予測ベクトル決定部により決定された前記予測ベクトルとの差分を符号化する符号化部とを備える。
 前記画像間の視差の範囲の上限の値または下限の値は、前記画像間の視差の最大値または最小値である。
 前記予測ベクトル決定部により前記画像間の視差の範囲の上限の値または下限の値のうち、どの値を予測ベクトルに決定したかを示すフラグと、前記画像を符号化した符号化ストリームとを伝送する伝送部をさらに備えることができる。
 前記予測ベクトル生成部は、前記画像間の視差の範囲の上限の値、下限の値、および平均値のいずれか1つを、前記予測ベクトルとして決定することができる。
 前記予測ベクトル生成部は、前記画像間の視差の範囲の上限の値、下限の値、および前記画像間の視差の範囲内の所定の値のいずれか1つを、前記予測ベクトルとして決定することができる。
 前記予測ベクトル生成部は、前記画像の参照画像インデックスが示す画像と、前記ビュー画像とが異なる場合、前記画像間の視差の範囲の上限の値または下限の値をスケーリングしたものを、前記予測ベクトルとして決定することができる。
 本開示の他の側面の画像処理方法は、画像処理装置が、画像の符号化対象の領域の視差ベクトルを予測する際に、前記領域の周辺にある周辺領域がすべて参照不可の場合、前記画像および前記画像と視差が異なる同一時刻のビュー画像の画像間の視差の範囲の上限の値または下限の値を、予測ベクトルとして決定し、前記領域の視差ベクトルと、決定された前記予測ベクトルとの差分を符号化する。
 本開示の一側面においては、ビットストリームを復号して、画像が生成され、生成された前記画像の復号対象の領域の視差ベクトルを予測する際に、前記領域の周辺にある周辺領域がすべて参照不可の場合、前記ビットストリームから得られる前記画像および前記画像と視差が異なる同一時刻のビュー画像の画像間の視差の範囲の上限の値または下限の値が、予測ベクトルとして決定される。そして、決定された前記予測ベクトルを用いて、生成された前記画像の予測画像が生成される。
 本開示の他の側面においては、画像の符号化対象の領域の視差ベクトルを予測する際に、前記領域の周辺にある周辺領域がすべて参照不可の場合、前記画像および前記画像と視差が異なる同一時刻のビュー画像の画像間の視差の範囲の上限の値または下限の値が、予測ベクトルとして決定される。そして、前記領域の視差ベクトルと、決定された前記予測ベクトルとの差分が符号化される。
 なお、上述の画像処理装置は、独立した装置であっても良いし、1つの画像符号化装置または画像復号装置を構成している内部ブロックであってもよい。
 本開示の一側面によれば、画像を復号することができる。特に、符号化効率を改善することができる。
 本開示の他の側面によれば、画像を符号化することができる。特に、符号化効率を改善することができる。
デプス画像(ビュー画像)について説明する図である。 画像符号化装置の主な構成例を示すブロック図である。 3視点画像の場合のビュー間の参照関係の例を示す図である。 予測ベクトルの生成の例を説明する図である。 動き視差予測・補償部の構成例を示すブロック図である。 シーケンスパラメータセットのシンタックスの例を示す図である。 スライスヘッダのシンタックスの例を示す図である。 符号化処理の流れの例を説明するフローチャートである。 インター動き視差予測処理の流れの例を説明するフローチャートである。 動き視差ベクトル予測処理の流れの例を説明するフローチャートである。 マージモードの動き視差ベクトル予測処理の流れの例を説明するフローチャートである。 画像復号装置の主な構成例を示すブロック図である。 動き視差予測・補償部の構成例を示すブロック図である。 復号処理の流れの例を説明するフローチャートである。 インター動き視差予測処理の流れの例を説明するフローチャートである。 動き視差ベクトル予測処理の流れの例を説明するフローチャートである。 マージモードの動き視差ベクトル予測処理の流れの例を説明するフローチャートである。 パーソナルコンピュータの主な構成例を示すブロック図である。 テレビジョン装置の概略的な構成の一例を示すブロック図である。 携帯電話機の概略的な構成の一例を示すブロック図である。 記録再生装置の概略的な構成の一例を示すブロック図である。 撮像装置の概略的な構成の一例を示すブロック図である。
 以下、本開示を実施するための形態(以下実施の形態とする)について説明する。なお、説明は以下の順序で行う。
1.本明細書におけるデプス画像の説明
2.第1の実施の形態(画像符号化装置)
3.第2の実施の形態(画像復号装置)
4.第3の実施の形態(パーソナルコンピュータ)
5.第4の実施の形態(テレビジョン受像機)
6.第5の実施の形態(携帯電話機)
7.第6の実施の形態(ハードディスクレコーダ)
8.第7の実施の形態(カメラ)
 <1.本明細書におけるデプス画像(ビュー画像)の説明>
 図1は、視差と奥行きについて説明する図である。
 図1に示すように、被写体Mのカラー画像が、位置C1に配置されたカメラc1と位置C2に配置されたカメラc2により撮影される場合、被写体Mの、カメラc1(カメラc2)からの奥行方向の距離である奥行きZは、以下の式(1)で定義される。
Figure JPOXMLDOC01-appb-M000001
 なお、Lは、位置C1と位置C2の水平方向の距離(以下、カメラ間距離という)である。また、dは、カメラc1で撮影されたカラー画像上の被写体Mの位置の、カラー画像の中心からの水平方向の距離u1から、カメラc2で撮影されたカラー画像上の被写体Mの位置の、カラー画像の中心からの水平方向の距離u2を減算した値、即ち視差である。さらに、fは、カメラc1の焦点距離であり、式(1)では、カメラc1とカメラc2の焦点距離は同一であるものとしている。
 式(1)に示すように、視差dと奥行きZは、一意に変換可能である。従って、本明細書では、カメラc1とカメラc2により撮影された2視点のカラー画像の視差dを表す画像と奥行きZを表す画像とを総称して、デプス画像(ビュー画像)とする。
 なお、デプス画像(ビュー画像)は、視差dまたは奥行きZを表す画像であればよく、デプス画像(ビュー画像)の画素値としては、視差dまたは奥行きZそのものではなく、視差dを正規化した値、奥行きZの逆数1/Zを正規化した値等を採用することができる。
 視差dを8bit(0~255)で正規化した値Iは、以下の式(2)により求めることができる。なお、視差dの正規化ビット数は8bitに限定されず、10bit,12bitなど他のビット数にすることも可能である。
Figure JPOXMLDOC01-appb-M000002
 なお、式(2)において、Dmaxは、視差dの最大値であり、Dminは、視差dの最小値である。最大値Dmaxと最小値Dminは、1画面単位で設定されてもよいし、複数画面単位で設定されてもよい。
 また、奥行きZの逆数1/Zを8bit(0~255)で正規化した値yは、以下の式(3)により求めることができる。なお、奥行きZの逆数1/Zの正規化ビット数は8bitに限定されず、10bit,12bitなど他のビット数にすることも可能である。
Figure JPOXMLDOC01-appb-M000003
 なお、式(3)において、Zfarは、奥行きZの最大値であり、Znearは、奥行きZの最小値である。最大値Zfarと最小値Znearは、1画面単位で設定されてもよいし、複数画面単位で設定されてもよい。
 このように、本明細書では、視差dと奥行きZとは一意に変換可能であることを考慮して、視差dを正規化した値Iを画素値とする画像と、奥行きZの逆数1/Zを正規化した値yを画素値とする画像とを総称して、デプス画像(ビュー画像)とする。ここでは、デプス画像(ビュー画像)のカラーフォーマットは、YUV420又はYUV400であるものとするが、他のカラーフォーマットにすることも可能である。
 なお、デプス画像(ビュー画像)の画素値としてではなく、値I又は値yの情報自体に着目する場合には、値I又は値yを、デプス情報(視差情報/ビュー情報)とする。更に、値I又は値yをマッピングしたものをデプスマップ(視差マップ)とする。
 <2.第1の実施の形態>
[画像符号化装置の構成例]
 図2は、本開示を適用した画像処理装置としての画像符号化装置の一実施の形態の構成を表している。
 図2に示される画像符号化装置100は、予測処理を用いて画像データを符号化する。ここで、符号化方式としては、例えば、H.264及びMPEG(Moving Picture Experts Group)4 Part10(AVC(Advanced Video Coding))(以下H.264/AVCと称する)方式や、HEVC(High Efficiency Video Coding)方式などが用いられる。
 なお、H.264/AVC方式においては、処理単位となる領域として、マクロブロックやブロックが用いられる。また、HEVC方式においては、処理単位となる領域として、CU(コーディングユニット)、PU(プレディクションユニット)、およびTU(トランスフォームユニット)等が用いられる。すなわち、ブロックも、ユニットも、処理単位となる領域を示すものであるので、以下、適宜、どちらの場合も含むように、処理単位の領域、あるいは処理対象の領域という文言を用いて説明する。
 図2の例において、画像符号化装置100は、A/D(Analog / Digital)変換部101、画面並べ替えバッファ102、演算部103、直交変換部104、量子化部105、可逆符号化部106、蓄積バッファ107、および逆量子化部108を有する。また、画像符号化装置100は、逆直交変換部109、演算部110、デブロックフィルタ111、デコードピクチャバッファ112、選択部113、イントラ予測部114、動き視差予測・補償部115、選択部116、およびレート制御部117を有する。
 画像符号化装置100は、さらに、多視点デコードピクチャバッファ121および視差検出部122を有する。
 A/D変換部101は、入力された画像データをA/D変換し、画面並べ替えバッファ102に出力し、記憶させる。
 画面並べ替えバッファ102は、記憶した表示の順番のフレームの画像を、GOP(Group of Picture)構造に応じて、符号化のためのフレームの順番に並べ替える。画面並べ替えバッファ102は、フレームの順番を並び替えた画像を、演算部103に供給する。また、画面並べ替えバッファ102は、フレームの順番を並び替えた画像を、イントラ予測部114および動き視差予測・補償部115にも供給する。
 演算部103は、画面並べ替えバッファ102から読み出された画像から、選択部116を介してイントラ予測部114若しくは動き視差予測・補償部115から供給される予測画像を減算し、その差分情報を直交変換部104に出力する。
 例えば、イントラ符号化が行われる画像の場合、演算部103は、画面並べ替えバッファ102から読み出された画像から、イントラ予測部114から供給される予測画像を減算する。また、例えば、インター符号化が行われる画像の場合、演算部103は、画面並べ替えバッファ102から読み出された画像から、動き視差予測・補償部115から供給される予測画像を減算する。
 直交変換部104は、演算部103から供給される差分情報に対して、離散コサイン変換、カルーネン・レーベ変換等の直交変換を施し、その変換係数を量子化部105に供給する。
 量子化部105は、直交変換部104が出力する変換係数を量子化する。量子化部105は、量子化された変換係数を可逆符号化部106に供給する。
 可逆符号化部106は、その量子化された変換係数に対して、可変長符号化、算術符号化等の可逆符号化を施す。
 可逆符号化部106は、イントラ予測モードを示す情報などをイントラ予測部114から取得し、インター予測モードを示す情報や動き視差ベクトル情報などを動き視差予測・補償部115から取得する。
 可逆符号化部106は、量子化された変換係数を符号化するとともに、イントラ予測モード情報、インター予測モード情報、および動き視差ベクトル情報などの情報を、符号化データのヘッダ情報の一部とする(多重化する)。また、可逆符号化部106は、視差検出部122から供給される視差の最大値、視差の最小値、およびそれらのもとになる参照ビュー情報も、符号化データのヘッダ情報の一部とする。可逆符号化部106は、符号化して得られた符号化データを蓄積バッファ107に供給して蓄積させる。
 例えば、可逆符号化部106においては、可変長符号化または算術符号化等の可逆符号化処理が行われる。可変長符号化としては、CAVLC(Context-Adaptive Variable Length Coding)などがあげられる。算術符号化としては、CABAC(Context-Adaptive Binary Arithmetic Coding)などがあげられる。
 蓄積バッファ107は、可逆符号化部106から供給された符号化データを、一時的に保持し、所定のタイミングにおいて、符号化された符号化画像として、例えば、後段の図示せぬ記録装置や伝送路などに出力する。
 また、量子化部105において量子化された変換係数は、逆量子化部108にも供給される。逆量子化部108は、その量子化された変換係数を、量子化部105による量子化に対応する方法で逆量子化する。逆量子化部108は、得られた変換係数を、逆直交変換部109に供給する。
 逆直交変換部109は、供給された変換係数を、直交変換部104による直交変換処理に対応する方法で逆直交変換する。逆直交変換された出力(復元された差分情報)は、演算部110に供給される。
 演算部110は、逆直交変換部109より供給された逆直交変換結果、すなわち、復元された差分情報に、選択部116を介してイントラ予測部114若しくは動き視差予測・補償部115から供給される予測画像を加算する。これにより、局部的に復号された画像(復号画像)が得られる。
 例えば、差分情報が、イントラ符号化が行われる画像に対応する場合、演算部110は、その差分情報にイントラ予測部114から供給される予測画像を加算する。また、例えば、差分情報が、インター符号化が行われる画像に対応する場合、演算部110は、その差分情報に動き視差予測・補償部115から供給される予測画像を加算する。
 その加算結果は、デブロックフィルタ111およびデコードピクチャバッファ112に供給される。
 デブロックフィルタ111は、適宜デブロックフィルタ処理を行うことにより復号画像のブロック歪を除去する。デブロックフィルタ111は、そのフィルタ処理結果をデコードピクチャバッファ112に供給する。
 デコードピクチャバッファ112には、デブロックフィルタ111からの符号化視点の復号画像、あるいは、多視点デコードピクチャバッファ121からの符号化視点以外の復号画像が蓄積される。デコードピクチャバッファ112は、所定のタイミングにおいて、蓄積されている参照画像を、選択部113を介してイントラ予測部114または動き視差予測・補償部115に出力する。
 例えば、イントラ符号化が行われる画像の場合、デコードピクチャバッファ112は、参照画像を、選択部113を介してイントラ予測部114に供給する。また、例えば、インター符号化が行われる場合、デコードピクチャバッファ112は、参照画像を、選択部113を介して動き視差予測・補償部115に供給する。
 選択部113は、デコードピクチャバッファ112から供給される参照画像がイントラ符号化を行う画像である場合、その参照画像をイントラ予測部114に供給する。また、選択部113は、デコードピクチャバッファ112から供給される参照画像がインター符号化を行う画像である場合、その参照画像を動き視差予測・補償部115に供給する。
 イントラ予測部114は、画面内の画素値を用いて予測画像を生成するイントラ予測(画面内予測)を行う。イントラ予測部114は、複数のモード(イントラ予測モード)によりイントラ予測を行う。
 イントラ予測部114は、全てのイントラ予測モードで予測画像を生成し、各予測画像を評価し、最適なモードを選択する。イントラ予測部114は、最適なイントラ予測モードを選択すると、その最適なモードで生成された予測画像を、選択部116を介して演算部103や演算部110に供給する。
 また、上述したように、イントラ予測部114は、採用したイントラ予測モードを示すイントラ予測モード情報等の情報を、適宜可逆符号化部106に供給する。
 動き視差予測・補償部115は、インター符号化が行われる画像について、画面並べ替えバッファ102から供給される入力画像と、選択部113を介してデコードピクチャバッファ112から供給される参照画像とを用いて、動き視差予測を行う。そして、動き視差予測・補償部115は、検出された動き視差ベクトルに応じて動き視差補償処理を行い、予測画像(インター予測画像情報)を生成する。これらの処理は、候補となる全てのインター予測モードに対して行われ、その中から最適インター予測モードが決定される。動き視差予測・補償部115は、生成された予測画像を、選択部116を介して演算部103や演算部110に供給する。
 また、動き視差予測・補償部115は、処理対象の領域の周辺にある周辺領域の動き視差ベクトルを用いて、予測ベクトルを生成する。その際、視差ベクトルの予測ベクトルを求める場合であって、かつ、周辺領域が全て参照不可のとき、動き視差予測・補償部115は、視差検出部122から供給される視差の最小値または視差の最大値のどちらかを、予測ベクトルとする。
 また、動き視差予測・補償部115は、採用されたインター予測モードを示すインター予測モード情報、動き視差ベクトル情報、参照画像インデックス、および予測ベクトルインデックスなどの情報を可逆符号化部106に供給する。なお、動き視差ベクトル情報は、動き視差ベクトルと予測ベクトルとの差分を示す情報である。
 選択部116は、イントラ符号化を行う画像の場合、イントラ予測部114の出力を演算部103や演算部110に供給し、インター符号化を行う画像の場合、動き視差予測・補償部115の出力を演算部103や演算部110に供給する。
 レート制御部117は、蓄積バッファ107に蓄積された圧縮画像に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部105の量子化動作のレートを制御する。
 多視点デコードピクチャバッファ121は、処理対象のビュー(視点)に応じて、デコードピクチャバッファ112に蓄積されている符号化視点の復号画像と、符号化視点以外の復号画像を入れ替える。
 視差検出部122は、処理対象の画像と、その画像と視差が異なる同一時刻の参照ビュー画像との画像間の視差の最大値と最小値を、動き視差予測・補償部115および可逆符号化部106に供給する。さらに、視差検出部122は、その視差の算出の際に参照される画像の情報を、参照ビュー情報として、動き視差予測・補償部115および可逆符号化部106に供給する。ここで、視差の算出の際に参照される画像を、参照ビュー画像と称する。この視差の最大値、最小値、参照ビュー情報は、例えば、ストリームの制作者などにより図示せぬ操作部を介して、視差検出部122に入力される。
 なお、この視差の最大値と最小値は、可逆符号化部106においてスライスヘッダに挿入される。また、参照ビュー情報は、シーケンスパラメータセットに挿入される。
[予測モード選択]
 ここで、より高い符号化効率を達成するには、適切な予測モードの選択が重要である。例えば、H.264/AVC方式においては、かかる選択方式の例として、JM (Joint Model) と呼ばれるH.264/MPEG-4 AVCの参照ソフトウエア (http://iphome.hhi.de/suehring/tml/index.htm において公開されている) に実装されている方法を挙げることが出来る。
 JMにおいては、以下に述べる、High Complexity Modeと、Low Complexity Modeの2通りのモード判定方法を選択することが可能である。どちらも、それぞれの予測モードModeに関する符号化コスト値を算出し、これを最小にする予測モードを注目ブロック乃至マクロブロックに対する最適モードとして選択する。
 High Complexity Modeにおけるコスト関数は、以下の式(4)のように表すことができる。
 Cost(Mode∈Ω) = D + λ*R ・・・(4)
 ここで、Ωは、注目ブロック乃至マクロブロックを符号化するための候補モードの全体集合、Dは、当該予測モードModeで符号化した場合の、復号画像と入力画像の差分エネルギーである。λは、量子化パラメータの関数として与えられるLagrange未定乗数である。Rは、直交変換係数を含んだ、当該モードModeで符号化した場合の総符号量である。
 つまり、High Complexity Modeでの符号化を行うには、上記パラメータD及びRを算出するため、全ての候補モードModeにより、一度、仮エンコード処理を行う必要があり、より高い演算量を要する。
 Low Complexity Modeにおけるコスト関数は以下の式(5)のように示される。
 Cost(Mode∈Ω) = D + QP2Quant(QP) * HeaderBit ・・・(5)
 ここで、Dは、High Complexity Modeの場合と異なり、予測画像と入力画像の差分エネルギーとなる。QP2Quant(QP) は、量子化パラメータQPの関数として与えられ、HeaderBitは、直交変換係数を含まない、動きベクトルや、モードといった、Headerに属する情報に関する符号量である。
 すなわち、Low Complexity Modeにおいては、それぞれの候補モードModeに関して、予測処理を行う必要があるが、復号化画像までは必要ないため、符号化処理まで行う必要はない。このため、High Complexity Modeより低い演算量での実現が可能である。
[3視点画像の参照関係]
 図3は、3視点画像の場合のビュー間の参照関係の例を示す図である。図3の例においては、左から、POC(Picture Order Count:ピクチャの出力順序)の昇順にIピクチャ、B2ピクチャ、B1ピクチャ、B2ピクチャ、B0ピクチャ、B2ピクチャ、B1ピクチャ、B2ピクチャ、Pピクチャが示されている。POCのインデックスの上には、PicNum(復号順序)のインデックスも示されている。
 例えば、PicNum=1のPピクチャは、復号済みのPicNum=0のIピクチャを参照可能である。PicNum=2のB0ピクチャは、復号済みのPicNum=0のIピクチャとPicNum=1のPピクチャを参照可能である。PicNum=3のB1ピクチャは、復号済みのPicNum=0のIピクチャとPicNum=2のB0ピクチャを参照可能である。PicNum=4のB1ピクチャは、復号済みのPicNum=2のB0ピクチャとPicNum=1のPピクチャを参照可能である。
 また、上から順に、同一の時刻情報を有し、異なる視差情報を有するビュー0(View_id_0)、ビュー1(View_id_1)、ビュー2(View_id_2)の各ピクチャが示されている。図3の例においては、ビュー0、ビュー2、ビュー1の順に復号される場合が示されている。
 ビュー0は、ベースビューと呼ばれ、その画像は、時間予測を使って符号化することが可能である。ビュー1とビュー2は、ノンベースビューと呼ばれ、その画像は、時間予測と視差予測を使って符号化することが可能である。
 ビュー1の画像は、視差予測の際、矢印に示されるように、符号化済みのビュー0の画像とビュー2の画像を参照することが可能である。このことから、ビュー1のPOCが8番目であるPピクチャは、時間予測ではPピクチャであるが、視差予測ではBピクチャとなる。
 ビュー2の画像は、視差予測の際、矢印に示されるように、符号化済みのビュー0の画像を参照することが可能である。
 そして、図3の3視点画像においては、まず、ベースビューの画像が復号され、同じ時刻の他のビューの画像がすべて復号された後に、次の時刻(PicNum)のベースビューの画像の復号が開始されるという順序で復号が行われる。
[予測ベクトルの生成]
 次に、図4を参照して、HEVC方式における予測ベクトルの生成について説明する。図4の例においては、処理対象の領域Mと同じピクチャ内に、領域Mの左にある空間相関領域A、領域Mの上にある空間相関領域B、領域Mの右上にある空間相関領域C、および領域Mの左下にある空間相関領域Dが示されている。また、矢印に示される処理対象の領域Mと異なる時刻のピクチャには、領域Mと同じ位置の時間相関領域Nが示されている。これらの相関領域を、本実施の形態においては、周辺領域と称している。すなわち、周辺領域には、空間的の周辺領域も、時間的の周辺領域も含まれる。なお、各領域の-1は、各領域の動き視差ベクトルが参照不可であることを示している。
 HEVC方式において、処理対象の領域Mの予測ベクトルは、空間的に周辺にある空間相関領域A,B,C,D並びに時間的に周辺にある時間相関領域Nのいずれかの動き視差ベクトルが用いられて生成される。
 ただし、空間相関領域A,B,C,D並びに時間相関領域Nのいずれも、イントラ予測であったり、画面の外であったりして、それらの動きベクトルがすべて参照不可である場合、処理対象の領域Mの予測ベクトルは、0ベクトルとされていた。
 視差ベクトルの場合にも、上述の方法を用いる場合、予測ベクトルが0ベクトルということで、処理対象の領域で探索された視差ベクトルは、そのままの値が復号側に送られる。その結果、符号化効率が低下してしまう恐れがあった。
 そこで、画像符号化装置100は、表示側で視差調整や視点合成をするために必要な視差の最小値と最大値を、スライスヘッダに含めて復号側に送る。そして、画像符号化装置100は、視差ベクトルを予測する際に、すべての周辺領域が参照不可のとき、それらのどちらかの値を、予測ベクトルとして用いる。
 なお、視差の最小値と最大値が基準としている参照ビュー画像のビューIDと、視差ベクトルの参照画像のビューIDが異なる場合もある。このような場合には、それらのビューの距離に応じたスケーリングが最小値または最大値に対して行われ、その結果が予測ベクトルとして用いられる。
 以下、その詳細について説明していく。
[動き視差予測・補償部の構成例]
 次に、画像符号化装置100の各部について説明する。図5は、動き視差予測・補償部115の構成例を示すブロック図である。なお、図5の例においては、主要な情報の流れのみが図示されている。
 図5の例において、動き視差予測・補償部115は、動き視差ベクトル探索部131、予測画像生成部132、符号化コスト算出部133、およびモード判定部134を含むように構成されている。また、動き視差予測・補償部115は、符号化情報蓄積バッファ135、空間予測ベクトル生成部136、時間視差予測ベクトル生成部137、および予測ベクトル生成部138を含むように構成されている。
 デコードピクチャバッファ112からの復号画像画素値は、動き視差ベクトル探索部131および予測画像生成部132に供給される。画面並べ替えバッファ102からの原画像画素値は、動き視差ベクトル探索部131および符号化コスト算出部133に供給される。
 動き視差ベクトル探索部131は、画面並べ替えバッファ102からの原画像画素値と、デコードピクチャバッファ112からの復号画像画素値を用いて、候補となるすべてのインター予測モードに対して、動き視差予測を行い、動き視差ベクトルを探索する。動き視差ベクトル探索部131は、探索した動き視差ベクトル、参照した参照画像インデックス、および予測モード情報を、予測画像生成部132および符号化コスト算出部133に供給する。
 予測画像生成部132は、デコードピクチャバッファ112からの復号画像画素値に対して、動き視差ベクトル探索部131からの動き視差ベクトルを用いて動き視差補償処理を行い、予測画像を生成する。予測画像生成部132は、生成した予測画像画素値を、符号化コスト算出部133に供給する。
 符号化コスト算出部133には、画面並べ替えバッファ102からの原画像画素値、動き視差ベクトル探索部131からの動き視差ベクトル、参照画像インデックス、および予測モード情報、予測画像生成部132からの予測画像画素値が供給される。符号化コスト算出部133には、さらに、予測ベクトル生成部138からの動き視差ベクトルの予測値(すなわち、予測ベクトル)が供給される。
 符号化コスト算出部133は、供給された情報と、例えば、上述した式(4)または式(5)のコスト関数を用いて符号化コスト値を算出する。符号化コスト算出部133は、算出した符号化コスト値を、モード判定部134に供給する。その際、符号化コスト算出部133は、各部から供給された情報も、モード判定部134に供給する。
 モード判定部134は、符号化コスト算出部133からの符号化コスト値を比較することで、最適インター予測モードを決定する。また、モード判定部134は、予測ベクトルとして、視差の最大値、最小値のどちらを予測ベクトルに用いるのがよいかも、符号化コスト値に基づいてスライス毎に決定する。なお、予測ベクトルが候補として複数あった場合には、モード判定部134により符号化コスト値に基づいて最適なものが予測ベクトルとして決定される。
 モード判定部134は、決定した最適インター予測モードの予測画像画素値を、選択部116に供給する。また、モード判定部134は、決定した最適インター予測モードのモード情報、参照画像インデックス、予測ベクトルインデックス、および動き視差ベクトルと予測ベクトルとの差分を示す動き視差ベクトル情報を可逆符号化部106に供給する。このとき、スライスヘッダに挿入される、視差の最大値、最小値のどちらを用いるのかを示すフラグも、可逆符号化部106に供給される。
 さらに、モード判定部134は、周辺領域の符号化情報として、モード情報、参照画像インデックス、動き視差ベクトルそのものを、符号化情報蓄積バッファ135にも供給する。
 符号化情報蓄積バッファ135は、予測ベクトル生成のため、周辺領域の符号化情報、すなわち、モード情報、参照画像インデックス、および動き視差ベクトルなどの情報を蓄積する。
 空間予測ベクトル生成部136は、符号化情報蓄積バッファ135から、必要に応じて、周辺領域のモード情報、参照画像インデックス、および動き視差ベクトルなどの情報を取得し、それらを用いて、処理対象の領域の空間相関の予測ベクトルを生成する。空間予測ベクトル生成部136は、生成した空間相関の予測ベクトルと、その生成に用いた周辺領域の情報を予測ベクトル生成部138に供給する。
 時間視差予測ベクトル生成部137は、符号化情報蓄積バッファ135から、必要に応じて、周辺領域のモード情報、参照画像インデックス、および動き視差ベクトルなどの情報を取得し、それらを用いて、処理対象の領域の時間視差相関の予測ベクトルを生成する。時間視差予測ベクトル生成部137は、生成した時間視差相関の予測ベクトルと、その生成に用いた周辺領域の情報を予測ベクトル生成部138に供給する。
 予測ベクトル生成部138は、視差検出部122から、視差の最小値および最大値と、参照ビュー情報を取得する。予測ベクトル生成部138は、空間予測ベクトル生成部136および時間視差予測ベクトル生成部137から、生成された予測ベクトルと周辺領域の情報を取得する。また、予測ベクトル生成部138は、符号化コスト算出部133から、処理対象の領域の参照画像インデックスの情報も取得する。
 予測ベクトル生成部138は、取得した情報を参照して、空間予測ベクトル生成部136または時間視差予測ベクトル生成部137により生成された予測ベクトル、0ベクトル、または、視差の最小値および最大値により求められる予測ベクトルを、符号化コスト算出部133に供給する。
 予測ベクトル生成部138は、動きベクトルの予測を行う場合(参照画像インデックスが示す参照画像が異なる時刻の画像である場合)に、周辺領域がすべて参照不可であるとき、0ベクトルを予測ベクトルとする。
 予測ベクトル生成部138は、視差ベクトルの予測を行う場合(参照画像インデックスが示す参照画像が同時刻の異なるビューの場合)に、周辺領域がすべて参照不可のとき、視差の最小値または最大値を、予測ベクトル候補として、符号化コスト算出部133に供給する。その際、視差の最小値、最大値が参照する参照ビュー画像のビューIDと参照画像インデックスのビューIDが異なるならば、予測ベクトル生成部138は、視差の最小値および最大値をそれぞれスケーリングしたものを、予測ベクトル候補として、符号化コスト算出部133に供給する。
[シーケンスパラメータセットのシンタックスの例]
 図6は、シーケンスパラメータセットのシンタックスの例を示す図である。各行の左端の数字は説明のために付した行番号である。
 図6の例において、第21行目にmax_num_ref_framesが設定されている。このmax_num_ref_framesは、このストリームにおける参照画像の最大値(枚数)である。
 第31行目乃至第38行目には、ビュー参照情報が記述されている。例えば、ビュー参照情報は、ビューの合計数、ビューの識別子、リストL0における視差予測の枚数、リストL0における参照ビューの識別子、リストL1における視差予測の枚数、およびリストL1における参照ビューの識別子などで構成される。
 具体的には、第31行目にnum_viewsが設定されている。このnum_views は、このストリーム中に含まれているビューの合計数である。
 第33行目にview_id[i]が設定されている。このview_id[i]は、ビューを区別するための識別子である。
 第34行目にnum_ref_views_l0[i]が設定されている。このnum_ref_views_l0[i]は、リストL0における視差予測の枚数である。例えば、「num_ref_views_l0[i]」が2を示す場合、リストL0においては、2枚のビューのみ参照可能なことを示している。
 第35行目にref_view_id_l0[i][j]が設定されている。このref_view_id_l0[i][j]は、リストL0における視差予測で参照するビューの識別子である。例えば、3つのビューがあったとしても、「num_ref_views_l0[i]」が2を示す場合に、3つのうちの、リストL0が参照する2つのビューはどのビューであるかを識別するために「ref_view_id_l0[i][j]」が設定される。
 第36行目にnum_ref_views_l1[i]が設定されている。このnum_ref_views_l1[i]は、リストL1における視差予測の枚数である。例えば、「num_ref_views_l1[i]」が2を示す場合、リストL1においては、2枚のビューのみ参照可能なことを示している。
 第37行目にref_view_id_l1[i][j]が設定されている。このref_view_id_l1[i][j]は、リストL1における視差予測で参照するビューの識別子である。例えば、3つのビューがあったとしても、「num_ref_views_l1[i]」が2を示す場合に、3つのうちの、リストL1が参照する2つのビューはどのビューであるかを識別するために「ref_view_id_l1[i][j]」が設定される。
 第40行目にmin_max_ref_view_id[i]が設定されている。このmin_max_ref_view_id[i]は、視差の最小値と最大値の参照となる参照ビュー画像のビューID(参照ビュー情報)である。
 周辺領域がすべて参照不可の場に、このビューIDと、処理対象の領域の参照画像インデックスのビューIDが同じとき、視差の最小値または最大値は、スケーリングされずに、予測ベクトルとされる。周辺領域がすべて参照不可の場に、このビューIDと参照画像インデックスのビューIDが異なるとき、視差の最小値または最大値は、それら2つのビューの距離に応じたスケーリングがなされて、予測ベクトルとされる。
[スライスヘッダのシンタックスの例]
 図7は、スライスヘッダのシンタックスの例を示す図である。各行の左端の数字は説明のために付した行番号である。
 図7の例において、第5行目にslice_typeが設定されている。このslice_typeは、このスライスがIスライス、Pスライス、およびBスライスのうちのどのスライスであるかを示すものである。
 第8行目にview_idが設定されている。このview_id は、ビューを識別するためのIDである。
 第9行目にminimum_disparityが設定されている。このminimum_disparityは、視差の最小値である。第10行目にmaximum_disparityが設定されている。このmaximum _disparityは、視差の最大値である。
 第11行目にinitialized_disparity_flagが設定されている。こおinitialized_disparity_flagは、予測ベクトルの値として、視差の最小値および最大値の何れの値を使うかを示すフラグである。
 すなわち、initialized_disparity_flag=0のとき、スライスヘッダのminimum_disparityを予測ベクトルとすることを示す。initialized_disparity_flag=1のとき、スライスヘッダのmaxmum _disparityを予測ベクトルとすることを示す。
 第12行目にpic_order_cnt_lsbが設定されている。このpic_order_cnt_lsbは、時刻情報(すなわち、POC:Picture Order Count)である。
 以上のようなシンタックスを用いることで、符号化側と復号側においては、次のように予測ベクトルが生成される。例えば、A=復号ピクチャと復号対象領域が参照する参照画像の視点距離、B=復号ピクチャと参照ビュー画像の視点距離、pmv=復号対象領域の予測ベクトルであるとする。
 A=Bの場合、次の式(6)に示される予測ベクトルが生成される。
 initialized_disparity_flag=0 → pmv=minimum_disparity
 initialized_disparity_flag=1 → pmv=maximum_disparity
    ・・・(6)
 AとBが等しくない場合、次の式(7)に示される予測ベクトルが生成される。
 initialized_disparity_flag=0 → pmv=minimum_disparity*A/B
 initialized_disparity_flag=1 → pmv=maximum_disparity*A/B
    ・・・(7)
 すなわち、ピクチャ間の距離(A/B)に応じてスケーリングされた値が予測ベクトルとされる。 
[符号化処理の流れ]
 次に、以上のような画像符号化装置100により実行される各処理の流れについて説明する。最初に、図8のフローチャートを参照して、符号化処理の流れの例を説明する。
 ステップS101において、A/D変換部101は入力された画像をA/D変換する。ステップS102において、画面並べ替えバッファ102は、A/D変換された画像を記憶し、各ピクチャの表示する順番から符号化する順番への並べ替えを行う。
 ステップS103において、演算部103は、ステップS102の処理により並び替えられた画像と、予測画像との差分を演算する。予測画像は、インター予測する場合は動き視差予測・補償部115から、イントラ予測する場合はイントラ予測部114から、選択部116を介して演算部103に供給される。
 差分データは元の画像データに較べてデータ量が低減される。したがって、画像をそのまま符号化する場合に較べて、データ量を圧縮することができる。
 ステップS104において、直交変換部104は、ステップS103の処理により生成された差分情報を直交変換する。具体的には、離散コサイン変換、カルーネン・レーベ変換等の直交変換が行われ、変換係数が出力される。
 ステップS105において、量子化部105は、ステップS104の処理により得られた直交変換係数を量子化する。
 ステップS105の処理により量子化された差分情報は、次のようにして局部的に復号される。すなわち、ステップS106において、逆量子化部108は、ステップS105の処理により生成された量子化された直交変換係数(量子化係数とも称する)を量子化部105の特性に対応する特性で逆量子化する。
 ステップS107において、逆直交変換部109は、ステップS106の処理により得られた直交変換係数を、直交変換部104の特性に対応する特性で逆直交変換する。
 ステップS108において、演算部110は、予測画像を局部的に復号された差分情報に加算し、局部的に復号された画像(演算部103への入力に対応する画像)を生成する。
 ステップS109において、デブロックフィルタ111は、ステップS108の処理により生成された画像に対して、デブロックフィルタ処理を行う。これによりブロック歪み(すなわち、処理単位の領域歪み)が除去される。
 ステップS110において、デコードピクチャバッファ112は、ステップS109の処理によりブロック歪みが除去された画像を記憶する。なお、デコードピクチャバッファ112にはデブロックフィルタ111によりフィルタ処理されていない画像も演算部110から供給され、記憶される。
 ステップS111において、イントラ予測部114は、イントラ予測モードのイントラ予測処理を行う。ステップS112において、動き視差予測・補償部115は、インター予測モードでの動き視差予測や動き視差補償を行うインター動き視差予測処理を行う。このインター動き視差予測処理については、図9を参照して後述する。
 ステップS112の処理により、すべてのインター予測モードで動き視差が予測され、予測画像が生成される。また、動き視差ベクトルについて、予測ベクトルが生成される。特に、視差ベクトルの予測ベクトルを生成する場合に、周辺領域がすべて参照不可であるとき、視差の最小値または最大値が予測ベクトルとされる。そして、符号化コスト値が求められて、最適インター予測モードが決定され、最適インター予測モードの予測画像が、符号化コスト値とともに、選択部116に出力される。
 ステップS113において、選択部116は、イントラ予測部114および動き視差予測・補償部115から出力された各符号化コスト値に基づいて、最適予測モードを決定する。つまり、選択部116は、イントラ予測部114により生成された予測画像と、動き視差予測・補償部115により生成された予測画像のいずれか一方を選択する。
 また、このいずれの予測画像が選択されたかを示す選択情報は、イントラ予測部114および動き視差予測・補償部115のうち、予測画像が選択された方に供給される。最適イントラ予測モードの予測画像が選択された場合、イントラ予測部114は、最適イントラ予測モードを示す情報(すなわち、イントラ予測モード情報)を、可逆符号化部106に供給する。
 最適インター予測モードの予測画像が選択された場合、動き視差予測・補償部115は、最適インター予測モードを示す情報と、必要に応じて、最適インター予測モードに応じた情報を可逆符号化部106に出力する。最適インター予測モードに応じた情報としては、動き視差ベクトル情報、予測ベクトルインデックス、initialized_disparityフラグ、参照画像インデックスなどがあげられる。
 ステップS114において、可逆符号化部106は、ステップS105の処理により量子化された変換係数を符号化する。すなわち、差分画像(インターの場合、2次差分画像)に対して、可変長符号化や算術符号化等の可逆符号化が行われる。
 また、可逆符号化部106は、ステップS113の処理により選択された予測画像の予測モードに関する情報を符号化し、差分画像を符号化して得られる符号化データに付加する。具体的には、可逆符号化部106は、イントラ予測部114から供給されるイントラ予測モード情報、または、動き視差予測・補償部115から供給される最適インター予測モードに応じた情報なども符号化し、符号化データに付加する。すなわち、動き視差ベクトル情報、予測ベクトルインデックス、initialized_disparityフラグ、参照フレームインデックスなども符号化され、符号化データに付加される。さらに、視差検出部122からの視差の最大値、最小値、参照ビュー情報も符号化され付加される。
 なお、initialized_disparityフラグ、並びに視差の最大値および最小値は、図7を参照して上述したように、スライスヘッダに含められ、参照ビュー情報は、図6を参照して上述したように、シーケンスパラメータセットに含められる。
 ステップS115において蓄積バッファ107は、可逆符号化部106から出力される符号化データを蓄積する。蓄積バッファ107に蓄積された符号化データは、適宜読み出され、伝送路を介して復号側に伝送される。
 ステップS116においてレート制御部117は、ステップS115の処理により蓄積バッファ107に蓄積された圧縮画像に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部105の量子化動作のレートを制御する。
 ステップS116の処理が終了すると、符号化処理が終了される。
[インター動き視差予測処理の流れ]
 次に、図9のフローチャートを参照して、図8のステップS112において実行されるインター動き視差予測処理の流れの例を説明する。
 デコードピクチャバッファ112からの復号画像画素値は、動き視差ベクトル探索部131および予測画像生成部132に供給される。画面並べ替えバッファ102からの原画像画素値は、動き視差ベクトル探索部131および符号化コスト算出部133に供給される。
 動き視差ベクトル探索部131は、ステップS131において、画面並べ替えバッファ102からの原画像画素値と、デコードピクチャバッファ112からの復号画像画素値を用いて、各インター予測モードで動き視差予測を行う。その結果、動き視差ベクトルが探索されるので、動き視差ベクトル探索部131は、探索した動き視差ベクトル、参照した参照画像インデックス、および予測モード情報を、予測画像生成部132および符号化コスト算出部133に供給する。
 ステップS132において、予測画像生成部132は、デコードピクチャバッファ112からの復号画像画素値に対して、動き視差ベクトル探索部131からの動き視差ベクトルを用いて動き視差補償処理を行い、予測画像を生成する。この処理も、すべてのインター予測モード毎に行われる。
 ステップS133において、空間予測ベクトル生成部136、時間視差予測ベクトル生成部137、および予測ベクトル生成部138は、各インター予測モードの動き視差ベクトル予測処理を行う。この動き視差ベクトル予測処理については、図10を参照して後述する。ステップS133の処理により、各インター予測モードでの予測ベクトルが生成される。生成された予測ベクトルは、符号化コスト算出部133に供給される。
 さらに、ステップS134において、空間予測ベクトル生成部136、時間視差予測ベクトル生成部137、および予測ベクトル生成部138は、マージモードの動き視差ベクトル予測処理を行う。このマージモードの動き視差ベクトル予測処理については、図11を参照して後述する。ステップS134の処理により、マージモードおよびスキップモードでの予測ベクトルが生成される。生成された予測ベクトルは、符号化コスト算出部133に供給される。
 ここで、マージモードは、マージモードの場合に予測ベクトルを示すインデックスであるマージインデックスと残差係数のみを復号側に送るモードであり、スキップモードは、マージインデックスのみを復号側に送るモードである。復号側では、マージインデックスが用いられて周囲の動き視差ベクトルから、対象領域の動き視差ベクトルが求められる。
 ステップS135において、符号化コスト算出部133は、各モード(すなわち、各インター予測モード、マージモード、およびスキップモード)に対して符号化コスト値を算出する。符号化コストの算出には、例えば、上述した式(4)または式(5)のコスト関数が用いられる。
 符号化コスト算出部133は、算出した符号化コスト値を、各部から供給された情報とともにモード判定部134に供給する。
モード判定部134は、ステップS136において、符号化コスト算出部133からの符号化コスト値を比較することで、最適インター予測モードを決定する。モード判定部134は、決定した最適インター予測モードの予測画像画素値を、選択部116に供給する。
 なお、ステップS133またはS134の処理により複数の予測ベクトルが候補とされた場合、ステップS135の処理により、その候補分の符号化コスト値が求められ、モード判定部134において予測ベクトルが決定される。また、initialized_disparityフラグが0であるか、1であるかも、ステップS133の処理によりスライス毎の符号化コスト値が求められ、モード判定部134において決定される。
 したがって、モード判定部134は、決定した最適インター予測モードのモード情報、決定した予測ベクトルのインデックス、参照画像インデックス、動き視差ベクトルと予測ベクトルとの差分を示す動き視差ベクトル情報を、可逆符号化部106に供給する。マージモードまたはスキップモードが決定された場合、モード判定部134は、決定したモード情報、マージインデックス(マージモードにおける予測ベクトルのインデックス)を可逆符号化部106に供給する。さらに、モード判定部134は、スライス毎にinitialized_disparityフラグの値を可逆符号化部106に供給する。
 また、モード判定部134は、決定したモード情報、参照画像インデックス、動き視差ベクトルそのものを、符号化情報蓄積バッファ135に供給する。
[動き視差ベクトル予測処理の流れ]
 次に、図10のフローチャートを参照して、図9のステップS133において実行される動き視差ベクトル予測処理の流れの例を説明する。
 符号化情報蓄積バッファ135には、周辺領域の符号化情報として、モード情報、参照画像インデックス、動き視差ベクトルなどが蓄積されている。
 空間予測ベクトル生成部136は、符号化情報蓄積バッファ135から、必要に応じて、周辺領域のモード情報、参照画像インデックス、および動き視差ベクトルなどの情報を取得する。空間予測ベクトル生成部136は、ステップS151において、取得した情報を用いて、処理対象の領域の空間相関の予測ベクトルを生成する。空間予測ベクトル生成部136は、生成した空間相関の予測ベクトルと、その生成に用いた周辺領域の情報を予測ベクトル生成部138に供給する。
 時間視差予測ベクトル生成部137は、符号化情報蓄積バッファ135から、必要に応じて、周辺領域のモード情報、参照画像インデックス、および動き視差ベクトルなどの情報を取得する。時間視差予測ベクトル生成部137は、ステップS152において、取得した情報を用いて、処理対象の領域の時間視差相関の予測ベクトルを生成する。時間視差予測ベクトル生成部137は、生成した時間視差相関の予測ベクトルと、その生成に用いた周辺領域の情報を予測ベクトル生成部138に供給する。
 ステップS153において、予測ベクトル生成部138は、処理対象の領域の周辺領域すべてが参照不可であるか否かを判定する。空間予測ベクトル生成部136または時間視差予測ベクトル生成部137からの予測ベクトルが供給されなかった場合、ステップS153において、動き視差情報がない、すなわち、周辺領域すべてが参照不可であると判定され、処理は、ステップS154に進む。
 ステップS154において、予測ベクトル生成部138は、各種必要な情報を取得する。すなわち、予測ベクトル生成部138は、視差検出部122から、視差の最小値および最大値と、参照ビュー情報を取得する。また、予測ベクトル生成部138は、符号化コスト算出部133から、処理対象の領域の参照画像インデックスの情報も取得する。
 ステップS155において、予測ベクトル生成部138は、視差ベクトルであるか否かを判定する。ステップS155において、参照画像インデックスが示す参照画像が、同時刻の異なるビューのとき、視差ベクトルであると判定され、予測ベクトル生成部138は、ステップS156において、視差の最小値、最大値をそれぞれ予測ベクトル候補に決定する。
 ステップS157において、予測ベクトル生成部138は、参照画像インデックスと、参照ビュー情報が示す参照ビュー画像のビューIDが同じであるか否かを判定する。ステップS157において、参照画像インデックスと参照ビュー画像のビューIDが異なると判定された場合、ステップS158において、予測ベクトル生成部138は、予測ベクトル候補をそれぞれ、ビューの距離に応じてスケーリングする。そして、予測ベクトル生成部138は、スケーリングされた予測ベクトル候補を、符号化コスト算出部133に供給し、動き視差ベクトル予測処理を終了する。
 ステップS157において、参照画像インデックスと参照ビュー画像のビューIDが同じであると判定された場合、予測ベクトル生成部138は、予測ベクトル候補を符号化コスト算出部133に供給し、動き視差ベクトル予測処理を終了する。
 また、参照画像インデックスが示す参照画像が同ビューの異なる時刻のとき、ステップS155において、動きベクトルであると判定され、処理は、ステップS159に進む。ステップS159において、予測ベクトル生成部138は、0を予測ベクトルとして、符号化コスト算出部133に供給し、動き視差ベクトル予測処理を終了する。
 一方、ステップS153において、動き情報がある、すなわち、周辺領域すべてが参照不可ではないと判定された場合、処理は、ステップS160に進む。予測ベクトル生成部138は、ステップS160において、重複する動き情報があれば、それを削除する。そして、予測ベクトル生成部138は、それ以外を、すべて予測ベクトル候補として、符号化コスト算出部133に供給し、動き視差ベクトル予測処理を終了する。
 なお、複数の候補の場合、モード判定部134において、それらの中から符号化コスト値により1つの予測ベクトルが決定され、決定された予測ベクトルのインデックスが、可逆符号化部106に供給される。
[マージモードの動き視差ベクトル予測処理の流れ]
 次に、図11のフローチャートを参照して、図9のステップS134において実行されるマージモードの動き視差ベクトル予測処理の流れの例を説明する。
 符号化情報蓄積バッファ135には、周辺領域の符号化情報として、モード情報、参照画像インデックス、動き視差ベクトルなどが蓄積されている。
 空間予測ベクトル生成部136は、符号化情報蓄積バッファ135から、必要に応じて、周辺領域のモード情報、参照画像インデックス、および動き視差ベクトルなどの情報を取得する。空間予測ベクトル生成部136は、ステップS171において、取得した情報を用いて、処理対象の領域の空間相関の予測ベクトルを生成する。空間予測ベクトル生成部136は、生成した空間相関の予測ベクトルと、その生成に用いた周辺領域の情報を予測ベクトル生成部138に供給する。
 時間視差予測ベクトル生成部137は、符号化情報蓄積バッファ135から、必要に応じて、周辺領域のモード情報、参照画像インデックス、および動き視差ベクトルなどの情報を取得する。時間視差予測ベクトル生成部137は、ステップS172において、それらを用いて、処理対象の領域の時間視差相関の予測ベクトルを生成する。時間視差予測ベクトル生成部137は、生成した時間視差相関の予測ベクトルと、その生成に用いた周辺領域の情報を予測ベクトル生成部138に供給する。
 ステップS173において、予測ベクトル生成部138は、周辺領域すべてが参照不可であるか否かを判定する。空間予測ベクトル生成部136または時間視差予測ベクトル生成部137からの予測ベクトル情報が供給されなかった場合、ステップS173において、動き情報がない、すなわち、周辺領域すべてが参照不可であると判定され、処理は、ステップS174に進む。
 ステップS174において、予測ベクトル生成部138は、各種必要な情報を取得する。すなわち、予測ベクトル生成部138は、視差検出部122から、視差の最小値および最大値と、参照ビュー情報を取得する。
 ステップS175において、予測ベクトル生成部138は、参照画像インデックスを0にする。
 ステップS176において、予測ベクトル生成部138は、視差ベクトルであるか否かを判定する。ステップS176において、参照画像インデックスが示す参照画像が、同時刻の異なるビューのとき、視差ベクトルであると判定され、予測ベクトル生成部138は、ステップS177において、視差の最小値、最大値をそれぞれ予測ベクトル候補に決定する。
 ステップS178において、予測ベクトル生成部138は、参照画像インデックスと参照ビュー情報が示す参照ビュー画像のビューIDが同じであるか否かを判定する。ステップS178において、参照画像インデックスと参照ビュー画像のビューIDが異なると判定された場合、ステップS179において、予測ベクトル生成部138は、予測ベクトル候補をそれぞれ、ビューの距離に応じて、スケーリングする。そして、予測ベクトル生成部138は、スケーリングされた予測ベクトル候補を、符号化コスト算出部133に供給し、動き視差ベクトル予測処理を終了する。
 ステップS178において、参照画像インデックスと参照ビュー画像のビューIDが同じであると判定された場合、予測ベクトル生成部138は、予測ベクトル候補を符号化コスト算出部133に供給し、マージモードの動き視差ベクトル予測処理を終了する。
 また、参照画像インデックスが示す参照画像が同ビューの異なる時刻のとき、ステップS176において、動きベクトルであると判定され、処理は、ステップS180に進む。ステップS180において、予測ベクトル生成部138は、0を予測ベクトルとして、符号化コスト算出部133に供給し、マージモードの動き視差ベクトル予測処理を終了する。
 一方、ステップS173において、動き情報がある、すなわち、周辺領域すべてが参照不可ではないと判定された場合、処理は、ステップS181に進む。予測ベクトル生成部138は、ステップS181において、重複する動き情報があれば、それを削除する。そして、予測ベクトル生成部138は、それ以外を、すべて予測ベクトル候補として、符号化コスト算出部133に供給し、動き視差ベクトル予測処理を終了する。
 複数の候補の場合、モード判定部134において、それらの中から符号化コスト値により1つの予測ベクトルが決定され、決定された予測ベクトルのインデックスが、マージインデックスとして、可逆符号化部106に供給される。
 以上のように、視差ベクトルの予測ベクトルを求める際に、周辺領域がすべて参照不可の場合、視差の最小値または最大値を、その予測ベクトルとするようにした。この結果、以前の予測ベクトルを0ベクトルにする場合に比して、符号化効率が改善される。
<3.第2の実施の形態>
[画像復号装置]
 図12は、本開示を適用した画像処理装置としての画像復号装置の一実施の形態の構成を表している。図12に示される画像復号装置200は、図1の画像符号化装置100に対応する復号装置である。
 画像符号化装置100より符号化された符号化データは、所定の伝送路を介して、この画像符号化装置100に対応する画像復号装置200に伝送され、復号されるものとする。
 図14に示されるように、画像復号装置200は、蓄積バッファ201、可逆復号部202、逆量子化部203、逆直交変換部204、演算部205、デブロックフィルタ206、画面並べ替えバッファ207、およびD/A変換部208を有する。また、画像復号装置200は、デコードピクチャバッファ209、選択部210、イントラ予測部211、動き視差予測・補償部212、および選択部213を有する。
 さらに、画像復号装置200は、多視点デコードピクチャバッファ221を有する。
 蓄積バッファ201は、伝送されてきた符号化データを蓄積する。この符号化データは、画像符号化装置100により符号化されたものである。可逆復号部202は、蓄積バッファ201から所定のタイミングで読み出された符号化データを、図2の可逆符号化部106の符号化方式に対応する方式で復号する。
 逆量子化部203は、可逆復号部202により復号されて得られた係数データ(量子化係数)を、図2の量子化部105の量子化方式に対応する方式で逆量子化する。つまり、逆量子化部203は、画像符号化装置100から供給された量子化パラメータを用いて、図2の逆量子化部108と同様の方法で量子化係数の逆量子化を行う。
 逆量子化部203は、逆量子化された係数データ、つまり、直交変換係数を、逆直交変換部204に供給する。また、逆量子化部203は、逆量子化した際の量子化パラメータを、デブロックフィルタ206に供給する。逆直交変換部204は、図2の直交変換部104の直交変換方式に対応する方式で、その直交変換係数を逆直交変換し、画像符号化装置100において直交変換される前の残差データに対応する復号残差データを得る。
 逆直交変換されて得られた復号残差データは、演算部205に供給される。また、演算部205には、選択部213を介して、イントラ予測部211若しくは動き視差予測・補償部212から予測画像が供給される。
 演算部205は、その復号残差データと予測画像とを加算し、画像符号化装置100の演算部103により予測画像が減算される前の画像データに対応する復号画像データを得る。演算部205は、その復号画像データをデブロックフィルタ206に供給する。
 デブロックフィルタ206は、画像符号化装置100のデブロックフィルタ111と基本的に同様に構成される。デブロックフィルタ206は、適宜デブロックフィルタ処理を行うことにより復号画像のブロック歪を除去する。
 画面並べ替えバッファ207は、画像の並べ替えを行う。すなわち、図2の画面並べ替えバッファ102により符号化の順番のために並べ替えられたフレームの順番が、元の表示の順番に並べ替えられる。D/A変換部208は、画面並べ替えバッファ207から供給された画像をD/A変換し、図示せぬディスプレイに出力し、表示させる。
 デブロックフィルタ206の出力は、さらに、デコードピクチャバッファ209に供給される。
 デコードピクチャバッファ209、選択部210、イントラ予測部211、動き視差予測・補償部212、および選択部213は、画像符号化装置100のデコードピクチャバッファ112、選択部113、イントラ予測部114、動き視差予測・補償部115、および選択部116にそれぞれ対応する。
 デコードピクチャバッファ209には、デブロックフィルタ206からの符号化視点の復号画像、あるいは、多視点デコードピクチャバッファ221からの符号化視点以外の復号画像が蓄積される。
 選択部210は、インター処理される画像と参照される画像をデコードピクチャバッファ209から読み出し、動き視差予測・補償部212に供給する。また、選択部210は、イントラ予測に用いられる画像をデコードピクチャバッファ209から読み出し、イントラ予測部211に供給する。
 イントラ予測部211には、ヘッダ情報を復号して得られたイントラ予測モードを示す情報等が可逆復号部202から適宜供給される。イントラ予測部211は、この情報に基づいて、デコードピクチャバッファ209から取得した参照画像から予測画像を生成し、生成した予測画像を選択部213に供給する。
 動き視差予測・補償部212には、ヘッダ情報を復号して得られた情報(予測モード情報、動き視差ベクトルと予測ベクトルの差分を示す動き視差ベクトル情報、参照画像インデックス、フラグ、および各種パラメータ等)を可逆復号部202から供給される。さらに、動き視差予測・補償部212には、視差の最小値、最大値、および参照ビュー情報も可逆復号部202から供給される。
 動き視差予測・補償部212は、可逆復号部202から供給されるそれらの情報に基づき、処理対象の領域の周辺にある周辺領域の動き視差ベクトルを用いて、予測ベクトルを生成する。その際、視差ベクトルの予測ベクトルを求める場合であって、かつ、周辺領域の動き視差ベクトルが全て参照不可のとき、動き視差予測・補償部212は、可逆復号部202から供給される視差の最小値または視差の最大値のどちらかを、予測ベクトルとする。
 動き視差予測・補償部212は、生成された予測ベクトルと動き視差ベクトル情報とを用いて、動き視差ベクトルを再構築し、デコードピクチャバッファ209から取得した参照画像から予測画像を生成し、生成した予測画像を選択部213に供給する。
 選択部213は、動き視差予測・補償部212またはイントラ予測部211により生成された予測画像を選択し、演算部205に供給する。
 多視点デコードピクチャバッファ221は、処理対象のビュー(視点)に応じて、デコードピクチャバッファ209に蓄積されている符号化視点の復号画像と、符号化視点以外の復号画像を入れ替える。
[動き視差予測・補償部の構成例]
 次に、画像復号装置200の各部について説明する。図13は、動き視差予測・補償部212の構成例を示すブロック図である。なお、図13の例においては、主要な情報の流れのみが図示されている。
 図13の例において、動き視差予測・補償部212は、符号化情報蓄積バッファ231、空間予測ベクトル生成部232、時間視差予測ベクトル生成部233、予測ベクトル生成部234、演算部235、および予測画像生成部236を含むように構成されている。特に、空間予測ベクトル生成部232、時間視差予測ベクトル生成部233、および予測ベクトル生成部234は、図5の空間予測ベクトル生成部136、時間視差予測ベクトル生成部137、および予測ベクトル生成部138に対応している。
 可逆復号部202から、処理対象領域のモード情報、参照画像インデックス、予測ベクトルインデックス、動き視差ベクトルと予測ベクトルの差分を示す動き視差ベクトル情報が、符号化情報蓄積バッファ231に供給される。また、可逆復号部202から、スライスヘッダから得られるinitialized_disparityフラグ、視差の最小値、および視差の最大値、並びにシーケンスパラメータセットから得られる参照ビュー情報が、符号化情報蓄積バッファ231に供給される。
 さらに、符号化情報蓄積バッファ231には、演算部235により再構築された周辺領域の動き視差ベクトル(以下、復号済み動き視差ベクトルとも称する)も供給される。
 空間予測ベクトル生成部232は、符号化情報蓄積バッファ231から、必要に応じて、周辺領域のモード情報、参照画像インデックス、および復号済み動き視差ベクトルなどの情報を取得し、それらを用いて、処理対象の領域の空間相関の予測ベクトルを生成する。空間予測ベクトル生成部232は、生成した空間相関の予測ベクトルと、その生成に用いた周辺領域の情報を予測ベクトル生成部234に供給する。
 時間視差予測ベクトル生成部233は、符号化情報蓄積バッファ231から、必要に応じて、周辺領域のモード情報、参照画像インデックス、および復号済み動き視差ベクトルなどの情報を取得する。時間視差予測ベクトル生成部233は、それらの情報を用いて、処理対象の領域の時間視差相関の予測ベクトルを生成する。時間視差予測ベクトル生成部233は、生成した時間視差相関の予測ベクトルと、その生成に用いた周辺領域の情報を予測ベクトル生成部234に供給する。
 予測ベクトル生成部234は、符号化情報蓄積バッファ231から、参照画像インデックス、予測ベクトルインデックス、initialized_disparityフラグ、視差の最小値および最大値、並びに参照ビュー情報を取得する。予測ベクトル生成部234は、空間予測ベクトル生成部232および時間視差予測ベクトル生成部233から、生成された予測ベクトルと周辺領域の情報を取得する。
 予測ベクトル生成部234は、取得した情報を参照して、空間予測ベクトル生成部232または時間視差予測ベクトル生成部233からの予測ベクトル、0ベクトル、または、視差の最小値または最大値により求められる予測ベクトルを、演算部235に供給する。特に、視差ベクトルの予測ベクトルを求める場合であって、かつ、周辺領域の動き視差ベクトルが全て参照不可のとき、予測ベクトル生成部234は、可逆復号部202から供給される視差の最小値または視差の最大値のどちらかを、予測ベクトルとする。
 演算部235は、符号化情報蓄積バッファ231から動き視差ベクトル情報(動き視差ベクトルの差分値)を取得し、予測ベクトル生成部234からの予測ベクトルと加算することで、動き視差ベクトルを再構築する。演算部235は、再構築した動き視差ベクトルを、予測画像生成部236および符号化情報蓄積バッファ231に供給する。
 予測画像生成部236は、符号化情報蓄積バッファ231からの参照画像インデックスが示す復号画像の画素値を、デコードピクチャバッファ209から取得し、演算部235からの動き視差ベクトルを用いて、予測画像を生成する。予測画像生成部236は、生成した予測画像の画素値を、選択部213に供給する。
[復号処理の流れ]
 次に、以上のような画像復号装置200により実行される各処理の流れについて説明する。最初に、図14のフローチャートを参照して、復号処理の流れの例を説明する。
 復号処理が開始されると、ステップS201において、蓄積バッファ201は、伝送されてきた符号化データを蓄積する。ステップS202において、可逆復号部202は、蓄積バッファ201から供給される符号化データを復号する。すなわち、図2の可逆符号化部106により符号化されたIピクチャ、Pピクチャ、並びにBピクチャが復号される。
 このとき、予測モード情報(イントラ予測モード、インター予測モード、マージモード、またはスキップモードなど)なども復号される。さらに、動き視差ベクトル情報、参照画像インデックス、予測ベクトルインデックス、initialized_disparityフラグ、視差の最小値および最大値、並びに参照ビュー情報などのインター予測モードに応じた情報も復号される。
 予測モード情報がイントラ予測モード情報である場合、予測モード情報は、イントラ予測部211に供給される。予測モード情報がインター予測モード情報、マージモード、またはスキップモードである場合、予測モード情報とインター予測モードに応じた情報は、動き視差予測・補償部212に供給される。
 ステップS203において、逆量子化部203は、可逆復号部202により復号されて得られた、量子化された直交変換係数を逆量子化する。ステップS204において逆直交変換部204は逆量子化部203により逆量子化されて得られた直交変換係数を、図2の直交変換部104に対応する方法で逆直交変換する。これにより図2の直交変換部104の入力(演算部103の出力)に対応する差分情報が復号されたことになる。
 ステップS205において、演算部205は、ステップS204の処理により得られた差分情報に、予測画像を加算する。これにより元の画像データが復号される。
 ステップS206において、デブロックフィルタ206は、ステップS205の処理により得られた復号画像を適宜フィルタリングする。これにより適宜復号画像からブロック歪みが除去される。
 ステップS207において、デコードピクチャバッファ209は、フィルタリングされた復号画像を記憶する。
 ステップS208において、イントラ予測部211、または動き視差予測・補償部212は、可逆復号部202から供給される予測モード情報に対応して、イントラ符号化されているか否かを判定する。
 ステップS208において、イントラ符号化されていると判定された場合、ステップS209において、イントラ予測部211は、可逆復号部202からのイントラ予測モードを取得する。ステップS210において、イントラ予測部211は、ステップS209で取得したイントラ予測モードに応じて、予測画像を生成する。イントラ予測部211は、生成した予測画像を、選択部213に出力する。
 一方、予測モード情報が、インター予測モード、マージモード、またはスキップモードなどであり、ステップS208において、イントラ符号化されていないと判定された場合、処理は、ステップS211に進む。ステップS211において、動き視差予測・補償部212は、インター動き視差予測処理を行う。このインター動き視差予測処理の詳細は、図15を参照して後述される。
 ステップS211の処理により、可逆復号部202から供給されるそれらの情報に基づいて、処理対象の領域の周辺にある周辺領域の動き視差ベクトルを用いて、予測ベクトルが生成される。その際、視差ベクトルの予測ベクトルを求める場合であって、かつ、周辺領域の動き視差ベクトルが全て参照不可のとき、動き視差予測・補償部212は、可逆復号部202から供給される視差の最小値または視差の最大値のどちらかを、予測ベクトルとする。
 そして、生成された予測ベクトルと動き視差ベクトル情報(差分値)を用いて、動き視差ベクトルが再構築されて、デコードピクチャバッファ209から取得した参照画像から予測画像が生成され、生成された予測画像が選択部213に供給される。
 ステップS212において、選択部213は予測画像を選択する。すなわち、選択部213には、イントラ予測部211により生成された予測画像、若しくは、動き視差予測・補償部212により生成された予測画像が供給される。選択部213は、その予測画像が供給された側を選択し、その予測画像を演算部205に供給する。この予測画像は、ステップS205の処理により差分情報に加算される。
 ステップS213において、画面並べ替えバッファ207は、復号画像データのフレームの並べ替えを行う。すなわち、復号画像データの、画像符号化装置100の画面並べ替えバッファ102(図2)により符号化のために並べ替えられたフレームの順序が、元の表示の順序に並べ替えられる。
 ステップS214において、D/A変換部208は、画面並べ替えバッファ207においてフレームが並べ替えられた復号画像データをD/A変換する。この復号画像データが図示せぬディスプレイに出力され、その画像が表示される。
[インター動き視差予測処理の流れ]
 次に、図15のフローチャートを参照して、図14のステップS211において実行されるインター動き視差予測処理の流れの例を説明する。
 可逆復号部202から復号された処理対象領域のモード情報、参照画像インデックス、動き視差ベクトル情報、予測ベクトルインデックスが供給される。必要に応じて、initialized_disparityフラグ、視差の最小値および最大値、並びに参照ビュー情報も供給される。符号化情報蓄積バッファ231は、ステップS231において、それらの動き視差ベクトル情報などを取得し、ステップS232において、蓄積する。
 空間予測ベクトル生成部232および時間視差予測ベクトル生成部233は、符号化情報蓄積バッファ231に蓄積されているモード情報を参照して、ステップS233において、処理対象の領域のモードが、スキップモードであるか否かを判定する。
 ステップS233において、スキップモードではないと判定された場合、ステップS234において、空間予測ベクトル生成部232および時間視差予測ベクトル生成部233は、処理対象の領域のモードが、マージモードであるか否かを判定する。ステップS234において、マージモードではないと判定された場合、処理は、ステップS235に進む。
 ステップS235において、予測ベクトル生成部234および予測画像生成部236は、符号化情報蓄積バッファ231に蓄積されている処理対象領域の参照画像インデックスを取得する。
 ステップS236において、演算部235は、符号化情報蓄積バッファ231に蓄積されている処理対象領域の動き視差ベクトルの差分値である、動き視差ベクトル情報を取得する。
 ステップS237において、空間予測ベクトル生成部232、時間視差予測ベクトル生成部233、および予測ベクトル生成部234は、動き視差ベクトル予測処理を行う。この動き視差ベクトル予測処理の詳細は、図16を参照して後述される。
 このステップS237の処理により、予測ベクトルが生成される。その際、視差ベクトルを生成する場合であって、周辺領域が参照不可のとき、スライスヘッダから得られた視差の最大値または最小値が用いられて予測ベクトルが生成される。予測ベクトル生成部234は、生成された予測ベクトルを、演算部235に出力する。
 ステップS238において、演算部235は、ステップS236で得られた動き視差ベクトルの差分値と、ステップS237で生成された予測ベクトルを加算する。これにより、動き視差ベクトルが再構築される。再構築された動き視差ベクトルは、予測画像生成部236に供給され、処理は、ステップS240に進む。
 一方、ステップS233において、スキップモードであると判定された場合、または、ステップS234において、マージモードであると判定された場合、処理は、ステップS239に進む。ステップS239において、空間予測ベクトル生成部232、時間視差予測ベクトル生成部233、および予測ベクトル生成部234は、マージモードの動き視差ベクトル予測処理を行う。このマージモードの動き視差ベクトル予測処理の詳細は、図17を参照して後述される。
 このステップS237の処理により、マージモードの予測ベクトルが生成される。視差ベクトルを生成する場合であって、周辺領域が参照不可のとき、スライスヘッダから得られた視差の最大値または最小値が用いられて予測ベクトルが生成される。予測ベクトル生成部234は、生成された予測ベクトルと参照画像インデックスを、演算部235を介して、予測画像生成部236に供給する。
 ステップS240において、予測画像生成部236は、予測画像を生成する。マージモードではない場合、予測画像生成部236は、符号化情報蓄積バッファ231からの参照画像インデックスが示す復号画像画素値を、デコードピクチャバッファ209から読み出す。そして、予測画像生成部236は、その復号画像画素値と、動き視差ベクトルを用いて、予測画像を生成する。
 一方、マージモードの場合、予測画像生成部236は、予測ベクトル生成部234からの参照画像インデックスが示す復号画像画素値をデコードピクチャバッファ209から読み出す。そして、予測画像生成部236は、その復号画像画素値と、生成された予測ベクトルを用いて、予測画像を生成する。
 ステップS240において生成された予測画像の画素値は、選択部213に出力され、インター動き視差予測処理は終了される。
[動き視差ベクトル予測処理の流れ]
 次に、図16のフローチャートを参照して、図15のステップS237において実行される動き視差ベクトル予測処理の流れの例を説明する。
 空間予測ベクトル生成部232は、符号化情報蓄積バッファ231から、必要に応じて、周辺領域のモード情報、参照画像インデックス、および復号済み動き視差ベクトルなどの情報を取得する。ステップS251において、空間予測ベクトル生成部232は、取得した情報を用いて、処理対象の領域の空間相関の予測ベクトルを生成する。空間予測ベクトル生成部232は、生成した空間相関の予測ベクトルと、その生成に用いた周辺領域の情報を予測ベクトル生成部234に供給する。
 時間視差予測ベクトル生成部233は、符号化情報蓄積バッファ231から、必要に応じて、周辺領域のモード情報、参照画像インデックス、および復号済み動き視差ベクトルなどの情報を取得する。ステップS252において、時間視差予測ベクトル生成部233は、取得した情報を用いて、処理対象の領域の時間視差相関の予測ベクトルを生成する。時間視差予測ベクトル生成部233は、生成した時間視差相関の予測ベクトルと、その生成に用いた周辺領域の情報を予測ベクトル生成部234に供給する。
 ステップS253において、予測ベクトル生成部234は、動き視差情報があるか否かを判定する。空間予測ベクトル生成部232からの予測ベクトルまたは時間視差予測ベクトル生成部233からの予測ベクトルが供給された場合、予測ベクトル生成部234は、ステップS253において、動き視差情報があると判定し、処理は、ステップS254に進む。
 ステップS254において、予測ベクトル生成部234は、空間予測ベクトル生成部232からの予測ベクトルまたは時間視差予測ベクトル生成部233からの予測ベクトルの中から、重複する動き視差情報があれば、それを削除する。
 ステップS255において、予測ベクトル生成部234は、予測ベクトルを決定する。予測ベクトル生成部234は、予測ベクトルが複数あった場合には、符号化情報蓄積バッファ231に蓄積されている予測ベクトルインデックスに対応するものを、予測ベクトルに決定する。決定された予測ベクトルは、演算部235に出力され、動き視差ベクトル予測処理は終了される。
 一方、ステップS253において、動き視差情報がないと判定された場合、処理は、ステップS256に進む。ステップS256において、予測ベクトル生成部234は、予測ベクトルが、視差ベクトルであるか否かを判定する。符号化情報蓄積バッファ231からの処理対象の領域の参照画像インデックスが示す参照画像が、処理対象画像と、同じ時刻で異なるビューの画像である場合、ステップS256において、予測ベクトルが視差ベクトルであると判定され、処理は、ステップS257に進む。
 予測ベクトル生成部234は、ステップS257において、符号化情報蓄積バッファ231に蓄積されている、スライスヘッダから得られるinitialized_disparityフラグが0であるか否かを判定する。
 ステップS257において、initialized_disparityフラグが0であると判定された場合、処理は、ステップS258に進む。ステップS258において、予測ベクトル生成部234は、スライスヘッダから得られるminimum_disparityの値を、すなわち、視差の最小値を、予測ベクトルとする。
 さらに、ステップS259において、予測ベクトル生成部234は、参照画像インデックスのビューIDと、参照ビュー情報が示す参照ビュー画像のビューIDが同じであるか否かを判定する。ステップS259において、参照画像インデックスのビューIDと、参照ビュー画像のビューIDが同じであると判定された場合、ステップS260の処理はスキップされ、動き視差ベクトル生成処理は終了される。すなわち、この場合、ステップS258の予測ベクトルが演算部235に供給される。
 ステップS259において、参照画像インデックスのビューIDと、参照ビュー画像のビューIDが異なると判定された場合、ステップS260において、予測ベクトル生成部234は、ステップS258で求められた予測ベクトルをスケーリングする。すなわち、予測ベクトル生成部234は、視差の最小値を、ビュー画像の視点距離に応じてスケーリングした値を、予測ベクトルとして、演算部235に供給し、動き視差ベクトル生成処理は終了される。
 ステップS257において、initialized_disparityフラグが1であると判定された場合、処理は、ステップS261に進む。ステップS261において、予測ベクトル生成部234は、スライスヘッダから得られるmaximum_disparityの値を、すなわち、視差の最大値を、予測ベクトルとする。
 同様に、ステップS262において、予測ベクトル生成部234は、参照画像インデックスのビューIDと、参照ビュー情報が示す参照ビュー画像のビューIDが同じであるか否かを判定する。ステップS262において、参照画像インデックスのビューIDと、参照ビュー画像のビューIDが同じであると判定された場合、ステップS263の処理はスキップされ、動き視差ベクトル生成処理は終了される。すなわち、この場合、ステップS261の予測ベクトルが演算部235に供給される。
 ステップS262において、参照画像インデックスのビューIDと、参照ビュー画像のビューIDが異なると判定された場合、ステップS263において、予測ベクトル生成部234は、ステップS261で求められた予測ベクトルをスケーリングする。すなわち、予測ベクトル生成部234は、視差の最小値を、ビュー画像の視点距離に応じてスケーリングした値を、予測ベクトルとして、演算部235に供給し、動き視差ベクトル生成処理は終了される。
 一方、符号化情報蓄積バッファ231からの処理対象の領域の参照画像インデックスが示す参照画像が、処理対象画像と、同じビューで異なる時刻の画像である場合、ステップS256において、視差ベクトルではないと判定され、処理は、ステップS264に進む。予測ベクトル生成部234は、ステップS264において、予測ベクトルに初期値(0)を与える。すなわち、予測ベクトル生成部234は、ステップS264において、0ベクトルを予測ベクトルとして、演算部235に供給し、動き視差ベクトル生成処理は終了される。
[マージモードの動き視差ベクトル予測処理の流れ]
 次に、図17のフローチャートを参照して、図15のステップS239において実行されるマージモードの動き視差ベクトル予測処理の流れの例を説明する。
 空間予測ベクトル生成部232は、符号化情報蓄積バッファ231から、必要に応じて、周辺領域のモード情報、参照画像インデックス、および復号済み動き視差ベクトルなどの情報を取得する。ステップS271において、空間予測ベクトル生成部232は、取得した情報を用いて、処理対象の領域の空間相関の予測ベクトルを生成する。空間予測ベクトル生成部232は、生成した空間相関の予測ベクトルと、その生成に用いた周辺領域の情報を予測ベクトル生成部234に供給する。
 時間視差予測ベクトル生成部233は、符号化情報蓄積バッファ231から、必要に応じて、周辺領域のモード情報、参照画像インデックス、および復号済み動き視差ベクトルなどの情報を取得する。ステップS272において、時間視差予測ベクトル生成部233は、取得した情報を用いて、処理対象の領域の時間視差相関の予測ベクトルを生成する。時間視差予測ベクトル生成部233は、生成した時間視差相関の予測ベクトルと、その生成に用いた周辺領域の情報を予測ベクトル生成部234に供給する。
 ステップS273において、予測ベクトル生成部234は、動き視差情報が存在するか否かを判定する。空間予測ベクトル生成部232からの予測ベクトルまたは時間視差予測ベクトル生成部233からの予測ベクトルが供給された場合、予測ベクトル生成部234は、ステップS273において、動き視差情報が存在すると判定し、処理は、ステップS274に進む。
 ステップS274において、予測ベクトル生成部234は、空間予測ベクトル生成部232からの予測ベクトルまたは時間視差予測ベクトル生成部233からの予測ベクトルの中から、重複する動き視差情報があれば、それを削除する。
 ステップS275において、予測ベクトル生成部234は、複数の動き視差情報が存在するか否かを判定する。ステップS275において、複数の動き視差情報が存在すると判定された場合、ステップS276において、予測ベクトル生成部234は、符号化情報蓄積バッファ231からマージインデックスを取得する。マージインデックスは、マージモードの場合の予測ベクトルのインデックスを示す情報である。
 ステップS275において、複数の動き視差情報が存在しない、すなわち、動き視差情報が1つ存在すると判定された場合、ステップS276はスキップされる。
 ステップS277において、予測ベクトル生成部234は、予測ベクトルを決定する。すなわち、複数の動き視差情報の中から、マージインデックスが指し示す動き視差情報が、予測ベクトルとして決定される。一方、1つの動き視差情報だけが存在するのであれば、それが、予測ベクトルとして決定される。
 ステップS278において、予測ベクトル生成部234は、予測ベクトルとして決定した動き視差情報が参照する参照画像インデックスを取得し、予測ベクトルと参照画像インデックスを演算部235に供給する。その後、マージモードの動き視差ベクトル予測処理は終了される。
 一方、ステップS273において、動き視差情報がないと判定された場合、処理は、ステップS279に進む。ステップS279において、予測ベクトル生成部234は、参照画像インデックスに、初期値(0)を与える。
 次に、ステップS280において、予測ベクトル生成部234は、予測ベクトルが、視差ベクトルであるか否かを判定する。その参照画像インデックスが示す参照画像が、処理対象ピクチャと、同じ時刻で異なるビューの画像である場合、ステップS280において、予測ベクトルが視差ベクトルであると判定され、処理は、ステップS281に進む。
 予測ベクトル生成部234は、ステップS281において、符号化情報蓄積バッファ231に蓄積されている、スライスヘッダから得られるinitialized_disparityフラグが0であるか否かを判定する。
 ステップS281において、initialized_disparityフラグが0であると判定された場合、処理は、ステップS282に進む。ステップS282において、予測ベクトル生成部234は、スライスヘッダから得られるminimum_disparityの値を、すなわち、視差の最小値を、予測ベクトルとする。
 さらに、ステップS283において、予測ベクトル生成部234は、参照画像インデックスのビューIDと、参照ビュー情報が示す参照ビュー画像のビューIDが同じであるか否かを判定する。ステップS283において、参照画像インデックスのビューIDと、参照ビュー画像のビューIDが同じであると判定された場合、ステップS284の処理はスキップされ、動き視差ベクトル生成処理は終了される。すなわち、この場合、ステップS282の予測ベクトルが演算部235に供給される。
 ステップS283において、参照画像インデックスのビューIDと、参照ビュー画像のビューIDが異なると判定された場合、ステップS284において、予測ベクトル生成部234は、ステップS282で求められた予測ベクトルをスケーリングする。すなわち、予測ベクトル生成部234は、視差の最小値を、ビュー画像の視点距離に応じてスケーリングした値を、予測ベクトルとして、演算部235に供給し、動き視差ベクトル生成処理は終了される。
 ステップS281において、initialized_disparityフラグが1であると判定された場合、処理は、ステップS285に進む。ステップS285において、予測ベクトル生成部234は、スライスヘッダから得られるmaximum_disparityの値を、すなわち、視差の最大値を、予測ベクトルとする。
 同様に、ステップS286において、予測ベクトル生成部234は、参照画像インデックスのビューIDと、参照ビュー情報が示す参照ビュー画像のビューIDが同じであるか否かを判定する。ステップS286において、参照画像インデックスのビューIDと、参照ビュー画像のビューIDが同じであると判定された場合、ステップS287の処理はスキップされ、動き視差ベクトル生成処理は終了される。すなわち、この場合、ステップS285の予測ベクトルが演算部235に供給される。
 ステップS286において、参照画像インデックスのビューIDと、参照ビュー画像のビューIDが異なると判定された場合、ステップS287において、予測ベクトル生成部234は、ステップS285で求められた予測ベクトルをスケーリングする。すなわち、予測ベクトル生成部234は、視差の最小値を、ビュー画像の視点距離に応じてスケーリングした値を、予測ベクトルとして、演算部235に供給し、動き視差ベクトル生成処理は終了される。
 一方、参照画像インデックスが示す参照画像が、処理対象画像と、同じビューで異なる時刻の画像である場合、ステップS280において、視差ベクトルではないと判定され、処理は、ステップS288に進む。予測ベクトル生成部234は、ステップS288において、予測ベクトルに初期値(0)を与える。すなわち、予測ベクトル生成部234は、ステップS288において、0ベクトルを予測ベクトルとして、演算部235に供給し、動き視差ベクトル生成処理は終了される。
 以上のように、視差ベクトルを予測する際に、周辺領域が参照不可の場合、ピクチャ内の視差の最大値と最小値のどちらか一方を予測ベクトルとするようにした。これにより、視差ベクトルの予測ベクトルの性能を改善することができる。すなわち、従来のように、0ベクトルを予測ベクトルとして、動き視差ベクトルそのものを送る場合に比して、伝送する視差ベクトルの差分値が小さくなるので、符号化効率が改善される。
 また、視差ベクトルは、スライスヘッダの中で定義する視差の最小値と最大値の間で発生すると考えられる。したがって、周辺領域がいずれも参照不可の場合に、予測ベクトルとして最小値が最大値のいずれかをセットすることで、確率的に精度の高い予測ベクトルを生成することができる。
 さらに、予測ベクトルとして最小値と最大値のどちらがよいかは、シーンによるので、これらをスライスヘッダのフラグで設定することにより、より精度の高い予測ベクトルを生成することができる。
 また、この視差の最大値と最小値、参照ビュー情報は、表示側で視差調整や視点合成をするために必要な情報であるので、それを必ず送るスライスヘッダに含めて送り、利用することはより効率的である。
 なお、予測ベクトルに利用する、視差の最大値は、視差の範囲内の所定の上限値としてもよいし、視差の最小値は、視差の範囲内の所定の下限値としてもよい。また、ピクチャ内の視差の平均値を予測ベクトルに利用することも可能である。さらに、視差の範囲内の所定の値(設定値)を予測ベクトルに利用するようにしてもよい。
 また、本技術においては、視差の最大値と最小値を予測ベクトルとして用いたが、上述した視差の最大値、最小値、上限値、下限値、平均値、または所定の値を、動き視差ベクトルの中の候補ベクトルの1つとして用いるようにしてもよい。
 以上においては、符号化方式としてH.264/AVC方式またはHEVC方式をベースに用いるようにしたが、本開示はこれに限らず、その他の符号化方式/復号方式を適用することができる。
 なお、本開示は、例えば、MPEG、H.26x等の様に、離散コサイン変換等の直交変換と動き補償によって圧縮された画像情報(ビットストリーム)を、衛星放送、ケーブルテレビジョン、インターネット、または携帯電話機などのネットワークメディアを介して受信する際に用いられる画像符号化装置および画像復号装置に適用することができる。また、本開示は、光、磁気ディスク、およびフラッシュメモリのような記憶メディア上で処理する際に用いられる画像符号化装置および画像復号装置に適用することができる。さらに、本開示は、それらの画像符号化装置および画像復号装置などに含まれる動き予測補償装置にも適用することができる。
 <4.第3の実施の形態>
 [パーソナルコンピュータ]
 上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な汎用のパーソナルコンピュータなどが含まれる。
 図18において、パーソナルコンピュータ500のCPU(Central Processing Unit)501は、ROM(Read Only Memory)502に記憶されているプログラム、または記憶部513からRAM(Random Access Memory)503にロードされたプログラムに従って各種の処理を実行する。RAM503にはまた、CPU501が各種の処理を実行する上において必要なデータなども適宜記憶される。
 CPU501、ROM502、およびRAM503は、バス504を介して相互に接続されている。このバス504にはまた、入出力インタフェース510も接続されている。
 入出力インタフェース510には、キーボード、マウスなどよりなる入力部511、CRT(Cathode Ray Tube)やLCD(Liquid Crystal Display)などよりなるディスプレイ、並びにスピーカなどよりなる出力部512、ハードディスクなどより構成される記憶部513、モデムなどより構成される通信部514が接続されている。通信部514は、インターネットを含むネットワークを介しての通信処理を行う。
 入出力インタフェース510にはまた、必要に応じてドライブ515が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア521が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部513にインストールされる。
 上述した一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、ネットワークや記録媒体からインストールされる。
 この記録媒体は、例えば、図18に示されるように、装置本体とは別に、ユーザにプログラムを配信するために配布される、プログラムが記録されている磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc - Read Only Memory),DVD(Digital Versatile Disc)を含む)、光磁気ディスク(MD(Mini Disc)を含む)、若しくは半導体メモリなどよりなるリムーバブルメディア521により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに配信される、プログラムが記録されているROM502や、記憶部513に含まれるハードディスクなどで構成される。
 なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
 また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
 また、本明細書において、システムとは、複数のデバイス(装置)により構成される装置全体を表すものである。
 また、以上において、1つの装置(または処理部)として説明した構成を分割し、複数の装置(または処理部)として構成するようにしてもよい。逆に、以上において複数の装置(または処理部)として説明した構成をまとめて1つの装置(または処理部)として構成されるようにしてもよい。また、各装置(または各処理部)の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置(または処理部)の構成の一部を他の装置(または他の処理部)の構成に含めるようにしてもよい。つまり、本技術は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
 上述した実施形態に係る画像符号化装置及び画像復号装置は、衛星放送、ケーブルTVなどの有線放送、インターネット上での配信、及びセルラー通信による端末への配信などにおける送信機若しくは受信機、光ディスク、磁気ディスク及びフラッシュメモリなどの媒体に画像を記録する記録装置、又は、これら記憶媒体から画像を再生する再生装置などの様々な電子機器に応用され得る。以下、4つの応用例について説明する。
 <5.第4の実施の形態> 
[第1の応用例:テレビジョン受像機]
 図19は、上述した実施形態を適用したテレビジョン装置の概略的な構成の一例を示している。テレビジョン装置900は、アンテナ901、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、表示部906、音声信号処理部907、スピーカ908、外部インタフェース909、制御部910、ユーザインタフェース911、及びバス912を備える。
 チューナ902は、アンテナ901を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ902は、復調により得られた符号化ビットストリームをデマルチプレクサ903へ出力する。即ち、チューナ902は、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送手段としての役割を有する。
 デマルチプレクサ903は、符号化ビットストリームから視聴対象の番組の映像ストリーム及び音声ストリームを分離し、分離した各ストリームをデコーダ904へ出力する。また、デマルチプレクサ903は、符号化ビットストリームからEPG(Electronic Program Guide)などの補助的なデータを抽出し、抽出したデータを制御部910に供給する。なお、デマルチプレクサ903は、符号化ビットストリームがスクランブルされている場合には、デスクランブルを行ってもよい。
 デコーダ904は、デマルチプレクサ903から入力される映像ストリーム及び音声ストリームを復号する。そして、デコーダ904は、復号処理により生成される映像データを映像信号処理部905へ出力する。また、デコーダ904は、復号処理により生成される音声データを音声信号処理部907へ出力する。
 映像信号処理部905は、デコーダ904から入力される映像データを再生し、表示部906に映像を表示させる。また、映像信号処理部905は、ネットワークを介して供給されるアプリケーション画面を表示部906に表示させてもよい。また、映像信号処理部905は、映像データについて、設定に応じて、例えばノイズ除去などの追加的な処理を行ってもよい。さらに、映像信号処理部905は、例えばメニュー、ボタン又はカーソルなどのGUI(Graphical User Interface)の画像を生成し、生成した画像を出力画像に重畳してもよい。
 表示部906は、映像信号処理部905から供給される駆動信号により駆動され、表示デバイス(例えば、液晶ディスプレイ、プラズマディスプレイ又はOELD(Organic ElectroLuminescence Display)(有機ELディスプレイ)など)の映像面上に映像又は画像を表示する。
 音声信号処理部907は、デコーダ904から入力される音声データについてD/A変換及び増幅などの再生処理を行い、スピーカ908から音声を出力させる。また、音声信号処理部907は、音声データについてノイズ除去などの追加的な処理を行ってもよい。
 外部インタフェース909は、テレビジョン装置900と外部機器又はネットワークとを接続するためのインタフェースである。例えば、外部インタフェース909を介して受信される映像ストリーム又は音声ストリームが、デコーダ904により復号されてもよい。即ち、外部インタフェース909もまた、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送手段としての役割を有する。
 制御部910は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、プログラムデータ、EPGデータ、及びネットワークを介して取得されるデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、テレビジョン装置900の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース911から入力される操作信号に応じて、テレビジョン装置900の動作を制御する。
 ユーザインタフェース911は、制御部910と接続される。ユーザインタフェース911は、例えば、ユーザがテレビジョン装置900を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース911は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部910へ出力する。
 バス912は、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、音声信号処理部907、外部インタフェース909及び制御部910を相互に接続する。
 このように構成されたテレビジョン装置900において、デコーダ904は、上述した実施形態に係る画像復号装置の機能を有する。それにより、テレビジョン装置900での画像の復号に際して、ブロック歪みの除去をより適切に行い、復号画像における主観画質を向上させることができる。
 <6.第5の実施の形態>
 [第2の応用例:携帯電話機]
 図20は、上述した実施形態を適用した携帯電話機の概略的な構成の一例を示している。携帯電話機920は、アンテナ921、通信部922、音声コーデック923、スピーカ924、マイクロホン925、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、制御部931、操作部932、及びバス933を備える。
 アンテナ921は、通信部922に接続される。スピーカ924及びマイクロホン925は、音声コーデック923に接続される。操作部932は、制御部931に接続される。バス933は、通信部922、音声コーデック923、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、及び制御部931を相互に接続する。
 携帯電話機920は、音声通話モード、データ通信モード、撮影モード及びテレビ電話モードを含む様々な動作モードで、音声信号の送受信、電子メール又は画像データの送受信、画像の撮像、及びデータの記録などの動作を行う。
 音声通話モードにおいて、マイクロホン925により生成されるアナログ音声信号は、音声コーデック923に供給される。音声コーデック923は、アナログ音声信号を音声データへ変換し、変換された音声データをA/D変換し圧縮する。そして、音声コーデック923は、圧縮後の音声データを通信部922へ出力する。通信部922は、音声データを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調及び復号して音声データを生成し、生成した音声データを音声コーデック923へ出力する。音声コーデック923は、音声データを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。
 また、データ通信モードにおいて、例えば、制御部931は、操作部932を介するユーザによる操作に応じて、電子メールを構成する文字データを生成する。また、制御部931は、文字を表示部930に表示させる。また、制御部931は、操作部932を介するユーザからの送信指示に応じて電子メールデータを生成し、生成した電子メールデータを通信部922へ出力する。通信部922は、電子メールデータを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調及び復号して電子メールデータを復元し、復元した電子メールデータを制御部931へ出力する。制御部931は、表示部930に電子メールの内容を表示させると共に、電子メールデータを記録再生部929の記憶媒体に記憶させる。
 記録再生部929は、読み書き可能な任意の記憶媒体を有する。例えば、記憶媒体は、RAM又はフラッシュメモリなどの内蔵型の記憶媒体であってもよく、ハードディスク、磁気ディスク、光磁気ディスク、光ディスク、USB(Unallocated Space Bitmap)メモリ、又はメモリカードなどの外部装着型の記憶媒体であってもよい。
 また、撮影モードにおいて、例えば、カメラ部926は、被写体を撮像して画像データを生成し、生成した画像データを画像処理部927へ出力する。画像処理部927は、カメラ部926から入力される画像データを符号化し、符号化ストリームを記憶再生部929の記憶媒体に記憶させる。
 また、テレビ電話モードにおいて、例えば、多重分離部928は、画像処理部927により符号化された映像ストリームと、音声コーデック923から入力される音声ストリームとを多重化し、多重化したストリームを通信部922へ出力する。通信部922は、ストリームを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。これら送信信号及び受信信号には、符号化ビットストリームが含まれ得る。そして、通信部922は、受信信号を復調及び復号してストリームを復元し、復元したストリームを多重分離部928へ出力する。多重分離部928は、入力されるストリームから映像ストリーム及び音声ストリームを分離し、映像ストリームを画像処理部927、音声ストリームを音声コーデック923へ出力する。画像処理部927は、映像ストリームを復号し、映像データを生成する。映像データは、表示部930に供給され、表示部930により一連の画像が表示される。音声コーデック923は、音声ストリームを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。
 このように構成された携帯電話機920において、画像処理部927は、上述した実施形態に係る画像符号化装置及び画像復号装置の機能を有する。それにより、携帯電話機920での画像の符号化及び復号に際して、ブロック歪みの除去をより適切に行い、復号画像における主観画質を向上させることができる。
 <7.第6の実施の形態>
 [第3の応用例:記録再生装置]
 図21は、上述した実施形態を適用した記録再生装置の概略的な構成の一例を示している。記録再生装置940は、例えば、受信した放送番組の音声データ及び映像データを符号化して記録媒体に記録する。また、記録再生装置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へ出力する。即ち、チューナ941は、記録再生装置940における伝送手段としての役割を有する。
 外部インタフェース942は、記録再生装置940と外部機器又はネットワークとを接続するためのインタフェースである。外部インタフェース942は、例えば、IEEE1394インタフェース、ネットワークインタフェース、USBインタフェース、又はフラッシュメモリインタフェースなどであってよい。例えば、外部インタフェース942を介して受信される映像データ及び音声データは、エンコーダ943へ入力される。即ち、外部インタフェース942は、記録再生装置940における伝送手段としての役割を有する。
 エンコーダ943は、外部インタフェース942から入力される映像データ及び音声データが符号化されていない場合に、映像データ及び音声データを符号化する。そして、エンコーダ943は、符号化ビットストリームをセレクタ946へ出力する。
 HDD944は、映像及び音声などのコンテンツデータが圧縮された符号化ビットストリーム、各種プログラムおよびその他のデータを内部のハードディスクに記録する。また、HDD944は、映像及び音声の再生時に、これらデータをハードディスクから読み出す。
 ディスクドライブ945は、装着されている記録媒体へのデータの記録及び読み出しを行う。ディスクドライブ945に装着される記録媒体は、例えばDVDディスク(DVD-Video、DVD-RAM、DVD-R、DVD-RW、DVD+R、DVD+RW等)又はBlu-ray(登録商標)ディスクなどであってよい。
 セレクタ946は、映像及び音声の記録時には、チューナ941又はエンコーダ943から入力される符号化ビットストリームを選択し、選択した符号化ビットストリームをHDD944又はディスクドライブ945へ出力する。また、セレクタ946は、映像及び音声の再生時には、HDD944又はディスクドライブ945から入力される符号化ビットストリームをデコーダ947へ出力する。
 デコーダ947は、符号化ビットストリームを復号し、映像データ及び音声データを生成する。そして、デコーダ947は、生成した映像データをOSD948へ出力する。また、デコーダ904は、生成した音声データを外部のスピーカへ出力する。
 OSD948は、デコーダ947から入力される映像データを再生し、映像を表示する。また、OSD948は、表示する映像に、例えばメニュー、ボタン又はカーソルなどのGUIの画像を重畳してもよい。
 制御部949は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、記録再生装置940の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース950から入力される操作信号に応じて、記録再生装置940の動作を制御する。
 ユーザインタフェース950は、制御部949と接続される。ユーザインタフェース950は、例えば、ユーザが記録再生装置940を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース950は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部949へ出力する。
 このように構成された記録再生装置940において、エンコーダ943は、上述した実施形態に係る画像符号化装置の機能を有する。また、デコーダ947は、上述した実施形態に係る画像復号装置の機能を有する。それにより、記録再生装置940での画像の符号化及び復号に際して、ブロック歪みの除去をより適切に行い、復号画像における主観画質を向上させることができる。
 <8.第7の実施の形態>
 [第4の応用例:撮像装置]
 図22は、上述した実施形態を適用した撮像装置の概略的な構成の一例を示している。撮像装置960は、被写体を撮像して画像を生成し、画像データを符号化して記録媒体に記録する。
 撮像装置960は、光学ブロック961、撮像部962、信号処理部963、画像処理部964、表示部965、外部インタフェース966、メモリ967、メディアドライブ968、OSD969、制御部970、ユーザインタフェース971、及びバス972を備える。
 光学ブロック961は、撮像部962に接続される。撮像部962は、信号処理部963に接続される。表示部965は、画像処理部964に接続される。ユーザインタフェース971は、制御部970に接続される。バス972は、画像処理部964、外部インタフェース966、メモリ967、メディアドライブ968、OSD969、及び制御部970を相互に接続する。
 光学ブロック961は、フォーカスレンズ及び絞り機構などを有する。光学ブロック961は、被写体の光学像を撮像部962の撮像面に結像させる。撮像部962は、CCD(Charge Coupled Device)又はCMOS(Complementary Metal Oxide Semiconductor)などのイメージセンサを有し、撮像面に結像した光学像を光電変換によって電気信号としての画像信号に変換する。そして、撮像部962は、画像信号を信号処理部963へ出力する。
 信号処理部963は、撮像部962から入力される画像信号に対してニー補正、ガンマ補正、色補正などの種々のカメラ信号処理を行う。信号処理部963は、カメラ信号処理後の画像データを画像処理部964へ出力する。
 画像処理部964は、信号処理部963から入力される画像データを符号化し、符号化データを生成する。そして、画像処理部964は、生成した符号化データを外部インタフェース966又はメディアドライブ968へ出力する。また、画像処理部964は、外部インタフェース966又はメディアドライブ968から入力される符号化データを復号し、画像データを生成する。そして、画像処理部964は、生成した画像データを表示部965へ出力する。また、画像処理部964は、信号処理部963から入力される画像データを表示部965へ出力して画像を表示させてもよい。また、画像処理部964は、OSD969から取得される表示用データを、表示部965へ出力する画像に重畳してもよい。
 OSD969は、例えばメニュー、ボタン又はカーソルなどのGUIの画像を生成して、生成した画像を画像処理部964へ出力する。
 外部インタフェース966は、例えばUSB入出力端子として構成される。外部インタフェース966は、例えば、画像の印刷時に、撮像装置960とプリンタとを接続する。また、外部インタフェース966には、必要に応じてドライブが接続される。ドライブには、例えば、磁気ディスク又は光ディスクなどのリムーバブルメディアが装着され、リムーバブルメディアから読み出されるプログラムが、撮像装置960にインストールされ得る。さらに、外部インタフェース966は、LAN又はインターネットなどのネットワークに接続されるネットワークインタフェースとして構成されてもよい。即ち、外部インタフェース966は、撮像装置960における伝送手段としての役割を有する。
 メディアドライブ968に装着される記録媒体は、例えば、磁気ディスク、光磁気ディスク、光ディスク、又は半導体メモリなどの、読み書き可能な任意のリムーバブルメディアであってよい。また、メディアドライブ968に記録媒体が固定的に装着され、例えば、内蔵型ハードディスクドライブ又はSSD(Solid State Drive)のような非可搬性の記憶部が構成されてもよい。
 制御部970は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、撮像装置960の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース971から入力される操作信号に応じて、撮像装置960の動作を制御する。
 ユーザインタフェース971は、制御部970と接続される。ユーザインタフェース971は、例えば、ユーザが撮像装置960を操作するためのボタン及びスイッチなどを有する。ユーザインタフェース971は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部970へ出力する。
 このように構成された撮像装置960において、画像処理部964は、上述した実施形態に係る画像符号化装置及び画像復号装置の機能を有する。それにより、撮像装置960での画像の符号化及び復号に際して、ブロック歪みの除去をより適切に行い、復号画像における主観画質を向上させることができる。
 なお、本明細書では、差分量子化パラメータ等の各種情報が、符号化ストリームに多重化されて、符号化側から復号側へ伝送される例について説明した。しかしながら、これら情報を伝送する手法はかかる例に限定されない。例えば、これら情報は、符号化ビットストリームに多重化されることなく、符号化ビットストリームと関連付けられた別個のデータとして伝送され又は記録されてもよい。ここで、「関連付ける」という用語は、ビットストリームに含まれる画像(スライス若しくはブロックなど、画像の一部であってもよい)と当該画像に対応する情報とを復号時にリンクさせ得るようにすることを意味する。即ち、情報は、画像(又はビットストリーム)とは別の伝送路上で伝送されてもよい。また、情報は、画像(又はビットストリーム)とは別の記録媒体(又は同一の記録媒体の別の記録エリア)に記録されてもよい。さらに、情報と画像(又はビットストリーム)とは、例えば、複数フレーム、1フレーム、又はフレーム内の一部分などの任意の単位で互いに関連付けられてよい。
 以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示はかかる例に限定されない。本開示の属する技術の分野における通常の知識を有する者であれば、請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
 なお、本技術は以下のような構成も取ることができる。
 (1) ビットストリームを復号して、画像を生成する復号部と、
 前記復号部により生成された前記画像の復号対象の領域の視差ベクトルを予測する際に、前記領域の周辺にある周辺領域がすべて参照不可の場合、前記ビットストリームから得られる前記画像および前記画像と視差が異なる同一時刻のビュー画像の画像間の視差の範囲の上限の値または下限の値を、予測ベクトルとして決定する予測ベクトル決定部と、
 前記予測ベクトル決定部により決定された前記予測ベクトルを用いて、前記復号部により生成された前記画像の予測画像を生成する予測画像生成部と
 を備える画像処理装置。
 (2) 前記画像間の視差の範囲の上限の値または下限の値は、前記画像間の視差の最大値または最小値である
 前記(1)に記載の画像処理装置。
 (3) 前記復号は、前記画像間の視差の範囲の上限の値および下限の値のうち、どの値を前記予測ベクトルとして用いるかを示すフラグを受け取り、
 前記予測ベクトル決定部は、前記復号により受け取られたフラグに示される値を、前記予測ベクトルとして決定する
 前記(1)または(2)に記載の画像処理装置。
 (4) 前記予測ベクトル生成部は、前記画像間の視差の範囲の上限の値、下限の値、および平均値のいずれか1つを、前記予測ベクトルとして決定する
 前記(1)乃至(3)のいずれかに記載の画像処理装置。
 (5) 前記予測ベクトル生成部は、前記画像間の視差の範囲の上限の値、下限の値、および前記画像間の視差の範囲内の所定の値のいずれか1つを、前記予測ベクトルとして決定する
 前記(1)乃至(3)のいずれかに記載の画像処理装置。
 (6) 前記予測ベクトル生成部は、前記画像の参照画像インデックスが示す画像と、前記ビュー画像とが異なる場合、前記画像間の視差の範囲の上限の値または下限の値をスケーリングしたものを、前記予測ベクトルとして決定する
 前記(1)乃至(5)のいずれかに記載の画像処理装置。
 (7) 画像処理装置が、
 ビットストリームを復号して、画像を生成し、
 生成された前記画像の復号対象の領域の視差ベクトルを予測する際に、前記領域の周辺にある周辺領域がすべて参照不可の場合、前記ビットストリームから得られる前記画像および前記画像と視差が異なる同一時刻のビュー画像の画像間の視差の範囲の上限の値または下限の値を、予測ベクトルとして決定し、
 決定された前記予測ベクトルを用いて、生成された前記画像の予測画像を生成する
 画像処理方法。
 (8) 画像の符号化対象の領域の視差ベクトルを予測する際に、前記領域の周辺にある周辺領域がすべて参照不可の場合、前記画像および前記画像と視差が異なる同一時刻のビュー画像の画像間の視差の範囲の上限の値または下限の値を、予測ベクトルとして決定する予測ベクトル決定部と、
 前記領域の視差ベクトルと、前記予測ベクトル決定部により決定された前記予測ベクトルとの差分を符号化する符号化部と
 を備える画像処理装置。
 (9) 前記画像間の視差の範囲の上限の値または下限の値は、前記画像間の視差の最大値または最小値である
 前記(8)に記載の画像処理装置。
 (10) 前記予測ベクトル決定部により前記画像間の視差の範囲の上限の値または下限の値のうち、どの値を予測ベクトルに決定したかを示すフラグと、前記画像を符号化した符号化ストリームとを伝送する伝送部
 をさらに備える前記(8)または(9)に記載の画像処理装置。
 (11) 前記予測ベクトル生成部は、前記画像間の視差の範囲の上限の値、下限の値、および平均値のいずれか1つを、前記予測ベクトルとして決定する
 前記(8)乃至(10)のいずれかに記載の画像処理装置。
 (12) 前記予測ベクトル生成部は、前記画像間の視差の範囲の上限の値、下限の値、および前記画像間の視差の範囲内の所定の値のいずれか1つを、前記予測ベクトルとして決定する
 前記(8)乃至(10)のいずれかに記載の画像処理装置。
 (13) 前記予測ベクトル生成部は、前記画像の参照画像インデックスが示す画像と、前記ビュー画像とが異なる場合、前記画像間の視差の範囲の上限の値または下限の値をスケーリングしたものを、前記予測ベクトルとして決定する
 前記(8)乃至(12)のいずれかに記載の画像処理装置。
 (14) 画像処理装置が、
 画像の符号化対象の領域の視差ベクトルを予測する際に、前記領域の周辺にある周辺領域がすべて参照不可の場合、前記画像および前記画像と視差が異なる同一時刻のビュー画像の画像間の視差の範囲の上限の値または下限の値を、予測ベクトルとして決定し、
 前記領域の視差ベクトルと、決定された前記予測ベクトルとの差分を符号化する
 画像処理方法
  100 画像符号化装置, 106 可逆符号化部, 115 動き視差予測・補償部, 121 多視点デコードピクチャバッファ, 122 視差検出部, 135 符号化情報バッファ, 136 空間予測ベクトル生成部, 137 時間視差予測ベクトル生成部, 138 予測ベクトル生成部, 133 符号化コスト算出部, 134 モード判定部, 200 画像復号装置, 202 可逆復号部, 212 動き視差予測・補償部,221 多視点デコードピクチャバッファ, 231 符号化情報バッファ, 232 空間予測ベクトル生成部, 233 時間視差予測ベクトル生成部, 234 予測ベクトル生成部

Claims (14)

  1.  ビットストリームを復号して、画像を生成する復号部と、
     前記復号部により生成された前記画像の復号対象の領域の視差ベクトルを予測する際に、前記領域の周辺にある周辺領域がすべて参照不可の場合、前記ビットストリームから得られる前記画像および前記画像と視差が異なる同一時刻のビュー画像の画像間の視差の範囲の上限の値または下限の値を、予測ベクトルとして決定する予測ベクトル決定部と、
     前記予測ベクトル決定部により決定された前記予測ベクトルを用いて、前記復号部により生成された前記画像の予測画像を生成する予測画像生成部と
     を備える画像処理装置。
  2.  前記画像間の視差の範囲の上限の値または下限の値は、前記画像間の視差の最大値または最小値である
     請求項1に記載の画像処理装置。
  3.  前記復号は、前記画像間の視差の範囲の上限の値および下限の値のうち、どの値を前記予測ベクトルとして用いるかを示すフラグを受け取り、
     前記予測ベクトル決定部は、前記復号により受け取られたフラグに示される値を、前記予測ベクトルとして決定する
     請求項1に記載の画像処理装置。
  4.  前記予測ベクトル生成部は、前記画像間の視差の範囲の上限の値、下限の値、および平均値のいずれか1つを、前記予測ベクトルとして決定する
     請求項1に記載の画像処理装置。
  5.  前記予測ベクトル生成部は、前記画像間の視差の範囲の上限の値、下限の値、および前記画像間の視差の範囲内の所定の値のいずれか1つを、前記予測ベクトルとして決定する
     請求項1に記載の画像処理装置。
  6.  前記予測ベクトル生成部は、前記画像の参照画像インデックスが示す画像と、前記ビュー画像とが異なる場合、前記画像間の視差の範囲の上限の値または下限の値をスケーリングしたものを、前記予測ベクトルとして決定する
     請求項1に記載の画像処理装置。
  7.  画像処理装置が、
     ビットストリームを復号して、画像を生成し、
     生成された前記画像の復号対象の領域の視差ベクトルを予測する際に、前記領域の周辺にある周辺領域がすべて参照不可の場合、前記ビットストリームから得られる前記画像および前記画像と視差が異なる同一時刻のビュー画像の画像間の視差の範囲の上限の値または下限の値を、予測ベクトルとして決定し、
     決定された前記予測ベクトルを用いて、生成された前記画像の予測画像を生成する
     画像処理方法。
  8.  画像の符号化対象の領域の視差ベクトルを予測する際に、前記領域の周辺にある周辺領域がすべて参照不可の場合、前記画像および前記画像と視差が異なる同一時刻のビュー画像の画像間の視差の範囲の上限の値または下限の値を、予測ベクトルとして決定する予測ベクトル決定部と、
     前記領域の視差ベクトルと、前記予測ベクトル決定部により決定された前記予測ベクトルとの差分を符号化する符号化部と
     を備える画像処理装置。
  9.  前記画像間の視差の範囲の上限の値または下限の値は、前記画像間の視差の最大値または最小値である
     請求項8に記載の画像処理装置。
  10.  前記予測ベクトル決定部により前記画像間の視差の範囲の上限の値または下限の値のうち、どの値を予測ベクトルに決定したかを示すフラグと、前記画像を符号化した符号化ストリームとを伝送する伝送部
     をさらに備える請求項8に記載の画像処理装置。
  11.  前記予測ベクトル生成部は、前記画像間の視差の範囲の上限の値、下限の値、および平均値のいずれか1つを、前記予測ベクトルとして決定する
     請求項8に記載の画像処理装置。
  12.  前記予測ベクトル生成部は、前記画像間の視差の範囲の上限の値、下限の値、および前記画像間の視差の範囲内の所定の値のいずれか1つを、前記予測ベクトルとして決定する
     請求項8に記載の画像処理装置。
  13.  前記予測ベクトル生成部は、前記画像の参照画像インデックスが示す画像と、前記ビュー画像とが異なる場合、前記画像間の視差の範囲の上限の値または下限の値をスケーリングしたものを、前記予測ベクトルとして決定する
     請求項8に記載の画像処理装置。
  14.  画像処理装置が、
     画像の符号化対象の領域の視差ベクトルを予測する際に、前記領域の周辺にある周辺領域がすべて参照不可の場合、前記画像および前記画像と視差が異なる同一時刻のビュー画像の画像間の視差の範囲の上限の値または下限の値を、予測ベクトルとして決定し、
     前記領域の視差ベクトルと、決定された前記予測ベクトルとの差分を符号化する
     画像処理方法。
PCT/JP2012/065236 2011-06-22 2012-06-14 画像処理装置および方法 WO2012176684A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201280029321.3A CN103597833A (zh) 2011-06-22 2012-06-14 图像处理装置以及方法
US14/125,451 US20140104383A1 (en) 2011-06-22 2012-06-14 Image processing device and method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2011-138028 2011-06-22
JP2011138028 2011-06-22

Publications (1)

Publication Number Publication Date
WO2012176684A1 true WO2012176684A1 (ja) 2012-12-27

Family

ID=47422523

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/065236 WO2012176684A1 (ja) 2011-06-22 2012-06-14 画像処理装置および方法

Country Status (4)

Country Link
US (1) US20140104383A1 (ja)
JP (1) JPWO2012176684A1 (ja)
CN (1) CN103597833A (ja)
WO (1) WO2012176684A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016507969A (ja) * 2013-01-04 2016-03-10 クゥアルコム・インコーポレイテッドQualcomm Incorporated ビュー間またはレイヤ間参照ピクチャについてのビットストリーム制約および動きベクトル制限
JP2016511604A (ja) * 2013-02-26 2016-04-14 クゥアルコム・インコーポレイテッドQualcomm Incorporated 3dビデオコード化における隣接ブロック視差ベクトル導出

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107197227B (zh) 2011-03-18 2019-05-10 索尼公司 图像处理设备、图像处理方法和计算机可读存储介质
US9491462B2 (en) 2011-06-30 2016-11-08 Sony Corporation High efficiency video coding device and method based on reference picture type
BR112014004062A2 (pt) 2011-08-31 2017-03-07 Sony Corp dispositivos e métodos de codificação e decodificação
GB2501535A (en) * 2012-04-26 2013-10-30 Sony Corp Chrominance Processing in High Efficiency Video Codecs
US9998727B2 (en) * 2012-09-19 2018-06-12 Qualcomm Incorporated Advanced inter-view residual prediction in multiview or 3-dimensional video coding
US10638130B1 (en) * 2019-04-09 2020-04-28 Google Llc Entropy-inspired directional filtering for image coding
US11956441B2 (en) * 2021-12-23 2024-04-09 Ati Technologies Ulc Identifying long term reference frame using scene detection and perceptual hashing

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007074543A1 (ja) * 2005-12-27 2007-07-05 Sharp Kabushiki Kaisha 動画像復号装置および動画像符号化装置
WO2008053758A1 (fr) * 2006-10-30 2008-05-08 Nippon Telegraph And Telephone Corporation Procédé de codage d'image dynamique, procédé de décodage, leur dispositif, leur programme et support de stockage contenant le programme

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2665781C (en) * 2006-10-30 2014-02-18 Nippon Telegraph And Telephone Corporation Predicted reference information generating method, video encoding and decoding methods, apparatuses therefor, programs therefor, and storage media which store the programs
KR20080066522A (ko) * 2007-01-11 2008-07-16 삼성전자주식회사 다시점 영상의 부호화, 복호화 방법 및 장치
US20100266042A1 (en) * 2007-03-02 2010-10-21 Han Suh Koo Method and an apparatus for decoding/encoding a video signal
KR101506217B1 (ko) * 2008-01-31 2015-03-26 삼성전자주식회사 스테레오스코픽 영상의 부분 데이터 구간 재생을 위한스테레오스코픽 영상 데이터스트림 생성 방법과 장치, 및스테레오스코픽 영상의 부분 데이터 구간 재생 방법과 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007074543A1 (ja) * 2005-12-27 2007-07-05 Sharp Kabushiki Kaisha 動画像復号装置および動画像符号化装置
WO2008053758A1 (fr) * 2006-10-30 2008-05-08 Nippon Telegraph And Telephone Corporation Procédé de codage d'image dynamique, procédé de décodage, leur dispositif, leur programme et support de stockage contenant le programme

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016507969A (ja) * 2013-01-04 2016-03-10 クゥアルコム・インコーポレイテッドQualcomm Incorporated ビュー間またはレイヤ間参照ピクチャについてのビットストリーム制約および動きベクトル制限
US10021414B2 (en) 2013-01-04 2018-07-10 Qualcomm Incorporated Bitstream constraints and motion vector restriction for inter-view or inter-layer reference pictures
JP2016511604A (ja) * 2013-02-26 2016-04-14 クゥアルコム・インコーポレイテッドQualcomm Incorporated 3dビデオコード化における隣接ブロック視差ベクトル導出

Also Published As

Publication number Publication date
JPWO2012176684A1 (ja) 2015-02-23
US20140104383A1 (en) 2014-04-17
CN103597833A (zh) 2014-02-19

Similar Documents

Publication Publication Date Title
US10212423B2 (en) Image processing apparatus and method
JP5954587B2 (ja) 画像処理装置および方法
WO2012176684A1 (ja) 画像処理装置および方法
JP6274103B2 (ja) 画像処理装置および方法
JP6451999B2 (ja) 画像処理装置および方法
WO2011155377A1 (ja) 画像処理装置および方法
EP2760204A1 (en) Image processing device and method
WO2012157538A1 (ja) 画像処理装置および方法
JP2011151683A (ja) 画像処理装置および方法
CN108184125B (zh) 图像处理设备和方法
JPWO2013031574A1 (ja) 画像処理装置および方法
JPWO2013108688A1 (ja) 画像処理装置および方法
JP6274527B2 (ja) 画像処理装置および方法
WO2012173022A1 (ja) 画像処理装置および方法
WO2013084775A1 (ja) 画像処理装置および方法
WO2013065567A1 (ja) 画像処理装置および方法
US10218969B2 (en) Image processing device and method using adjusted motion vector accuracy between sub-pixels of reference frames
WO2013015118A1 (ja) 画像処理装置および方法
WO2013002105A1 (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: 12803042

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2013521545

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 14125451

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12803042

Country of ref document: EP

Kind code of ref document: A1