A method for encoding an image of a video sequence, comprising: analysing motion in the video sequence to identify a coherent region in the image that has moved with a distance vector which is longer than a threshold since a previously encoded image in the video sequence, encoding blocks of pixels in the image by, for each block of pixels (501a, 501d): performing block matching (S106, S111, S106a, S106b) to find a motion vector (708a, 808) pointing to a matching block of pixels in a reference image and to calculate a residual between the block of pixels (501a, 501d) and the matching block of pixels, calculating a cost (S108a, S108b, S108) for encoding the motion vector (708a, 808) and a cost for encoding the residual, wherein, for at least one block of pixels (501a, 501b, 501c) in the coherent region, the cost for encoding the motion vector is calculated as a cost for encoding the motion vector relative to the distance vector of the coherent region instead of being calculated as a cost for encoding the motion vector relative to a motion vector of a neighbouring block of pixels in the image, and encoding the block of pixels (501a, 501d) as an inter-coded block if the cost for encoding the motion vector and the cost for encoding the residual when combined are below a cost for intra-coding the block of pixels. analysing motion in the video sequence to identify a coherent region in the image that has moved with a distance vector which is longer than a threshold since a previously encoded image in the video sequence, encoding blocks of pixels in the image by, for each block of pixels (501a, 501d): performing block matching (S106, S111, S106a, S106b) to find a motion vector (708a, 808) pointing to a matching block of pixels in a reference image and to calculate a residual between the block of pixels (501a, 501d) and the matching block of pixels, calculating a cost (S108a, S108b, S108) for encoding the motion vector (708a, 808) and a cost for encoding the residual, wherein, for at least one block of pixels (501a, 501b, 501c) in the coherent region, the cost for encoding the motion vector is calculated as a cost for encoding the motion vector relative to the distance vector of the coherent region instead of being calculated as a cost for encoding the motion vector relative to a motion vector of a neighbouring block of pixels in the image, and encoding the block of pixels (501a, 501d) as an inter-coded block if the cost for encoding the motion vector and the cost for encoding the residual when combined are below a cost for intra-coding the block of pixels. performing block matching (S106, S111, S106a, S106b) to find a motion vector (708a, 808) pointing to a matching block of pixels in a reference image and to calculate a residual between the block of pixels (501a, 501d) and the matching block of pixels, calculating a cost (S108a, S108b, S108) for encoding the motion vector (708a, 808) and a cost for encoding the residual, wherein, for at least one block of pixels (501a, 501b, 501c) in the coherent region, the cost for encoding the motion vector is calculated as a cost for encoding the motion vector relative to the distance vector of the coherent region instead of being calculated as a cost for encoding the motion vector relative to a motion vector of a neighbouring block of pixels in the image, and encoding the block of pixels (501a, 501d) as an inter-coded block if the cost for encoding the motion vector and the cost for encoding the residual when combined are below a cost for intra-coding the block of pixels.