图像的平移操作是将图像的所有像素坐标进行水平或垂直方向移动,也就是将所有像素点按照给定的偏移量在水平方向沿x轴、垂直方向上沿y轴移动。平移变换分为两种类型:图像大小变化与图像大小不变。第一种类型保证图像平移的完整信息,第二种图像导致原始图像的部分信息可能丢失。图像平移变换公式如下:(不会用csdn自带的公式编辑器,使用mathtype打出来再截图的)

对4*4图像矩阵向右平移x轴一个单位,向下平移y轴一个单位,若移动后图像的大小保持不变,多余部分填充为白色时满足:

对4*4图像矩阵向左平移x轴一个单位,向上平移y轴一个单位,若移动后图像的大小变换,多余部分填充为白色时满足:
举例说明:
#include<opencv2/imgproc/imgproc.hpp>
#include<opencv2/core/core.hpp>
#include<opencv2/highgui/highgui.hpp>
#include<iostream>
using namespace std;
using namespace cv;
//平移操作,图像大小不变
Mat imgTranslation1(Mat& src

文章详细介绍了图像平移的概念,包括两种类型:图像大小变化与图像大小不变。提供了OpenCVC++实现的两个函数,分别用于图像平移且大小不变及大小变化的情况。函数通过遍历像素并使用ptr方法访问Mat图像数据,用Vec3b处理RGB像素。示例代码展示了不同平移效果。
最低0.47元/天 解锁文章
3429

被折叠的 条评论
为什么被折叠?



