Patent ID: 7856060

Claim:
A coding method for coding a picture, said coding method comprising: a coding step of determining, with a coding unit, two motion vectors for a current block to be coded, based on one motion vector of a co-located block which is a block included within a previously coded B-picture and co-located with the current block, and coding the current block by performing motion compensation on the current block in direct mode using the two motion vectors for the current block and two reference pictures which correspond to the two motion vectors for the current block, wherein said coding step includes: in the case where the co-located block has been coded using two motion vectors and two reference pictures which respectively correspond to the two motion vectors of the co-located block, specifying, as a specified motion vector, one of the two motion vectors of the co-located block; generating the two motion vectors for the current block that are used for performing direct mode motion compensation on the current block, by scaling the specified motion vector by a ratio of a first difference and a second difference, the first difference being a difference between display order information of a reference picture corresponding to the specified motion vector and display order information of the previously coded B-picture including the co-located block, and the second difference information being a difference between display order information of the reference picture corresponding to the specified motion vector and display order information of the current picture including the current block; and coding the current block by performing motion compensation on the current block in direct mode using the generated two motion vectors for the current block and two reference pictures, said two reference pictures being the reference picture corresponding to the specified motion vector and the previously coded B-picture including the co-located block, and said two reference pictures respectively corresponding to the generated two motion vectors.