计算图片中的物体的实际尺寸的一种方法

从一幅图像中无法测出物体的长度,因为缺乏参照物,但可以测出两个平行物体的长度比例。如果已知一个物体的实际大小(比如在图片中放上一枚1元硬币或者知道某个柜子有多高),那么就可以通过长度比和参照物的已知长度测出物体长度。具体方法见文献[1],因为需要一些矩阵运算和摄像头成像方面的推导,这里只大概说说原理。楼上诸位所述也是这种原理。


图像测量利用了摄像头成像也就是小孔成像的几个性质[2]:
第一,摄像头把平行的直线映射为图像上相交直线,笔直的铁轨在远处相交就是这个道理,这个交点被称为消隐点(vanish point)。可以认为平行空间直线在无穷远处相交,消隐点则是这一交点的像。所有水平的平行直线族都各自相交于无穷远处的一点,这些点构成无穷远直线,这条直线在图像上的像叫地平线。我们所居住的三维空间中存在三组相互垂直的直线(例如水平两组,x轴和y轴方向,竖直一组,z轴方向),所有x、y、z方向上的平行直线在一张图片上会分别相交于各自的一个消隐点。并且水平直线对应的两个消隐点如果连起来,连线就是地平线。测量的关键,就是要得到这些消隐点,因此有很多竖直线(如书架)或水平线(如地板砖)的图片就容易测量。

第二,摄像头把三维空间投影到二维的图像上,保持直线交比不变,交比是四个点两两“比例的比例”。所以如果在三维空间中的一条直线上有四个点,那么它们映射到图片上的四个点后,这四个点的交比不变。




文献[1]通过这些条件,给出了从图片上计算长度比的公式。通过示意图我们可以更加直观地看出它是如何工作的:


首先,假设我们已知蓝色小人Bob的身高,要求出红色小人John的身高,只需要知道两人的身高比值就可以:

我们用大写字母表示真实的坐标,随后用小写字母表示图片上的像素坐标。两人的身高比值BE/AF可以这么求:首先连接AB,然后过E点做AB的平行线交AF于点D,因为ABED是个矩形,所以要求的比值就等于AD/AF。然而,这种判断是在三维空间中做出的,当物体成像为图片,所有点的位置都会发生变化(不要问我圆头为什么会变成方头):

其中最显著的变化是平行线相交了,由此我们可以找到三个方向的消隐点,这可以通过对竖直和两组水平平行线求延长线获得:

注意我们把水平平行线对应的两个消隐点连接起来,得到了一条在(无穷)远处的直线,每个人都熟悉它,它就是地平线。地平线上所有的点都有一个性质:从其上一个点引出的所有直线都是相互水平平行的。


因此点D在图上的坐标d是这么求出的:
1. 画出地平线
2. 延长ab,交地平线于点c
3. 延长ce,交af,也就是John于点d
因为点c在无穷远处,所以cd和ca在空间中是平行直线,abed也就是上面说述真实空间中矩形ABED的像。
(转载者说明:如果cd也是水平面上一直线,那么cd和ca互相平行是正确的,但是本文中cd是不在水平面上的)
然而,知道了某些点在图像上的像,它们的实际长度比是无法直接从图上测得的,因为大家的深度不一样,这时就要利用成像前后一条直线上四个点交比不变的性质,考察红色小人John身上的三个点A、D、F以及其延长到无穷远处的点G,就可以得到(大写字母换成小写字母):
(AD/AF)/(GD/GF)=(ad/af)/(gd/gf)
因为已经求出了点d,等式右边所有的量都可以从图像上测出。等式左边的点G在真实空间是所有垂直直线的交点,这个点在无穷远,和无穷相比点F和点D的差异可以忽略不计,所以GD/GF=1,这样就得到最终结果:
AD/AF = (ad/af)/(gd/gf)

[1] Criminisi A, Reid I, Zisserman A. Single view metrology[J]. International Journal of Computer Vision, 2000, 40(2): 123-148.
[2] Hartley R, Zisserman A. Multiple view geometry in computer vision[M]. Cambridge university press, 2003.
  • 15
    点赞
  • 78
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
### 回答1: 《计算机视觉 : 一种现代方法 第二版 pdf》是一本介绍计算机视觉领域基础理论和方法的书籍。计算机视觉是一门研究如何让计算机能够“看”的学科,它使用计算机科学和人工智能的方法来解决从图像或视频获取、处理和理解信息的问题。 这本书是计算机视觉领域的经典教材之一,第二版对第一版进行了更新和扩充。书首先介绍了计算机视觉的基本概念和应用领域,包括图像处理、模式识别和三维重建等。接着,书籍详细阐述了计算机视觉的各种算法和技术,包括图像特征提取、目标检测与跟踪、图像分割和图像匹配等。 此外,该书还介绍了计算机视觉的一些高级主题,如深度学习在计算机视觉的应用、立体视觉和物体识别等。书的内容深入浅出,既易于理解又具有一定的深度,适合作为计算机视觉领域的入门教材或用于相关专业人员的学习和研究参考。 《计算机视觉 : 一种现代方法 第二版 pdf》的特点包括内容详尽全面、理论与实践相结合、案例丰富。读者通过学习该书,可以获得对计算机视觉领域的全面了解,掌握计算机视觉的基本原理和常用技术,为进一步深入研究和应用提供基础。 最后,这本书广泛应用于计算机科学、人工智能、机器学习、图像处理等相关专业的教学和研究领域。无论是学生、研究人员还是从业人员,都可以通过阅读该书来提高对计算机视觉的认识和应用能力。 ### 回答2: 《计算机视觉:一种现代方法第二版》是由David A. Forsyth和Jean Ponce合著的计算机视觉领域的经典教材。该书详细介绍了计算机视觉的基础理论、算法和相关应用,旨在帮助读者深入理解计算机视觉的概念和实践。 该书共分为16个章节,内容包括图像处理、图像特征、几何与相机模型、图像检索、物体识别与跟踪等方面。通过对这些章节的学习,读者可以系统地了解计算机视觉的基本原理和技术,从而为实际应用提供参考。 其,该书第二版相较于第一版进行了重大更新和改进。新版书包含了最新的理论和算法,如深度学习、卷积神经网络等,以及一些实际应用案例,如人脸识别、自动驾驶等。此外,书还涵盖了现代计算机视觉领域的前沿研究和挑战,引导读者深入思考和探索未来发展方向。 《计算机视觉:一种现代方法第二版》以其系统性、全面性和权威性而受到广大学习者和研究者的欢迎。读者不仅可以通过该书学习计算机视觉的基本概念和技术,还可以通过练习题和实践项目提升自己的实际操作能力。年轻的研究者可以通过深入研读此书,拓展自己的研究领域;工程师和开发者可以将书的理论和技术应用于实际项目,提升工作效率和质量。 总之,《计算机视觉:一种现代方法第二版》是一本权威、实用的计算机视觉教材,对于想要深入学习和应用计算机视觉的读者而言,具有极高的参考价值。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值