Hellow,我是jack,今天给大家分享的是图像平移。话不多说,让我们直接进入正题。
平移处理要求:
1)保证图像平移的完整性。
2)图像原始信息可能丢失
接下来让我们看下代码怎么实现:
//平移操作图像大小不变
cv::Mat imageTranslation(cv::Mat & srcImage, int xOffset,int yOffset){
int rows = srcImage.rows;//将原图的宽复制
int cols = srcImage.cols;//将原图的长复制
cv::Mat resultmage(srcImage.size(), srcImage.type());
//遍历图像
for (int i = 0; i < rows; i++) {
for(int j=0;j<cols;j++){
//映射变换
int x = j - xOffset;
int y = i - yOffset;
//边界判断
if (x > 0 && y > 0 && x < cols && y < rows)
result