购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

4.2 图像平移

1.理论基础

图像平移是将图像中所有的点都按照指定的平移量水平、垂直移动。

图像的平移变换用齐次坐标表示为:

(4-10)

当想将原始图像向右下移动120个像素时,可以用转换矩阵 M 表示为:

由此可以计算出 M 矩阵:

在已知变换矩阵 M 的条件下,可以直接使用OpenCV中为仿射变换函数cv2.warpAffine()完成图像的平移操作。

2.函数说明

(1)retval=np.float32()用于创建单精度浮点型数组。

(2)OpenCV中提供的仿射函数为cv2.warpAffine(),可以利用变换矩阵 M 对图像进行仿射变换。其中, M 具体可为:

对于仿射变换后的图像 R ,可以由变换矩阵 M 与原始图像矩阵相乘得到。

仿射变换函数cv2.warpAffine()的一般格式为:

retval:仿射后的输出图像,类型与原始图像相同;

src:表示要仿射的原始图像;

M:表示变换矩阵;

dsize:表示输出图像尺寸的大小,输入顺序(宽,高);

flags:表示插入值,默认INTER_LIEAR,其中还有INTER_NEAREST、INTER_AREA、INTER_CUBIC、INTER_LANCZOS4;

borderMode:表示边类型;

borderValue:表示边界值。

3.编程代码

4.效果展示

图像的平移效果如图4-1所示,左侧为原始图像,右侧为平移后的图像。

图4-1 图像的平移效果图 SS5uXm2lgcKwSnowfg9KAf44qTwHDJzxV0FReui+yrAuIN7RsNQd/gxMbo/Io0YX

点击中间区域
呼出菜单
上一章
目录
下一章
×