A method for encoding of video images, comprising: determining, in a first reference frame, at least one first candidate reference block corresponding to a current block in a current frame according to known motion information related to the current block, wherein the known motion information related to the current block is motion vectors of encoded blocks adjacent to the current block in time or space, wherein for each first candidate reference block of the at least one first candidate reference block, a motion vector of the first candidate reference block to the current block is determined according to a position relation between the first candidate reference block and the current block; determining, in a second reference frame, at least one second candidate reference block that is respectively corresponding to the at least one first candidate reference block, wherein for each second candidate reference block of the at least one second candidate reference block that is respectively corresponding to the at least one first candidate reference block, the second candidate reference block is determined in the second reference frame according to the motion vector of the first candidate reference block to the current block; wherein one of the first reference frame and the second reference frame is a forward reference frame and the other one is a backward reference frame with respect to the current frame; calculating a sum of differences between a first candidate reference block and a second candidate reference block that is corresponding to the first candidate reference block, wherein the sum of differences is one of a sum of absolute differences, SAD, a sum of absolute transformation differences, and a sum of absolute squared differences; and selecting the first candidate reference block and the second candidate reference block which have the minimal sum of difference as a first reference block and a second reference block of the current block, and obtaining motion vectors of the current block according to motion vectors determined by the first reference block and the second reference block; calculating a predicted value of the current block according to the motion vectors of the current block; calculating a difference between the predicted value of the current block and a true value of the current block; and performing encoding on the difference between the predicted value of the current block and a true value of the current block, to obtain a code stream. determining, in a first reference frame, at least one first candidate reference block corresponding to a current block in a current frame according to known motion information related to the current block, wherein the known motion information related to the current block is motion vectors of encoded blocks adjacent to the current block in time or space, wherein for each first candidate reference block of the at least one first candidate reference block, a motion vector of the first candidate reference block to the current block is determined according to a position relation between the first candidate reference block and the current block; determining, in a second reference frame, at least one second candidate reference block that is respectively corresponding to the at least one first candidate reference block, wherein for each second candidate reference block of the at least one second candidate reference block that is respectively corresponding to the at least one first candidate reference block, the second candidate reference block is determined in the second reference frame according to the motion vector of the first candidate reference block to the current block; wherein one of the first reference frame and the second reference frame is a forward reference frame and the other one is a backward reference frame with respect to the current frame; calculating a sum of differences between a first candidate reference block and a second candidate reference block that is corresponding to the first candidate reference block, wherein the sum of differences is one of a sum of absolute differences, SAD, a sum of absolute transformation differences, and a sum of absolute squared differences; and selecting the first candidate reference block and the second candidate reference block which have the minimal sum of difference as a first reference block and a second reference block of the current block, and obtaining motion vectors of the current block according to motion vectors determined by the first reference block and the second reference block; calculating a predicted value of the current block according to the motion vectors of the current block; calculating a difference between the predicted value of the current block and a true value of the current block; and performing encoding on the difference between the predicted value of the current block and a true value of the current block, to obtain a code stream.