1. An image encoding method performed by an image encoding apparatus for encoding an image, the image encoding apparatus including a hardware processor configured to execute the image encoding method comprising: selecting, using the hardware processor, one motion prediction model from a plurality of motion prediction models for each block of blocks in the image, the plurality of motion prediction models including a translational motion model and a non-translational motion model different from the translational motion model; performing, using the hardware processor, motion prediction using the selected motion prediction model to generate a prediction image for each of the blocks; generating, using the hardware processor, a reconstructed image for each of the blocks using the prediction image; determining, using the hardware processor, that filtering is to be performed if the non-translational motion model is selected for at least one of a first block and a second block and determining that filtering is not to be performed if the translational motion model is selected for both the first block and the second block, the first block being one of the blocks, blocks and the second block being another one of the blocks and adjacent to the first block; and performing, using the hardware processor, the filtering on a boundary between the reconstructed image for the first block and the reconstructed image for the second block if it is determined that the filtering is to be performed, the filtering being for reducing an image distortion at the boundary.