本发明专利技术涉及一种基于参考帧变换及拼接尺寸自适应的同步在线拼接方法。针对拼接结果与视频流要求同步一致的情况,本发明专利技术使用了共享内存技术,保证待拼接帧为当前最新帧,从而实现同步性;为了保证拼接结果的准确性,使用了参考帧变换技术,减少了累积误差,增加了视频流的可拼接时长;针对给拼接结果分配固定尺寸,造成的内存资源浪费和拼接性能下降的问题,本发明专利技术使用了拼接尺寸自适应技术,动态计算应该分配的尺寸大小,减少不必要的内存开销,提高拼接性能。
【技术实现步骤摘要】
【专利摘要】本专利技术涉及一种。针对拼接结果与视频流要求同步一致的情况,本专利技术使用了共享内存技术,保证待拼接帧为当前最新帧,从而实现同步性;为了保证拼接结果的准确性,使用了参考帧变换技术,减少了累积误差,增加了视频流的可拼接时长;针对给拼接结果分配固定尺寸,造成的内存资源浪费和拼接性能下降的问题,本专利技术使用了拼接尺寸自适应技术,动态计算应该分配的尺寸大小,减少不必要的内存开销,提高拼接性能。【专利说明】
本专利技术涉及一种同步在线图像拼接技术,具体为基于参考帧变换及拼接尺寸自适应的同步在线拼接技术。
技术介绍
图像拼接技术不仅是计算机视觉领域研究的热点问题,在实际的生活中也有广泛的应用,小到手机中的全景拼接,大到卫星所摄星系图像的拼接。图像拼接技术最核心的目的就是提供更全、更准确的全局信息,向观测者反映一片区域、一个场景的完整信息。其中,实时视频流的同步在线拼接又是未来拼接技术的发展趋势。试想一下,无人机对一片未知的区域进行拍摄,在拍摄过程中,能同步地对回传图像结果进行拼接和显示,这种拼接技术能够为军事侦查、地形勘测、灾后救援等需求提供所摄区域的同步全景信息,从而减少应用者做出决策的时间。 文献“何贝,王贵锦,沈永玲,等.结合地理参数的航拍视频实时拼接算法.应用科学学报,2012,30 (2): 151-157.”提出了一种结合地理参数的航拍视频实时拼接算法。此方法根据地理参数对相机运动模型进行分解,完成视频帧间的实时配准,估计视频每帧的主运动方向,将现有的单一主方向的流形拼接算法拓展到任意方向,最后根据地理坐标局部修正拼接条带。这种方法对于有地理坐标区域和所摄视频中未出现拍摄倾角变化的情况,能够产生比较好的结果。实际的需求往往是需要对一块未知区域进行地图绘制,这时该方法会失效,并且无人机在航拍的时候,会受到气流、雨水等自然条件的影响,不可能长时间保持一种拍摄角度,拍摄倾角必定会发生变化,这也会影响拼接的整体质量。而且,根据文章中的实验结果可知,其拼接结果的尺寸为固定大小,并没有用到拼接尺寸自适应技术,生成图中有效结果部分占整个生成图的比例很小,这会造成内存的极大浪费和拼接性能的降低。除此之外,该方法并不能同步在线进行拼接,即无法同步显示当前拼接的结果。
技术实现思路
要解决的技术问题 为了避免现有技术的不足之处,本专利技术提出一种。 技术方案 —种,其特征在于步骤如下: 步骤1:将第一帧图像作为参考帧,下一帧作为拼接帧,提取当前参考帧与最新拼接帧的SIFT特征点并进行匹配,将参考帧和拼接帧的能够匹配的特征点数量与设定的阈值进行比较: 如果特征点数量高于设定的阈值,进入步骤2 ;如果特征点数量小于设定的阈值,再重新取下一帧作为拼接帧进行比较:如果特征点数量高于设定的阈值,进入步骤2 ;否则认为这两次匹配无效,重新选择参考帧,新的参考帧为与旧参考帧能够有效匹配的最新拼接帧; 步骤2:根据两帧图像之间的特征点对应关系,计算透视变换模型: hx h2 h3 H= h4 h5 h6(I)Jh h hg 一 其中,用于表示拼接帧图像在给定世界坐标系X轴方向上的平移和旋转,h4,h5,h6用于表示拼接帧图像在给定世界坐标系y轴方向上的平移和旋转,h7,h8,h9用于表示拼接帧图像的尺度变换; 步骤3:计算透视变化模型的重投影误差,判断透视变化模型参数是否无效: a、假设待拼接图像中任意像素P = (X,y, 1)τ,由下式计算此像素在参考帧图像中对应的像素P’ = (X’,y’,1)τ:(".、■.= (/?,X + Iu V + h,)/(lu.x + hx V + /?,,) I, , "(2) I>'' = (Kx+}hy+K)丨(^+Ky+K) 写成矩阵的形式为:pi hi (x\v\lf =----— Zj4 h5 h6 (χ,.ν,1)Γ(3) (h7x + h,y + h9) J1I "8 n9 _ b、计算p’ = (x’,y’,1)T重新投影到此拼接帧图像的对应像素P "=(X",y" ,l)T: W,i)r =77~I~(4) (/?7x +/?、V +/?()) 其中上^上^上^是沪第三行的元素; C、重投影误差由下式计算: I N 1-;-7 error = —■ ^ J.v,"-七|' + |.v,_ "-V,-1_ N /=i 如果误差大于5个像素,则认为此透视变化模型参数无效; 步骤4:自适应调整拼接图像尺寸: 根据透视变换模型和公式3,计算拼接帧四个顶点的图像坐标经过透视变换后在参考帧图像坐标系下的坐标: 所述的拼接巾贞四个顶点的图像坐标:左上角LeftJJp = (0,0),右上角Right_Up = (width, O),左下角 Left_Bottom = (O, height),右下角 Right_Bottom =(width, height); 所述的经过透视变换后的在参考帧图像坐标系下的坐标:左上角Left_Up =(xiu, Yiu),右上角 RightJJp = (xru, yru),左下角 Left_Bottom = (xlb, ylb),右下角 Right_Bottom = (xrb, yrb); 确定width, xlu, xru, xlb, xrb 和 height, ylu, yru, ylb, yrb 中的最大值和最小值:max = max (width, xiu, x,, x!h, xrh) mii!^ -1nin(C)1A-,,,X,,,,.ν/Λ,.vw,)⑶ max Y = max (height, , yni, y,h.yrh) 、, min Y = min(0, yhl, yru, ylb, yrb) 计算需要生成的拼接结果的尺寸,其中ew、eh是尺寸补偿:f new widih = max X - min X+ ^11 I —(6) [new_heighl = max Y - minY+sh 按照此尺寸动态地分配内存空间给拼接帧图像,再利用逐像素复制,完成图像拼接。 所述的阈值的取值范围为大于10且小于输入图像的分辨率大小。 所述的ew、ε !^根据输入图像的分辨率确定,ew为图像宽的20%,图像高的 20%。 有益效果 本专利技术提出的一种,产生的有益效果:使用共享内存技术,保证拼接的每一帧都是当前视频流的最新一帧,从而保证同步性;利用变换参考帧方法,减少累积误差,增加视频流的可拼接时长;利用拼接尺寸自适应技术,动态地分配内存空间,以减少拼接结果的内存消耗,提高拼接性能。 【具体实施方式】 现结合实施例对本专利技术作进一步描述: 本方法首先在计算机中开辟一段地址固定的内存区,无人机每拍摄一张图像都将其复制到这块内存中,后端处理程序一直检测这块内存区是否有数据进入,如果有数据,立即将数据取走,否则继续检测。这样既能保证视频采集模块和拼接模块具有一定的独立性,又能保证数据的同步性。累积误差是图像拼接中最常见的问题,只拼接几十张图像可能累积误差的问题并不会暴露,但是如果拼接几千,几万张,累计误差问题就会严重影响拼接质量,甚本文档来自技高网...
【技术保护点】
一种基于参考帧变换及拼接尺寸自适应的同步在线拼接方法,其特征在于步骤如下:步骤1:将第一帧图像作为参考帧,下一帧作为拼接帧,提取当前参考帧与最新拼接帧的SIFT特征点并进行匹配,将参考帧和拼接帧的能够匹配的特征点数量与设定的阈值进行比较:如果特征点数量高于设定的阈值,进入步骤2;如果特征点数量小于设定的阈值,再重新取下一帧作为拼接帧进行比较:如果特征点数量高于设定的阈值,进入步骤2;否则认为这两次匹配无效,重新选择参考帧,新的参考帧为与旧参考帧能够有效匹配的最新拼接帧;步骤2:根据两帧图像之间的特征点对应关系,计算透视变换模型:H=h1h2h3h4h5h6h7h8h9---(1)]]>其中,h1,h2,h3用于表示拼接帧图像在给定世界坐标系x轴方向上的平移和旋转,h4,h5,h6用于表示拼接帧图像在给定世界坐标系y轴方向上的平移和旋转,h7,h8,h9用于表示拼接帧图像的尺度变换;步骤3:计算透视变化模型的重投影误差,判断透视变化模型参数是否无效:a、假设待拼接图像中任意像素p=(x,y,1)T,由下式计算此像素在参考帧图像中对应的像素p'=(x',y',1)T:x′=(h1x+h2y+h3)/(h7x+h8y+h9)y′=(h4x+h5y+h6)/(h7x+h8y+h9)---(2)]]>写成矩阵的形式为:(x′,y′,1)T=1(h7x+h8y+h9)h1h2h3h4h5h6h7h8h9(x,y,1)T---(3)]]>b、计算p'=(x',y',1)T重新投影到此拼接帧图像的对应像素p″=(x″,y″,1)T:(x′′,y′′,1)T=1(h7′x+h8′y+h9′)H-1(x′,y′,1)T---(4)]]>其中,h'7、h'8、h'9是H‑1第三行的元素;c、重投影误差由下式计算:error=1NΣi=1N|xi′′-xi|2+|yi′′-yi|2---(5)]]>如果误差大于5个像素,则认为此透视变化模型参数无效;步骤4:自适应调整拼接图像尺寸:根据透视变换模型和公式3,计算拼接帧四个顶点的图像坐标经过透视变换后在参考帧图像坐标系下的坐标:所述的拼接帧四个顶点的图像坐标:左上角Left_Up=(0,0),右上角Right_Up=(width,0),左下角Left_Bottom=(0,height),右下角Right_Bottom=(width,height);所述的经过透视变换后的在参考帧图像坐标系下的坐标:左上角Left_Up=(xlu,ylu),右上角Right_Up=(xru,yru),左下角Left_Bottom=(xlb,ylb),右下角Right_Bottom=(xrb,yrb);确定width,xlu,xru,xlb,xrb和height,ylu,yru,ylb,yrb中的最大值和最小值:maxX=max(width,xlu,xru,xlb,xrb)minX=min(0,xlu,xru,xlb,xrb)maxY=max(height,ylu,yru,ylb,yrb)minY=min(0,ylu,yru,ylb,yrb)---(5)]]>计算需要生成的拼接结果的尺寸,其中εw、εh是尺寸补偿:new_width=maxX-minX+ϵwnew_height=maxY-minY+ϵh---(6)]]>按照此尺寸动态地分配内存空间给拼接帧图像,再利用逐像素复制,完成图像拼接。...
【技术特征摘要】
【专利技术属性】
技术研发人员:杨涛,张艳宁,王斯丙,马文广,姚博伟,
申请(专利权)人:西北工业大学,
类型:发明
国别省市:陕西;61
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。