基于卷积神经网络的海漂垃圾自动识别方法研究

2021-12-30 15:24崔文婧张彩云武新娜
海洋技术学报 2021年5期
关键词:橘黄色木屑像素点

崔文婧,张彩云,武新娜

(1.厦门大学海洋与地球学院,福建 厦门 361102;2.厦门大学近海海洋环境科学国家重点实验室,福建 厦门 361102;3.厦门大学水声通信与海洋信息技术教育部重点实验室,福建 厦门 361102)

近年来,随着沿海工农业生产的迅猛发展及旅游业的兴盛,海漂垃圾污染逐渐成为世界各海域普遍多发的海洋污染现象[1-4],每年进入海洋的塑料垃圾多达8 000 000 t,每平方千米海面上漂浮着1.3万片塑料垃圾,其中近岸活动是产生垃圾的主要来源,占到了80%,另外20%来自海上活动[5]。海漂垃圾的出现对海域产生了重大影响,造成水质污染、视觉污染,还可能威胁航行安全,威胁着海洋生物的生命安全,甚至会通过食物链直接威胁人类自身。除此之外,海上垃圾也会影响近海渔业的发展[5]。因此,对海漂垃圾开展自动化监测具有重要的意义。

目前海漂垃圾常用的调查手段是利用船只、无人机或飞机对某一海域漂浮垃圾进行调查观测,但是观测间隔的时间长,监测结果不连续[6]。视频监控作为海漂垃圾定点监测的一种重要手段,具有可长时间、连续获取某一重点区域海漂垃圾动态变化过程的特点,正日益成为海洋污染监管重要的技术手段之一[7-8]。此外,随着计算机运算能力的大幅提升以及海量的数据和先进算法技术的发展,深度学习模型在图像分类领域取得许多重要的突破[9-10]。其中,卷积神经网络(Convolutional Neural Networks ,CNN)是深度学习技术中最重要的网络结构之一。CNN能够从数据中自动学习并提取特征,其泛化能力显著优于传统方法。在图像处理上,CNN不仅能够有效地将大数据量的图片降维成小数据量,而且能够有效地保留图片特征,符合图片处理的原则。CNN技术的兴起,大大地提高了语义分割算法的精度,在实现像素级别的图像分类上明显优于其他传统的语义分割算法。因此CNN已在人脸识别、目标定位检测、目标分割以及图片分类检索等领域有着广泛的应用。如张惠凡等[11]利用青海湖野鸟监控的视频关键帧图像数据,采用VGG16(Visual Geometry Group16)卷积神经网络预训练模型来提取图像中的野鸟特征。芮挺等[12]提出采用多层网络构建深度卷积神经网络实现对行人检测的方法,结果表明该方法对于行人检测的识别率要明显优于传统方法。陈耀丹等[13]研究并实现了一种基于卷积神经网络的人脸识别方法,识别率可以达到99%以上。

因此,本文以厦门湾为研究海域,使用安装在嵩屿码头的视频监控设备所获取的图片,开展基于卷积神经网络的海漂垃圾自动识别技术研究,研究结果有望为深度学习这一新技术在海洋垃圾自动监测中的应用提供借鉴与技术参考。

1 数据与方法

1.1 研究区域概况

厦门湾地处台湾海峡西岸中部,闽南金三角中心,九龙江的下游,其海域面积为300多平方千米。随着厦门湾周边地区的城市化进程,并且厦门拥有丰富的滨海自然和人文旅游资源,每年慕名而来的游客数不胜数。经济和旅游业的日益增长给厦门湾海洋环境造成了巨大压力。

据统计,进入厦门海域的海漂垃圾有80%~90%来自九龙江流域[14],主要包括水草、水浮莲、树枝、木头、竹竿、饮料瓶和塑料袋[15]。海漂垃圾在九龙江径流带动下及潮汐影响下四处扩散,严重影响厦门岛周边海域及海岸的景观,对厦门的旅游业造成打击,同时也给厦门海洋生态环境带来一定的生态风险[14]。

嵩屿码头毗邻九龙江入海口处,是九龙江流域的垃圾进入厦门湾周边海域的必经之路。在嵩屿码头设置监控视频,持续开展该海域海漂垃圾的监测,有助于实时掌握流入厦门湾海漂垃圾的动态变化过程,并及时预警,为厦门湾海漂垃圾的监测和管理提供一定的参考依据。

1.2 数据源

本文所用的数据是嵩屿码头T1铁塔上安装的摄像监控设备所拍摄到的影像数据。视频监控设备为大华智能高清球机,分辨率为400万像素,焦距6~180 mm。拍摄范围主要为嵩屿码头到对岸漳州一带的海域。

视频监控图片数据可通过4G网络自动传回到厦门大学海洋监测与信息服务平台的FTP服务器上。本文主要使用的数据是2018年7—12月5:00—19:00的图片。

1.3 卷积神经网络

卷积神经网络(图1)是一种多层的神经网络,由输入层、卷积层、池化层、全连接层、Softmax分类层和输出层组成。其中,输入层为训练数据,即原始数据;卷积层是通过一个过滤器(卷积核)来过滤图像的各个小区域,从而提取图像的特征;池化层的主要作用是把数据降维,以有效避免过拟合;线性整流函数(Rectified Linear Unit,ReLU)表示卷积层所使用的激活函数。卷积层和池化层一般是交替出现,形成若干个卷积组,通过卷积组逐层进行特征的提取,最后采用若干个全连接层实现分类。

图1 卷积神经网络分类示意图

通常CNN网络通过卷积层之后的若干个全连接层,将卷积层产生的特征图映射成一个固定长度的特征向量。全卷积网络(Fully Convolutional Networks,FCN)(图2)可对图像进行像素级的分类,从而解决了语义级别的图像分割问题。与经典的CNN在卷积层之后使用全连接层得到固定长度的特征向量进行分类(全连接层+Softmax输出)不同,FCN可以接受任意尺寸的输入图像,采用反卷积层对最后一个卷积层的特征图进行上采样,使它恢复到输入图像相同的尺寸,从而可以对每个像素都产生了一个预测,同时保留了原始输入图像中的空间信息,然后在上采样的特征图上进行逐像素分类。最后逐个像素计算Softmax分类的损失,相当于每一个像素对应一个训练样本。图2所示意的全卷积网络的前半部分为卷积过程,后半部分为反卷积的过程。

图2 全卷积神经网络模型[16]

本文选用VGG16网络结构的卷积神经网络来构建海漂垃圾的自动判别模型。VGG是由牛津大学Visual Geometry Group提出的卷积神经网络模型。图3表示基于VGG16网络的全卷积神经网络模型架构。VGG16网络结构共包含13个卷积层、3个全连接层和5个池化层[16]。VGG16网络通过反复使用3×3的小型卷积核和2×2的最大池化层,不断加深网络结构来提升其性能(图3)。因VGG16使用多个较小卷积核(3×3)的卷积层来代替卷积核较大(如5×5或7×7)的卷积层,这样就可以使得模型的参数更少,非线性更强,从而增加网络的拟合表达能力,提高分类的精度。

图3 VGG16网络架构[17]

本文使用已经训练好的VGG16网络作为基本框架,为它添加上采样层,并根据分类种类和各个类别所占权重,添加上适应于本文图像的输出层并与Softmax层连接,然后通过反卷积网络操作,将结果对应到与输入图像相同的尺寸上,从而实现像素级别的语义分割(图2)。

2 海漂垃圾自动判别算法的建立

2.1 训练数据集的构建

本文所使用的训练数据集是从嵩屿码头2018年7—12月的视频中抽帧得到的。这些数据集所含的目标物不是固定不变的,而是具有多方位、多种形态特征。同时在一张图像中,最好能包含多个目标物体,可以是一个类别,也可以是多个类别。经过严格筛选,最后获取具有代表性的训练图片485张。从图4可以看出嵩屿码头海漂垃圾主要以木屑类垃圾为主(图4(a)),同时在视野范围内亦有不少橘黄色的条带状漂浮物(图4(b))。这些漂浮物可能是由船舶排污产生的泡沫与悬浮泥沙混合物形成的。因此,本文将其也归为海漂垃圾。在所选择的485张图片中,只含橘黄色条带状物质的图片有342张,只含木屑类的图片有143张。图片大小均为2 592×1 520像素。

图4 嵩屿码头周边海域海漂垃圾示意图

训练图片在用语义分割网络训练之前需要先对样本进行标注。本文使用MATLABR2018b中自带的图像标注工具Imagelabeler对图像上每一个像素进行人工标注。根据视频监控图片的特征,主要将图片中的目标物分为天空、建筑物、船、水、其他、木屑类垃圾和橘黄色条带状物质共7类(图5)。各类标注所对应的数值分别记为[1,2,3,4,5,6,7]。将原图和对应于原图的每一个像素都标签好的图片分别导入MATLABR2018b中的ImageDatastore和PixellabelDatastore,完成训练数据集的构建。此外,因原始图像过大,为了减少卷积时的计算量,将原始图片(像素大小为2 592×1 520)进行重采样得到像素为648×380的图片,然后再进行训练。

图5 训练样本标注示意图

2.2 初始化语义分割网络并训练

语义分割就是让计算机自动分割并识别出图像中每一个像素点的内容。初始化指的是参数设置,是深度学习训练的一个重要内容。为语义分割网络训练选择合适的参数非常重要,有助于网络在短时间内得到充分的训练并获得好的分类结果。本文的网络训练经过反复实验后,其中模型优化算法选用随机梯度下降算法;决定随机梯度下降算法收敛速度的参数即冲量设定为0.9;学习率决定了参数移动到最优值的速度快慢,这里将学习率设定为0.01;为防止过拟合,权重衰减设定为0.000 5;迭代次数主要由训练样本集的数目决定,训练集样本越多,需要迭代的次数就越多。其余参数大多采用模型的默认值。同时,在训练时会先计算出训练集中每张图像每一类别像素点个数占该图像总像素点的比例,然后统计分析不同类别像素点比例的中位数,将其除以每一类别总像素点从而得到类权重,该参数主要用于语义分割网络最后一层分类层的构建。

为了测试出影响分类精度的因素,找到取得最佳分类结果的训练方案,将训练数据集分成四种训练方案:

方案一:只含有橘黄色条带状物质的原图和带标签的图片,共342张;

方案二:只含有木屑类垃圾的原图和带标签的图片,共143张;

方案三:部分含有橘黄色条带状物质部分含有木屑类的原图和带标签的图片,共485张;

方案四:训练方案一至方案三中海水的占比比较大(平均为81.82%,表1),而木屑类海漂垃圾像素点所占比例比较小(≤0.2%,表1),且小于橘黄色条带状物质所占比例(<1%,表1),因此为平衡不同类别的比例,从无人机拍摄图片上选取一些含有木屑类垃圾的像素点,裁剪下来放在视频影像抓取的图片上(图6),与只含有橘黄色条带状物质的图片进行样本合成,以提高木屑类垃圾在训练图片上的比例(表1),这些合成的图片共105张。从表1可以看出,木屑类海漂垃圾和橘黄色条带状物质在方案四中所占比例有明显增加,分别达到了2.53%和1.13%。

图6 航拍图片木屑垃圾合成到视频图片上

表1 四种训练方案中不同分类类别占总像素点的比例

将以上4种不同方案的训练集中选择90%的图片用于训练,10%的图片用于测试,输入VGG16卷积神经网络架构里进行训练,同时检测图像分类效果。

不过,对于VGG16网络结构而言,本文收集的训练样本数据集仍相对较小。为了避免出现过拟合从而得到较高的分类精度,本文将已有的训练图片通过旋转或平移等方式生成新的训练图片,以进一步拓展训练数据集。

2.3 海漂垃圾自动判别流程及评价指标

图7表示基于卷积神经网络的海漂垃圾提取流程。在标注训练样本集和构建VGG16网络结构后,通过卷积神经网络的训练获得视频监控图片上各主要目标物的分类结果,并将各类别分类结果与原始图片进行对比分析,评估分类精度。

图7 基于卷积神经网络的海漂垃圾提取流程

本文采用卷积神经网络中常用的识别精度(Accuracy)[18]来评价分类结果。

对于每一类的分类结果,其精度是指被正确分类的像素点与该类总像素点的比例,即

式中,TP是指正确分类的像素点;FN表示分类错误的像素点;TP+FN为该类的总像素点。

整体分类精度(Global Accuracy)是正确分类的像素(无论类别)与总像素数的比值。使用整体精度这一指标可以快速且在计算成本低的情况下得到正确分类像素的百分比。

3 实验结果及评估

3.1 分类结果分析

根据图7海漂垃圾的提取流程对四种方案分别进行实验,结果如图8所示,其中第一行、第二行分别表示方案一和方案二的语义分割结果,第三行和第四行表示方案三的语义分割结果。从图8可以看出,方案一(图8(a)和图8(b))的橘黄色条带状物质较为准确地被判别出来;方案二(图8(c)和图8(d))有一些水的像素点被误判为垃圾像素点;方案三(图8(e)至图8(h))中既有一部分水的像素点被误判为木屑类垃圾,也有一部分水的像素点被误判为橘黄色条带状物质。

从图8还可以看出,当把部分含木屑类垃圾与部分含有橘黄色条带状物质的数据集一起投入训练,会出现部分水像素点误判为橘黄色条带状物质或者木屑类垃圾的情况。影响这两类垃圾分类效果的主要原因可能是相对于总的待分类像素点而言,橘黄色条带状物质像素点占比较少,而木屑类海漂垃圾像素点的占比更少(表1),且并不是每一张测试图片上均含有这两类垃圾,因此这两类垃圾的特征未能得到充分的训练。

图8 训练方案一至方案三的图像原图(左列)和分类结果(右列)

图9表示方案四示例图片的语义分割结果,方案四是把无人机拍摄到的木屑类垃圾图片合成到含有橘黄色条带状物质的图片中,木屑类海漂垃圾的占比明显提高(表1),从结果图中可以明显地看到木屑类海漂垃圾和橘黄色条带状物质海漂垃圾都较为准确的判别出来了。

图9 训练方案四的图像原图(左列)和分类结果(右列)

3.2 分类精度评估

不同实验方案主要类别的分类精度评估详见表2。其中,所有正确分类的像素个数与所有类别总像素个数的比值为整体分类精度;每一类别正确分类的像素个数与这一类别总像素个数的比值为这一类别的分类精度。

从表2可以看出,方案一到方案四整体分类精度均在95%以上,除个别方案中海漂垃圾的分类精度较低外,其他类别的分类精度均在90%以上。总的来说,当海漂垃圾像素点占总像素点的比例越高时,其分类精度也越高(表1和表2)。比如,对于橘黄色条带物质来说,当方案一单独训练只含有橘黄色条带状物质的图片时,分类精度可以达到90%以上,而当方案三加入含有木屑类垃圾的图片一起训练,稀释了橘黄色条带状物质的像素点,结果表明橘黄色条带状物质的分割精度也相应地降低(表2)。对于木屑类海漂垃圾来说,因方案二和方案三木屑类海漂垃圾占总像素点的比例较低,单独训练时分类精度只有74.79%,在方案三其占比有所降低(表1),此时分类精度降低到57.18%;而当在方案四人为提高木屑类海漂垃圾占总像素点的比例时(表1),其分类精度有了明显的提高,达到了92.65%。

表2 4种训练方案中不同分类类别的分类精度

此外,从表2还可以看出,海水、船等易于海漂垃圾混淆的类别的分类精度都比较高(>96%),这可能意味着利用卷积神经网络这一深度学习方法,能有效减少干扰物像素点与海漂垃圾这一目标物像素点间的混淆,从而可以保证目标物的提取精度。

基于方案四合成图片训练集生成的语义分割网络,选取2019年4月22日视频监控图片进行图像分类,结果如图10所示。从图10可以看出第一列和第三列原图中的各类别都能被准确地分辨出来,木屑类海漂垃圾和橘黄色条带状物质二者的区分也很清楚。而且对于一些肉眼难以分辨的分界线比较模糊的目标物也能较好地分辨出来,说明该判别模型在海漂垃圾的识别应用上是比较成功的。

图10 2019年4月22日监控数据的图像原图和分类结果

4 结 论

本文以厦门嵩屿码头视频监控获取的海上图片数据集构建了基于VGG16语义分割的卷积神经网络海漂垃圾判别模型。文中设计了四种训练方案来提取图片中的橘黄色条带状物质和木屑类海漂垃圾。结果表明卷积神经网络模型对海漂垃圾的提取精度高,当图片中海漂垃圾占比只有2%~3%时,其分类提取精度仍可达90%以上;而且训练样本中提取目标如海漂垃圾的有效像素比例越高时,最后分类的精度也越高;同时,该方法能有效减少干扰物像素点与垃圾像素点的混淆,具有很强的实用性。下一步我们将利用更多的训练样本来优化模型,最终实现海漂垃圾的自动化提取,并形成海漂垃圾管理信息系统,实时掌握流入厦门湾海漂垃圾的动态变化过程,为管理部门加强海洋垃圾污染防治与科学管理提供技术支撑。

猜你喜欢
橘黄色木屑像素点
图像二值化处理硬件加速引擎的设计
基于局部相似性的特征匹配筛选算法
木屑在高原无土基质化发酵腐熟技术中的应用研究
木屑
不同种类木屑栽培黑木耳的比较试验*
基于像素点筛选的舰船湍流尾迹检测算法
基于canvas的前端数据加密
一种磨砂质感橘黄色陶瓷釉料及其制备方法
为什么救生衣是橘黄色
蜜蜂