Patent Document ID: 8009731
Application ID: 10500575
Patent Status: 1

Claim One:
1. A motion compensation method for generating a predictive image of a current macroblock included in a current picture with reference to a motion vector of an adjacent macroblock that is located adjacent to the current macroblock, the motion compensation method comprising: specifying, using an adjacent macroblock specifying unit, plural adjacent macroblocks which are located adjacent to the current macroblock and are already decoded; deriving, using a motion vector deriving unit, a motion vector of a current macroblock; generating, using a generating unit, a predictive image of the current macroblock using the derived motion vector of the current macroblock; and performing, using a motion compensation unit, motion compensation on the current macroblock using the generated predictive image of the current macroblock, and wherein, in the case where the motion compensation on the current macroblock is prohibited to a size smaller than 8 pixels by 8 pixels, dividing, using a dividing unit, the current macroblock into a plurality of current blocks, each having a size of 8 pixels by 8 pixels; specifying, using a co-located macroblock specifying unit, a co-located macroblock which is co-located with the current macroblock and is included in a picture different from a current picture including the co-located macroblock; specifying, using a co-located block specifying unit, a co-located block which is co-located with each of the current blocks and is included in the co-located macroblock; setting, using a motion vector setting unit, a motion vector of the co-located block to be one motion vector when the co-located block is composed of one block for which motion compensation has been performed and the co-located block is motion compensated using only the one motion vector, and setting a motion vector of the co-located block to be a motion vector of a corner block which is included in the co-located block and is located in a corner of the co-located macroblock when the co-located block is composed of a plurality of blocks for which motion compensation has been performed and a size of each of the plurality of blocks is different from a size of the current block; judging, using a motion vector size judging unit, if a size of the one motion vector or the motion vector of the corner block is within a predetermined range; deriving, using the motion vector deriving unit, a motion vector of respective current blocks in the current macroblock (i) by using plural motion vectors of specified plural adjacent macroblocks when the size of the one motion vector or the motion vector of the corner block is beyond the predetermined range, or (ii) by setting a motion vector of the respective current blocks to be “0” when the size of the one motion vector or the motion vector of the corner block is within the predetermined range; generating, using a generating unit, a predictive image of the respective current blocks included in the current macroblock, using the derived motion vector of the respective current blocks; and performing, using the motion compensation unit, a motion compensation on the respective current blocks using the generated predictive image of the respective current blocks.