1、计算机图形学——2D变换与齐次坐标

计算机图形学:齐次坐标 点P移动到P’,则x’=x+Txy’=y+Ty。 阅读详情

一、2D变换

1、缩放变换

缩放变换就是将图形上的点的各个维度同时放大或者缩小,比如,讲一个图片的长宽都缩小0.5倍

则缩小之后,新的图片上的点(x', y')可以表示为

用写成矩阵的形式就是

如果长和宽缩放因子不一样,就把缩放因子单独写一下即可

对应的图形就是这样的

2、对称变换

对称变换就是变换前的图片和变换后的图片按坐标轴对称,例如按Y轴的对称变换结果如下

图形上每一点的Y轴坐标不变,但是横坐标都加了个负号

写成矩阵的形式就是这样的

3、剪切变换

剪切变换类似方形变平行四边形变化,但是在变换的过程中,有一个维度的坐标是不变的,比如下面的这个图,虽然图形被向右拉,但是每个点的Y轴坐标是不变的

变换后,最左边的每一条边都在直线y=(b/a)x上,以此类推,变换后,图片生所有的横坐标都移动了(a/b)y,所以,写成公式如下

写成矩阵的形式就是

当b=1时,上述矩阵变为如下形式

4、旋转变换

2D旋转变换一般是指绕着原点逆时针旋转

2D旋转过程如下图所示;

假定下图中正方形的边长为1,并旋转了θ角度,则下图中左上角定点坐标由(0,1)变为(-sinθ,cosθ)。右下角定点(1,0)的坐标分别变为(cosθ,sinθ)

所以,上述过程可以写成以下形式

展开上述矩阵,可得a=cosθ,c=sinθ,b=-sinθ,d=cosθ

所以,旋转矩阵可以写成

而旋转矩阵和他的转置矩阵相乘

结果是个单位矩阵,所以,旋转矩阵的转置矩阵=旋转矩阵的逆矩阵,所以,旋转矩阵是正交矩阵

5、小结

对于旋转,缩放,剪切和对称这四种变换,都可以写成下面的形式

而上述形式被叫做线性变换,所以,旋转,缩放,剪切和对称这四种变换都是线性变换

6、平移

当把左图中的图形平移了tx,ty ,图中任意一点的坐标都可以用如下公式表示

写成矩阵的形式就是

会发现,平移变换的矩阵形式不能满足上面第5点中的形式(后面多了个tx和ty的尾巴),所以,平移不是一个线性变换

7、逆变换

当一个图形通过矩阵M进行了变换之后,又想要恢复成之前的状态,这时候就需要进行逆变换操作,逆变换操作对应的是矩阵M逆矩阵

二、齐次坐标

在平移、旋转、缩放、剪切和对称变换中,只有平移变换是一个例外,为了将平移变换也写成线性变换的形式,所以引入了齐次坐标

齐次坐标就是将一个原本是n维的向量或者点扩展成n+1维的向量或者点

二维空间中的点和向量写成齐次坐标的形式如下

将上面的平移矩阵写成齐次坐标的形式就是

这样的话,平移变换就也符合5中的线性形势,也是一个线性变换了

同理,缩放和旋转也可以写成类似的形式

三、变换的组合

 如上图所示,如何将左图变成有图的样子

做法一:先平移再旋转

很明显,方法一无法满足要求

做法二 :先旋转再平移

方法二OK

通常,先进行一个线性变换再进行一个平移变换的这种形式统称为仿射变换

仿射变换通常可以写成下面的形式

对应的齐次坐标就是

通过这个例子也能看出,矩阵相乘的顺序很重要

上述例子中,只有两个变换矩阵,当变换次数变多时,变换矩阵也变多,对应的形式如下

四、2D变换的一个示例

将左图按照左下点进行旋转的变换矩阵如何表示?

正常来说,旋转都是按照原点进行逆时针旋转,所以此时可以先将图形平移至原点,再逆时针旋转一定的角度,最后再平移值目标位置。过程如下

根据1.8中的一般性公式,变换顺序是平移->旋转->平移,可以表示为

参考

GAMES101-现代计算机图形学入门-闫令琪_哔哩哔哩_bilibili

欢迎大家评论交流,作者水平有限,如有错误,欢迎指出

[计算机视觉] 什么是齐次坐标?为什么要引入齐次坐标? 0、参考链接 Homogeneous Coordinates 为什么要引入齐次坐标 1、问题:两条平行线可以相交于一点 在欧式空间中,同一平面的两条直线不能相交; 在透视空间中,两条平行线可以相交,火车轨道随着我们的视线越来越窄,最后两条平行线在无穷远处交于一点; 欧式空间描述2D/3D几何非常合适,但这种方法不适合处理透视空间的问题。 2、解决方法:利用齐次坐标解决这一问题 齐次坐标就是用N+1维来代表N维坐标; 我们可以在一个2D笛卡尔坐标(X, Y)末尾加上一个额外的变量 阅读详情

相关推荐

计算机图形学(三)|二维变换

本文介绍了2D图形变换的基本原理与应用。主要内容包括:1)图形变换的分类(建模变换与视图变换);2)常见2D变换类型(缩放、反射、剪切、旋转、平移)及其矩阵表示;3)齐次坐标的概念与作用,通过增加维度统一表示线性变换和平移变换。文章重点阐述了各种变换的数学表达式和矩阵推导过程,特别说明了平移变换需要借助齐次坐标扩展为3×3矩阵才能与其他变换保持形式统一。这些变换技术是计算机图形学中物体建模和视觉渲染的基础。

weixin_46441425的博客 2135

2D与3D图形的基本变换

准备爆更一波

midslucky的博客 1675

计算机图形学(1)(基础变换矩阵:缩放,旋转,平移)

计算机图形学与计算机视觉、数字图像处理的区别 计算机图形学,输入的是结构特征数据,输出的是图像信号; 计算机视觉,输入的是图像信号,输出的是结构特征数据; 数字图像处理,输入的是图像信号,输出的也是图像信号。 计算机图形系统的组成 从计算机图形系统的功能来看组成 从计算机图形系统的软件硬件来看组成 ...

Immaturecld的博客 6884

2D坐标系下的点的转换矩阵(平移、缩放、旋转、错切)

有了以上平移、旋转、缩放和错切矩阵后,我们就可以通过矩阵乘法求得二维平面上点P任意变换后坐标。帮助理解反向计算转换矩阵,该问描述的是正向的变换。

关注工业机器人应用 3235

计算机图形学-二维变换与二维观察

一、基本概念 几何变换: 图形的几何变换指对图形的几何信息经过平移、比例、旋转等变换后产生新的图形;即图形在方向尺寸和形状方面的变换,需要改变图形对象的坐标描述。 齐次坐标: n维→n+1维 用(n+1)维向量表示n维向量,ex:二维平面上的点P(x,y)表示为(hx,hy,h);h≠0.n维空间类推; 注意:n维空间用非齐次坐标表示的向量坐标值唯一,齐次坐标表示不唯一(因为有比例系数); 规范化齐次坐标:即h = 1.规范化齐次坐标提供了用矩阵运算将二/三/n维空间中的一个点集从一个坐标系.

weixin_51538888的博客 2115

计算机图形学————3d建模转换

学习目标 1、理解齐次坐标系的使用 2、学习不同类型的3d转换和复合变换的概念 3、能够使用坐标变换在一个坐标系与另一个坐标系之间切换 4、学会用openGL 做坐标变换 齐次坐标系 homogenous coordinates 1、将n维实体表示为n+1维实体 2、允许将所有线性变换表示为矩阵乘法;和加减法 ...

qq_41901755的博客 1376

【计算机图形学】图形变换(平移变换、比例变换、旋转变换、对称变换、错切变换、复合变换)

【计算机图形学】图形变换(平移变换、比例变换、旋转变换、对称变换、错切变换、复合变换)

m0_65787507的博客 5077

【硬件开源实战】STM32G070RBT6开发板从设计到避坑全解析

本文全面解析了STM32G070RBT6开发板从硬件设计到避坑的实战经验。详细介绍了电源设计、时钟电路、PCB布局等关键环节,分享了成本控制、焊接测试、软件开发和外设驱动的实用技巧,帮助开发者高效完成项目开发。

weixin_26897585的博客 232

【深度好文】2D坐标系下的点的转换矩阵(平移、缩放、旋转、错切)

本文主要用于回顾二维平面上点的转换矩阵相关概念和应用。 1. 平移 (Translation) 在2D空间中,我们经常需要将一个点平移到另一个位置。假设空间中的一点P,其用坐标表示为(x,y);将其向 x方向平移 tx,向y方向平移ty, 假设平移后点的坐标为(x’,y’),则上述点的平移操作可以归纳为如下公式: 使用齐次矩阵表示如下: 将上述过程用代码实现如下: import matplotlib import matplotlib.pyplot as plt import numpy as np

sgzqc的专栏 4697

比亚迪唐/秦开发者必看:253个车辆接口实战指南(附常用功能调用示例)

本文为比亚迪唐/秦开发者提供了一份详尽的车辆接口实战指南。文章聚焦于比亚迪开放的253个车辆接口,从开发环境搭建、核心状态监控到高频控制功能(如空调与充电管理),结合真实代码示例,帮助开发者快速上手并规避常见问题,高效开发车载应用。

weixin_28327051的博客 604

Akamai-3.0补环境逆向-DHL快递查询

那么我们的请求过程就是:1.请求首页的html文件,通过re或xpath,提取到这个url,拼接官网地址,得到这个js文件的地址。返回的_abck为0,表示环境正确,请求搜索接口返回200,说明返回的_abck正确,如果过程错误或环境补的有问题会返回403或428这两个状态码。那么,就是这个包返回的,而且这个包需要请求两次,第一次get请求,返回的这个-1的cookie,第二次请求,带上一个sensor_data的参数,进行post请求,最终返回这个0的cookie,代表你过了akamai这个盾。

2302_76420666的博客 2856

webgl学习之路(二)——齐次坐标

简而言之,齐次坐标就是用N+1维来代表N维坐标 在一个2D笛卡尔坐标末尾加上一个额外的变量w来形成2D齐次坐标,因此,一个点(X,Y)在齐次坐标里面变成了 (x,y,w),并且有 X = x/w Y = y/w 例如,笛卡尔坐标系下(1,2)的齐次坐标可以表示为(1,2,1),如果点(1,2)移动到无限远处,在笛卡尔坐标下它变为 (∞,∞),然后它的齐次坐标表示为(1,2,0),因为(1/0, 2/0) = (∞,∞),我们可以不用”∞"来表示一个无穷远处的点了 我们把齐次坐标转化为笛卡尔坐标的方法是前

mmmMMM12345的博客 436

SNAP计算哨兵二号的叶面积指数(LAI)

对于哨兵二号数据以及LANDSAT8数据,SNAP提供已经集成好的模块计算LAI。在Optical->Thematic Land Processing->Biopyhsical Processor目录下面。 对于经过Sen2Cor处理好的数据,需经过重采样才可进行计算。重采样工具在Raster->Geometric->Resampling。 如果选择Biopyhsical Processor S2_10m进行计算,需要将所有的波段都重采样为10米(哨兵二号的第二波段为10米,可据此波

gxwwww的博客 9413

计算机图形学一:基础变换矩阵总结(缩放,旋转,位移)

变换矩阵总结摘要1 2D线性变换1.1 缩放(scaling)1.2 剪切(shearing)1.3 旋转(rotation)2 3D线性变换2.1 3维缩放(scaling),剪切(shearing),旋转(rotation)2.2 3维绕任意轴旋转3 仿射变换3.1 位移(translation)Reference 摘要 变换矩阵 (Transformation Marices) 在图形学中的...

吃人的博客 3万+

Android逆向进阶篇 Charles + Drony Vpn绕过代理检测方案 获取猫眼App数据

Android逆向进阶篇 Charles + Drony Vpn绕过代理检测方案 获取猫眼App数据

曾用名:极客柒 1851

基于STM32的宠物智能照护嵌入式系统设计

嵌入式系统是实现物联网终端设备本地化感知、决策与执行的核心技术载体,其关键在于多传感器融合、低功耗执行控制与轻量级云边协同。本文围绕环境监测(温湿度、烟雾、余粮)、机电执行(步进电机食盘、继电器风扇)和可靠通信(MQTT+ESP8266)三大技术主线,深入解析STM32F103在资源约束下的外设调度策略、ADC采样抗干扰设计、DHT11时序精准控制及HX711称重滤波算法等工程实践要点。系统强调本地闭环优先原则,确保离线基础功能可用,同时通过阿里云IoT平台实现远程监控与告警联动,为中小型智能硬件项目提供可

weixin_29155599的博客 291

计算机图形学一:变换矩阵-Transformation Matrices

计算机图形学、变换矩阵

西电卢本伟的博客 1万+

YOLOv11 改进 - 注意力机制 | Deformable-LKA 可变形大核注意力:自适应采样网格优化特征捕捉,提升不规则目标感知

本文介绍了可变形大核注意力(D-LKA Attention)及其在YOLOv11中的结合。D-LKA Attention是一种简化的注意力机制,采用大卷积核利用体积上下文信息,通过可变形卷积灵活调整采样网格,适应多样数据模式。它有2D和3D版本,3D版本在跨深度数据理解上表现出色,共同构成了D-LKA Net架构。我们将D-LKA Attention集成进YOLOv11,在模型的检测头部分引入deformable_LKA_Attention模块。实验表明,该方法在分割任务上表现优于现有方法,提升了模型的检测

魔改工程师的博客 1170

计算机图形学【GAMES-101】1、矩阵变换原理Transform(旋转、位移、缩放、正交投影、透视投影)

Lecture3~41 2DTransformations1.1 Linear Transforms线性变换1.2 Scale1.3 Shear1.4 Rotation1.5 Translation2 齐次坐标3 3DTransformations3.1 Scale3.2 Translation3.3 Rotation3.4 四元数4 MVP Transformation4.1 Model Transformation4.2 View Transformation4.3 Projection Transfo

记录值得记录的东西 8779

CEEMDAN算法及其应用

本博文主要介绍CEEMDAN算法的原理及其在信号去噪方面的应用

总结论文中的算法并给出论文的复现代码 6万+

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

计算机图形学入门-变换

变换是计算机图形学中最重要的基础之一。本节笔记记录了如何用矩阵描述和分析点的变换。

qq_40765480的博客 968

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

计算机图形学:【Games101】学习笔记02——变换(二维与三维、模型、视图、投影)

本文总结了GAMES101课程中关于计算机图形学变换的核心内容。首先介绍了二维基本变换(缩放、剪切、旋转)及其矩阵表示,这些线性变换满足可加性和齐次性。针对平移变换无法用2×2矩阵表示的问题,提出了齐次坐标的解决方案,通过增加w坐标将2D点/向量扩展为3维表示,从而统一了所有变换的矩阵形式。文章还简要提及了变换在建模和视图中的应用,包括3D到2D的投影过程。这些变换知识为后续学习三维图形学奠定了基础。

做cv的小昊的博客 3643

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

“透视除法” —— 齐次坐标和投影

转载自 写给大家看的“透视除法” —— 齐次坐标和投影 作者:StanGame 链接:https://www.jianshu.com/p/7e701d7bfd79 来源:简书 术语 在大多数3D工作中,我们参照的依据是欧几里得几何学中的三维空间(X, Y, Z)。 但在某些情况下,参照投影几何更适用,除了 X, Y, Z 分量外,增加一个 W 分量,这个四维空间叫做**“投影空间”,在四维...

【黑键】 2917

关于齐次坐标的理解

在数学里,齐次坐标(homogeneous coordinates),或投影坐标(projective coordinates)是指一个用于投影几何里的坐标系统。在齐次坐标的定义中,一个点的齐次坐标乘上一个非零标量,所得坐标会表示同一个点。[2] 齐次坐标:https://zh.wikipedia.org/wiki/%E9%BD%90%E6%AC%A1%E5%9D%90%E6%A0%87。有理贝兹曲线-定义于齐次坐标内的多项式曲线(蓝色),以及于平面上的投影-有理曲线(红色)W 为投影平面。

gqk01的博客 4096

计算机图形学复习下

计算机图形学复习下 四、二维变换 五、二维观察 六、三维变换及三维观察 七、消隐 八、真实感图形绘制

weixin_45613955的博客 2689
上一篇: 如何使用TeamViewer在局域网内远程连接另一台电脑
下一篇: 2、计算机图形学——3D变换
Master Cui
博客等级 码龄9年 1408粉丝 224原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值