【学习记录】二次曲线、二次曲面、对偶二次曲线、对偶二次曲面

article/2025/10/25 19:27:57

一、二次曲线与对偶二次曲线

最近在看基于椭球体的物体SLAM过程中,经常涉及到椭球体的空间几何知识,这里先补充一下一些空间几何相关的基础,参考链接。
椭球体本身属于二次曲面的一种,二次曲面是对空间形状的描述,属于3d的内容,与之对应的2d描述是二次曲线,这里我们先从二次曲线开始,二次曲线简单来说就是高考题倒数第二题的考试内容,包括椭圆、双曲线和抛物线三种,这三种曲线来自于用一个平面切割二次曲面,最多可以得到三种曲线,即三种二次曲线。
在这里插入图片描述
对于一条二次曲线,我们可以使用代数形式对其进行描述:
在这里插入图片描述
这里的xy本身对应的是一个二次曲线上的坐标(x,y),当我们把坐标换为齐次坐标时,可以得到齐次坐标下的二次曲线表达式:
在这里插入图片描述
将该式子整理为矩阵形式可得:
在这里插入图片描述
由于该式子的右侧为0,因此我们可以对式子左右两侧同时除以一个常数,这里我们选择同时除以f,那么二次曲线的参数矩阵Q中的六个未知数就变成了五个,相当于我们不考虑二次曲线的尺度,让自由度减少一个变成了五个,也就是说对于任何一条二次曲线,我们可以用曲线上的五个点来解出矩阵Q,从而表示这个二次曲线。

由于我们对点的坐标使用的是向量的形式,我们也可以将其换为一条线的向量表示,形式上没有发生变化但是几何意义发生了变化。对于任何一条二次曲线,其切线可以表示为:
在这里插入图片描述
这里切线可以证明,主要是证明点x同时落在二次曲线和直线上,且直线和二次曲线相交与唯一一点,这里就不展开详细算了。有了切线的表示方式,那么我们可以用切线来表示切点x,将点x带入二次曲线的表达式,就可以得到用切线来表示的二次曲线:
在这里插入图片描述
在这里插入图片描述
为了式子的简介,这里我们将矩阵C的逆矩阵另作定义:
在这里插入图片描述
这时我们就得到了用切线表示的二次曲线,这种用切线表示的方式我们称为对偶二次曲线,也就是说二次曲线和对偶二次曲线本质上都是对二次曲线的形容,只不过表示方式不一样,用点来表示的称为二次曲线,而用切线表示的称为对偶二次曲线,切线会与二次曲线产生交点,两种表示方式正是通过相切来进行的联系。

二、二次曲面与对偶二次曲面

根据前面的推理,我们可以直接将二次曲线扩展到二次曲面上,对于任何一个二次曲面,我们都可以用代数形式对其进行描述,将代数形式中的坐标替换为齐次坐标后整理为矩阵形式,可以得到二次曲面的矩阵Q,两侧同时除以常数消除尺度同时减少一个自由度,对向量进行替换变成切面形式,切面进行整理并带入二次曲面表达式最终得到对偶二次曲面。
在这里插入图片描述

三、总结

无论是二次曲线还是二次曲面,带与不带对偶,区别就在于是否使用切线/面来对其进行描述,本质上说的还是同一个东西,在论文中使用的主要是二次曲面中的椭球ellipsoid,使用这一形式进行描述主要是在投影过程中的描述性更好,不会出现空间立方体那样不规则的投影结果,但是缺点在于椭球的自由度有八个,需要至少八个约束才能描述一个椭球,这更需要对空间物体的性质进行更加细致的研究。


http://chatgpt.dhexx.cn/article/a31Ud32d.shtml

相关文章

空间二次曲面数据拟合算法推导及仿真分析

在上一篇的博客球面数据拟合算法简介中,笔者详细介绍了关于空间球面数据拟合的算法公式推导并给出了相应的Matlab代码及其仿真分析。本次笔者将上面这一情况进行更一般的推广,即取消了球面数据这一限制,数据可以是椭球面形式的,也…

通过Python绘制九种二次曲面

二次曲面 python中绘制三维图需要将坐标系声明为3d。 球面方程为 x 2 y 2 z 2 R 2 x^2y^2z^2R^2 x2y2z2R2 写为极坐标形式为 x R sin ⁡ θ cos ⁡ φ y R sin ⁡ θ sin ⁡ φ z R cos ⁡ θ \begin{aligned} x&R\sin\theta\cos\varphi\\ y&R\sin\theta\sin\…

解析几何:第六章 二次曲面(1)球面 椭球面 双曲面

1.球面 1.球面方程,球心与半径 图形 方程 球心和半径 1 标准方程: xyzR 2 参数方程 (φ为经度,θ为纬度) 3 球面坐标方程 rR 球心:G(0,0,0) 半径:R   1 (x-a)(y-b)(z-c)R 2 参数方程&a…

解析几何:第六章 二次曲面(2)抛物面 二次锥面 柱面 一般二次曲面

4 抛物面 1.椭圆抛物面 (1)标准方程 (2)基本元素 *顶点 O(0,0,0) *主轴 Z轴 *主平面 OYZ平面:x0;OZX平面:y0 (3)当ab时,椭圆抛物线面是由…

二次曲面标准方程和分类记忆方法(更新)

二次曲面标准方程和分类记忆方法 一类曲面-球面:圆球面,椭球面 1、球面 球面方程最简单。 描述:中心在(x0,y0,z0),半径是r的所有点(x, y, z)的集合 令x00;y00;z00;得到中心在坐标原点的球面 …

MATLAB 画常见二次曲面汇总

一、螺旋线 1.静态螺旋线 a0:0.1:20*pi; hplot3(a.*cos(a),a.*sin(a),2.*a,b,linewidth,2); axis([-50,50,-50,50,0,150]); grid on set(h,erasemode,none,markersize,22); xlabel(x轴);ylabel(y轴);zlabel(z轴); title(静态螺旋线); 2.动态螺旋线 t0:0.1:10*pi; i1; hplo…

MATLAB-二次曲面

柱面:圆柱面;椭圆柱面;双曲柱面;抛物柱面 锥面:圆锥面;椭圆锥面 锥球面;球面 椭圆抛物面; 单叶双曲面;双叶双曲面 双曲抛物面; 旋转抛物面,…

二次曲面标准方程和分类记忆方法

二次曲面标准方程和分类记忆方法 一类曲面-球面:圆球面,椭球面 1、球面 球面方程最简单。 描述:中心在(x0,y0,z0),半径是r的所有点(x, y, z)的集合 令x00;y00;z00;得到中心在坐标原点的球面 …

解析几何 曲线与二次曲面 二次曲面的分类(2.3)

一.二次曲面 二.二次曲面的旋转不变量 三.特征方程和特征根 1.特征根(特征值)与主方向(特征方向,特征向量): 2.不同直角坐标系下的主方向: 3.二次曲面的标准形式: 引理1:非零实对称矩阵 D D D的特征根全是实数 引理2:非零实对称矩阵 D D D的3个特征根至少有…

几何-九种二次曲面类型

(一)椭圆锥面 (1)把z平方看成一个一直变大的常数,那么可以看出延z方向,是一个一直变大的椭圆。 (2)把一个x或y赋予0,显然是一个两条关于原点对称的直线。 由上即可判断…

常见曲面及其方程

目录 (1)柱面①抛物柱面【z x^2^】②圆柱面【x^2^ y^2^ 1】③椭圆柱面【x^2^/a^2^ y^2^/b^2^ 1】④双曲柱面【x^2^/a^2^ - y^2^/b^2^ 1】 (2)旋转曲面①锥面【x^2^/a^2^ y^2^/b^2^ z^2^/c^2^】②圆锥面【a^2^(x^2^ y^2^)…

OIM同步OID(OID-Connector 9.0.4.12)

一、OIM与OID同步。 1.安装文件及需要的包。 OID-Connector 9.0.4.12.rar:OID连接器9.0版本。 jndi-1_2_1.zip:jndi包。(貌似可以不要) ldap-1_2_4.zip:ldap包。 2.准备工作。 1)解压ldap-1_2_4.zip,从解压…

对OIM Web(UI)层进行压力测试

Oracle IDM中的默认配置保留20个专用于服务前端(UI)请求的线程 。 从根本上讲,这意味着应用程序服务器具有20个线程池,可用于为通过Web控制台(/ identity或/ sysadmin)访问OIM的用户提供服务。 对于Weblog…

java仿qq思路_java仿QQ聊天软件OIM艰辛之路(开源项目)

既然QQ能仿ICQ, 咱java也来个仿QQ. 在我刚学完java后,就想做点什么项目锻炼下自己的技能。凑巧的是,我一个同样学java的朋友在做一个仿qq的项目,不过他做的实在太丑了。 然后他想让我也一块做这个,我心想,像qq这么高难…

Patching OIM 11.1.1.5.0 to 11.1.1.5.3

本指南也可以应用到OIM11.1.1.5.1或11.1.1.5.2。 获取修补程序您将需要以下补丁: 1. Patch Name: 13106312Product: Oracle SOA PlatformRelease: 11.1.1.5.0 2. Patch Name: 13704894Product: Oracle Identity ManagerRelease: 11.1.1.5.0 Initial SetupCreate a director…

使用OIM的Design Console配置

1、运行安装oim的文件(我的是Oracle_IDM1/bin里面的config.sh),选择如下 next 第一个为主机名(电脑名) next...finish 2、启动designconsole 在Oracle_IDM2里面找到wlfullclient.jar拷贝到Oracle_IDM1/designconsole/ext里面。 运…

给oim_对OIM Web(UI)层进行压力测试

给oim Oracle IDM中的默认配置保留20个专用于服务前端(UI)请求的线程 。 这基本上意味着应用程序服务器具有20个线程池,可用于为通过Web控制台(/ identity或/ sysadmin)访问OIM的用户提供服务。 对于Weblogic &#x…

如何OIM 11.1.1.5.0打补丁到11.1.1.5.2

将OIM11.1.1.5.0安装好之后,如需要打补丁到11.1.1.5.2,则按照如下的步骤: 下载两个patch,一个是SOA的,一个是OIM的。Oracle官方文档说如果想要给OIM打补丁的话就需要先把SOA先升级。 官方文档的地址:https://updates.oracle.com/Orion/Services/download?type=readme&…

基于 JavaFX 开发的聊天客户端 OIM-即时通讯

OIM 详细介绍 一、简介 OIM是一套即时通讯的聊天系统,在这里献给大家,一方面希望能够帮助对即时通讯有兴趣研究的朋友,希望我们能够共同进步,另一个就是希望能够帮助到需要即时通讯系统的朋友或者企业,可以直接使用或者…

java仿QQ聊天软件OIM艰辛之路

既然QQ能仿ICQ, 咱java也来个仿QQ.在我刚学完java后,就想做点什么项目锻炼下自己的技能。凑巧的是,我一个同样学java的朋友在做一个仿qq的项目,不过他做的实在太丑了。 然后他想让我也一块做这个,我心想,像qq这么高难…