① 视差的视差计算法
观测者在两个不同位置看同一天体的方向之差。可用观测者的两个不同位置之间的距离(基线)在天体处的张角来表示。天体的视差与天体到观测者的距离之间存在着简单的三角关系,因此能以视差的值表示天体的距离,而以此测定天体距离的方法称为三角视差法。在测定太阳系内天体的距离时,以地球半径为基线,所得视差称为周日视差。周日视差随着天体的高度变化而改变,当天体位于地平时滚弯,它的周日视差达到极大值,称为周日地平视差。当观测者位于赤道时,天体的周日地平视差具有最大值,称为赤道地平视差。在测定恒星的距离时,以地球毕肆绕太阳公转的轨道半长径(即太阳和地球的平均距离)为基线,所得视差称为周年视差。假设恒星位于黄极方向时的周年视差称为恒星周年视差,简称恒星视差,用π表示。恒星视差只与恒星至太阳的距离有关,所以通常用π表示恒星距离。所有恒星的π值都小于1〃。由于太阳在空间运动所产生的视差称为长期视差,也称视差动。它取太阳在一年里所走过的距离为基线。
解题过程
人们常常用“天文数字”来形容数字的巨大,事实也确实如此:日-地距离是149597 870千米,仙女座星系距离我们236万光年,整个宇宙的尺度大约是1500y光年(大约合94608ykm)。 这些硕大无朋的数字是什么得出的?天文学家用的是什么尺子?窗口望去我可以判断大街上的行人距离我多远,这依靠的是周围的参照物和生活常识,要测量旗杆的高度可以把它放倒然后用尺子量。然而对于天文学家来说,这些方法全都是遥不可及——的确是遥不可及,天文学家的工作就是研究那些遥不可及的天体。那么,天文学家是如何测量距离的呢? 从地球出发 首先来说说视差。什么是视差呢?视差就是观测者在两个不同位置看到同一天体的 方向之差。我们来做个简单的实验:伸出你的右手拇指,交替闭合和睁开双眼,你会 发现拇指向对于背景左右移动。这就是视差。在工程上人们常用三角视差法测量距离 。如图,如果我们测量出∠α、∠β和两角夹边a(称作基线), 那么这个三角形就 可以被完全确定。
天体的测量也可以用三角视差法。它的关键是找到合适的边长a——因为天体的距 离通常是很大的——以及精确测量角度。 我们知道,地球绕太阳作周年运动,这恰巧满足了三角视差法的条件:较长的基 线和两个不同的观测位置。试想地球在轨道的这一侧和另一侧,观测者可以察觉到恒 星方向的变化——也就是恒星对日-地距离的张角θ(如图)。图中所示的是周年视 差的定义。通过简单的三角学关系可以得出:r=a/sinθ 由于恒星的周年视差通常小于1°,所大数闷以(使用弧度制)sinθ≈θ。如果我们用角 秒表示恒星的周年视差的话,那么恒星的距离r=206 265a/θ。 通常,天文学家把日-地距离a称作一个天文单位(A.U.)。只要测量出恒星的周 年视差,那么它们的距离也就确定了。当然, 周年视差不一定好测。 第谷一辈子也 没有观测的恒星的周年视差——那是受当时的观测条件的限制。 天文单位其实是很小的距离,是天文学家又提出了秒差距(pc)的概念。也就是说,如果恒星的周年视差是1角秒(1/3600秒),那么它就距离我 们1秒差距。很显然,1秒差距大约就是206265天文单位。 遗憾的是,我们不可能把周年视差观测的相当精确。现代天文学使用三角视差法 大约可以精确的测量几百秒差距内的天体,再远,就只好望洋兴叹了。 星等是表示天体相对亮度的数值。我们直接观测到的星等称为视星等,如果把恒 星统一放到10秒差距的地方,这时我们测量到的视星等就叫做绝对星等。视星等(m) 和绝对星等(M)有一个简单的关系: 5lg r=m-M+5 这就意味着,如果我们能够知道一颗恒星的视星等(m) 和绝对星等(M),那么 我们就可以计算出它的距离(r)。不消说,视星等很好测量,那么绝对星等呢?很幸 运,通过对恒星光谱的分析我们可以得出该恒星的绝对星等。这样一来,距离就测出 来了。通常这被称作分光视差法。 绝对星等是很有用的。天文学家通常有很多方法来确定绝对星等。 比如主星序重叠法。如果我们认为所有的主序星都具有相同的性质。那么相同光谱 型的恒星就有相同的绝对星等。如果对照太阳附近恒星的赫罗图,我们就可以求出遥
远恒星的绝对星等,进而求出距离。造父变星是一种性质非常奇特的恒星。所谓变星是指光度周期性变化的恒星。造
父变星的独特之处就在于它的光变周期和绝对星等有一个特定的关系(称为周光关系)。通过观测光变周期就可以得出造父变星的绝对星等。有了绝对星等,一切也就好 说了 造父变星有两种:经典造父变星和室女座W型造父变星, 它们有不同的周光关系 。天琴座的RR型变星也具有特定的周光关系,因此也可以用来测定距离。这种使用变 星测距的方法大致可以测量108秒差距的恒星。 人们观测到,更加遥远的恒星的光谱都有红移的现象,也就是说,恒星的光谱整个向红端移动。造成这种现象的原因是:遥远的恒星正在快速的离开我们。根据多普勒效应可以知道,离我们而去的物体发出的光的频率会变低。
1929年,哈勃(Hubble,E.P.)提出了着名的哈勃定律,即河外星系的视向退行 速度和距离成正比:v=HD.这样,通过红移量我们可以知道星体的推行速度,如果哈勃常数H确定,那么距离也就确定了(事实上,哈勃太空望远镜的一项主要任务就是确定
哈勃常数H)。 这样,我们就可以测量到这个可观测宇宙的边缘了。 不过还是有一个问题,这种天文学的测量如同一级一级的金字塔,那么金字塔的地基——天文单位到底是多少呢?如果测量不出天文单位,其他的测量就都成了空中楼阁 天文单位的确是天文测量的基石。20世纪60年代以前,天文单位也是用三角测量法测出的,在这之后,科学家使用雷达测量日-地距离。 雷达回波可以很准确的告诉我们太阳里我们有多远,这样一来,天文学家就可以大 胆的测量遥远的星辰了。
② 什么是视差
问题一:什么是视差 视差是从两个不同的点查看一个物体时,视位置的移动或差异,量度的大小位是这两条线交角的角度或半角度。一个简单的,日常都御卜扰能见到的视差例子是,汽车仪表板上指针显示的速度计。当从正前方观看时,显示的正确数值可能是60;但从乘客的位置观看,由于视角的不同,指针显示的速度可能会略有不同。
问题二:工程测量什么叫视差?产生视差的原因是什么?如何消除 简明扼要的说(这是老师给总结的):视差是指眼睛在目镜端上下移动,所看见的目标有移动。原因是物像与十字丝分划板不共面。消除方法是同时仔细调节俯镜调焦螺旋和物镜调焦螺旋。这道题考试的标准答案就是这样的
问题三:什么是视差图 视差图是以图像对中任一幅图像为基准,其大小为该基准图像的大小,元素值为视差值的图像。
由于视差图包含了场景的距离信息,因此从立体图像对中提取视差图的图像匹配,一直是双目视觉研究中最为活跃的领域
问题四:在土木测量中什么是视差 视差是观测是把眼睛稍作上下移动,尺像与十字丝有相对移动的现象。
问题五:什么是视差 视差就是从有一定距离的两个点上观察同一个目标所产生的方向差异。从目标看两个点之间的夹角,叫做这两个点的视差,两点之间的距离称作基线。只要知道视差角度和基线长度,就可以计算出目标和观测者之间的距离。
视差 (PARALLAX)还指摄影机中观景窗和镜头所取到的景框的差异。
观测者在两个不同位置看同一天体的方向之差。比如,当你伸镇旦出一个手指放在眼前,先闭上右眼,用左眼看它;再闭上左眼,用右眼看它,会发现手指相对远方的物体的位置有了变化,这就是从不同角度去看同一点的视差。视差可用观测者的两个不同位置之间的距离(基线)在天体处的张角来表示。
因为人的左、右眼有间距,造成两眼的视角存在细微的差别,而这样的差别会让两只眼睛分别观察的
简单的视差例子
景物有一点点的位移。人类之所以能够产生有空间感的立体视觉效果,恰恰就是这种在医学上被称之为视差的位移,在大脑中的有机合成。大开眼界,其实就是视差的作用结果。同一个人的不同眼睛,观察事物的结果尚不尽相同,不同人的眼睛,自然更是相去甚远。当你和你的搭档之间出现“视觉差异”时,不妨换个角度看看,学会说服自己,学会放弃已见。那时候你会发现:你们之间的不同见解,存在着合成的可能,而且合成的结果会让你茅塞顿开,让你大开眼界。要学会利用角度、利用视差。别忘了:如果两眼之间没有3CM的距离,那么你永远无法享受3D!
问题六:工程测量什么叫视差?产生视差的原因是什么?如何消除 视差产生的原因:由于度量标尺(分划板)与被测物体(像)不共面,使得当眼睛晃动(观察位置稍微改变)时,标尺与被测物体之间会有相对移动。消除视差的方法:若待测像与标尺(分划板)之间有视差时,说明两者不共面,应稍稍调节像或标尺(分划板)的位置,并同时微微晃动眼睛,直到待测像与标尺之间无相对移动即无视差。具体办法是:在分光计目镜前上下晃动眼睛并观察:当眼睛向上移动时,若绿十字像向下移动,则说明绿十字像位置在分划板前面(如上图的演示所示),因此只需将目镜略微移出来一点即可;反之,若绿十字像向上移动,则说明绿十字像位置在分划板后面,将目镜略微移进去一点即可;反复多次调节,直至像与弊宏标尺之间无相对移动即可完全消除视差。 追问:
③ 双目视觉标定中如何求视差值呀到底什么是视差值图中的m n 如何获取呀求救。
我一直也有这样的疑问:我们实验时,也没有严格把相机按照平信春行模式或会聚模式放呀,只是手动把两个相机斜视下方被测物,(Halcon软件)经过标定,然后在拍摄被测物体,最后测出了任意两个特征点的三维坐标,他们的间距和实际测量举坦则值一样(误差可控),请问什么平行模式啦等等,到底是为了干正棚嘛呀?????求解
④ 双目视觉测距原理
单目测距原理:
先通过图像匹配进行目标识别(各种车型、行人、物体等),再通过目标在图像中的大小去估算目标距离。这就要求在估算距离之前首先对目标进行准确识别,是汽车还是行人,是货车、SUV还是小轿车。准确识别是准确估算距离的第一步。要做到这一点,就需要建立并不断维护一个庞大的样本特征数据库,保证这个数据库包含待识别目标的全部特征数据。比如在一些特殊地区,为了专门检测大型动物,必须先行建立大型动物的数据库;而对于另外某些区域存在一些非常规车型,也要先将这些车型的特征数据加入到数据库中。如果缺乏待识别目标的特征数据,就会导致系统无法对这些车型、物体、障碍物进行识别,从而也就无法准确估算这些目标的距离。
单/双目方案的优点与难点
从上面的介绍,单目系统的优势在于成本较低,对计算资源的要求不高,系统结构相对简单;缺点是:(1)需要不断更新和维护一个庞大的样本数据库,才能保证系统达到较高的识别率;(2)无法对非标准障碍物进行判断;(3)距离并非真正意义上的测量,准确度较低。
双目检测原理:
通过对两幅图像视差的计算,直接对前方景物(图像所拍摄到的范围)进行距离测量,而无需判断前方出现的是什么类型的障碍物。所以对于任何类型的障碍物,都能根据距离信息的变化,进行必要的预警或制动。双目摄像头的原理与人眼相似。人眼能够感知物体的远近,是由于两只眼睛对同一个物体呈现的图像存在差异,也称“视差”。物体距离越远,视差越小;反之,视差越大。视差的大小对应着物体与眼睛之间距离的远近,这也是3D电影能够使人有立体层次感知的原因。
上图中的人和椰子树,人在前,椰子树在后,最下方是双目相机中的成像。其中,右侧相机成像中人在树的左侧,左侧相机成像中人在树的右侧,这是因为双目的角度不一样。再通过对比两幅图像就可以知道人眼观察树的时候视差小,而观察人时视差大。因为树的距离远,人的距离近。这就是双目三角测距的原理。双目系统对目标物体距离感知是一种绝对的测量,而非估算。
理想双目相机成像模型
根据三角形相似定律:
根据上述推导,要求得空间点P离相机的距离(深度)z,必须知道:
1、相机焦距f,左右相机基线b(可以通过先验信息或者相机标定得到)。
2、视差 :,即左相机像素点(xl, yl)和右相机中对应点(xr, yr)的关系,这是双目视觉的核心问题。
重点来看一下视差(disparity),视差是同一个空间点在两个相机成像中对应的x坐标的差值,它可以通过编码成灰度图来反映出距离的远近,离镜头越近的灰度越亮;
极线约束
对于左图中的一个像素点,如何确定该点在右图中的位置?需要在整个图像中地毯式搜索吗?当然不用,此时需要用到极线约束。
如上图所示。O1,O2是两个相机,P是空间中的一个点,P和两个相机中心点O1、O2形成了三维空间中的一个平面PO1O2,称为极平面(Epipolar plane)。极平面和两幅图像相交于两条直线,这两条直线称为极线(Epipolar line)。
P在相机O1中的成像点是P1,在相机O2中的成像点是P2,但是P的位置是未知的。我们的目标是:对于左图的P1点,寻找它在右图中的对应点P2,这样就能确定P点的空间位置。
极线约束(Epipolar Constraint)是指当空间点在两幅图像上分别成像时,已知左图投影点p1,那么对应右图投影点p2一定在相对于p1的极线上,这样可以极大的缩小匹配范围。即P2一定在对应极线上,所以只需要沿着极线搜索便可以找到P1的对应点P2。
⑤ 视差的视差法解析
视差法是一种比较容易理解的距离测量技术。你可以自己来体验一下:举起你的一亮核耐个手指放在鼻子前几厘米处,睁着左眼闭起右眼观察手指在背景中的位置;然后闭上左眼睁开右眼,你会发现手指在你面前移动了一段距离。实际上并不是手指移动了,而是因为观察的角度改变了的缘故。这种视运动就叫做视差。“这同测量恒星的距离有什么关系?”不要着急,把你的同一个手指放在你面前30厘米处,重复刚才的实验,你将发现由于视差而产生的手指位移大大减少了。也就是说,当被观测物体(手指)与观测者的距离增加时,由视差产生的位移也成比例地减少。当我们要测量恒星的距离时,首先要计算出一条基线的长度(在上面的实验中,你双眼的距离就是作为基线的),这条基线必须足够长,因为恒星的距离太远了。如果我们选择地球一月份的空间位置作为始点,选择地球七月份时的空间位置作为终点,两点的距离作为氏氏基线才“足够大”。在一月份和七月份分别观察被测恒星相对于邻近背景天体的位置,就得到了恒星的视差值,通常是一个很小的角度。利用基线的长度和这个角度,根据三角关系就可以计算恒星的距离。
贝塞耳选择了天鹅座中的一颗恒星,并求出半年间该星在天空的角位移移动了约1/5000度。利用这个数据,贝塞耳计算出天鹅座的这颗恒星的距离是94.6万亿千米。虽然当我们参加赛跑比赛,气喘吁吁地到达终点时,感觉几千米的赛程真是太远了;但是在天文学研究中,“千米”作为长度单位实在是太短而不便于使用,就好比用毫米来计算赤道的长度一样。人们有一把更好的尺子——光年。光年并不是时间单位,而是长度单位,光在一年里传播的距离,就是一光年。贝塞耳的数字用光年来表示为10光年多一点。亨德森虽然比贝塞耳较早行动,但由于健康原因,直到贝塞耳发表了结果之后才完成了他的计算。他选择的恒星是半人马座α星,因为它在天空敬春中非常明亮,亨德森认为它是因为距离近才如此明亮的。亨德森的判断是正确的,半人马座α星距离地球只有4.3光年,是天空中除太阳外离我们最近的恒星。斯特鲁维的工作更为艰巨,因为他选择的研究对象是天琴座中的织女星,距离地球有26光年,由于视差很小,使当年斯特鲁维的观测结果不太准确。
⑥ 双目立体视觉之深度估计
为什么非得用双目相机才能得到深度?
说到这里,有些读者会问啦:为什么非得用双目相机才能得到深度?我闭上一只眼只用一只眼来观察,也能知道哪个物体离我近哪个离我远啊!是不是说明单目相机也可以获得深度?
在此解答一下:首先,确实人通过一只眼也可以获得一定的深度信息,不过这背后其实有一些容易忽略的因素在起作用:一是因为人本身对所处的世界是非常了解的(先验知识),因而对日常物品的大小是有一个基本预判戚亮的(从小到大多年的视觉训练),根据近大远小的常识确实可以推断出图像中什么离我们远什么离我们近;二是人在单眼观察物体的高态宽时候其实人眼是晃动的,相当于一个移动的单目相机,这类似于运动恢复结构(Structure from Motion, SfM)的原理,移动的单目相机通过比较多帧差异确实可以得到深度信息。
但是实际上,相机毕竟不是人眼,它只会傻傻的按照人的操作拍照,不会学习和思考。下图从物理原理上展示了为什么单目相机不能测量深度值而双目可以的原因。我们看到红色线条上三个不同远近的黑色的点在下方相机上投影在同一个位置,因此单目相机无法分辨成的像到底是远的那个点还是近的闭亩那个点,但是它们在上方相机的投影却位于三个不同位置,因此通过两个相机的观察可以确定到底是哪一个点。
- 理想双目相机成像模型
首先我们从理想的情况开始分析:假设左右两个相机位于同一平面(光轴平行),且相机参数(如焦距f)一致。那么深度值的推导原理和公式如下。公式只涉及到初中学的三角形相似知识,不难看懂。
根据上述推导,空间点P离相机的距离(深度)z=f*b/d,可以发现如果要计算深度z,必须要知道:
1、相机焦距f,左右相机基线b。这些参数可以通过先验信息或者相机标定得到。
2、视差d。需要知道左相机的每个像素点(xl, yl)和右相机中对应点(xr, yr)的对应关系。这是双目视觉的核心问题。
参考: http://www.sohu.com/a/203027140_100007727
⑦ 重磅 | 人加司眸®第三代4.5K双目视觉感知引擎架构全球首发
2020年 1 月,人加公司正式发布司眸®第三代双目视觉感知引擎架构,最高可支持 4.5K 分辨率(4608*2560)20FPS 实时处理。在此之前,世界顶级光学企业日本理光于 2018 年 10 月推出 4K 分辨率的双目立体视觉摄像头产品。
人加公司本次发布的司眸®第三代架构,是目前全球范围内可支持最高分辨率的双目视觉感知引擎架构。该架构整体性能相较于上一代有了较大幅度的提升,其中作为核心参数的分辨率指标提升了近 12 倍。
一直以来,在人工智能3D视觉感知领域,双目立体视觉技术因为算法复杂度高、算力需求大而常常让人又爱又恨,但双目立体视觉技术作为 3D 传感领域的重要组成部分,因其测量距离能远能近、室内室外可兼顾等多种优点,也被不少行业应用者看好。
双目立体视觉技术是利用三角测量原理,通过两台相对位置固定的相机同时对场景进行成像,根据成像中的视差来计算深度,典型计算方法如下:
其中,f为相机焦距,b 为基线,d 为视差,Z 为深度值,在此理论框架的基础上可以得出,双目立体视觉的测量精度会随测量距离的增大而严重衰减,这也是当下双目视觉系统存在的较大痛点之一。与此同时,为提升系统的覆盖面积,需增大相机视场角,由此,将进一步减小焦距 f,进而进一步增大 Z 向精度随距离增大的衰减程度。
因此,一个双目立体视觉晌盯系统想要实现既能“看得远”又能“看得清”,在现有的主流分辨率(1280*800)和系统体积(基线通常在 12cm 以下)约束下难以实现。
综上,提升双目视觉系统的分辨率是当下实现技术突破的唯一直接方式,同时也顺应了当下段茄CMOS图像传感器分辨率不断变大的发展趋势。
然而,想要提升双目分辨率,将对算力和存储带宽的需求带来倍级速度的增长,这对于现代计算机存储计算架构将会是一个很大的挑战,在传统CPU或 GPU 的架构下实现代价非常高(在 KITTI 双目测评排名中,4 核、2.6Ghz CPU 仅运行匹配算法 rSGM 需要的时间长达 0.2 秒),且很难达到理想运算效率和功耗/成本之间的平衡。
综合以上分析,人加司眸®第三代双目视觉感知引擎架构在设计上仍然延续了上一代的逻辑单元(FPGA)+ CPU 的异构计算架构,新架构采用 DDR4 64 位存储架构,内存存储带宽相对于上一代提升了 4 倍,经过一系列的算法加速设计创新,达到横向分辨率提升近 4 倍,整体分辨率实现了近 12 倍的性能提升。
第三代架构延续了上一代逻辑单元+ CPU的异构设计方式,在上一代的基础上重点突破了分辨率提升带来的内存带宽技术瓶颈和片上存储资源技术瓶颈,概要设计图如下:
系统采用DDR4作为存储单元,握谨察提升了逻辑单元和外部存储单元之间的数据交互效率,设计带宽高达 16.5GB/s。同时系统各核心单元之间延续流水线设计,最大限度降低了计算产生的延迟,设计上满足从数据输入至数据输出延迟小于 1 图像帧时间。同时,系统也可支持各单元更细颗粒度的并行处理,对于实时性要求更高的场景可快速支持以空间换时间的设计,最大限度地降低了系统延迟。
第三代架构的详细性能参数如下表所示:
最终,人加公司在Xilinx Zynq UltraScale+ ZCU102 Evaluation Board平台上对该架构进行了完整实践,资源消耗情况如下表所示:
在Xilinx工具集 Vivado 2018.3 的实践如下图所示:
为了突破分辨率大幅提升带来的存储资源和计算资源瓶颈,人加智能工程师做了一系列创新设计,以其中三个重点为例,概要介绍如下:
(1)采用动态校正参数压缩技术倍级优化内存带宽资源。
双目立体校正采用逆向映射和双线性插值的方式,一个目标像素的产生需对应一组二维坐标值和双线性插值所用比例值。以分辨率4608x2560@20fps设计为例,一个像素所需 4.5 字节的信息,所需 DDR 读速率达 1GB/s,对于两幅图像的同时校正,整体带宽速率占用高达 2GB/s。人加智能根据校正所需数据的分布特征,提出了一种面向校正数据的压缩与解压缩方式,其中压缩是在 CPU 下离线完成,解压缩部分为逻辑资源实时计算。最终采用的压缩方式可达到 2:1 的压缩比,同时解压缩单元占用的资源仅 200 余个 LUT、0.5 个 BRAM,详情如下:
(2)采用动态分片校正技术将片上内存使用空间缩减至 1/3。
横向分辨率的增加带来了行缓存宽度的增加,因此对于实时计算缓存图像数据的存储空间需求增加了近4倍(相对于上一代),为了应对片上 Block RAM 资源紧张的问题,人加智能设计了一种可动态分片校正的框架,典型设定可将图像横向分为 3 块,可将片上存储的空间需求缩减到 1/3,同时在 BRAM 资源更紧张的场景下,也支持更多分片或分区的设定,以满足场景对于 BRAM 资源的需求。
(3)Block to Block 分块立体匹配设计。
该架构中的立体匹配部分仍延用了上一代SGM/BM的设计算法,在保证设计性能的基础上,人加智能采用了分块匹配的思想,将左右图像分为可拆分的两部分,分别独立进行匹配,在设计上进一步将 BRAM 资源使用量缩减至 1/2。
本次双目立体视觉处理架构的升级是在当下场景应用对于双目视觉系统提出更大视场角和更高精度的双重要求下完成的,升级后将会给人加智能的实体消费行为分析应用带来以下益处:
(1)单个双目视觉系统所能覆盖的范围增大。
通过增大相机视场角至130°-150°(上一代设计指标为 100°),单个双目视觉系统的覆盖面积可达百平米,可以减少相机使用数量,从而降低系统维护成本,增强系统稳定性。
(2)空间定位更精准。
更高的深度图分辨率将带来更高的测量精度,使得空间定位更加精准。
(3)图像细节更丰富,识别更精准。
通过本次升级,人加智能双目视觉系统可提供高达1200万像素的原始图像,这将大大提高图像识别等应用的精度。
(4)深度算法支持迭代升级优化,增大场景适应性。
第三代架构延用了FPGA SOC设计,实现了硬件加速级算法的可升级,可维护,可根据具体场景进行相应的配置和优化。
同时,本次升级也为市场带来了双目立体视觉技术应用的新的想象空间,当分辨率提升至1200万像素时,系统可测距范围便能提升至千米级,可以想象,对于一些大范围测量领域(例如自动驾驶、智能安防等领域)也将提供一种全新方案选择。
人加智能( www.humanplus.ai )是一家以智能视觉传感与人体行为识别为核心技术的人工智能公司,现专注于为零售品牌商与零售商提供实体消费行为分析服务(Customer Behavior Analytics),包括客流量分析、销售转化分析、客流动线分析、人货互动分析等,助力品牌零售的决策、执行过程实现“数据驱动”与“人机协同”。
原文链接: https://mp.weixin.qq.com/s/VFp5tZC0dTRIsot4UtTm2A
⑧ 双目视觉的匹配算法是不是有好几种具体是哪几种
与普通的图像模板匹配不同的是,立体匹配是通过在颤坦旅两幅或多幅存在视点差异、几何畸变、灰度畸变、噪声干扰的图像对之间进行的,不存在任何标准模板进行匹配。立体匹配方法一般包含以下三个问题:(1)基元的选择,即选择适当的图像特征如点、直线、相位等作为匹配基元;(2)匹配的准则,将关于物理世界的某些固有特征表示为匹配所必须遵循的若干规则,使匹配结果能真实反映景物的本来面目;(3)算法结构,通过利用适当的数学方法设计能正确匹配所选择基元的稳定算法。
根据匹配基元的不同,立体视觉匹配算法目前主要分为三大类,即区域匹配、相位匹配和特征匹配:
基于区域灰度的匹配算法是把一幅图像(基准图)中某一点的灰度邻域作为模板,在另一幅图像(待匹配图)中搜索具有相同(或相似)灰度值分布的对应点邻域,从而实现两幅图像的匹配。这类算法的性能取决于度量算法及搜索策略的选择。另外,也必须考虑匹配窗口大小、形式的选择,大窗口对于景物中存在的遮挡或图像不光茄凳滑的情况会更多的出现误匹配,小窗口则不具有足够的灰度变化信息,不同的窗口形式对匹配信息也会有不同的影响。因此应该合理选取匹配区域的大小和形式来达到较好的匹配结果。
相位匹配是近二十年发展起来的一种匹配算法,相位作为匹配基元,即认为图像对中的对应点局部相位是一致的。最常用的相位匹配算法有相位相关法和相位差——频率法,虽然该方法是一种性能稳定、具有较强的抗辐射抗透视畸变能力、简单高效、能得到稠密视差图的特征匹配方法。但是,当局部结构存在的假设不成立时,相位匹配算法因带通输出信号的幅度太低而失去有效性,也就是通常提到的相位奇点问题,在相位奇点附近,相位信息对位置和频率的变化极为敏感,因此用这些像素所确定的相位差异来衡量匹配误差将导致极不可靠的结果。此外,相位匹配算法的收敛范围与带通滤波器的波长有关,通常要考虑相位卷绕,在用相位差进行视差计算时,由于所采用的相位只是原信号某一带通条件下的相位,故视差估计只能限制在某一限定范围之内,随视差范围的增大,其精确性会有所下降。
基于特征的图像匹配方法是目前最常用的方法之一,由于它能够将对整个图像进行的各种分析转化为对图像特征(特征点、特征曲线等)的分析的优点,从而大大减小了图像处理过程的计算量,对灰度变化、图像变形、噪音污染以及景物遮挡等都有较好的适应能力。
基于特征的匹配方法是为使匹配过程满足一定的抗噪能力且减少歧义性问题而提出来的。与基于区域的匹配方法不同,基于特征的匹配方法是有选择地匹配能表示景物自身特性的特征,通过更多地强调空间景物的结构信息来解决匹配歧义性问题。这类方法将匹配的搜索范围限制在一系列稀疏的特征上。利用特征间的距离作为度量手段,具有最小距离的特征对就是最相近的特征对信瞎,也就是匹配对。特征间的距离度量有最大最小距离、欧氏距离等。
特征点匹配算法严格意义上可以分成特征提取、特征匹配和消除不良匹配点三步。特征匹配不直接依赖于灰度,具有较强的抗干扰性。该类方法首先从待匹配的图像中提取特征,用相似性度量和一些约束条件确定几何变换,最后将该变换作用于待匹配图像。匹配中常用的特征基元有角点、边缘、轮廓、直线、颜色、纹理等。同时,特征匹配算法也同样地存在着一些不足,主要表现为:
(l)特征在图像中的稀疏性决定了特征匹配只能得到稀疏的视差场,要获得密集的视差场必须通过使用插值的过程,插值过程通常较为复杂。
(2)特征的提取和定位的准确与否直接影响特征匹配结果的精确度。
(3)由于其应用场合的局限性,特征匹配往往适用于具有特征信息显着的环境中,在缺少显着主导特征环境中该方法有很大困难。
总之,特征匹配基元包含了算法编程上的灵活性以及令人满意的统计特性。算法的许多约束条件均能清楚地应用于数据结构,而数据结构的规则性使得特征匹配非常适用于硬件设计。例如,基于线段的特征匹配算法将场景模型描绘成相互联结的边缘线段,而不是区域匹配中的平面模型,因此能很好地处理一些几何畸变问题,对对比度和明显的光照变化等相对稳定。特征匹配由于不直接依赖于灰度,计算量小,比基于区域的匹配算法速度快的多。且由于边缘特征往往出现在视差不连续的区域,特征匹配较易处理立体视觉匹配中的视差不连续问题。