仿射变换

仿射变换详解 仿射变换是二维平面中一种重要的变换,在图像图形领域有广泛的应用。许多人对“仿射”没有一个感官的认识,我觉得很有必要先来说一下“仿射”。 所谓的“仿射变换”就是一种简单的变换,它的变化包括旋转、平移、伸缩,原来的直线仿射变换后还是直线,原来的平行线经过仿射变换之后还是平行线,这就是仿射。 仿射变换的矩阵是其次坐标形式的变换矩阵 这个矩阵包含的变换有旋转和平移,其实是两个矩阵的混合体,许 阅读详情

找了一会儿讲仿射变换的博客,发现这个讲的挺好,看图可自己推导公式。

仿射变换是二维平面中一种重要的变换,在图像图形领域有广泛的应用。许多人对“仿射”没有一个感官的认识,我觉得很有必要先来说一下“仿射”。

所谓的“仿射变换”就是一种简单的变换,它的变化包括旋转、平移、伸缩,原来的直线仿射变换后还是直线,原来的平行线经过仿射变换之后还是平行线,这就是仿射。

仿射变换的矩阵是其次坐标形式的变换矩阵


这个矩阵包含的变换有旋转和平移,其实是两个矩阵的混合体,许多文章都对这个做了很详细的描述。仿射变换的数学公式里,是如何做到坐标点位置的平移呢?清楚这个才是弄明白仿射变换的关键。

这里有一个非常重要的图,这张图百度百科中就有。利用此图可以完成仿射变换公式的推导,推导如下:


一个点P在原始坐标系下的坐标是(Xsp,Ysp)。然后要完成旋转操作,旋转操作是基于原点的,如何得到旋转之后的点的坐标,这里用到一个技巧,坐标系中某个点的旋转可以等价地去旋转坐标轴,所以有了上图中以(Xs0,Ys0)为中心的虚线与屏幕水平垂直的坐标系。在这个坐标系中确定P的坐标,和在蓝色坐标系中确定旋转之后P的坐标是等价的。基于这个结论,我们可以通过简单的立体几何知识确定P在新坐标系中的坐标。P在新坐标系中的X坐标和Y坐标分别是


经典的仿射变换的模型呼之欲出了。整理上面两个式子得:


这就是仿射变换模型中旋转部分的原理,还有一步,就是平移。

旋转变换之后,我们确定了P点在新坐标系中的位置,然后在这个位置的基础上加上其在X轴和Y轴的偏移即可


仿射变换的矩阵横空出世。当然上图中对这个变换的处理更巧妙,它还是利用了不移动点移动坐标系的策略,将坐标系向相反方向移动了相应的距离。于是有了上图这个经典仿射变换模型的图示展现。上图中我们可以看到,整个在对P点进行仿射变换的过程中,P点的位置并没有移动,我们是通过不断的坐标系的调整来间接达到P点移动的效果,这充分说明了一件事:运动都是相对的。矩阵理论是运动是相对的这一哲学思想的深刻体现,有兴趣大家可以阅读一下这篇文章http://blog.youkuaiyun.com/xiaojidan2011/article/details/8213873。

Halcon学习---01仿射变换知识点 重点是仿射变换的旋转、平移、缩放,以及通过点对点的转换 阅读详情

相关推荐

OpenCV学习笔记15_仿射变换与透视变换

文章目录一、仿射变换什么是仿射变换公式推导插值方法:双线性插值二、透视变换三、代码四、结果原图翻转(上下左右)大小变化绕中心旋转偏移opencv结果:缩小透视变换 一、仿射变换 什么是仿射变换 仿射变换也称仿射投影,是指几何中,对一个向量空间进行线性变换并接上一个平移,变换为另一个向量空间。所以,仿射变换其实也就是在讲如何来进行两个向量空间的变换。 对于一幅图像,可以看作很多个坐标的集合,每个坐标可以代表一个向量,由此可以将图像看作向量集合,那么在二维坐标系上: 公式推导 假设存在一个向量空间V: V=(a

qq_40595787的博客 6475

第六章 - 图像变换 - 图像拉伸、收缩、扭曲、旋转[1] - 仿射变换(cvWarpAffine)

拉伸、收缩、扭曲、旋转是图像的几何变换,在三维视觉技术中大量应用到这些变换,又分为仿射变换和透视变换。仿射变换通常用单应性建模,利用cvWarpAffine解决密集映射,用cvTransform解决稀疏映射。仿射变换可以将矩形转换成平行四边形,它可以将矩形的边压扁但必须保持边是平行的,也可以将矩形旋转或者按比例变化。透视变换提供了更大的灵活性,一个透视变换可以将矩阵转变成梯形。当然,平行四边形也是

狂奔的蜗牛 5万+

【OpenCV】-仿射变换

仿射变换(Affine Map)又称仿射映射,是指在几何中,一个向量空间进行一次线性变换并接上一个平移,变换为另一个向量空间的过程。保持二维图形之间的相对位置保持不变,平行线依然是平行线,且直线上的点的位置顺序不变。如上,点1、2、3(在Image 1中形成一个三角形)与Image 2中的三个点是一一映射的关系,且它们仍然形成三角形,但形状已经和之前的不一样的,可以通过这样的两组三点求出仿射变换,然后把这种变换应用到图像中去。第五个参数:插值方法的标识符。第三个参数:2 x 3的变换矩阵,求得的仿射变换。.

qq_44859533的博客 6480

一文搞懂仿射变换

导读 在图像处理中,我们经常需要对图像进行各种操作如平移、缩放、旋转、翻转等,有时候我们还需要将图像投影到另一个平面来对图像做一些矫正,然而这些操作都与仿射变换和透视变换有着莫大的联系。通过本篇文章,你能够知道它们的实现原理以及如何应用它们,并且知道它们的适用场景。 仿射变换 仿射变换也称仿射投影,是指几何中,对一个向量空间进行线性变化并接上一个平移,变化为另一个向量空间。所以,仿射变换其实也就是...

修炼之路 2万+

opencv仿射变换GetAffineTransform的总结

拉伸、收缩、扭曲、旋转是图像的几何变换,在三维视觉技术中大量应用到这些变换,又分为仿射变换和透视变换。仿射变换通常用单应性建模,利用cvWarpAffine解决密集映射,用cvTransform解决稀疏映射。

never give up的博客 3万+

OpenCV(十一):图像仿射变换

仿射变换是由平移、缩放、旋转、翻转和错切组合得到,也称为三点变换。仿射变换可以通过一个2x3的仿射变换矩阵来表示,该矩阵包含了平移、缩放、旋转和剪切等变换的参数。仿射变换矩阵的一般形式如下:其中 (A, B) 和 (C, D) 控制了图像的旋转和缩放,(Tx, Ty) 控制了图像的平移。对于一个点 P(x, y) 在原始坐标系中,经过仿射变换后得到的新坐标 P'(x', y') 可以通过公式计算。仿射变换函数:warpAffine()图像旋转:getRotationMatrix2D() 计算仿射变换get

weixin_63357306的博客 6032

python 仿射变换

PCV-chapter03 记录学习Python Computer Vision的过程 第三次 Homography(单应性变换) 图像变换的方法很多,单应性变换是其中一种方法,单应性变换会涉及到单应性矩阵。单应性变换的目标是通过给定的几个点(通常是4对点)来得到单应性矩阵。单应性变换是将一个平面内的点映射到另一个平面内的二维投影变换。平面指的是图像或者三维中平面表面,单应性变换的具有很强的实用性...

wzdbjl的博客 8751

Halcon算子解析——仿射变换

文章目录hom_mat2d_identity(:::HomMat2DIdentity)hom_mat2d_rotate(::HomMat2D,Phi,Px,Py:HomMat2DRotate)hom_mat2d_scale(::HomMat2D,Sx,Sy,Px,Py:HomMat2DScale)hom_mat2d_translate(::HomMat2D,Tx,Ty:HomMat2DTranslate)hom_mat2d_slant(::HomMat2D,Theta,Axis,Px,Py:HomMat2D

Yi_Ming_888的博客 2796

什么是仿射变换

仿射变换(Affine Transformation)是一种几何变换,它是一组保持平直性和比例性的线性变换和平移的组合。简单来说,仿射变换会将直线映射为直线,保持线段之间的比例关系,但可能会改变图形的角度和大小。仿射变换广泛应用于计算机视觉、图像处理、深度学习等领域。例如,在图像旋转、缩放、平移、剪切等操作中,仿射变换是核心工具。

彬彬侠的博客 6463

放射矩阵求解,仿射算子

主要涉及基于RANSAC算法的放射变换的研究,改代码仅完成仿射变换部分

SQL注入绕过information_schema:实战技法与替代路径详解

SQL注入是Web安全领域的核心漏洞类型,其原理是通过构造恶意SQL语句,干扰应用程序与数据库的正常交互逻辑,从而窃取或篡改数据。在渗透测试与CTF竞赛中,绕过常见防护措施是提升技术能力的关键。当标准的信息收集方式受阻时,例如无法访问information_schema数据库,攻击者需要掌握替代的元数据获取方法。这些技术价值在于模拟真实环境中日益严密的防御体系,锻炼在受限条件下的系统性信息收集思维。典型的应用场景包括存在WAF过滤、权限限制或编码干扰的实战环境。本文将围绕SQL注入这一核心,深入探讨如何利用

weixin_33980459的博客 427

opencv 仿射变换

文章目录一、仿射变换二、求解仿射变换三、opencv 函数支持1.getAffineTransform()函数2.getRotationMatrix2D()函数3.warpAffine()函数四、测试代码 一、仿射变换 仿射变换可以理解为矩阵乘法(线性变换)和向量加法(平移)的变换。本质上,一个仿射变换代表了两个图像之间的关系,可以分别表示为: 1.旋转(线性变换) 2.翻译(向量加法) 3.缩放操作(线性变换) 仿射变换通常使用2×3矩阵表示: 将M乘于一个二维向量[x, y],例如图像像素坐标,最终可

weixin_44901043的博客 7154

【超详细】基于YOLOv8的PCB缺陷检测

印刷电路板(PCB)瑕疵数据集:是一个公共的合成PCB数据集,由北京大学发布,其中包含1386张图像以及6种缺陷(缺失孔,鼠标咬伤,开路,短路,杂散,伪铜),用于检测,分类和配准任务。本文我们选取了其中适用与检测任务的693张图像,随机选择593张图像作为训练集,100张图像作为验证集。

weixin_45679938的博客 2万+

仿射变换是什么

仿射变换(Affine Transformation)是一种二维几何变换,可以将平面上的一个图形通过线性变换和位移变换到另一个位置。仿射变换包括以下基本操作:平移、缩放、旋转、剪切和镜像。仿射变换保持了图形的“仿射性质”,即保持直线、平行线和比例关系。

m0_57236802的博客 1666

Linux Wireless之80211(nl80211, cfg80211, mac80211)

Linux Wireless之80211(nl80211, cfg80211, mac80211)前言在Linux无线子系统中,cfg80211、mac80211和nl80211是三个关键的组件,它们共同工作以实现对802.11设备的配置和管理。cfg80211负责内核空间的通用API,mac80211负责具体的MAC层实现,而nl80211则作为用户空间与内核空间之间的桥梁,用于配置管理和通信。Netlink 是一个 Linux 中的 socket 类型,用于在内核与用户空间之间传递事件。

DD'Notes 1478

智护健康:基于 ESP32 的可穿戴式心率血氧远程监测手环设计与实现

随着健康管理理念的普及,可穿戴式健康监测设备成为刚需。本文设计了一款基于 ESP32 芯片的可穿戴式心率与血氧远程监测手环,通过集成专业生物传感器采集生理数据,借助 ESP32 的无线通信能力实现数据远程传输,搭配手机 APP 与云平台完成数据存储、分析与预警。文中详细阐述了硬件选型、模块接线、软件设计流程及核心代码实现,该手环具备低功耗、高精度、实时性强等特点,可满足日常健康监测与远程照护需求。

weixin_42300449的博客 1198

halcon的仿射变换总结

halcon的仿射变换算子解析

YOULANSHENGMENG的博客 3222

构建自己的 Qt 插件系统

Qt 本身提供了插件相关的技术,但并没有提供一个通用的插件框架!倘若要开发一个较大的 GUI 应用程序,并希望使其可扩展,那么拥有这样一个插件框架无疑会带来很大的好处。

青春不老,奋斗不止! 2万+

halcon 仿射变换功能函数,

1.仿射变换有:平移、旋转、缩放、斜切。 2.要进行仿射变换,必须先获取变换矩阵。要获取变换矩阵,必须先获取特征点坐标、角度等信息,几何匹配和bolb是获取特征点的高效方法,除此之外还有其它方法,只要能稳定的求出特征点即可。 3.仿射变换流程 (1.)获取特征点坐标、角度 (2.)计算仿射变换矩阵 (3.)对图像、区域、轮廓进行仿射变换 4.根据特征点、角度计算仿射变...

u013407012的专栏 5019

OpenClaw 开机自启配置:Windows/macOS/Linux 全平台技术指南

OpenClaw 开机自启全平台配置指南 本文提供了在Windows、macOS和Linux系统上配置OpenClaw开机自启的完整技术方案。主要内容包括: Windows配置:提供三种方法(Windows服务、任务计划程序、启动文件夹),详细说明服务脚本创建、服务注册和测试流程 macOS配置:使用LaunchAgent实现开机自启,包含配置文件创建和加载方法 Linux配置:通过systemd服务实现,包括服务单元文件创建和启用步骤 系统要求:明确硬件(64位CPU/4GB内存)和软件(各平台操作系统版

一键难忘的博客 2992

C#联合Halcon机器视觉框架源码—升级版

相较于之前的NxtVision,本软件代码架构更加合理,且新增。对源码有需求的,订阅本专栏后,私信我领取。、原来的vb脚本改为。

Z's Palace 1411
上一篇: Mat类型中的CV_8UC3、CV_32FC3以及对应的迭代器模板参数Vec3b,Vec3f的一点自己的理解
下一篇: QT中QWidget、QDialog及QMainWindow的区别
熊彬程的博客
博客等级 码龄11年 208粉丝 51原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值