当前位置:网站首页>OpenCV perspective transform
OpenCV perspective transform
2022-08-03 13:14:00 【I this year 16 years old】
目录
一:OpenCV透视变换的概念
仿射变换Based on an image3个固定顶点的变换,接下来学习的透视变换是4个固定顶点的变换
二:透视变换工作原理
透视变换(Perspective Transformation)的本质是将图像投影到一个新的视平面,其通用变换公式为:
(u,v)为原始图像像素坐标,(x=x’/w’,y=y’/w’)为变换之后的图像像素坐标.透视变换矩阵图解如下:
仿射变换(Affine Transformation)可以理解为透视变换的特殊形式.透视变换的数学表达式为:
所以,给定透视变换对应的Four pairs of pixel coordinates,即可求得透视变换矩阵;反之,给定透视变换矩阵,即可对图像或像素点坐标完成透视变换,如下图所示:
三:findHomography函数
findHomography: 计算多个二维点对之间的最优单映射变换矩阵 H(3行x3列) ,使用最小均方误差或者RANSAC方法.
函数功能:找到两个平面之间的变换矩阵.
函数参数:
Mat cv::findHomography ( InputArray srcPoints,
InputArray dstPoints,
int method = 0,
double ransacReprojThreshold = 3,
OutputArray mask = noArray(),
const int maxIters = 2000,
const double confidence = 0.995
)
四:warpPerspective函数
函数原型:
void warpPerspective(InputArray src, OutputArray dst, InputArray M, Size dsize, int flags=INTER_LINEAR, int borderMode=BORDER_CONSTANT, const Scalar& borderValue=Scalar())
函数参数说明:
Figure in the red dot is the fixed vertex,在变换先后固定顶点的像素值不变,Image as a whole, according to the rules of transformation to transform
同理,透视变换Based on an image4个固定顶点的变换,如图所示:
五:getPerspectiveTransform函数
函数原型:
C++方式一:Mat getPerspectiveTransform(InputArray src, InputArray dst)
C++方式二:Mat getPerspectiveTransform(const Point2f src[], const Point2f dst[])
函数参数说明:
src – 源图像中四边形顶点的坐标
dst – 目标图像中相应四边形顶点的坐标.
该函数计算透视变换的3乘3矩阵,以便实现以下计算:
边栏推荐
- leetcode16 Sum of the closest three numbers (sort + double pointer)
- leetcode16最接近的三数之和 (排序+ 双指针)
- An动画基础之元件的影片剪辑效果
- Byte's favorite puzzle questions, how many do you know?
- 力扣刷题 每日两题(一)
- 图像融合GAN-FM学习笔记
- An动画优化之传统引导层动画
- An工具介绍之钢笔工具、铅笔工具与画笔工具
- [Verilog] HDLBits Problem Solution - Circuits/Sequential Logic/Latches and Flip-Flops
- An工具介绍之宽度工具、变形工具与套索工具
猜你喜欢
随机推荐
可重入锁详解(什么是可重入)
浅谈程序员的职业操守
技术分享 | 接口自动化测试如何搞定 json 响应断言?
Win11怎么禁止软件后台运行?Win11系统禁止应用在后台运行的方法
Redis连接池工具类
如何让history历史记录前带时间戳
An动画优化之传统引导层动画
An introduction to the camera
安全自定义 Web 应用程序登录
Golang GMP 原理
使用工作队列管理器(三)
An animation optimization of traditional guide layer animation
Free Internet fax platform fax _ don't show number
新评论接口——京东评论接口
Graphic animation and button animation of an animation basic component
setTimeout 、setInterval、requestAnimationFrame
ECCV 2022|通往数据高效的Transformer目标检测器
PyTorch构建分类网络模型(Mnist数据集,全连接神经网络)
[Blue Bridge Cup Trial Question 48] Scratch Dance Machine Game Children's Programming Scratch Blue Bridge Cup Trial Question Explanation
可视化图表设计Cookbook