图像处理入门:几何变换

本文介绍了图像处理中的几何变换,包括OpenCV库中的平移、扩大缩小、旋转和仿射变换。cv2.resize()用于图像尺寸调整,cv2.warpAffine()和cv2.warpPerspective()分别用于实现仿射和透视变换。在仿射变换中,保持平行线性质,而透视变换允许直线在变换后仍为直线。变换涉及的关键函数包括cv2.getRotationMatrix2D()和cv2.getAffineTransform(),以及不同的插值算法如INTER_NEAREST和INTER_LANCZOS4。
摘要由CSDN通过智能技术生成

    图像的几何变换主要包括:平移、扩大与缩小、旋转、仿射、透视等等。在OpenCV中,cv2.resize()实现扩大或者缩小,cv2.warpAffine()实现平移、旋转(cv2.getRotationMatrix2D(旋转中心,旋转角度,旋转后的缩放因子)函数作为变换矩阵)和仿射变换(cv2.getAffineTransform(变换前的3个点,变换后的3个点)函数用来创建2*3的变换矩阵),cv2.warpPerspective()实现透视变换(cv2.)。

    cv.resize()接收的参数有:原图,目标图像,目标图像大小,水平轴的比例因子,垂直轴的比例因子和插值方法。

    在仿射变换中,原图中所有的平行线在结果图像中同样平行。为了创建这个矩阵我们需要从原图像中找到三个点以及他们在输出图像中的位置。然后cv2.getAffineTransform 会创建一个 2x3 的矩阵,最后这个矩阵会被传给函数cv2.warpAffine,该函数接受三个参数,需要变换的原始图像,移动矩阵M(2*3的变换矩阵)以及变换的图像大小(这个大小如果不和原始图像大小相同,那么函数会自动通过插值来调整像素间的关系).

    对于透视变换,我们需要一个 3x3 变换矩阵。在变换前后直线还是直线。要构建这个变换矩阵,你需要在输入图像上找 4 个点,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值