An apparatus, comprising: a video encoder for encoding a current block of an image using a motion vector prediction method, wherein the video encoder comprises: means for predicting a motion vector of the current block, the motion vector of the current block being obtained by motion estimation, by defining a set of motion vector predictor candidates for the current block based on motion vectors of a plurality of spatio-temporal neighboring blocks of the current block, means for selecting from the set a particular motion vector predictor candidate as the selected motion vector predictor candidate for predicting the motion vector of the current block as a function of respective prediction confidence values of the motion vectors of the set, the prediction confidence value of the motion vector of a spatio-temporal neighboring block of the plurality being determined based on one or more parameters related to motion information of said spatio-temporal neighboring block; and, means for encoding the motion vector of the current block in the form of a difference between the selected motion vector predictor candidate and the motion vector of the current block; and wherein, the prediction confidence value of the motion vector of a spatio-temporal neighboring block of the plurality is a function of at least one of: a motion compensation error, a motion vector magnitude, and a reference index. a video encoder for encoding a current block of an image using a motion vector prediction method, wherein the video encoder comprises: means for predicting a motion vector of the current block, the motion vector of the current block being obtained by motion estimation, by defining a set of motion vector predictor candidates for the current block based on motion vectors of a plurality of spatio-temporal neighboring blocks of the current block, means for selecting from the set a particular motion vector predictor candidate as the selected motion vector predictor candidate for predicting the motion vector of the current block as a function of respective prediction confidence values of the motion vectors of the set, the prediction confidence value of the motion vector of a spatio-temporal neighboring block of the plurality being determined based on one or more parameters related to motion information of said spatio-temporal neighboring block; and, means for encoding the motion vector of the current block in the form of a difference between the selected motion vector predictor candidate and the motion vector of the current block; and wherein, the prediction confidence value of the motion vector of a spatio-temporal neighboring block of the plurality is a function of at least one of: a motion compensation error, a motion vector magnitude, and a reference index. means for predicting a motion vector of the current block, the motion vector of the current block being obtained by motion estimation, by defining a set of motion vector predictor candidates for the current block based on motion vectors of a plurality of spatio-temporal neighboring blocks of the current block, means for selecting from the set a particular motion vector predictor candidate as the selected motion vector predictor candidate for predicting the motion vector of the current block as a function of respective prediction confidence values of the motion vectors of the set, the prediction confidence value of the motion vector of a spatio-temporal neighboring block of the plurality being determined based on one or more parameters related to motion information of said spatio-temporal neighboring block; and, means for encoding the motion vector of the current block in the form of a difference between the selected motion vector predictor candidate and the motion vector of the current block; and wherein, the prediction confidence value of the motion vector of a spatio-temporal neighboring block of the plurality is a function of at least one of: a motion compensation error, a motion vector magnitude, and a reference index.