读书笔记-opencv-仿射变换

本文详细介绍了OpenCV中的仿射变换,包括二维放射变换、平移、缩放、旋转,以及如何计算仿射变换矩阵。通过方程法和矩阵法展示了变换过程,并讨论了不同的旋转和缩放情况。此外,还讲解了使用cv2.getAffineTransform和cv2.getRotationMatrix2D获取变换矩阵的方法。最后,探讨了插值算法,如最邻近插值和双线性插值,并提供了Python和C++的实现示例。
摘要由CSDN通过智能技术生成

仿射变换

二维放射变换:
在这里插入图片描述

齐次坐标下:
在这里插入图片描述

平移变换:

在这里插入图片描述

绕原点放大和缩小:
在这里插入图片描述

绕点(x, y)放大和缩小(矩阵从右往左计算):

在这里插入图片描述

旋转变换:

在这里插入图片描述

顺时针公式推导:
在这里插入图片描述

逆时针公式推导:
在这里插入图片描述

计算仿射变换矩阵
方程法:
python
cv2.getAffineTransform(src, dst) //src代表的是原坐标,dst代表的是变换后的坐标,必须为浮点型

import cv2
import numpy as np
src = np.array([[0,0], [200,0], [0,200]], np.float32)			 #double  [], else error :"only 2 non-keyword arguments accepted"
dst = np.array([[0,0], [100,0], [0,100]], np.float32)            #after  import numpy as np, only use np,don't use 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值