[发明专利]基于同步积分SURF算法的多路视频拼接方法有效

专利信息
申请号: 202010583759.2 申请日: 2020-06-23
公开(公告)号: CN111861883B 公开(公告)日: 2022-06-14
发明(设计)人: 张立国;刘强;金梅;李福昆;杨曼;李媛媛;胡林;李翔宇;李清天 申请(专利权)人: 燕山大学
主分类号: G06T3/40 分类号: G06T3/40;G06T5/00;G06T7/10;G06T7/80
代理公司: 北京孚睿湾知识产权代理事务所(普通合伙) 11474 代理人: 王冬杰
地址: 066004 河北省*** 国省代码: 河北;13
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 基于 同步 积分 surf 算法 视频 拼接 方法
【权利要求书】:

1.一种基于同步积分SURF算法的多路视频拼接方法,其特征在于,其包括如下步骤:

步骤1:进行多路视频采集;

步骤2:对多路视频数据进行同步;

步骤3:对多路视频数据进行图像矫正;

步骤31:利用摄像头标定软件获得视频数据的图像矫正映射表;所述映射表包含水平方向映射表map_x和垂直方向映射表map_y,分别以数组map_x(i,j)和map_y(i,j)的形式写入单独的头文件,包含进ARM端工程中,并将map_x、map_y的数组首地址传递到FPGA端;所述map_x(i,j)和map_y(i,j)分别表示矫正后的图像的(i,j)处像素在原图像中横坐标和纵坐标;

步骤32:传递所述映射表到FPGA端;FPGA端通过AXIMaster端口从map_x、map_y数组地址读取数据并分别存储在两个hls::Mat对象中;

步骤33:缓存待矫正区域;

读取一帧视频缓存到hls::Mat对象src_Mat中;若要矫正src_Mat中第r行像素,需要将src_Mat中第r-m到第r+n行像素读取到二维数组tmp_Array中,其中,n和m需根据不同摄像头图像的垂直偏差确定;若输入图像水平尺寸小于1024个像素,则使用ARRAY_PARITION指令将二维数组tmp_Array中的元素存储到寄存器中;

步骤34:矫正图像;

当src_Mat对象的前n+m行图像读取到二维数组tmp_Array中后,开始依序从水平方向映射表map_x、垂直方向映射表map_y中读取映射坐标,并将像素值写入结果图像dst_Mat;当第一行像素矫正完成,继续从src_Mat读取一行像素并分别写入到tmp_Array[row%(m+n)][col]位置,其中,row从0开始,每从src_Mat中读取一行,row值加1;

步骤35:重复步骤34直到一帧图像矫正完成;

步骤4:对矫正后的图像进行图像裁剪;

使用流水线算法将矫正后的图像四周未填充像素数据的行和列所对应的像素有效信号和行同步信号置低,形成新的像素有效信号和行同步信号;

步骤5:对矫正后的图像进行图像拼接;

该步骤包括如下具体操作:

步骤51:拆分图像;

采用遍历hls::Mat对象的方法,拆分出来包含交叉范围的图像,交叉范围以坐标LUij(x0,y0),RBij(x1,y1)表示,其中LUij表示第i个摄像头与第j个摄像头图像间,包含交叉范围的图像的左上角坐标;RBij为第i个摄像头与第j个摄像头图像间,包含交叉范围的图像的右下角坐标;将这部分图像存储到hls::Window对象image_ij_c中;

步骤52:对图像像素点进行积分;

以步骤51中的坐标LUij和RBij为边界,以像素有效信号为驱动时钟,每个时钟上升沿计算一次积分,每个场同步信号上升沿到来时置零,计算公式如下:

I(x,y)=I(x-1,y)-I(x-1,y–1)+I(x,y–1)+P(x,y)

式中,I(x,y)表示坐标为(x,y)的像素与图像左顶点之间像素的积分,P(x,y)表示图像坐标为(x,y)处的像素值;

步骤53:计算Hessian响应矩阵;

将步骤52中计算的图像积分缓存到hls::Window对象I_W中,将不同尺寸的盒式滤波器数组通过AXIMaster端口读入FPGA端并缓存到hls::Window对象中,使用不同尺寸滤波器与image_ij_c图像进行卷积,计算出各Hessian响应矩阵;使用LOOP_MERGE指令实现同时计算不同滤波器尺寸的Hessian响应矩阵,并将结果分别缓存在hls:Window对象中;

步骤54:寻找特征点;

使用3×3×3的模板分别遍历同一组,相邻3层的Hessian响应矩阵;

若中心点的值大于预设的阈值,且比相邻的26个点的值都大,则选为特征点;同时将此特征点的索引存储到vector对象中,索引信息包括所在的组号、在组中的层号及(x,y)坐标;

步骤55:计算特征点主方向;

从步骤54中的vector对象中读取特征点索引信息,并以每个特征点为中心,用张角为50°~70°的扇形滑动窗口,以60°为步长旋转这个滑动窗口;并对窗口内的图像Harr小波的响应值进行累加,主方向为最大的Harr响应累加值对应的方向;

步骤56:计算特征矢量;

继续以每个特征点为中心,将20s×20s邻域沿主方向划分为4×4的子块,每个子块利用尺寸为2s的Harr模板进行响应值计算,s=1.2*L/9,其中L为Hessian矩阵的尺寸,然后对响应值进行统计∑dx、∑|dx|、∑dy、∑|dy|形成特征矢量;

步骤57:特征点匹配;

通过计算两个特征点间特征向量的欧氏距离来确定匹配度,欧氏距离越短,代表两个特征点的匹配度越好;此外,如果两个特征点的Hessian矩阵迹正负号相同,代表两个特征点具有相同方向上的对比度变化,如果不同,说明这两个特征点的对比度方向相反,直接剔除;

步骤58:计算最佳坐标变换矩阵;

随机抽取4对匹配的特征点,利用这4对特征匹配坐标计算出透视矩阵H1,假设待拼接的图像为第i个摄像头与第j个摄像头的图像imagei和imagej的包含交叉区域的图像image_ij_c和image_ji_c,将image_ji_c中所有特征匹配点经过该透视矩阵H1映射到image_ij_c的坐标空间,然后与image_ij_c匹配点实际坐标求欧氏距离;

之后再随机抽取不同的四组特征匹配坐标,再计算透视矩阵H2,再求欧氏距离,如此重复多次,直到所有组合方式都用完;最后以欧氏距离最小的那个透视矩阵作为最佳透视矩阵,同时将欧氏距离过大的匹配特征点剔除;

步骤59:图像拼接;

使用最佳坐标变换矩阵将imagej的坐标空间转换到imagei的坐标空间,将图像平移并映射到新的hls::Mat对象中完成拼接;

步骤6:将结果图像裁剪为预设大小;

步骤7:利用VDMA技术,将拼接完成的图像通过AXI4总线,以乒乓操作写入DDR3存储器相应的帧缓存地址所对应的存储区域中;

步骤8:使用UDP协议通过千兆以太网将DDR3存储器中的图像发送到上位机,发送时,每个数据包包含4字节数据包编号,1024字节图像数据,上位机根据数据包号将数据放入缓存区的固定位置以解决丢包造成整幅画面混乱的问题。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于燕山大学,未经燕山大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202010583759.2/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top