齐次坐标

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

http://www.cnblogs.com/kesalin/archive/2009/09/09/homogeneous.html

问题: 两条平行线会相交

 
铁轨在无限远处相交于一点

在欧几里得几何空间里,两条平行线永远都不会相交。但是在投影空间中,如右图中的两条铁轨在地平线处却是会相交的,因为在无限远处它们看起来相交于一点。

在欧几里得(或称笛卡尔)空间里描述2D/3D 几何物体是很理想的,但在投影空间里面却并不见得。 我们用 (x, y) 表示笛卡尔空间中的一个 2D 点,而处于无限远处的点 (∞,∞) 在笛卡尔空间里是没有意义的。投影空间里的两条平行线会在无限远处相交于一点,但笛卡尔空间里面无法搞定这个问题(因为无限远处的点在笛卡尔空间里是没有意义的),因此数学家想出齐次坐标这个点子来了。

 

解决办法:齐次坐标

由 August Ferdinand Möbius 提出的齐次坐标(Homogeneous coordinates)让我们能够在投影空间里进行图像和几何处理,齐次坐标用 N + 1个分量来描述 N 维坐标。比如,2D 齐次坐标是在笛卡尔坐标(X, Y)的基础上增加一个新分量 w,变成(x, y, w),其中笛卡尔坐标系中的大X,Y 与齐次坐标中的小x,y有如下对应关系:

X = x/w
Y = y/w 

笛卡尔坐标中的点 (1, 2) 在齐次坐标中就是 (1, 2, 1) 。如果这点移动到无限远(∞,∞)处,在齐次坐标中就是 (1, 2, 0) ,这样我们就避免了用没意义的"∞" 来描述无限远处的点。

为什么叫齐次坐标?

前面提到,我们分别用齐次坐标中的 x 和 y 除以 w 就得到笛卡尔坐标中的 x 和 x,如图所示:

 

仔细观察下面的转换例子,可以发现些有趣的东西:
 
上图中,点 (1, 2, 3), (2, 4, 6) 和 (4, 8, 12) 对应笛卡尔坐标中的同一点 (1/3, 2/3)。 任意数量积的(1a, 2a, 3a) 始终对应于笛卡尔坐标中的同一点 (1/3, 2/3)。因此这些点是“齐次”的,因为他们始终对应于笛卡尔坐标中的同一点。换句话说,齐次坐标描述缩放不变性(scale invariant)。

证明: 两平行线可以相交

笛卡尔坐标系中,对于如下两个直线方程:

 
如果 C ≠ D,以上方程组无解;如果 C = D,那这两条线就是同一条线了。

下面我们用 x/w, y/w 代替 x, y 放到投影空间里来求解:

 
现在我们就可以在 C ≠ D 的情况得到一组解 (x, y, 0),代入得 (C - D)w = 0,因为 C ≠ D,所以 w = 0。因而,两条平行线相交于投影空间中无限远处的一点 (x, y, 0)。

齐次坐标在计算机图形学中是有用的,将 3D 场景投影到 2D 平面的过程中就用到它了。

相机标定(一) —— 深入理解齐次坐标及其作用 一、什么是齐次坐标和齐次坐标系 齐次坐标 数学好几年基本没碰了,齐次坐标的理解是一个相机标定问题的难点。单从定义上来讲,齐次坐标(投影坐标)就是用N+1维来代表N维坐标(点和向量),也可说用齐次坐标来表示笛卡尔坐标,具体的数学表达式可以这样写: 在直角坐标系点坐标(x,y)末尾加上一个额外的变量w,一个点(X,Y)在齐次坐标里面变成了(x,y,w),并且有 X = x/w Y = y/w 这也就解决了笛卡尔坐标系无法表示无穷远点的问题,按照人的视觉,两条平行线在无穷远处会相交,采用直角坐标系无法对这一现象进 阅读详情

相关推荐

齐次坐标&&四元数:

(一)齐次坐标: “齐次坐标表示是计算机图形学的重要手段之一,它既能够用来明确区分向量和点,同时也更易用于进行仿射(线性)几何变换。”—— F.S. Hill, JR。:   对于一个向量v以及基oabc,可以找到一组坐标(v1,v2,v3),使得v = v1 a + v2 b + v3c          (1) 对于一个点p,则可以找到一组坐标(p1,p2,p3),使得 p –

Anna的博客 3788

关于齐次坐标

读http://www.songho.ca/math/homogeneous/homogeneous.html 1.问题: 如何用计算机表达:两条平行的直线在投影空间中,相交在极远处。 2.解决的办法: homogeneous坐标,即坐标增加一个分量。 3.为何称为homogeneous: 英文单词homogeneous翻译为同质的,同类的。 齐次坐标(1,2,1), (2,4,2)...

weixin_30407613的博客 161

Vivado 2018.3实战:用IDELAYE3和ISERDESE3搞定高速ADC数据采集(附仿真源码)

本文详细介绍了在Vivado 2018.3中使用Xilinx UltraScale架构的IDELAYE3和ISERDESE3原语实现高速ADC数据采集的实战方法。通过分析5GHz采样系统的时序挑战,提供从PCB布局到Vivado实现的完整解决方案,包括精密时序校准、多相位数据重组及系统级调试技巧,并附赠仿真源码助力工程师快速掌握高速数据采集技术。

weixin_30567225的博客 582

GCC编译器背后的故事

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录一、pandas是什么?二、使用步骤1.引入库2.读入数据总结 一、pandas是什么? 示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。 二、使用步骤 1.引入库 代码如下(示例): import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as sns import warn

m0_46145395的博客 368

【ESP32实战】SPI驱动ILI9341屏幕:从基础绘图到汉字显示

本文详细介绍了如何使用ESP32通过SPI驱动ILI9341屏幕,从基础连接、SPI初始化到实现基础绘图、数字显示及汉字显示的全过程。文章包含实用的代码示例和优化技巧,帮助开发者快速掌握屏幕驱动技术,提升显示性能。特别针对常见问题如花屏、刷新率等提供了解决方案。

weixin_29164091的博客 620

npm install failed如何办?

上网搜索,说是网络配置不太对。按照如下几步,保证解决问题。在运行npm install指令时,出现如下错误。

xiezhipu的博客 879

如何判断两个平面相交_1. 相交的平行线

按计划应该还是写点数论的,但椭圆曲线太难,最近还在补基础,就写点这个过程中的新知识吧,顺便当复习了。这篇还是科普向,所以省略了不少细节,想看严格讨论的请见参考列表。目录全新的几何平行线的交点射影平面和贝祖定理黎曼面全新的几何在距今2300多年的埃及,几何诞生了。数学史上最重要的人物之一,公理化的鼻祖——欧几里得靠着一本几何原本奠定了几何的基础。五条公理成为了后世两千年里几何研究的核心,人们在欧几里...

weixin_39946327的博客 2024

【SpringBoot 3.x 第56节】再见 Feign?原生 HTTP 接口强势上位,这才是微服务调用的正确姿势!

🏆本文收录于《滚雪球学SpringBoot 3》,专门攻坚指数提升,本年度国内最系统+最专业+最详细(永久更新)。    本专栏致力打造最硬核 SpringBoot3 从零基础到进阶系列学习内容,🚀均为全网独家首发,打造精品专栏,专栏持续更新中…欢迎大家订阅持续学习。 如果想快速定位学习,可以看这篇【SpringBoot3教程导航帖】,你想学习的都被收集在内,快速投入学习!!两不误。    若还想学习更多,可直接前往《滚雪球学SpringBoot(全版本合集)》,涵盖SpringBoot所有版本教学文章

**My Coding Family** 1016

为什么要引入齐次坐标,齐次坐标的意义(一)

问题:两条平行线可以相交于一点 在欧氏几何空间,同一平面的两条平行线不能相交,这是我们都熟悉的一种场景。 然而,在透视空间里面,两条平行线可以相交,例如:火车轨道随着我们的视线越来越窄,最后两条平行线在无穷远处交于一 点。 欧氏空间(或者笛卡尔空间)描述2D/3D几何非常适合,但是这种方法却不适合处理透视空间的问题(实际上,欧氏几何是透视 几何的一个子集合),2维笛卡尔坐标可以表示为...

追求卓越583的博客 3万+

《QGIS空间数据处理与高级制图》【目录】

《QGIS空间数据处理与高级制图》是一本面向GIS技术人员和学生的进阶手册,重点提升数据处理效率和专业制图标准化水平。全书涵盖空间数据预处理、矢量编辑、栅格处理、坐标系统应用和符号化设计等核心内容。书中详细介绍了批量数据转换、拓扑检查、遥感影像处理、自定义坐标系创建等实用技能,并提供了模型构建器和PyQGIS脚本实现自动化操作。通过大量实战案例和问题排查指南,帮助读者从基础使用进阶到专业应用,适合测绘、规划、环保等行业的GIS从业者参考使用。

LuckyHanMo的博客 372

从零开始学 AUTOSAR:深入浅出 SAE J1939 诊断通信管理器(J1939Dcm)深度完整版

SAE J1939 是美国汽车工程师学会制定的重型车辆 CAN 总线通信标准,覆盖卡车、客车、工程机械、农机、船舶等,是商用车领域的 “通用语言”。基于CAN 2.0B 扩展帧(29 位 ID)(车规主流)PGN(参数组号)+ SPN(可疑参数号)核心标准:J1939-21:数据链路层(CAN 帧格式、地址声明)J1939-71:应用层(普通信号、报文)诊断层(核心!J1939Dcm 依据)J1939-81:网络管理(地址管理、节点检测)

getusushu的博客 111

为什么要引入齐次坐标,齐次坐标的意义(二)

前面我们提到了图像的缩放变换和旋转变换,可以用矩阵乘法的形式来表达变换后的像素位置映射关系。 那么,对于平移变换呢?平移变换表示的是位置变化的概念。如下图所示,一个图像矩形从中心点[x1,y1]平移到了中心点[x2,y2] 处,整体大小和角度都没有变化。在x方向和y方向上分别平移了tx和ty大小。 显然: 这对于图像中的每一个点都是成立的。写成矩阵的形式就是: 我们再把前面的...

追求卓越583的博客 1万+

13、基因相似性度量的相关性及特征选择研究

本文研究了基因相似性度量和特征选择在生物学中的应用,详细介绍了GO术语相似性度量的多种方法,包括语义度量和路径长度度量,并分析了不同方法在酵母和人类数据集上的表现。研究发现,Avg-sum方法和基于路径长度的度量在多数情况下效果较好。此外,通过晚期辐射毒性预测的案例研究,探讨了特征选择的重要性及可能面临的过拟合和噪声干扰问题,并提出了相应的解决策略。

js777的博客 127

关于齐次坐标的理解

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

gqk01的博客 4097

AutoJs调用DeepSeek大模型接口实战教程 AutoJs接入DeepSeek、 DeepSeek API调用 、 手机脚本接入大模型

通过这篇文章,我们用 AutoJs 成功接入了 DeepSeek Chat API。使用发送请求在 Header 里正确携带 API Key从里拿到最终返回结果这样一来,你就可以在 AutoJs 里实现一个智能助手脚本,甚至做更复杂的 AI 自动化工具。

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 465

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

齐次坐标系统:什么是齐次坐标?为什么要引入齐次坐标?

本文详细介绍了齐次坐标系统。在计算机图形学、计算机视觉、相机标定、三维建模等领域,齐次坐标是一个非常重要的数学工具。齐次坐标是一种表示几何点的方式,它通过添加一个额外的坐标分量,将n维空间中的点表示为n+1维空间中的点。其作用在于:在转型(计算机图形图形的几何变换)问题中,引入齐次坐标可以将不是线性变换的平移变换与旋转、缩放等齐次变换统一成矩阵乘法的形式,使得多次变换可以通过矩阵连乘来实现形成更复杂的变换,从而简化计算和降低运算量。

欢迎来到我的优快云个人博客主页! 3297

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

齐次坐标与非齐次坐标

什么是齐次坐标系?为什么要用齐次坐标系? 在研究矩阵的时候,看到该坐标系。想知道两个问题。1.什么是齐次坐标系。2.为什么要用齐次坐标系

龙雪的博客 4707

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

为什么要引入齐次坐标?

问题来源:在研究相机标定的过程中,从世界坐标系变换到相机坐标系和从相机坐标系与图像坐标系之间的转换时,都用到了齐次坐标升了一维,为什么不能直接进行转换呢? 从世界坐标系到相机坐标系的变换开始说起, 相机运动是一个刚体运动,它保证了同一个向量在各个坐标系下的长度和夹角都不会发生变化。这种变换成为欧式变换。可以想象为你把手机抛到空中,在它落地之前,只可能有空间位置和姿态的不同,而它自己的长度、各个...

JennyBi的博客 5217

什么是齐次坐标与非齐次坐标,他们的区别是什么

齐次坐标与非齐次坐标的不同

Turn life into a dream, and then turn dreams into reality 4767
上一篇: glVertexPointer函数说明
下一篇: OpenGL ES 2.0 Programme Guide
Robincui2011
博客等级 码龄15年 21粉丝 24原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值