WO2018124249A1 - 符号化装置、復号装置及びプログラム - Google Patents
符号化装置、復号装置及びプログラム Download PDFInfo
- Publication number
- WO2018124249A1 WO2018124249A1 PCT/JP2017/047137 JP2017047137W WO2018124249A1 WO 2018124249 A1 WO2018124249 A1 WO 2018124249A1 JP 2017047137 W JP2017047137 W JP 2017047137W WO 2018124249 A1 WO2018124249 A1 WO 2018124249A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- block
- encoding target
- adjacent
- motion vector
- same
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/53—Multi-resolution motion estimation; Hierarchical motion estimation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
- H04N19/139—Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/56—Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
Definitions
- the present invention relates to an encoding device, a decoding device, and a program.
- HEVC High Efficiency Video Coding
- HEVC inter prediction is configured to generate a prediction image using a motion vector. Moreover, in order to transmit a motion vector to a decoding apparatus (decoder), two types of vector prediction methods of an adaptive motion vector prediction mode and a merge mode are prepared.
- HEVC divides into coding tree units (CTU: Coding Tree Unit), which is the largest unit block that performs encoding processing of original images in units of frames constituting moving images, and performs encoding processing in raster order from the upper left. To go.
- the CTU can further perform quadtree division hierarchically into blocks called coding units (CU: Coding Units), and is divided according to the decision of the coding device (encoder).
- CU Coding Units
- the encoding device decides to perform encoding processing in units of large blocks in flat areas and to perform encoding processing in units of small blocks in areas with complex textures. To do. In this way, by performing encoding processing with a variable block size in the encoding device, it is possible to reduce the amount of information necessary for transmission of flag information and orthogonal transform coefficients necessary for each block.
- the quadtree division is hierarchically repeated. It is necessary to divide, and the amount of information increases.
- Non-Patent Document 1 in addition to the hierarchical quadtree partitioning of CUs defined by HEVC, binary tree partitioning that is performed hierarchically horizontally or vertically can be applied. It is possible to divide according to.
- the block size in the flat area A becomes larger than that of the quadtree partitioning, which is necessary for transmission of flag information, orthogonal transform coefficients, and the like.
- the amount of information can be reduced.
- a prediction image is generated by performing inter prediction according to the motion vector determined by the encoding device, and information on the applied motion vector is transmitted to the decoding device side. Is generated and decrypted.
- a prediction vector list is generated using motion vectors applied to a plurality of peripheral CUs as motion vector candidates.
- the motion vector of the encoding target CU is predicted using the motion vector.
- the amount of information to be transmitted is further reduced by transmitting only the index of the prediction vector list. It is configured.
- the prediction vector list in HEVC stores five prediction vectors in a predetermined order from among the spatial prediction vector candidates A0 / A1 / B0 / B1 / B2 and the temporal prediction vector candidates H.
- the spatial prediction vector candidates A0 / A1 / B0 / B1 / B2 are motion vectors of CUs located on the upper side and the left side of the encoding target CU, and the temporal prediction vector candidate H is the encoding target. It is a motion vector of blocks of different frames near the same coordinates of the CU.
- the index information indicating is transmitted.
- a separate skip mode is prepared in which a residual signal is set to 0 and orthogonal transform processing and quantization processing are not performed in a merge mode in which motion vectors of adjacent CUs are reused.
- the skip mode is a mode in which only the Skip flag indicating whether or not the skip mode is set and index information is transmitted.
- Non-Patent Document 1 When binary tree partitioning is applicable as in Non-Patent Document 1, it is possible to select block partitioning that is optimal for the design, and therefore, there is a low possibility that the same motion vector as that of the surrounding CU is selected. There is a case.
- FIG. 19A when block division (binary tree division) is not performed, the motion of the encoding target CU It is only necessary to transmit vector and orthogonal transform coefficient information.
- FIG. 19B when performing binary tree division in the vertical direction, it is necessary to transmit information on motion vectors and orthogonal transform coefficients of each divided CU. Since the amount increases, it is unlikely that the division shape as shown in FIG. In other words, when such a binary tree division shape is selected, the motion vectors are likely to be different between the left and right CUs.
- Non-Patent Document 1 since the prediction vector list is generated without considering the motion vector tendency in the binary tree division as described above, there is a problem in that the efficiency of motion vector prediction in the merge mode decreases. is there.
- the present invention has been made to solve the above-described problem, and by generating a prediction vector list corresponding to the division shape of the encoding target block, the motion vector prediction efficiency is improved, and the encoding is performed.
- An object is to provide an encoding device, a decoding device, and a program capable of improving efficiency.
- Another object of the present invention is to provide an encoding device, a decoding device, and a program capable of reducing the amount of flag transmission information related to the skip mode and improving the encoding efficiency.
- a first feature of the present invention is an encoding device configured to divide and encode an original image in frame units constituting a moving image into blocks, and a division shape of an encoding target block;
- a list generation unit configured to generate a list including motion vector candidates of the encoding target block based on a division shape and a motion vector of an adjacent block adjacent to the encoding target block; and
- An encoding unit configured to encode a motion vector of the encoding target block, and the list generation unit has the same width and height as the encoding target block.
- the motion vector of the same hierarchical block that is a block existing in the same block as the encoding target block before the last division is included in the list. And gist that it is configured not to pressure.
- a second feature of the present invention is an encoding device configured to divide and encode an original image in frame units constituting a moving image into blocks, and the division shape and motion of an encoding target block
- a determination unit configured to determine whether to transmit a residual signal in the encoding target block based on a vector and a division shape and a motion vector of an adjacent block adjacent to the encoding target block
- a code configured to encode a motion vector of the encoding target block based on the determination without encoding information indicating that a residual signal is not transmitted in the encoding target block.
- the determination unit has the same width and height as the block to be encoded and the encoding target before the last division
- a residual signal is not transmitted in the same hierarchical block that is a block existing in the same block as the lock, and the motion vector of the encoding target block and the motion vector of the same hierarchical block are the same
- the gist of the present invention is that it is determined to transmit a residual signal in the encoding target block.
- a third feature of the present invention is a decoding apparatus configured to divide and decode a frame-unit original image constituting a moving image into encoding target blocks, and the encoding target block division shape and A list generation unit configured to generate a list including motion vector candidates of the encoding target block based on a division shape and a motion vector of an adjacent block adjacent to the encoding target block; and the list An inter prediction unit configured to generate a prediction image based on a motion vector of the encoding target block extracted based on the encoding target block, and the list generation unit is the same as the encoding target block
- the same hierarchical block that is a block that exists in the same block as the encoding target block before the last division. It is summarized as that Tsu and click the motion vector is constructed so as not to add to the list.
- a fourth feature of the present invention is a decoding device configured to divide a frame-unit original image constituting a moving image into decoding target blocks and decode the residual image in the encoding target block.
- a decoding unit configured not to decode information indicating that a signal is not transmitted; a division shape and a motion vector of an encoding target block; and a division shape and a motion vector of an adjacent block adjacent to the encoding target block;
- a determination unit configured to determine whether or not a residual signal is transmitted in the encoding target block, and generates a decoded image of the encoding target block based on the determination
- a decoding image generator configured as described above, wherein the determination unit has the same width and height as the encoding target block and When a residual signal is not transmitted in the same hierarchical block that was present in the same block as the encoding target block before being divided into two, and the motion vector of the encoding target block and the same block
- the gist is that when the motion vector of the hierarch
- a fifth feature of the present invention is an encoding device configured to divide and encode a frame-unit original image constituting a moving image into blocks, and a division shape of an encoding target block;
- a list generation unit configured to generate a list including motion vector candidates of the encoding target block based on a division shape and a motion vector of an adjacent block adjacent to the encoding target block; and
- An encoding unit configured to encode a motion vector of the encoding target block, and the list generation unit is adjacent to the encoding target block and the encoding target block.
- a sixth feature of the present invention is an encoding device configured to divide a frame-unit original image that constitutes a moving image into blocks and encode the block, and to divide the encoding target block into shapes and motions
- a determination unit configured to determine whether to transmit a residual signal in the encoding target block based on a vector and a division shape and a motion vector of an adjacent block adjacent to the encoding target block
- a code configured to encode a motion vector of the encoding target block based on the determination without encoding information indicating that a residual signal is not transmitted in the encoding target block.
- the determining unit includes the adjacent same hierarchical block which is the same hierarchical block adjacent to the encoding target block and the encoding target block.
- the motion vector of the coding target block and the motion vector of the adjacent same layer block are the same Is configured to determine that the residual signal is transmitted in the encoding target block, and the same layer block has the same width and height as the encoding target block and is finally divided.
- the gist is that the block exists in the same block as the block to be encoded before being encoded.
- a seventh feature of the present invention is a decoding device configured to divide and decode a frame-unit original image constituting a moving image into encoding target blocks, and the encoding target block division shape and A list generation unit configured to generate a list including motion vector candidates of the encoding target block based on a division shape and a motion vector of an adjacent block adjacent to the encoding target block; and the list An inter prediction unit configured to generate a prediction image based on a motion vector of the encoding target block extracted based on the encoding target block, the list generation unit includes the encoding target block and the encoding target block When adjacent same layer blocks that are adjacent to the encoding target block can be integrated, the motion vector of the adjacent same layer block can be integrated. Are not added to the list, and the same-layer block has the same width and height as the encoding target block, and the encoding target block before the last division. The gist is that the blocks existed in the same block.
- An eighth feature of the present invention is a decoding apparatus configured to divide a frame-unit original image constituting a moving image into decoding target blocks and decode the residual image in the encoding target block.
- a decoding unit configured not to decode information indicating that a signal is not transmitted; a division shape and a motion vector of the encoding target block; and a division shape and a motion vector of an adjacent block adjacent to the encoding target block
- a determination unit configured to determine whether or not a residual signal is transmitted in the encoding target block, and generates a decoded image of the encoding target block based on the determination
- a decoding image generation unit configured to perform the determination, the determination unit adjacent to the encoding target block and the encoding target block
- the adjacent same-layer block that is the same hierarchical block can be integrated, the residual signal is not transmitted in the adjacent same-layer block, and the motion vector of the encoding target block and the adjacent same-layer block When the motion vectors are the same, it is determined to transmit
- the ninth feature of the present invention is summarized as being a program for causing a computer to function as the encoding device described in the first, second, fifth, or sixth feature.
- the gist of a tenth feature of the present invention is a program for causing a computer to function as the decoding device described in the third, fourth, seventh, or eighth feature.
- an encoding device, a decoding device, and a decoding device that can improve the prediction efficiency of a motion vector and improve the encoding efficiency by generating a prediction vector list according to the division shape of the encoding target block, and A program can be provided.
- an encoding device a decoding device, and a program that can reduce the amount of flag transmission information related to the skip mode and improve the encoding efficiency.
- FIG. 1 is a diagram illustrating an example of functional blocks of the encoding device 1 according to the first embodiment.
- FIG. 2 is a diagram illustrating an example of a method for generating a flag indicating the division shape of the CU to be encoded by the block division unit 11 in the encoding device 1 according to the first embodiment.
- FIG. 3 is a diagram illustrating an example of a prediction vector list generation method by the prediction vector list generation unit 12 of the encoding device 1 according to the first embodiment.
- FIG. 4 is a flowchart showing an example of the operation of the encoding apparatus 1 according to the first embodiment.
- FIG. 5 is a diagram illustrating an example of functional blocks of the decoding device 3 according to the first embodiment.
- FIG. 6 is a flowchart showing an example of the operation of the decoding device 3 according to the first embodiment.
- FIG. 7 is a diagram illustrating an example of a prediction vector list generation method by the prediction vector list generation unit 12 of the encoding device 1 according to the second embodiment.
- FIG. 8 is a diagram illustrating an example of functional blocks of the encoding device 1 according to the third embodiment.
- FIG. 9 is a diagram illustrating an example of functional blocks of the decoding device 3 according to the third embodiment.
- FIG. 10 is a diagram illustrating an example of a prediction vector list generation method by the prediction vector list generation unit 12 of the encoding device 1 according to the fifth embodiment.
- FIG. 11 is a diagram for explaining the first modification.
- FIG. 12 is a diagram for explaining the second modification.
- FIG. 11 is a diagram for explaining the first modification.
- FIG. 13 is a diagram for explaining the second modification.
- FIG. 14 is a diagram for explaining the third modification.
- FIG. 15 is a diagram for explaining the fourth modification.
- FIG. 16 is a diagram for explaining the fifth modification.
- FIG. 17 is a diagram for explaining the related art.
- FIG. 18 is a diagram for explaining the prior art.
- FIG. 19 is a diagram for explaining the related art.
- FIG. 20 is a diagram for explaining the same hierarchical block.
- the encoding device 1 and the decoding device 3 according to the present embodiment are configured to support inter prediction in a moving image encoding scheme such as HEVC.
- a moving image encoding scheme such as HEVC.
- the encoding device 1 and the decoding device 3 according to the present embodiment are configured to be compatible with any video encoding scheme as long as the video encoding scheme performs inter prediction.
- a case where the merge mode in HEVC is applied will be described as an example.
- motion vector refers to a value indicating a vector such as [x, y], as well as a reference.
- Information including a value indicating a vector such as a reference index indicating a previous frame is included.
- the encoding apparatus 1 is configured to divide and encode a frame-unit original image constituting a moving image into encoding target blocks.
- a case in which an original image in units of frames constituting a moving image is encoded by performing binary tree division on an encoding target CU will be described as an example.
- original units in units of frames constituting a moving image are described.
- the present invention can also be applied to a case where an image is encoded by dividing the image into CUs to be encoded by quadtree division.
- CU1 and CU2 are called the same hierarchy CU
- CU4 and CU5 are called the same hierarchy CU
- CU6 and CU7 are called the same hierarchy CU.
- the CU3 and CU4 or CU3 and CU5 are not called the same hierarchical CU because the CU adjacent to the lower side is further divided into binary trees and the block sizes are different.
- the width and height are the same, such as CU2 and CU8 or CU5 and CU7, the CUs that did not exist in the same CU before the last division are also called the same hierarchy CU. Absent.
- the encoding device 1 includes a block dividing unit 11, a prediction vector list generation unit 12, an inter prediction unit 13, an orthogonal transform / quantization unit 14, and entropy coding.
- Unit 15 inverse quantization / inverse transform unit 16, and memory 17.
- the block division unit 11 performs quadtree division or binary tree division for each encoding target CU, and sets a flag indicating the division shape of the encoding target CU, the prediction vector list generation unit 12, the inter prediction unit 13, and the entropy. It is configured to output to the encoding unit 15.
- the block division unit 11 may predefine an applicable block size and maximum number of hierarchies for quadtree division and an applicable block size and maximum number of hierarchies for binary tree division.
- the block dividing unit 11 may be configured to perform quadtree division first, and then perform binary tree division from an arbitrary hierarchy in order to reduce encoder processing.
- FIGS. 2 (a) to 2 (c) show an example of a method for generating a flag indicating the division shape of the case where the quadtree division is performed first and then the binary tree division is performed. Specifically, after the quadtree splitting shown in FIG. 2B is performed, the split tree shown in FIG. 2A can be realized by performing the binary tree splitting shown in FIG. it can.
- a flag indicating whether or not to perform binary tree partitioning is generated.
- “0” indicates that binary tree division is not performed on the corresponding CU
- “1” indicates that binary tree division is performed on the corresponding CU in the horizontal direction
- “2” "Indicates that binary tree division is performed in the vertical direction for the corresponding CU.
- Such a flag may be configured to be transmitted collectively in units of CTUs, or may be configured to be transmitted together with an orthogonal transform coefficient for each CU.
- the prediction vector list generation unit (list generation unit) 12 is based on the division shape of the encoding target CU (encoding target block) and the division shape and motion vector of the adjacent CU (adjacent block) adjacent to the encoding target CU. Thus, a prediction vector list (list) including motion vector candidates of the encoding target CU is generated.
- the prediction vector list generation unit 12 uses the division shape of the encoding target CU divided by the block division unit 11, and the division shape and motion vector of the adjacent CU stored in the memory 17, The prediction vector list of the encoding target CU is generated.
- the prediction vector list generation unit 12 generates a prediction vector list in which five prediction vectors are stored based on the motion vectors of adjacent CUs located on the left and upper sides of the encoding target CU and temporally adjacent CUs. (Specifically, refer to the H.265 standard). In other words, the merge mode enables reuse of motion vectors of adjacent CUs.
- the CUs whose flags are “0” in the same division hierarchy are the same CU ( The same hierarchical block).
- 2C corresponds to the CU1 / CU2 in FIG. 2A
- the CU to which the flag f3 / f4 is attached in FIG. 2 corresponds to CU3 / CU4 in FIG. 2A
- the CU to which the flag f5 / f6 is attached in FIG. 2C corresponds to CU5 / CU6 in FIG.
- the amount of generated flag information is reduced by performing encoding processing with a block size as large as possible in an area having uniform characteristics.
- FIGS. 2 (a) to 2 (c) As shown in FIGS. 2 (a) to 2 (c), as the number of division layers increases, the amount of generated information of flags indicating division shapes increases. That is, when two CUs generated by performing binary tree division are not further divided, it is highly possible that the features such as the amount of motion of these two CUs are different.
- the prediction vector list generation unit 12 has the same width and height as the encoding target CU, and is the same CU that exists in the same CU as the encoding target CU before the last division. It is configured not to add the motion vector of the hierarchical block to the prediction vector list.
- the prediction vector list generation unit 12 is a CU obtained by dividing the encoding target CU into binary trees, and adjacent CUs located on the upper side or the left side of the encoding target CU are the same. In the case of a hierarchical CU, the motion vector of the adjacent CU is not added to the prediction vector list.
- the prediction vector list generation unit 12 predicts the motion vector MV A1 of CU # A1.
- the motion vectors MV B1 and MV B2 of other adjacent CU # B1 and CU # B2 are not added to the vector list, but are added to the prediction vector list.
- An example of the method for generating the prediction vector list described above is an example in which the present invention is applied based on the method for generating a prediction vector list in HEVC.
- the present invention is also applicable to a method for generating a prediction vector list by order.
- the inter prediction unit 13 is configured to acquire a decoded frame from the memory 17 and generate a prediction image by acquiring a region indicated by the motion vector determined by the encoding device 1.
- the orthogonal transform / quantization unit 14 performs orthogonal transform processing and quantization processing on the difference between the predicted image generated by the inter prediction unit 13 and the original image so as to obtain a quantized orthogonal transform coefficient. It is configured.
- the entropy encoding unit (encoding unit) 15 is configured to perform entropy encoding processing on the quantized orthogonal transform coefficient and the motion vector of the encoding target CU.
- the entropy encoding unit 15 is configured to encode the motion vector of the encoding target block based on the prediction vector list generated by the prediction vector list generation unit.
- the entropy encoding unit 15 includes the motion vector of the encoding target CU when the merge mode is applied, and is included in the prediction vector list generated by the prediction vector list generation unit 12.
- the index in the prediction vector list is configured to be encoded.
- the inverse quantization unit / inverse orthogonal transform unit 16 performs the inverse quantization process and the inverse orthogonal transform process again on the quantized transform coefficient generated by the orthogonal transform / quantization unit 14 to generate a residual signal. Configured to generate.
- the memory 17 is configured to hold the decoded image of the encoding target CU so that it can be used as a reference image.
- the decoded image is configured to be generated by adding the prediction image generated by the inter prediction unit 13 to the residual signal generated by the inverse quantization unit / inverse orthogonal transformation unit 16. Yes.
- the memory 17 is configured to hold the division shape and motion vector of the adjacent CU adjacent to the encoding target CU.
- FIG. 4 shows a flowchart for explaining an example of the operation of the encoding apparatus 1 according to the present embodiment.
- step S101 the encoding device 1 performs quadtree division or binary tree division for each encoding target CU, and generates a flag indicating the division shape of the encoding target block.
- step S102 the encoding device 1 performs prediction including a motion vector candidate of the encoding target CU based on the division shape of the encoding target CU and the division shape and motion vector of the adjacent CU adjacent to the encoding target CU. Generate a vector list.
- step S103 the encoding device 1 is configured to generate a prediction image of the encoding target CU.
- step S104 the encoding apparatus 1 generates a quantized orthogonal transform coefficient by performing orthogonal transform processing and quantization processing on the difference between the predicted image of the encoding target CU and the original image.
- step S105 the encoding apparatus 1 performs entropy encoding processing on the quantized orthogonal transform coefficient and the motion vector of the encoding target CU.
- the decoding device 3 is configured to divide and decode a frame-unit original image constituting a moving image into CUs.
- the decoding device 3 includes an entropy decoding unit 31, a prediction vector list generation unit 32, an inter prediction unit 33, an inverse quantization / inverse conversion unit 34, and a decoded image generation.
- a unit 35, a memory 36, and a vector decoding unit 37 are provided.
- the entropy decoding unit 31 performs entropy decoding processing on the stream output from the encoding device 1 so as to decode quantized orthogonal transform coefficients and the like from the stream output from the encoding device 1. It is configured.
- the prediction vector list generation unit 32 is based on the CU of the encoding target block, and the division shape and motion vector of the adjacent CU adjacent to the encoding target CU.
- the prediction vector list of the encoding target CU is generated.
- the prediction vector list generation unit 32 is configured not to add the motion vector of the same hierarchy CU of the encoding target CU to the prediction vector list. .
- the vector decoding unit 37 is configured to decode the motion vector of the encoding target CU based on the prediction vector list generated by the prediction vector list generation unit 32.
- the inter prediction unit 33 is configured to generate a predicted image based on the motion vector of the CU to be encoded output by the vector decoding unit 37 and the reference image held in the memory 36.
- the inter prediction unit 33 is configured to generate a prediction image based on the motion vector of the encoding target CU extracted based on the prediction vector list. Specifically, when the inter prediction unit 33 includes an index in the prediction vector list as information indicating the motion vector of the CU to be encoded in the stream output from the encoding device 1, the prediction vector list The predicted image is generated using the motion vector corresponding to the index.
- the inverse quantization / inverse transform unit 34 performs an inverse quantization process and an inverse transform process (for example, an inverse orthogonal transform process) on the quantized transform coefficient output from the entropy decoding unit 31 to obtain a residual. It is configured to generate a signal.
- an inverse transform process for example, an inverse orthogonal transform process
- the decoded image generation unit 35 is configured to generate a decoded image by adding the prediction image generated by the inter prediction unit 33 and the residual signal generated by the inverse quantization / inverse transformation unit 34.
- the memory 36 is configured to hold the decoded image generated by the decoded image generation unit 35 so that it can be used as a reference image for inter prediction.
- FIG. 6 shows a flowchart for explaining an example of the operation of the decoding device 3 according to the present embodiment.
- step S201 the decoding device 3 performs an entropy decoding process on the stream output from the encoding device 1, thereby quantizing the stream output from the encoding device 1.
- the orthogonal transform coefficients and the like are decoded.
- step S202 the decoding device 3 generates a prediction vector list of the encoding target CU based on the CU of the encoding target block and the division shape and motion vector of the adjacent CU adjacent to the encoding target CU.
- step S203 the decoding device 3 decodes the motion vector of the encoding target CU based on the prediction vector list, and generates a prediction image based on the motion vector of the encoding target CU and the retained reference image.
- step S204 the decoding device 3 generates a residual signal by performing an inverse quantization process and an inverse transform process (for example, an inverse orthogonal transform process) on the quantized transform coefficient.
- an inverse transform process for example, an inverse orthogonal transform process
- step S205 the decoding device 3 generates a decoded image by adding the predicted image and the residual signal.
- the motion vector prediction efficiency is improved and the encoding efficiency is improved. Can be made.
- the encoding apparatus 1 and the decoding apparatus 3 according to the second embodiment of the present invention are different from the above-described encoding apparatus 1 and the decoding apparatus 3 according to the first embodiment. This will be explained with a focus on.
- the prediction vector list generation unit 12 does not add a motion vector of an adjacent CU that is not the same hierarchical CU of the encoding target CU to the prediction vector list of the encoding target CU.
- the motion vector is the same as the motion vector determined to be, the motion vector of the adjacent CU that is not the same hierarchical CU is not added to the prediction vector list of the encoding target CU.
- the prediction vector list generation unit 12 is configured not to add the motion vector of the same layer CU of the encoding target CU to the prediction vector list.
- the motion vector is added to the prediction vector list. It is configured.
- the prediction vector list generation unit 12 stores the motion vector of the same layer CU of the encoding target CU as a prediction vector list addition prohibition vector and stores other codes.
- the motion vector of an adjacent CU that is not the same layer CU of the CU to be activated is the same as the prediction vector list addition prohibition vector, the motion vector is not added to the prediction vector list.
- the prediction vector list generation unit 12 stores the motion vector MV A1 of the CU # A that is the same hierarchical CU of the CU # T that is the encoding target CU as the prediction vector list addition prohibition vector. It is configured.
- the prediction vector list generation unit 12 then adds the motion vector MVB 1 of CU # B1 that is not the same hierarchical CU of the encoding target CU located above the encoding target CU (CU # T) to the predicted vector list addition prohibition vector (motion Since it is the same as the vector MV A1 ), the motion vector MV B1 is not added to the prediction vector list.
- the prediction vector list generation unit 12 determines that the motion vector MVB 2 of the CU # B2 that is not the same hierarchy CU of the encoding target CU located above the encoding target CU (CU # T) is the predicted vector list addition prohibition vector (motion Since it is not the same as the vector MV A1 ), the motion vector MV B2 is configured to be added to the prediction vector list.
- the prediction vector list generation unit 32 is similar to the prediction vector list generation unit 12 even if it is a motion vector of an adjacent CU that is not the same hierarchical CU of the encoding target CU.
- the motion vector is determined not to be added to the prediction vector list of the encoding target CU, it is configured not to add the motion vector of the adjacent CU that is not the same hierarchical CU to the prediction vector list of the encoding target CU. Has been.
- the encoding device 1 and the decoding device 3 according to the third embodiment of the present invention are the same as the encoding device 1 and the decoding device 3 according to the above-described first embodiment. The difference will be described below.
- the encoding device 1 includes a skip mode determination unit 112 instead of the prediction vector list generation unit 12.
- the decoding device 3 includes a skip mode determination unit 132 instead of the prediction vector list generation unit 32.
- the skip mode determination unit (determination unit) 112 transmits the division shape and motion vector of the encoding target CU, the division shape and motion vector of the adjacent CU adjacent to the encoding target CU, and the residual signal in the encoding target CU. Whether or not to transmit a residual signal in the encoding target CU is determined based on a flag (information) indicating whether or not (that is, whether or not to apply the skip mode).
- the skip mode determination unit 112 includes a division shape and motion vector of the encoding target CU, and a flag on whether or not to transmit the division shape, motion vector, and residual signal of the adjacent CU adjacent to the encoding target CU. Based on the above, it is configured to determine whether to apply the skip mode in the encoding target CU.
- the skip mode determination unit 112 performs the motion of the encoding target CU when the residual signal is not transmitted in the same layer CU of the encoding target CU (that is, when the skip mode is applied). When the vector and the motion vector of the same layer CU are the same, it is determined that the residual signal is transmitted in the encoding target CU (that is, the skip mode is not applied).
- the skip mode is a mode in which only a flag indicating whether or not to apply the skip mode and an index indicating what number of the prediction vector list is applied by replacing the residual signal with 0 and not transmitting it. It is.
- the skip signal is applied to one of the CUs to generate the residual signal.
- the information amount of the orthogonal transform coefficient can be reduced by transmitting the residual signal for the other CU (not applying the skip mode) without transmitting as 0.
- the motion vector applied to the encoding target CU is the same as the motion vector applied to the reference-destination same-layer CU.
- the possibility that the skip mode is applied to the encoding target CU is low.
- the skip mode determination unit 112 is a case where the same layer CU referred to generate the prediction vector list of the encoding target CU does not transmit a residual signal.
- the motion vector of the encoding target CU and the motion vector of the same layer CU are the same, it is configured to prohibit application of the skip mode (transmission of residual signal in the encoding target CU) in the encoding target CU. ing.
- the orthogonal transform / quantization unit 14 is configured not to perform orthogonal transform processing and quantization processing on the residual signal for the CU to be encoded. Yes.
- the entropy encoding unit 15 applies the motion vector and the skip mode of the encoding target CU without encoding the quantized orthogonal transform coefficient for the encoding target CU. It is configured to encode a flag indicating that the operation has been performed.
- the entropy encoding unit 15 determines whether the skip mode is applied (the residual signal is transmitted in the encoding target CU). It is configured not to encode a flag indicating whether or not it has been set.
- the skip mode determination unit 132 similarly to the skip mode determination unit 112, divides the division shape and motion vector of the encoding target CU and adjacent CUs adjacent to the encoding target CU. Based on the shape and the motion vector, it is configured to determine whether or not a residual signal is transmitted in the encoding target CU.
- the skip mode determination unit 132 applies the skip mode in the encoding target CU based on the division shape and motion vector of the encoding target CU and the division shape and motion vector of the adjacent CU adjacent to the encoding target CU. It is configured to determine whether or not it has been done.
- the skip mode determination unit 132 when the residual signal is not transmitted in the same layer CU of the encoding target CU (that is, when the skip mode is applied) ) And the motion vector of the encoding target CU and the motion vector of the same layer CU are the same, a residual signal is transmitted in the encoding target CU (that is, the skip mode is not applied). ).
- the entropy decoding unit 31 determines whether or not the skip mode is applied when the skip mode determination unit 132 prohibits the skip mode for the encoding target CU (encoding). It is configured not to decode a flag (information) indicating whether or not a residual signal is transmitted in the target CU.
- the inverse quantization / inverse transform unit 34 performs inverse quantization processing and inverse transformation processing (for example, for quantized orthogonal transform coefficients) on the encoding target CU. , Inverse orthogonal transform processing) is not performed.
- the decoded image generation unit 35 is configured to generate a decoded image using a prediction image generated by the inter prediction unit 33 without using a residual signal.
- the encoding device 1 and the decoding device 3 it is possible to reduce the transmission information amount of the flag related to the skip mode and improve the encoding efficiency.
- the prediction vector list generation unit 12 performs encoding when the residual signal is not transmitted in the same hierarchical CU of the encoding target CU (when skip mode is applied) and When the residual signal is not transmitted even in the target CU (when the skip mode is applied), the motion vector of the same layer CU is not added to the prediction vector list.
- the prediction vector list generation unit 12 is configured not to add the motion vector of the same layer CU of the encoding target CU to the prediction vector list.
- the encoding apparatus 1 is configured not to be added to the prediction vector list only when the skip mode is applied to both the same-layer CU and the encoding target CU as reference destinations.
- the prediction vector list generation unit 12 of the encoding device 1 functions as described above.
- the prediction vector list generation unit 32 does not transmit a residual signal in the same layer CU of the encoding target CU (the skip mode is set).
- the prediction vector list generation unit 32 does not transmit a residual signal in the same layer CU of the encoding target CU (the skip mode is set).
- the motion vector of the same layer CU is not added to the prediction vector list. It is configured.
- the prediction vector list generation unit 12 determines that the width of the adjacent CU located on the upper side or the left side of the encoding target CU is larger than twice the width of the encoding target CU. The motion vector of the same layer CU of the encoding target CU is not added to the prediction vector list.
- the prediction vector list generation unit 12 adds the motion vector at the position a / b / c / d / e to the prediction vector list of the encoding target CU # T as a motion vector candidate. Configured to add.
- the prediction vector list generation unit 12 uses the motion vector at the position a / g / c / f / e as the motion vector candidate, and the prediction vector list of the encoding target CU # T1.
- the motion vector at the position h / b / i / d / g is added to the prediction vector list of the encoding target CU # T2 as a motion vector candidate.
- the motion vector of CU # T1 is used as the motion vector in the prediction vector list.
- the index indicating the motion vector at the position of g is selected, and the motion at the position of h in the CU # T1 in which the index indicating the motion vector at the position of g is selected in the prediction vector list as the motion vector of the CU # T2.
- the inter prediction system is improved by selecting an index indicating a vector.
- the prediction vector list generation unit 12 is configured to add the motion vector (motion vector at the position of h) of the same layer CU # T1 of the encoding target CU # T2 to the prediction vector list. It is better to be.
- the prediction vector list generation unit 12 has the width of the adjacent CU located above the encoding target CU # T2 larger than twice the width of the encoding target CU # T2. In this case, that is, when the motion vector at the position of g / f located above the encoding target CU # T1 / CU # T2 is the same as the motion vector at the position of b, the same hierarchy of the encoding target CU The motion vector of CU # T1 is configured not to be added to the prediction vector list.
- the height of the adjacent CU located on the left side of the encoding target CU is larger than twice the height of the encoding target CU. Is configured not to add the motion vector of the same layer CU of the encoding target CU to the prediction vector list.
- the prediction vector list generation unit 12 uses the motion vector of the same layer CU as a prediction vector. It may be configured not to be added to the list.
- the prediction vector list generation unit 12 determines that the width of the adjacent CU located on the upper side or the left side of the encoding target CU is not greater than twice the width of the encoding target CU. Even when the motion vectors of a plurality of adjacent CUs located above the encoding target CU # T2 and the same layer CU # T1 (that is, motion vectors located at g / f / b) are the same. The motion vector of the same layer CU # 1 may not be added to the prediction vector list.
- the prediction vector list generation unit 32 is similar to the prediction vector list generation unit 12 in that the width of the adjacent CU located on the upper side or the left side of the encoding target CU is the encoding target. When it is larger than twice the width of the CU, the motion vector of the same layer CU of the encoding target CU is not added to the prediction vector list.
- the prediction vector list generation unit 32 like the prediction vector list generation unit 12, has a plurality of adjacent CUs positioned on the upper side or the left side of the encoding target CU and the same hierarchy CU.
- the motion vectors are the same, the motion vector of the same hierarchical level CU may not be added to the prediction vector list.
- CU # T1 / CU # A1 / CU # A2 / CU # A3 is obtained by quadtree division.
- CU # A1 / CU # A2 / CU # A3 has the same width and height as the encoding target CU # T, and exists in the same CU before the last division. Therefore, it is the same hierarchical CU of the encoding target CU # T.
- the prediction vector list generation unit 12 and the prediction vector list generation unit 32 are subjected to quadtree division, if all the same hierarchy CUs are the same motion vector, the motion vector Is not added to the prediction vector list of the encoding target CU.
- Modification 2 Modification 2
- the encoding apparatus 1 and the decoding apparatus 3 according to Modification 2 of the present invention are different from the encoding apparatus 1 and the decoding apparatus 3 according to the first embodiment described above. The explanation will be made by focusing on this point.
- CU # 1 / CU # 2 / CU # 3 / CU # 4 is obtained by quadtree division.
- the motion vector of CU # 1 is MV 1
- the motion vector of CU # 2 is MV 2
- the motion vector of CU # 3 is MV 3
- the motion vector of CU # 4 is Assume that it is MV 4 .
- the binary tree division can be applied in addition to the quadtree division. That is, in this modified example, as shown in FIG. 12B, CU # 1 and CU # 2 can be integrated, or as shown in FIG. 13B, CU # 1 and CU # 3 are It can be integrated.
- CU # 2 and CU # 3 are the same hierarchical blocks adjacent to CU # 1 (that is, the adjacent hierarchical blocks adjacent to CU # 1), and CU # 1 and CU # 4 are adjacent to CU # 2.
- CU # 1 and CU # 4 are the same hierarchical blocks adjacent to CU # 3 (that is, the adjacent hierarchical blocks adjacent to CU # 3).
- CU # 2 and CU # 3 are the same hierarchical block adjacent to CU # 4 (that is, the adjacent same hierarchical block of CU # 4).
- CU # 4 is the same hierarchical block that is not adjacent to CU # 1 (that is, the non-adjacent same hierarchical block of CU # 1)
- CU # 3 is the same hierarchical block that is not adjacent to CU # 2 (that is, CU # 1).
- CU # 2 is a non-adjacent same-layer block adjacent to CU # 3 (that is, a non-adjacent same-layer block of CU # 3)
- CU # 1 is CU # 4 Is a non-adjacent hierarchical block (that is, a CU # 4 non-adjacent identical hierarchical block).
- the prediction vector list generation unit 12 and the prediction vector list generation unit 32 are configured not to add the motion vector MV1 of CU # 1 to the prediction vector list of CU # 2.
- FIG. 13A when the motion vector MV1 of CU # 1 and the motion vector MV3 of CU # 3 are the same, as shown in FIG. CU # 3 is configured to be integrated.
- the prediction vector list generation unit 12 and the prediction vector list generation unit 32 are configured not to add the motion vector MV1 of CU # 1 to the prediction vector list of CU # 3.
- CU # T and CU # 3 are configured to be integrated when the difference signal is not transmitted (that is, when skip mode is applied) and CU # T and CU # 3 can be integrated. ing.
- the prediction vector list generation unit 12 and the prediction vector list generation unit 32 do not transmit a residual signal in the encoding target block CU # T (that is, the skip mode is set).
- CU # T and CU # 3 when a residual signal is not transmitted in CU # 3 that is an adjacent same-layer block of CU # T (that is, when skip mode is applied). but because they are not integrated despite be integrated, the motion vector MV 3 motion vectors and CU # 3 of CU # T is not considered to be identical. Therefore, in such a case, the prediction vector list generation unit 12 and the prediction vector list generation unit 32 are configured not to add the motion vector MV3 of CU # 3 to the prediction vector list of CU # T.
- CU # T and CU # 2 are configured to be integrated when the CU # T and CU # 2 can be integrated when the CU # T and CU # 2 can be integrated. .
- the prediction vector list generation unit 12 and the prediction vector list generation unit 32 do not transmit a residual signal in the encoding target block CU # T (that is, skip mode is set).
- CU # T and CU # 2 when a residual signal is not transmitted in CU # 2 that is an adjacent same-layer block of CU # T (that is, when skip mode is applied). but because they are not integrated despite be integrated, CU # motion vector and CU # 2 of the motion vector MV 2 of T is considered not identical. Therefore, in such a case, the prediction vector list generation unit 12 and the prediction vector list generation unit 32 are configured not to add the motion vector MV2 of CU # 2 to the prediction vector list of CU # T.
- Modification 4 (Modification 4)
- FIG. 15 With respect to the encoding device 1 and the decoding device 3 according to Modification 4 of the present invention, attention is paid to differences from the encoding device 1 and the decoding device 3 according to the first embodiment described above. To explain.
- the prediction vector list generation unit 12 and the prediction vector list generation unit 32 are when the residual signal is not transmitted in the CU # T that is the encoding target block (that is, when the skip mode is applied), When a residual signal is not transmitted in CU # 1 that is an adjacent same-layer block of CU # T (that is, when skip mode is applied), the residual signal remains in CU # 2 that is a non-adjacent same-layer block of CU # T.
- the skip mode determination unit 112 and the skip mode determination unit 132 as shown in FIG. 16 (a), CU # T that is the encoding target block and CU # that is an adjacent same layer block of CU # T. 3 can be integrated, a residual signal is not transmitted in CU # 3 (ie, a skip mode is applied), and a motion vector of CU # T and a motion vector of CU # 3 MV 3 Are the same, the CU # T is configured to determine that the residual signal is transmitted (that is, the skip mode is not applied).
- the skip mode determination unit 112 and the skip mode determination unit 132 have the CU # T that is a block adjacent to the encoding target block CU # T and the CU # T adjacent to the CU # T.
- the CU # T is configured to determine that the residual signal is transmitted (that is, the skip mode is not applied).
- a program that causes a computer to execute each process performed by the above-described encoding device 1 and decoding device 3 may be provided.
- Such a program may be recorded on a computer-readable medium. If a computer readable medium is used, such a program can be installed in the computer.
- the computer-readable medium on which such a program is recorded may be a non-transitory recording medium.
- the non-transitory recording medium is not particularly limited, but may be a recording medium such as a CD-ROM or a DVD-ROM.
- a chip configured by a memory that stores a program for realizing at least a part of the functions in the encoding device 1 and the decoding device 3 and a processor that executes the program stored in the memory is provided. Good.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
動画像を構成するフレーム単位の原画像をブロックに分割して符号化するように構成されている符号化装置は、符号化対象ブロックの分割形状と、前記符号化対象ブロックに隣接する隣接ブロックの分割形状及び動きベクトルとに基づいて、前記符号化対象ブロックの動きベクトル候補を含むリストを生成するように構成されているリスト生成部と、前記リストに基づいて、前記符号化対象ブロックの動きベクトルを符号化するように構成されている符号化部とを具備する。前記リスト生成部は、前記符号化対象ブロック及び前記符号化対象ブロックに隣接する同階層ブロックである隣接同階層ブロックが統合可能である場合、前記隣接同階層ブロックの動きベクトルを前記リストに追加しないように構成されている。前記同階層ブロックは、前記符号化対象ブロックと同一の幅及び高さを有しており且つ最後に分割される前に前記符号化対象ブロックと同一のブロック内に存在していたブロックである。
Description
本発明は、符号化装置、復号装置及びプログラムに関する。
H.265/HEVC(High Efficiency Video Coding)に代表される動画像(映像)符号化方式では、フレーム間の時間的相関を利用したインター予測及びフレーム内の空間的相関を利用したイントラ予測の2種類の予測を切り替えながら予測を行って残差信号を生成した後、直交変換処理やループフィルタ処理やエントロピー符号化処理を行い得られたストリームを出力するように構成されている。
HEVCのインター予測では、動きベクトルを用いて予測画像を生成するよう構成されている。また、復号装置(デコーダ)に対して動きベクトルを伝送するため、適応動きベクトル予測モード及びマージモードの2種類のベクトル予測手法が用意されている。
HEVCでは、動画像を構成するフレーム単位の原画像の符号化処理を行う最も大きい単位のブロックである符号化ツリーユニット(CTU:Coding Tree Unit)に分割し、左上からラスター順に符号化処理を行っていく。CTUは、さらに符号化ユニット(CU:Coding Unit)というブロックに階層的に四分木分割を行うことが可能であり、符号化装置(エンコーダ)の決定に従って分割される。
符号化装置は、例えば、符号化対象ブロックの絵柄に応じて、平坦な領域では大きいブロック単位で符号化処理を行い、複雑なテクスチャを持つ領域では小さいブロック単位で符号化処理を行うように決定する。このように、符号化装置において可変なブロックサイズで符号化処理を行うことで、ブロックごとに必要なフラグ情報や直交変換係数の伝送等に必要な情報量を低減することが可能である。
しかしながら、平坦な領域の中のごく一部にテクスチャ領域が存在する場合に絵柄に適応的にブロック分割を行う場合には、四分木分割を繰り返し行う必要があるが、かかるブロック分割を行うことでブロック分割を行う必要のない平坦な領域についてもブロック分割を行うこととなり、フラグ情報の伝送に必要な情報量が増加し、符号化効率が低減してしまう問題点があった。
例えば、図17(a)に示すように、ブロックの内部に一部テクスチャXが存在する場合でも、四分木分割を階層的に繰り返すため、ブロック内部右側の平坦な領域Aについても四分木分割を行う必要があり、情報量が増大する。
かかる問題点を解決するため、非特許文献1では、HEVCで規定されているCUの階層的な四分木分割に加えて水平若しくは垂直に階層的に行う二分木分割を適用可能とし、より絵柄に適応した分割を可能としている。
例えば、図17(b)に示すように、二分木分割を適用することで、四分木分割に比べ平坦な領域Aにおけるブロックサイズが大きくなり、フラグ情報や直交変換係数等の伝送に必要な情報量の低減を可能としている。
ところで、インター予測では、符号化装置によって決定された動きベクトルに従ってインター予測を行い予測画像を生成し、適用した動きベクトルの情報を復号装置側に伝送することで、復号装置側で同様の予測画像を生成し復号を行う。
HEVCでは、マージモードが適用されている場合、動きベクトルの伝送に必要な情報量を低減するため、周辺の複数のCUに適用した動きベクトルを動きベクトル候補として予測ベクトルリストを生成し、リスト内の動きベクトルを用いて符号化対象CUの動きベクトルの予測を行うように構成されている。
HEVCにおけるマージモードでは、符号化対象CUの動きベクトルが予測ベクトルリスト内の動きベクトルと同一であった場合には、予測ベクトルリストのインデックスのみを伝送することでより伝送する情報量を低減させるように構成されている。
HEVCにおける予測ベクトルリストは、図18に示すように、空間予測ベクトル候補A0/A1/B0/B1/B2及び時間予測ベクトル候補Hの中から予め規定された順に5つの予測ベクトルを格納する。
図18に示すように、空間予測ベクトル候補A0/A1/B0/B1/B2は、符号化対象CUの上側や左側に位置するCUの動きベクトルであり、時間予測ベクトル候補Hは、符号化対象CUの同一座標付近の異なるフレームのブロックの動きベクトルである。
マージモードにおいては、予測ベクトルリスト内に符号化対象CUに適用する動きベクトルが含まれているか否かを示すフラグ情報、及び、含まれている場合には予測ベクトルリストの何番目の予測ベクトルかを示すインデックス情報を伝送する。
また、HEVCでは、隣接するCUの動きベクトルを再利用するマージモードにおいて、残差信号を0として直交変換処理や量子化処理を行わないスキップモードが別に用意されている。スキップモードは、スキップモードか否かを示すSkipフラグ及びインデックス情報のみを伝送するのみのモードである。
J.An、Y-W Chen、K.Zhang、H.Huang、Y-W Huang、S.Lei、「Block partitioning structure for next generation video coding」、MPEG doc.m37524及びITU-T SG16 Doc. COM16-C966、2015年10月
非特許文献1のように、二分木分割を適用可能とする場合には、絵柄に最適なブロック分割を選択することができるため、周辺のCUと同一の動きベクトルが選択される可能性が低い場合がある。
例えば、符号化対象CUの領域全体が一様に動いている場合においては、図19(a)に示すように、ブロック分割(二分木分割)を行わない場合には、符号化対象CUの動きベクトル及び直交変換係数の情報を伝送するだけでよい。これに対して、図19(b)に示すように、垂直方向に二分木分割を行う場合には、分割された各CUの動きベクトル及び直交変換係数の情報を伝送する必要があり伝送する情報量は増大してしまうため、図19(b)のような分割形状が符号化装置側で選択される可能性は低い。言いかえると、このような二分木分割の形状が選択される場合には、左右のCUで動きベクトルが異なる可能性が高い。
しかしながら、非特許文献1では、上述のような二分木分割における動きベクトルの傾向を考慮せずに予測ベクトルリストを生成しているため、マージモードによる動きベクトル予測の効率が低下するという問題点がある。
そこで、本発明は、上述した課題を解決するためになされたものであり、符号化対象ブロックの分割形状に応じた予測ベクトルリストを生成することにより、動きベクトルの予測効率を向上させ、符号化効率を向上させることができる符号化装置、復号装置及びプログラムを提供することを目的とする。
また、本発明は、スキップモードに係るフラグの伝送情報量を低減させ、符号化効率を向上させることができる符号化装置、復号装置及びプログラムを提供することを目的とする。
本発明の第1の特徴は、動画像を構成するフレーム単位の原画像をブロックに分割して符号化するように構成されている符号化装置であって、符号化対象ブロックの分割形状と、前記符号化対象ブロックに隣接する隣接ブロックの分割形状及び動きベクトルとに基づいて、前記符号化対象ブロックの動きベクトル候補を含むリストを生成するように構成されているリスト生成部と、前記リストに基づいて、前記符号化対象ブロックの動きベクトルを符号化するように構成されている符号化部とを具備しており、前記リスト生成部は、前記符号化対象ブロックと同一の幅及び高さを有しており且つ最後に分割される前に前記符号化対象ブロックと同一のブロック内に存在していたブロックである同階層ブロックの動きベクトルを前記リストに追加しないように構成されていることを要旨とする。
本発明の第2の特徴は、動画像を構成するフレーム単位の原画像をブロックに分割して符号化するように構成されている符号化装置であって、符号化対象ブロックの分割形状及び動きベクトルと、前記符号化対象ブロックに隣接する隣接ブロックの分割形状及び動きベクトルとに基づいて、前記符号化対象ブロックにおいて残差信号を伝送するか否かについて決定するように構成されている決定部と、前記決定に基づいて、前記符号化対象ブロックにおいて残差信号を伝送しないことを示す情報を符号化することなく、前記符号化対象ブロックの動きベクトルを符号化するように構成されている符号化部とを具備しており、前記決定部は、前記符号化対象ブロックと同一の幅及び高さを有しており且つ最後に分割される前に前記符号化対象ブロックと同一のブロック内に存在していたブロックである同階層ブロックにおいて残差信号が伝送されない場合で、且つ、前記符号化対象ブロックの動きベクトル及び前記同階層ブロックの動きベクトルが同一である場合には、前記符号化対象ブロックにおいて残差信号を伝送すると決定するように構成されていることを要旨とする。
本発明の第3の特徴は、動画像を構成するフレーム単位の原画像を符号化対象ブロックに分割して復号するように構成されている復号装置であって、符号化対象ブロックの分割形状と、前記符号化対象ブロックに隣接する隣接ブロックの分割形状及び動きベクトルとに基づいて、前記符号化対象ブロックの動きベクトル候補を含むリストを生成するように構成されているリスト生成部と、前記リストに基づいて抽出した前記符号化対象ブロックの動きベクトルに基づいて予測画像を生成するように構成されているインター予測部とを具備しており、前記リスト生成部は、前記符号化対象ブロックと同一の幅及び高さを有しており且つ最後に分割される前に前記符号化対象ブロックと同一のブロック内に存在していたブロックである同階層ブロックの動きベクトルを前記リストに追加しないように構成されていることを要旨とする。
本発明の第4の特徴は、動画像を構成するフレーム単位の原画像を符号化対象ブロックに分割して復号するように構成されている復号装置であって、前記符号化対象ブロックにおいて残差信号を伝送しないことを示す情報を復号しないように構成されている復号部と、符号化対象ブロックの分割形状及び動きベクトルと、前記符号化対象ブロックに隣接する隣接ブロックの分割形状及び動きベクトルとに基づいて、前記符号化対象ブロックにおいて残差信号が伝送されているか否かについて決定するように構成されている決定部と、前記決定に基づいて、前記符号化対象ブロックの復号画像を生成するように構成されている復号画像生成部とを具備しており、前記決定部は、前記符号化対象ブロックと同一の幅及び高さを有しており且つ最後に分割される前に前記符号化対象ブロックと同一のブロック内に存在していたブロックである同階層ブロックにおいて残差信号が伝送されない場合で、且つ、前記符号化対象ブロックの動きベクトル及び前記同階層ブロックの動きベクトルが同一である場合には、前記符号化対象ブロックにおいて残差信号が伝送されていると決定するように構成されていることを要旨とする。
本発明の第5の特徴は、動画像を構成するフレーム単位の原画像をブロックに分割して符号化するように構成されている符号化装置であって、符号化対象ブロックの分割形状と、前記符号化対象ブロックに隣接する隣接ブロックの分割形状及び動きベクトルとに基づいて、前記符号化対象ブロックの動きベクトル候補を含むリストを生成するように構成されているリスト生成部と、前記リストに基づいて、前記符号化対象ブロックの動きベクトルを符号化するように構成されている符号化部とを具備しており、前記リスト生成部は、前記符号化対象ブロック及び前記符号化対象ブロックに隣接する同階層ブロックである隣接同階層ブロックが統合可能である場合、前記隣接同階層ブロックの動きベクトルを前記リストに追加しないように構成されており、前記同階層ブロックは、前記符号化対象ブロックと同一の幅及び高さを有しており且つ最後に分割される前に前記符号化対象ブロックと同一のブロック内に存在していたブロックであることを要旨とする。
本発明の第6の特徴は、動画像を構成するフレーム単位の原画像をブロックに分割して符号化するように構成されている符号化装置であって、符号化対象ブロックの分割形状及び動きベクトルと、前記符号化対象ブロックに隣接する隣接ブロックの分割形状及び動きベクトルとに基づいて、前記符号化対象ブロックにおいて残差信号を伝送するか否かについて決定するように構成されている決定部と、前記決定に基づいて、前記符号化対象ブロックにおいて残差信号を伝送しないことを示す情報を符号化することなく、前記符号化対象ブロックの動きベクトルを符号化するように構成されている符号化部とを具備しており、前記決定部は、前記符号化対象ブロック及び前記符号化対象ブロックに隣接する同階層ブロックである隣接同階層ブロックが統合可能である場合で、前記隣接同階層ブロックにおいて残差信号が伝送されない場合で、且つ、前記符号化対象ブロックの動きベクトル及び前記隣接同階層ブロックの動きベクトルが同一である場合には、前記符号化対象ブロックにおいて残差信号を伝送すると決定するように構成されており、前記同階層ブロックは、前記符号化対象ブロックと同一の幅及び高さを有しており且つ最後に分割される前に前記符号化対象ブロックと同一のブロック内に存在していたブロックであることを要旨とする。
本発明の第7の特徴は、動画像を構成するフレーム単位の原画像を符号化対象ブロックに分割して復号するように構成されている復号装置であって、符号化対象ブロックの分割形状と、前記符号化対象ブロックに隣接する隣接ブロックの分割形状及び動きベクトルとに基づいて、前記符号化対象ブロックの動きベクトル候補を含むリストを生成するように構成されているリスト生成部と、前記リストに基づいて抽出した前記符号化対象ブロックの動きベクトルに基づいて予測画像を生成するように構成されているインター予測部とを具備しており、前記リスト生成部は、前記符号化対象ブロック及び前記符号化対象ブロックに隣接する同階層ブロックである隣接同階層ブロックが統合可能である場合、前記隣接同階層ブロックの動きベクトルを前記リストに追加しないように構成されており、前記同階層ブロックは、前記符号化対象ブロックと同一の幅及び高さを有しており且つ最後に分割される前に前記符号化対象ブロックと同一のブロック内に存在していたブロックであることを要旨とする。
本発明の第8の特徴は、動画像を構成するフレーム単位の原画像を符号化対象ブロックに分割して復号するように構成されている復号装置であって、前記符号化対象ブロックにおいて残差信号を伝送しないことを示す情報を復号しないように構成されている復号部と、前記符号化対象ブロックの分割形状及び動きベクトルと、前記符号化対象ブロックに隣接する隣接ブロックの分割形状及び動きベクトルとに基づいて、前記符号化対象ブロックにおいて残差信号が伝送されているか否かについて決定するように構成されている決定部と、前記決定に基づいて、前記符号化対象ブロックの復号画像を生成するように構成されている復号画像生成部とを具備しており、前記決定部は、前記符号化対象ブロック及び前記符号化対象ブロックに隣接する同階層ブロックである隣接同階層ブロックが統合可能である場合で、前記隣接同階層ブロックにおいて残差信号が伝送されない場合で、且つ、前記符号化対象ブロックの動きベクトル及び前記隣接同階層ブロックの動きベクトルが同一である場合には、前記符号化対象ブロックにおいて残差信号を伝送すると決定するように構成されており、前記同階層ブロックは、前記符号化対象ブロックと同一の幅及び高さを有しており且つ最後に分割される前に前記符号化対象ブロックと同一のブロック内に存在していたブロックであることを要旨とする。
本発明の第9の特徴は、コンピュータを、上述の第1、第2、第5又は第6の特徴に記載の符号化装置として機能させるためのプログラムであることを要旨とする。
本発明の第10の特徴は、コンピュータを、上述の第3、第4、第7又は第8の特徴に記載の復号装置として機能させるためのプログラムであることを要旨とする。
本発明によれば、符号化対象ブロックの分割形状に応じた予測ベクトルリストを生成することにより、動きベクトルの予測効率を向上させ、符号化効率を向上させることができる符号化装置、復号装置及びプログラムを提供することができる。
また、本発明によれば、スキップモードに係るフラグの伝送情報量を低減させ、符号化効率を向上させることができる符号化装置、復号装置及びプログラムを提供することができる。
(第1の実施形態)
以下、図1~図6を参照して、本発明の第1の実施形態に係る符号化装置1及び復号装置3について説明する。
以下、図1~図6を参照して、本発明の第1の実施形態に係る符号化装置1及び復号装置3について説明する。
ここで、本実施形態に係る符号化装置1及び復号装置3は、HEVC等の動画像符号化方式におけるインター予測に対応するように構成されている。なお、本実施形態に係る符号化装置1及び復号装置3は、インター予測を行う動画像符号化方式であれば、任意の動画像符号化方式に対応することができるように構成されている。また、本実施形態に係る符号化装置1及び復号装置3では、HEVCにおけるマージモードが適用されているケースを例に挙げて説明する。
なお、本明細書、特許請求の範囲、図面及び要約書では、特段の断りがない場合には、「動きベクトル」という表現は、[x,y]というようなベクトルを示す値の他、参照先のフレームを示す参照インデックス等の、ベクトルを示す値に付随する情報を含むものとする。
本実施形態に係る符号化装置1は、動画像を構成するフレーム単位の原画像を符号化対象ブロックに分割して符号化するように構成されている。以下、本実施形態では、動画像を構成するフレーム単位の原画像を符号化対象CUに二分木分割して符号化するケースを例に挙げて説明するが、動画像を構成するフレーム単位の原画像を符号化対象CUに四分木分割して符号化するケースにも適用可能である。
以下説明の簡略化のため、図19(b)のように二分木分割を行ったことにより生成された同一の幅及び高さを有している2つのブロック(最後に分割される前に同一のブロック内に存在した2つのブロック)を同階層ブロックであると呼ぶこととする。
図20において、CU1及びCU2を同階層CUと呼び、CU4及びCU5を同階層CUと呼び、CU6及びCU7を同階層CUと呼ぶ。また、CU3においては、下側に隣接するCUがさらに二分木分割されておりブロックサイズが異なるため、CU3及びCU4或いはCU3及びCU5を同階層CUとは呼ばない。また、CU2及びCU8或いはCU5及びCU7のように、幅や高さが同一であったとしても、最後に分割する前に同一のCU内に存在しなかったCU同士についても同階層CUとは呼ばない。
図1に示すように、本実施形態に係る符号化装置1は、ブロック分割部11と、予測ベクトルリスト生成部12と、インター予測部13と、直交変換・量子化部14と、エントロピー符号化部15と、逆量子化・逆変換部16と、メモリ17とを具備している。
ブロック分割部11は、符号化対象CUごとに、四分木分割や二分木分割を行い、符号化対象CUの分割形状を示すフラグを、予測ベクトルリスト生成部12やインター予測部13及やエントロピー符号化部15に出力するように構成されている。
ブロック分割部11は、かかる分割の一例として、四分木分割の適用可能ブロックサイズや最大階層数、及び、二分木分割の適用可能ブロックサイズや最大階層数を予め規定してもよい。
また、ブロック分割部11は、エンコーダ処理軽減のため、最初に四分木分割を行い、その後、任意の階層から二分木分割を行うように構成されていてもよい。
図2(a)~図2(c)に、最初に四分木分割を行った後、二分木分割を行うケースの分割形状を示すフラグの生成方法の一例について示す。具体的には、図2(b)に示す四分木分割を行った後、図2(c)に示す二分木分割を行うことで、図2(a)に示す分割形状を実現することができる。
例えば、図2(b)に示すように、四分木分割を行うか否かについて示すフラグにおいて、「0」は、該当するCUに対して四分木分割を行わないことを示し、「1」は、該当するCUに対して四分木分割を行うことを示す。
また、図2(c)に示すように、四分木分割を行わないCUについては、さらに二分木分割を行うか否かについて示すフラグを生成する。かかるフラグにおいて、「0」は、該当するCUに対して二分木分割を行わないことを示し、「1」は、該当するCUに対して水平方向に二分木分割を行うことを示し、「2」は、該当するCUに対して垂直方向に二分木分割を行うことを示す。
なお、かかるフラグは、CTU単位で纏めて伝送されるように構成されていてもよいし、CUごとに直交変換係数と共に伝送されるように構成されていてもよい。
予測ベクトルリスト生成部(リスト生成部)12は、符号化対象CU(符号化対象ブロック)の分割形状と、符号化対象CUに隣接する隣接CU(隣接ブロック)の分割形状及び動きベクトルとに基づいて、符号化対象CUの動きベクトル候補を含む予測ベクトルリスト(リスト)を生成するように構成されている。
具体的には、予測ベクトルリスト生成部12は、ブロック分割部11により分割された符号化対象CUの分割形状と、メモリ17に保存されている隣接CUの分割形状及び動きベクトルとを用いて、符号化対象CUの予測ベクトルリストを生成するように構成されている。
HEVCでは、予測ベクトルリスト生成部12は、符号化対象CUの左側及び上側に位置する隣接CUや時間的に隣接するCUの動きベクトルに基づいて、5つの予測ベクトルが格納される予測ベクトルリストを生成するよう構成されている(具体的には、H.265規格書を参考)。すなわち、マージモードは、隣接CUの動きベクトルの再利用を可能としている。
ここで、図2(c)において四角A~Cで囲まれている二分木分割が行われたCUブロックのうち、同一の分割階層で共にフラグが「0」であるCUは、同階層CU(同階層ブロック)である。なお、図2(c)においてフラグf1/f2が付されているCUは、図2(a)におけるCU1/CU2に対応し、図2(c)においてフラグf3/f4が付されているCUは、図2(a)におけるCU3/CU4に対応し、図2(c)においてフラグf5/f6が付されているCUは、図2(a)におけるCU5/CU6に対応する。
上述のように、一様な特徴をもつ領域においては可能な限り大きいブロックサイズで符号化処理を行うことで、フラグの発生情報量が低減する。また、図2(a)~図2(c)に示すように、分割階層が増えれば増えるほど分割形状を示すフラグの発生情報量は増大する。すなわち、二分木分割を行うことにより生成される2つのCUが共にそれ以上分割されない場合、これらの2つのCUが有している動き量等の特徴は異なる可能性が高い。
予測ベクトルリスト生成部12は、符号化対象CUと同一の幅及び高さを有しており且つ最後に分割される前に符号化対象CUと同一のCU内に存在していたCUである同階層ブロックの動きベクトルを予測ベクトルリストに追加しないように構成されている。
すなわち、本実施形態に係る符号化装置1において、予測ベクトルリスト生成部12は、符号化対象CUが二分木分割されたCUであり且つ符号化対象CUの上側や左側に位置する隣接CUが同階層CUである場合には、かかる隣接CUの動きベクトルを予測ベクトルリストに加えないように構成されている。
例えば、図3におけるCU#Tを符号化対象CUとすると、左側に隣接するCU#A1は同階層CUであるため、予測ベクトルリスト生成部12は、CU#A1の動きベクトルMVA1については予測ベクトルリストに追加せず、他の隣接するCU#B1及びCU#B2の動きベクトルMVB1及びMVB2については予測ベクトルリストに追加するように構成されている。
なお、上述の予測ベクトルリストの生成方法の一例は、HEVCでの予測ベクトルリストの生成方法に基づいて、本発明を適用した一例であり、本発明は、予め規定する別の位置の動きベクトルや順序による予測ベクトルリストの生成方法にも適用可能である。
インター予測部13は、復号済みのフレームをメモリ17より取得し、符号化装置1によって決定された動きベクトルが示す領域を取得することで予測画像を生成するように構成されている。
直交変換・量子化部14は、インター予測部13により生成された予測画像と原画像との差分に対して、直交変換処理及び量子化処理を施し、量子化された直交変換係数を得るように構成されている。
エントロピー符号化部(符号化部)15は、量子化された直交変換係数及び符号化対象CUの動きベクトルに対してエントロピー符号化処理を施すように構成されている。
ここで、エントロピー符号化部15は、予測ベクトルリスト生成部で生成された予測ベクトルリストに基づいて、符号化対象ブロックの動きベクトルを符号化するように構成されている。
具体的には、エントロピー符号化部15は、マージモードが適用されている場合で、且つ、符号化対象CUの動きベクトルが予測ベクトルリスト生成部12によって生成された予測ベクトルリストに含まれている場合には、かかる予測ベクトルリスト内のインデックスを符号化するように構成されている。
逆量子化部・逆直交変換部16は、直交変換・量子化部14によって生成された量子化された変換係数に対して、再び逆量子化処理及び逆直交変換処理を施して残差信号を生成するように構成されている。
メモリ17は、符号化対象CUの復号画像を参照画像として利用可能に保持するように構成されている。ここで、かかる復号画像は、逆量子化部・逆直交変換部16によって生成された残差信号に対してインター予測部13によって生成された予測画像を加えることで生成されるように構成されている。
また、メモリ17は、符号化対象CUに隣接する隣接CUの分割形状及び動きベクトルを保持するように構成されている。
図4に、本実施形態に係る符号化装置1の動作の一例について説明するためのフローチャートについて示す。
図4に示すように、ステップS101において、符号化装置1は、符号化対象CUごとに、四分木分割や二分木分割を行い、符号化対象ブロックの分割形状を示すフラグを生成する。
ステップS102において、符号化装置1は、符号化対象CUの分割形状と、符号化対象CUに隣接する隣接CUの分割形状及び動きベクトルとに基づいて、符号化対象CUの動きベクトル候補を含む予測ベクトルリストを生成する。
ステップS103において、符号化装置1は、符号化対象CUの予測画像を生成するように構成されている。
ステップS104において、符号化装置1は、符号化対象CUの予測画像と原画像との差分に対して直交変換処理及び量子化処理を施すことによって、量子化された直交変換係数を生成する。
ステップS105において、符号化装置1は、量子化された直交変換係数及び符号化対象CUの動きベクトルに対してエントロピー符号化処理を施す。
また、本実施形態に係る復号装置3は、動画像を構成するフレーム単位の原画像をCUに分割して復号するように構成されている。
図5に示すように、本実施形態に係る復号装置3は、エントロピー復号部31と、予測ベクトルリスト生成部32と、インター予測部33と、逆量子化・逆変換部34と、復号画像生成部35と、メモリ36と、ベクトル復号部37とを具備している。
エントロピー復号部31は、符号化装置1から出力されたストリームに対してエントロピー復号処理を施すことによって、符号化装置1から出力されたストリームから、量子化された直交変換係数等を復号するように構成されている。
予測ベクトルリスト生成部32は、符号化装置1の予測ベクトルリスト生成部12と同様に、符号化対象ブロックのCUと、符号化対象CUに隣接する隣接CUの分割形状及び動きベクトルとに基づいて、符号化対象CUの予測ベクトルリストを生成するように構成されている。
ここで、予測ベクトルリスト生成部32は、符号化装置1の予測ベクトルリスト生成部12と同様に、符号化対象CUの同階層CUの動きベクトルを予測ベクトルリストに追加しないように構成されている。
ベクトル復号部37は、予測ベクトルリスト生成部32によって生成された予測ベクトルリストに基づいて、符号化対象CUの動きベクトルを復号するように構成されている。
インター予測部33は、ベクトル復号部37によって出力された符号化対象CUの動きベクトル及びメモリ36に保持されている参照画像に基づいて予測画像を生成するように構成されている。
ここで、インター予測部33は、予測ベクトルリストに基づいて抽出した符号化対象CUの動きベクトルに基づいて予測画像を生成するように構成されている。具体的には、インター予測部33は、符号化装置1から出力されたストリーム内に符号化対象CUの動きベクトルを示す情報として予測ベクトルリスト内のインデックスが含まれている場合、かかる予測ベクトルリスト内のインデックスに対応する動きベクトルを用いて予測画像を生成するように構成されている。
逆量子化・逆変換部34は、エントロピー復号部31によって出力された量子化された変換係数に対して逆量子化処理及び逆変換処理(例えば、逆直交変換処理)を施すことによって、残差信号を生成するように構成されている。
復号画像生成部35は、インター予測部33によって生成された予測画像と逆量子化・逆変換部34によって生成された残差信号とを加えることで復号画像を生成するように構成されている。
メモリ36は、復号画像生成部35によって生成された復号画像を、インター予測のための参照画像として利用可能に保持するように構成されている。
図6に、本実施形態に係る復号装置3の動作の一例について説明するためのフローチャートについて示す。
図6に示すように、ステップS201において、復号装置3は、符号化装置1から出力されたストリームに対してエントロピー復号処理を施すことによって、符号化装置1から出力されたストリームから、量子化された直交変換係数等を復号する。
ステップS202において、復号装置3は、符号化対象ブロックのCUと、符号化対象CUに隣接する隣接CUの分割形状及び動きベクトルとに基づいて、符号化対象CUの予測ベクトルリストを生成する。
ステップS203において、復号装置3は、予測ベクトルリストに基づいて符号化対象CUの動きベクトルを復号し、かかる符号化対象CUの動きベクトル及び保持されている参照画像に基づいて予測画像を生成する。
ステップS204において、復号装置3は、量子化された変換係数に対して逆量子化処理及び逆変換処理(例えば、逆直交変換処理)を施すことによって、残差信号を生成する。
ステップS205において、復号装置3は、予測画像と残差信号とを加えることで復号画像を生成する。
本実施形態に係る符号化装置1及び復号装置3によれば、符号化対象CUの分割形状に応じた予測ベクトルリストを生成することにより、動きベクトルの予測効率を向上させ、符号化効率を向上させることができる。
(第2の実施形態)
以下、図7を参照して、本発明の第2の実施形態に係る符号化装置1及び復号装置3について、上述の第1の実施形態に係る符号化装置1及び復号装置3との相違点に着目して説明する。
以下、図7を参照して、本発明の第2の実施形態に係る符号化装置1及び復号装置3について、上述の第1の実施形態に係る符号化装置1及び復号装置3との相違点に着目して説明する。
本実施形態に係る符号化装置1では、予測ベクトルリスト生成部12は、符号化対象CUの同階層CUではない隣接CUの動きベクトルであっても、符号化対象CUの予測ベクトルリストに追加しないと判断された動きベクトルと同一である場合、かかる同階層CUではない隣接CUの動きベクトルを、符号化対象CUの予測ベクトルリストに追加しないように構成されている。
すなわち、第1実施形態の符号化装置1では、予測ベクトルリスト生成部12は、符号化対象CUの同階層CUの動きベクトルを予測ベクトルリストに追加しないように構成されているが、図7のように、符号化対象CUの同階層CUではない隣接CUの動きベクトル及び符号化対象CUの同階層CUの動きベクトルが同一である場合には、かかる動きベクトルを予測ベクトルリストに追加するように構成されている。
これに対して、本実施形態の符号化装置1では、予測ベクトルリスト生成部12は、符号化対象CUの同階層CUの動きベクトルを予測ベクトルリスト追加禁止ベクトルとして保存しておき、他の符号化対象CUの同階層CUではない隣接CUの動きベクトルが予測ベクトルリスト追加禁止ベクトルと同一である場合には、かかる動きベクトルを予測ベクトルリストに追加しないように構成されている。
例えば、図7の例では、予測ベクトルリスト生成部12は、符号化対象CUであるCU#Tの同階層CUであるCU#Aの動きベクトルMVA1を予測ベクトルリスト追加禁止ベクトルとして保存するように構成されている。
そして、予測ベクトルリスト生成部12は、符号化対象CU(CU#T)の上側に位置する符号化対象CUの同階層CUでないCU#B1の動きベクトルMVB1が予測ベクトルリスト追加禁止ベクトル(動きベクトルMVA1)と同一であることから、動きベクトルMVB1を予測ベクトルリストに追加しないように構成されている。
一方、予測ベクトルリスト生成部12は、符号化対象CU(CU#T)の上側に位置する符号化対象CUの同階層CUでないCU#B2の動きベクトルMVB2が予測ベクトルリスト追加禁止ベクトル(動きベクトルMVA1)と同一ではないことから、動きベクトルMVB2を予測ベクトルリストに追加するように構成されている。
また、本実施形態に係る復号装置3では、予測ベクトルリスト生成部32は、予測ベクトルリスト生成部12と同様に、符号化対象CUの同階層CUではない隣接CUの動きベクトルであっても、符号化対象CUの予測ベクトルリストに追加しないと判断された動きベクトルと同一である場合、かかる同階層CUではない隣接CUの動きベクトルを、符号化対象CUの予測ベクトルリストに追加しないように構成されている。
(第3の実施形態)
以下、図8及び図9を参照して、本発明の第3の実施形態に係る符号化装置1及び復号装置3について、上述の第1の実施形態に係る符号化装置1及び復号装置3との相違点に着目して説明する。
以下、図8及び図9を参照して、本発明の第3の実施形態に係る符号化装置1及び復号装置3について、上述の第1の実施形態に係る符号化装置1及び復号装置3との相違点に着目して説明する。
図8に示すように、本実施形態に係る符号化装置1は、予測ベクトルリスト生成部12の代わりに、スキップモード決定部112を具備している。同様に、図9に示すように、本実施形態に係る復号装置3は、予測ベクトルリスト生成部32の代わりに、スキップモード決定部132を具備している。
スキップモード決定部(決定部)112は、符号化対象CUの分割形状及び動きベクトルと、符号化対象CUに隣接する隣接CUの分割形状及び動きベクトル及び符号化対象CUにおいて残差信号を伝送するか否か(すなわち、スキップモードを適用するか否か)について示すフラグ(情報)とに基づいて、符号化対象CUにおいて残差信号を伝送するか否かについて決定するように構成されている。
すなわち、スキップモード決定部112は、符号化対象CUの分割形状及び動きベクトルと、符号化対象CUに隣接する隣接CUの分割形状及び動きベクトル及び残差信号を伝送するか否かについてのフラグとに基づいて、符号化対象CUにおいてスキップモードを適用する否かについて決定するように構成されている。
具体的には、スキップモード決定部112は、符号化対象CUの同階層CUにおいて残差信号が伝送されない場合(すなわち、スキップモードが適用されている場合)で、且つ、符号化対象CUの動きベクトル及び同階層CUの動きベクトルが同一である場合には、符号化対象CUにおいて残差信号を伝送する(すなわち、スキップモードを適用しない)と決定するように構成されている。
ここで、スキップモードは、残差信号を0に置きかえて伝送しないことにより、スキップモードを適用するか否かを示すフラグ及び予測ベクトルリストの何番目を適用したかを示すインデックスのみを伝送するモードである。
図19(b)に示すように、二分木分割された左右のCUが、同一の動きベクトル情報を持つ場合、上述のように、各CUの動きベクトルを伝送するための伝送情報量が増加してしまう。
しかしながら、左右のCUのうち、一方のCUについては残差信号が極めて少なく、他方のCUについては残差信号が生じる場合には、一方のCUに対してスキップモードを適用して残差信号を0として伝送せず、他方のCUについては残差信号を伝送すること(スキップモードを適用しないこと)により、直交変換係数の情報量が低減できる可能性が高い。
一方、残差信号のエネルギーがCU全体において極めて小さい場合には、図19(a)に示すように、二分木分割を行わない方が動きベクトルの伝送に必要な情報量が低減できる。
すなわち、図19(a)に示すように、二分木分割が行われたCUにおいて、符号化対象CUに適用される動きベクトルが、参照先の同階層CUに適用される動きベクトルと同一である場合で、且つ、参照先の同階層CUにスキップモードが適用される場合には、符号化対象CUにスキップモードが適用される可能性は低い。
したがって、本実施形態に係る符号化装置1では、スキップモード決定部112は、符号化対象CUの予測ベクトルリスト生成のために参照する同階層CUが残差信号を伝送しない場合であって、かかる符号化対象CUの動きベクトルと同階層CUの動きベクトルが同一である場合には、符号化対象CUにおいてスキップモードの適用(符号化対象CUにおける残差信号の伝送)を禁止するように構成されている。
なお、直交変換・量子化部14は、スキップモードが適用される場合には、かかる符号化対象CUに対しては、残差信号に対する直交変換処理及び量子化処理を施さないように構成されている。
また、エントロピー符号化部15は、スキップモードが適用される場合には、符号化対象CUについての量子化された直交変換係数を符号化することなく符号化対象CUの動きベクトル及びスキップモードが適用されていることを示すフラグを符号化するように構成されている。
また、エントロピー符号化部15は、スキップモード決定部12において符号化対象CUに対するスキップモードが禁止された場合には、スキップモードが適用されているか否か(符号化対象CUにおいて残差信号が伝送されているか否か)について示すフラグを符号化しないように構成されている。
また、本実施形態に係る復号装置では、スキップモード決定部132は、スキップモード決定部112と同様に、符号化対象CUの分割形状及び動きベクトルと、符号化対象CUに隣接する隣接CUの分割形状及び動きベクトルとに基づいて、符号化対象CUにおいて残差信号が伝送されているか否かについて決定するように構成されている。
すなわち、スキップモード決定部132は、符号化対象CUの分割形状及び動きベクトルと、符号化対象CUに隣接する隣接CUの分割形状及び動きベクトルとに基づいて、符号化対象CUにおいてスキップモードが適用されているか否かについて決定するように構成されている。
具体的には、スキップモード決定部132は、スキップモード決定部112と同様に、符号化対象CUの同階層CUにおいて残差信号が伝送されていない場合(すなわち、スキップモードが適用されている場合)で、且つ、符号化対象CUの動きベクトル及び同階層CUの動きベクトルが同一である場合には、符号化対象CUにおいて残差信号が伝送されている(すなわち、スキップモードが適用されていない)と決定するように構成されている。
なお、エントロピー復号部31は、エントロピー符号化部15と同様に、スキップモード決定部132において符号化対象CUに対するスキップモードが禁止された場合には、スキップモードが適用されているか否か(符号化対象CUにおいて残差信号が伝送されているか否か)について示すフラグ(情報)を復号しないよう構成されている。
なお、逆量子化・逆変換部34は、スキップモードが適用される場合には、かかる符号化対象CUに対しては、量子化された直交変換係数に対する逆量子化処理及び逆変換処理(例えば、逆直交変換処理)を施さないように構成されている。
また、復号画像生成部35は、スキップモードが適用される場合には、残差信号を用いることなくインター予測部33によって生成された予測画像を用いて復号画像を生成するように構成されている。
本実施形態に係る符号化装置1及び復号装置3によれば、スキップモードに係るフラグの伝送情報量を低減させ、符号化効率を向上させることができる。
(第4の実施形態)
以下、本発明の第4の実施形態に係る符号化装置1及び復号装置3について、上述の第1の実施形態に係る符号化装置1及び復号装置3との相違点に着目して説明する。
以下、本発明の第4の実施形態に係る符号化装置1及び復号装置3について、上述の第1の実施形態に係る符号化装置1及び復号装置3との相違点に着目して説明する。
本実施形態に係る符号化装置1では、予測ベクトルリスト生成部12は、符号化対象CUの同階層CUにおいて残差信号が伝送されない場合(スキップモードが適用される場合)で、且つ、符号化対象CUにおいても残差信号が伝送されない場合(スキップモードが適用される場合)には、かかる同階層CUの動きベクトルを予測ベクトルリストに追加しないように構成されている。
第1実施形態に係る符号化装置1では、予測ベクトルリスト生成部12は、符号化対象CUの同階層CUの動きベクトルを予測ベクトルリストに追加しないように構成されている。
一方、本実施形態に係る符号化装置1では、参照先の同階層CU及び符号化対象CUにおいて共にスキップモードが適用される場合のみ、予測ベクトルリストに追加しないように構成されている。
ここで、参照先の同階層CUにおいてスキップモードが適用される場合であって、符号化対象CUにおいてもスキップモードが適用される場合には、参照先の同階層CUの動きベクトルが符号化対象CUに適用される可能性は低い。したがって、本実施形態に係る符号化装置1の予測ベクトルリスト生成部12は、上述のように機能する。
また、本実施形態に係る復号装置3では、予測ベクトルリスト生成部32は、予測ベクトルリスト生成部12と同様に、符号化対象CUの同階層CUにおいて残差信号が伝送されない場合(スキップモードが適用される場合)で、且つ、符号化対象CUにおいても残差信号が伝送されない場合(スキップモードが適用される場合)には、かかる同階層CUの動きベクトルを予測ベクトルリストに追加しないように構成されている。
(第5の実施形態)
以下、図10を参照して、本発明の第5の実施形態に係る符号化装置1及び復号装置3について、上述の第1の実施形態に係る符号化装置1及び復号装置3との相違点に着目して説明する。
以下、図10を参照して、本発明の第5の実施形態に係る符号化装置1及び復号装置3について、上述の第1の実施形態に係る符号化装置1及び復号装置3との相違点に着目して説明する。
本実施形態に係る符号化装置1では、予測ベクトルリスト生成部12は、符号化対象CUの上側又は左側に位置する隣接CUの幅が符号化対象CUの幅の2倍よりも大きい場合には、符号化対象CUの同階層CUの動きベクトルを予測ベクトルリストに追加しないように構成されている。
例えば、図10(a)に示すケースでは、予測ベクトルリスト生成部12は、動きベクトル候補として、a/b/c/d/eの位置の動きベクトルを符号対象CU#Tの予測ベクトルリストに追加するように構成されている。
一方、図10(b)に示すケースでは、予測ベクトルリスト生成部12は、動きベクトル候補として、a/g/c/f/eの位置の動きベクトルを符号化対象CU#T1の予測ベクトルリストに追加し、動きベクトル候補として、h/b/i/d/gの位置の動きベクトルを符号化対象CU#T2の予測ベクトルリストに追加するように構成されている。
かかる場合、仮に、CU#T(CU#T1及びCT#T2)の真の動きベクトルが、gの位置の動きベクトルであった場合には、CU#T1の動きベクトルとして、予測ベクトルリスト内で、gの位置の動きベクトルを示すインデックスを選択し、CU#T2の動きベクトルとして、予測ベクトルリスト内で、gの位置の動きベクトルを示すインデックスを選択したCU#T1内のhの位置の動きベクトルを示すインデックスを選択する方が、インター予測制度が向上する可能性がある。
すなわち、かかる場合には、予測ベクトルリスト生成部12は、符号化対象CU#T2の同階層CU#T1の動きベクトル(hの位置の動きベクトル)を予測ベクトルリストに追加するように構成されている方がよい。
ただし、このような可能性があるのは、垂直方向に分割された場合には、符号化対象CU#T1/CU#T2の上側に位置するg/fの位置の動きベクトルがbの位置の動きベクトルと異なる場合に限られる。
したがって、予測ベクトルリスト生成部12は、垂直方向に分割された場合には、符号化対象CU#T2の上側に位置する隣接CUの幅が符号化対象CU#T2の幅の2倍よりも大きい場合には、すなわち、符号化対象CU#T1/CU#T2の上側に位置するg/fの位置の動きベクトルがbの位置の動きベクトルと同一である場合に、符号化対象CUの同階層CU#T1の動きベクトルを予測ベクトルリストに追加しないように構成されている。
同様に、予測ベクトルリスト生成部12は、水平方向に分割された場合には、符号化対象CUの左側に位置する隣接CUの高さが符号化対象CUの高さの2倍よりも大きい場合には、符号化対象CUの同階層CUの動きベクトルを予測ベクトルリストに追加しないように構成されている。
なお、予測ベクトルリスト生成部12は、符号化対象CU及び同階層CUの上側又は左側に位置する複数の隣接CUの動きベクトルが同一である場合には、かかる同階層CUの動きベクトルを予測ベクトルリストに追加しないように構成されていてもよい。
例えば、図10(b)に示すように、予測ベクトルリスト生成部12は、符号化対象CUの上側又は左側に位置する隣接CUの幅が符号化対象CUの幅の2倍よりも大きくない場合であっても、符号化対象CU#T2及び同階層CU#T1の上側に位置する複数の隣接CUの動きベクトル(すなわち、g/f/bに位置する動きベクトル)が同一である場合には、かかる同階層CU#1の動きベクトルを予測ベクトルリストに追加しないように構成されていてもよい。
同様に、本実施形態に係る復号装置3では、予測ベクトルリスト生成部32は、予測ベクトルリスト生成部12と同様に、符号化対象CUの上側又は左側に位置する隣接CUの幅が符号化対象CUの幅の2倍よりも大きい場合には、符号化対象CUの同階層CUの動きベクトルを予測ベクトルリストに追加しないように構成されている。
また、本実施形態に係る復号装置3では、予測ベクトルリスト生成部32は、予測ベクトルリスト生成部12と同様に、符号化対象CU及び同階層CUの上側又は左側に位置する複数の隣接CUの動きベクトルが同一である場合には、かかる同階層CUの動きベクトルを予測ベクトルリストに追加しないように構成されていてもよい。
(変更例1)
以下、図11を参照して、本発明の変更例1に係る符号化装置1及び復号装置3について、上述の第1の実施形態に係る符号化装置1及び復号装置3との相違点に着目して説明する。
以下、図11を参照して、本発明の変更例1に係る符号化装置1及び復号装置3について、上述の第1の実施形態に係る符号化装置1及び復号装置3との相違点に着目して説明する。
図11に示す例では、四分木分割によってCU#T1/CU#A1/CU#A2/CU#A3が得られているものとする。かかる例では、CU#A1/CU#A2/CU#A3は、符号化対象CU#Tと同じ幅及び高さを有しており且つ最後に分割される前に同一のCU内に存在していたため、符号化対象CU#Tの同階層CUである。
なお、かかる例では、CU#A1の動きベクトルMVA1、CU#A2の動きベクトルMVA2及びCU#A3の動きベクトルMVA3が同一であるため、符号化対象CU#Tにおいて、これらと同じ動きベクトルを取る可能性は低い。
したがって、予測ベクトルリスト生成部12及び予測ベクトルリスト生成部32は、四分木分割が施されている場合であっても、全ての同階層CUが同じ動きベクトルである場合には、かかる動きベクトルを符号化対象CUの予測ベクトルリストに追加しないように構成されている。
(変更例2)
以下、図12及び図13を参照して、本発明の変更例2に係る符号化装置1及び復号装置3について、上述の第1の実施形態に係る符号化装置1及び復号装置3との相違点に着目して説明する。
以下、図12及び図13を参照して、本発明の変更例2に係る符号化装置1及び復号装置3について、上述の第1の実施形態に係る符号化装置1及び復号装置3との相違点に着目して説明する。
図12(a)及び図13(a)に示すように、本変更例では、四分木分割によってCU#1/CU#2/CU#3/CU#4が得られているものとする。ここで、CU#1の動きベクトルは、MV1であり、CU#2の動きベクトルは、MV2であり、CU#3の動きベクトルは、MV3であり、CU#4の動きベクトルは、MV4であるものとする。
本変更例では、図12(b)及び図13(b)に示すように、四分木分割に加えて二分木分割を適用することができるように構成されている。すなわち、本変更例では、図12(b)に示すように、CU#1及びCU#2が統合可能である、或いは、図13(b)に示すように、CU#1及びCU#3が統合可能である。
ここで、CU#2及びCU#3は、CU#1に隣接する同階層ブロック(すなわち、CU#1の隣接同階層ブロック)であり、CU#1及びCU#4は、CU#2に隣接する同階層ブロック(すなわち、CU#2の隣接同階層ブロック)であり、CU#1及びCU#4は、CU#3に隣接する同階層ブロック(すなわち、CU#3の隣接同階層ブロック)であり、CU#2及びCU#3は、CU#4に隣接する同階層ブロック(すなわち、CU#4の隣接同階層ブロック)である。
一方、CU#4は、CU#1に隣接しない同階層ブロック(すなわち、CU#1の非隣接同階層ブロック)であり、CU#3は、CU#2に隣接しない同階層ブロック(すなわち、CU#2の非隣接同階層ブロック)であり、CU#2は、CU#3に隣接しない同階層ブロック(すなわち、CU#3の非隣接同階層ブロック)であり、CU#1は、CU#4に隣接しない同階層ブロック(すなわち、CU#4の非隣接同階層ブロック)である。
本変更例2において、図12(a)に示すように、CU#1の動きベクトルMV1及びCU#2の動きベクトルMV2が同一である場合、図12(b)に示すように、CU#1及びCU#2が統合されるように構成されている。
したがって、符号化対象ブロックをCU#2とすると、CU#2及びCU#2に隣接する同階層ブロック(すなわち、CU#2の隣接同階層ブロック)であるCU#1が統合可能である場合にも関わらず統合されていないため、CU#1の動きベクトルMV1及びCU#2の動きベクトルMV2が同一ではないと考えられる。そのため、かかる場合には、予測ベクトルリスト生成部12及び予測ベクトルリスト生成部32は、CU#1の動きベクトルMV1をCU#2の予測ベクトルリストに追加しないように構成されている。
同様に、図13(a)に示すように、CU#1の動きベクトルMV1及びCU#3の動きベクトルMV3が同一である場合、図13(b)に示すように、CU#1及びCU#3が統合されるように構成されている。
したがって、符号化対象ブロックをCU#3とすると、CU#3及びCU#3に隣接する同階層ブロック(すなわち、CU#3の隣接同階層ブロック)であるCU#1が統合可能である場合にも関わらず統合されていないため、CU#1の動きベクトルMV1及びCU#3の動きベクトルMV3が同一ではないと考えられる。そのため、かかる場合には、予測ベクトルリスト生成部12及び予測ベクトルリスト生成部32は、CU#1の動きベクトルMV1をCU#3の予測ベクトルリストに追加しないように構成されている。
(変更例3)
以下、図14を参照して、本発明の変更例3に係る符号化装置1及び復号装置3について、上述の第1の実施形態に係る符号化装置1及び復号装置3との相違点に着目して説明する。
以下、図14を参照して、本発明の変更例3に係る符号化装置1及び復号装置3について、上述の第1の実施形態に係る符号化装置1及び復号装置3との相違点に着目して説明する。
本変更例において、符号化対象ブロックであるCU#Tにおいて残差信号が伝送されない場合(すなわち、スキップモードが適用される場合)で、CU#Tの隣接同階層ブロックであるCU#3において残差信号が伝送されない場合(すなわち、スキップモードが適用される場合)で、且つ、CU#T及びCU#3が統合可能である場合、CU#T及びCU#3は統合されるように構成されている。
したがって、図14(a)に示すように、予測ベクトルリスト生成部12及び予測ベクトルリスト生成部32は、符号化対象ブロックであるCU#Tにおいて残差信号が伝送されない場合(すなわち、スキップモードが適用される場合)で、CU#Tの隣接同階層ブロックであるCU#3において残差信号が伝送されない場合(すなわち、スキップモードが適用される場合)で、且つ、CU#T及びCU#3が統合可能であるにも関わらず統合されていないため、CU#Tの動きベクトル及びCU#3の動きベクトルMV3が同一ではないと考えられる。そのため、かかる場合には、予測ベクトルリスト生成部12及び予測ベクトルリスト生成部32は、CU#3の動きベクトルMV3をCU#Tの予測ベクトルリストに追加しないように構成されている。
同様に、符号化対象ブロックであるCU#Tにおいて残差信号が伝送されない場合(すなわち、スキップモードが適用される場合)で、CU#Tの隣接同階層ブロックであるCU#2において残差信号が伝送されない場合(すなわち、スキップモードが適用される場合)で、且つ、CU#T及びCU#2が統合可能である場合、CU#T及びCU#2は統合されるように構成されている。
したがって、図14(b)に示すように、予測ベクトルリスト生成部12及び予測ベクトルリスト生成部32は、符号化対象ブロックであるCU#Tにおいて残差信号が伝送されない場合(すなわち、スキップモードが適用される場合)で、CU#Tの隣接同階層ブロックであるCU#2において残差信号が伝送されない場合(すなわち、スキップモードが適用される場合)で、且つ、CU#T及びCU#2が統合可能であるにも関わらず統合されていないため、CU#Tの動きベクトル及びCU#2の動きベクトルMV2が同一ではないと考えられる。そのため、かかる場合には、予測ベクトルリスト生成部12及び予測ベクトルリスト生成部32は、CU#2の動きベクトルMV2をCU#Tの予測ベクトルリストに追加しないように構成されている。
(変更例4)
以下、図15を参照して、本発明の変更例4に係る符号化装置1及び復号装置3について、上述の第1の実施形態に係る符号化装置1及び復号装置3との相違点に着目して説明する。
以下、図15を参照して、本発明の変更例4に係る符号化装置1及び復号装置3について、上述の第1の実施形態に係る符号化装置1及び復号装置3との相違点に着目して説明する。
本変更例において、予測ベクトルリスト生成部12及び予測ベクトルリスト生成部32は、符号化対象ブロックであるCU#Tにおいて残差信号が伝送されない場合(すなわち、スキップモードが適用される場合)で、CU#Tの隣接同階層ブロックであるCU#1において残差信号が伝送されない場合(すなわち、スキップモードが適用される場合)で、CU#Tの非隣接同階層ブロックであるCU#2において残差信号が伝送される場合(すなわち、スキップモードが適用されない場合)で、CU#1及びCU#2が統合可能である場合で、且つ、CU#1の動きベクトルMV1及びCU#2の動きベクトルMV2が同一である場合、CU#2の動きベクトルMV2をCU#Tの予測ベクトルリストに追加しないように構成されている。
(変更例5)
以下、図16を参照して、本発明の変更例5に係る符号化装置1及び復号装置3について、上述の第3の実施形態に係る符号化装置1及び復号装置3との相違点に着目して説明する。
以下、図16を参照して、本発明の変更例5に係る符号化装置1及び復号装置3について、上述の第3の実施形態に係る符号化装置1及び復号装置3との相違点に着目して説明する。
図16(a)及び図16(b)に示すように、本変更例では、四分木分割によってCU#1/CU#2/CU#3/CU#Tが得られているものとする。
本変更例では、スキップモード決定部112及びスキップモード決定部132は、図16(a)に示すように、符号化対象ブロックであるCU#T及びCU#Tの隣接同階層ブロックであるCU#3が統合可能である場合で、CU#3において残差信号が伝送されない場合(すなわち、スキップモードが適用される場合)で、且つ、CU#Tの動きベクトル及びCU#3の動きベクトルMV3が同一である場合には、CU#Tにおいて残差信号を伝送する(すなわち、スキップモードを適用しない)と決定するように構成されている。
同様に、スキップモード決定部112及びスキップモード決定部132は、図16(b)に示すように、符号化対象ブロックであるCU#T及びCU#Tの隣接同階層ブロックであるCU#2が統合可能である場合で、CU#2において残差信号が伝送されない場合(すなわち、スキップモードが適用される場合)で、且つ、CU#Tの動きベクトル及びCU#2の動きベクトルMV2が同一である場合には、CU#Tにおいて残差信号を伝送する(すなわち、スキップモードを適用しない)と決定するように構成されている。
(その他の実施形態)
上述のように、本発明について、上述した実施形態によって説明したが、かかる実施形態における開示の一部をなす論述及び図面は、本発明を限定するものであると理解すべきではない。かかる開示から当業者には様々な代替実施形態、実施例及び運用技術が明らかとなろう。
上述のように、本発明について、上述した実施形態によって説明したが、かかる実施形態における開示の一部をなす論述及び図面は、本発明を限定するものであると理解すべきではない。かかる開示から当業者には様々な代替実施形態、実施例及び運用技術が明らかとなろう。
また、上述の実施形態では特に触れていないが、上述の符号化装置1及び復号装置3によって行われる各処理をコンピュータに実行させるプログラムが提供されてもよい。また、かかるプログラムは、コンピュータ読取り可能媒体に記録されていてもよい。コンピュータ読取り可能媒体を用いれば、かかるプログラムをコンピュータにインストールすることが可能である。ここで、かかるプログラムが記録されたコンピュータ読取り可能媒体は、非一過性の記録媒体であってもよい。非一過性の記録媒体は、特に限定されるものではないが、例えば、CD-ROMやDVD-ROM等の記録媒体であってもよい。
或いは、上述の符号化装置1及び復号装置3内の少なくとも一部の機能を実現するためのプログラムを記憶するメモリ及びメモリに記憶されたプログラムを実行するプロセッサによって構成されるチップが提供されてもよい。
1…符号化装置
11…ブロック分割部
12…予測ベクトルリスト生成部
13…インター予測部
14…直交変換・量子化部
15…エントロピー符号化部
16…逆量子化・逆変換部
17…メモリ
112…スキップモード決定部
3…復号装置
31…エントロピー復号部
32…予測ベクトルリスト生成部
33…インター予測部
34…逆量子化・逆変換部
35…復号画像生成部
36…メモリ
132…スキップモード決定部
11…ブロック分割部
12…予測ベクトルリスト生成部
13…インター予測部
14…直交変換・量子化部
15…エントロピー符号化部
16…逆量子化・逆変換部
17…メモリ
112…スキップモード決定部
3…復号装置
31…エントロピー復号部
32…予測ベクトルリスト生成部
33…インター予測部
34…逆量子化・逆変換部
35…復号画像生成部
36…メモリ
132…スキップモード決定部
Claims (10)
- 動画像を構成するフレーム単位の原画像をブロックに分割して符号化するように構成されている符号化装置であって、
符号化対象ブロックの分割形状と、前記符号化対象ブロックに隣接する隣接ブロックの分割形状及び動きベクトルとに基づいて、前記符号化対象ブロックの動きベクトル候補を含むリストを生成するように構成されているリスト生成部と、
前記リストに基づいて、前記符号化対象ブロックの動きベクトルを符号化するように構成されている符号化部とを具備しており、
前記リスト生成部は、前記符号化対象ブロック及び前記符号化対象ブロックに隣接する同階層ブロックである隣接同階層ブロックが統合可能である場合、前記隣接同階層ブロックの動きベクトルを前記リストに追加しないように構成されており、
前記同階層ブロックは、前記符号化対象ブロックと同一の幅及び高さを有しており且つ最後に分割される前に前記符号化対象ブロックと同一のブロック内に存在していたブロックであることを特徴とする符号化装置。 - 前記リスト生成部は、前記符号化対象ブロックにおいて残差信号が伝送されない場合で、前記隣接同階層ブロックにおいて残差信号が伝送されない場合で、且つ、前記符号化対象ブロック及び前記隣接同階層ブロックが統合可能である場合、前記隣接同階層ブロックの動きベクトルを前記リストに追加しないように構成されていることを特徴とする請求項1に記載の符号化装置。
- 前記リスト生成部は、前記符号化対象ブロックにおいて残差信号が伝送されない場合で、前記隣接同階層ブロックにおいて残差信号が伝送されない場合で、前記符号化対象ブロックに隣接しない同階層ブロックである非隣接同階層ブロックにおいて残差信号が伝送される場合で、前記隣接同階層ブロック及び前記非隣接同階層ブロックが統合可能である場合で、且つ、前記隣接同階層ブロックの動きベクトル及び前記非隣接同階層ブロックの動きベクトルが同一である場合、前記非隣接同階層ブロックの動きベクトルを前記リストに追加しないように構成されていることを特徴とする請求項2に記載の符号化装置。
- 動画像を構成するフレーム単位の原画像をブロックに分割して符号化するように構成されている符号化装置であって、
符号化対象ブロックの分割形状及び動きベクトルと、前記符号化対象ブロックに隣接する隣接ブロックの分割形状及び動きベクトルとに基づいて、前記符号化対象ブロックにおいて残差信号を伝送するか否かについて決定するように構成されている決定部と、
前記決定に基づいて、前記符号化対象ブロックにおいて残差信号を伝送しないことを示す情報を符号化することなく、前記符号化対象ブロックの動きベクトルを符号化するように構成されている符号化部とを具備しており、
前記決定部は、前記符号化対象ブロック及び前記符号化対象ブロックに隣接する同階層ブロックである隣接同階層ブロックが統合可能である場合で、前記隣接同階層ブロックにおいて残差信号が伝送されない場合で、且つ、前記符号化対象ブロックの動きベクトル及び前記隣接同階層ブロックの動きベクトルが同一である場合には、前記符号化対象ブロックにおいて残差信号を伝送すると決定するように構成されており、
前記同階層ブロックは、前記符号化対象ブロックと同一の幅及び高さを有しており且つ最後に分割される前に前記符号化対象ブロックと同一のブロック内に存在していたブロックであることを特徴とする符号化装置。 - 動画像を構成するフレーム単位の原画像を符号化対象ブロックに分割して復号するように構成されている復号装置であって、
符号化対象ブロックの分割形状と、前記符号化対象ブロックに隣接する隣接ブロックの分割形状及び動きベクトルとに基づいて、前記符号化対象ブロックの動きベクトル候補を含むリストを生成するように構成されているリスト生成部と、
前記リストに基づいて抽出した前記符号化対象ブロックの動きベクトルに基づいて予測画像を生成するように構成されているインター予測部とを具備しており、
前記リスト生成部は、前記符号化対象ブロック及び前記符号化対象ブロックに隣接する同階層ブロックである隣接同階層ブロックが統合可能である場合、前記隣接同階層ブロックの動きベクトルを前記リストに追加しないように構成されており、
前記同階層ブロックは、前記符号化対象ブロックと同一の幅及び高さを有しており且つ最後に分割される前に前記符号化対象ブロックと同一のブロック内に存在していたブロックであることを特徴とする復号装置。 - 前記リスト生成部は、前記符号化対象ブロックにおいて残差信号が伝送されない場合で、前記隣接同階層ブロックにおいて残差信号が伝送されない場合で、且つ、前記符号化対象ブロック及び前記隣接同階層ブロックが統合可能である場合、前記隣接同階層ブロックの動きベクトルを前記リストに追加しないように構成されていることを特徴とする請求項5に記載の復号装置。
- 前記リスト生成部は、前記符号化対象ブロックにおいて残差信号が伝送されない場合で、前記隣接同階層ブロックにおいて残差信号が伝送されない場合で、前記符号化対象ブロックに隣接しない同階層ブロックである非隣接同階層ブロックにおいて残差信号が伝送される場合で、前記隣接同階層ブロック及び前記非隣接同階層ブロックが統合可能である場合で、且つ、前記隣接同階層ブロックの動きベクトル及び前記非隣接同階層ブロックの動きベクトルが同一である場合、前記非隣接同階層ブロックの動きベクトルを前記リストに追加しないように構成されていることを特徴とする請求項6に記載の復号装置。
- 動画像を構成するフレーム単位の原画像を符号化対象ブロックに分割して復号するように構成されている復号装置であって、
前記符号化対象ブロックにおいて残差信号を伝送しないことを示す情報を復号しないように構成されている復号部と、
前記符号化対象ブロックの分割形状及び動きベクトルと、前記符号化対象ブロックに隣接する隣接ブロックの分割形状及び動きベクトルとに基づいて、前記符号化対象ブロックにおいて残差信号が伝送されているか否かについて決定するように構成されている決定部と、
前記決定に基づいて、前記符号化対象ブロックの復号画像を生成するように構成されている復号画像生成部とを具備しており、
前記決定部は、前記符号化対象ブロック及び前記符号化対象ブロックに隣接する同階層ブロックである隣接同階層ブロックが統合可能である場合で、前記隣接同階層ブロックにおいて残差信号が伝送されない場合で、且つ、前記符号化対象ブロックの動きベクトル及び前記隣接同階層ブロックの動きベクトルが同一である場合には、前記符号化対象ブロックにおいて残差信号を伝送すると決定するように構成されており、
前記同階層ブロックは、前記符号化対象ブロックと同一の幅及び高さを有しており且つ最後に分割される前に前記符号化対象ブロックと同一のブロック内に存在していたブロックであることを特徴とする復号装置。 - コンピュータを、請求項1~4のいずれか一項に記載の符号化装置として機能させるためのプログラム。
- コンピュータを、請求項5~8のいずれか一項に記載の復号装置として機能させるためのプログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP17889264.2A EP3565252A4 (en) | 2016-10-06 | 2017-12-27 | CODING DEVICE, DECODING DEVICE AND PROGRAM |
CN201780081607.9A CN110121886A (zh) | 2016-10-06 | 2017-12-27 | 编码装置、解码装置以及程序 |
US16/455,097 US10757441B2 (en) | 2016-10-06 | 2019-06-27 | Encoding device, decoding device, and program |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016198477 | 2016-10-06 | ||
JP2016255336A JP6895247B2 (ja) | 2016-10-06 | 2016-12-28 | 符号化装置、復号装置及びプログラム |
JP2016-255336 | 2016-12-28 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/455,097 Continuation US10757441B2 (en) | 2016-10-06 | 2019-06-27 | Encoding device, decoding device, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2018124249A1 true WO2018124249A1 (ja) | 2018-07-05 |
Family
ID=61908970
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2017/047137 WO2018124249A1 (ja) | 2016-10-06 | 2017-12-27 | 符号化装置、復号装置及びプログラム |
Country Status (5)
Country | Link |
---|---|
US (1) | US10757441B2 (ja) |
EP (1) | EP3565252A4 (ja) |
JP (1) | JP6895247B2 (ja) |
CN (1) | CN110121886A (ja) |
WO (1) | WO2018124249A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6895247B2 (ja) * | 2016-10-06 | 2021-06-30 | 日本放送協会 | 符号化装置、復号装置及びプログラム |
JP2020096275A (ja) * | 2018-12-12 | 2020-06-18 | コネクトフリー株式会社 | 情報通信方法及び情報通信システム |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013123218A (ja) * | 2011-11-08 | 2013-06-20 | Jvc Kenwood Corp | 動画像復号装置、動画像復号方法、動画像復号プログラム、受信装置、受信方法及び受信プログラム |
JP2013131917A (ja) * | 2011-12-21 | 2013-07-04 | Jvc Kenwood Corp | 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム |
JP2013545342A (ja) * | 2010-10-08 | 2013-12-19 | フラウンホッファー−ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ | ブロック分割及びブロック統合をサポートする画像符号化 |
JP2016187134A (ja) * | 2015-03-27 | 2016-10-27 | 日本電信電話株式会社 | 予測モード判定方法及び予測モード判定プログラム |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI666882B (zh) * | 2010-04-13 | 2019-07-21 | 美商Ge影像壓縮有限公司 | 在樣本陣列多元樹細分中之繼承技術 |
KR102415787B1 (ko) * | 2010-05-04 | 2022-06-30 | 엘지전자 주식회사 | 비디오 신호의 처리 방법 및 장치 |
CN106937122B (zh) * | 2010-10-28 | 2020-03-27 | 韩国电子通信研究院 | 视频解码方法 |
US8548057B2 (en) * | 2011-01-25 | 2013-10-01 | Microsoft Corporation | Video coding redundancy reduction |
KR20120140181A (ko) * | 2011-06-20 | 2012-12-28 | 한국전자통신연구원 | 화면내 예측 블록 경계 필터링을 이용한 부호화/복호화 방법 및 그 장치 |
US9712819B2 (en) * | 2011-10-12 | 2017-07-18 | Lg Electronics Inc. | Image encoding method and image decoding method |
EP2942961A1 (en) * | 2011-11-23 | 2015-11-11 | HUMAX Holdings Co., Ltd. | Methods for encoding/decoding of video using common merging candidate set of asymmetric partitions |
US9729873B2 (en) * | 2012-01-24 | 2017-08-08 | Qualcomm Incorporated | Video coding using parallel motion estimation |
US20130272412A1 (en) * | 2012-04-12 | 2013-10-17 | Qualcomm Incorporated | Common motion information candidate list construction process |
CN104365102B (zh) * | 2012-05-10 | 2018-01-02 | Lg 电子株式会社 | 处理视频信号的方法和装置 |
US9860555B2 (en) * | 2012-05-22 | 2018-01-02 | Lg Electronics Inc. | Method and apparatus for processing video signal |
US20160050429A1 (en) * | 2013-04-11 | 2016-02-18 | Lg Electronics Inc. | Method and apparatus for processing video signal |
EP3107290B1 (en) * | 2014-03-14 | 2021-07-28 | Samsung Electronics Co., Ltd. | Method and device for configuring merge candidate list for decoding and encoding of interlayer video |
EP3171595A1 (en) * | 2015-11-18 | 2017-05-24 | Thomson Licensing | Enhanced search strategies for hierarchical motion estimation |
US10306258B2 (en) * | 2016-01-29 | 2019-05-28 | Google Llc | Last frame motion vector partitioning |
US10448010B2 (en) * | 2016-10-05 | 2019-10-15 | Qualcomm Incorporated | Motion vector prediction for affine motion models in video coding |
JP6895247B2 (ja) * | 2016-10-06 | 2021-06-30 | 日本放送協会 | 符号化装置、復号装置及びプログラム |
-
2016
- 2016-12-28 JP JP2016255336A patent/JP6895247B2/ja active Active
-
2017
- 2017-12-27 EP EP17889264.2A patent/EP3565252A4/en not_active Withdrawn
- 2017-12-27 WO PCT/JP2017/047137 patent/WO2018124249A1/ja unknown
- 2017-12-27 CN CN201780081607.9A patent/CN110121886A/zh not_active Withdrawn
-
2019
- 2019-06-27 US US16/455,097 patent/US10757441B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013545342A (ja) * | 2010-10-08 | 2013-12-19 | フラウンホッファー−ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ | ブロック分割及びブロック統合をサポートする画像符号化 |
JP2013123218A (ja) * | 2011-11-08 | 2013-06-20 | Jvc Kenwood Corp | 動画像復号装置、動画像復号方法、動画像復号プログラム、受信装置、受信方法及び受信プログラム |
JP2013131917A (ja) * | 2011-12-21 | 2013-07-04 | Jvc Kenwood Corp | 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム |
JP2016187134A (ja) * | 2015-03-27 | 2016-10-27 | 日本電信電話株式会社 | 予測モード判定方法及び予測モード判定プログラム |
Non-Patent Citations (2)
Title |
---|
J.ANY-W CHENK.ZHANGH.HUANGY-W HUANGS.LEI: "Block partitioning structure for next generation video coding", MPEG DOC.M37524 AND ITU-T SG16 DOC. COM16-C966, October 2015 (2015-10-01) |
See also references of EP3565252A4 |
Also Published As
Publication number | Publication date |
---|---|
JP2018061224A (ja) | 2018-04-12 |
US20190342575A1 (en) | 2019-11-07 |
EP3565252A1 (en) | 2019-11-06 |
EP3565252A4 (en) | 2020-07-08 |
CN110121886A (zh) | 2019-08-13 |
US10757441B2 (en) | 2020-08-25 |
JP6895247B2 (ja) | 2021-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6995952B2 (ja) | インタ予測方法及びその装置 | |
JP6376130B2 (ja) | 映像符号化装置、映像復号装置、映像符号化方法、映像復号方法及びプログラム | |
JP2009111691A (ja) | 画像符号化装置及び符号化方法、画像復号化装置及び復号化方法 | |
US20180376150A1 (en) | Encoding device, decoding device, and program | |
WO2011125730A1 (ja) | 画像符号化装置と画像符号化方法および画像復号化装置と画像復号化方法 | |
US20220030250A1 (en) | Encoding device, decoding device, and program | |
JP2011120047A (ja) | 動画像符号化装置 | |
WO2011099428A1 (ja) | 動きベクトル予測符号化方法、動きベクトル予測復号方法、動画像符号化装置、動画像復号装置およびそれらのプログラム | |
JP2023071920A (ja) | 画像をエンコーディング及びデコーディングする方法、エンコーディング及びデコーディング装置、並びに、対応するコンピュータプログラム | |
JP2023168518A (ja) | 予測ブロック生成装置、画像符号化装置、画像復号装置、及びプログラム | |
WO2018124249A1 (ja) | 符号化装置、復号装置及びプログラム | |
JP2023138826A (ja) | イントラ予測装置、画像符号化装置、画像復号装置、及びプログラム | |
JP6792997B2 (ja) | 符号化装置、復号装置及びプログラム | |
JP2023159443A (ja) | 復号装置及びプログラム | |
JP6528635B2 (ja) | 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム | |
JP2023105190A (ja) | 映像符号化又は映像復号装置、映像符号化又は映像復号方法、プログラム、及び記録媒体 | |
JP6792996B2 (ja) | 符号化装置、復号装置及びプログラム | |
JP7460384B2 (ja) | 予測装置、符号化装置、復号装置、及びプログラム | |
JP7219030B2 (ja) | 色差イントラ予測候補生成装置、画像符号化装置、画像復号装置、及びプログラム | |
JP7138453B2 (ja) | 符号化装置、復号装置及びプログラム | |
JP2017212554A (ja) | 符号化装置、復号装置及びプログラム | |
JP2017028372A (ja) | 符号化方式変換装置、方法及びプログラム | |
JP6740534B2 (ja) | 符号化装置、復号装置及びプログラム | |
JP2017212555A (ja) | 符号化装置、復号装置及びプログラム | |
WO2019187396A1 (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: 17889264 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 2017889264 Country of ref document: EP Effective date: 20190729 |