| CPC H04N 19/57 (2014.11) [H04N 19/105 (2014.11); H04N 19/176 (2014.11); H04N 19/182 (2014.11); H04N 19/513 (2014.11); H04N 19/52 (2014.11)] | 5 Claims |

|
1. An image decoding device comprising:
a prediction unit configured to generate a prediction signal included in a prediction block based on a motion vector, wherein
the prediction unit is configured to perform refinement processing of setting a search range based on a reference position specified by the motion vector, specifying a corrected reference position having the smallest predetermined cost from the search range, and correcting the motion vector based on the corrected reference position, when a predetermined condition is satisfied;
wherein, in the refinement processing, the prediction unit is configured to:
select first candidate positions from the search range;
select at least one second candidate position from the first candidate positions and the reference position;
select only the reference position as the second candidate position when the smallest predetermined cost of the reference position is smaller than a certain percentage of a minimum value of the first candidate positions, the certain percentage being a percentage other than 100% of the minimum value of the first candidate positions;
specify pixels adjacent to the second candidate position as third candidate positions, the third candidate position including half pixels having values interpolated by integer pixels; and
specify a position having the smallest predetermined cost from the first candidate positions, the second candidate position, the third candidate positions as the corrected reference position;
the predetermined condition including a condition that the prediction block is a block that performs bidirectional prediction, one reference frame is a frame that is temporally earlier than a target frame, and the other reference frame is a frame that is temporally future than the target frame;
a sign of a displacement between the first candidate position and the reference position in the one reference frame is opposite to a sign of a displacement between the first candidate position and the reference position in the other reference frame;
a sign of a displacement between the second candidate position and the reference position in the one reference frame is opposite to a sign of a displacement between the second candidate position and the reference position in the other reference frame;
a sign of a displacement between the third candidate position and the reference position in the one reference frame is opposite to a sign of a displacement between the third candidate position and the reference position in the other reference frame;
the predetermined cost is a sum of absolute differences between a pixel in a reference block in the one reference frame and a pixel in a reference block in the other reference frame; and
when a block size of the prediction block is larger than a predetermined block size, the prediction unit is configured to divide the prediction block into sub-block groups and perform the refinement processing for each sub-block.
|