首页 >> 解决方案 >>行业(yè)解决(jué)方案(àn) >> 双眼可以测距和建立(lì)立(lì)体环(huán)境(jìng),双摄像头可(kě)以吗?
详细内容

双眼(yǎn)可以测距和建立立体环境,双摄像头可以吗?

答案是可以!

这方面一(yī)直是计算机视觉的研究(jiū)热点,并且(qiě)已经有(yǒu)了不错的(de)成果!本人研究生阶段主(zhǔ)要(yào)做三维重(chóng)建(jiàn),简(jiǎn)单写(xiě)一些自己(jǐ)所了解的(de)。

首先三维(wéi)和(hé)二维的区别,这个(gè)大家都(dōu)容(róng)易理解,二(èr)维只(zhī)有x、y两个轴,比如一张素描画,我们整体的感觉是“平(píng)”的,而三维则是多了一(yī)个(gè)z轴的维(wéi)度,这个z轴的直观理(lǐ)解(jiě)就是点离我们的距离,也(yě)即 “depth(深度)”。

再来看(kàn)看我们人眼,人眼是(shì)一个典(diǎn)型的双目系统,大家(jiā)可以做(zuò)个小实验:闭上(shàng)一只(zhī)眼睛,然后(hòu)左右手分别拿着一只笔,试着让笔尖相碰,哈哈,是不是(shì)有(yǒu)怀疑人生的感觉? 我们分别用左右眼看同一个物体,可以清(qīng)楚地感觉(jiào)到图像的差异,这个差异就是我们形(xíng)成三(sān)维视觉的基(jī)础,有了这(zhè)左右眼图(tú)像的差异,配合大脑(nǎo)强大的识别(bié)匹配(pèi)能力,我们就能(néng)基本确定物(wù)体离(lí)我们的(de)距离(lí),也即(jí)之前说的(de)"深度(dù)",上个实验中我(wǒ)们(men)只睁开一只眼睛,虽然能清楚的看到左(zuǒ)右手中(zhōng)的笔,但是(shì)大脑没法得(dé)出深度信息,所(suǒ)以你在“上下左右”方向上能准确定位,但(dàn)是“前后”方向上却无能为力。

现在来说说左右图(tú)像(xiàng)的(de)“差异”到“深度”的转换,这里可能需要一点点空(kōng)间几何知识,其实也很(hěn)简单

1.jpg

物体上的点p12分别对应左右图像上(shàng)点(diǎn)p1和p2,求解p1、p2、p12构成的三角形,我们就能得到点(diǎn)p12的坐(zuò)标,也就能(néng)得到p12的深度。这(zhè)个计算对于人(rén)脑来说是(shì)小case,我们更多地依赖经(jīng)验(yàn)和强大的脑补能力,虽然我们(men)不能计算(suàn)出某个物体离我(wǒ)们的(de)精确距离,我们却能非常准确地建立物体(tǐ)距离的相对关系,即哪个物(wù)体在前,哪个在后(hòu),这对日常生活(huó)已经足够了。

而我们做工程上的双(shuāng)目视觉(jiào)三维重(chóng)建,核(hé)心目标就是解(jiě)上(shàng)图所示的三角形(xíng),相机可以抽象成一(yī)个简单的(de)透视系统(tǒng):

2.jpg



空(kōng)间点p经过相机(jī)成像,映射(shè)到图像上点(x,y),其中Oc是相机光心,WCS、DCS、ICS分别是世界坐标系、设备(相机)坐标系、图像坐标系。空间点p到相机图(tú)像上(shàng)点的几何变换可以用相机(jī)内参来描述,具体(tǐ)公式就不说了(le),可以简单地理解(jiě)为相机拍(pāi)照是对点(diǎn)的(de)几何(hé)坐标(biāo)变(biàn)换(huàn),而相机内参就是决定这个变换的(de)一些参数。

继续看之前的光(guāng)学三角(jiǎo)关系(xì)图,O1、O2分别是左右相机的(de)光心,现(xiàn)在我们(men)要做的就是确定(dìng)这两个(gè)相机的相对位(wèi)置(zhì)关系(xì):可以用旋转矩阵(zhèn)R和平移向量T来(lái)描述,确定了R和T,两个相机的(de)位置关系就确定了,这个步(bù)骤叫做相机的(de)外参标定。一般的(de)做法是用三维重建的逆过程来做,即由(yóu)一(yī)系列已知的p1、p2和p12来(lái)求解光学三角形,估计出最优的(de)R、T。简而言之,外参标定确定(dìng)相(xiàng)机(jī)之间的相(xiàng)对位置关系。

好了,现在我们只(zhī)需要知道(dào)p1、p2的坐标(biāo),我们就(jiù)能轻松(sōng)算出p12的坐标,完成三维重建。我们把p1、p2称为一个点(diǎn)对(pair),他(tā)们是同一个(gè)空(kōng)间点在不同相机中的成像点。寻找这样的点对的过(guò)程称为立体匹配,它是三维重建最关键,也可以说是最难的一步。我们(men)都玩过(guò)“大家来找(zhǎo)茬”,找的是两幅(fú)图的(de)不同点,而立体匹配则是找(zhǎo)“相同点”。对人脑来说,这个问(wèn)题太easy了,给你同一个物体(tǐ)的两幅图,你能轻松找出一副(fù)图像上(shàng)的点在另一幅图像(xiàng)中的对应(yīng)点,因为我们人脑的物体识别、分割(gē)、特征(zhēng)提取等(děng)等能力实在(zài)太(tài)强了,而且性(xìng)能特别高,估计几(jǐ)岁(suì)的小孩就(jiù)能秒(miǎo)杀现有的(de)最好的算法。

常规的匹配(pèi)算法(fǎ)一般通过(guò)特征点来做,即分别(bié)提取左右图像的特(tè)征点(常用sift算法(fǎ)),然(rán)后基于特征点配合对极几何等约束条件进行匹(pǐ)配。不过这类匹配算法精度都不是太高,所以人们又想了其它一些方法来(lái)辅助匹(pǐ)配,结构光方法是目前用的比较(jiào)多的,原(yuán)理不(bú)难理解,就是向目标物体(tǐ)投射编码(mǎ)的光,然后对相机图像进行(háng)解(jiě)码,从而得到(dào)点对,举个(gè)简单的例子,我们把一个小(xiǎo)方块的(de)图案用投影仪(yí)投到物(wù)体表面,然后识别左(zuǒ)右相机图(tú)像中的小方块,如果这个小方(fāng)块很小,看作一(yī)个点(diǎn),那(nà)么我(wǒ)们就得(dé)到了一个点对。

贴个线(xiàn)结构光的示意图:

3.jpg


这个(gè)示意图里(lǐ)面只有一个(gè)相机,其实投(tóu)影仪是(shì)可以看作相机的:投出的光图案(àn)照射在物体表面(miàn)相当(dāng)于被拍照的物体,而投影(yǐng)仪的(de)输(shū)入图(tú)像则相当于相机(jī)拍出来(lái)的照(zhào)片,所(suǒ)以投影仪也是(shì)当作相机并用同样的方法(fǎ)来(lái)标定内外参,即上图本质上也是双目视觉系统。

总结(jié)一(yī)下,双目视觉三维重建的基本过程:相机内参、外参标(biāo)定 -> 立体匹配(pèi) -> 光学三角(jiǎo)形求解,这里面最(zuì)核心、也最影响重建效果(guǒ)的就是(shì)立体匹配。

贴几张本人(rén)实验的图(用的最基(jī)本的格(gé)雷码结构光):


4.jpg


以(yǐ)上说的都是双目视觉三(sān)维重建,实(shí)际上(shàng)还有其它(tā)一些重建方法(fǎ),如早期的探(tàn)针法,简单粗(cū)暴,直(zhí)接拿探针在物体表面移(yí)动,一个点一个点测坐标;还有一类通过(guò)直接测(cè)距来进行三(sān)维(wéi)重建,如超声波、TOF,即对物体表(biǎo)面逐(zhú)点用声、光程差(chà)来测距,从而得到三维点云;光学方法分(fèn)为(wéi)主动和被动两大类,主(zhǔ)动和(hé)被动指的(de)是是否向物(wù)体表(biǎo)面投光,主动(dòng)方法有激(jī)光扫(sǎo)描(miáo)、相位测(cè)量以及我毕设的研究课题结构光方(fāng)法等(děng),被动方法有单目视觉(如阴影法)和上(shàng)文(wén)所述(shù)的立体视差方(fāng)法等等。

目前还有一类(lèi)三维(wéi)重建方法非常火:SFM(Structure from Motion),这类(lèi)方法的特点是不需要(yào)相(xiàng)机参数,仅(jǐn)仅根(gēn)据一系(xì)列图像(xiàng)就能进行三维重建(jiàn),也就是(shì)说,你随便拿个(gè)手机对着物体拍一些图片就能重建这个物体的三维模型,大家可以去体验下AutoDesk公司的Autodesk 123D Catch,除了近距离物体(tǐ)的三维重建,SFM还有更激(jī)动人心(xīn)的应用:大型场景(jǐng)三(sān)维重建,感兴趣的可以(yǐ)看看这个(gè)Building Rome in a Day,他们在flickr上搜索两百万(wàn)张罗马的照片,通过亚马(mǎ)逊(xùn)提供的计算服(fú)务,最终得出整(zhěng)个城市的三维模型,是不是又有(yǒu)云计算、大数据(jù)的(de)感觉。。。这波人貌似有几个是Google Earth团队的。

原理(lǐ)上(shàng)其实也(yě)不难理解:从特(tè)征点(diǎn)对入手,反向求解出相机的内外参(cān)(选定一个相机作为世界坐(zuò)标系),然后重建更多的(de)点。

大家(jiā)应该对电影《普罗米修斯》里(lǐ)面的(de)用于洞(dòng)穴建模的飞行器(qì)印象深刻:

5.jpg

底(dǐ)部(bù)导(dǎo)航
友情链接
联系方式
公司二维码
扫一扫,添加(jiā)二维码!

联系电话:010-34342322

联系(xì)邮箱:XXXXXXXX@163.com

联系地址:北(běi)京市XXXXXXXXXXXXXX

微(wēi)信公众(zhòng)号:xxxxxxxxxx

客服QQ:12345678910

技术支持: 建站ABC | 管理登录
欢迎咨询(xún) seo seo

游艇会(中文)官方网站

游艇会(中文)官方网站