SAR舰船快速检测系统设计

摘 要:文章旨在开发基于NVIDIA Jetson TX2,Qt5和OpenCV2.4的近海区域SAR图像舰船目标快速检测系统,该系统具有SAR图像载入,目标切片输出,检测结果实时显示与性能分析等功能。根据预期目标,使用Matlab实现近海区域SAR舰船目标检测基本流程,后期基于OpenCV移植到嵌入式开发平台,并使用GPU实现并行计算加速处理,使舰船目标检测速度得到提升。最后,使用Qt完成上层应用接口设计,搭建人机交互界面。

关键词:SAR;海陆分割;舰船检测;OpenCV;Qt;CUDA

中图分类号: TP393;TN957 文献标识码: A 文章编号: 2095-1302(2017)11-0016-02

0 引 言

舰船目标检测能够获取舰船目标的位置、大小、航向、速度和编队信息,对搜集情报、监测敌情有重大帮助。而近海区域作为重要的战略区域,地理与人文环境复杂,进出港舰船较多,更加具有检测价值。同时因近海区域气候多变,常有云层覆盖的特点,在这种情况下 SAR 具有独特优势。因此开展近海区域 SAR 图像舰船目标检测技术的研究意义重大[1] 。

1 系统设计与实现

本 SAR 图像舰船目标检测系统的基本流程大致包括原始图像预处理,海陆分割,舰船检测,预警虚警鉴别,结果输出,如图1所示。其中,预处理是对 SAR 图像进行滤波和增强,去除 SAR 图像固有斑点噪声的影响;海陆分割是对陆地区域进行掩膜,去除陆地带来的虚警,同时提高检测效率;目标检测是对目标和背景进行分类,进一步确定目标,剔除虚警[2,3] 。

通过对检测结果进行分析,确定真实目标和伪目标个数,算出预警率与虚警率。

1.1图像预处理

成像系统获取的图像即原始图像往往受到各种因素的影响,并不能直接使用,必须在视觉信息处理的早期阶段对原始图像进行灰度校正、噪声过滤等处理。图像预处理的目的是改善图像数据,通过抑制不需要的变形或者增强某些对于后续处理来说比较重要的图像特征实现[4] 。本文采用基于灰度映射的图像预处理技术对图象进行预处理。

由于本文所用的原始 SAR 图像的位深为16 位,灰度范围为 0 ~65 535,有些灰度高的像素点对后续海陆分割与目标检测的影响很大,所以本文进行图像预处理时,对其进行灰度拉伸,将16 位的图像转化成 8 位,灰度范围从0 ~ 65 535映射到 0 ~255。

提取直方图,根据灰度直方图像素点的分布占总像素点的百分比设置 256 个阈值,再根据阈值把原始图像映射到0 ~255 的灰度值上。效果如图 2 所示。

1.2海陆分割

近海区域复杂的地形地貌给舰船检测造成了很大困难,首先陆地区域回波强,地形地貌相对复杂,码头、堤坝等人造建筑都是强散射区域,它们在灰度特征上与舰船目标接近,又由于 SAR 图像固有的相干噪声和低信噪比特点,在图像上,港口、堤坝的边界比较模糊,当与舰船目标距离很近时,图像上的舰船就会与码头、堤坝连在一起,此时人眼都无法准确区分,会对检测效果造成很大干扰,导致得到较高的虚警;其次,陆地区域属于干扰区域,在后续的检测过程中属于多余内容,会增加计算量,降低检测效率[3,5] 。因此,有效地将陆地和海洋进行分割是近港区舰船目标检测的重要过程[6] 。本文采用基于二值化及形态学处理的陆地掩膜方法进行海陆分割。陆地区域与海洋区域在 SAR 图像上灰度相差很大,灰度高的为陆地,灰度低的为海洋。本文根据一个全局阈值将整幅图像进行二值化处理。选用的阈值通过自适应阈值算法得出。绘制出滑窗均值滤波后图像的灰度直方图,对直方图进行凸包检测,波谷点的灰度值即为阈值。效果如图 3 所示。

对图像进行膨胀处理,以消除陆地区域中某些灰度值较小的部分,如内陆湖,河流等。对图像进行腐蚀操作。由于需要鉴别的舰船目标也属于灰度值较高的区域,在二值化过程中被分到了陆地区域。要进行海陆分割,就需要进行腐蚀操作,去除海面上小块不连续的目标,只保留陆地区域。

对图像进行再次膨胀,消除腐蚀过程中对陆地区域的影响。这样陆地区域才会被有效地分割出来,效果如图 4 所示。由于陆地区域的灰度值为 255,海洋区域的灰度值为 0,根据形态学处理结果,将形态学处理后的图像作为掩膜,在原图上将陆地区域去掉,即可完成海陆分割,如图 5 所示。

1.3舰船目标检测

2

本文对海陆分割后的图像做直方图凸包检测,提取波峰处横坐标获得全局阈值,然后遍历整幅图像,大于阈值的认为是目标像素,小于阈值的则认为是背景杂波。将识别后的结果做连通域处理,使用 OpenCV自带的轮廓提取函数提取连续的像素点集,在预处理后的图像中画出舰船目标的外接矩形,并输出舰船目标切片,如图 6 所示。

2 嵌入式平台移植

本文采用 NVDIA Jetson TX2 作为硬件平台,TX2 是一台基于 NVIDIA Pascal 架构的 AI 单模超级计算机,其搭载Linux 系统,能够铸就大规模、复杂的深度学习网络,非常适合部署在机器人、无人机、智能摄像机等便携医疗设备智能终端上。TX2 搭载具有 16 nm工艺的 Tegra Parker 处理器,6核设计,其 CPU 部分由 2 个丹佛加 4 个 A57 核心共同构成,GPU 则采用 NVIDIA Pascal 架构,拥有 256 个 CUDA 核心,性能得到了较大提高。

由于本文在预处理过程中涉及双精度浮点型计算,对CPU 的浮点运算要求较高,且图像像素点较多,CPU 已无法满足快速计算的需要。因此,使用 TX2 的 GPU 对预处理过程中较为耗时的浮点运算过程作并行处理,以提高系统运行效率,大大减少系统运行时间。其核心代码如图 7 所示。

3 人机交互界面设计

本文在采用 OpenCV 和 CUDA完成底层系统设计后,用Qt 完成应用上层,从而实现人机交互,如图 8 所示。其中,“载入 SAR 图像”按键选取 tif 格式的 SAR 原始图像,并实时显示预处理过后的图像,实现 SAR 图像的动态载入工程。点击 “开始检测”按键,对图像进行海陆分割和目标检测,将检测结果实时显示出来,并提示输出目标切片。界面包含 GPU、CPU 可选按钮,控制是否加速处理过程,并将系统处理耗时进行实时显示。

……
关注读览天下微信, 100万篇深度好文, 等你来看……
阅读完整内容请先登录:
帐户:
密码: