cv::GetPerspectiveTransform和cv::warpPerspective

cv::GetPerspectiveTransform获取透视变换矩阵

  • 用于获取透视变换矩阵。它需要源图像中四个点的坐标和这些点在输出图像中的位置坐标
C++ 复制代码
cv::Mat cv::getPerspectiveTransform(const cv::Point2f* src, const cv::Point2f* dst)
  • 参数:

    • src:源图像中四个点的坐标数组。

    • dst:这四个点在输出图像中的位置坐标数组。

  • 返回值:

    • 返回一个3x3的透视变换矩阵。

cv::warpPerspective

C++ 复制代码
	void cv::warpPerspective(
		cv::InputArray src, // 输入图像
		cv::OutputArray dst, // 输出图像
		cv::InputArray M, // 3x3 变换矩阵
		cv::Size dsize, // 目标图像大小
		int flags = cv::INTER_LINEAR, // 插值方法
		int borderMode = cv::BORDER_CONSTANT, // 外推方法
		const cv::Scalar& borderValue = cv::Scalar() //常量边界时使用
	);

例程

C++ 复制代码
#include <opencv2/opencv.hpp>
 
int main()
{
    cv::Point2f srcTriangle[4];
    cv::Point2f dstTriangle[4];
 
    // 设置源图像中的四个点坐标
    srcTriangle[0] = cv::Point2f(0, 0);
    srcTriangle[1] = cv::Point2f(src.cols - 1, 0);
    srcTriangle[2] = cv::Point2f(0, src.rows - 1);
    srcTriangle[3] = cv::Point2f(src.cols - 1, src.rows - 1);
 
    // 设置输出图像中的四个点坐标
    dstTriangle[0] = cv::Point2f(0, 0);
    dstTriangle[1] = cv::Point2f(dst.cols - 1, 0);
    dstTriangle[2] = cv::Point2f(0, dst.rows - 1);
    dstTriangle[3] = cv::Point2f(dst.cols - 1, dst.rows - 1);
 
    // 获取透视变换矩阵
    cv::Mat perspectiveTransform = cv::getPerspectiveTransform(srcTriangle, dstTriangle);
 
    // 应用透视变换
    cv::warpPerspective(src, dst, perspectiveTransform, dst.size());
 
    return 0;
}
相关推荐
Tom Boom8 分钟前
1.11.信息系统的分类【DSS】
人工智能·算法·机器学习·职场和发展·分类·数据挖掘·系统架构
扫地僧98512 分钟前
MuMu-LLaMA:通过大型语言模型进行多模态音乐理解和生成(Python代码实现+论文)
人工智能·语言模型·llama
skywalk816313 分钟前
Trae 是一款由 AI 驱动的 IDE,让编程更加愉悦和高效。国际版集成了 GPT-4 和 Claude 3.5,国内版集成了DeepSeek-r1
人工智能·trae
WenGyyyL20 分钟前
使用OpenCV和MediaPipe库——驼背检测(姿态监控)
人工智能·python·opencv·算法·计算机视觉·numpy
梓羽玩Python32 分钟前
开源版Manus来了!14.7k标星的OpenManus,让AI替你全自动执行任务!
人工智能·github
广拓科技33 分钟前
中国视频生成 AI 开源潮:腾讯阿里掀技术普惠革命,重塑内容创作格局
人工智能·开源
dr李四维43 分钟前
Java在小米SU7 Ultra汽车中的技术赋能
java·人工智能·安卓·智能驾驶·互联·小米su7ultra·hdfs架构
guanshiyishi44 分钟前
ABeam 德硕 | 中国汽车市场(1)——正在推进电动化的中国汽车市场
人工智能·物联网·汽车
思茂信息1 小时前
CST直角反射器 --- 距离多普勒(RD图), 毫米波汽车雷达ADAS
前端·人工智能·5g·汽车·无人机·软件工程
瑞瑞大大1 小时前
简单介绍下Manus功能
人工智能