APP下载

基于机器视觉的海上目标智能化预警观测过程模型与技术方法

2019-12-23杨志霞符亚明杨建平

中国电子科学研究院学报 2019年8期
关键词:修正像素观测

应 文,杨志霞,符亚明,杨建平

(1. 中国电子科学研究院,北京 100041; 2. 中电科海洋信息技术研究院有限公司,北京 100041; 3. 中国地质大学(武汉),湖北 武汉 430074)

0 引 言

视频与图像一直以来都是人类感知外界最直观的手段,随着当前我国在海洋权益维护、监管执法、资源开发等领域的迫切需求,在领海与专属经济区实施海洋目标活动态势的全时全域的常态化监测已成为大势所趋,光电监控系统作为海洋目标活动态势感知中不可或缺的必要手段,在上述领域得到了广泛的应用。

随着近年来中远海无人值守型对海观测平台的兴起[1-2],使海洋态势感知与观测向着网络化、栅格化、智能化、服务化发展,在对海观测用光电监控系统部署规模飞速增长的同时,其观测调度与控制层面的自动化、智能化程度相对落后的问题也随即凸显出来,目前业界绝大多数应用仍通过人工方式实现光电海上目标发现、跟踪、图像提取、图像情报分析、目标识别的一整套工作流程,对专业人员的依赖性严重,运营成本居高不下,在大规模部署的情况下无法有效顾及所有观测点,导致海上情报的丢失。

图1 智能跟踪控制与传统控制工作机制对比

在图像识别方面,当前采用的方法多为传统的基于像素匹配的质心检测算法或相关监测算法[3-4],这类算法在实际应用中通常需要人工提供像素位置来触发目标识别检测,缺乏自主发现以及目标分类能力,并在天气、光照、船舶形态有所差异的情况下,识别效果无法得到有效保证。多数识别算法与特定光电设备绑定,移植到成像性能有所差异的其他设备后性能显著下降。近年来随着大数据、机器学习和神经网络技术的不断发展,互联网产业牵头将机器学习技术应用到图像识别领域,智慧城市监控、智能人脸识别等智能化视频监控应用层出不穷,特别在智慧城市交通领域中,出现了针对行驶车辆的一体化发现、识别、跟踪、取证系统的研究[5-6]。在识别算法方面,具有不断训练优化能力的机器学习识别方法发展迅速,在经过良好训练的情况下,在正确识别与分类准确率、光照环境适应性、成像质量适应性、可扩展性等方面明显优于传统的识别方法。同时,通过不同光电监视设备拍摄图像的交叉训练,可以普遍适用于不同品牌、不同型号、不同成像能力的光电监控系统,为通用化大规模部署奠定基础。

在海洋信息系统跟踪控制方面,现有的对海光电监控系统控制技术由人机交互共同完成,通常操作人员通过实时观测海上目标活动态势图,观察行为异常的目标航迹,将光电系统引导至相应的方位,随后通过观察光电监控设备回传的实时图像查找海上目标,根据目标与视角的关系,通过光电控制板对摄像头的视角、倍率、图像清晰度进行一系列微调,在确保能够清晰观测到目标的情况调用图像跟踪算法进行跟踪。在整个操作过程中人工操作占用了相当大的比例,需要时间长期持续的对海预警观测需要运营人员持续值班,在当前海上预警观测节点栅格化大规模部署的应用场景下对系统运营造成了很大压力。同时,由于海上通信信道普遍存在较大的延迟和不稳定性,增加了人工控制增加了难度过调的情况时有出现,影响观测效果。

针对以上问题,本研究采用了不同的工作机制,如图1所示。通过雷达、AIS等设备产生的实时目标航迹信息的分析、过滤,形成需要光电系统协同观测的目标,通过坐标换算对光电进行自主引导,同时利用图像识别算法模型对图像中的目标进行识别,发现目标后,通过目标尺寸与当前视场的比例关系,当前图像的清晰度进行误差分析,利用误差分析结果对光电进行持续的自主修正,在到达最佳观测视角后进行视频录制和截图取证,并根据需要进行后续的推送、存储等。基于这种方法,不仅能够将人工操作比例降至最低,并通过误差计算进行精确控制,减少了人工微调环境所需的时间,使光电设备能够快速定位目标,通过目标识别算法与修正算法之间的持续协同,保证目标跟踪的持续性,显著减少目标丢失的几率。

以机器学习的视频目标识别技术、大规模信息网络智能化管理控制技术为基础,研究以光电观测为核心的智能化海上预警观测体系,实现海上目标的实时发现、跟踪、特征识别、取证全流程自动化工作,能够有效解决当前我国海域安防和维权执法应用急需攻克的现实问题,为广域海洋观测提供可靠视频图像预警监控解决方案。因此,本文结合长期技术研究和项目实践提出一种具有广泛适用性的海上目标智能化预警观测过程模型,以及一系列与之相关的技术实现方法。

本文第2章介绍海上目标智能化预警观测的一般过程模型,并在此基础上对任务管理与控制流程进行重点说明,给出一种符合一般过程模型的任务管理与运行控制工作流实例。第3章针对过程模型中的图像识别部分,提出一种基于深度学习的目标识别实现方法,包括图像数据库模型和深度学习模型搭建等内容。第4章针对过程模型中的修正与跟踪部分进行重点说明,包括跟踪控制流程,观测误差计算与误差修正方法。第5章给出部分试验数据,验证过程模型、目标识别算法和跟踪控制方法的有效性。第6章是全文总结及展望。

1 海上目标智能化预警观测的一般过程模型

海上目标智能化预警观测的一般过程模型主要包括任务管理、光电巡检/引导、图像识别、修正跟踪、图像取证、情报生成、服务推送7个处理步骤,如图2所示。过程模型的信息输入根据观测系统的实际情况而有所差异,通常包括雷达、AIS等有源或无源目标观测手段生成的航迹数据、融合航迹数据;经过大数据挖掘分析等手段产生的目标运动异常据;可视化界面上通过人工标注的目标航迹数据、外部用户的观测需求等,通过对情报输入的归一化处理,提取观测所需的时空信息,继而形成新的观测任务。

图2 海上目标自动化预警观测一般过程模型

任务管理是过程模型的核心引擎和运行根本,通过构建任务队列,配合一定程度的优先级控制,并设置相应的完成条件,保障光电监控系统按照队列排序依次执行观测任务。同时,开放相应的任务管理和人工操控接口,允许系统调度人员按需对观测任务进行适当的人工干预。在任务执行层面,通过对光电监控系统进行一系列的精确控制保证观测任务的有效执行,包括通过巡检或引导操作将光电摄像头移动到观测目标所在方位,通过图像识别搜索被观测目标,通过光电位置修正调整到最佳观测视角,并对目标进行持续跟踪,在跟踪过程中进行图像、视频取证,并结合任务输入生成带有视频、图像和文字描述的组合专题情报,并根据用户不同的服务要求将情报分发推送给各类服务应用,在满足相关任务完成条件或终止条件时开展下一项观测任务。

图3 一种符合一般过程模型的任务管理与运行控制工作流实例

图3从系统设计层面给出了符合一般过程模型的任务管理与控制工作流程示例,通过加入一个新的运行模式使系统进入智能预警状态,通过读取观测任务队列判定下一步行动,当队列中存在观测任务则进行光电引导操作,到达指定方位后进行目标识别、跟踪及取证动作;如果没有观测任务则进行常规巡检操作,并对识别的随机目标进行跟踪。流程中涉及了多个计时器,主要用来判断动作超时和任务结束条件,保证系统连续不断的进行业务观测。

2 基于深度学习的海上目标实时识别方法

机器学习开源社区的快速发展推动了行业技术进步,显著降低了深度学习的工程应用的实现难度,在基于机器视觉的目标识别方面,目前较为普遍方法是以开源的预训练模型作为目标特征提取的初始化模型,在此基础上建立面向实际应用的图像数据库,对初始化模型进行进一步训练,该方法能够保障目标特征识别与提取的基本效果,并大幅度缩短了模型训练时间。在本研究用,采用了基于谷歌Coco数据集[7]的4个多层融合预训练模型[8-10],如表1所示。同时,在机器学习框架方面选用了Tensorflow[11]开源机器学习平台的GPU运算版本。在硬件资源方面,考虑本地部署、实时视频推理需求,选用低功耗版NVIDIA Tesla P4加速卡作为标准计算资源。基于深度学习的海上目标实时识别方法依次包括图像目标数据库搭建、网络模型训练、模型识别精度检测、视频识别推理四个步骤。

表1 基于CoCo数据集的多层融合预训练模型及性能指标

2.1 图像目标数据库搭建

本研究以多个对海观测平台的光电监控视频录像以及互联网船舶图像数据为基础,面向预警与跟踪应用需求,对海上目标图像进行了收集和科学分类,形成16 类海上目标,表2给出了海上目标部分分类情况。为方便后续处理,以目标类型和图像顺序为索引对目标图像进行了统一重命名,在此基础上根据目分类使用LabelImg工具对图像中的船舶目标进行标注,进而生成遵循PascalVoc格式的XML标注文件。

2.2 深度神经网络模型训练

从图像目标数据库中选取海上目标图像作为训练集,每类海上目标图像尽可能包含远近、清晰模糊、正面侧面等不同形态。对样本较多或者应用场景重点关注的海上目标类型可适当扩充训练图像数量。利用测试集对预训练模型进行训练,训练前可根据经验对迭代次数、批尺寸以及一系列超参数进行调整,训练过程中通过监控损失函数观察模型全局收敛情况,在确保收敛后可视情况提前停止剩余迭代。

2.3 目标识别精度检测

在图像目标数据库中选取海上目标图像作为训练集,为保证检测精度,每类目标训练图像不少于20张,对少数图像样本采集困难的类别适当加入训练集图像进行补充并标注采用训练集图像进行测试的比例。采用训练好的模型对测试集上的船舶光电图像数据进行预测,对比识别结果与人工标注的差异,以类为单位统计检测识别正确率。

2.4 视频识别推理

接入光电视频数据,将图像帧作为输入训练好的船舶识别模型中,进行目标识别和分类的预测。生成识别与预测结果主要包括目标的像素位置信息、目标分类属性和置信程度信息,可采用Json、XML等格式进行统一封装,并通过消息总线或Webservice服务接口供业务层调用。在业务层可利用OpenCV、VLC等视频处理播放接口在实时视频上进行标绘。在验证目标识别模型的实时推理能力方面,可通过统计图像帧数与处理时间得出模型处理单图像帧的平均速率,根据该速率在推理过程中进行跳帧设置,避免处理延迟。

3 光电智能跟踪控制方法

光电智能跟踪控制以基于实时视频的光电目标识别结果为输入,通过目标识别结果在实时视频帧上的位置、大小、清晰度进行分析处理,计算目标与最佳观测视角之间的误差,并通过一系列的光电操作指令促使光电监控系统逐步趋近于最佳观测视角,保证目标持续处于最佳观测视角区间范围内,进而实现持续跟踪。光电智能跟踪控制方法与传统控制方法的主要区别在于新增了对实时视频流的每一帧图像进行最佳观测视角的误差计算与自主修正两个工作步骤,本章节将对这两个步骤的技术实现方法进行详细说明。

表2 部分海上目标数据分类

续表2

3.1 误差计算

误差计算包含像素误差计算、视角误差计算、清晰度误差计算三个过程,其中像素误差计算和视角误差计算的目的是进行摄像头方位、俯仰、倍率调整,在大多数情况下像素误差计算是视角误差计算的前提,多数光电监控系统需要得到视角误差从而进行修正工作,但少数光电监控系统具备按照像素点调整摄像头方位、俯仰的能力,在这种情况下仅需计算像素误差。清晰度误差计算的目的是对摄像头聚焦平面进行微调,确保目标清晰成像。

·像素误差计算方法

如图4所示,设图像帧像素尺寸为{lp,wp},图像中目标的像素尺寸为{lop,wop},目标中心像素点为{xop,yop},针对图像帧中心点,其水平像素误差ehp、垂直像素误差epp、倍率像素误差ezp有如下关系:

(1)

其中ehp表示目标距离最佳中心点观测位置的水平像素距离,正值表示位于最佳中心观测点右侧,反之为左侧。epp表示目标距离最佳中心观测位置的垂直像素距离正值表示位于最佳中心观测点上方,反之为下方,ezp表示目标距离最佳观测比例的相对距离,其中Φ为黄金分割比例,可近似为0.618,正值为目标大于最佳观测比例,反之为小于最佳观测比例,选择目标长度比例进行误差分析的原因在于海上目标多为船舶目标,其长度远大于高度,因此利用水平方位的比例进行运算会更有效的调整到最佳目标视角。

图4 像素误差计算图例

·视角误差计算方法

空间一点光源通过摄像头镜头在焦平面附近成像于CCD感光阵列x轴距中心点hx处,镜头当前有效焦距为f′,CCD感光阵列放置位置到焦平面距离为x′,通过旋转摄像头使其成像点调整至CCD阵列中心处,旋转角度为θx,则有如下关系:

(2)

在CCD感光阵列放置位置于焦平面附近的情况下,x′相比焦距而言可以忽略不记,在旋转角度θ较小的情况下,通过泰勒展开式近似可得cosθx≈1,因此可近似为:

(3)

在光电识别跟踪应用中,通过光电监控系统厂家得到CCD感光阵列尺寸,设其长宽分别为{la,wa},通过播放器能够获得图像帧的尺寸和当前该光源成像点的像素位置,分别记为{lp,wp}和{xop,yop},则式(2)中hx存在如下关系:

(4)

故有水平方向的方位修正量为:

(5)

由于摄像头的光学对称性,同理可得垂直方向修正量,如式(6)所示

(6)

因此在实时视频监控中根据目标识别结果的尺寸和其在视频帧当中的相对位置分别计算水平和垂直方向的修正角度,并通过控制指令集进行调整,单步修正误差可以通过视频识别结果的实时同步反馈进行补偿,无需进行额外处理。

·焦平面误差计算方法

焦平面误差计算方法主要采用基于拉普拉斯算子的边缘监测方法[12],拉普拉斯变换的表达方式如下:

(7)

其中:

(8)

(9)

因此:

Laplace(f)=f[x+1,y]+f[x-1,y]+

f[x,y+1]+f[x,y-1]-4f[x,y]

其中f(x,y)为(x,y)坐标像素点的灰度值,计算过程将4邻域的像素求和后减去本像素值,若本像素是边界,则得到的值较大,若非边界,所得的值较小。由此,可获得经过拉普拉斯算子边缘检测后的图像。为了便于计算,使用3×3模板对像素数据进行处理。最后,通过方差计算得到图像清晰度指数:

(10)

图5 清晰度误差处理图例

在实际情况下,由于海上目标成像具有背景单一、边缘不明显、目标比例较小等特性,基于全尺寸图像的拉普拉斯变换边缘检测的实际效果无法得到有效保障,基于该情况,利用舰船识别结果提取目标所在的局部区域进行边缘检测,能够有效提升模糊度误差计算的有效性。

3.2 自主修正

光电监控系统自主修正利用误差计算结果,随图像帧刷新进行修正与补偿,其工作流程如图6所示。在接收到实时视频图像帧后,判断是否存在识别的目标结果,若存在则针对目标进行误差计算,通过判断方位误差ehp、俯仰误差epp、倍率误差ezp、焦平面误差efp是否大于相应的门限值启动相应的修正策略,原则上单帧图像仅进行一次修正,修正优先级由高到低依次为水平方位、垂直方位、镜头倍率、焦平面。由于光电监视系统响应时间通常无法达到实时视频数据流或机器识别结果的刷新率,同时修正动作的执行需要一定时间,因此一般采用隔单位时间取一帧进行修正。

图6 光电监视设备自主修正工作流程

·水平、垂直角度修正

水平与垂直角度修正的方法与光电监控系统的控制机制紧密相关,当前市场上的光电监控系统的控制机制主要分为以下三类:

(1)基于简单方位控制的光电监控系统

该类光电监控系统在控制上较为简单,提供上移、下移、左移、右移、变倍、调焦6个基本控制功能,一般来说单位时间的位移量基本固定,通常无法提供当前水平角度、垂直角度、焦距等监控参数,对于该类设备的控制适合采用基于像素误差计算的修正系数反馈方法实现。

在一个图像帧处理时隙内,依次进行像素误差计算、位移持续时间计算、位移后的像素误差计算、位移系数修正四个过程,并在下一个处理时隙内使用新的位移系数计算位移操作的持续时间。位移操作持续时间的计算方法如下:

(11)

(12)

其中TMh为水平位移持续时间,TMp为垂直位移持续时间,ehp为水平像素误差,epp为水平像素误差,n为归一化系数。 在完成位移后,在此对像素误差进行计算,形成位移后的像素误差计算,并对位移系数进行修正,修正方法如下:

(13)

(14)

(2)提供监控参数反馈的光电监控系统

该类光电监控系统在前一类系统的基础上拥有精确角度引导能力,能够对上位机提供水平、垂直角度、倍率、焦距等监控参数,针对该类光电监控系统,可利用视角误差的计算结果,调用精确角度引导接口实现修正。

(3)提供像素引导功能的光电监控系统

该类光电监控系统支持通过像素位置引导,系统内置了将像素位置换位为角度方位的能力,并开放了像素引导接口,针对该类光电监控系统,可利用像素误差的计算结果,调用像素位置引导接口实现修正。

·倍率修正

在光电倍率修正方面,当前市场上的光电系统均采用固定位移量的调节方式, 与基于简单方位控制的光电监控系统的水平、垂直角度修正方法类似,可采用基于倍率误差计算的修正系数反馈方法实现。即在一个处理时隙内,依次进行倍率误差计算、倍率修正持续时间计算、调正后的倍率误差计算、倍率系数修正四个过程,并在下一个处理时隙内使用新的倍率系数计算倍率操作的持续时间。

·焦平面修正

对于焦平面修正,由于焦平面误差无法分辨当前目标物体处在焦平面的前方还是后方,因此需要先将焦平面向一个方向进行调整,通过观察焦平面误差的变化确定正确的调整的方向,在调整方向确定后,也可基于焦平面误差修正系数反馈方法实现。

4 测试及性能分析

为了评估所述方法的有效性,利用实际部署的海上光电监控系统进行了一系列测试,主要包括两部分:

第一部分针对过程模型中海上目标识别过程,验证目标识别模型在实际情况下的识别精度和时效特性,进而对4类预训练模型产生的目标识别模型性能进行评估。第二部分针对过程模型中修正与跟踪过程,验证三种不同的水平、垂直角度修正方法的时效性影响,进而对修正与跟踪方法的有效性与性能进行评估。

4.1 目标识别性能评估

表3给出了4种目标识别模型在Nividia Tesla P4计算卡上进行前向推理的性能对比结果,每种识别模型选用不同的预训练模型并通过4500幅相同的目标图像进行训练,分别使用2000幅测试图像和10分钟的海上目标跟踪视频进行测试。

表3 四种不同目标识别模型的性能测试对比结果

通过测试结果可以看出4种目标识别模型的识别精度差别不大,但在单帧处理耗时方面采用rfcn_resnet101和faster_rcnn_resnet101预训练模型的目标识别模型无法满足实时推理需求。ssd_mobilenet和ssd_inception模型虽然仍需约0.1秒/幅的处理时间,但在实际应用中可通过跳帧计算解决目标识别计算的延迟性问题,保障视频图像的目标识别实时同步显示。综合来看,ssd_mobilenet在识别精度与实时性性能方面更加适合观测平台本地化部署,建议采用。

4.2 自主修正性能评估

测试过程使用某海洋观测平台的光电监控系统,在3个不同的时间和光照情况下,针对同一海上目标,选用三种不同的方位、俯仰修正方法,分别进行了5次引导修正跟踪操作,并统计从光电监控系统完成对目标的引导操作到自主修正至最佳观测视角的平均时间,表4给出了三种不同的方位、俯仰修正方法对光电监控系统修正性能的对比情况,修正过程影像如图7。

表4 三种不同的方位俯仰修正方法对自主修正性能影响的对比结果

图7 光电修正与跟踪过程

通过测试结果可以看出通过位移系数反馈方法能够有效实现方位和俯仰的修正,但耗时要略高于其他两种方法,因此在光电监控系统不提供详细运行数据和像素引导接口的情况下,也可实现最佳观测位置的调整,这对控制机制较为简单的光电监控系统实现自主操控意义重大。采用视角误差计算与修正方法所需时间略长于像素误差计算与修正方法,这可能由于本文提出的角度误差计算中在旋转角度θ较小的情况下采用了近似处理,另外光电焦距、视场角参数的测量精度和更新频率也可能导致一部分误差。

5 结 语

光电监控系统在海上观测的大规模应用推动了海洋目标识别与预警跟踪领域的技术进步与发展,但在系统化、智能化、通用化等方面存在诸多挑战,本文基于体系化思维和长期实践,提出基于机器视觉的海上目标智能预警观测过程模型,对海上目标智能预警与跟踪普遍过程进行系统性归纳。同时针对过程模型中的任务管理与运行控制、图像目标识别、光电自主修正与跟踪三个关键过程,给出相应的示例或技术实现方法。相关测试结果表明,所提出的过程模型及相关技术方法合理并具有可行性,能够有效的指导以光电监控设备为核心的海洋观测系统设计。下一步将在适应本地化处理的轻量级识别与跟踪系统、多系统协同预警观测等方面开展相关研究。

猜你喜欢

修正像素观测
像素前线之“幻影”2000
Some new thoughts of definitions of terms of sedimentary facies: Based on Miall's paper(1985)
修正这一天
“像素”仙人掌
天文动手做——观测活动(21) 软件模拟观测星空
软件修正
2018年18个值得观测的营销趋势
可观测宇宙
基于PID控制的二维弹道修正弹仿真
高像素不是全部