An image processing device comprising: a first determination section configured to perform horizontal filtering determination processes in parallel across a plurality of vertical block boundaries among a plurality of blocks of 8x8 pixels within an image to be locally decoded when an image to be encoded is encoded, each horizontal filtering determination process determining, without depending on the horizontal filtering determination processes for other vertical block boundaries, whether to apply a deblocking filter to pixels neighboring a vertical block boundary; a horizontal filtering section configured to perform horizontal filtering by applying a horizontal filter to neighbouring pixels across all vertical boundaries for which the horizontal filtering determination processes determined that the deblocking filter is be applied, to generate a first filtered image; a second determination section configured to perform vertical filtering determination processes in parallel across a plurality of horizontal block boundaries among a plurality of blocks of 8x8 pixels within the image to be locally decoded, each vertical filtering determination process determining, without depending on the vertical filtering determination processes for other horizontal block boundaries, whether to apply a deblocking filter to pixels neighboring a horizontal block boundary; a vertical filtering section configured to perform vertical filtering by applying a vertical filter to neighbouring pixels across all horizontal boundaries in the first filtered image for which the vertical filtering determination processes determined that the deblocking filter is to be applied, to generate a second filtered image; and an encoding section configured to encode the image to be encoded using the second filtered image. a first determination section configured to perform horizontal filtering determination processes in parallel across a plurality of vertical block boundaries among a plurality of blocks of 8x8 pixels within an image to be locally decoded when an image to be encoded is encoded, each horizontal filtering determination process determining, without depending on the horizontal filtering determination processes for other vertical block boundaries, whether to apply a deblocking filter to pixels neighboring a vertical block boundary; a horizontal filtering section configured to perform horizontal filtering by applying a horizontal filter to neighbouring pixels across all vertical boundaries for which the horizontal filtering determination processes determined that the deblocking filter is be applied, to generate a first filtered image; a second determination section configured to perform vertical filtering determination processes in parallel across a plurality of horizontal block boundaries among a plurality of blocks of 8x8 pixels within the image to be locally decoded, each vertical filtering determination process determining, without depending on the vertical filtering determination processes for other horizontal block boundaries, whether to apply a deblocking filter to pixels neighboring a horizontal block boundary; a vertical filtering section configured to perform vertical filtering by applying a vertical filter to neighbouring pixels across all horizontal boundaries in the first filtered image for which the vertical filtering determination processes determined that the deblocking filter is to be applied, to generate a second filtered image; and an encoding section configured to encode the image to be encoded using the second filtered image. <EOS>