一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种鱼类摄食状态检测方法

2022-06-11 05:37:25 来源:中国专利 TAG:


1.本发明涉及鱼类养殖技术领域,更具体地说,它涉及一种鱼类摄食状态检测方法。


背景技术:

[0002][0003]
目前,通过使用反映鱼群的摄食状态的特征向量与神经网络分类模型相结合的方式来实现鱼群摄食行为的研究成为了热点。如使用lenet5卷积神经网络 (convolutional neural network,cnn)对鱼群摄食的近红外图像进行分类,其平均准确率达到90%。使用以vggnet和resnet为骨干网络结构的双循环神经网络(dual stream recurrent network,dsrn)实现了对20帧鱼群摄食图像的2分类,分类准确率达到81.4%;由于dsrn网络结构较为复杂,计算参数多、计算时间长,因此需要配备高性能显卡的计算机,成本较高,不利于在工厂化养殖环境中推广。通过投票策略对鱼群摄食视频筛选,再使用光流法提取视频帧间运动特征(相角特征和幅值分布),并结合cnn网络对鱼群摄食状态进行分类,平均准确率达97.6%。采用基于光流法的动能模型来量化鱼群摄食行为的空间特征,再使用长短期记忆人工神经网络(long-short term memory,lstm) 对基于空间特征的向量序列进行分类,平均精度达到98.31%。使用光流法提取鱼群帧间运动特征,需对视频进行后期处理,特征提取过程繁琐,不具实时性和连续性,不能实现对鱼群摄食状态长时间监测,同时视频采集容易受到光照环境因素的影响,也不利于工程应用。
[0004]
此外,大部分鱼群摄食状态分类算法都基于理想条件下开展研究,如循环水养殖、良好光源照明,导致此类算法在应用时往往受到生成成本、光照环境、水质清晰度等条件的限制,同时也存在部署困难的问题,无法应用于复杂的工厂化养殖环境。


技术实现要素:

[0005]
本发明要解决的技术问题是针对现有技术的上述不足,本发明的目的是提供一种鱼类摄食状态检测方法,在保证较高识别精度的同时,又降低对计算机资源的需求,有利于在实际生产环境中推广。
[0006]
本发明的技术方案是:一种鱼类摄食状态检测方法,包括:
[0007]
通过深度相机采集鱼群一次完整摄食过程的深度图像;
[0008]
根据深度变化将所述深度图像转换成深度伪彩色图;
[0009]
将所述深度伪彩色图按强摄食、中等强度摄食、弱摄食、未摄食进行标注;
[0010]
构建简单卷积神经网络模型,使用标注好的深度伪彩色图训练所述简单卷积神经网络模型得到第一检测模型;
[0011]
使用所述第一检测模型进行实际检测鱼类摄食状态。
[0012]
作为进一步地改进,使用不同的颜色表示不同的深度,将所述深度图像中鱼群的距离信息线性转换为hsv颜色模型的hue值,再将hsv模型的颜色数值转换成对应的rgb彩色值得到深度伪彩色图,计算hue值的公式如下:
[0013]
hue=γ
×
[1-(z(x,y)-z0)/z
1-z0]
ꢀꢀꢀ
(1)
[0014]
式(1)中的z(x,y)表示深度图中坐标为x,y处的深度值,即目标到深度相机的垂直距离值,其取值范围为所述深度相机设置的有效测量范围,[z0,z1] 为所述深度相机设置的有效测量范围的下限和上限取值,γ为取值为0.67的衰减因子。
[0015]
进一步地,所述简单卷积神经网络模型依次包括维度为3的输入层、3个隐藏层、一个1个全局池化层、一个4分类的输出层;所述深度伪彩色图输入所述输入层,3个隐藏层均使用大小为5
×
5、步长为1的二维卷积核,3个隐藏层的激活函数均采用relu激活函数,3个隐藏层的卷积核个数分别为32、64、128,每个卷积层后面均使用步长为2
×
2的平均池化层进行下采样处理,并使用丢弃率为0.2的dropout层来防止网络过拟合;最后使用一个使用1个全局池化层来降低计算参数,并连接一个4分类的输出层,其中输出层使用softmax分类函数预测类别概率。
[0016]
进一步地,所述输出层还使用基于交叉熵损失函数优化训练,公式如下:
[0017][0018][0019]
式(2)中的pi为类别i的最终预测概率,zi为分类模型对类别为i的原始预算输出;zj为分类模型对类别为j的原始预算输出,c为类别总数,式(3)中的l为交叉熵损失函数,yi为类别i对应的标签。
[0020]
进一步地,所述深度相机的型号为azure kinect dk。
[0021]
进一步地,还包括:
[0022]
对相邻两帧深度图像的像素总和值求差值,将差值作为表征鱼群的摄食强度量化指标e(k),
[0023][0024][0025][0026]
其中,f(k)的表示第k幅深度图像的目标像素点总和值,z(x,y)表示深度图中坐标为x,y处的深度值,即目标到深度相机的垂直距离值,深度图像的像素为m*n;
[0027]
以j个连续的e(k)数据为一组,将所有摄食强度量化指标e(k)划分为若干组时间序列;
[0028]
将所述时间序列按强摄食、中等强度摄食、弱摄食、未摄食进行标注;
[0029]
构建门控循环单元网络模型,使用标注好的时间序列训练所述门控循环单元网络模型得到第二检测模型;
[0030]
使用准确率accuracy、精确率precision、召回率recall、特效度 specificity、f1得分来评价所述第一检测模型、第二检测模型;若所述第一检测模型的f1得分高于所述第二检测模型的f1得分,则使用所述第一检测模型进行实际检测鱼类摄食状态;否则,使用所述第二检测模型进行实际检测鱼类摄食状态;
[0031]
accuracy=(tp tn)/(tp tn fp fn)
ꢀꢀꢀ
(7)
[0032]
precision=tp/(tp fp)
ꢀꢀꢀ
(8)
[0033]
specificity=tn/(tn fp)
ꢀꢀꢀ
(9)
[0034]
recall=tp/(tp fn)
ꢀꢀꢀ
(10)
[0035]
f1=2*precision*recall/(precision recall)
ꢀꢀꢀ
(11)
[0036]
式中,tp:真实值为正且预测也为正的样本数量;fp:真实值为负但预测为正的样本数量;fn:真实值为正但预测为负的样本数量;tn:真实值为负且预测也为负的样本数量。
[0037]
进一步地,所述门控循环单元网络模型依次包括维度为32的嵌入层、2个隐藏层、卷积核个数为10的全连接层、4分类的输出层,2个隐藏层分别使用 32个和16个门控循环单元作为特征提取单元使用丢弃率为0.2的dropout层来防止网络过拟合,输出层使用softmax分类函数预测类别概率,并使基于交叉熵损失函数优化训练。
[0038]
有益效果
[0039]
本发明与现有技术相比,具有的优点为:
[0040]
本发明使用深度相机与图像处理程序相结合可实时获得鱼群摄食状态深度图和摄食状态序列数据,由于鱼群摄食状态深度图的轮廓较为清晰,与背景区别也较为明显,因此可使用较为简单卷积网络进行分类;其次摄食状态序列数据实现了对鱼群摄食状态的量化,量化参数简单有效,也可使用简单的循环神经网络进行分类。本发明在保证较高识别精度的同时又降低对计算机资源的需求,有利于在实际生产环境中推广。
附图说明
[0041]
图1为本发明的检测结构示意图;
[0042]
图2为本发明中深度相机的检测参数示意图;
[0043]
图3为本发明中的深度伪彩色图;
[0044]
图4为本发明中的简单卷积神经网络模型图;
[0045]
图5为本发明中的门控循环单元网络模型图。
具体实施方式
[0046]
下面结合附图中的具体实施例对本发明做进一步的说明。
[0047]
实施例1
[0048]
参阅图1~4,一种鱼类摄食状态检测方法,包括:
[0049]
通过深度相机采集鱼群一次完整摄食过程的深度图像,如图1所示;
[0050]
根据深度变化将深度图像转换成深度伪彩色图,如图3所示;
[0051]
将深度伪彩色图按强摄食、中等强度摄食、弱摄食、未摄食进行标注;
[0052]
构建简单卷积神经网络模型,如图4所示,使用标注好的深度伪彩色图训练简单卷积神经网络模型得到第一检测模型;
[0053]
使用第一检测模型进行实际检测鱼类摄食状态。
[0054]
在本实施例中,深度相机的型号为azure kinectdk,如图1所示,深度相机1通过红外光源发射器2向养育池内连续发射经过调制的红外光脉冲,光照射到摄食鱼群表面,经过反射进入到深度相机1。由于鱼群摄食时不同位置至红外传感器的平面距离不同,进而反射光在空间的飞行距离不同,因此在接收端获得了发射脉冲和接收脉冲的相位差,通过深度
相机的内部数字信号处理器处理相位差矩阵,重建出一幅分辨率为640*576 的深度图,深度图像素点代表物体的深度值,反映在视角范围内鱼群的轮廓特征。
[0055]
在本实施例中,检测的是鲤鱼,其摄食习性为上浮水面摄食饵料,将azurekinectdk深度相机放置于养育池正上方中心并向下俯拍,如图2所示。azurekinectdk深度相机的有效测量范围为0.5~3.58m,超出此范围会引起较大误差,因此调节深度相机与养育池的水面距离为0.5m,使得深度相机的视野范围覆盖整个养育池水面。鲤鱼摄食区域为距离水面深度0.08m的区域,这个区域鱼群摄食较为明显,因此设置深度相机有效测量范围为0.48~0.58m,使得深度相机仅聚集在鱼群摄食区域进行拍摄,排除了其他未进入摄食区域鱼的干扰,进一步提高鱼群摄食强度分类的精度。鱼群摄食强度如表1所示。
[0056]
摄食行为级别鱼群行为数据集类别强鱼群上浮水面主动摄食且运动范围大、鱼群面积分布大摄食状态中鱼群中部分鱼上浮水面开始摄食运动范围小摄食状态弱鱼群中少量鱼上浮水面并只对附近饵料有反应摄食状态无鱼群对饵料无反应、潜在水下非摄食状态
[0057]
表1
[0058]
使用不同的颜色表示不同的深度,将深度图像中鱼群的距离信息线性转换为hsv颜色模型的hue值,再将hsv模型的颜色数值转换成对应的rgb彩色值得到深度伪彩色图,计算hue值的公式如下:
[0059]
hue=γ
×
[1-(z(x,y)-z0)/z
1-z0]
ꢀꢀꢀ
(1)
[0060]
式(1)中的z(x,y)表示深度图中坐标为x,y处的深度值,即目标到深度相机的垂直距离值,其取值范围为所述深度相机设置的有效测量范围,[z0,z1] 为深度相机设置的有效测量范围的下限和上限取值即取值范围是500~580,z0、 z1分别为500与580,γ为取值为0.67的衰减因子,鱼在水面500~580mm的深度变化时,对应的色调hue的值取值范围是0~0.67。再采用c#开发平台的 colorconverthsvtorgb(h,s,v,r,g,b)方法将hsv颜色模型转换为rgb模型,其中h等于公式(1)的hue的值,s、v的值为1,转换后的r,g,b的值乘上255即为实际的rgb颜色值,进而得到基于距离信息的伪彩色图,通过伪彩色图可提高对鱼群摄食状态的判断准确度。
[0061]
在本实施例中,简单卷积神经网络模型依次包括维度为3的输入层、3个隐藏层、一个1个全局池化层、一个4分类的输出层;所述深度伪彩色图输入所述输入层,3个隐藏层均使用大小为5
×
5、步长为1的二维卷积核,3个隐藏层的激活函数均采用relu激活函数,3个隐藏层的卷积核个数分别为32、64、128,每个卷积层后面均使用步长为2
×
2的平均池化层进行下采样处理,并使用丢弃率为0.2的dropout层来防止网络过拟合;最后使用一个使用1个全局池化层 (global average pooling,gap)来降低计算参数,并连接一个4分类的输出层,其中输出层使用softmax分类函数预测类别概率。
[0062]
输出层还使用基于交叉熵损失函数优化训练,公式如下:
[0063][0064][0065]
式(2)中的pi为类别i的最终预测概率,zi为分类模型对类别为i的原始预算输出;
zj为分类模型对类别为j的原始预算输出,c为类别总数,式(3)中的l为交叉熵损失函数,yi为类别i对应的标签。
[0066]
实施例2
[0067]
进一步的,在实施例的基础上,实施例2还包括:
[0068]
对相邻两帧深度图像的像素总和值求差值,将差值作为表征鱼群的摄食强度量化指标e(k),
[0069][0070][0071][0072]
其中,f(k)的表示第k幅深度图像的目标像素点总和值,z(x,y)表示深度图中坐标为x,y处的深度值(以mm为单位),即目标到深度相机的垂直距离值,深度图像的像素为m*n,由于深度图像素为640*576,所以x和y的取值分别为 0~640和0~576,即m=640,n=576,z0、z1分别为500与580;公式(6)表示当像素点的深度值在为500~580mm范围时(此区域为鱼群摄食区域),此像素点的值设为1,用灰度值255(白色)表示;超出此范围的像素点,用灰度值 0(黑色)表示。
[0073]
由式(5)可知鱼群在水面左右或水体不同深度上下交替游动越激烈,其鱼群目标像素总和的差值e(k)越大,说明鱼群摄食强度越高,反之亦然。因此e(k) 可作为量化鱼摄食强度的量化数据指标。
[0074]
以j个连续的e(k)数据为一组,将所有摄食强度量化指标e(k)划分为若干组时间序列;在喂食状态下,视频采集时间为6~8分钟,可获得1800~2400 个e(k)个数据,根据鱼群摄食状态时间长度,取35个e(k)个数据作为一个时间序列,即j=35,通过每一次的投喂活动获得10~20组反映鱼群摄食状态的序列数据。
[0075]
将时间序列按强摄食、中等强度摄食、弱摄食、未摄食进行标注;
[0076]
构建门控循环单元网络模型,如图5所示,使用标注好的时间序列训练门控循环单元网络模型得到第二检测模型;
[0077]
使用准确率accuracy、精确率precision、召回率recall、特效度 specificity、f1得分来评价第一检测模型、第二检测模型;若第一检测模型的 f1得分高于第二检测模型的f1得分,则使用第一检测模型进行实际检测鱼类摄食状态;否则,使用第二检测模型进行实际检测鱼类摄食状态;
[0078]
accuracy=(tp tn)/(tp tn fp fn)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(7)
[0079]
precision=tp/(tp fp)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(8)
[0080]
specificity=tn/(tn fp)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(9)
[0081]
recall=tp/(tp fn)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(10)
[0082]
f1=2*precision*recall/(precision recall)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(11)
[0083]
式中,tp:真实值为正且预测也为正的样本数量;fp:真实值为负但预测为正的样本数量;fn:真实值为正但预测为负的样本数量;tn:真实值为负且预测也为负的样本数量。
[0084]
门控循环单元网络模型依次包括维度为32的嵌入层、2个隐藏层、卷积核个数为10
的全连接层、4分类的输出层,2个隐藏层分别使用32个和16个门控循环单元作为特征提取单元,使用丢弃率为0.2的dropout层来防止网络过拟合,输出层使用softmax分类函数预测类别概率,并使基于交叉熵损失函数优化训练。
[0085]
本发明使用深度相机与图像处理程序相结合可实时获得鱼群摄食状态深度图和摄食状态序列数据,由于鱼群摄食状态深度图的轮廓较为清晰,与背景区别也较为明显,因此可使用较为简单卷积网络进行分类;其次摄食状态序列数据实现了对鱼群摄食状态的量化,量化参数简单有效,也可使用简单的循环神经网络进行分类。本发明在保证较高识别精度的同时又降低对计算机资源的需求,有利于在实际生产环境中推广。
[0086]
以上仅是本发明的优选实施方式,应当指出对于本领域的技术人员来说,在不脱离本发明结构的前提下,还可以作出若干变形和改进,这些都不会影响本发明实施的效果和专利的实用性。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献