15.立体几何——几何为一个简单的立体系统,左右测验,视差的深度_3

目录

几何为一个简单的立体系统

左右 测验

视差的深度

结论


几何为一个简单的立体系统

我们要做的是,对一个非常简单的立体系统,逐步进行几何变换。我们要做的第一件事,是假设光轴是平行的。就是这些(如图1),因为光轴垂直于像平面,这意味着像平面是平行的。实际上,我们假设它们是共面(coplanar)(如图2)。

 1 2

所以这里画的这个图像就好像我们在向下看我们的摄像设备系统,all right? 摄像机向外看(如图),这是图像平面,我们向下看这个平面,这让我们看看立体图像中物体是如何从左向右移动的。  

对于我们的几何,我们假设我们的相机被 基线B 隔开并且两个相机的焦距都是 f,所以 f 在两边(如图1)。对于这两个相机,它们的焦距相同。现在,我们假设这个场景中有一个点 P(如图2)。它在摄像机坐标系中的距离是 Z。记住,Z 是一直到投影中心的距离(如图3),okay? 所以这不是像平面的 Z 坐标,而是投影中心的 Z 坐标。如果你还记得,为了数学上的方便,我们把像平面放在投影中心的前面这样就不会倒转。

1 2 3

所以,点P 投射到左边和右边的图像中(如图1)。现在,为了确保你注意,在左图上,距离将是正的(如图2)。 在右边的图像上,距离将是负的(如图3),因为我们的原点正好在中间(如图4)。 0在这里是在图像平面的中间,知道吗? 因此,左侧的距离为正,右侧的距离为负。 这些量 xl 和 xr 意味着是距离,所以它们是正值,但是它们是否正在移动取决于我们所处的图像。

1 2 3

4

这里是我们的点pl 和 点pr,就像我说的那样,这个距离 xl 是光轴的右边,所以它是正的,点pr 是在左边。因此,0的左边是-xr,all right? 所以现在我们可以做一些简单的几何来计算xs,ps,bs,ps和恰好在图片中的其他所有东西之间的关系。 我们想要找到 z 的表达式,所以我们首先使用类似的三角形,就像我们为投影所做的那样,但这些是不同的三角形。 就像这里下面显示的。 我们有第一个三角形,它基于点p和每个投影。 那个三角形显示为黄色(如图2)。 然后还有另一个三角形,它基于投影中心和P点。这一个以蓝色显示(如图3)。 看看它是怎么褪色的。让我备份一下。 它就是。 那是另一个三角形(教授两个三角形变换操作)。 Okay,我们现在有两个相似的三角形。

 1 2 3

所以我们可以写下边之间的关系(如图1)。 即B减去这些距离(如图2),这就是这个距离(如图3),okay,就是这个距离(如图4),这只是Z减去f(如图5),与总基线B的比例相同,我会在这里画出来(如图6),就是总Z(如图7) 

 1 2 3

4 5 6

7

okay,那些相似的三角形给了我们这种关系,所以很少的重新排列给我们一个Z的表达式(如图1), 左边和右边的量的差,叫做视差(disparity)。这里很酷的是我们根据这两者之间的差异来计算场景中的距离(如图3,4)。

1 2

4

现在你应该问自己一个小问题。 当视差(disparity)为0时会发生什么? 当视差为0时,这意味着场景中的某些点投影到左图像中与右图像相同的点。 换句话说,当我从左边移动到我的右边相机时,这一点似乎没有移动。 记住,我们有一个测验。 我们谈到月亮是如何跟随你的。 嗯,月亮跟着你,因为Z离你很远,左右都没有变化。 所以视差是0,所以深度是什么? 这是无限的,okay。 这是视差和深度之间的反比关系。

左右 测验

有两个图像从立体设置。 其中一个在右手边有一棵树(如图1),一个人站在它前面有点左边(如图2)。 立体图像差别不大。 在第二张图片中,我有相同的树(如图3)。 但是这个人的相对位置有点不同(如图4)。 你能弄清楚哪个是左图像,哪个是右边的图像? 

1 2  

3

4

左边的图像是左图像,右边的图像是右图像(如图)。

从左图中,我们知道这个人正站在树前。 现在,如果您想象两个立体相机,那么您会注意到左侧相机正在从右侧观察场景(如图1),反之亦然。 同样,如果我们看一下右边的图像并考虑两个立体相机,这里也是一样的(如图2)。 现在,如果我们知道这个人站在树前,那么唯一有意义的组合是左图像来自左摄像头而右图像来自右摄像头(如图3)。 考虑它的一种方法是以下。 如果将视点移到右侧,则距离较近的对象将比远离的对象向左移动更远。

1  2

3

视差的深度

所以在这里我们将向您展示一些视差的例子,okay? 在左侧,你会看到,在这个窗口的底部有一个点,okay? 在这张右边的图像中,顺便说一下,我花了一段时间才弄清楚哪个图像是什么,哪个图像是右边的,我通过在树上向右看这些来做。 你可以看到,在右边的图像中,烟囱已经相对于它后面的树向左移动(如图2),所以这是右边的图像。 发生的事情是,如果我像第一张图片一样到达此图像中的相同位置,我就不会落在窗户上。我实际上必须移动这一点(如图3),以达到那个窗口点。 这就是视差。

1

2

3

事实上,你可以构建所谓的视差图(disparity map)(如图1),对于每个点x,y,你可以说出什么是视差。 你会注意到这个视差图像的一些东西,对,请注意这里的东西比那里的东西更亮(如图2)。 Well,我刚刚制作了一个视差图像,并且记住,视差与深度成反比,因此更亮的值是更接近的zs(如图3)。 all right。 并且较小的值更远(如图4),并且,非常暗的,非常小的值将会更远(如图5)。 okay,这就是从视差到深度的概念。

2

3 4

结论

立体几何内容到此结束。这个想法是,如果你校准了相机,如果你知道匹配,那么你就可以计算深度。这是一般的。我们做的唯一的数学运算是视差和深度之间的关系。在下一课中,我们要做的是我们将专注于实际发现差异。找出一幅图像中的哪个点与另一幅图像中的哪个点相匹配。这就是你们在作业中要做的,然后我们要做的是标定也就是确定相对视图。顺便说一下,你们会在不同的作业中做这个,但是,我们会一次一个地分解这些。


编程中最没用的东西是源代码,最有用的东西是算法和数据结构。

计算几何 目录 ㈠ 点的基本运算 1. 平面上两点之间距离 1 2. 判断两点是否重合 1 3. 矢量叉乘 1 4. 矢量点乘 2 5. 判断点是否在线段上 2 6. 求一点饶某点旋转后的坐标 2 7. 求矢量夹角 2 ㈡ 线段及直线的基本运算 1. 点与线段的关系 3 2. 求点到线段所在直线垂线的垂足 4 3. 点到线段的最近点 4 4. 点到线段所在直线的距离 4 5. 点到折线集的最近距离 4 6. 判断圆是否在多边形内 5 7. 求矢量夹角余弦 5 8. 求线段之间的夹角 5 9. 判断线段是否相交 6 10.判断线段是否相交但不交在端点处 6 11.求线段所在直线的方程 6 12.求直线的斜率 7 13.求直线的倾斜角 7 14.求点关于某直线的对称点 7 15.判断两条直线是否相交及求直线交点 7 16.判断线段是否相交,如果相交返回交点 7 ㈢ 多边形常用算法模块 1. 判断多边形是否简单多边形 8 2. 检查多边形顶点的凸凹性 9 3. 判断多边形是否凸多边形 9 4. 求多边形面积 9 5. 判断多边形顶点的排列方向,方法一 10 6. 判断多边形顶点的排列方向,方法二 10 7. 射线法判断点是否在多边形内 10 8. 判断点是否在凸多边形内 11 9. 寻找点集的graham算法 12 10.寻找点集凸包的卷包裹法 13 11.判断线段是否在多边形内 14 12.求简单多边形的重心 15 13.求凸多边形的重心 17 14.求肯定在给定多边形内的一个点 17 15.求从多边形外一点出发到该多边形的切线 18 16.判断多边形的核是否存在 19 ㈣ 圆的基本运算 1 .点是否在圆内 20 2 .求不共线的三点所确定的圆 21 ㈤ 矩形的基本运算 1.已知矩形三点坐标,求第4点坐标 22 ㈥ 常用算法的描述 22 ㈦ 补充 1.两圆关系: 24 2.判断圆是否在矩形内: 24 3.点到平面的距离: 25 4.点是否在直线同侧: 25 5.镜面反射线: 25 6.矩形包含: 26 7.两圆交点: 27 8.两圆公共面积: 28 9. 圆和直线关系: 29 10. 内切圆: 30 11. 求切点: 31 12. 线段的左右旋: 31 13.公式: 32
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值