社区
数据结构与算法
帖子详情
透视变换问题:三维空间中,圆经过透视变换后的结果除了一条线和圆的情况外,是否就是椭圆情况了?
HUNTON
2008-06-20 05:01:13
以前讨论过椭圆透视变换的结果问题,不过没什么结果。如果特殊些,只考虑圆的情况,不知透视变换后的结果除了一条线和圆外,结果是否就是椭圆情况了?
...全文
1124
18
打赏
收藏
透视变换问题:三维空间中,圆经过透视变换后的结果除了一条线和圆的情况外,是否就是椭圆情况了?
以前讨论过椭圆透视变换的结果问题,不过没什么结果。如果特殊些,只考虑圆的情况,不知透视变换后的结果除了一条线和圆外,结果是否就是椭圆情况了?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
18 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
HUNTON
2008-06-24
打赏
举报
回复
“如果除了一个圆,你还能找到另外两个比较有标志性的点变换前后的相对坐标”,其它的标志性的点必须要在圆与椭圆的对应关系确定后才能找到。因为只知道它距离圆多少距离的,所以先要做一个圆与椭圆的对应关系,然后按照这个关系去旋转搜索该距离下的对应的点是否为要的点。
HUNTON
2008-06-24
打赏
举报
回复
视点有限映射也不唯一,这个我知道。你说的交比不变性,应该就是复变函数里面的保交定理了,就是知道三个对应点的对应关系就可以得到变换规则了。
mathe
2008-06-24
打赏
举报
回复
映射方案不唯一。
可以做一个以椭圆短半轴为半径的圆柱,然后在圆柱上做一个斜割面,使得割出来椭圆同这个椭圆全等就可以构造对应的透视点在无穷远的透视变换了。
mathe
2008-06-24
打赏
举报
回复
射影变换里面有个交比不变性的定理挺有用,可以加以利用
一条直线上4个点A,B,C,D的交比定义为AB:AD/CB:CD,或者我们可以写成(AB*CD)/(AD*BC)
交比不变是指投影变换后得到四个共线的点A',B',C',D'
那么A,B,C,D的交比和A',B',C',D'的交比。有了这个结论,确定了一条直线上任意三个点的对应关系,整条直线就确定了
mathe
2008-06-24
打赏
举报
回复
建议你可以看一下射影几何,其实就是射影变换。如果除了一个圆,你还能找到另外两个比较有标志性的点变换前后的相对坐标,可能应该可以恢复原图像了
mathe
2008-06-24
打赏
举报
回复
有限透视点,那么对应的就是圆锥的斜截面。解同样不唯一。
HUNTON
2008-06-24
打赏
举报
回复
针对mathe说的有点疑问,就是摄像头拍的图,透视点不是在无穷远处的,这里构造透视点在无穷远处透视变换感觉不合适。我实际处理的情况是,一个原始的东西是一个圆,圆的外面还有其他的东西,用摄像头拍摄图片,并检测得到了该圆的边界(椭圆),现在想把该椭圆影射到原来的圆上,虽然映射的方法很多,但我想要的映射是能保证根据这个映射关系圆外的点也可以找到对应的,允许旋转,但必须全部的圆外的点旋转的角度是一样的。不知说明白了没有。
HUNTON
2008-06-23
打赏
举报
回复
知道“二次曲线射影变换都是二次曲线”这题就算解决了。顺便再和大家讨论一下,在一幅图中,有一个已经找到边界的椭圆,如何将这些边界点映射到原来的圆周上?
tailzhou
2008-06-23
打赏
举报
回复
晕,都忘了什么是圆锥了;
tailzhou
2008-06-23
打赏
举报
回复
而圆锥的斜截面(不通过底面)为一个椭圆;
google的一段:
“由于平面截圆锥(或圆柱)得到的图形有可能是椭圆,所以它属于一种圆锥截线。
例如:有一个圆柱,被截得到一个截面,下面证明它是一个椭圆(用上面的第一定义):
将两个半径与圆柱半径相等的半球从圆柱两端向中间挤压,它们碰到截面的时候停止,那么会得到两个公共点,显然他们是截面与球的切点。
设两点为F1、F2
对于截面上任意一点P,过P做圆柱的母线Q1、Q2,与球、圆柱相切的大圆分别交于Q1、Q2
则PF1=PQ1、PF2=PQ2,所以PF1+PF2=Q1Q2
由定义1知:截面是一个椭圆,且以F1、F2为焦点
用同样的方法,也可以证明圆锥的斜截面(不通过底面)为一个椭圆”
tailzhou
2008-06-23
打赏
举报
回复
实际上,以透视点为顶点,以圆为底面做一圆锥,再假设该圆锥无限延长;
那么圆的投影就是该圆锥与投影平面的截面;
mathe
2008-06-23
打赏
举报
回复
[Quote=引用 4 楼 HUNTON 的回复:]
多谢各位,mathe说的“二次曲线射影变换都是二次曲线”这个有理论依据吗?圆变换后有没有可能变成鸡蛋形的。
[/Quote]
鸡蛋形是什么意思?
关于“二次曲线射影变换都是二次曲线”这个结论射影几何里面有。包含二次曲线的退化情况(直线)
其实还有一个结论也可以使用。我们可以查看任意一个圆锥或圆柱,然后作任意一平面同它相交,那么相交出来的图形必然是二次曲线(这也是为什么二次曲线被称为圆锥曲线)
tailzhou
2008-06-23
打赏
举报
回复
5楼结论的太武断了。无视之
tailzhou
2008-06-23
打赏
举报
回复
如果是点透视,且投影点不在无穷远处;
就是鸡蛋形的;
因为同样长度的线段,跟投影点的距离越近,他的投影就越长;
这样圆的投影肯定不满足椭圆的方程;
HUNTON
2008-06-23
打赏
举报
回复
多谢各位,mathe说的“二次曲线射影变换都是二次曲线”这个有理论依据吗?圆变换后有没有可能变成鸡蛋形的。
tailzhou
2008-06-21
打赏
举报
回复
google到一个老帖子,lz应该是说的这个帖子吧;
http://topic.csdn.net/t/20031109/15/2442780.html
假设lz的题目:
"4 楼saint001(saint001)回复于 2003-11-09 17:55:56 得分 0
这个问题考虑的是平行投影
投影点在无穷远处
投影方向垂直于投影平面"
那么将投影平面垂直移动,投影应该是保持不变的,切当圆与投影平面相交时,圆上的点与其投影点重合;
将投影平面 垂直移动到 圆心,将两平面相交的直线a作为两平面的x轴,
该直线在圆内的部分即为圆的一条直径,该直线与圆的两交点在投影平面上的坐标为(-r,0)与(r,0);
继续垂直移动投影平面,那么两平面相交的直线a'总是平行于x轴;a'直线与圆的两交点此时与投影平面上的投影点重合;
也就是对于圆上的任意点p(x,y),其投影点在投影平面上的x坐标x'是保持不变的,x'=x;
假设两平面的夹角为w,那么对于圆上的任意点p(x,y),,其投影点在投影平面上的y坐标 y'==y*cos(w);
所以圆上的任意点p(x,y),其投影点在投影平面上的坐标为p'(x',y')==p(x,ycos(w));
其满足方程 x'^2+y'^2/cos(w)^2=x^2+(y*cos(w))^2/cos(w)^2==x^2+y^2==r
mathe
2008-06-21
打赏
举报
回复
二次曲线射影变换都是二次曲线,所以结果只能是圆锥曲线。
不过如果圆上部分点被投影到无穷远点,结果就可以是抛物线或双曲线了
tailzhou
2008-06-20
打赏
举报
回复
考虑圆心在(0,0)的单位圆x^2+y^2=1;
如果透视变换后,圆上的所有的点(x,y)都变换为点(x/a,y),其中a是一定值,
那么圆透视变换后就是一椭圆 x^2/a^2+y^2=1;
计算机图形学图像生成及曲线曲面代码
用c++做计算机图形学的二维几何
变换
及基本图像生成。
计算机图形学基本图形的生成
计算机图形学基本图形的生成,里面包含很多基本图形生成的算法,对初学者很有帮助
计算机软件-商业源码-几何
变换
.zip
计算机软件-商业源码-几何
变换
.zip
素描基础入门完全教程二.ppt
素描基础入门完全教程二.ppt
计算机图形学课件
计算机图形学的课件 prof. Hertzman 经典
数据结构与算法
33,029
社区成员
35,337
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章