The motion compensation device 1000 compares the variance of the motion vectors of the neighboring blocks with a predetermined threshold (S1602). When the motion vector variance of the neighboring blocks is less than the threshold, the BIO process is skipped and a prediction block is generated according to the typical motion compensation (S1604). On the other hand, when the motion vector variance of the neighboring blocks is greater than the threshold, a prediction block of the current block is generated according to the BIO process (S1606).
In Embodiments 1 to 4, determining whether to skip the BIO using each condition individually has been described. However, the present disclosure is not limited to determining whether to skip the BIO using any one condition. Determining whether to skip the BIO by selectively combining the multiple conditions described in the present disclosure should also be construed as being within the scope of the present disclosure. For example, selectively combining various methods described in the present disclosure, such as determining whether to skip the BIO based on the size and texture complexity of the current block, determining whether to skip the BIO based on the size of the current block, the CVC condition and/or the BCC condition, and determining whether to skip of the BIO based on one or more of the CVC condition and the BCC condition and the texture complexity of the current block, should be construed as being within the scope of the present disclosure.