张佳林,徐立鸿,刘世晶
基于水下机器视觉的大西洋鲑摄食行为分类
张佳林1,徐立鸿1※,刘世晶2
(1. 同济大学电子与信息工程学院,上海 201800;2.中国水产科学研究院渔业机械仪器研究所,上海 200092)
根据鱼群摄食行为状态进行水产养殖精准投喂控制,是有效提高饵料利用率降低水体污染的关键技术。目前,大多数基于机器视觉的鱼类摄食行为研究都是在实验室对真实养殖环境进行模拟并采用水上摄像机获取数据,由于光照条件和养殖环境的影响,该数据无法反映大西洋鲑在实际生产状况下的摄食行为,因此应用范围有限。为解决此问题,该研究提出一种基于真实工厂化养殖环境的鱼类摄食行为分类算法。该算法使用水下观测方式并采用视频序列作为样本,首先利用变分自动编码器对视频序列样本进行逐帧编码以产生所有帧对应的高斯均值和方差向量,分别联立所有均值和方差向量得到均值特征矩阵和方差特征矩阵。然后将特征矩阵输入到卷积神经网络中,实现对鱼群的摄食行为分类。试验结果表明,在真实的工厂化养殖环境下,该研究所提出的方法综合准确率达到了89%,与已有的基于单张图像的鱼类摄食行为分类方法相比,综合准确率提高了14个百分点,召回率提高了15个百分点。研究结果可为基于鱼类摄食行为的鱼饵精准投喂控制提供参考。
水产养殖;机器视觉;鱼群摄食行为;视频分类;变分自动编码器
根据世界粮农组织(FAO)统计[1], 全球水产产量在2018年达到了约1.78×108t,其中人工养殖占45.9%,而在某些鱼类的养殖过程中,饵料支出约占总成本的40%[2-3],因此合理控制饵料具有重大的意义。就目前的养殖技术而言,饵料投放量一直是一个限制水产养殖经济收益的重要问题,如果饵料投喂不足养殖鱼类的生长速度会放缓,严重时甚至会引起肉食性养殖鱼类的同类相食,造成经济损失;若投喂过量则会造成饵料的浪费,增加了养殖的投入产出比,另外过多的剩余饵料会污染水质造成水体的富营养化[4],增加养殖鱼类的患病几率[5-6]。现阶段大部分鱼类养殖都是依靠养殖人员通过经验估计鱼类摄食需求而设定投饵量,具有很大的不确定性,而且主要依赖养殖人员的经验。
机器视觉技术因其非侵害、经济和高效的特点[7-9]使其成为渔业生产过程中的重要研究手段[10-13],而基于机器视觉的鱼类摄食行为分类主要有2个方向:1)间接评估方法,通过残余饵料或者养殖池水面反光间接反映鱼类摄食行为;2)直接评估方法,通过直接观测鱼群运动状态对其摄食行为进行分类。例如,Cao等[13]基于残余饵料间接研究了鱼类摄食强度。Liu等[14]通过计算视频帧之间的差异提出了CVFAI的鱼类摄食行为指数。Zhou等[15]注意到鱼类在摄食过程中的聚散现象,基于德劳内三角分割提出了FIFFB的鱼类摄食行为指数,该指数与人类专家观测数据相关性达到了0.945。Zhao等[16]基于鱼类量化自发集体性行为提出了实时预测鱼类摄食强度的算法。
上述研究在实验室的模拟环境下都取得了不同程度的进展,且数据采集系统均位于水面上方。在真实的工厂化养殖环境下养殖密度更大、光环境更差、干扰因素更多,当数据采集系统位于水面上方时,所采集到的视频图像被水体表面反光效应严重影响,无法正确反映鱼类摄食行为,而当数据采集系统位于水下时则可以避免该问题,因此本文将数据采集系统设置在循环养殖池水下。另一方面,目前大多数研究都是基于单张图像的鱼类摄食行为研究。单张图像虽然可以通过鱼群的空间分布反映其聚散现象,但是由于无法包含鱼群的运动信息,从而无法对高密度的鱼群摄食行为进行分类。故本文采用视频分类技术对鱼类摄食行为进行研究。
在视频分类领域,一些研究人员直接通过3D卷积网络对视频分类[17-20]取得了一定进展,但是由于3D卷积核的引入一方面使得网络参数加倍,另一方面受限制于目前的计算能力,无法直接形成长时间网络记忆。Håkon Måløy等[21]通过双流循环神经网络(Dual-Stream Recurrent Network, DSRN)实现了对20帧鱼类摄食行为的2分类,准确率达到了81.4%。但是由于引入了大量的3D卷积和残差网络使得网络参数众多,DSRN对更长时间的视频行为进行分类时,模型的训练将变得较为困难,不利于工程应用。
针对以上问题,为研究在真实工厂化养殖环境下的鱼类摄食行为分类,本文提出一种变分贝叶斯卷积神经分类网络(Variational Auto Encoder-Convolutional Neural Network, VAE-CNN)的视频分类方法,它可以通过较少的网络参数实现视频的分类。论文通过设计水下视频采集系统并对所采集数据进行人工标注以构建鱼类摄食行为水下视频数据集。在该数据集下完成了对变分自动编码器(Variational Auto Encoder, VAE)的训练,实现了对数据集视频样本的编码。然后利用编码后的视频特征训练卷积神经网络(Convolutional Neural Network, CNN),实现对视频样本的分类。该研究可为全自动的精准投喂控制提供理论支持和技术参考。
为证明本文所提出算法的有效性,以大西洋鲑鱼(L.)摄食行为分类为例进行说明,但是作为一种通用的鱼类摄食行为分类算法,其他种类的鱼类摄食行为也可以通过本文所提出算法进行分类,试验在东方海洋科技股份有限公司(山东烟台)进行,数据采集车间为7号车间。7号车间共有6个循环养殖池,养殖池的结构示意图如图1所示,底部直径为8 m,高度为2 m,养殖水深为1.8 m。6个循环养殖池所养殖大西洋鲑均已经过周年养殖。
本研究采集视频的方案为水下获取,如图1所示。沿循环养殖池水底圆周均匀放置4个水下相机(GOPRO HERO7),相机水平放置无仰角,相机距离水底高度为0.5 m。视频采集帧率为30 Hz,视频原始尺寸为1 920× 1 080像素。图像处理语言为Python,神经网络搭建工具箱由TensorFlow库提供。为避免对鱼类造成惊吓影响其正常习性,所有设备均进行消毒后由专业养殖人员放置并进行鱼类适应性训练。
试验车间大西洋鲑平均体质量为2 034.12 g,平均体长为423.00 mm,平均体高为110.23 mm,平均体宽为60.18 mm,放养密度为15 kg/m3,养殖溶解氧浓度为10~12 mg/L,养殖温度为(15.7±0.4) ℃,每天投喂3次,投喂时间分别为:8:00、12:40和20:00,投喂装置为轨道式自动投饲机(图2),投喂饵料为挪威的适可添牌(Skretting)鲑鱼颗粒饲料,其主要营养成分为:粗蛋白≥48.0%,粗脂肪≥18.0%,粗纤维≤1.0%,粗灰分≤12.0%。图2所示的箱型饵料箱在设定的时间将会沿着轨道自动运动到循环养殖池的中央,然后通过下方的饵料盘抛洒出设定量的饵料,每次投喂后暂停1 min等待鱼类完成摄食过程后进行下一次投喂。通过现场多次试验发现,当投饵量被设为鱼体质量的1.1%时循环养殖池出现残饵,说明在该投喂量下为过量投喂,鱼类存在拒绝摄食的行为,鱼类的摄食欲望判断基于文献[22-23]所提出的标准(表1)和工厂养殖专家经验。在饵料投放同时,开始获取鱼群摄食行为状态的视频图像。
图2 轨道式自动投饲机
表1 数据集样本分类标准
大西洋鲑摄食行为分类算法输入为视频序列,输出为鱼群的摄食类别。渔业研究相关文献[22-23]将鱼类摄食行为等级分为四类,其标准如表1所示。本文依据该表建立鱼群摄食行为类别,其中“弱”和“无”被标注为“未摄食状态”,而“中”与“强”被标注为“摄食状态”。
基于大西洋鲑养殖专家经验以及6个不同循环养殖池获得的视频采样数据分析,鱼类摄食行为数据样本长度被设置为5 s,这样采集的数据样本可以反映大西洋鲑的摄食行为特征,并进行数据标注(不同种类的鱼的视频数据样本长度的设置应该是不同的,这可以通过现场试验确定,其基本要求是能够反映鱼群的摄食行为特征)。虽然在数据库中样本的长度被设置为5 s(150帧),但是在实际控制时,可以通过在线滚动的方式实现对鱼类摄食行为进行实时判断,即数据采集系统获取5 s数据后输入到本文所提出算法,即可得到当前鱼类摄食行为状态,当下一个5 s数据采集完成后再次循环。数据集划分以及样本数量如表2所示。根据表1的样本标注准则和养殖专家经验进行数据标注得到未摄食状态样本3 132个,摄食状态样本659个,其中80%被划分为训练集,10%为验证集,10%为测试集。
表2 数据集划分与样本数量
与目前大多数基于机器视觉的鱼类摄食行为研究不同,本文采用视频分类的方法对鱼类摄食行为进行分类。与基于单张图片的鱼类摄食行为分类算法相比,其显著优点是,基于视频分类参考了多帧图像,包含更多的鱼类摄食行为运动信息。本文的算法流程如图3所示。
图3 算法流程图
完成大西洋鲑摄食行为视频数据集构建后,首先对所有的视频帧图像进行直方图线性变换预处理操作,然后通过变分自动编码器逐帧提取视频单帧图像特征,得到所有视频帧图像的高斯均值向量和高斯方差向量,将所有的均值向量和方差向量按列组合得到高斯均值特征矩阵和高斯方差特征矩阵,最后将两个特征矩阵输入至卷积神经网络实现对鱼类摄食行为的视频分类。
本文的研究对象是在真实的工厂化养殖环境,该环境光源为人工光源,光照分布极不均匀;另一方面视频数据采集相机位于水下,水体对光照的吸收使得水下光照不足[24],综上原因使得数据采集系统得到的图像数据存在光照不足,细节不清晰等缘故。因此必须进行图像预处理。
根据数据集视频特点,本文采用的图像预处理方案为直方图线性变换[25],其数学定义如下:
式中v为原始图像灰度等级,p为预处理后的灰度等级,α为线性变换系数。本文中令α=2,试验结果如图4所示。通过对比预处理前后图像以及灰度直方图可以看出图像的亮度得到了提高,图像细节部分更加丰富。
变分自动编码器[26-28]是一种基于变分贝叶斯的神经网络,其结构示意图如图5所示。变分自动编码器通过卷积神经网络将图像转换到先验分布为标准多元高斯分布的隐藏空间(其中隐藏空间维度为超参数),实现了从图像到多元高斯随机概率分布的变换,该变换即为图5中的编码器。编码后的图像通过逆卷积网络(解码器)又可以实现图像的重建。其数学描述如下
式中为编码器网络,为解码器网络,为网络输入图,()为隐藏空间多元高斯随机分布,z为从随机分布()得到的采样值,img为解码器网络基于z所复原的图像。
本文利用训练完成的变分自动编码器网络中的编码部分实现对视频特征的提取,即视频中的每一帧f都会通过被映射成为一个多元高斯随机分布的概率密度函数z,为下一步的鱼类摄食行为视频分类提供特征。
注:ft,zt,分别为t时刻的视频帧图像,隐藏空间下的多元高斯分布以及通过解码器重建的视频帧图像。
现阶段对变分自动编码器的研究主要是对生成式模型的研究,即对解码器的研究。通过解码器可以生成数据集中不存在但是又十分真实的图像。而较少有研究关注到编码器。由于变分自动编码器的编码器其本质是卷积神经网络,所以编码过程也可以被视为特征提取过程,在隐藏空间下的多元高斯分布概率密度函数的均值和方差向量即为特征向量。
利用变分自动编码器提取视频特征步骤描述如下:首先设置变分自动编码器隐藏空间超参数,参考文献[28]与多次试验后本文将其设置为50,然后在数据集下训练变分自动编码器,最后将视频样本逐帧输入到编码器中,将所有输出的均值向量按列组合得到高斯均值矩阵,将所有输出的方差向量按列组合得到高斯方差矩阵。由于数据库中视频样本长度为150,所以特征矩阵(高斯均值矩阵、高斯方差矩阵)的列数为150;变分自动编码器隐藏空间的维度为50,所以特征矩阵的行数为50。将特征矩阵归一化,通过可视化软件后得到的结果如图6所示。
注:t为不同视频图像帧所对应时刻。
首先通过变分自动编码器(VAE)将视频图像转换成为具有两个通道的特征图,然后利用卷积神经网络(CNN)对特征图分类最终实现对视频分类,所以本文所提出的方法被称为变分贝叶斯卷积神经分类网络(VAE-CNN)。
CNN的局部感受野、权值共享和降采样3个特点使之成为深度学习中最先成功案例[29-31],特征表达如下
式中P为第层卷积神经网络输出的特征图,为激活函数,为1层卷积神经网络通过卷积和偏置运算后的输出值,ω为第层的卷积核,P为第层卷积神经网络输出的特征图,b为第层的偏置项。ω和b为网络训练参数。
通过多层网络特征提取后,将网络的输出特征图输入到全连接层和分类层对目标实现分类
式中θ-1为待训练参数迭代更新前,θ为待训练参数迭代更新后,为学习率,∂为偏微分运算符。
将变分自动编码器得到的视频特征矩阵作为2个通道的特征图输入到卷积神经网络中,分类类别为:1)鱼类处于摄食状态;2)鱼类处于非摄食状态。其结构示意图如图7所示,其中包含3个卷积层,1个全连接层和1个softmax层。
注:cl1代表鱼类处于摄食状态,cl2代表鱼类处于非摄食状态。
本文的视频分类途径是先通过变分自动编码器将视频序列编码为高斯均值矩阵和高斯方差矩阵,然后将这2个特征矩阵送入卷积神经网络实现分类。
本文采用综合准确率(Accuracy),阳性准确率(Precision),召回率(Recall),特异值(Specificity)4个指标[23]评价算法性能,其定义如下,
式中TP为真阳性(True Positive),即算法输出类别为阳性与实际类别一致,在本文中即为算法输出类别为鱼类处于摄食状态,数据集中的标注也为摄食状态;FP为假阳性(False Positive),即算法输出类别为阳性与实际类别不一致,在本文中即为算法输出类别为鱼类处于摄食状态,数据集下的标注为非摄食状态;TN为真阴性(True Negative),即算法输出类别为阴性且与实际类别一致,在本文中即为算法输出类别为鱼类处于非摄食状态,数据集下的标注也为非摄食状态;FN为假阴性(False Negative),即算法输出类别为阴性而与实际类别不一致,在论文下即为算法输出类别为鱼类处于非摄食状态,数据集下的标注为摄食状态。
图5所示变分自动编码器网络参数设置为:隐藏空间维度50,编码器包含3个卷积层卷积核尺寸分别为13×13,15×15,3×3,其中最后1层为池化层相关参数为2×3,解码器逆卷积共3层尺寸均为5×5,并在第1层逆卷积后添加上采样层,通过验证集选择最优的网络学习率=0.000 1。卷积神经网络共有3个卷积层对应的卷积核尺寸分别为:11×11,5×5,3×3,分别对应于图7中的第1层,第2层和第3层,通过验证集选择最优的网络学习率=0.000 05。
如表3所展示的试验结果所示,本文所提出的方法(VAE-CNN)在测试集下准确率(Accuracy)达到了89%,召回率(Recall)达到了90%。表3中所有算法运行环境均为Win10 Intel®Core(TM) i7-5600U CPU @ 2.5 GHz,运行内存8 GB。
表3 VAE-CNN与其他方法对比结果
注:运行时间是指算法处理单个样本(5 s视频或者150帧视频图像)所用时间。
Note: Running time refers to the time taken by the algorithm to process a single sample (5 s video clip or 150 frames video image).
为了进一步说明本文方法的有效性,将本文所提出的方法与基于图像的鱼类摄食行为分类算法(CNN)[23]进行对比。将数据集中所有视频帧转换为图片训练CNN网络,完成训练后算法在测试集下表现如表3所示。通过对比可以发现,本文所提出的方法在各项指标下均优于CNN方法,其中召回率提高了15个百分点,说明本文所提出的算法对于鱼群摄食行为分类的准确率有较大提高。
为说明VAE-CNN中CNN网络选取的合理性,将变分自动编码器所输出的高斯均值和方差矩阵的直方图作为特征向量分别输入至支持向量机[32](Variational Auto Encoder-Support Vector Machine, VAE-SVM)和BP神经网络[33](Variational Auto Encoder- Backpropagation, VAE-BP)进行分类,其中支持向量机通过LIBSVM工具库[34]完成,BP网络通过MATLAB神经网络工具箱完成。试验结果如表3所示,通过对比可以发现VAE-CNN网络的分类结果优于其他两类方法,说明了第二部分网络选择的合理性。
对表3结果进行分析,造成分类结果表现差异的原因如下:
1)视频序列可以涵盖完整的鱼类摄食行为状态,而且可以提供鱼群在不同时刻的运动速度以及方向信息,所以基于视频的鱼类摄食行为分类(VAE-CNN、VAE-SVM、VAE-BP)的综合准确率均高于基于图像的方法(CNN)。
2)CNN方法基于单张图像进行分类,其分类依据在于摄食状态和非摄食状态的鱼群在空间上的分布位置和密度不同,但是在真实的工厂化养殖环境下鱼群养殖密度大,在摄食状态的前期鱼群的聚集和非聚集的图像差异较小,所以该方法很难实现对非摄食状态的准确判断,最终导致特异值(Specificity)较低。
3)弱摄食状态下的视频样本与非摄食状态的视频样本差异较小,该部分数据样本容易受到误判,但是在强摄食状态的鱼类摄食行为视频中,鱼群运动剧烈特征明显难以被误判为未摄食状态,因此本文所提出的VAE-CNN方法的召回率(Recall)准确率最高。
4)对比VAE-CNN与VAE-SVM、VAE-BP试验结果表明,在该数据集下经过变分自动编码器编码后的特征更适合采用卷积神经网络分类。其原因主要在于,视频样本被VAE编码为高斯均值和方差矩阵,矩阵每1列对应1帧视频图像,VAE-SVM、VAE-BP两种方法都是将这2个矩阵的直方图作为输入特征进行分类,这种做法无法提取到不同视频帧之间的相关关系,而VAE-CNN方法是直接对这2个矩阵进行卷积操作,当卷积核在矩阵不同列之间滑动进行卷积操作时,更有利于对视频前后帧的时空特征提取,所以VAE-CNN方法取得了更好的试验结果。
5)对比不同算法的运行时间可以发现,VAE-CNN、VAE-SVM和VAE-BP运行时间十分接近,这是因为这3个算法的第1阶段完全相同且耗时较长。在第1阶段的VAE需要对视频样本的150帧图像进行编码操作,完成编码后的分类任务只需要经过1次CNN、SVM或BP神经网络运算,而它们运算耗时与第一阶段相比都较短,总的来说VAE-CNN算法耗时略高于VAE-SVM和VAE-BP。与直接采用图像判断鱼类摄食行为的CNN算法相比,由于该算法是对单张图像分类,所以5 s的视频样本需要进行150次运算,为提取图像的纹理特征该网络的结构设置与VAE-CNN中的卷积神经网络相比更为复杂,所以其耗时更长。
在鱼饵投喂控制的实际运用中,可以根据本文提出的分类算法,对获得的工厂化养殖环境中的大量的鱼群摄食行为的视频数据样本进行离线训练,得到鱼群摄食行为的二类分类器,将此分类器(算法软件模块)事先置于投喂自动控制系统中,将实时获得的鱼群摄食行为的视频数据样本输入分类器,实时给出(输出)分类结果,控制系统依据此分类结果得到“投喂”或“不投喂”的控制决策,实施对饵料投喂设备的控制动作。
本文提出基于视频分类的鱼类摄食行为分类算法,在真实的工厂化养殖环境下取得了较好的分类效果,为鱼饵精准投喂控制提供了一种可能的方法。
1)利用在真实的工厂化养殖环境下所构建的水下视频数据集训练了VAE-CNN网络,最终在测试集上的准确率(Accuracy)达到了89%。
2)基于所构建数据集训练变分自动编码器,实现了对视频的特征提取,有效利用了鱼类摄食行为的时空特征,为基于视频分析的鱼类摄食行为研究提供了合理的表征方法。
3)研究了不同方法对VAE所编码特征的分类,并通过试验方法说明了第二阶段CNN选择的合理性。
4)算法采用视频图像数据样本,而非单张图像,能够较充分地获得鱼群的摄食行为运动信息,从而得到较准确的分类结果和基于分类的精准投喂控制策略。与其他的基于视频的鱼类摄食行为分类算法相比,本文提出的算法网络结构相对简单,可对较长时间的鱼类摄食行为模式进行分类,具有更广泛的应用前景。
但是由于条件限制,本文所提出方法仅在大西洋鲑养殖环境下进行了测试与数据集构建,在下一步工作中计划对不同种类的养殖鱼类进行测试。在算法方面,本文所提出的算法虽然实现了对鱼群摄食行为的初步分类,未来研究中将该二分类算法扩展为多分类算法,这将是十分有意义的工作。
[1] Manuel Barange. The State of World Fisheries and Aquaculture 2020-Meeting the Sustainable Development Goals[R]. Rome: Food and Agriculture Organization of the United Nations, 2018.
[2] Atoum Y, Srivastava S, Liu X. Automatic feeding control for dense aquaculture fish tanks[J]. IEEE Signal Processing Letters, 2015, 22(8): 1089-1093.
[3] Chang C M, Fang W, Jao R C, et al. Development of an intelligent feeding controller for indoor intensive culturing of eel[J]. Aquacultural Engineering, 2005, 32(2): 343-353.
[4] Barraza-Guardado R H, Martínez-Córdova L R, Enríquez-Ocaña L F, et al. Effect of shrimp farm effluent on water and sediment quality parameters off the coast of Sonora, Mexico[J]. Ciencias Marinas, 2014, 40(4): 221-235.
[5] Zhao S, Ding W, Zhao S, et al. Adaptive neural fuzzy inference system for feeding decision-making of grass carp (Ctenopharyngodon idellus) in outdoor intensive culturing ponds[J]. Aquaculture, 2019, 498: 28-36.
[6] Xu J, Liu Y, Cui S, et al. Behavioral responses of tilapia () to acute fluctuations in dissolved oxygen levels as monitored by computer vision[J]. Aquacultural Engineering, 2006, 35(3): 207-217.
[7] Wishkerman A, Boglino A, Darias M J, et al. Image analysis-based classification of pigmentation patterns in fish: A case study of pseudo-albinism in Senegalese sole[J]. Aquaculture, 2016, 464: 303-308.
[8] 周超,徐大明,吝凯,等. 基于近红外机器视觉的鱼类摄食强度评估方法研究[J]. 智慧农业,2019,1(1):76-84.
Zhou Chao, Xu Daming, Lin Kai, et al. Evaluation of fish feeding activity in aquaculture based on near infrared machine vision[J]. Smart Agriculture, 2019, 1(1): 76-84. (in Chinese with English abstract)
[9] 王文静,徐建瑜,吕志敏,等. 基于机器视觉的水下鲆鲽鱼类质量估计[J]. 农业工程学报,2012,28(16):153-157.
Wang Wenjing, Xu Jianyu, Lü Zhimin, et al. Weight estimation of underwater Cynoglossus semilaevis based on machine vision[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2012, 28(16): 153-157. (in Chinese with English abstract)
[10] 李贤,范良忠,刘子毅,等. 基于计算机视觉的大菱鲆对背景色选择习性研究[J]. 农业工程学报,2012,28(10):189-193.
Li Xian, Fan Liangzhong, Liu Ziyi, et al. Preference habit of juvenile turbot for different color bakgrounds based on the computer vision[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2012, 28(10): 189-193. (in Chinese with English abstract)
[11] 张志强,牛智有,赵思明. 基于机器视觉技术的淡水鱼品种识别[J]. 农业工程学报,2011,27(11):388-392.
Zhang Zhiqiang, Niu Zhiyou, Zhao Siming, et al. Identification of freshwater fish species based on computer vision[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2011, 27(11): 388-392. (in Chinese with English abstract)
[12] 范良忠,刘鹰,余心杰,等. 基于计算机视觉技术的运动鱼检测算法[J]. 农业工程学报,2011,27(7):226-230.
Fan Liangzhong, Liu Ying, Yu Xinjie, et al. Fish motion detecting algorithms based on computer vision technologies[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2011, 27(7): 226-230. (in Chinese with English abstract)
[13] Cao J, Xu L. Research on counting algorithm of residual feeds in aquaculture based on machine vision[C]// IEEE 3rd International Conference on Image, Vision and Computing (ICIVC). IEEE, 2018.
[14] Liu Z, Li X, Fan L, et al. Measuring feeding activity of fish in RAS using computer vision. Aquacultural engineering[J]. 2014, 60: 20-27.
[15] Zhou C, Zhang B, Lin K, et al. Near-infrared imaging to quantify the feeding behavior of fish in aquaculture[J]. Computers and Electronics in Agriculture, 2017, 135: 233-241.
[16] Zhao J, Bao W J, Zhang F D, et al. Assessing appetite of the swimming fish based on spontaneous collective behaviors in a recirculating aquaculture system[J]. Aquacultural Engineering, 2017, 78: 196-204.
[17] Molchanov P, Gupta S, Kim K, et al. Hand gesture recognition with 3D convolutional neural networks[C]// IEEE Conference on Computer Vision and Pattern Recognition Workshops (CVPRW). IEEE, 2015.
[18] Tran D, Bourdev L, Fergus R, et al. Learning spatiotemporal features with 3D convolutional networks[C]// IEEE International Conference on Computer Vision (ICCV). IEEE, 2015.
[19] Huang J, You S. Point cloud labeling using 3D convolutional neural network[C]// International Conference on Pattern Recognition. IEEE, 2016.
[20] Maturana D, Scherer S. 3D convolutional neural networks for landing zone detection from LiDAR[C]// IEEE International Conference on Robotics and Automation (ICRA), IEEE 2015.
[21] Håkon Måløy, Aamodt A, Misimi E. A spatio-temporal recurrent network for salmon feeding action recognition from underwater videos in aquaculture[J]. Computers and Electronics in Agriculture, 2019, 167:1-9.
[22] Øverli Ø, Sørensen C, Nilsson G E. Behavioral indicators of stress-coping style in rainbow trout: do males and females react differently to novelty?[J]. Physiology & Behavior, 2006, 87(3): 506-512.
[23] Zhou C, Xu D, Chen L, et al. Evaluation of fish feeding intensity in aquaculture using a convolutional neural network and machine vision[J]. Aquaculture, 2019, 507: 457-465.
[24] Ancuti C, Ancuti C O, Haber T, et al. Enhancing underwater images and videos by fusion[C]// IEEE Conference on Computer Vision & Pattern Recognition. IEEE, 2012.
[25] Sonka M, Václav H, Boyle R. 图像处理、分析与机器视觉(第四版)[M]. 北京:清华大学出版社, 2016:86-97.
[26] Danilo J R, Shakir M, Daan W. Stochastic backpropagation and approximate inference in deep generative models[C]// Proceedings of the 31st International Conference on Machine Learning, PMLR 2014.
[27] Burda Y, Grosse R, Salakhutdinov R. Importance weighted autoencoders[J/OL]. arXiv, 2015.[2020-03-16] arXiv: 1509.00519v4. https://arxiv.org/abs/1509.00519v4
[28] Doersch C. Tutorial on variational autoencoders[J/OL]. arXiv, 2016.[2020-03-16] arXiv:1606.05908v2. https://arxiv.org/abs/1606.05908v2
[29] 李彦冬,郝宗波,雷航. 卷积神经网络研究综述[J]. 计算机应用,2016,36(9):2508-2515.
Li Yangdong, Hao Zhongbo, Lei Hang. Survey of convolutional neural network. Journal of Computer Applications[J], 2016, 36(9): 2508-2515. (in Chinese with English abstract)
[30] 杨斌,钟金英. 卷积神经网络的研究进展综述[J]. 南华大学学报:自然科学版,2016,30(3):66-72.
Yang Bin, Zhong Jinying. Review of convolution neural network[J]. Journal of University of South China( Science and Technology), 2016, 30(3):66-72. (in Chinese with English abstract)
[31] 卢宏涛,张秦川. 深度卷积神经网络在计算机视觉中的应用研究综述[J]. 数据采集与处理,2016,31(1):1-17.
Lu Hongtao, Zhang Qinchuan. Applications of deep convolutional neural network in computer vision[J]. Journal of Data Acquisition and Processing. 2016, 31(1): 1-17 (in Chinese with English abstract)
[32] Osuna E, Freund R, Girosit F. Training support vector machines: an application to face detection[C]// Proceedings of IEEE Computer Society Conference on Computer Vision and Pattern Recognition. IEEE, 1997: 130-136.
[33] Hecht-Nielsen. Theory of the backpropagation neural network[C]// International 1989 Joint Conference on Neural Networks. IEEE, 2002.
[34] Chang C C, Lin C J. LIBSVM: A library for support vector machines[J]. ACM Transactions on Intelligent Systems and Technology, 2011, 2(3): 1-27.
Classification of Atlantic salmon feeding behavior based on underwater machine vision
Zhang Jialin1, Xu Lihong1※, Liu Shijing2
(1.201800,;2.200092)
Fish feeding behavior can provide effective decision-making information for accurate feeding in aquaculture. Most previous studies were usually conducted in a laboratory environment to understanding fish feeding behavior. The limited application cannot reveal the actual production status of fish due to the influence of light conditions and farming environment in practice. Particularly, the cameras placed over the water surface cannot work well in most methods, due to serious light reflection resulted from the complex illumination conditions. For instance, the light reflection is so serious that many fishes are blocked out. In this study, an attempt was made to introduce an underwater video dataset for the feeding behavior of Atlantic salmon. In the dataset, the video clips were captured from an industrial recirculating aquaculture system. Each sample that labeled as eating or noneating was a 5-second clip with the frame rate of 30 Hz. A total of 3 791 samples were marked in the dataset, where 3 132 samples were marked as noneating and 659 samples eating. A novel video classification method based on Variational Auto-Encoder and Convolutional Neural Network (VAE-CNN) was proposed to identify the fish-feeding behavior from the video clip. Two steps were as followed. In the first step, a Variational Auto-Encoder (VAE) model was trained to extract the spatial feature of video frames. All video frames were encoded as a multivariate Gaussian probability distribution function in a latent space, indicating that represented by a Gaussian mean vector and a Gaussian variance vector. Specifically, the frames in a video clip were input into a trained VAE encoder to produce Gaussian mean vectors and Gaussian variance vectors, then to combine them in column order separately, finally to obtain the Gaussian mean feature matrix and Gaussian variance feature matrix of the video. In this step, the video clip of fish feeding behavior was coded as a feature map with two channels for the subsequent classification. In the second step, the fish feeding behavior was classified by inputting the feature matrix into the CNN. The VAE output features were input to train the CNN, while the spatio-temporal features in fish feeding behavior videos were extracted for the final classification. To verify the CNN, the VAE output features were also input into the backpropagation neural network (VAE-BP) and support vector machine (VAE-SVM) to classify the feeding behavior of fish. The results showed that VAE-CNN performed better. The main reason is that the CNN with a local receptive field function can allow it to better learn the spatio-temporal features in fish feeding behavior videos, while the other two methods only consider the output features of VAE as a common feature map. In real factory farming, the accuracy of the proposed method reached 89%, the recall reached 90%, and the specificity reached 87%. Compared with the single-image classification method, VAE-CNN recall increased by 15percentage points, and other performance indexes of video classification method improved significantly. In terms of running time, the proposed algorithm only needed 4.15 s to process 5 s (150 frames) for the video of fish feeding behavior. This novel method can build a solid foundation for the future system with feedback control based on the fish feeding behavior.
aquaculture; machine vision; fish feeding behavior; video classification; Variational Auto-Encoder
张佳林,徐立鸿,刘世晶. 基于水下机器视觉的大西洋鲑摄食行为分类[J]. 农业工程学报,2020,36(13):158-164.doi:10.11975/j.issn.1002-6819.2020.13.019 http://www.tcsae.org
Zhang Jialin, Xu Lihong, Liu Shijing. Classification of Atlantic salmon feeding behavior based on underwater machine vision[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2020, 36(13): 158-164. (in Chinese with English abstract) doi:10.11975/j.issn.1002-6819.2020.13.019 http://www.tcsae.org
2020-04-20
2020-06-14
国家重点研发计划(2017YFD0701700)
张佳林,研究方向为机器视觉与视频分类。Email:jialinzhang@tongji.edu.cn
徐立鸿,教授,博士生导师,研究方向为温室环境建模与控制、预测控制和智能控制。Email:xulihong@tongji.edu.cn
10.11975/j.issn.1002-6819.2020.13.019
S951.2
A
1002-6819(2020)-13-0158-07