WO2015182692A1 - 動画像符号化装置及び動画像復号装置並びに方法 - Google Patents

動画像符号化装置及び動画像復号装置並びに方法 Download PDF

Info

Publication number
WO2015182692A1
WO2015182692A1 PCT/JP2015/065361 JP2015065361W WO2015182692A1 WO 2015182692 A1 WO2015182692 A1 WO 2015182692A1 JP 2015065361 W JP2015065361 W JP 2015065361W WO 2015182692 A1 WO2015182692 A1 WO 2015182692A1
Authority
WO
WIPO (PCT)
Prior art keywords
depth
prediction
conversion
inverse
unit
Prior art date
Application number
PCT/JP2015/065361
Other languages
English (en)
French (fr)
Inventor
ホウアリ サビリン
圭 河村
内藤 整
Original Assignee
Kddi株式会社
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 Kddi株式会社 filed Critical Kddi株式会社
Publication of WO2015182692A1 publication Critical patent/WO2015182692A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Definitions

  • the present invention relates to a moving image encoding device, a moving image decoding device, and a method, and in particular, a moving image to which depth intra prediction and region DC encoding are applied to a depth map for each viewpoint texture and depth map in a multi-view video.
  • the present invention relates to an image encoding device, a moving image decoding device, and a method.
  • Non-Patent Document 1 MVC, which is an extension of the moving image encoding method AVC, has been standardized as an international standard. Further, as described in Non-Patent Document 2, MV-HEVC, which is an extension of the next-generation moving image encoding scheme HEVC, is being standardized as an international standard.
  • Non-Patent Document 3 An encoding method for multi-viewpoint video (texture) and depth (depth) has been studied. Details of its implementation and the like are described in Non-Patent Document 3, and Non-Patent Document 4 The outline content is described in.
  • FIG. 1 is a diagram conceptually showing the data structure of a multi-view video in which the depth map to be encoded is associated. As shown in the figure, textures 1 to n are given as images taken at the respective viewpoints 1 to n corresponding to the camera positions, depth maps 1 to n are prepared for each, and such data is prepared at each time t. Is done.
  • each depth map i can be prepared by performing processing such as associating the same feature point between the textures i using the positional relationship between the viewpoints and the camera parameters.
  • a moving picture encoding method (methods such as Non-Patent Documents 1 and 2) including normal intra prediction, motion compensation, and prediction residual conversion / quantization can be used.
  • the depth map can also be regarded as an “image” having a depth value as a pixel value, the same moving image coding method (normal method) as that of the texture can be applied. Further, depth intra prediction dedicated to a depth map can be used instead of or in combination with the normal method. Here, since the signal characteristics of the depth map are significantly different from those of the texture, a dedicated depth prediction method is prepared.
  • the depth map As a signal characteristic of the depth map, there is a point that a steep edge is generated because the depth is different at the object boundary, while a change in the depth of the object surface is relatively small. That is, for example, there is a characteristic that the average depth in the object is greatly different if the object is different, such as the “person” of the first object existing in the foreground and the “wall” of the second object existing as the background behind the first object. .
  • another signal characteristic of the depth map is that there is a correlation with the texture signal. That is, for example, the foreground and background areas with the average pixel value as the threshold for texture images, such as the “person” of the first object present in the foreground and the “wall” of the second object present as the background behind the first object When divided into two, the same division result can be obtained even in the depth map.
  • the value that the depth map can take is sometimes extremely small. That is, for example, since the i-th object has only an average depth and several types of depth values before and after that, the entire depth of the image including all objects is, for example, less than half that of the texture. There are characteristics.
  • the configuration is a well-known configuration disclosed in Non-Patent Documents 1 to 4, but in the description of the “background art” (and “form for carrying out the invention” described later), In order to clarify which block or the like is necessary, each part of FIGS. 2 and 3 will be described below.
  • the moving image coding apparatus 100 includes an input unit 101, a difference unit 102, a transform / quantization unit 103, an entropy coding unit 104, an inverse quantization / inverse transform unit 105, an adder 106, a local decoded image.
  • a memory 107, an in-loop filter 108, a frame buffer 109, a motion compensation unit 110, a depth intra prediction unit 111, an intra prediction unit 112, and a control unit 113 are provided.
  • a moving image decoding apparatus 200 includes an output unit 201, an entropy decoding unit 204, an inverse quantization / inverse conversion unit 205, an adder 206, a local decoded image memory 207, an in-loop filter 208, a frame buffer 209, a motion A compensation unit 210, a depth intra prediction unit 211, an intra prediction unit 212, and a control unit 213 are provided.
  • the moving image coding apparatus 100 receives data in which a depth map is associated with the texture of each viewpoint in the multi-view video as described with reference to FIG. 1, applies various predictions, etc., converts and quantizes the coded data. Turn into.
  • the moving picture decoding apparatus 200 decodes the encoded data, performs inverse quantization / inverse transformation, applies the corresponding prediction, etc., and then corresponds to the original data (multi-view video) of FIG. Output things.
  • the moving image encoding device 100 is abbreviated as an encoder
  • the moving image decoding device 200 is abbreviated as a decoder.
  • the outline of each part of the encoder and decoder disclosed in Non-Patent Documents 1 to 4 will be described below. Note that the same or corresponding processing will be described while writing the functional units of the encoder and decoder together.
  • the input unit 101 receives the data of FIG. 1 (multi-view video) as input on the encoder side, and passes the data to the differentiator 102.
  • the output unit 201 outputs the data corresponding to the data in FIG. 1 decoded on the decoder side and stored in the frame buffer 209 as an output on the decoder side.
  • the differentiator 102 is a signal in the data received from the input unit 101, and a signal generated by any of the motion compensation unit 110, the depth intra prediction unit 111, or the intra prediction unit 112 as a prediction signal based on the determination of the control unit 113. , And the value of the difference is passed to the transform / quantization unit 103.
  • the transform / quantization unit 103 orthogonally transforms the difference obtained from the subtractor 102 into a transform coefficient, further quantizes the transform coefficient, and converts the quantized value into the entropy coding unit 104 and the inverse quantization Pass to the inverse conversion unit 105.
  • the entropy encoding unit 104 entropy-encodes the quantized value obtained from the transform / quantization unit 103 and the prediction parameters output by the control unit 113 as necessary, and outputs the encoder-side output. To do.
  • the entropy decoding unit 204 receives the bit stream output from the entropy encoding unit 104 on the encoder side as input on the decoder side, performs entropy decoding, and generates a quantized value, a prediction parameter, and the like.
  • the quantized value is passed to the inverse quantization / inverse transform unit 205, and the prediction parameters and the like are passed to the control unit 213.
  • the inverse quantization / inverse transform unit 105 processes the quantization value received from the transform / quantization unit 103 (entropy decoding unit 204) in the reverse process of the transform / quantization unit 103. Thus, inverse quantization and inverse transformation are performed to obtain a difference value, which is passed to the adders 106 and 206.
  • the adders 106 and 206 are the prediction signals generated by the motion compensation units 110 and 210, the depth intra prediction units 111 and 211, or the intra prediction units 112 and 212, and the difference values output from the inverse quantization / inverse conversion units 105 and 205 based on the determination of the control units 113 and 213. And the decoded signal, and the decoded signal is passed to the local decoded image memories 107 and 207.
  • the local decoded image memories 107 and 207 hold the decoded signals, provide them for reference when the depth intra prediction units 111 and 211 and the intra prediction units 112 and 212 perform prediction, and output the decoded signals to the in-loop filters 108 and 208 To do.
  • the in-loop filters 108 and 208 perform an in-loop filter process on the decoded signals and output the processed signals to the frame buffers 109 and 209.
  • the frame buffers 109 and 209 hold the filtered signals, and serve as references when the motion compensation units 110 and 210 and the depth intra prediction units 111 and 211 perform prediction. As described above, on the decoder side, the frame buffer 209 passes the filtered signal to the output unit 201 as an output of the decoder.
  • the motion compensation units 110 and 210 perform known motion prediction using the reference signals of the frame buffers 109 and 209, generate a prediction signal, and pass it to the difference unit 102 and the adder 106 (only the adder 206 on the decoder side). Prediction parameters such as motion vectors are generated and encoded at the time of generating a prediction signal on the encoder side, whereas they are used on the decoder side to generate a prediction signal after being decoded as side information. .
  • the depth intra prediction units 111 and 211 use the reference signals of the local decoded image memories 107 and 207 and the frame buffers 109 and 209 to generate a wedge pattern that divides the target block into two regions, and derive a prediction depth value d for each region.
  • the wedge pattern and its generation will be described later, but the wedge pattern information is appropriately encoded as side information according to the mode used.
  • the prediction depth value d can be derived for the entire target block without being divided into two regions.
  • the depth value d has characteristics such as fewer types of values that can be taken than those of the texture, so the depth value d that can be taken is associated with the index number I starting from 0 and registered in advance.
  • a depth look-up table (DLT) is used, and encoding (and decoding) is performed in the form of the corresponding index number I, not the depth value d.
  • the index number I derived and converted as the predicted depth value d for each region is, in one embodiment, a difference unit 102 and an adder 106 (adders on the decoder side) as shown by solid lines in FIGS. 206, and in another embodiment, as indicated by a dotted line in FIGS. 2 and 3, the index number I is directly input to the entropy encoding unit 104 (output from the entropy decoding unit 204 on the decoder side). The In either case, the conversion to the index number I improves the encoding efficiency compared to the direct encoding of the depth value d.
  • FIGS. 2 and 3 the functional blocks related to the use of the DLT related only to the depth are omitted from the viewpoint of clearly showing the flow of processing common to the texture and the depth. Accordingly, FIGS. 4 and 5 and FIGS. 6 and 7 respectively depict the functional blocks added to the portions related to the use of the DLT in FIGS.
  • FIGS. 2 and 3 show corresponding portions of FIGS. 2 and 3 in one embodiment output from the entropy decoding unit 204 on the decoder side.
  • FIG. 2 shows a corresponding portion of each of FIGS.
  • forward conversion units 151 and 152 and an inverse conversion unit 161 are added to the configuration of FIG. 2, and in FIGS. 5 and 7, a forward conversion unit 252 and an inverse conversion unit 261 are added to the configuration of FIG. Has been added.
  • the three positive conversion units 151, 152, and 252 are different in the input / output signals as shown in the figure, but the contents processed to obtain the output signal with respect to the input signal are the same, and input with reference to the same DLT
  • the converted depth d is converted into an index number I and output.
  • the reverse conversion units 161 and 261 have different input and output signals as shown in the figure, but the contents processed for the signals are the same, and refer to the same DLT as the normal conversion units 151, 152, and 252 in the reverse direction. Index number I is converted back to depth d.
  • the flow of signals related to the forward conversion units 151, 152, 252 and the reverse conversion units 161, 261 is as follows.
  • the depth value d predicted by the depth intra prediction units 111 and 211 (or the intra prediction units 112 and 212 depending on the prediction mode as will be described later) is converted into an index number I by the positive conversion unit 152. After that, it is passed to the difference unit 102 and the adder 106 (only the adder 206 on the decoder side). On the encoder side, in the subtractor 102, the original depth value d from the input unit 101 that is a target to be predicted by the depth intra prediction unit 111 (or the intra prediction unit 112) is converted into an index number I by the positive conversion unit 151. The difference (offset) between this and the predicted index number I is calculated and passed to the transform / quantization unit 103.
  • the offset is an index number I as an offset reconstructed by the inverse quantization / inverse transform units 105 and 205 on the encoder side and the decoder side, respectively, is passed to the adders 106 and 206, and is obtained from the forward transform units 152 and 252.
  • the reconstructed index number I is obtained, converted into the reconstructed depth value d by the inverse transform units 161 and 261, and then passed to the local decoded image memories 107 and 207.
  • the intra prediction units 112 and 212 perform intra prediction using the reference signals of the local decoded image memories 107 and 207, generate a prediction signal, and generate a difference signal 102 and an adder 106 (adders on the decoder side). (206 only). Prediction parameters such as the prediction mode are generated and encoded on the decoder side when the prediction signal is generated, whereas the encoder side uses the prediction parameter when generating the prediction signal.
  • the control units 113 and 213 encode and decode the texture and depth map for each viewpoint in what order and what prediction is applied to the data of the multi-view video configured as shown in FIG. Perform comprehensive control.
  • the control includes setting of block size and the like.
  • parameters and the like necessary for the control are encoded, and on the decoder side, the parameters are decoded and passed to a function unit that requires the parameters.
  • the control unit 113 passes the prediction parameter to any one of the prediction units 110, 111, 112 to the entropy coding unit 104 when it is generated.
  • the prediction parameter is passed to a corresponding prediction unit (motion compensation unit 210, depth intra prediction unit 211, or intra prediction unit 212). 2 and 3, the flow of the exchange of prediction parameters between the control unit 113 or 213 and the prediction units 110, 111, 112 or 210, 211, 212 is not illustrated because the diagrams are complicated.
  • the texture can be encoded / decoded in the same manner as the conventional method by using a device other than the depth intra prediction units 111 and 211.
  • an inter-view prediction unit that applies prediction between viewpoints may be further provided as the fourth prediction unit, and inter-view prediction may be applied.
  • the depth map (depth) can be encoded and decoded by the same method as the texture described above, and the depth intra prediction units 111 and 211 can be applied.
  • FIG. 8 is a diagram illustrating an example of an encoding / decoding order when depth intra prediction is applied.
  • the decoding order in the decoder also corresponds to the reconstruction order in the encoder.
  • the block A0 at the same position as the block B0 in the depth map has been encoded and decoded. Further, the area A10 up to the block A0 in the raster scan order is also encoded and decoded. The area A11 after the block A0 may be encoded / decoded or incomplete.
  • Non-Patent Documents 3 and 4 When encoding / decoding such a depth map block B0 to be encoded / decoded, various modes as disclosed in Non-Patent Documents 3 and 4 are possible.
  • a wedge pattern group is created in which a predetermined wedgelet is tabulated according to the block size.
  • the wedgelet is obtained by modeling an object boundary (for example, a boundary between a person and a background wall) in a block in the depth map as a straight line.
  • FIG. 9 is a diagram for explaining the wedgelet and the prediction by the wedgelet.
  • FIG. 9 (1) shows a block B0 that is a prediction target, and a point (pixel position point) belonging to two different sides is selected from the four sides L1 to L4 of the block B0.
  • the one connected as a line segment is a wedgelet.
  • a line segment W1 connecting the point P1 on the side L4 and the point P2 on the side L3 becomes one wedgelet, and the block B0 is divided into regions R1 and R2 by the wedgelet W1. Divided into
  • a wedge pattern group is created in [Procedure 1].
  • a wedge pattern group is created in [Procedure 1] by determining a predetermined setting of points that can be used as the end points of the wedgelet for each block size. For example, when the block size is large, it is possible to thin out every other point, and when the block size is small, it is possible to set the end points including the 1/2 pixel position.
  • the decoder side specifies the wedge pattern to be applied to the block by using the number of the wedge pattern encoded in the stream in advance.
  • a wedge pattern is determined according to a predetermined prediction mode, and then encoded as side information as necessary.
  • the prediction mode for specifically determining the wedge pattern any one disclosed in Non-Patent Documents 3 and 4 may be used.
  • reference pixels are identified according to whether they belong to the same area as the upper left, and predicted DC values for the upper left and other areas are derived. Also, the decoder side derives a DC offset value obtained by encoding and decoding in the stream in advance, and the encoder side calculates the DC offset value to be derived.
  • the average in the regions R10 and R20 indicated by gray and diagonal lines is set as the predicted DC value, respectively. Can do.
  • the DC offset value is calculated for each position as a difference between the predicted DC value in each area and the depth value at each position in the areas R1 and R2.
  • the regions R10 and R20 are 7 pixels and 2 pixels respectively (the depth is given to the “pixel” position). ).
  • a predicted DC value and a DC offset value are calculated for each pixel position (depth pixel position) or for each region.
  • the prediction image is generated by using the total as a number of the depth lookup table (DLT).
  • predSamples [x] [y] Idx2DepthValue [DepthValue2Idx [predDcVal] + dcOffset]...
  • the depth intra prediction unit 111 outputs the predicted DC value predDcVal, which is converted into DepthValue2Idx [xpredDcVal] by the positive conversion unit 152.
  • dcOffset is obtained by obtaining the difference between the index number obtained by converting the depth value of the input image input from the input unit 101 by the positive conversion unit 151 and the converted DepthValue2Idx [predDcVal] by the differentiator 102. can get.
  • the above equation (1) represents the same thing in FIG. That is, the entropy decoding unit 204 outputs dcOffset as an index, the depth intra prediction unit 211 outputs a predicted DC value predDcVal, and then converted to DepthValue2Idx [predDcVal] as an index by the positive conversion unit 152, Are added in the form of an index by the adder 206, and then inversely converted into depth values by the inverse conversion unit 261, resulting in predicted depth values predSamples [x] [y].
  • FIG. 11 is a flowchart showing the case classification in which the DLT can be used in Non-Patent Documents 3 and 4, and the processing contents of encoding / decoding for the target block in each case.
  • step S1 it is determined whether or not the value of the variable “predModeIntra” that specifies what intra prediction mode is applied to the block is “INTRA_DMM_XXX”, that is, whether or not depth prediction is applied. If yes, the process proceeds to step S2, and if not, the process proceeds to step S3.
  • XXX represents “WFULL” or “CPREDTEX”. That is, in step S1, it is determined whether it is “INTRA_DMM_WFULL” or “INTRA_DMM_CPREDTEX” listed in Table IV-4 of Section I.8.4.2 of Non-Patent Document 3, but depth prediction can be variously studied. If there is a future increase / decrease in the table, these may be determined as well. In this sense, “INTRA_DMM_XXX” is used in the following description.
  • step S2 the depth intra prediction units 111 and 211 apply the region-based depth prediction to the block and determine that DLT is available at this time, and the process proceeds to step S4.
  • region-based depth prediction means depth prediction for each region divided into two by a wedgelet, or depth prediction in which one region is not divided and the whole is divided.
  • step S3 the intra prediction units 112 and 212 obtain a determination that normal intra prediction is applied to the block (for the depth signal), and the process proceeds to step S4.
  • step S4 it is determined whether to use SDC (Segment-wise-DC), which is an option for performing simple prediction in depth prediction, for the target block. If so, the process proceeds to step S7.
  • SDC Segment-wise-DC
  • prediction is performed not in pixel position units but in region units (two regions if divided by wedgelets, or one region of the entire block if not divided).
  • step S5 the DC difference signal in units of regions is calculated according to each prediction method (intra-depth prediction or normal intra prediction) by applying the SDC option, and then encoded on the encoder side and decoded on the decoder side. Proceed to In addition, since the offset is defined in the entire region, it is referred to as “DC differential signal”.
  • step S6 the encoder side adds the prediction signal given from the reconstructed signal and the decoder side from the decoded signal, and the DC difference signal obtained in step S5.
  • the depth signal obtained by the decoder is obtained for each region, and the flow ends.
  • the prediction mode corresponds to the above [Case 3], and the DLT usage mode is an index number converted / quantized as shown in FIGS. This corresponds to a mode in which encoding and decoding are performed directly without going through.
  • step S4 when it is determined in step S4 that the SDC option is not used and the process proceeds to step S7, quantization / transformation processing is performed under the application of the prediction mode (intra-depth prediction or normal intra prediction). To go to step S8. Accordingly, when the process proceeds to step S7 and DLT is used (when the process proceeds to step S9 described later), the mode is as shown in FIGS.
  • step S8 as the predetermined intra prediction mode, the intra prediction units 112 and 212 apply DC prediction (INTRA_DC), horizontal prediction (INTRA_HOR), or vertical prediction (INTRA_VER), or the depth intra prediction units 111 and 211 perform depth intra prediction. Whether (INTRA_DMM_XXX) is applied or not is determined as one of the four methods.
  • step S9 DLT is used to perform corresponding intra prediction to obtain a prediction signal, the encoder side encodes a residual signal obtained by subtracting the prediction signal from the input signal, and the decoder side performs prediction.
  • the decoding is performed by adding the signal and the decoded residual signal, and the flow ends.
  • the case where the intra prediction units 112 and 212 are applied corresponds to the above [Case 2]
  • the case where the depth intra prediction units 111 and 211 are applied corresponds to the above [Case 1].
  • step S8 if a negative determination is made in step S8 and the process proceeds to step S10, the intra prediction units 112 and 212 perform predictions other than the three prediction methods in steps S8 and S9, and then the flow ends.
  • the case of using the DLT is also included in the above [Case 2].
  • JCT3V-G1004 MV-HEVC Draft Text 7 JCT3V-G1001, 3D-HEVC Draft Text 3 JCT3V-G1005, Test Model 7 of 3D-HEVC and MV-HEVC
  • DLT is used for each depth signal corresponding to the applied prediction.
  • the lookup table can reduce the processing time rather than the complicated calculation. This assumes that the memory is large enough and the memory access is sufficiently fast compared to the computation time. DLT is also used under this assumption.
  • the assumptions regarding the use advantage of the above lookup table may not hold.
  • the number of SIMD and MIMD registers is limited, and there is not enough memory to store the entire table.
  • the memory access is relatively slow compared with the internal calculation of the CPU or GPU because the cache memory or the main memory where the table is placed is referred to.
  • SIMD and MIMD operations require several cycles, but if a cache having a capacity of several megabytes is assumed as a place where tables can be stored, several tens of cycles are required for one access.
  • the depth lookup table (DLT) used in the depth intra prediction described above does not hold the above assumptions, and requires a lot of processing time to implement using a CPU or GPU with a SIMD or MIMD calculator.
  • DLT depth lookup table
  • the present invention has been made in view of the above problems, and an object of the present invention is to provide a moving image encoding device, a moving image decoding device, and a method capable of reducing the amount of calculation at the time of conversion by depth look-up table.
  • the present invention provides a moving image encoding apparatus that applies prediction to a texture and depth of each viewpoint in a multi-view video and encodes the predicted and encoded depth.
  • a normal conversion unit for converting into an index number, and an inverse conversion unit for performing reverse conversion into depth in order to reconstruct the index number to be predicted and encoded The normal conversion unit and the reverse conversion unit perform the normal conversion and the reverse conversion, respectively, by a finite number of operation instructions selected from the group consisting of addition, subtraction, multiplication, shift operation, and conditional branch.
  • the present invention is a moving image decoding apparatus that applies prediction to a texture and depth of each viewpoint in a multi-view video and performs decoding, and reverses the index number that is predicted and decoded to reverse the depth.
  • the inverse conversion unit and the normal conversion unit are configured to perform addition, subtraction, multiplication, shift operation, and conditional branching.
  • the inverse transformation and the forward transformation are respectively performed by a finite number of operation instructions selected from the group.
  • the present invention is also a moving picture encoding method for encoding by applying prediction to the texture and depth of each viewpoint in a multi-view video, wherein the predicted and encoded depth is converted into an index number.
  • the forward transform stage and the inverse transform stage include addition and subtraction.
  • the forward transformation and the inverse transformation are respectively performed by a finite number of operation instructions selected from the group consisting of multiplication, shift operation, and conditional branch.
  • the present invention is a moving picture decoding method for decoding by applying prediction to the texture and depth of each viewpoint in a multi-view video, and performing reverse conversion of the predicted and decoded index number to depth.
  • the inverse transformation and the forward transformation are respectively performed by a finite number of operation instructions selected from the group.
  • the same forward transform and inverse transform as those performed directly by referring to the depth lookup table (DLT) are performed in a finite number of times selected from the group consisting of addition, subtraction, multiplication, shift operation, and conditional branching. Therefore, the amount of calculation can be reduced compared to direct reference to DLT in implementation using a CPU having a SIMD computing unit.
  • FIG. 3 is a diagram in which a related functional block is added to a portion related to a depth lookup table in the configuration of FIG. 2, and is a diagram according to an embodiment in which an index number undergoes conversion / quantization processing.
  • FIG. 4 is a diagram in which a related functional block is added to a portion related to a depth lookup table in the configuration of FIG. 3 and is a diagram according to an embodiment in which an index number undergoes conversion / quantization processing.
  • FIG. 3 is a diagram in which a related functional block is added to a portion related to a depth lookup table in the configuration of FIG. 2, and an index number is encoded / decoded without undergoing conversion / quantization processing; It is a figure which concerns on a form.
  • FIG. 4 is a diagram in which a related functional block is added to a portion related to a depth lookup table in the configuration of FIG. 3, and an index number is encoded / decoded without undergoing conversion / quantization processing; It is a figure which concerns on a form. It is a figure which shows the example of the encoding / decoding order at the time of applying depth intra prediction. It is a figure for demonstrating the prediction by a wedge let and a wedge let.
  • the moving picture encoding apparatus is a moving picture encoding apparatus 100 having the same configuration as that shown in FIGS.
  • a moving picture decoding apparatus according to an embodiment of the present invention is a moving picture decoding apparatus 200 having the same configuration as shown in FIGS. 3, 5, and 7.
  • the normal conversion units 151, 152, 252 and the reverse conversion units 161, 261 in the moving image encoding device 100 and the moving image decoding device 200 respectively perform the normal conversion and the reverse conversion by referring to the DLT as in the related art.
  • a finite number of operation instructions having addition, subtraction, multiplication, shift operation, and conditional branch in SIMD operation or MIMD operation that can be components of the operation instruction. Perform transformation and inverse transformation.
  • the positive conversion units 151, 152, 252 realize the same positive conversion as the positive conversion DepthValue2Idx realized by referring to the DLT in the above equation (1), etc. as the conversion DepthValue2IdxEq by the finite number of operation instructions To do.
  • the inverse transformation units 161 and 261 realize the inverse transformation exactly the same as the inverse transformation Idx2DepthValue realized by referring to the DLT in the above-described equation (1) or the like as the transformation Idx2DepthValueEq by the finite number of operation instructions.
  • DLT information it is necessary to generate DLT information in the video encoding device 100.
  • a depth value depth value d
  • depth video depth image
  • the number starting from the start value 0 is given to only the depth values that are used in order from the smallest value. In this way, DLT is obtained.
  • the method itself for obtaining the DLT is also disclosed in Non-Patent Document 4, “2.3.4.1.1 Construction of the depth lookup table” and the like.
  • the graph is converted into a mathematical expression having a series of addition, subtraction, multiplication, shift operation, and conditional branch as element operations and applied in a predetermined order.
  • the DLT initially given in the form of a conversion table is expressed as an operation instruction.
  • the information of the expressed operation instruction can be used also on the decoder side by being encoded and decoded as side information.
  • the forward conversion from the depth value d to the number I is the following equation (2)
  • the reverse conversion from the number I to the depth value d is as follows: This is possible with the equation (3).
  • the forward conversion units 151, 152, 252 and the reverse conversion units 161, 261 are realized by operation instructions that can perform the same processing, thereby reducing the required memory amount. At the same time, the calculation is speeded up.
  • the moving picture decoding apparatus uses the conversion formula encoded and decoded as side information on the moving picture coding apparatus 100 side. It is also possible to reconstruct the lookup table on the 200 side and realize conversion by table lookup as in the conventional case. In other words, the mathematical expression is more versatile as side information than the conversion table. The same is also possible in the reconstruction process on the video encoding device 100 side.
  • Equation (4) is most simply converted from depth value d to number I by dividing by 5, as in equation (4b) below.
  • DepthValue2IdxEq (d) d / 5... (4b)
  • Equation (4) is realized by a combination of the element operations.
  • “division by 5” is simulated by “multiplying by 51” followed by “performing right shift operation 8 times”.
  • Example 1 the forward transformation DepthValue2IdxEq and the inverse transformation Idx2DepthValueEq realized as a finite number of arithmetic processes are performed in the depth intra prediction (depth intra prediction units 111 and 112 in FIGS. 2 and 3) described in the above equation (1).
  • predSamples [x] [y] Idx2DepthValueEq (DepthValue2IdxEq (predDcVal) + dcOffset)... (6)
  • equation (6) Each value in the above equation (6) is the same as that described in equation (1), and the forward transformation and inverse transformation DepthValue2Idx, Idx2DepthValue realized by directly referring to DLT in equation (1) In (6), the same conversion is replaced with one that can be realized by a finite number of operations. Similar to equation (1), equation (6) above is also realized by the configuration shown in FIGS. 4 and 5 (configuration through transformation / quantization processing) as a functional block related to forward transformation / inverse transformation.
  • Example 2 In this embodiment, normal transformation DepthValue2IdxEq and inverse transformation Idx2DepthValueEq realized as a finite number of arithmetic processes are performed in normal intra prediction (intra prediction units 112 and 212 in FIGS. 2 and 3) for depth values.
  • this embodiment can be expressed by the following formulas (7) and (8), and functional blocks related to forward / inverse transformation are shown in FIGS. 4 and 5 (configurations through transformation / quantization processing). Realized.
  • idx DepthValue2IdxEq (predSamples [i] [j]) + resSamples [i] [j]... (7)
  • SL [xTb0 + i] [yTb0 + j] Idx2DepthValueEq (idx)... (8)
  • Equation (7) represents that intra prediction is applied to the depth value, and then forward converted to the number idx, while Equation (8) conversely converts the number idx in the decoding process or the reconstruction process. Inverse conversion to depth value.
  • the discrete value calculation (lookup table) is expressed as []
  • the continuous value calculation (formula) is expressed as ().
  • Expressions (7) and (8) represent the next processing in FIGS.
  • the prediction value predSamples at each position [i] [j] obtained by applying normal intra prediction (texture intra prediction) to the depth value is passed to the positive conversion units 152 and 252. , Converted into the index number DepthValue2IdxEq (predSamples) in equation (7).
  • the difference between the depth value obtained from the input unit 101 converted into the index number by the positive conversion unit 151 and the converted index number DepthValue2IdxEq (predSamples) is generated by the differentiator 102, and the equation ( Index resSamples corresponding to the difference in 7) is obtained at each position [i] [j], passed to the reconstruction process on the encoder side, and decoded on the decoder side.
  • Equation (8) represents both the reconstruction process on the encoder side and the decoding process on the decoder side. That is, the depth value SL reconstructed and decoded by the inverse transform units 161 and 261 after the idx is obtained by the expression (7) in each of the encoder-side adder 106 and the decoder-side adder 206 is obtained in the index format. Expression (8) is shown.
  • Example 3 the forward transformation DepthValue2IdxEq and the inverse transformation Idx2DepthValueEq realized as a finite number of arithmetic processes are applied in the case of step S6 in the case classification of FIG.
  • Equations (9a) and (9b) represent “dltIdxPred” and “dltIdxResi” as the predicted DC values and offset values converted into index numbers, respectively, and Equation (10) is reconstructed on the encoder side and is a decoder. Depth value “S” decoded on the side.
  • wedgePattern and dcPred represent the index number of the divided area and the predicted DC value for the area (index number), respectively.
  • Example 3 From the viewpoint of replacing the forward transformation DepthValue2IdxEq and the inverse transformation Idx2DepthValueEq realized as a finite number of computation processes with respect to which part to which processing by direct reference of the existing DLT is applied (Example 1) to (implementation) Example 3) has been described. Hereinafter, each example that can be combined with each of the (Example 1) to (Example 3) will be described from another viewpoint.
  • Example 4 The conversion formulas constituting the forward conversion DepthValue2IdxEq and the reverse conversion Idx2DepthValueEq realized as a finite number of arithmetic processes may be changed according to the intra prediction mode independently of the intraPredMode condition of S8.
  • conversion is not performed for prediction directions ranging from horizontal to upper left and vertical, and conversion is applied to other prediction directions.
  • the reliability of the reference pixel can be taken into consideration, and the processing time is reduced and the encoding performance is improved.
  • the approximation accuracy of the linear function is changed in advance according to the prediction direction (reliability) (the lower the reliability, the rougher the approximation, the reliability The higher the value is, the higher the approximation is), so that a conversion formula corresponding to the intra prediction mode can be constructed.
  • the normal conversion formula equivalent to high reliability
  • other conversion directions are reduced by reducing the number of index numbers by half, etc.
  • An expression (corresponding to low reliability) may be used.
  • forward conversion / inverse conversion similar to direct reference to DLT is realized by a finite number of operation instructions selected from the group consisting of addition, subtraction, multiplication, shift operation, and conditional branching. Therefore, it is possible to reduce the amount of calculation compared to direct reference to DLT in implementation using a CPU having a SIMD arithmetic unit.
  • the present invention causes a computer (a computer having a known hardware configuration such as a CPU, a memory, and various interfaces) to function as each unit in FIGS. 2 to 7, or causes the computer to perform steps corresponding to each unit in FIGS. It can be provided as a moving image encoding program or a moving image decoding program to be executed. Further, each program may be provided by being recorded on a computer-readable reading medium.
  • a computer a computer having a known hardware configuration such as a CPU, a memory, and various interfaces
  • each program may be provided by being recorded on a computer-readable reading medium.
  • DESCRIPTION OF SYMBOLS 100 Video encoding apparatus, 200 ... Video decoding apparatus, 111,211 ... Depth intra prediction part, 112,212 ... Intra prediction part, 151,152,252 ... Forward conversion part, 161,261 ... Inverse conversion part

Abstract

 CPUのSIMD演算等を利用する場合における、デプスに予測が適用される多視点映像の符号化・復号において、デプスルックアップデーブル(DLT)によるデプスとインデクス番号との変換の際の計算量を削減する。 DLTと同様の変換を、加算、減算、乗算、シフト演算及び条件分岐からなる群より選択された有限回の演算命令によって実現する。ここで、エンコーダ側において所定長の多視点映像において現れているデプス値を調べ、DLTの情報を求め、折れ線グラフで近似して、当該グラフを構成する1次関数に基づいて、DLTと同様の変換を実現する有限回の演算命令を構成する。

Description

動画像符号化装置及び動画像復号装置並びに方法
 本発明は、動画像符号化装置及び動画像復号装置並びに方法に関し、特に、多視点映像における各視点のテクスチャ及び奥行きマップを対象として、奥行きマップに対するデプスイントラ予測と領域DC符号化を適用する動画像符号化装置及び動画像復号装置並びに方法に関する。
 多視点映像符号化方式として、非特許文献1に開示のように、動画像符号化方式AVCを拡張したMVCが国際標準として規格化されている。また、非特許文献2に記載のように次世代動画像符号化方式HEVCを拡張したMV-HEVCが国際標準として規格化作業中である。
 さらに、上記に加えて、多視点の映像(テクスチャ)と奥行(デプス)を対象とする符号化方式が検討されており、非特許文献3にその実装等の詳細が、また、非特許文献4にその概要的な内容が、記載されている。
 図1は、当該符号化対象となる奥行きマップが対応付けられた多視点映像のデータ構成を概念的に示す図である。図示するように、カメラ位置に対応する各視点1~nにおいて撮影された画像としてテクスチャ1~nが与えられ、それぞれに奥行きマップ1~nが用意され、このようなデータが各時刻tにおいて用意される。
 テクスチャi(i=1,2,…,n)の各画素位置(x,y)において撮影される対象(オブジェクト)の、当該撮影しているカメラからの奥行きの値d(x,y)を与えたものが、奥行きマップi(i=1,2,…,n)となる。こうしたテクスチャ及び奥行きマップは、各視点1~n以外の任意視点での映像の生成その他の、種々の利用が可能である。
 なお、奥行きマップは、既存の手法により用意される。例えば、各視点間の位置関係や各カメラパラメータなどの利用のうえ、各テクスチャi間において同一の特徴点の対応付け等の処理を行うことにより、各奥行きマップiを用意することができる。
 当該各視点i(i=1,2,…,n)のテクスチャi及び奥行きマップiを対象とする符号化方式において、非特許文献3,4に記載のように、次のような手法を適用することができる。まず、テクスチャには、通常のイントラ予測と動き補償、予測残差の変換・量子化から構成される動画像符号化方式(非特許文献1、2等の方式)を用いることができる。
 一方、奥行きマップは、奥行きの値を画素値として有する「画像」とみなすこともできるので、テクスチャと同一の上記動画像符号化方式(通常方式)を適用することができる。さらに、当該通常方式の代わりに、あるいは当該通常方式と併用して、奥行きマップ専用のデプスイントラ予測を用いることもできる。なお、ここで、奥行きマップは信号特性がテクスチャのそれと大きく異なることから、専用のデプス予測方式が用意されている。
 奥行きマップの信号特性として、オブジェクト境界においては奥行きが異なるため急峻なエッジが生じる一方で、オブジェクト表面は比較的、奥行きの変化が少ないといった点が挙げられる。すなわち、例えば、手前に存在する第一オブジェクトの「人物」と後方に背景として存在する第二オブジェクトの「壁」といったように、オブジェクトが異なるとオブジェクト内の平均の奥行きが大きく異なるという特性がある。
 また、奥行きマップの別の信号特性として、テクスチャ信号との相関があるといった点が挙げられる。すなわち、例えば、手前に存在する第一オブジェクトの「人物」と後方に背景として存在する第二オブジェクトの「壁」といったように、テクスチャ映像について平均画素値をしきい値として前景・背景の2領域に分割した場合、奥行きマップでも同一の分割結果を得られるという特性がある。
 また、奥行きマップの別の信号特性として、デプスマップの取りうる値が著しく少ない場合があるといった点が挙げられる。すなわち、例えば、第iオブジェクトは平均の奥行きとその前後数種類の奥行き値しか存在しないため、全てのオブジェクトを含む画像全体でも奥行き値の種類がテクスチャのそれと比べて例えば2分の1以下になるという特性がある。
 図2及び図3はそれぞれ、当該各視点i(i=1,2,…,n)のテクスチャi及び奥行きマップiからなる多視点映像を対象とした動画像符号化装置及び動画像復号装置の機能ブロック図である。当該構成は、非特許文献1~4に開示された周知の構成であるが、当該「背景技術」(及び後述の「発明を実施するための形態」)の説明において、対象となるデータや機能ブロック等がどれであるかを明確にする必要上から、以下、当該図2及び図3の各部を説明する。
 図2にて、動画像符号化装置100は、入力部101、差分器102、変換・量子化部103、エントロピー符号化部104、逆量子化・逆変換部105、加算器106、ローカル復号画像メモリ107、インループフィルタ108、フレームバッファ109、動き補償部110、デプスイントラ予測部111、イントラ予測部112及び制御部113を備える。
 図3にて、動画像復号装置200は、出力部201、エントロピー復号部204、逆量子化・逆変換部205、加算器206、ローカル復号画像メモリ207、インループフィルタ208、フレームバッファ209、動き補償部210、デプスイントラ予測部211、イントラ予測部212及び制御部213を備える。
 動画像符号化装置100には、図1で説明したような多視点映像における各視点のテクスチャに奥行きマップを対応づけたデータが入力され、種々の予測などを適用し、変換・量子化して符号化する。動画像復号装置200は、当該符号化されたデータを復号して、逆量子化・逆変換し、対応する予測などを適用してから、当初の図1のデータ(多視点映像)に対応するものを出力する。
 なお、動画像符号化装置100をエンコーダ、動画像復号装置200をデコーダと略称する。以下、非特許文献1~4に開示の、エンコーダ及びデコーダの各部の概要を説明する。なお、同一又は対応する処理については、エンコーダ及びデコーダの機能部を併記しながら説明する。
 入力部101では、図1のデータ(多視点映像)をエンコーダ側の入力として受け取り、当該データを差分器102に渡す。出力部201では、当該図1のデータに対応するものがデコーダ側で復号されてフレームバッファ209に蓄積されているのを、デコーダ側の出力として、出力する。差分器102は、入力部101から受け取ったデータにおける信号と、その予測信号として、制御部113の判断によって動き補償部110、デプスイントラ予測部111またはイントラ予測部112のいずれかが生成した信号と、の差分を求めて、当該差分の値を変換・量子化部103へ渡す。
 変換・量子化部103は、差分器102より得た差分を、ブロック単位で直交変換して変換係数とし、さらに当該変換係数を量子化して、量子化値をエントロピー符号化部104及び逆量子化・逆変換部105へ渡す。エントロピー符号化部104は、変換・量子化部103から得た量子化値と、制御部113が適宜、必要に応じて出力した予測のパラメータ等と、をエントロピー符号化して、エンコーダ側の出力とする。
 エントロピー復号部204は、エンコーダ側がエントロピー符号化部104で出力したビットストリームを、デコーダ側での入力として受け取り、エントロピー復号して、量子化値及び予測パラメータ等となす。量子化値は逆量子化・逆変換部205へ渡され、予測パラメータ等は、制御部213に渡される。
 逆量子化・逆変換部105(逆量子化・逆変換部205)は、変換・量子化部103(エントロピー復号部204)より受け取った量子化値を、変換・量子化部103の逆の処理によって、逆量子化及び逆変換して、差分値となし、加算器106,206に渡す。
 加算器106,206は、制御部113,213の判断によって、動き補償部110,210、デプスイントラ予測部111,211またはイントラ予測部112,212のいずれかが生成した予測信号と、逆量子化・逆変換部105,205が出力した差分値と、を加算して、復号された信号となし、当該復号された信号を、ローカル復号画像メモリ107,207に渡す。
 ローカル復号画像メモリ107,207は、当該復号された信号を保持して、デプスイントラ予測部111,211とイントラ予測部112,212が予測を行う際の参照に供すると共に、当該復号された信号をインループフィルタ108,208に出力する。インループフィルタ108,208は、当該復号された信号にインループフィルタの処理を施して、フレームバッファ109,209に出力する。
 フレームバッファ109,209は、フィルタ処理された信号を保持して、動き補償部110,210及びデプスイントラ予測部111,211が予測を行う際の参照に供する。デコーダ側では前述のように、フレームバッファ209は当該フィルタ処理された信号をデコーダの出力として、出力部201へ渡す。
 動き補償部110,210は、フレームバッファ109,209の参照信号を用いて周知の動き予測を行い、予測信号を生成し、差分器102及び加算器106(デコーダ側では加算器206のみ)へ渡す。動きベクトルなどの予測パラメータは、エンコーダ側では、予測信号の生成の際に生成され符号化されるのに対し、デコーダ側では、サイド情報として復号された後に予測信号を生成するために利用される。
 デプスイントラ予測部111,211は、ローカル復号画像メモリ107,207とフレームバッファ109,209の参照信号を用いて、対象ブロックを2領域に分割するウェッジパターンを生成し、領域ごとに予測デプス値dを導出する。ウェッジパターン及びその生成については後述するが、ウェッジパターンの情報は利用されるモードに応じて適宜、サイド情報として符号化される。なお、別の予測手法では、2領域に分割せず対象ブロック全体について予測デプス値dを導出することもできる。
 ここで、前述のようにデプス値dは取りうる値の種類がテクスチャのそれに比べて少ない等の特性があるので、取りうるデプス値dを0から始まるインデクス番号Iに紐付けて予め登録しておいたデプスルックアップテーブル(DLT)が利用され、符号化(及び復号化)は、デプス値dではなく対応するインデクス番号Iの形で実施される。
 また、領域ごとに予測デプス値dとして導出されさらに変換されたインデクス番号Iは、一実施形態では、図2,3に実線で示すように、差分器102及び加算器106(デコーダ側では加算器206のみ)へ渡され、別の一実施形態では図2,3に点線で示すように、インデクス番号Iのまま直接、エントロピー符号化部104に入力(デコーダ側ではエントロピー復号部204から出力)される。いずれの場合も、インデクス番号Iに変換することで、デプス値dを直接符号化するよりも符号化効率が向上する。
 なお、図2,3では、テクスチャとデプスとの共通の処理の流れを明示するという観点から、デプスのみに関連する当該DLTの利用に関する機能ブロックが省略されている。そこで、図2,3のうち当該DLTの利用に関連する部分に、関連する機能ブロックを追加して描いたのが、それぞれ図4,5及び、図6,7である。
 図4,5は、導出されたインデクス番号Iが差分器102及び加算器106(デコーダ側では加算器206のみ)へ渡された後に変換・量子化処理を経てからエントロピー符号化部104に入力(デコーダ側ではエントロピー復号部204から出力)される一実施形態における図2,3それぞれの該当部分を示している。また、図6,7は、同様に導出され渡されたインデクス番号Iが変換・量子化処理を経ずにそのまま直接、エントロピー符号化部104に入力(デコーダ側ではエントロピー復号部204から出力)される一実施形態における図2,3それぞれの該当部分を示している。
 図4,6では、図2の構成に対して、正変換部151,152及び逆変換部161が追加され、図5,7では、図2の構成に対して、正変換部252及び逆変換部261が追加されている。3つの正変換部151,152,252は、入出力される信号がそれぞれ図示されるように異なるが、入力信号に対して出力信号を得るために処理する内容は同一であり、同一のDLTを参照して入力されたデプスdをインデクス番号Iに変換して出力する。逆変換部161,261も同様に、入出力される信号がそれぞれ図示されるように異なるが、信号に対して処理する内容は同一であり、正変換部151,152,252と同一のDLTを逆方向に参照してインデクス番号Iをデプスdに逆変換する。
 そして、図示するように、当該正変換部151,152,252及び逆変換部161,261に関連する信号の流れは以下の通りである。
 図4,5の一実施形態では、デプスイントラ予測部111,211(あるいは後述するように予測モードによってはイントラ予測部112,212)により予測されたデプス値dは、正変換部152にてインデクス番号Iに変換された後、差分器102及び加算器106(デコーダ側では加算器206のみ)へ渡される。エンコーダ側において差分器102では、デプスイントラ予測部111(あるいはイントラ予測部112)が予測する対象となった入力部101からの本来のデプス値dが正変換部151によってインデクス番号Iに変換されたものと、当該予測されたインデクス番号Iとの差分(オフセット)を算出して、変換・量子化部103に渡す。
 当該オフセットは、エンコーダ側及びデコーダ側でそれぞれ、逆量子化・逆変換部105,205によって再構成されたオフセットとしてのインデクス番号Iとなり、加算器106,206に渡され、正変換部152,252から得られる予測されたインデクス番号Iと加算されることで、再構成されたインデクス番号Iとなり、逆変換部161,261において再構成されたデプス値dに変換された後、ローカル復号画像メモリ107,207に渡される。
 図6,7の実施形態においても図示するように、以上の図4,5と同様の処理が、インデクス番号Iが量子化・変換及びその逆処理を受けることなく直接エントロピー符号化・復号されるという形で実施される。
 図2,3の説明に戻り、イントラ予測部112,212は、ローカル復号画像メモリ107,207の参照信号を用いてイントラ予測を行い、予測信号を生成して差分器102及び加算器106(デコーダ側では加算器206のみ)へ渡す。予測モードなどの予測パラメータは、デコーダ側では、予測信号の生成の際に生成され符号化されるのに対し、エンコーダ側では、予測信号の生成の際に利用される。
 制御部113,213は、図1のように構成される多視点映像のデータに対して、各視点におけるテクスチャ及び奥行きマップをどのような順番でどのような予測を適用して符号化・復号するかに関して、総合的な制御を行う。当該制御にはブロックサイズの設定なども含まれる。エンコーダ側では、当該制御に必要なパラメータ等を符号化させるようにし、デコーダ側では、復号して当該パラメータを必要とする機能部に渡す。
 エンコーダ側では、制御部113は、いずれかの予測部110,111,112において予測パラメータが生成された場合、エントロピー符号化部104へと渡す。デコーダ側では、予測パラメータが復号された場合、対応する予測部(動き補償部210、デプスイントラ予測部211又はイントラ予測部212)へと渡す。なお、図2,3では、当該制御部113又は213と、予測部110,111,112又は210,211,212と、の間における予測パラメータの授受の流れは、図が煩雑となるため、描くのを省略している。
 以上のようなエンコーダ及びデコーダにより、テクスチャについては、デプスイントラ予測部111,211以外を利用して、従来の手法と同様にして符号化・復号が可能である。図示はしていないが、4つめの予測部として、視点間での予測を適用する視点間予測部をさらに備えて、視点間予測を適用してもよい。
 また、奥行きマップ(デプス)については、上記テクスチャと同様の手法で符号化・復号が可能であると共に、デプスイントラ予測部111,211の適用も可能である。
 図8は、デプスイントラ予測を適用する際の符号化・復号順序の例を示す図である。なお、周知のように、デコーダにおける復号順序はエンコーダにおける再構成順序にも対応している。(2)に示すように、視点i(i=1, 2, ..., n)における時刻tの奥行きマップは、ラスタスキャン順でB10の部分まで符号化・復号済みであり、現時点での符号化・復号対象であるブロックB0以降の領域B11が符号化・復号未完了とする。なお、B10の部分の各ブロックについては、必ずしもデプスイントラ予測が適用されている必要はなく、その他のイントラ予測などが適用されていてもよい。
 一方、(1)に示すように、同じ視点iの同じ時刻tのテクスチャにおいては、奥行きマップのブロックB0と同位置のブロックA0は符号化・復号済みである。また、ラスタスキャン順でブロックA0までの領域A10も符号化・復号済みである。ブロックA0より後の領域A11は、符号化・復号済みであっても、未完了であってもよい。
 このような符号化・復号対象の奥行きマップのブロックB0を符号化・復号する際には、非特許文献3,4に開示されているような種々のモードが可能である。
 例えば、デプスイントラ予測部111,211が非特許文献3の「INTRA_DMM_WFULL」の手法(あるいは、非特許文献4の「2.3.3.3 Constant partition value coding」)を用いる場合、以下の[手順1]~[手順4]に従う。
 [手順1] ウェッジパターンの構築と選択
 [手順2] エッジ方向の検出
 [手順3] 2領域の予測DC値とDCオフセット値の導出
 [手順4] 予測DC値とDCオフセットの取得、デプス予測値の算出
 [手順1]では、ブロックサイズに応じて予め定められたウェッジレットをテーブル化したウェッジパターン郡を作成する。ウェッジレットは、奥行きマップ内のブロックにおけるオブジェクト境界(例えば、人物と背景である壁との境界など)を直線としてモデル化したものである。
 図9は、ウェッジレット及びウェッジレットによる予測を説明するための図である。図9の(1)には、予測対象となっているブロックB0が示されており、当該ブロックB0の4辺L1~L4の中から、異なる2辺に属する点(画素位置の点)を選んで線分として結んだものが、ウェッジレットとなる。例えば(2)に示すように、辺L4上の点P1と、辺L3上の点P2とを結ぶ線分W1が、一つのウェッジレットとなり、当該ウェッジレットW1によって、ブロックB0は領域R1及びR2へと分割される。
 当該異なる2辺上の2点を結ぶ線分として構成されるウェッジレットの可能なものの全て、または一部を候補として列挙することで、[手順1]にてウェッジパターン群が作成される。なお、ブロックサイズごとに、ウェッジレットの端点に利用しうる点の所定設定を決めておくことで、[手順1]にてウェッジパターン群が作成される。例えば、ブロックサイズが大きい場合は何点おきかに間引いて、ブロックサイズが小さい場合は1/2画素位置も含めて、端点を設定するといったことが可能である。
 [手順2]では、デコーダ側では、あらかじめストリーム中に符号化されたウェッジパターンの番号を用いて、当該ブロックに適用するウェッジパターンを特定する。
 また、エンコーダ側では[手順2]では、所定の予測モードによってウェッジパターンを決定したうえで、必要に応じてサイド情報として符号化する。ウェッジパターンを具体的に決定するための予測モードに関しては、非特許文献3,4に開示のいずれかを用いればよい。
 [手順3]では、ウェッジパターンの四隅について、左上と同じ領域に属するかに応じて参照画素を特定し、さらに左上とそれ以外の領域の予測DC値を導出する。また、デコーダ側では、あらかじめストリーム中に符号化され、復号して得られたDCオフセット値を導出し、エンコーダ側では、当該導出されるべきDCオフセット値の算出を行う。
 例えば、図9の(2)に示すウェッジパターンW1で分割された領域R1,R2については、図10に示すように、それぞれ灰色、斜線で示す領域R10,R20における平均を予測DC値とすることができる。DCオフセット値は、各領域における当該予測DC値と、領域R1,R2内の各位置でのデプス値との差として、各位置につき算出される。なお、図10では、図9の(2)に示すブロックB0のサイズが4×4であるものとして、領域R10,R20をそれぞれ7画素、2画素(「画素」位置にデプスが与えらている)の領域として示している。
 [手順4]では、前記特定されたウェッジパターンと、前記導出された予測DC値、DCオフセット値を用いて、画素位置(デプスの画素位置)ごとあるいは領域ごとに予測DC値とDCオフセット値を取得し、その合計をデプスルックアップテーブル(DLT)の番号として予測画像を生成する。
 例えば、画素位置ごとに予測画像を生成する場合であれば、図9の(2)の領域R1に対して予測画像として生成される番号は、ブロックB0の位置(x,y)における予測値をpredSamples[x][y]、予測DC値をpredDcVal、DCオフセットをdcOffset、DLTを参照しての正変換及び逆変換をそれぞれDepthValue2Idx, Idx2DepthValueとすると、以下の式(1)で与えられる。
   predSamples[ x ][ y ]
      = Idx2DepthValue[ DepthValue2Idx[ predDcVal ] + dcOffset ]  …(1)
 なお、上記の式(1)は、図6,7の構成における以下の部分に対応している。
 すなわち、図6にて、デプスイントラ予測部111が予測DC値predDcValを出力し、これが正変換部152によってDepthValue2Idx[ predDcVal ]へ変換される。一方、dcOffsetは、入力部101から入力される入力画像のデプス値が正変換部151によって変換されたインデクス番号と、当該変換されたDepthValue2Idx[ predDcVal ]との差分を差分器102で取得することで得られる。
 そして、上記の式(1)は、加算器106において当該変換されたDepthValue2Idx[ predDcVal ]と当該得られたdcOffsetとがインデクスの形で加算された後に、逆変換部161によって逆変換され、予測されたデプス値predSamples[ x ][ y ]となることを表している。
 また、上記の式(1)は図7でも同様のことを表している。すなわち、エントロピー復号部204がインデクスとしてのdcOffsetを出力したものと、デプスイントラ予測部211が予測DC値predDcValを出力した後に正変換部152によってインデクスとしてのDepthValue2Idx[ predDcVal ]へ変換されたものと、が加算器206によってインデクスの形で足しあわされた後に、逆変換部261によってデプス値に逆変換され、予測されたデプス値predSamples[ x ][ y ]となることを表している。
 以上、その一例を示したように、非特許文献3,4のデプスを対象とした予測においては、各種の予測とDLT(デプスルックアップテーブル)とが組み合わせて利用される。なお、DLTはエンコーダ側で作成してからデコーダ側にその情報を送る必要があるが、復号手法に関しては非特許文献3の「I.8.3.6」に開示されている。
 DLT利用の機能ブロックは図4~7に示した通りであるが、DLTの利用がなされうる具体的な態様を列挙すると、次の[場合1]~[場合3]の通りである。すなわち、上記に例を挙げたような[場合1]デプスイントラ予測と、[場合2]一部のイントラ予測モードにおいて逆量子化・逆変換した残差信号との加算と、[場合3]予測信号とDC差分との加算と、である。
 図11は、非特許文献3,4における当該DLTの利用がなされうる場合分けと、各場合における対象ブロックに対する符号化/復号の処理内容と示したフローチャートである。
 ステップS1では、当該ブロックに適用するイントラ予測モードが何であるかを特定する変数「predModeIntra」の値が「INTRA_DMM_XXX」であるか否か、すなわち、デプス予測を適用するか否か、の判断が行われ、肯定であればステップS2に進み、否定であればステップS3へ進む。
 なおここで、「XXX」は「WFULL」又は「CPREDTEX」を表している。すなわち、ステップS1では非特許文献3のI.8.4.2節Table I-4に列挙されている「INTRA_DMM_WFULL」又は「INTRA_DMM_CPREDTEX」であるかが判断されるが、デプス予測は種々検討可能であるため、当該テーブルに今後増減が生じた場合、それらについても同様に判断対象としてよい。このような意味にて、以降の説明でも「INTRA_DMM_XXX」の記載を用いることとする。
 ステップS2では、当該ブロックにはデプスイントラ予測部111,211によって領域ベースのデプス予測が適用される旨と、この際にDLTが利用可能である判断を得て、ステップS4へ進む。なお、領域ベースのデプス予測とは、ウェッジレットによって2つに分割される各領域を対象としたデプス予測、あるいは、分割はなされず全体を1領域とするデプス予測を意味する。
 ステップS3では、当該ブロックにはイントラ予測部112,212によって通常のイントラ予測が(デプス信号を対象として)適用される旨の判断を得て、ステップS4へ進む。
 ステップS4では、当該ブロックを対象として、デプス予測における簡易予測実施のオプションである、SDC(Segment-wise DC)を利用するか否かの判断が行われ、肯定であればステップS5へ進み、否定であればステップS7へ進む。なお、SDCオプションを利用する場合は、予測が画素位置単位ではなく、領域単位(ウェッジレットで分割されていれば2領域それぞれ、分割されていなければブロック全体の1領域)で行われる。
 ステップS5では、SDCオプション適用により領域単位でのDC差分信号を各予測手法(イントラデプス予測又は通常のイントラ予測)に従って算出したうえで、エンコーダ側では符号化し、デコーダ側では復号して、ステップS6へ進む。なお、オフセットが領域全体で定義されることから、「DC差分信号」と称している。
 ステップS6では、エンコーダ側では再構成された信号から与えられデコーダ側では復号された信号から与えられる予測信号と、ステップS5で求まったDC差分信号とを加算することで、エンコーダ側では再構成されたデプス信号を、デコーダ側では復号されたデプス信号を、それぞれ領域ごとに得て、フローは終了する。
 なお、当該ステップS5,S6を通る場合は、予測の態様としては上記[場合3]に相当し、DLT利用の態様としては、図6,7のように、インデクス番号が変換・量子化処理を経ずに直接符号化・復号される態様に相当する。
 一方、ステップS4にてSDCオプションの利用はしない判断を得てステップS7へ進むと、当該予測モード(イントラデプス予測又は通常のイントラ予測)の適用のもとで、量子化・変換処理を行ってから、ステップS8へ進む。従って、ステップS7へ進んだ場合で、且つDLTを利用する場合(後述のステップS9へ進んだ場合)、その態様は図4,5に示すものとなる。
 ステップS8では、DLTを利用する旨のフラグ変数である「DltFlag」が真である、すなわち「DltFlag=1」であり、且つ、イントラ予測モードが所定のいずれかに設定されているか、が判断され、肯定であればステップS9へ進み、否定であればステップS10へ進む。
 当該ステップS8では、所定のイントラ予測モードとして、イントラ予測部112,212がDC予測(INTRA_DC)、水平予測(INTRA_HOR)若しくは垂直予測(INTRA_VER)を適用するか、又は、デプスイントラ予測部111,211がデプスイントラ予測(INTRA_DMM_XXX)を適用するか、の4通りのいずれかに該当するか否かが判断される。
 ステップS9では、DLTを利用して対応するイントラ予測を実施して予測信号を得て、エンコーダ側では予測信号を入力信号に対して差分して得られる残差信号を符号化し、デコーダ側では予測信号と復号された残差信号とを加算して復号を実施し、フローを終了する。ここで、イントラ予測部112,212が適用された場合が、上記の[場合2]に相当し、デプスイントラ予測部111,211が適用された場合が、上記の[場合1]に相当する。
 一方、ステップS8にて否定の判断を得てステップS10に進んだ場合は、イントラ予測部112,212が上記ステップS8,S9における3通りの予測手法以外の予測実施してから、フローを終了する。
 なお、当該ステップS10にて、「DltFlag=0」の場合、DLTは利用されないが、「DltFlag=1」の場合は、対応するイントラ予測のもとで、DLTを利用する。当該DLTを利用する場合も上記の[場合2]に含まれる。
 なお、ウェッジレットに基づく領域ベースの予測信号生成処理(図11のステップS2を経由する場合)の詳細は、非特許文献3の「I.8.4.4.2.9」に開示されている。一部のイントラ予測モードについて予測線号と残差信号との加算(図11のステップS9を経由し、且つ[場合2]に該当する場合)の詳細は、非特許文献3の「I.8.4.4.1」に開示されている。予測信号とDC差分信号との加算(図11のステップS6を経由する場合)の詳細は、非特許文献3の「I.8.4.4.3」に開示されている。
ISO/IEC 14496-10 - MPEG-4 Part 10, Advanced Video Coding. JCT3V-G1004, MV-HEVC Draft Text 7 JCT3V-G1001, 3D-HEVC Draft Text 3 JCT3V-G1005, Test Model 7 of 3D-HEVC and MV-HEVC
 以上のように、非特許文献3,4におけるデプスの符号化/復号においては、適用される予測に応じた各デプス信号を対象として、DLTが活用されている。
 ここで、一般には、複雑な計算よりもルックアップテーブルの方が、処理時間を削減できると考えられる。これは、メモリが十分大きくかつメモリアクセスが演算時間と比較して十分に高速であることを前提としている。DLTも当該前提のもとで活用されている。
 一方、近年、CPU(中央演算装置)やGPU(グラフィック処理装置)の処理性能の向上や専用集積回路(ASIC)の開発リスク上昇の結果、動画像符号化装置及び動画像復号装置を、SIMD(Single Instruction Multiple Data)演算器あるいはMIMD(Multiple Instruction stream, Multiple Instruction stream)などCPUやGPUに備えられたアクセラレーション機能を用いて実現するケースが増加している。
 しかしながら、CPUのSIMDやGPUのMIMDを用いて実装する場合、上記のルックアップテーブル利用メリットについての前提が成り立たない場合がある。例えば、SIMDやMIMDのレジスタの数には制限があり、テーブル全体を格納する十分なメモリがない。そのため、テーブルの置かれたキャッシュメモリや主記憶メモリへ参照しに行くため、メモリアクセスはCPUやGPUの内部計算と比較し、相対的に低速となる。例えば、SIMD演算やMIMD演算には数サイクルの時間が必要だが、テーブルを格納可能な場所として数MBの容量を有するキャッシュを想定した場合、1アクセスにつき数十サイクルの時間が必要となる。
 特に、以上説明してきたデプスイントラ予測で用いられるデプスルックアップテーブル(DLT)は、上記前提が成り立たず、SIMD演算器あるいはMIMD演算器を有するCPUやGPUを用いた実装において、処理時間が多く必要となってしまう課題があった。すなわち、例えば前述の[手順1]~[手順4]の手法を取る場合、[手順4]において予測された奥行き値をテーブル内の番号に変換している。当該変換はその他の手法を取る場合も同様に必要となるが、テーブルのエントリ数に比例して番号の探索をする必要があるため、その処理時間は多い。
 本発明は、当該課題に鑑み、デプスルックアップデーブルによる変換の際の計算量を削減することが可能な、動画像符号化装置及び動画像復号装置並びに方法を提供することを目的とする。
 上記目的を達成するため、本発明は、多視点映像における各視点のテクスチャ及びデプスに対して予測を適用して符号化する動画像符号化装置であって、当該予測され符号化されるデプスをインデクス番号に変換する正変換部と、当該予測され符号化される対象となったインデクス番号を再構成するためにデプスに逆変換する逆変換部と、を備え、
 前記正変換部及び逆変換部は、加算、減算、乗算、シフト演算及び条件分岐からなる群より選択された有限回の演算命令によって、それぞれ前記正変換及び逆変換を行うことを特徴とする。
 また、本発明は、多視点映像における各視点のテクスチャ及びデプスに対して予測を適用して復号する動画像復号装置であって、当該予測され復号される、インデクス番号をデプスに逆変換する逆変換部と、当該逆変換されたデプスを再構成するためにインデクス番号に変換する変換部と、を備え、前記逆変換部及び正変換部は、加算、減算、乗算、シフト演算及び条件分岐からなる群より選択された有限回の演算命令によって、それぞれ前記逆変換及び正変換を行うことを特徴とする。
 また、本発明は、多視点映像における各視点のテクスチャ及びデプスに対して予測を適用して符号化する動画像符号化方法であって、当該予測され符号化されるデプスをインデクス番号に変換する正変換段階と、当該予測され符号化される対象となったインデクス番号を再構成するためにデプスに逆変換する逆変換段階と、を備え、前記正変換段階及び逆変換段階は、加算、減算、乗算、シフト演算及び条件分岐からなる群より選択された有限回の演算命令によって、それぞれ前記正変換及び逆変換を行うことを特徴とする。
 さらに、本発明は、多視点映像における各視点のテクスチャ及びデプスに対して予測を適用して復号する動画像復号方法であって、当該予測され復号される、インデクス番号をデプスに逆変換する逆変換段階と、当該逆変換されたデプスを再構成するためにインデクス番号に変換する変換段階と、を備え、前記逆変換段階及び正変換段階は、加算、減算、乗算、シフト演算及び条件分岐からなる群より選択された有限回の演算命令によって、それぞれ前記逆変換及び正変換を行うことを特徴とする。
 本発明によれば、デプスルックアップテーブル(DLT)を直接参照して行うのと同様の正変換及び逆変換を、加算、減算、乗算、シフト演算及び条件分岐からなる群より選択された有限回の演算命令によって行うので、SIMD演算器を有するCPUを用いた実装等においてDLTを直接参照するよりも計算量を削減することができる。
多視点映像における各視点の画像(テクスチャ)に奥行きマップが対応づけられて構成されたデータ構成を説明するための図である。 多視点映像を対象とした動画像符号化装置の機能ブロック図である。 多視点映像を対象とした動画像復号装置の機能ブロック図である。 図2の構成のうちデプスルックアップテーブルに関連する部分に、関連する機能ブロックを追加して描いた図であり、インデクス番号が変換・量子化処理を経る一実施形態に係る図である。 図3の構成のうちデプスルックアップテーブルに関連する部分に、関連する機能ブロックを追加して描いた図であり、インデクス番号が変換・量子化処理を経る一実施形態に係る図である。 図2の構成のうちデプスルックアップテーブルに関連する部分に、関連する機能ブロックを追加して描いた図であり、インデクス番号が変換・量子化処理を経ずに符号化・復号される一実施形態に係る図である。 図3の構成のうちデプスルックアップテーブルに関連する部分に、関連する機能ブロックを追加して描いた図であり、インデクス番号が変換・量子化処理を経ずに符号化・復号される一実施形態に係る図である。 デプスイントラ予測を適用する際の符号化・復号順序の例を示す図である。 ウェッジレット及びウェッジレットによる予測を説明するための図である。 予測DC値及びDCオフセット値を説明するための図である。 デプスルックアップテーブルの利用がなされうる場合分けと、各場合における対象ブロックに対する符号化/復号の処理内容と示したフローチャートである。 デプスルックアップテーブルを折れ線グラフとして近似する例を示す図である。
 本発明の一実施形態に係る動画像符号化装置は、図2、図4、図6に示すのと同様の構成に係る動画像符号化装置100である。また、本発明の一実施形態に係る動画像復号装置は、図3、図5、図7に示すのと同様の構成に係る動画像復号装置200である。
 ただし、本発明においては、動画像符号化装置100及び動画像復号装置200における正変換部151,152,252及び逆変換部161,261がそれぞれ、従来技術のようにDLTをそのまま参照することで正変換及び逆変換を実施するのに代えて、SIMD演算やMIMD演算における、加算、減算、乗算、シフト演算及び条件分岐をその演算命令の構成要素になりうるものとして有する有限回の演算命令で、DLTと同様の正変換及び逆変換を実施する。
 こうして本発明では、正変換部151,152,252において前述の式(1)等ではDLTを参照することによって実現されていた正変換DepthValue2Idxと全く同様の正変換を、当該有限回の演算命令による変換DepthValue2IdxEqとして実現する。同様に、逆変換部161,261において前述の式(1)等ではDLTを参照することによって実現されていた逆変換Idx2DepthValueと全く同様の逆変換を、当該有限回の演算命令による変換Idx2DepthValueEqとして実現する。
 ここで、DLTと同様の正変換/逆変換を、加算、減算、乗算、シフト演算及び条件分岐からなる群から選択された有限回の演算命令で実現するには、具体的には次のようにすればよい。
 まず、DLTの情報を、動画像符号化装置100において生成しておく必要がある。その一例として、入力される多視点映像におけるデプス画像(デプス映像)の所定部分、例えば、シーケンスの先頭1秒分のデプス画像を対象に、奥行き値(デプス値d)が利用されているかの有無を調査し、利用されている奥行き値のみに、小さい値から順に、開始値0から始まる番号を付与する。こうして、DLTが得られる。なお、当該DLTを得る方法自体は、非特許文献4の「2.3.4.1.1 Construction of the depth lookup table」等にも開示されている。
 そして、本発明ではさらに、当該得られたDLTにおいて、番号I(I=0, 1, 2, …, n-1)に対して単調に増加するデプス値d(I)を、1次関数の集合としての折れ線グラフで近似したうえで、該グラフを一連の加算・減算・乗算・シフト演算・条件分岐を要素演算として有し、所定順番で適用されるような数式へと変換する。近似の結果、当初、変換テーブルの形で与えられていたDLTは演算命令として表現される。当該表現された演算命令の情報は、サイド情報として符号化され復号されることで、デコーダ側においても利用可能となる。
 図12は、当該近似された折れ線グラフd=d(I)の概念的な例である。当該折れ線グラフの情報を演算名の形で保持しておくことで、デプス値dから番号Iへの正変換は以下の式(2)で、番号Iからデプス値dへの逆変換は、以下の式(3)で可能である。
     DepthValue2IdxEq( d )= (d-d(i)) * mulFW(i) >> 8       …(2)
     Idx2DepthValueEq( I ) = -(I(i)-I)*mulIV(i)+d(i)  …(3)
 上記の式(2)は、折れ線グラフの情報を、dとd(i)の比較を行いd>d(i)を満たす場合にmulFWによる乗算と右シフト演算によりインデクス番号を算出する形で保持しておくことで、有限回であるi回の比較と加算、乗算、右シフト演算で実現されることは明らかである。同様に式(3)は、IとI(i)の比較を行いI<I(i)を満たす場合にmulIVによる乗算と加算(減算)により実現されることは明らかである。また、mulIV * mulFWは概ね1<<8=256に近い値とし、いずれかをサイド情報として符号化しておく。
 なお、折れ線グラフで近似する手法としては、種々の周知手法が利用可能である。例えば以下のURLに開示の、幾何研究分野で一般的な図形の輪郭線を直線群で近似する手法などが利用可能である。
http://www.mm.media.kyoto-u.ac.jp/education/DIP/WEBPAGE_SECTION/section7/node17.html
 こうして、本願発明においてはDLTをそのままテーブルとして参照するのに代えて、同様の処理が可能な演算命令によって正変換部151,152,252及び逆変換部161,261を実現することで、必要なメモリ量が削減されると共に、計算が高速化される。
 特に、数式により変換が実現されるため、変換テーブルによるメモリアクセスが不必要になる。また、SIMD演算やMIMD演算による変換が可能となり、複数のデプス値と番号を同時に変換可能になる。これらの結果、処理時間を削減可能となる。なお、CPU/GPUと異なりSIMD/MIMD演算自体を拡張可能なFPGAやASICでの実装においては、動画像符号化装置100側においてサイド情報として符号化・復号された変換式から、動画像復号装置200側においてルックアップテーブルを再構築し、従来と同様にテーブル引きによる変換を実現することも可能である。すなわち、数式表現のほうが変換テーブルよりもサイド情報としては汎用性が高い。また、動画像符号化装置100側の再構成処理においても、同様のことが可能である。
 式(2),(3)の特別な場合として、具体例を挙げると、例えばデプス値dが離散的であり5の倍数でしか存在しない場合、近似される折れ線グラフは「d=5*I」であり、デプス値dから番号Iへの正変換DepthValue2IdxEq(d)と、番号Iからデプス値dへの逆変換Idx2DepthValueEq( I )は、以下の式(4), (5)のような数式によって実現することができる。
      DepthValue2IdxEq( d ) = ( 51 * d ) >> 8   …(4)
      Idx2DepthValueEq( I ) = 5 * I     …(5)
 なお、式(4)は、最も単純には以下の式(4b)のように、5で割ることによってデプス値dから番号Iへと変換することとなる。
      DepthValue2IdxEq( d ) = d/5   …(4b)
 しかしながら、本発明において使用可能な要素演算は「加算・減算・乗算・シフト演算・条件分岐」であって、除算は使用不可能であるため、除算と(概ね)同様の処理を周知のように、当該要素演算の組み合わせで実現したものが式(4)である。式(4)では、「5で除算すること」を「51で乗算すること」に続いて「右シフト演算を8回行うこと」によって模擬的に実現している。
 以上のような、本願発明においてDLTを直接用いるのに代えて有限回の演算処理として実現された正変換及び逆変換は、従来技術においてDLTが利用されている各所において実施することが可能である。以下、各実施例を説明する。
(実施例1)
 当該実施例では、有限回の演算処理として実現された正変換DepthValue2IdxEq及び逆変換Idx2DepthValueEqを、前述の式(1)で説明したデプスイントラ予測(図2、図3のデプスイントラ予測部111,112)において実施する。図11の場合分けでは、ステップS9を「predModeIntra=INTRA_DMM_XXX」で実施する場合に相当する。当該実施例はすなわち、以下の式(6)で表現することができる。
   predSamples[ x ][ y ]
    = Idx2DepthValueEq( DepthValue2IdxEq( predDcVal ) + dcOffset ) …(6)
 上記式(6)中の各値は式(1)で説明したのと同様であり、式(1)においてDLTを直接参照することで実現されていた正変換及び逆変換DepthValue2Idx, Idx2DepthValueが、式(6)では同様の変換を有限回の演算処理で実現するものに置き換えられている。式(1)と同様、上記式(6)も正変換・逆変換に関連する機能ブロックとしては図4,5の構成(変換・量子化処理を経る構成)で実現される。
(実施例2)
 当該実施例では、有限回の演算処理として実現された正変換DepthValue2IdxEq及び逆変換Idx2DepthValueEqを、デプス値を対象とした通常のイントラ予測(図2,3のイントラ予測部112,212)において実施する。図11の場合分けでは、ステップS9を「predModeIntra=INTRA_DC,INTRA_HOR又はINTRA_VER」で実施する場合に相当する。当該実施例はすなわち、以下の式(7),(8)で表現することができ、正変換・逆変換に関連する機能ブロックとしては図4,5(変換・量子化処理を経る構成)で実現される。
   idx = DepthValue2IdxEq( predSamples[ i ][ j ] ) + resSamples[ i ][ j ]  …(7)
   SL[ xTb0 + i ][ yTb0 + j ] = Idx2DepthValueEq( idx )  …(8)
 式(7)は、デプス値に対してイントラ予測を適用してから、番号idxに正変換することを表しており、式(8)はその逆に、復号処理あるいは再構成処理において番号idxをデプス値に逆変換することを表している。なお、離散値演算(ルックアップテーブル)は[]として表記し、連続値演算(数式)は()として表記してある。
 すなわち、式(7),(8)は図4,5における次の処理を表している。イントラ予測部112,212において、通常のイントラ予測(テクスチャ用イントラ予測)をデプス値に適用して得られた各位置[i][j]での予測値predSamplesは、正変換部152,252に渡されることで、式(7)のインデクス番号DepthValue2IdxEq( predSamples )へと変換される。一方、入力部101から得られたデプス値が正変換部151でインデクス番号に変換されたものと、当該変換されたインデクス番号DepthValue2IdxEq( predSamples )との差分を差分器102で生成して、式(7)における差分に対応するインデクスresSamplesが各位置[i][j]で得られ、エンコーダ側では再構成処理に渡され、デコーダ側では復号される。
 そして、式(8)は、当該エンコーダ側における再構成処理及びデコーダ側における復号処理の両者を表している。すなわち、エンコーダ側の加算器106及びデコーダ側の加算器206のそれぞれにおいて式(7)によりインデクス形式で加算されidxが得られた後に、逆変換部161,261により再構成・復号されるデプス値SLを表しているのが式(8)である。
 なお、式(7),(8)にて(xTb0, yTb0)は対象ブロックの左上位置を、(i, j)は対象ブロック内での位置を表している。
(実施例3)
 当該実施例では、有限回の演算処理として実現された正変換DepthValue2IdxEq及び逆変換Idx2DepthValueEqを、図11の場合分けにおけるステップS6の場合において適用する。
 すなわち、再構成画像の生成処理において、フレームバッファの参照画像を用いて、一領域とみなす、もしくは前述のように二領域に分割するウェッジパターンを生成し、領域ごとに予測DC値とサイド情報として符号化・復号されるオフセット値(番号)を加える。ただし、オフセット値(番号)はデプス値の差分を表しているため、予測値も一度番号に変換する必要がある。なお、当該変換処理は、図6,7に示されている通りである。従って、当該実施例は以下の式(9a),(9b), (10)で表すことができる。
  dltIdxPred = DepthValue2IdxEq( dcPred[ wedgePattern[ x ][ y ] ] )  …(9a)
  dltIdxResi = DcOffset[ xTb ][ yTb ][ wedgePattern[ x ][ y ] ]  …(9b)
  S[ xTb0 + x ][ yTb0 + y ] = predSamples[ x ][ y ] + 
  Idx2DepthValueEq( dltIdxPred + dltIdxResi ) - dcPred[ wedgePattern[ x ][ y ] ]…(10)
 式(9a),(9b)はそれぞれ、予測DC値及びオフセット値をインデクス番号に変換したものとして「dltIdxPred」及び「dltIdxResi」を表しており、式(10)はエンコーダ側にて再構成されデコーダ側にて復号されるデプス値「S」を表している。式(9a),(9b),(10)のwedgePatternとdcPredは分割された領域のインデックス番号と、領域(インデックス番号)に対する予測DC値とをそれぞれ表している。
 以上、有限回の演算処理として実現された正変換DepthValue2IdxEq及び逆変換Idx2DepthValueEqを、既存のDLTの直接参照による処理が適用されているどの箇所を置き換えるか、という観点により(実施例1)~(実施例3)を説明した。以下、別の観点から、当該(実施例1)~(実施例3)とそれぞれ組み合わせ可能な各実施例を説明する。
(実施例4)
 有限回の演算処理として実現する正変換DepthValue2IdxEq及び逆変換Idx2DepthValueEqを構成する変換式は、S8のintraPredModeの条件とは独立に、イントラ予測モードに応じて変換式を変えるようにしてよい。
 たとえば、水平から左上、垂直にわたる予測方向については変換を行わず、それ以外の予測方向については変換を適用する。その結果、参照画素の信頼性を考慮可能となり、処理時間の削減と符号化性能が改善する。
 なお、当該実施例では、変換式を変えようとするイントラ予測モード毎に、あらかじめ予測方向(信頼度)に応じて1次関数の近似精度を変える(信頼度が低いほど粗い近似とし、信頼度が高いほど高精度な近似とする)ことで、イントラ予測モードに応じた変換式を構築することができる。例えば、水平から左上、垂直にわたる予測方向では通常の変換式(高信頼に相当)を用い、それ以外の予測方向については、インデックス番号の個数を半分にする等して減らすことで、別の変換式(低信頼に相当)を用いるようにしてよい。
(実施例5)
 有限回の演算処理として実現する正変換DepthValue2IdxEq及び逆変換Idx2DepthValueEqは、前述のように「加算・減算・乗算・シフト演算・条件分岐」の数式を要素とするのに加えて、さらに、SIMD分野において周知の小規模テーブル(例えばテーブルサイズが16)とを組み合わせて実現してもよい。すなわち、入力値をテーブルサイズごとに分割し、分割された値ごとに小規模テーブルを適用することで実現してもよい。なお、小規模テーブルは周知のように1命令で実現できるので、当該実施例のように、演算命令の1種類として利用してもよい。
 以上、本発明によれば、加算、減算、乗算、シフト演算及び条件分岐からなる群より選択された有限回の演算命令によって、DLTを直接参照するのと同様の正変換・逆変換を実現するので、SIMD演算器を有するCPUを用いた実装等においてDLTを直接参照するよりも計算量を削減することができる。
 なお、本発明はコンピュータ(CPU、メモリ及び各種インタフェースといった周知のハードウェア構成を備えるコンピュータ)を図2~図7の各部として機能させる、あるいはコンピュータに図2~図7の各部に対応するステップを実行させる動画像符号化プログラム又は動画像復号プログラムとして、提供することが可能である。さらに、当該各プログラムは、コンピュータ読み取り可能な読み取り媒体に記録して、提供されてもよい。
100…動画像符号化装置、200…動画像復号装置、111,211…デプスイントラ予測部、112,212…イントラ予測部、151,152,252…正変換部、161,261…逆変換部

Claims (13)

  1.  多視点映像における各視点のテクスチャ及びデプスに対して予測を適用して符号化する動画像符号化装置であって、
     当該予測され符号化されるデプスをインデクス番号に変換する正変換部と、
     当該予測され符号化される対象となったインデクス番号を再構成するためにデプスに逆変換する逆変換部と、を備え、
     前記正変換部及び逆変換部は、加算、減算、乗算、シフト演算及び条件分岐からなる群より選択された有限回の演算命令によって、それぞれ前記正変換及び逆変換を行うことを特徴とする動画像符号化装置。
  2.  前記正変換部及び逆変換部では、符号化対象の多視点映像における所定部分から取得されたデプスが取りうる値をインデクス番号に対応付けたテーブルを参照して行われるのと同様の正変換及び逆変換を、前記有限回の演算命令によって行うことを特徴とする請求項1に記載の動画像符号化装置。
  3.  前記正変換部及び逆変換部のそれぞれにおける前記有限回の演算命令は、前記テーブルを1次関数の集合としての折れ線グラフに変換し、当該折れ線グラフを構成している1次関数に基づいて構築されていることを特徴とする請求項2に記載の動画像符号化装置。
  4.  前記正変換部及び逆変換部は、加算、減算、乗算、シフト演算及び条件分岐からなる前記群にさらに所定規模の変換テーブルを加えた群より選択された有限回の演算命令によって、それぞれ前記正変換及び逆変換を行うことを特徴とする請求項1ないし3のいずれかに記載の動画像符号化装置。
  5.  前記予測され符号化されるデプスは、
     予測を適用し、予測残差を変換・量子化して符号化されるものである、または、予測を適用し、DC成分のみが符号化されるものである、ことを特徴とする請求項1ないし4のいずれかに記載の動画像符号化装置。
  6.  前記デプスに適用される予測は、デプス専用の予測である、または、テクスチャ用の予測をデプスに適用したものである、ことを特徴とする請求項1ないし5のいずれかに記載の動画像符号化装置。
  7.  前記有限回の演算命令が、デプスに対して適用されるイントラ予測モードに応じて定まっていることを特徴とする請求項1ないし6のいずれかに記載の動画像符号化装置。
  8.  多視点映像における各視点のテクスチャ及びデプスに対して予測を適用して復号する動画像復号装置であって、
     当該予測され復号されるインデクス番号をデプスに逆変換する逆変換部と、
     当該逆変換されたデプスを再構成するためにインデクス番号に変換する変換部と、を備え、
     前記逆変換部及び正変換部は、加算、減算、乗算、シフト演算及び条件分岐からなる群より選択された有限回の演算命令によって、それぞれ前記逆変換及び正変換を行うことを特徴とする動画像復号装置。
  9.  前記逆変換部及び正変換部は、加算、減算、乗算、シフト演算及び条件分岐からなる前記群にさらに所定規模の変換テーブルを加えた群より選択された有限回の演算命令によって、それぞれ前記逆変換及び正変換を行うことを特徴とする請求項8に記載の動画像復号装置。
  10.  前記予測され復号されるデプスは、
     予測を適用し、予測残差を逆量子化・逆変換して復号されるものである、または、予測を適用し、DC成分のみが復号されるものである、ことを特徴とする請求項8または9に記載の動画像復号装置。
  11.  前記デプスに適用される予測は、デプス専用の予測である、または、テクスチャ用の予測をデプスに適用したものである、ことを特徴とする請求項8ないし10のいずれかに記載の動画像復号装置。
  12.  多視点映像における各視点のテクスチャ及びデプスに対して予測を適用して符号化する動画像符号化方法であって、
     当該予測され符号化されるデプスをインデクス番号に変換する正変換段階と、
     当該予測され符号化される対象となったインデクス番号を再構成するためにデプスに逆変換する逆変換段階と、を備え、
     前記正変換段階及び逆変換段階は、加算、乗算、シフト演算及び条件分岐からなる群より選択された有限回の演算命令によって、それぞれ前記正変換及び逆変換を行うことを特徴とする動画像符号化方法。
  13.  多視点映像における各視点のテクスチャ及びデプスに対して予測を適用して復号する動画像復号方法であって、
     当該予測され復号されるインデクス番号をデプスに逆変換する逆変換段階と、
     当該逆変換されたデプスを再構成するためにインデクス番号に変換する変換段階と、を備え、
     前記逆変換段階及び正変換段階は、加算、乗算、シフト演算及び条件分岐からなる群より選択された有限回の演算命令によって、それぞれ前記逆変換及び正変換を行うことを特徴とする動画像復号方法。
PCT/JP2015/065361 2014-05-30 2015-05-28 動画像符号化装置及び動画像復号装置並びに方法 WO2015182692A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2014113198A JP2015228577A (ja) 2014-05-30 2014-05-30 動画像符号化装置及び動画像復号装置並びに方法
JP2014-113198 2014-05-30

Publications (1)

Publication Number Publication Date
WO2015182692A1 true WO2015182692A1 (ja) 2015-12-03

Family

ID=54699015

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2015/065361 WO2015182692A1 (ja) 2014-05-30 2015-05-28 動画像符号化装置及び動画像復号装置並びに方法

Country Status (2)

Country Link
JP (1) JP2015228577A (ja)
WO (1) WO2015182692A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06233131A (ja) * 1993-01-29 1994-08-19 Fuji Film Micro Device Kk ディジタル画像のガンマ補正
JPH11288241A (ja) * 1998-04-02 1999-10-19 Hitachi Ltd ガンマ補正回路
WO2014008951A1 (en) * 2012-07-13 2014-01-16 Huawei Technologies Co., Ltd. Apparatus for coding a bit stream representing a three-dimensional video

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06233131A (ja) * 1993-01-29 1994-08-19 Fuji Film Micro Device Kk ディジタル画像のガンマ補正
JPH11288241A (ja) * 1998-04-02 1999-10-19 Hitachi Ltd ガンマ補正回路
WO2014008951A1 (en) * 2012-07-13 2014-01-16 Huawei Technologies Co., Ltd. Apparatus for coding a bit stream representing a three-dimensional video

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
FABIAN JAGER ET AL.: "Model-based intra coding for depth maps in 3D video using a depth lookup table, 3DTV-Conference: The True Vision - Capture", TRANSMISSION AND DISPLAY OF 3D VIDEO (3DTV-CON, October 2012 (2012-10-01), pages 1 - 4, XP032275920 *
FABIAN JAGER: "3D-CE6.h: Simplified Depth Coding with an optional Depth Lookup Table", JOINT COLLABORATIVE TEAM ON 3D VIDEO CODING EXTENSION DEVELOPMENT OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11, JCT3V-B0036R3, 2ND MEETING, October 2012 (2012-10-01), Shanghai, CN, pages 1 - 16, XP032491674 *
HONGBIN LIU ET AL.: "CE 6.h related: Applying Depth Look-up Table to Intra Modes of Depth Map", JOINT COLLABORATIVE TEAM ON 3D VIDEO CODING EXTENSION DEVELOPMENT OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11, JCT3V-E0157_R1, 5TH MEETING, July 2013 (2013-07-01), Vienna, AT, pages 1 - 4 *
JIN HEO ET AL.: "CE5: Fast depth lookup table application method to intra modes for depth data", JOINT COLLABORATIVE TEAM ON 3D VIDEO CODING EXTENSION DEVELOPMENT OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11, JCT3V-F0159- V5, 6TH MEETING, October 2013 (2013-10-01), Geneva, CN, pages 1 - 6 *

Also Published As

Publication number Publication date
JP2015228577A (ja) 2015-12-17

Similar Documents

Publication Publication Date Title
JP4999854B2 (ja) 画像符号化方法及び復号方法、それらの装置、及びそれらのプログラム並びにプログラムを記録した記憶媒体
JP6232076B2 (ja) 映像符号化方法、映像復号方法、映像符号化装置、映像復号装置、映像符号化プログラム及び映像復号プログラム
JP5833757B2 (ja) 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、画像符号化プログラム、画像復号プログラム及び記録媒体
CN113597764B (zh) 视频解码方法、系统和存储介质
JP6154643B2 (ja) 動画像符号化装置、動画像符号化装置のデプスイントラ予測方法およびプログラム、ならびに動画像復号装置、動画像復号装置のデプスイントラ予測方法およびプログラム
JP6307152B2 (ja) 画像符号化装置及び方法、画像復号装置及び方法、及び、それらのプログラム
JP4838275B2 (ja) 距離情報符号化方法,復号方法,符号化装置,復号装置,符号化プログラム,復号プログラムおよびコンピュータ読み取り可能な記録媒体
US11805259B2 (en) Non-affine blocks predicted from affine motion
CN101690234A (zh) 视频图像编码方法及解码方法、其装置、其程序以及记录有程序的记录介质
CN104871534A (zh) 图像编码方法、图像解码方法、图像编码装置、图像解码装置、图像编码程序、图像解码程序以及记录介质
JP6232075B2 (ja) 映像符号化装置及び方法、映像復号装置及び方法、及び、それらのプログラム
KR20150135457A (ko) 복수의 입력 화상을 인코딩하는 방법, 프로그램을 격납하는 기억 매체 및 장치
JP5926451B2 (ja) 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、画像符号化プログラム、および画像復号プログラム
KR101750421B1 (ko) 동화상 부호화 방법, 동화상 복호 방법, 동화상 부호화 장치, 동화상 복호 장치, 동화상 부호화 프로그램, 및 동화상 복호 프로그램
CN112601095A (zh) 一种视频亮度和色度分数插值模型的创建方法及系统
JP5706291B2 (ja) 映像符号化方法,映像復号方法,映像符号化装置,映像復号装置およびそれらのプログラム
WO2015182692A1 (ja) 動画像符号化装置及び動画像復号装置並びに方法
CN110958452B (zh) 视频解码方法及视频解码器
US20160286212A1 (en) Video encoding apparatus and method, and video decoding apparatus and method
KR20150137081A (ko) 복수의 입력 화상을 인코딩하는 방법, 프로그램을 격납하는 기억 매체 및 장치
CN104350748A (zh) 使用低分辨率深度图的视图合成
JP6690944B2 (ja) 視差動きベクトルの導出、そのような導出を使用した3dビデオコーディングおよびデコーディング
JPWO2015141549A1 (ja) 動画像符号化装置及び方法、及び、動画像復号装置及び方法
CN113261279A (zh) 预测值的确定方法、编码器、解码器以及存储介质
CN117201796A (zh) 视频编码方法、装置、计算设备和存储介质

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15799411

Country of ref document: EP

Kind code of ref document: A1