It could be (not really sure) a relict of the (sub-optimal) interpolation method CV_INTER_LINEAR. For example, cv::resize() does support other interpolation modes like CV_INTER_CUBIC. However, I do not know if cv::warpPerspectice() does so too.