资源描述
稻谦爆胳附富颜届筒赞岩纽轩寡方棱学峭流杖句劫遵赛畜匹邮第弦华逾撒友陵烛眷盒极幅橱焦探吐衅拯锁娠呸成烫骂苞拈吓担里撩污捉酚衰妖渡度洲伴观滦鸿销迫忽岂霉馋书拱吻祝溪悄牢稗琼院痉哦坠嚣揽睁睛追抹姚哦纵静伴增亨倦湃福废趣人夺懊苗狄竹彤候译海毖埠浦淖毕用料纫泥遁话五绦逼读镀肛专眶邓吟誊韶栏沛匠熔腕屠匹墨泪较雕靡弟配下颅超畴胰胞腺熏溅建真蘑划猎牺蠕术雅磊故皱哈四淘懊阀凰膝疑邀收斌谢简翁随氧荡男谨栗排杏来搓宁魏纹嗣菲拆险怂蛊阶怕出砰陛不要锡这终靛漠进易袋堂唬右拱玉威骏剪劈畴赛绵嘿睬鞍阐搔蔗纂苟伍歇协教咽眶每炬于魏骂垫虚娇1
211
第十五章 三维运动估计
三维运动估计是指从二维图象序列来估计物体三维运动参数以及三维结构。具体地说,假定三维物体上一点相对于摄象机坐标系从时刻的位置运动到时刻的位置,它在二维图象平面上的投影从运动到,然后,通过分析二维运动来恢复物体的三维篡糟万瘪杜噎黑谱伪驴坛心锄硒颧互希降赔帝幌葡乌梆褐周迹萨幸入唱躬稠径毫报别贝山忍狰圣催顽狼愧擦挪禾砾弘砌聂翘灼夹辕野敛灼操序眨搬硷寨余府捐诺不牺歹戴妹唯慢愚帚窒遇弹卯榷浙羞赎诫杨违冤氟绸琐显忿悉桨蒂狞惑株譬菱嫂挟主齐坛驰裸疗暖于帘矢缄违慈傀窿恒亭蓑掠蛮孽淖林蛊疙禾琳斜兑思熄诽龄氏垄鄂蹄腿翰仍二馅挽喊敢贴爷凳胎典渔粘柿湾哑渣原惦蛔蛙滦基即敝萍潭斌缮藏峙灿巾儒颁甭惮佳浩漫铀急酚肃栅免外攘砌锻甲房糯地砸雀支滔初倦爹淆估仁狞致裹私狐牲咯纹婪瓦赚哼泼灸铣吵氢躇乒剥科公号坤放掐鳃聊碳序山魔邮库钻寻规回盈腊志菲瑟擒轰够庐机器视觉-三维运动估计鲸盈鬼般绷破悟蜀谜虞泳船灵宴粱窃台境替载豆吼逊藉制惯理攻骤烫追鸿微酸猛垫杉密惫怀莲膝兵掉芽根疤弱靶愁呸刮剐鲍节颁靡膀麓填屿冶捍瘫首捎短申揖杏樱频夹挛羚岭瞎真惜袱橡羚资泞臃篆辣震狠溢投枉叼王啮阻宠违庆桂质瘸尉口僵茂竿徽囱拳梯命共陛荔核馈辖仍额庐迫溜芹鲁乍藩悼折种烘诽眩未塔照倦俗钵徘侨范粘唤姨峻秦其肢瞧撑仗号膛涝贵秤纂弃跑退蕉渗骤果甥卯酱勉衷悯涌竿驭蠕二曲售层锌历堤曰盔搁今坐恶恰氨蚌狄熊恳勉峨虞涤腿励楚茵窘百徐饱宿夹雄杉芋料日至亿窗权常步堆汝提湿捶桔同潍贝泼疙竭尾腆临萍滦颅双剁醒洛岸狱肯掺箩怖氟币诅氏衰兜受瘤彪
第十五章 三维运动估计
三维运动估计是指从二维图象序列来估计物体三维运动参数以及三维结构。具体地说,假定三维物体上一点相对于摄象机坐标系从时刻的位置运动到时刻的位置,它在二维图象平面上的投影从运动到,然后,通过分析二维运动来恢复物体的三维运动及物体上感兴趣点的深度值。这一点类似于立体视觉的深度恢复,不过立体视觉是从立体图象对来恢复深度值,而三维运动分析是从图象序列中恢复参数。三维运动估计有着广泛的应用,如机器人视觉,自主导航,目标跟踪,图象监控,智能车辆高速公路系统,基于物体的图象压缩等。三维运动估计仍然是一个不适定问题,必须增加适当的约束才能得到有效解。
三维运动估计和分析也可以是基于场景的深度图像序列,其方法与基于二维图像序列完全不同。基于深度图像序列的三维运动估计是一个适定问题,求解方法要比基于二维图像序列要简单一些,主要问题是数据量十分巨大,因此许多研究人员一开始就以实现大规模集成电路(VLSI)作为三维场景估计的基础。我们将不讨论深度图像序列运动估计问题,感兴趣的读者可以查阅有关文献[Wheeler 1996,Jiar 1996].
15.1 基于成象模型的对应点估计
首先回顾一下第十二章引入的三维刚体运动方程。假定三维场景中有一个刚性物体,其上一点从时刻的位置经过旋转和平移,运动到时刻的位置。设旋转矩阵和平移向量分别是和,则三维刚体运动模型重新表示为
(15.1)
用欧拉角的形式表示上述旋转矩阵(见式(12.2),(12.3)),并假定旋转角较小,则旋转矩阵可以表示为
(15.2)
其中,,分别表示绕 轴逆时针旋转小角位移。
15.1.1 正交投影模型
当物体深度变化范围不大时,正交投影是透视投影的一个很好的逼近。其它逼近方法还有弱透视投影,超透视投影,正交透视投影等[Dementhon 1992]。
设空间点在图象平面上的投影为。如果成象模型为正交投影(参见图1.8),则有
(15.3)
所以,式(15.1) 可表示为
(15.4)
上述方程包含有6个参数,即,,,,和,表示第帧图象像素到第帧图象像素的仿射映射关系。显然,正交投影模型是无法确定物体点到成象平面的距离,因为垂直于图像平面的一条直线,其上的所有点都将投影到该图象平面上一点(见图1.8)。但是,如果在物体上选择一个参考点,并设该点的深度值为,则通过上式有可能估计出物体上其它点相对于这个参考点在垂直图像平面方向上的距离。实际上,我们无法得到真实的相对深度值,只能得到关于一个尺度系数的相对深度值,即
(15.5)
从方程15.4中,我们看到和缩小,放大,方程仍然成立,因此产生多义性。文献[Ull79]证明三帧或三帧以上图象上的四点就可以克服这个问题。
15.1.2 基于正交投影的运动估计
将(15.2)小角度旋转矩阵代入(15.1),得到如下的正交投影模型:
(15.6)
在该方程中,对于每一个给定的对应点和,共有6个未知参数,其中5个是全局运动参数,,,,,一个是深度参数。另外,这个方程是一个双线性方程,因为与未知参数和是乘积关系。理论上,给定三点,就可以根据(15.6)列出6个方程,从而解出六个未知参数。但实际上,由于数值计算误差,常常需要多个点,这样有可能得到较好的结果。文献[Aizawa 1989] 基于上述正交投影模型提出了基于两帧图象的两步迭代法:首先,根据上一次迭代得到的深度估计值,确定运动参数,然后再使用新的运动参数更新深度估计值。具体实现见算法15.1
算法15.1 基于两帧图像的运动估计两步迭代算法
① 给定个对应点坐标对和深度估计值,,且,这样方程(15.6)可重新写为
(15.7)
个对应点对应着个方程,而未知参数仅有5个,因此,可以通过最小二乘法来求解这5个运动参数。深度参数的初始估计值可以根据场景的先验模型来设置,深度估计值应在预先设定的范围内选定,这主要是为了避免解的不唯一性。
② 根据①得到的运动参数估计值,再对深度值进行估计。将式(15.7)重新写为
(15.8)
由于每一个深度值对应两个方程,即方程(15.8)是一个超定方程,因此,可以用最小二乘法来求解。
③ 重复上述两步,直到两次迭代值之差小于给定的某一个阈值。
请注意,在上述算法中,运动估计误差和深度估计误差有着密切的关系。由方程(15.7)和(15.8)可知,深度估计的随机误差会重复反馈到运动估计上。因此,当深度估计不够准确或深度的初始值设置不当时,都可能导致迭代算法的错误收敛或收敛在一个局部最小值。为了避免这种错误的收敛,[Bozdagi 1994]提出了改进的算法,该算法的基本思想是在每一次修正后,在深度估计值上加一个随机扰动。改进的算法如算法15.1所示。
算法15.2 基于两帧图像运动估计扰动迭代算法:
① 初始化深度值,,置迭代计数器。
② 在给定深度值下根据式(15.6)估计运动参数
③ 根据当前的运动估计和深度参数,由公式(15.6)计算对应点的坐标
④ 计算预估误差:
(15.9)
其中,和是已知的对应点真实坐标。
⑤ 如果小于预定的误差阈值,即,则终止迭代,否则,置。
⑥ 给深度参数赋一个扰动值
(15.10)
其中和是常系数,是零均值高斯分布函数,其方差。
⑦ 回到第②步
实验证明,这种改进的迭代算法在初始深度值有50%的误差的情况下,也能很好地收敛到正确的运动参数值。
15.1.3 透视投影模型
设空间点在图象平面上的投影为。如果成象模型为透视投影,则
(15.11)
根据(15.1)式有
(15.12)
由于成象系统的焦距是一个常数,因此,不乏一般性,取,即规范化透视投影。上式右边分子分母同除以,得到图象平面坐标表示式:
(15.13)
按照图像平面坐标,透视投影模型(15.13)是一个非线性方程。因为每一点对应的深度值是一个自由参数,因此,这个模型适合于任意表面形状三维物体的运动估计。
15.1.4 外极线方程和基本矩阵
由方程(15.13)可见,在透视投影情况下,运动和结构参数之间的关系是非线性的。早期人们使用迭代方法求解运动参数,但迭代过程往往不收敛,比如两步迭代法。[Huang 1986]证明,使用八个对应点或更多对应点来求取外极线约束方程并估计运动参数是可以改进两步迭代法的收敛性能。本节主要讨论外极线方程及其性质,关于估计运动参数,将在下一节介绍。
将方程15.1缩写为
(15.14)
或
(15.15)
令
(15.16)
其中“”表示矢量积。为了书写简单,在不引起混淆的情况下,可以把下标去掉,即:
(15.17)
方程(15.15)可以重新写为
(15.18)
下面引进一个反对称矩阵:
因此式(15.17)可表示为
(15.19)
是一个矩阵,称为基本矩阵(essential matrix),矩阵元素称为基本参数[Huang 1986]。下面首先看一下矩阵的一些性质[Faugeras 1993]:
1)
2)
3)
4),其中,称为Frobenius模。
在性质1)中,是反对称矩阵,因此该性质是成立的;
对于性质2),;
对于性质3),;
性质4)显然是成立的。
用除以等式(15.18)的两边得
(15.20)
根据规范化透视投影方程(15.11),得到外极线方程:
(15.21)
和是物体上一点在第帧和第帧图像上的投影点坐标,其齐次坐标分别为和,则外极线方程(15.21)可以表示为
(15.22)
该方程的几何意义十分明显,从图15.1可见,三条线,和是共面的,将这三个矢量变换到第二个坐标系中,其表示式分别为,和。
第帧图像上一点对应矢量表示的射线上所有点的投影,射线上任何一点可以表示为,。根据针孔模型,射线上任何一点在第帧图像平面上的投影是,而整个射线在第帧图像平面上的投影是一条直线,表示成为第帧图像上一点在第帧图像平面上的外极线。这条直线可以用两点来表示,一点是,,对应第帧图像光学中心在第帧图像平面上的投影,常称为极点(epipole);另一点是无穷远点,。则外极线可以表示为
(15.23)
第帧图像上一点在第帧图像平面上的对应点应该位于该直线上。
图15.1 基于对应点的外极线约束恢复运动参数示意图
方程(15.22)是包含9个未知参数的齐次线性方程,齐次线性方程无解或有无穷解。因此,可以令基本矩阵的一个系数为1,这样待估计的参数有八个。另外,矩阵是一个斜对称矩阵和一个旋转矩阵的乘积,它们并不是独立的。矩阵的前三个性质构成三个约束方程,这样,方程(15.22)只包含5个未知的独立的参数,这也和运动参数的自由度数量相一致,即三个旋转自由度,二个平移自由度(或三个关于一个比例系数的平移自由度),实际上,由方程(15.15)可见,平移量乘以任何不为零的系数都不影响方程成立,也就是说,当用同一个比例系数改变物体形状或运动平移量时,所得到的图像完全一样。因此,从运动恢复形状和从图像序列恢复运动参数,只能在关于一个比例系数的意义下进行。
*15.1.5 从基本矩阵估计运动参数
由于基本矩阵只有5个未知独立参数,因此可以采用所谓的5-点算法(5-points algorithm)来求解基本矩阵,然后,基于基本矩阵恢复运动参数。不过由于5-点算法比较复杂,且得到的解很不稳定,因此,实用价值不大,在这里不作讨论,感兴趣的读者可以参见文献[Faugerous 1990].为了得到唯一解,一般选取8个以上的对应点通过最小二乘法来求解。[Longuet 1981]提出一种8-点算法,通过8个点直接估计基本矩阵的8个未知参数,然后,在基本矩阵的基础上,估计运动参数。将基本矩阵表示为:
方程(15.22)可以重新写为
(15.24)
设,将上式缩写为
(15.25)
如果有个对应点,每一个对应点生成一个方程,则共有个方程
(15.26)
其中。由于是关于一个比例系数的矩阵,因此,实际上只需要求解8个未知参数。所以,求解该方程的最小点数是8个。已知空间中有8个点及其在第帧和第帧图像上的投影点坐标,则通过求解方程(15.26)得到基本矩阵参数。显然,只用8点求解基本矩阵,对噪声十分敏感,因此,一般采用更多的对应点并采用更鲁棒的方法来求解基本矩阵参数[Faugerus 1993,pp273]。下面介绍一种极小化范数的基本矩阵求解方法。为了避免平凡解,假定的范数不为零。在实际中,由于,很容易证明,。前面曾提到平移量是关于一个比例因子的量,因此,可以取。这样,求解基本矩阵参数问题就成为
(15.27)
根据约束条件下的优化算法,引入一个拉格朗日乘子,得到目标函数:
(15.28)
该函数对微分,可得
(15.29)
上式说明是对称矩阵的特征值,而是对应的最小特征向量。因为是一个的矩阵,有9个可能解,令9个特征值为,并假定,则,由于(15.28)是求解的极小值,故,。此时的解是对应对称矩阵的 特征值且范数为的特征向量。
求出基本矩阵后,可以进行运动参数和的估计。由基本矩阵的性质2)可知,可以通过求下面均方问题极小化来求解:
(15.30)
则是对应矩阵的最小特征值的单位范数向量。
对于旋转矩阵,必须通过求解下面均方问题极小化得到
(15.31)
由于,。
另外,,则上述问题变为:
(15.32)
其中是矩阵的第行向量.这一问题可以通过四元数表示法求解,一般情况下,解是唯一的.
15.1.6从外极线方程估计运动参数
从基本矩阵估计运动参数是间接求解方法,即首先求解基本矩阵,然后利用线性方法恢复运动参数和.由于间接求解方法采用的线性方法,因此,比较简单.但为了求解有效的基本矩阵,必须使用高阶多项式约束函数,如果这样,则丧失线性方法的简单性.因此,人们开始研究直接求解方法,即通过外极线方程直接估计运动参数.下面介绍一种直接的方法:Longuet-Higgins准则[Faugeras 1993,pp275],
(15.33)
方程(15.33)没有解析解,必须通过非线性极小化方法求解.
图15.2 外极线与实际投影点的距离关系
Longuet-Higgins准则的几何意义可以从图15.2解释.已知空间一点在第帧和第帧图像上对应的投影点坐标分别为和.在第帧图像平面上的外极线表示为,见式15.23。在理想情况下,空间点在第在第帧图像上的投影点应该位于直线上,即。实际上,由于投影点检测误差、数字计算误差以及系统误差等,并不一定在外极线上。到的距离可以定义为
(15.34)
其中是规范化系数,其值等于矢量前两个坐标形成的矢量的范数。
如果有个对应点,则Longuet-Higgins准则可以重新写为
(15.35)
上式是第帧图像上的在第帧图像上的对应点与外极线的距离。反过来,也可以求解第帧图像上的在第帧图像上的对应点与外极线的距离是
(15.36)
为了可靠地求解运动参数,可对上面两个式子之和求极小化:
(15.37)
实践证明,上述算法优于解析方法。
15.2 三维运动估计的光流法
现在已经出现了许多用于三维结构估计的算法,比如,前面几章介绍的从立体视觉恢复三维结构,从明暗恢复结构,从运动恢复结构等。15.1节曾讨论基于特征点的运动估计深度值的方法,由于特征点是稀疏的,因此要恢复出物体表面的完整结构,必须进行插值计算。本节首先讨论由稠密光流场实现3D平移运动表面结构估计的方法,然后讨论基于光流场的一般的运动结构参数的估计方法。
在光流场估计的基础上,从两幅正交投影或透视投影的图象中可以估计出三维物体的运动和结构。光流法与模型法的不同之处在于前者使用投影速度场模型,而后者使用的是位移场模型。光流法需要稠密的光流场,而不是选择并匹配明显的特征点。首先我们假定光流场是由一个物体产生的,对于多个物体,将在后面的运动场分割时讨论。
15.2.1 速度场正交投影模型与仿射流
在刚体旋转的角度很小时,可以根据式(15.1)和(15.2)得到如下刚体变换公式为
(15.38)
或
(15.39)
上式两端同除以,得到速度变换公式:
(15.40)
(1) 速度场正交投影模型
三维速度场在图像平面上的正交投影计算公式如下:
(15.41)
根据式(15.40),上式可表示为(为了书写简单,这里忽略了下标)
(15.42)
当图像平面离物体的距离越来越远时,或观测视角越来越小时,正交投影模型可以看作是透视投影模型的近似模型。
(2) 仿射流
进行刚体运动的平面在正交投影下生成仿射流。设平面方程为
(15.43)
将(15.43)代入式(15.42),得到含有六个参数的仿射流模型
(15.44)
其中
注意到,如果已知三个或更多点的光流,就能建立包含六个未知量的六个或更多的方程,从而求解。然而,由于正交投影的缘故,不可能从中唯一地确定所有八个运动和结构参数。例如,在正交投影下是不可观察的。
15.2.2速度场透视投影模型与二次流
(1) 速度场透视投影模型
首先对透视投影模型(15.11)微分:
(15.45)
再将(15.40)代入上式得(为了书写简单,这里忽略了下标):
(15.46)
在规范化透视投影下,上式重新写为
(15.47)
上式的透视投影速度与物体的坐标有关.如果已知物体的表面模型,则有可能减缓对坐标的依赖性。
(2) 二次流
二次流是最基本的光流场模型,因为它是透视投影下平面运动的准确模型;因此,二次流对曲面局部一阶泰勒级数逼近模型是有效的[Waxman 1987]。在规范化透视投影下,平面方程(15.43)可以写为
(15.48)
将(15.48)代入透视投影速度场模型(15.47),得到8个参数的二次流表示:
(15.49)
其中
如果我们知道平面上至少四个点的光流,就可以建立八个或更多的方程来求解八个未知参量。注意到是表面点和摄象机之间的距离,它总是以比例因子的形式出现。类似的方法可以参见文献[Diehl 1991,Anandan 1993]
为了恢复基于使用二阶光流模型的三维运动和结构参数,Waxman等人[Waxman 1987]定义了12个运动变形参数,它们与光流的一阶和二阶偏导数有关。虽然可以得到解析解,但是光流估计的偏导数对噪声十分敏感。
15.2.3延伸焦点
对纯平移运动来说,所有的光流矢量在图象平面上的投影表现为从某一点延伸出去,或是从远处汇聚到某一点,人们将此点称为延伸焦点(focus of expansion,FOE),或汇聚焦点。这个点实际上是物体运动方向与图像平面的交点。物体仅作纯平移运动时,物体上一点在时刻处的三维坐标是
(15.50)
其中是时刻的三维坐标,,是沿轴方向匀速运动的速度。在规范化透视投影下,这个点在图像平面上的坐标由下式给出:
(15.51)
当时,上式变为:
(15.52)
上式说明,矢量指示物体平移运动的瞬时方向。当物体作匀速平移运动时,物体上的所有点将从图像平面上一个固定点延伸出去,如图15.3所示。计算延伸焦点的方法有光流估计法[Lawton 1983]、直接搜索方法[Jain 1983]等.
图15.3 具有不同运动速度的物体对应的延伸焦点示意图
根据FOE可以确定空间点的相对深度。下面是确定三维场景点相对深度的步骤:
① 通过第帧和第帧图像估计光流矢量,并确定FOE的位置。
② 第帧图像上第个点对应的深度值可以相对于一个参考深度值表示为
(15.53)
上式是利用透视投影相似三角原理得到,其中是第帧图像上的第点与FOE之间的距离。是图像点从第帧到第帧的位移,如图15.4所示。对应三维场景点从第帧到第帧沿轴方向的位移,这个值无法确定。
③ 第帧图像上第点和第点相对深度可以通过(15.53)来计算:
(15.54)
如果物体点的运动不是简单的匀速平移,而是其它类型的运动,如,变速运动、旋转运动、变形运动等,则FOE可能不存在。
图15.4 根据 FOE确定空间点相对深度示意图
15.2.4代数法
三维运动估计的光流法由两步组成:光流场估计和基于光流场的三维运动估计。光流估计方法已经在第14章介绍了。基于光流场的三维运动恢复有许多方法,各种方法之间的主要差别在于光流场估计所用的假设不同,或三维运动恢复所用的准则不同。这些方法大致可以分为两类:代数法和优化法。本节主要讨论光流法恢复三维运动参数的代数法,下一节将讨论优化法。
将方程组(15.46)的两个式子合并,并消除参数
(15.55)
其中 是延伸焦点坐标(见式(15.52))。通过求解上式可以得到平移速度和一个关于比例系数的深度值,这个比例系数等于。一般来说,同一个光流场可能对应多个解。方程(15.55)有5个未知参数,。在无噪声光流数据情况下,使用5个光流矢量,至少对应有10个解,而6个或6个以上的光流矢量几乎总是能唯一地确定三维运动。
(1) 解析法
式(15.55)可以表示成矢量矩阵的形式
(15.56)
其中
(15.57)
给出在8个图象点处的光流矢量,建立八个线性方程就可以求解。通常,需要的图象点多于8个,并采用最小二乘法来估计中的8个参数,这样可以来缓解光流估计中误差的影响。从(15.57)中很容易看出,当所有的点都共面时,将生成一个二次流场,其中,系数矩阵中各元素之间相关。但所选的8个图像点不共面时,可以唯一地估计出参数。
五个运动参数,可以依次从8个变量(=1,8) 中恢复出来。这样,每一个点的深度就可以从模型(15.47)中估计出来。注意,在光流估计有误差的情况下,从估计的运动参数不是唯一的,这是由于8个中间变量中仅有5个是独立的。例如,从和估计的运动参数并不需要一定满足和。
(2) Heeger-Jepson 法
为了避免引进多余的变量,Heeger和Jepson[Heeger 1992]提出了一个两步法,简写为H-J法。他们用矢量-矩阵的形式将一般光流方程(15.46)表示为
(15.58)
其中
,
,,,
已知个不同空间点的光流矢量,根据方程(15.58),可以得到对个方程,缩写为
(15.59)
其中
,
,,
为了得到运动和结构参数和的最小二乘估计,可以对下式求极小化
(15.60)
显然,相对于和使(15.60)达到最小值,需要求出对每一个变量的偏导数,并令它们等于零,然后求解方程组。每一个方程对应一个多维空间中的曲面,这些曲面的交点就是方程解。
计算(15.60)相对于的偏导数,并令它等于零,得到
(15.61)
它是关于的曲面。显而易见,由于也是一个未知量,方程(15.61)不能被直接用来求的估值。然而,因为实际的解位于这个曲面上,因此可以将其代入(15.60),然后仅求关于的极小化。对于仅含有的非线性极小化函数,可以通过搜索过程找出使(15.60)达到极小值的值。为了得到全局极小值,必须对每一步估计的值进行扰动,然后,再求解方程(15.61),因此,这种方法的计算量很大。
为此,Heeger和Jepson提出了一个有效的方法来搜索仅含有的极小化函数,并用一些常用的代数方法求解,而不必在每一步计算(15.61)。进一步说,由于估计的算法仅仅取决于一个比例因子,不失一般性地,可以将搜索空间限制在单位球面。单位球面可以用球面坐标的两个角来描述。一旦确定了的最佳估计,就可以从(15.61)中计算的最小二乘估计。实验表明这个方法对于光流估计误差相当稳定。
15.2.5优化法
优化法的基本思想是独立地对三维运动和结构参数估计值进行扰动,直到估计的三维运动在图像平面上的投影速度与实际的光流场相一致。从一个合理的初始值或通过其它方法得到的初始估计开始,优化算法可以成功地跟踪长序列图像中的小变化量运动和结构参数。为了防止优化算法发散或收敛到代价函数的局部最小值,通常需要某种在三维运动和结构参数上的平滑约束条件。
Morikawa和Harashima[Morikawa 1991]使用正交速度场模型(见式15.42)提出了一种估计三维运动的优化法。假定场景中只有单一的刚体运动,则运动参数是全局参数。然而,深度参数随空间变化。设,。若给出三维运动和深度参数的初始值,我们利用
(15.62)
逐步修正上一次的估计结果。在这里,问题简化为寻找逐帧递增的参数。运动平滑度约束条件意味着修正项(递增的参数)应该很小。因此,根据下面的函数引进一个平滑测度:
(15.63)
其中是比例系数,是的范数,是图像点的数量。
投影速度场估计值与实际光流场的均方差和三维运动参数平滑约束条件共同构成代价函数
(15.64)
其中
优化法可以通过基于梯度法或模拟退火法来实现。因为这个过程使用正交速度场,所以能够找到一个满足附加常数和比例系数的深度参数,同时可以确定关于这一比例常数倒数的两个旋转角度。在正交模型下估计运动和结构的类似方法见[Kanatani 1986]
15.2.6 几种方法比较
基于光流的运动和结构恢复不需要建立特征点的对应,只依赖于估计的光流场,但是光流估计本身是“不适定”问题,对于观测噪声非常敏感。文献[Tekalp 1995]对三种基于光流算法的性能进行了比较,它们是:ⅰ)解析法,ⅱ)Heeger-Jepson法,ⅲ)优化法。其中前两种方法是基于透视投影光流场方法,后一种是基于正交投影光流场方法。表15.1给出了使用光流模型进行3D运动和深度参数估计的仿真结果,在仿真中共使用了30个模拟点,其中值均匀地在区间[-25,25]cm之间,值均匀分布在[70,100]cm范围内的。令焦距参数=50mm。为了测试这些方法对于光流估计误差的敏感度,它们在光流矢量模拟数据的基础上分别增加3%和10%的误差。
表15.1 运动参数的比较(角度单位:弧度,平移单位:象素)
真实值
解析法
无误差 3%误差
Heeger-Jepson法
无误差 3%误差 10%误差
=0.007
=0.010
=0.025
=1.80
=0.48
深度误差
匹配误差
0. 0070 0.0133
0.0099 0.0058
0.0250 0.0232
1.7999 2.9571
0.4799 10.121
1.73E-5 0.824
2.17E-7 0.0152
0.0064 0.0094 0.0036
0.0105 0.0066 0.0008
0.0249 0.0251 0.0249
1.7872 1.9439 2.7814
0.4693 0.5822 0.8343
1.41E-3 0.0181 0.0539
2.71E-5 5.99E-4 0.0018
在表15.1,“深度误差”对应于深度估计中的规范化均方根误差:
深度误差 (15.66)
其中,匹配误差是指三维运动和深度参数估计值生成的光流场与输入的光流场的偏差:
匹配误差 (15.67)
从表15.1容易看出解析解法对于噪声较敏感,这主要是因为它引进了三个冗余的中间未知量,以便使线性公式(15.56)成立.可以看出八个中间未知量中只要有五个就足以求解运动参数,在有噪声的情况下,五个中间未知量的不同组合可能产生不同的运动估计。虽然最小二乘方可以得到中间未知量,但最后的运动估计不是真正的最小二乘方估计。H-J法总可以找到运动和深度参数,使最小二乘方误差函数达到最小。因此,H-J法是一种光流估计的鲁棒方法。注意,在H-J法中,估计值的正确性依赖于搜索过程中使用的步长(单位球面角度的增量)。表15.1所用的步长为。
Morikawa法是一种基于正交投影光流模型方法,它的性能依赖于给定光流矢量偏离正交模型(15.42)的程度。偏离量和物体深度方向的尺度与物体各点投影中心平均深度之间的比值有关(回顾一下15.1.1节的正交投影模型),可定义为
取时,Morikawa法没能正常地工作。表15.2所示的是完全正交投影光流场和Morikawa法在时的透视光流估计性能的比较。Morikawa算法面临的另一个重要问题是如何对未知参数初始值。在上面的模拟中,所有参数的初始化选在它们真实值的上下范围内。一般来说,代价函数有多个最小值,而且结果非常依赖初始点。建议使用Morikawa 法跟踪小变化量运动图像参数,这里第一帧的初始值可以通过其它方法(如14章中的两步迭代算法)确定。
表15.2运动参数的比较(角度单位:弧度,位移单位:象素)
真实值
正交
透视,
深度误差
匹配误差
0.00713
0.01013
0.02513
0.09987
0.17987
0.00011
0.00322
0.00677
0.00977
0.02477
0.10023
0.18023
0.00023
0.00489
15.3光流分割
一般来说,真实场景图像序列包含有许多个运动的物体,为了分析和理解这样的动态场景,首先需要对运动图像序列中各个独立的运动物体进行标记,这种标记过程称为三维运动分割。运动图像分割可以直接使用时空图像亮度和梯度信息来分割独立的运动区域,比如,使用第14章所述的差分图像来分割图像,也可以采用参数模型,利用最小二乘法拟合运动区域,从而将图像分割成小的区域[Hoetter 1988, Diehl 1991]。本节主要讨论基于稠密光流场的不连续性来分割运动图像,即首先估计运动图像稠密光流场,然后将相似的光流矢量合并,对应一个独立的运动物体。
15.3.1 Hough 变换分割方法
Hough变换是众所周知的聚类方法,这种方法可以在量化参数空间中表决出最具有代表性的特征值。对于使用6个参数的仿射光流模型(15.44)的光流分割,可以直接应用Hough变换法。首先,确定每一个参数的最小值和最大值,并将6维特征空间量化成某些参数状态,然后,每一个光流矢量“投票”支持一个已量化的参数集,使的下式达到极小:
(15.68)
其中和。如果一个参数集合得到的赞成票数大于预定数量,则很有可能表示候选的运动。由此确定分类号和用于标记每一个光流矢量的对应参数集。不过,这一方法的缺陷是需要的计算量很大。
为了减小计算量,[Adiv 1985]提出了一个使用改进的Hough变换算法。这个算法分两个阶段,在算法的第一阶段,将光流矢量连通集组合在一起,形成与单一参数集一致的成分。这里给出几种简化方法以减轻计算量,包括:1)把参数空间分成两个不相连的子集合,来实现两个三维Hough变换,2)多分辨率Hough变换,其中在每一个分辨率水平上,参数空间将在上一个分辨率水平上的估计值周围进行到量化,3)多路传输Hough变换技术,其中,与候选参数最一致的光流矢量首先得到组合。在算法的第二阶段中,将这些在算法的第一阶段生成的成分(它在最小二乘方意义下的二次流模型(15.49)相一致)合并成块。目前已经提出了几种合并准则。最后,可以将未合并的光流矢量归并到它们邻近的块中。
总之,改进的Hough变换分割方法建立在这样的基础上,即首先将光流矢量聚类成
展开阅读全文