由于海洋范围广、海上信号差、“三无”船舶数量众多、海上航线复杂以及海域管辖权分散等客观因素,导致海上交通信息收集和传递存在诸多困难,目前仍缺乏有效的手段对海上船舶进行检测。在此背景下,发展能够适应复杂海洋环境的异常船舶检测算法,不仅是提升海上监管能力的关键途径,也是在信息获取受限条件下实现有效监控的重要手段。
目前,异常船舶检测方法主要可分为三大类:基于机器视觉的检测方法、基于轨迹分析的检测方法以及基于遥感影像和AIS数据的检测方法[1]。首先,基于机器视觉的检测方法依托海上视频监控或无人机拍摄的图像序列,通过计算机视觉技术提取灰度、纹理等图像特征,并结合背景建模、运动目标检测与跟踪算法,对船舶的异常行为进行识别与预警[2]。早期研究中,Smith 等人利用图像序列的灰度特征来识别运动目标,能够在一定程度上检测到船舶的移动轨迹,但对小目标或远距离目标的漏检率较高[3];Voles.P 等人采用时间差分法进行运动检测,虽然算法简单,但准确度不高,漏检与误检问题依然突出[4]。国内学者周颢等基于混合高斯模型和连通分支包络算法开发了数字船舶监控系统,能在近岸环境下实现边缘提取与目标检测,但在远距离和复杂海况下仍存在检测不准确的缺点[5]。任明武等人所研发的运动检测系统虽具备一定实用性,却因随机性强、鲁棒性差而难以满足海上全天候、全覆盖的监测需求[6]。综上所述,基于机器视觉的异常船舶检测方法受制于成像条件、光照变化及监控盲区,难以实现对广阔海域的全面覆盖。
其次,基于船舶轨迹分析的检测方法通过对AIS(自动识别系统)或北斗终端上传的经纬度、航速、航向等航行信息进行时空特征提取和行为模式建模,对偏离正常航线、异常速度变化或停留行为等异常事件进行检测[7]。该方法可对船舶的航行安全进行实时评估,并对可能的非法活动(如走私、偷逃监管等)进行预警。目前主要使用的基于船舶轨迹分析的异常检测方法可大体分为:基于统计分析、基于预测、基于机器学习以及其他方法。Ristic等利用 AIS 数据,提取并统计分析港口和水道的运动模式,基于自适应的核密度估计算法构建一个简单快速的船舶异常检测器[8]。韩昭蓉等提出一种基于Bi-LSTM模型的轨迹异常点检测算法,同时考虑了轨迹的历史和未来信息,提高了检测异常点的准确性,扩展性强[9]。俞庆英等提出一种基于BP神经网络的异常轨迹检测方法,将轨迹自身的基本属性作为BP神经网络的输入层,调整隐含层的权值和阈值得到轨迹异常判断模型,利用训练好的模型,判定用户轨迹是否异常[10]。Zhen R.等基于AIS数据的空间和方向特征,设计了一种船舶轨迹间的相似性度量方法,然后应用层次聚类和k-medoids聚类方法对港口水域内典型的船舶航行模式进行建模和学习,建立船舶行为的朴素贝叶斯分类器来分类和检测异常船舶行为[11]。
然而,AIS数据本身存在诸多局限:一方面,中小型渔船并不强制安装AIS设备,导致监管盲区较大;另一方面,部分船舶为了逃避监管会随意开关机或套用他船AIS信息,使得轨迹数据缺失、虚假信息频发[12]。此外,岸基AIS监测站的覆盖范围主要集中在近海,远海信号弱或拥堵时易发生数据丢失,进一步影响了基于轨迹分析方法的有效性。
最后,基于遥感影像和AIS数据的检测方法旨在弥补单一数据源的不足。卫星遥感具有大范围覆盖、全天候、全天时的优势,可对远海及恶劣气象条件下的船舶目标进行检测,成为补充AIS监测盲区的重要手段[13]。尽管基于遥感的船舶检测算法在目标识别和定位方面已相对成熟,但仅依赖遥感影像难以准确区分正常航行与异常行为,且受限于卫星重访周期与分辨率。因此,将遥感影像与AIS轨迹数据进行融合,通过时空信息互补与多源特征联合建模,提高异常船舶检测准确率和覆盖范围。现有研究大都是使用SAR数据与AIS数据进行匹配的,如张小山利用边缘检测算法,将SAR数据中提取出的船舶位置与AIS数据进行匹配,从而对我国东海飞云江入海口附近海域的船舶进行检测和识别,匹配率在70%左右[14]。杨文涛基于深度学习的船舶识别算法,从SAR数据中提取船舶长度特征,然后与AIS数据库中的信息进行位置和特征匹配[15]。以上方法存在的不足是SAR数据所能够提取的船只特征较少,不能保证匹配算法的准确性。随着高分辨率光学遥感技术的发展,卫星影像在亚米级空间分辨率、多光谱信息和丰富的纹理、颜色特征方面具有显著优势,可为船舶目标识别提供更精细的结构与外观信息。
基于此,本文提出一种基于高分辨率光学遥感影像与AIS数据的异常船舶检测方法。首先,研究了一种基于高分辨率光学遥感影像的船舶检测算法。其次,由于AIS数据时间不连续,本文采用数据插值方法,通过对同一艘船舶的AIS数据进行插值,获得与遥感影像时刻对应的AIS插值点,以解决遥感数据和AIS数据无法对齐的问题。然后,针对异常数据的界定问题,本文将异常数据划分为三种类型,分别为“正确匹配”、“有AIS无船舶”和“有船舶无AIS”。最后,提出一种船舶匹配算法,用于将AIS插值点与遥感数据中提取到的船舶目标进行匹配。该方法首先对速度低于1节的AIS插值点进行匹配,随后对速度不低于1节的AIS插值点进行匹配。
一、研究方法
本文提出的异常船舶检测方法的流程图如图1所示。
图1 异常船舶检测方法流程图
首先,利用船舶检测算法从高分辨率遥感影像中检测船舶,并获取卫星影像时刻前后一小时内的AIS数据。每条AIS轨迹由同一MMSI号的所有AIS轨迹点组成。然后,通过对每条AIS轨迹进行线性插值,得到该条轨迹在卫星影像时刻的AIS插值点。
接着,利用遥感数据与AIS匹配算法将船舶检测结果与AIS插值点进行匹配,得到匹配成功的船舶与AIS点匹配对,异常类型标记为“正确匹配”。
最后,对于无法匹配的情况,如果有AIS数据但未能匹配到船舶,则异常类型标记为“有AIS无船舶”;如果有船舶但未能匹配到相应的AIS点,则异常类型标记为“有船舶无AIS”。
(一)船舶检测算法
在本文中,船舶检测模型使用深度学习旋转检测模型,主要基于YOLOv5模型进行改进,针对小目标较多的情况,添加了小目标检测层,以提高小目标检测能力。具体的训练数据集、改进细节、训练参数与损失函数等核心技术信息,可参见我们之前的工作[16]。
1.技术路线
船舶检测算法的技术路线如图2所示:首先获取卫星遥感影像,接着由专业解译人员针对船舶目标特征进行对照、解译和标注。在完成影像数据获取和人工标注的基础上,利用原始影像和对应的标注矢量生成样本集。对于目标矢量文件需要建立并填写好相应的类别字段,对于原始影像设置好切片的尺寸、裁剪的重叠率以及输出图片的格式,对于因图像裁剪导致的不完整目标计算裁剪后面积与原始面积的比值,对剩余面积小于70%的目标框进行删除操作。最后将图片和标签转换为目标检测与识别深度学习算法能够处理的标准格式,完成目标样本集的构建。
图2 船舶检测算法技术路线
在完成初步的样本集构建后,利用已有的样本训练目标检测与识别模型,并运用基准模型在未标注的遥感影像上进行目标检测与识别,对识别的结果按照置信分数进行分别核验,对于高置信分数的目标经过核验后可作为补充样本入库,对于低置信分数的目标经核验后可作为典型负样本入库。
2.船舶提取流程
在完成船舶检测模型的训练后,对遥感影像进行船舶目标提取时,具体的处理流程如图3所示。首先对输入的遥感影像进行拉伸截断预处理,使之成为能被深度学习模型处理的数据格式。由于遥感影像的尺寸较大,直接输入模型进行推理会导致显存爆炸,需要对数据进行切片,而后才能输入模型进行推理,最后,对每个切片的推理结果进行融合,输出船舶的类型和位置、置信度信息。
图3 船舶提取流程图
(二)遥感数据与AIS匹配算法
针对异常数据的界定的问题,本算法将异常数据划分为三种类型,分别为“正确匹配”、“有AIS无船舶”和“有船舶无AIS”。
针对遥感数据和AIS数据无法对齐的问题,由于AIS数据时间不连续,本算法采用数据插值方法,通过对同一艘船舶的AIS数据进行插值,获得与遥感影像时刻对应的AIS插值点。然后,利用这些AIS插值点与遥感数据进行匹配。具体的插值步骤如下:
(1)提取AIS数据:以卫星影像拍摄时刻为基准,选取该时刻前后各1小时范围内的AIS原始数据。
(2)字段筛选与完整性校验:保留包含MMSI号、纬度、经度、对地航速(SOG)及对地航向(COG)的记录;若任一字段缺失,则剔除该条数据,以确保后续分析的数据完整性。
(3)去重处理:基于MMSI号与时间戳对原始数据进行去重操作;当两者均相同时,仅保留一条记录,删除重复项。
(4)影像时刻插值:对每艘船舶的轨迹序列进行线性插值计算,获取其在卫星影像拍摄时刻的经纬度、航速与航向信息。假设一条AIS轨迹由按时间顺序采集的离散点集合构成,其中每个离散点由船舶在时刻的位置、对地航速以及对地航向组成。
在本文中,船舶位置插值计算采用了基于WGS84椭球模型的大地测量方法。WGS84(World Geodetic System 1984)是一个全球通用的地心坐标系和椭球模型,将地球近似为赤道半径6378137米、极半径6356752.3142米的扁球体,广泛应用于导航和地理信息系统中。本文使用了大地正算(Forward Geodetic Problem)和大地反算(Inverse Geodetic Problem)来处理地球表面上的位置关系。大地正算根据已知点的坐标、方位角和距离计算目标点位置;大地反算则根据两个已知点计算它们之间的大地线距离和方位角。该方法充分利用了WGS84模型的精确性,确保了插值结果在大地椭球面上的准确性,避免了简单球面模型的误差。
要在卫星影像时刻处补齐AIS离散点,可分以下三种情况进行处理:
①影像时刻出现在两个AIS离散点之间,即,此时的插值计算公式为:
②所有AIS离散点全部出现在影像时刻前,即,此时的插值计算公式为:
③所有AIS离散点全部出现在影像时刻后,即,此时的插值计算公式为:
在“遥感数据与AIS匹配算法”中,本文提出的匹配算法称为速度分段匹配算法。该算法首先对速度小于1节的AIS插值点进行匹配。对于这些速度低的插值点,则查找该MMSI号AIS轨迹中距离卫星影像时刻最近的AIS轨迹点,并在该点周围一定范围内(例如,设定的矩形区域)寻找距离最近的船舶与之匹配。接下来,对速度大于等于1节的AIS插值点进行匹配。首先,计算每个AIS插值点和船舶检测算法检测出的船舶的地理距离。接着,从中选择距离最小的AIS插值点和船舶进行匹配。如果该最小距离小于预设的阈值,则认为两者匹配;否则,认为不匹配。然后,继续寻找下一个距离最小的AIS插值点和船舶,直到所有匹配完成或者达到终止条件。具体而言,阈值的选择取决于AIS插值点的生成方式:如果AIS插值点是通过相邻两个AIS轨迹点的插值得到的,则使用阈值A进行匹配判断;如果AIS插值点是通过外推一个AIS轨迹点得到的,则使用阈值B进行匹配判断。
二、实验与结果
(一)实验数据
本文选择图4所示的海南海域高分辨率遥感影像作为实验数据,该影像由吉林一号星座宽幅01B星拍摄,空间分辨率为0.5米。AIS数据则由上海迈利船舶科技有限公司提供,包含船舶的MMSI号、经纬度坐标、对地航速(SOG)与航向(COG)等关键信息。
图4 海南海域的遥感影像数据
(二)评价指标
对于一景遥感影像,通过匹配算法,将船舶提取算法提取出的船舶与AIS数据进行匹配,从而获取船舶与AIS记录之间的匹配对,统计为总匹配数量。在获得匹配结果后,进行人工核验,修改算法错误匹配的结果。随后,统计得到算法提取出的正确匹配对数,并根据以下公式计算匹配准确率:
之后,利用异常船舶提取算法提取异常,这些异常包括匹配正确、有AIS无船以及有船无AIS,统计为异常船舶总数。然后,对算法提取到的异常船舶进行人工核验,修改算法错误提取的异常结果。随后,统计得到算法正确提取出的异常船舶数量,并根据以下公式计算异常船舶提取准确率:
(三)对比实验设计与结果
本文选择广泛应用于点集匹配和概率分配问题的Sinkhorn匹配算法[17]作为基线,该算法通过在最优传输框架中引入熵正则化,将原本的线性规划问题转化为可通过矩阵迭代快速求解的形式。实验中,熵正则化系数取0.1,迭代次数上限为1000。
表1列出了在本文所选高分辨率影像下,两种匹配算法——Sinkhorn匹配算法和本文提出的速度分段匹配算法——的匹配结果。由式(1)可知,使用Sinkhorn算法时,匹配准确率为57.14%;而采用速度分段匹配算法后,匹配准确率提升至90.48%,相较于Sinkhorn方法有了明显提升。
表1 船舶匹配结果
Table1 Ship Matching Results
表2展示了基于以上两种匹配结果所执行的异常船舶检测算法的表现情况。根据式(2)计算,基于Sinkhorn匹配的异常检测准确率为96.62%;而基于速度分段匹配算法的异常提取准确率为98.77%,同样相较于Sinkhorn算法有了明显提升。这一提升表明,在异常检测环节中,前端匹配精度的提高能够增强后续异常判断的可靠性。综上所述,本文提出的速度分段匹配算法不仅在匹配阶段取得了优势,也使得基于该匹配结果的异常船舶提取更为准确,验证了所提方法在卫星影像与AIS数据融合分析中的优越性。
表2 异常船舶检测结果
Table2 Detection Results of Abnormal Ships
三、应用案例
异常船舶检测不仅是提升海上监管能力的关键途径,也是在信息获取受限条件下实现有效监控的重要手段。为验证本文所提方法在实际场景中的应用效果,与相关部门开展应用实验,以西沙毗邻区作为实验区,利用本文提出的异常船舶检测算法对实验区进行异常检测,为海上安全监管、非法捕鱼与走私行为的打击提供了有力技术支撑。此外,从遥感数据中提取船舶目标之后,无法了解其它属性信息如:MMSI、船名、船籍等,通过高分辨率卫星遥感与AIS匹配方法,能够寻找到与影像船舶相对应的AIS数据,增加船舶的属性信息,从而搭建多源船舶数据库。
本次实验的影像成像时间为2025年3月4日10:56:41,利用异常船舶检测算法,从卫星影像提取的船舶和卫星拍摄前后一小时的AIS数据中检测出异常船舶,检测结果如图5所示,遥感影像提取的船舶共有104艘,获取到的AIS信号有31个。其中,成功匹配的船舶有4艘,有船舶无AIS信号的有100艘,未匹配的AIS信号共有27个。
图5 异常船舶检测结果
四、结论
本文通过对AIS轨迹进行时序插值,获得与遥感影像时刻对应的AIS插值点,并分别针对低速和高速船舶采用不同的匹配策略,使得异常船舶检测算法能够有效识别“有AIS无船舶”、“有船舶无AIS”以及“匹配正确”三类异常类型。
然而,本文仍然存在一些局限性,在“遥感数据与AIS匹配算法”中,需要手动设定匹配的阈值。阈值的设置对匹配结果具有较大的影响,过大的阈值可能导致误匹配,而过小的阈值则可能导致匹配率降低,因此阈值的合理设置是提高算法性能的关键。
未来,随着遥感影像分辨率的提升和船舶检测算法准确性的提高,匹配算法将不仅仅考虑距离因素,还将结合船舶的长度、宽度、航向等多个因素进行综合匹配,从而进一步提升匹配效果。
参考文献
[1] 周世波,徐维祥.船舶轨迹异常检测方法研究进展[J].电子测量与仪器学报, 2017,31(03):329-337.
[2] 邬甜甜.基于机器视觉的海上可疑船舶识别研究[D].浙江:浙江海洋大学,2019.
[3] Smith A A W, Teal M K, Voles P. The statistical characterization of the sea for the segmentation of maritime images[C]//Proceedings EC-VIP-MC 2003. 4th EURASIP Conference focused on Video/Image Processing and Multimedia Communications (IEEE Cat. No. 03EX667). IEEE, 2003, 2: 489-494.
[4] Voles P, Teal M, Sanderson J. Target identification in a complex maritime scene[C]//IEE Colloquium on Motion Analysis and Tracking (Ref. No. 1999/103). IET, 1999: 15/1-15/4.
[5] 周颢.复杂背景下的运动目标分割和识别的关键技术研究[D].上海:上海交通大学, 2004.
[6] 任明武,曹雨龙,杨静宇,等.复杂条件下的船舶目标检测的图像预处理[J].计算机工程,2000,(10): 68-70.
[7] 陈影玉,杨神化,索永峰.船舶行为异常检测研究进展[J].交通信息与安全,2020,38(05):1-11.
[8] Ristic B, La Scala B, Morelande M, et al. Statistical analysis of motion patterns in AIS data: Anomaly detection and motion prediction[C]//2008 11th International Conference on Information Fusion. IEEE, 2008: 1-7.
[9] 韩昭蓉,黄廷磊,任文娟,等.基于Bi-LSTM模型的轨迹异常点检测算法[J].雷达学报,2019,8(01):36-43.
[10] 俞庆英,李倩,陈传明,等.基于BP神经网络的异常轨迹检测方法[J].计算机工程,2019,45(07):229-236+241.
[11] ZHEN R,JIN Y X,HU Q Y,et al.Maritime anomaly detection within coastal waters based on vessel trajectory clustering and Naive Bayes classifier[J].Journal of Navigation,2017,70(3):648-670.
[12] 宋兵兵.船舶自动识别系统(AIS)存在的问题及治理路径[J].世界海运, 2021,44(02):34-37.
[13] 王杰.基于星载AIS系统的船舶定位研究[D].天津:天津理工大学,2018.
[14] 张小山.基于遥感图像和AIS数据的综合船舶识别系统设计与实现[D].北京:北京邮电大学,2017.
[15] 杨文韬.基于大数据的厦门港遥感影像船舶分析系统的设计与实现.福建:厦门大学,2018.
[16] 吴祖勇,朱济帅,邓美环,等.基于样本重构的船舶小目标检测算法研究[J].海洋测绘,2024,44(03):78-82.
[17] Paul K,Richard S.Concerning nonnegative matrices and doubly stochastic matrices[J].Pacific Journal of Mathematics,2004,21(2):343-348.