一种基于关键帧的实时摄像机跟踪方法

文档序号:6597812阅读:215来源:国知局

专利名称::一种基于关键帧的实时摄像机跟踪方法
技术领域
:本发明涉及摄像机跟踪方法,尤其涉及一种基于关键帧的实时摄像机跟踪方法。
背景技术
:实时摄像机跟踪技术指在自然场景中根据摄像机的视频图像输入,实时恢复摄像机的方位。该技术可分为基于硬件或者基于视觉的摄像机跟踪,在增强现实,视频编辑,机器导航中都是最关键的组成部分。硬件设备包括陀螺仪,GPS导航设备,深度扫描仪等。硬件设备的优点是误差范围稳定,通用性强;但是误差比较大,经济成本也比较高。基于视觉的方法主要利用计算机视觉算法从图像感应器中提取特征,分析特征,并恢复摄像机在空间中的方位。现有的摄像机全局定位技术主要可参考IrynaSkrypnykandDavidG.Lowe.Scenemodeling,recognitionandtrackingwithinvariantimagefeatures.InISMAR’04Proceedingsofthe3rdIEEE/ACMInternationalSymposiumonMixedandAugmentedReality,pages110-119。他们采用的方法是用从运动推断结构方法恢复出场景的稀疏三维SIFT特征点结构(可参考GuofengZhang,XueyingQin,WeiHua,Tien-TsinWong,Pheng-AnnHeng,andHujunBao.RobustMetricReconstructionfromChallengingVideoSequences.IEEEConferenceonComputerVisionandPatternRecognition(CVPR),2007.),然后将输入图像上的二维SIFT特征点与场景的三维SIFT特征点匹配,得到二维SIFT特征点的三维信息,然后求解摄像机方位。该方法的缺点是当场景变大,特征点变多,SIFT描述量的匹配性能下降,跟踪变得不稳定;而且匹配时间上升,不能满足实时跟踪的要求。为了改进是摄像机跟踪的性能,一些研究者提出关键帧技术(主要可参考LucaVacchetti,VincentLepetit,PascalFua,StableReal-Time3DTrackingUsingOnlineandOfflineInformation,IEEETransactionsonPatternAnalysisandMachineIntelligence,Volume26,Issue10,Pages1385-1391,2004),从索引图像序列中选取一定数目的关键帧,而在实时摄像机跟踪过程中,输入图像的上特征点之和最接近的关键帧上的特征点匹配。他们的关键帧是用户手工选取的,相对来说是一个不稳定的,且耗时间的过程。另一方面,图像识别技术也被用来做快速位置识别,可参考IrscharaArnold,ChristopherZach,Jan-MichaelFrahm,BischofHorst,FromStructure-from-MotionPointCloudstoFastLocationRecognition,inIEEEComputerSocietyConferenceonComputerVisionandPatternRecognition(CVPR2009),2009.他们利用从运动推断结构技术恢复出场景的稀疏三维SIFT特征点结构,并自动选择关键帧代表场景中需要识别的位置,然后利用特征词汇树(可参考DavidNistér,HenrikStewénius,ScalableRecognitionwithaVocabularyTree,IEEEComputerSocietyConferenceonComputerVisionandPatternRecognition,Vol.2(2006),pp.2161-2168.)快速识别摄像机所在的位置。
发明内容本发明的目的在于针对现有摄像机全局定位技术的不足,提出一种基于关键帧的实时摄像机跟踪方法。基于关键帧的实时摄像机跟踪方法包括如下步骤1)捕获索引图像序列,利用从运动推断结构方法,恢复场景的稀疏三维特征点结构;2)给定索引图像序列和稀疏三维特征点结构,通过优化与关键帧相关的能量函数,自动选择关键帧;3)在实时摄像机跟踪过程中,对于每一帧实时输入图像,先利用图像识别的特征词汇树方法,快速从关键帧集合中定位与实时输入图像相似的候选关键帧;4)实时输入图像上提取的特征点与候选关键帧上的特征点匹配,得到图像上特征点对应的三维坐标,求得摄像机的方位参数。所述的捕获索引图像序列,利用从运动推断结构方法,恢复场景的稀疏三维特征点结构步骤为1)从每一帧索引图像中提取特征点;2)每一帧索引图像中的特征点与前一帧索引图像的特征点匹配,得到同一个特征点在多幅索引图像上的位置信息;3)根据特征点在多幅索引图像上观察到的位置信息,恢复出特征点的三维坐标。所述的给定索引图像序列和稀疏三维特征点结构,通过优化与关键帧相关的能量函数,自动选择关键帧步骤为与关键帧相关的能量函数定义为其中F是索引图像集合,是关键帧集合,Ec(F)是完备项,Er(F)是冗余项,λ是权重。完备项Ec(F)定义如下其中V(F)是关键帧包含的三维特征点,是索引图像序列包含的三维特征点,即所有特征点,χ表示一个特征点。特征明锐项s(χ)=D(χ)·min(|f(χ)|,T),D(χ)是特征点特征反应值绝对值大小,|f(χ)|是可观察到这个特征点的索引图像的数目,称为特征匹配长度,T控制最大的特征匹配长度,min(,)是取两个变量的较小值函数。特征密度项d(χ)定义如下d(xi)是χ在第i帧索引图像上对应的特征点xi的特征密度,是在图像上的一个局部窗口内的特征点的个数。冗余项Er(F)定义如下其中是归一化;|f(χ)∩F|是χ在关键帧集合F中出现的次数。基于上述的能量函数定义,利用贪婪法优化能量,自动选取使能量值最小的关键帧集合;关键帧集合初始化为空集合,贪婪法优化的每一次迭代,将最大减少能量函数的索引图像加入关键帧集合,直到能量函数不能下降为止。所述的在实时摄像机跟踪过程中,对于每一帧实时输入图像,先利用图像识别的特征词汇树方法,快速从关键帧集合中定位与实时输入图像相似的候选关键帧步骤为1)将关键帧中所包含的所有特征点组织成特征词汇树的搜索结构,特征词汇树的每一个节点对于判断关键帧相似值的重要性由节点的权值决定,权值定义为该节点所包含的特征点覆盖的关键帧数目的倒数;2)对于每一帧实时输入图像,所有关键帧与输入图像的相似值初始为0;对于实时输入图像上的每一个特征点,在特征词汇树中搜索与之最接近的节点,包含在这个节点中的每一个关键帧与输入图像的相似值加上该节点的权值;所有特征点搜索完成后,相似值最大的关键帧被选为输入图像的候选关键帧。所述的实时输入图像上提取的特征点与候选关键帧上的特征点匹配,得到图像上特征点对应的三维坐标,求得摄像机的方位参数步骤为1)实时输入图像与候选关键帧匹配特征点;2)所有得到的匹配包括特征点在当前图像上的图像坐标和在空间的三维坐标,通过优化所有特征点三维坐标在图像上的投影和图像坐标之间的误差,求得摄像机的旋转和位置参数,完成摄像机跟踪过程。本发明的关键帧选择方法是全自动的方法,仅需要用户指定能量函数的一个权值;而且本发明利用了贪婪法优化能量函数,可以很快速地确定关键帧;对于几千帧图像序列,仅仅需要十几秒。本发明还结合快速图像识别技术,通过首先确认候选关键帧,再进行特征匹配的方法,充分利用关键帧提升匹配效率和性能;大大地增强了实时摄像机跟踪在大型场景中的稳定性和实用性。本发明计算效率高,求解结果稳定,由该方法得到的摄像机跟踪结果可直接用于增强现实,虚拟交互等应用;而且,该方法自动选择关键帧的方法也适用于图像序列数据压缩。图1是本发明的特征词汇树及关键帧投票法的示意图;图2是基于关键帧的实时摄像机跟踪方法的流程图;图3是本发明实施例的索引图像序列的稀疏三维特征点结构。图4是本发明实施例的关键帧集合的示意图。图5是本发明实施例的实时摄像机跟踪用于增强现实的结果图。具体实施例方式本发明提升了摄像机实时跟踪技术的稳定性,延展性和实时性,在现实环境中能得到鲁棒的摄像机跟踪结果。1.为了达到这个目的,本发明采取以下技术方案1)捕获索引图像序列,利用从运动推断结构方法,恢复场景的稀疏三维特征点结构;2)给定索引图像序列和稀疏三维特征点结构,通过优化与关键帧相关的能量函数,自动选择关键帧;3)在实时摄像机跟踪过程中,对于每一帧实时输入图像,先利用图像识别的特征词汇树方法,快速从关键帧集合中定位与实时输入图像相似的候选关键帧;4)实时输入图像上提取的特征点与候选关键帧上的特征点匹配,得到图像上特征点对应的三维坐标,求得摄像机的方位参数。2.所述的捕获索引图像序列,利用从运动推断结构方法,恢复场景的稀疏三维特征点结构步骤为捕获索引图像序列利用从运动推断结构方法,恢复场景的稀疏三维特征点结构。每一个三维特征点表示为χ={xi|i∈f(χ))},f(χ)是可观察到特征点χ的索引图像集合。χ同时包含特征描述量和三维位置。χ的三维位置表示为奇次坐标(xχ,yχ,zχ,1)。1)从每一帧索引图像中提取特征点;2)每一帧索引图像中的特征点与前一帧索引图像的特征点匹配,得到同一个特征点在多幅索引图像上的位置信息;3)根据特征点在多幅索引图像上观察到的位置信息,恢复出特征点的三维坐标。3.所述的给定索引图像序列和稀疏三维特征点结构,通过优化与关键帧相关的能量函数,自动选择关键帧步骤为给定索引图像序列需要自动选择关键帧集合F,优化使能量函数最小。包含两个项完备项和冗余项。完备项使更多的索引图像会被选为关键帧;冗余项控制关键帧的数目。1)关键帧选择通过优化能量函数完成的,能量函数为其中Ec(F)是完备项,即关键帧应该包含尽可能多的三维特征点;Er(F)是冗余项,即关键帧之间重复的特征点应尽可能少;λ是权重,控制关键帧数目和包含的特征点。完备项Ec(F)定义如下其中V(F)是关键帧包含的三维特征点;是索引图像序列包含的三维特征点,即所有特征点。本发明将优先选择重要性强的特征点所属于的索引图像作为关键帧,而特征点的重要性取决于明锐项和稳定性。特征明锐项s(χ)取决于SIFT特征点高斯层差的反应值绝对值大小D(χ),稳定性表示为可观察到这个特征点的索引图像的数目|f(χ)|,称为特征匹配长度。s(χ)定义如下s(χ)=D(χ)·min(f|f(χ)|,T)。其中T控制最大的特征匹配长度,防止部分过大的特征长度压制其它特征点。本发明要求特征点在二维图像空间均匀分布,以利于摄像机求解的稳定性。特征密度项d(χ)控制选取的特征点在图像上的分布密度,定义如下d(xi)是χ在第i帧索引图像上对应的特征点xi的特征密度,计算方法是在一个局部的窗口内计算存在的特征点的个数,见表1冗余项Er(F)的作用是使关键帧之间重叠的特征点尽可能少,即使χ在尽可能少的关键帧中出现,以此简化特征匹配。基于已知的f(χ),Er(F)定义如下其中是归一化;|f(χ)∩F|是χ在关键帧集合F中出现的次数;如果仅仅出现一次,即|f(χ)∩F|=1,则没有冗余。2)计算的所有子集的能量函数可以确定使最小的全局最优子集,即关键帧集合;然而常常包含几百上千帧,穷举计算太费时间。利用贪婪法求取关键帧虽然只能得到局部的最优子集,但是可以极大缩短时间,而且并不影响系统性能。这个方法类似于最速下降优化,每一次迭代,都将最大减少能量函数的索引图像加入关键帧集合;直到能量函数不能下降为止;具体算法见表2。4.所述的在实时摄像机跟踪过程中,对于每一帧实时输入图像,先利用图像识别的特征词汇树方法,快速从关键帧集合中定位与实时输入图像相似的候选关键帧步骤为在实时摄像机跟踪过程中,对于每一帧在线输入图像,如果与所有关键帧进行匹配,将会非常耗时,不能达到实时性能。因为在线输入图像一般只与部分关键帧重叠,所以本发明提出先确定与输入图像最相似的少数候选关键帧。利用图像识别的特征词汇树技术,快速从F中定位当前输入图像所对应的若干候选关键帧,然后进行特征匹配,见图1。1)利用图像检索的特征词汇树技术可以快速定位相似图像。首先,在关键帧集合F的基础上,构建有l层b个分支的特征词汇树V。V的根节点Root包括所有在关键帧中的特征点,K-Means方法根据特征点的SIFT描述量,将Root分成b个类,每类都成为Root的子节点。然后用K-Means方法将Root的每一个子节点分成b类,对应创建b个子节点,以此类推,直到达到第l层子节点,完成V的构建。每一个节点i包含关键帧链表Li,即Li中的关键帧有特征点被分类到节点i中。Ni(k)表示关键帧k中被分到节点i的特征点的数目。V的每一个节点i对于关键帧的识别的重要性由节点的权重wi决定,定义如下其中K是关键帧数目。可以看出,节点i包含的关键帧越少,权重越大,识别能力越强。2)在实时摄像机跟踪过程中,利用基于V的关键帧投票法快速识别候选关键帧。对于每一帧实时输入图像,所有关键帧与输入图像的相似值初始为0;对于实时输入图像上的每一个特征点,在特征词汇树中搜索与之最接近的节点,包含在这个节点中的每一个关键帧与输入图像的相似值加上该节点的权值;所有特征点搜索完成后,相似值最大的关键帧被选为输入图像的候选关键帧;具体算法见表3。由于有些节点覆盖了太多的关键帧,导致对于关键帧区分性很低,本发明通过阈值τ(等于30)直接忽略这些节点。这个方法的复杂度是是在特征搜索遍历V的过程中访问的节点中包含的关键帧数目的平均值。算法的运行时间主要取决于输入图像的特征点数目,因为大部分时间都在计算特征描述量之间的距离。5.所述的实时输入图像上提取的特征点与候选关键帧上的特征点匹配,得到图像上特征点对应的三维坐标,求得摄像机的方位参数步骤为1)实时输入图像与候选关键帧匹配特征点;2)所有得到的匹配包括特征点在当前图像上的图像坐标和在空间的三维坐标,通过优化所有特征点三维坐标在图像上的投影和图像坐标之间的误差,求得摄像机的旋转和位置参数,完成摄像机跟踪过程。实施例本发明提出一种基于关键帧的实时摄像机跟踪方法,主要包括四个步骤1.从索引图像序列中恢复场景的稀疏三维特征点结构;2.自动从索引图像中选择关键帧;3.实时摄像机跟踪时,快速选择候选关键帧;4.实时输入图像和候选关键帧进行特征匹配得到包含二维三维信息的匹配点,最后求解摄像机方位。具体实施过程分为预处理部分和实时摄像机跟踪部分,流程如图2所示,以下介绍处理一个校园场景实时例的步骤。1.预处理部分1)利用从运动推断结构技术,从索引图像序列恢复场景的稀疏SIFT三维特征点结构。现有许多种用于恢复场景三维信息的算法,一般采用从运动推断结构的离线摄像机跟踪方法,即可对大部分的图像序列高精度地恢复场景稀疏三维信息。现有许多软件都可以完成这个步骤,如2D3公司的boujou5、开放的免费软件VoodooCameraTracker或ACTS自动摄像机跟踪系统。实施例的稀疏三维特征点结构见图3.2)从索引图像序列中自动选择关键帧集合F,使能量函数最小。实施例的关键帧见图4。3)在选取的关键帧集合F的基础上,建立用于快速候选关键帧识别的特征词汇树V。2.实时跟踪摄像机部分1)利用网络摄像头实时捕获图像数据,可用任何一款彩色网络摄像头。微软公司的DirectShow多媒体开发API提供通用的应用程序框架,可从USB或者1394接口读取摄像头输入。2)从输入图像提取一定数量的SIFT特征点,控制数量的原因是跟踪摄像机不需要太多三维点,而且提取的特征点越多,这个步骤越耗时。3)利用基于特征词汇树V的关键帧投票法快速识别候选关键帧。实施例的候选关键帧见图5第2行。4)当前输入图像上提取的SIFT特征点与每一个帧候选关键帧上的特征点匹配,得到图像上特征点对应的三维坐标。为了加速特征点的匹配速度,一般只取K=3~4帧关键帧;而且每一个关键帧上的特征点用K-D树数据结构组织,单个特征点的算法复杂度只有logm,可以达到实时性能。5)得到当前输入图像上二维特征点和三维特征点的匹配信息之后,可以通过优化投影误差求得摄像机的方位参数,完成摄像机跟踪过程。投影误差公式是其中R和t是摄像机的旋转和平移参数,R是3×3正交矩阵,t是三维向量。mi=[u,v,1]T和Mi=[x,y,z,1]T表示第i个匹配特征点的二维图像坐标和三维坐标。K表示摄像机的内部参数,其中f是摄像机的焦距,(cx,cy)是图像平面的中心。以上所有的非线性优化都使用Levenberg-Marquardt算法。6)利用求解的摄像机方位,设置虚拟摄像机,绘制虚拟物体。实施例的摄像机跟踪结果用于增强现实见图5第1行。权利要求1.一种基于关键帧的实时摄像机跟踪方法,其特征在于包括如下步骤1)捕获索引图像序列,利用从运动推断结构方法,恢复场景的稀疏三维特征点结构;2)给定索引图像序列和稀疏三维特征点结构,通过优化与关键帧相关的能量函数,自动选择关键帧;3)在实时摄像机跟踪过程中,对于每一帧实时输入图像,先利用图像识别的特征词汇树方法,快速从关键帧集合中定位与实时输入图像相似的候选关键帧;4)实时输入图像上提取的特征点与候选关键帧上的特征点匹配,得到图像上特征点对应的三维坐标,求得摄像机的方位参数。2.根据权利要求1中所述的一种基于关键帧的实时摄像机跟踪方法,其特征在于所述的捕获索引图像序列,利用从运动推断结构方法,恢复场景的稀疏三维特征点结构步骤为1)从每一帧索引图像中提取特征点;2)每一帧索引图像中的特征点与前一帧索引图像的特征点匹配,得到同一个特征点在多幅索引图像上的位置信息;3)根据特征点在多幅索引图像上观察到的位置信息,恢复出特征点的三维坐标。3.根据权利要求1中所述的一种基于关键帧的实时摄像机跟踪方法,其特征在于所述的给定索引图像序列和稀疏三维特征点结构,通过优化与关键帧相关的能量函数,自动选择关键帧步骤为与关键帧相关的能量函数定义为其中F是索引图像集合,是关键帧集合,Ec(F)是完备项,Er(F)是冗余项,λ是权重。完备项Ec(F)定义如下其中V(F)是关键帧包含的三维特征点,是索引图像序列包含的三维特征点,即所有特征点,χ表示一个特征点。特征明锐项s(χ)=D(χ)·min(|f(χ)|,T),D(χ)是特征点特征反应值绝对值大小,|f(χ)|是可观察到这个特征点的索引图像的数目,称为特征匹配长度,T控制最大的特征匹配长度,min(,)是取两个变量的较小值函数。特征密度项d(χ)定义如下d(xi)是χ在第i帧索引图像上对应的特征点xi的特征密度,是在图像上的一个局部窗口内的特征点的个数。冗余项Er(F)定义如下其中是归一化;|f(χ)∩F|是χ在关键帧集合F中出现的次数。基于上述的能量函数定义,利用贪婪法优化能量,自动选取使能量值最小的关键帧集合;关键帧集合初始化为空集合,贪婪法优化的每一次迭代,将最大减少能量函数的索引图像加入关键帧集合,直到能量函数不能下降为止。4.根据权利要求1中所述的一种基于关键帧的实时摄像机跟踪方法,其特征在于所述的在实时摄像机跟踪过程中,对于每一帧实时输入图像,先利用图像识别的特征词汇树方法,快速从关键帧集合中定位与实时输入图像相似的候选关键帧步骤为1)将关键帧中所包含的所有特征点组织成特征词汇树的搜索结构,特征词汇树的每一个节点对于判断关键帧相似值的重要性由节点的权值决定,权值定义为该节点所包含的特征点覆盖的关键帧数目的倒数;2)对于每一帧实时输入图像,所有关键帧与输入图像的相似值初始为0;对于实时输入图像上的每一个特征点,在特征词汇树中搜索与之最接近的节点,包含在这个节点中的每一个关键帧与输入图像的相似值加上该节点的权值;所有特征点搜索完成后,相似值最大的关键帧被选为输入图像的候选关键帧。5.根据权利要求1中所述的一种基于关键帧的实时摄像机跟踪方法,其特征在于所述的实时输入图像上提取的特征点与候选关键帧上的特征点匹配,得到图像上特征点对应的三维坐标,求得摄像机的方位参数步骤为1)实时输入图像与候选关键帧匹配特征点;2)所有得到的匹配包括特征点在当前图像上的图像坐标和在空间的三维坐标,通过优化所有特征点三维坐标在图像上的投影和图像坐标之间的误差,求得摄像机的旋转和位置参数,完成摄像机跟踪过程。全文摘要本发明公开了一种基于关键帧的实时摄像机跟踪方法。包括如下步骤1)捕获索引图像序列,利用从运动推断结构方法,恢复场景的稀疏三维特征点结构;2)给定索引图像序列和稀疏三维特征点结构,通过优化与关键帧相关的能量函数,自动选择关键帧;3)在实时摄像机跟踪过程中,对于每一帧实时输入图像,先利用图像识别的特征词汇树方法,快速从关键帧集合中定位与实时输入图像相似的候选关键帧;4)实时输入图像上提取的特征点与候选关键帧上的特征点匹配,得到图像上特征点对应的三维坐标,求得摄像机的方位参数。本发明计算效率高,求解结果稳定,由该方法得到的摄像机跟踪结果可直接用于增强现实,虚拟交互等应用。文档编号G06T7/20GK101763647SQ201010104078公开日2010年6月30日申请日期2010年2月2日优先权日2010年2月2日发明者章国锋,鲍虎军,董子龙申请人:浙江大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1