APP下载

基于局部多层次特征的嵌入式视频全景拼接

2020-12-23强勇勇郭俊文马玉皓王立珂谢洪涛

火力与指挥控制 2020年10期
关键词:重影实时性全景

强勇勇,郭俊文,马玉皓,赵 岩,王立珂,谢洪涛

(北方自动控制技术研究所,太原 030006)

0 引言

坦克装甲车辆在行进和突击中需要实时对外界环境信息进行感知,传统通过观察窗获取外部信息的方式观察角度小,周视反应慢,容易被敌方锁定和打击。透视装甲技术借助车载分布式传感器,利用嵌入式视频全景拼接技术,将战场信息投影在车载显示器上,使装甲车内乘员能够在无窗的驾驶舱内“透视”装甲,获得对车外环境的实时感知能力,完成驾驶车辆与突击作战等任务[1]。在国外,透视装甲已经逐渐开始走向实战,美国、俄罗斯、英国、以色列等军事强国已经纷纷推出了自己的透视装甲系统[2]。

嵌入式视频全景拼接作为透视装甲的关键技术之一,直接关系到战场信息能否被实时、准确地获取[3]。已有的嵌入式全景拼接算法存在以下两个问题:一是实时性不好,和静态图像拼接不同,视频拼接需要在极短的时间内完成图像采集、预处理、配准、融合等计算工作,如果直接在嵌入式平台上部署现有的图像拼接算法,实时性很难满足要求[4];二是复杂环境适应性不强,在实验室环境下,大部分的算法能够很好地适应环境并得到质量合格的全景视频,但在复杂战场条件下,装甲车辆快速运动、抖动以及光照发生变化的情况下,就会产生错位、重影等拼接缺陷[5]。

针对嵌入式视频全景拼接中存在的实时性和错位、重影缺陷问题,本文提出了一种基于局部多层次特征匹配的嵌入式视频全景拼接算法。首先在局部区域对图像进行多层次特征匹配的方式,来优化传统配准算法因只有一个全局单应性矩阵,而导致局部配准失败出现错位的问题,并通过LUT 查找表的方法,将不同层次的配准信息加以存储,提高了特征点提取的效率和质量,满足了战场环境下的高实时性要求,最后通过查找最佳拼接线来消除视频全景拼接中的重影缺陷。

1 局部多层次特征匹配算法实现

1.1 重叠区域选择

图像配准是视频全景拼接的关键步骤,直接影响拼接的最终效果。传统的视频拼接算法使用全局特征匹配的方法实现图像配准[6],这种配准方法计算量大,实时性不强。由于摄像头的相对位置固定,不同画面之间的视场重叠角不发生变化,因此,可以采用重叠区域图像配准算法来加快算法的运行速度。图像配准时使用图像的重叠区域提取特征点,计算单应性矩阵,能够大大减少特征点提取和匹配的数量,提高算法的实时性。重叠区域可以使用视频的前几帧进行标定(如图1 所示),通过各个摄像头的重叠角度和采集到的图像确定出合理的重叠区域。为了尽可能提取到重叠区域内的所有特征点,选取的重叠区域需要比图像的实际重合区域大5%~10%。

图1 图像重叠区域选择

1.2 特征匹配

传统方法通过一个全局的单应性矩阵H 来完成图像所有像素点的投影变换[7],这种方法容易受到个别错误或者遗漏特征点的影响,从而使全景图像产生错位。本文提出在一个场景中不同层次的特征点对应着不同的H 矩阵,通过多层次特征匹配来获得不同层次的H 矩阵,最大限度地保留了图像不同层次下的特征匹配信息。该方法通过对初步粗匹配得到的特征点对多次使用RANSAC 方法[8-11]来提纯得到多组不同的匹配点对集合,每组匹配点对集合代表了图像不同层次的匹配信息。特征匹配算法如表1 所示:

表1 特征匹配算法

其中,每个网格的H 矩阵是利用高斯加权函数对各层的Hi进行加权平均得到的:

高斯加权函数定义为:

其中,xˆi是网格中心点在其图像的第i 层中最近邻的那个特征点,σ 为比例常数。

1.3 建立LUT 查找表

单应性矩阵H 计算完成之后,利用其对每个像素进行仿射变换得到仿射图像。由于摄像头相对位置固定,因此,并不需要每帧都计算H,所以本文先通过正向投影(用单应性矩阵H)得到全景图像的大小和每一个仿射图像在全景图像中的位置,然后使用逆向投影变换,得到与全景图像区域每个像素对应的源图像中的像素,并建立LUT 查找表[12]。

1.4 最佳拼接线查找

由于待拼接图像间存在颜色和亮度差异,因此,配准后得到的拼接图像有一条明显的拼接缝(如图2 所示)。为了消除拼接缝以及几何变换误差带来的重影,还需要对配准之后的图像进行融合[13-14]。

图2 拼接缝

图3 拼接线示意图

最佳拼接线查找是指在重叠区域搜索一条最佳拼接线,拼接线是图像上连续的像素所组成的一条曲线,生成全景图时,在线的左边取左图的信息,在线的右边取右图的信息,连接两幅图像,通过这种方式来减少由于同时加和两边的信息所造成的重影现象。以两幅图为例(如图3 所示),通过仿射变换之后的图像和参考图像之间产生重叠区域abcd,在重叠区域查找一条最佳拼接线。最佳拼接线查找需要满足两幅图像间的颜色差异较小和具有相似纹理特征的要求。

为了使拼接线两边的颜色差异尽可能小,可以通过比较像素点和像素均值的一维欧氏距离来判断出该点是否颜色变化剧烈的点。若一维欧氏距离较大,则说明该点颜色变化剧烈,反之则不是。色彩差异关系式定义如式(4)所示。

其中,Ec是P 点5×5 范围内像素均值与该点像素值的一维欧氏距离。

为了使拼接线两边邻近纹理尽可能相似,可以通过图像在不同方向的梯度,来量化该像素点邻域内纹理变化的相似性。纹理变化关系式Eg的计算如式(5)所示,Eg越小,表示纹理结构相似性越高,反之则越低。

一个好的拼接线不会穿越颜色变化明显的区域,并且尽可能不对场景中的元素造成改变[15-16]。这些准则可以通过结合两个关系式得到能量计算关系式E(i,j),在其中搜索一条能量最小的路径来实现。因为结构差异越大的物体能量越大,搜索的时候会尽量绕开,因此,能抑制鬼影的产生。同理,比起大的亮度差异,搜索更青睐小的亮度差异,因此,得到的拼接线在图像中将不那么明显。

2 实验及结果分析

2.1 数据采集

实验使用的视频采集设备包含2 路索尼IMX334 sensor,采集到的视频通过MIPI 接口输入Hi3559AV100 芯片,每路图像分辨率为1 000×750,帧率为30 f/s。

2.2 实验结果及分析

实验中,将本文的改进算法与OpenCV 中的Stitching 模块全景拼接算法进行比较。实验选择同一场景下大小相同的两路视频进行全景拼接,为了保证全景视频的质量,每隔30 帧更新一次LUT 查找表。处理器型号为Hi3559AV100,内部集成双核ARM Cortex A73,1.6 GHz。处理后的视频通过HDMI接口输出到一块1 080 P 的显示器上。做比较的OpenCV 版本为2.4.13。

通过实验,在不同场景下,改进算法与OpenCV中的Stitching 模块全景拼接算法每帧提取的特征点数量、平均时间开销如表2 所示,改进算法和Stitching 模块全景拼接算法提取到的特征点如图4所示。结合表2 和图4 可以发现,改进后的算法在特征提取的数量上有所下降,但是特征点的覆盖范围和Stitching 模块全景拼接算法基本相同,更重要的是,每帧的平均时间开销大幅下降,这对于提高实时性至关重要。

表2 特征点提取数量和平均时间开销比较

图4 特征点提取比较

在不同场景下,使用RANSAC 算法提纯后的特征点匹配的数量及正确率如表3 所示,改进算法和Stitching 模块全景拼接算法的特征点匹配结果如图5 所示。正确率表示提纯后的匹配点对数量占所有匹配点对数量的百分比。可以发现,虽然改进算法匹配点对数量略少,但是正确率比Stitching 模块高。通过图5 对比也能发现,改进算法的匹配点对基本包含了通过Stitching 模块提取到的关键匹配点对。

表3 特征匹配数量和正确率比较

图5 特征点匹配结果比较

在不同场景下,生成全景图像每帧平均时间开销如下页表4 所示,通过计算可以发现,改进后的算法帧率能够达到30 f/s 左右,是Stitching 模块拼接帧率的4 倍左右,画面流畅,基本满足嵌入式视频全景拼接的实时性要求。拼接得到的全景图像如图6 所示,可以发现,拼接得到的全景图像没有发生扭曲变形,没有明显的色彩差异,也没有出现重影、错位等拼接缺陷,质量满足视频全景拼接的要求。

表4 平均时间开销比较

图6 拼接结果

3 结论

本文提出了一种基于局部多层次特征匹配的嵌入式视频全景拼接算法,通过对图像进行局部特征提取和建立最终的LUT 查找表,来提高视频全景拼接的实时性,通过提取不同层次的单应性矩阵H避免拼接中出现的错位问题,并通过基于能量关系的最佳拼接线查找算法,有效抑制了拼接中的重影缺陷。实验结果表明,该算法比OpenCV 中的Stitching 模块全景拼接算法,在平均每帧提取的特征点数量、特征点匹配数量上略有下降,但是正确率明显提升,时间开销也明显下降,满足视频全景拼接实时性的要求,并且最终的全景图像没有出现明显的拼接缺陷。本文研究尚有不完善之处,如图像色差校正、多路视频并行处理等,将在后续研究中加以完善。

猜你喜欢

重影实时性全景
重影轻波
重影轻波
客厅影院拥抱全景声的至简之路 Jamo HCSB5有源全景声音响系统
定制化全景声耳机系统 JVC EXOFIELD XP-EXT1正在热销中
全景敞视主义与侦探小说中的“看”
改进加权融合在消除图像拼接重影中的运用
计算机控制系统实时性的提高策略
全景搜索
可编程控制器的实时处理器的研究
基于B/S的实时用户行为检测管理系统设计与实现