CN111862048A - 基于关键点检测和深度卷积神经网络的鱼体姿态与长度自动分析方法 - Google Patents
基于关键点检测和深度卷积神经网络的鱼体姿态与长度自动分析方法 Download PDFInfo
- Publication number
- CN111862048A CN111862048A CN202010708291.5A CN202010708291A CN111862048A CN 111862048 A CN111862048 A CN 111862048A CN 202010708291 A CN202010708291 A CN 202010708291A CN 111862048 A CN111862048 A CN 111862048A
- Authority
- CN
- China
- Prior art keywords
- image
- key point
- binocular
- length
- coordinate system
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 241000251468 Actinopterygii Species 0.000 title claims abstract description 90
- 238000001514 detection method Methods 0.000 title claims abstract description 45
- 238000004458 analytical method Methods 0.000 title claims abstract description 8
- 238000013528 artificial neural network Methods 0.000 title claims description 9
- 238000013527 convolutional neural network Methods 0.000 claims abstract description 25
- 238000012937 correction Methods 0.000 claims abstract description 7
- 238000000034 method Methods 0.000 claims description 26
- 238000012549 training Methods 0.000 claims description 14
- 238000004364 calculation method Methods 0.000 claims description 12
- 210000000006 pectoral fin Anatomy 0.000 claims description 7
- 238000004140 cleaning Methods 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 claims description 4
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 claims description 4
- 238000012935 Averaging Methods 0.000 claims description 3
- 239000013598 vector Substances 0.000 claims description 3
- 125000004432 carbon atom Chemical group C* 0.000 claims description 2
- 230000005764 inhibitory process Effects 0.000 claims description 2
- 238000005259 measurement Methods 0.000 abstract description 7
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 11
- 230000036544 posture Effects 0.000 description 11
- 238000011156 evaluation Methods 0.000 description 5
- 238000009360 aquaculture Methods 0.000 description 3
- 244000144974 aquaculture Species 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 239000011521 glass Substances 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000010835 comparative analysis Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000009313 farming Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 230000000877 morphologic effect Effects 0.000 description 1
- 238000009372 pisciculture Methods 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01B—MEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
- G01B11/00—Measuring arrangements characterised by the use of optical techniques
- G01B11/02—Measuring arrangements characterised by the use of optical techniques for measuring length, width or thickness
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/80—Geometric correction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Quality & Reliability (AREA)
- Geometry (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及一种基于关键点检测和深度卷积神经网络的鱼体姿态与长度自动分析方法,包括步骤:S1、通过水下双目摄像机获取包含鱼群的双目图像,所述双目图像包括左图和右图;S2、在水下环境标定获得双目摄像机参数,并对获取的双目图像进行双目校正。本发明的有益效果是:结合了深度卷积神经网络,对应用环境和场景适应性强;引入关键点检测思想,只关注鱼类身上特定的关键点的空间位置,避免了全局双目匹配在水下应用的困难;所需设备简单,只需要水下双目摄像机和运算后端;可实现实时对图像中不同位置和姿态的多条鱼进行姿态估计和长度测量,准确度和效率较高;让模型同样对任务具有泛化能力,容易从一个工作场景迁移至另一个。
Description
技术领域
本发明涉及水产养殖与水下生物测量领域,尤其包括一种基于关键点检测和深度卷积神经网络的鱼体姿态与长度自动分析方法。
背景技术
在鱼类养殖业中,从业者需要定其对被养殖的鱼群进行生长状态评估,以决定进一步的养殖策略。鱼体的长度信息能够最直观地反映鱼群的生长情况,对鱼群生长状态监控与评估有着重要意义。为了提高鱼类养殖的科学性,高效性,在鱼类养殖中便捷高效地获取准确的鱼体长度信息十分重要。
传统的鱼体长度监测方法依赖于相对繁重的人力资源,缺乏效率。养殖者需捕捞一部分的鱼群,并测量这些样本的大小,以其统计数据来反映整个鱼群的生长状况。这种接触式测量手段不仅会对被捕捞的个体造成直接的伤害,而且还会间接伤害到对整个鱼群。渔业和水产养殖业从业者也可以利用基于视觉智能的系统来监测养殖鱼类的生态,以代替人工测量。一些方法通过纹理以及轮廓的几何特征对鱼体进行检测和定位,其错误率较高,对环境和鱼类本身的姿态变化的适应力较弱。在长度估计种,绝大多数基于机器视觉的方法都应用了全局或半全局匹配以对双目图像的每个像素进行视差估计,从而将鱼体重投影到世界坐标系下,但由于用于养殖的水下环境经常具有漂浮物、浑浊和光照的影响,这些像素级匹配算法往往无法获得较高的准确度,会直接导致鱼体长度的估测产生较大的误差。
发明内容
本发明的目的是克服现有技术中的不足,提供一种基于关键点检测和深度卷积神经网络的鱼体姿态与长度自动分析方法。
这种基于关键点检测和深度卷积神经网络的鱼体姿态与长度自动分析方法具体包括以下步骤:
S1、通过水下双目摄像机获取包含鱼群的双目图像,所述双目图像包括左图和右图;
S2、在水下环境标定获得双目摄像机参数,并对获取的双目图像进行双目校正;
S3、将双目校正后的双目图像输入深度卷积神经网络中进行目标检测,并按比率扩展目标检测边界框;通过丰富的数据集使模型对环境和目标姿态的变换具有鲁棒性,具有较高的准确率和召回率;避免鱼身的某些关键点处于边界框外部;
S4、匹配双目图像两边包含同一条鱼的边界框:取每对边界框间标准相关系数(Standard Correlation Coefficient)最大且高于预设阈值的双目图像;匹配只在双目图像的同一基线上进行,符合双目成像原理,使匹配结果更具可靠性;
S5、应用关键点检测神经网络对成功匹配的左右边界框内的鱼进行关键点检测,得到预先定义的一系列关键点在图像坐标系下的坐标;
S6、应用双目摄像机参数,通过每个关键点在双目图像左图和右图坐标系下的坐标,将关键点重投影到三维世界坐标系下;
S7、根据三维世界坐标系下的关键点,提取表示鱼身体曲线的一系列点在三维世界坐标系下的坐标,用关键点拟合一条空间二阶曲线;空间二阶曲线的位姿代表所估测的鱼体的位姿,空间二阶曲线的长度为所估测的鱼体长度;即使所测鱼体身体有倾斜或扭动,也能通过拟合曲线准确地测定其长度。
作为优选,所述步骤S1中双目摄像机拍摄时置于水下,双目摄像机封装于防水外壳中,通过USB传输线接到计算后端,通过角度调节装置调节拍摄角度,以大致平行于水平面的方向拍摄,拍摄角度与水平面之间可以具有俯仰角;双目摄像机上还设有用于清洁拍摄镜头的清洁刷。
作为优选,所述步骤S2中采用张正友标定法进行双目校正,步骤S2通过编写python脚本获取棋盘图图像并检测角点,通过检测到的角点三维世界坐标系坐标和对应像素位置计算得到双目摄像机参数。
作为优选,所述步骤S3中进行目标检测时采用Faster R-CNN网络作为目标检测网络;Faster R-CNN网络以ResNet-50作为骨干网络,ResNet-50后连接特征金字塔网络(Feature Pyramid Network,FPN),金字塔网络后连接进行边界框偏移量预测的全连接层和分类全连接层;预测得到的边界框偏移量通过非极大抑制(Non-Maximum Suppressing,NMS)得到包含鱼体的若干边界框。
作为优选,所述步骤S4中每对边界框间图像img1和图像img2之间的标准相关系数的计算方法为:
上式中,C(img1,img2)为每对边界框间图像img1和图像img2之间的标准相关系数,img′1(i,j)为图像img1去均值化后的图像,img′2(i,j)为图像img2去均值化后的图像。
作为优选,所述步骤S5中采用堆叠沙漏网络(Stacked Hourglass)进行关键点预测;关键点预测过程中,选用头部(Head)、背鳍一(BackFin1)、背鳍二(BackFin2)、胸鳍(PectoralFin)、臀鳍(GlutealFin)和尾鳍(CaudalFin)作为鱼体的关键点;其中背鳍一为背鳍的前端,背鳍二为背鳍的后端;这些关键点属于鱼体身上共同存在的形态学特征,适用于任何类别的鱼体;堆叠沙漏网络(Stacked Hourglass)结构为三个堆叠的三阶沙漏结构;每个沙漏结构为一个阶段,在每个阶段的末尾输出关键点热图,所述沙漏结构的跳线部分通过按通道衔接,从而使得网络在能够同时考虑多级尺度特征尽可能地保留信息;训练堆叠沙漏网络时在每个阶段的末尾输出应用中继监督,第一阶段的权重为0.1,第二阶段的权重为0.33,第三阶段的权重为1.0;中继监督能够让网络逐阶段优化其输出,并在最后的第三阶段输出准确度较高的关键点预测结果。
作为优选,所述步骤S6中,对于双目图像左图和右图上的每对关键点,通过双目摄像机成像的三角形法则(相似三角形原理)对每个关键点进行重投影;关键点P在三维世界坐标系下的坐标P(xw,yw,zw)的计算公式为:
上式中,f为摄像机焦距,B为摄像机基线长度,lpix为图像坐标系的一个像素的长度,xleft、xright分别为P在图像坐标系中双目图像左图和右图上的横坐标,yleft为P在图像坐标系下在双目图像的左图上的纵坐标,图像坐标系以图像中心为原点。
作为优选,所述步骤S7具体包括如下步骤:
S7.1、取P1(xw1,yw1,zw1)、P2(xw2,yw2,zw2)、P3(xw3,yw3,zw3)、P4(xw4,yw4,zw4);P1为关键点头部在三维世界坐标系下的坐标,P2为关键点背鳍一与胸鳍的中点在三维世界坐标系下的坐标,P3为关键点背鳍二与臀鳍的中点在三维世界坐标系下的坐标,P4为关键点尾鳍在三维世界坐标系下的坐标;先用P1、P2、P3和P4拟合得到空间平面S:
Axw+Byw+Czw+1=0
上式为空间平面S的表达式;关键点P在三维世界坐标系下的坐标为P(xw,yw,zw);A、B和C均为参数;
S7.2、通过最小二乘法,用P1、P2、P3、P4的空间坐标拟合得到参数A、B、C:
Θw=(Xw TXw)-1Xw TYw
A=Θw2/Θw1
B=-1/Θw1
C=Θw3/Θw1
上式中,P1、P2、P3、P4的空间坐标为P1(xw1,yw1,zw1)、P2(xw2,yw2,zw2)、P3(xw3,yw3,zw3)、P4(xw4,yw4,zw4),Θw为计算A、B、C用到的中间变量向量;
S7.3、再将P1、P2、P3、P4投影到空间平面S上得到P1′(x1,y1)、P2′(x2,y2)、P3′(x3,y3)、P4′(x4,y4),以作为x轴,得到P1′、P2′、P3′、P4′在S上的二维坐标;定义二阶曲线Γ:
a+bx+cx2=y
上式中,a、b、c均为参数;Γ在空间中的位姿反映了所测鱼体的骨架的位姿,且其长度为所测鱼体的长度;
S7.4、用P1′、P2′、P3′、P4′的二维坐标拟合得到参数a、b、c:
S7.5、通过Γ计算鱼体长度:
上式中,和分别为P1′和P4′在空间平面S上的横坐标,b、c均为参数。S7.1、取P1(xw1,yw1,zw1)、P2(xw2,yw2,zw2)、P3(xw3,yw3,zw3)、P4(xw4,yw4,zw4);P1为关键点头部在三维世界坐标系下的坐标,P2为关键点背鳍一与胸鳍的中点在三维世界坐标系下的坐标,P3为关键点背鳍二与臀鳍的中点在三维世界坐标系下的坐标,P4为关键点尾鳍在三维世界坐标系下的坐标;先用P1、P2、P3和P4拟合得到空间平面S:
Axw+Byw+Czw+1=0
上式为空间平面S的表达式;关键点P在三维世界坐标系下的坐标为P(xw,yw,zw);A、B和C均为参数。
本发明的有益效果是:不会干预鱼群的生态,且整个测量过程可由Python程序自动实现;结合了深度卷积神经网络,对应用环境和场景适应性强;引入了关键点检测的思想,只关注鱼类身上特定的关键点的空间位置,从而避免了全局双目匹配在水下应用的困难;所需设备简单,只需要水下双目摄像机和运算后端;可实现实时对图像中不同位置和姿态的多条鱼进行姿态估计和长度测量,准确度和效率较高,满足水产养殖业中对鱼类生长状况的监测需求;针对不同类别的鱼类和养殖场景,可通过/更改扩大数据集的方式,让模型同样对任务具有泛化能力,容易从一个工作场景迁移至另一个。
附图说明
图1为本发明的整体流程图;
图2为用于获取被养殖鱼类双目图像的水下双目摄像机示意图;
图3为用于目标检测的Faster R-CNN目标检测网络结构图;
图4为用于关键点检测的Stacked Hourglass关键点检测网络的结构图;
图5为Stacked Hourglass网络中一个单独的沙漏结构的结构图;
图6为鱼体关键点位置定义示意图;
图7为双目成像的相似三角形原理示意图;
图8为用Faster R-CNN得到的鱼体目标检测结果实例图;
图9为双目边界框匹配结果实例图;
图10为Stacked Hourglass进行关键点检测的结果实例图;
图11为鱼体姿态曲线拟合结果实例图;
图12为鱼体长度估测结果图。
附图标记说明:清洁刷1、防水外壳2、双目摄像机3、USB传输线4、角度调节装置5。
具体实施方式
下面结合实施例对本发明做进一步描述。下述实施例的说明只是用于帮助理解本发明。应当指出,对于本技术领域的普通人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
在深度学习的主导研究和发展下,基于视觉智能的应用得到了极大的发展。通过目标检测神经网络和关键点检测神经网络,可以更具鲁棒性地检测水下的鱼类,以及进行关键点检测,从而进一步计算鱼体的姿态和长度。本发明克服现有鱼体长度测量技术方法的缺点,实现在水下养殖环境内实时对自由游动的多条鱼的外观长度信息估测。本鱼体长度分析方法可通过python程序自动完成,过程不需人为干预,并且测量对鱼的生态不会造成影响。本方法需要的硬件为水下双目摄像机和运算后端,运算后端可采用搭载有GPU的主机或类似的设备,若不搭载GPU,方法仍能正常施行,只是在实时性上会有所降低。
作为一种实施例,一种基于关键点检测和深度卷积神经网络的鱼体姿态与长度自动分析方法,拍摄设施如图2所示,双目摄像机3拍摄时置于水下,双目摄像机3封装于防水外壳2中,通过USB传输线4接到计算后端,通过角度调节装置5调节拍摄角度,拍摄角度与水平面之间具有俯仰角;双目摄像机3上还设有用于清洁拍摄镜头的清洁刷1。整体流程如图1所示:
a)实验环境
采用的双目摄像头焦距为1mm,基线长度为60mm,像素尺寸为0.003mm。
方法中所用到的Faster R-CNN网络在训练时,使用了1241张水下养殖鱼类的图像作为数据集,分为训练集:验证集=9:1。在训练时,骨干网络的第一个阶段被冻结。优化器采用带动量的SGD(随机梯度下降),学习率设为0.01,动量设为0.9,正则化权重设为10-5。训练采用4张Nvidia GTX1080Ti GPU。
方法中所用到的Stacked Hourglass网络在训练时,使用了612个已标注关键点的鱼类图像边界框作为数据集,分为训练集:验证集=9:1,且尺寸都被缩放至128×64。学习率设为0.001,动量设为0.9,正则化权重设为10-6。训练采用4张Nvidia GTX1080Ti GPU。
b)准备阶段
(1)在水下环境标定获取双目摄像机的参数,包括每个摄像机的内参矩阵、畸变系数、两摄像机间的旋转矩阵及平移向量。实例中通过棋盘图进行标定,编写python脚本获取棋盘图图像并检测角点,通过检测到角点的世界坐标系坐标以及对应像素位置计算得到双目摄像机参数
(2)将双目摄像机置于水下,获取包含被养殖鱼群的足量双目图像作为数据集,对这些图像进行标注,需要标注鱼体的边界框和关键点位置。关键点的定义如图6所示,分别为Head、DorsalFin1、DorsalFin2、PectoralFin、GlutealFin、CaudalFin。标注工具采用VGGImage Annotator(VIA)。
(3)利用基于pytorch的深度学习框架,用python编写搭建Faster R-CNN网络,其结构如图3所示。该Faster RCNN网络以ResNet-50作为骨干网络,对输入图像进行高维特征提取,其后连接特征金字塔网络,融合不同尺度上的特征,先将FPN输出的特征输入由若干卷积层组成的RPN得到区域建议,再将区域建议内的FPN特征输入两组全连接层,分别进行边界框偏移量预测和目标分类。网络末尾预测得到的结果通过非极大抑制(Non-MaximumSuppressing,NMS)以得到包含鱼体的若干边界框。将(2)中得到的训练集加载到模型进行目标检测训练。训练总共进行12轮。
(4)利用基于pytorch的深度学习框架,用python编写搭建Stacked Hourglass网络,Stacked Hourglass关键点检测网络的结构图如图4所示,Stacked Hourglass网络中一个单独的沙漏结构的结构如图5所示。通过(3)中得到的Faster R-CNN模型预测边界框,结合(2)中的关键点标注数据,将关键点位置数据加载到Stacked Hourglass模型进行关键点检测训练。训练总共进行24轮。优化器采用带动量的SGD(随机梯度下降),学习率设为0.01,动量设为0.9,正则化权重设为10-5。
通过上述准备阶段,获得了双目摄像机的参数,和已训练完成的、可实现鱼体检测的Faster R-CNN网络模型及参数,以及已训练完成的、可实现鱼体关键点检测的StackedHourglass网络模型及参数。
c)姿态与长度测定
(1)用水下双目摄像头获取图像。对于一帧双目图像,分别将左图和右图输入已训练的Faster R-CNN网络,预测得到左图和右图中边界框的位置,然后对这些边界框进行双目边界框匹配得到左图和右图中包含同一条鱼的边界框。匹配取每对边界框间图像标准相关系数(Standard Correlation Coefficient)最大,且高于预设阈值者。计算边界框内的图像img1和图像img2之间的标准相关系数C(img1,img2)的公式为:
其中,img′1(i,j)和img′2(i,j)分别代表img1和图像img2去均值化后的图像。这一过程如图8和图9所示,图9中匹配成功的左右边界框带有相同的编号。
(2)对每一对匹配成功的边界框,将其分别通过已训练的Stacked Hourglass网络,预测得到其中鱼体的关键点。如图10所示,Stacked Hourglass网络的每个阶段都会输出关键点预测结果,但更往后的阶段效果更好,随着阶段提升,网络能够校正误测点,补齐漏测点。
(3)对每一对成功匹配的边界框,将其关键点重投影至三维世界坐标系,投影时关键点P在世界坐标系下的坐标P(xw,yw,zw)的计算公式为:
原理图如图7所示。用这些关键点计算P1(xw1,yw1,zw1)、P2(xw2,yw2,zw2)、P3(xw3,yw3,zw3)、P4(xw4,yw4,zw4),其中P1为关键点Head在世界坐标系下的坐标,P2为关键点BackFin1与PectoralFin的中点世界坐标系下的坐标,P3为关键点BackFin2与GlutealFin的中点在世界坐标系下的坐标,P4为关键点CaudalFin在世界坐标系下的坐标。通过P1、P2、P3、P4拟合得到鱼体的骨架曲线,曲线拟合的步骤为:先定义空间平面S,其表达式为Axw+Byw+Czw+1=0,通过最小二乘法,用P1、P2、P3、P4的空间坐标拟合得到参数A、B、C,具体计算公式为:
Θw=(Xw TXw)-1Xw TYw
A=Θw2/Θw1
B=-1/Θw1
C=Θw3/Θw1
再将P1、P2、P3、P4投影到S上得到P1′(x1,y1)、P2′(x2,y2)、P3′(x3,y3)、P4′(x4,y4),以P1′作为原点,作为x轴,得到P1′、P2′、P3′、P4′在S上的二维坐标;定义二阶曲线Γ,其表达式为a+bx+cx2=y,用P1′、P2′、P3′、P4′的二维坐标拟合得到参数a、b、c,具体计算公式为:
Γ在空间中的位姿反映了所测鱼体的骨架的位姿,且其长度为所测鱼体的长度。由Γ:a+bx+cx2=y计算鱼体长度的公式为:
d)评估
为了评估Faster R-CNn的目标检测准确度,分别用mAP[@0.5]、mAP[@0.75]和mAP[@0.5:0.95]作为评价指标。模型在验证集上的表现如下表所示:
评价指标 | mAP[@0.5] | mAP[@0.75] | mAP[@0.5:0.95] |
表现 | 0.905 | 0.898 | 0.715 |
为了评估Stacked Hourglass的关键点检测准确度,采用OKS(averaged ObjectKeypoint Similarity)作为评价指标,分别对模型的一、二、三阶段进行评价。模型在验证集上的表现如下表所示:
阶段 | 1 | 2 | 3(最终输出) |
表现 | 0.447 | 0.609 | 0.667 |
为了评估此方法的长度估测准确度,取若干样本的长度估计结果与实际测量的真实值对比,对比分析结果如图12所示。对评估数据集里的所有数据而言,鱼体长度估计的平均误差为5.58%。
Claims (8)
1.基于关键点检测和深度卷积神经网络的鱼体姿态与长度自动分析方法,其特征在于,包括以下步骤:
S1、通过水下双目摄像机(3)获取包含鱼群的双目图像,所述双目图像包括左图和右图;
S2、在水下环境标定获得双目摄像机参数,并对获取的双目图像进行双目校正;
S3、将双目校正后的双目图像输入深度卷积神经网络中进行目标检测,并按比率扩展目标检测边界框;
S4、匹配双目图像两边包含同一条鱼的边界框:取每对边界框间标准相关系数最大且高于预设阈值的双目图像;
S5、应用关键点检测神经网络对成功匹配的左右边界框内的鱼进行关键点检测,得到关键点在图像坐标系下的坐标;
S6、应用双目摄像机参数,通过每个关键点在双目图像左图和右图坐标系下的坐标,将关键点重投影到三维世界坐标系下;
S7、根据三维世界坐标系下的关键点,提取表示鱼身体曲线的点在三维世界坐标系下的坐标,用关键点拟合一条空间二阶曲线;空间二阶曲线的位姿代表所估测的鱼体的位姿,空间二阶曲线的长度为所估测的鱼体长度。
2.根据权利要求1所述基于关键点检测和深度卷积神经网络的鱼体姿态与长度自动分析方法,其特征在于:所述步骤S1中双目摄像机(3)拍摄时置于水下,双目摄像机(3)封装于防水外壳(2)中,通过USB传输线(4)接到计算后端,通过角度调节装置(5)调节拍摄角度,拍摄角度与水平面之间具有俯仰角;双目摄像机(3)上还设有用于清洁拍摄镜头的清洁刷(1)。
3.根据权利要求1所述基于关键点检测和深度卷积神经网络的鱼体姿态与长度自动分析方法,其特征在于:所述步骤S2中采用张正友标定法进行双目校正,步骤S2通过编写python脚本获取棋盘图图像并检测角点,通过检测到的角点三维世界坐标系坐标和对应像素位置计算得到双目摄像机参数。
4.根据权利要求1所述基于关键点检测和深度卷积神经网络的鱼体姿态与长度自动分析方法,其特征在于:所述步骤S3中进行目标检测时采用Faster R-CNN网络作为目标检测网络;Faster R-CNN网络以ResNet-50作为骨干网络,ResNet-50后连接特征金字塔网络,金字塔网络后连接进行边界框偏移量预测的全连接层和分类全连接层;预测得到的边界框偏移量通过非极大抑制得到包含鱼体的若干边界框。
6.根据权利要求1所述基于关键点检测和深度卷积神经网络的鱼体姿态与长度自动分析方法,其特征在于:所述步骤S5中采用堆叠沙漏网络进行关键点预测;关键点预测过程中,选用头部、背鳍一、背鳍二、胸鳍、臀鳍和尾鳍作为鱼体的关键点;其中背鳍一为背鳍的前端,背鳍二为背鳍的后端;堆叠沙漏网络结构为三个堆叠的三阶沙漏结构;每个沙漏结构为一个阶段,在每个阶段的末尾输出关键点热图,所述沙漏结构的跳线部分通过按通道衔接;训练堆叠沙漏网络时在每个阶段的末尾输出应用中继监督,第一阶段的权重为0.1,第二阶段的权重为0.33,第三阶段的权重为1.0。
8.根据权利要求1所述基于关键点检测和深度卷积神经网络的鱼体姿态与长度自动分析方法,其特征在于,所述步骤S7具体包括如下步骤:
S7.1、取P1(xw1,yw1,zw1)、P2(xw2,yw2,zw2)、P3(xw3,yw3,zw3)、P4(xw4,yw4,zw4);P1为关键点头部在三维世界坐标系下的坐标,P2为关键点背鳍一与胸鳍的中点在三维世界坐标系下的坐标,P3为关键点背鳍二与臀鳍的中点在三维世界坐标系下的坐标,P4为关键点尾鳍在三维世界坐标系下的坐标;先用P1、P2、P3和P4拟合得到空间平面S:
Axw+Byw+Czw+1=0
上式为空间平面S的表达式;关键点P在三维世界坐标系下的坐标为P(xw,yw,zw);A、B和C均为参数;
S7.2、通过最小二乘法,用P1、P2、P3、P4的空间坐标拟合得到参数A、B、C:
Θw=(Xw TXw)-1Xw TYw
A=Θw2/Θw1
B=-1/Θw1
C=Θw3/Θw1
上式中,P1、P2、P3、P4的空间坐标为P1(xw1,yw1,zw1)、P2(xw2,yw2,zw2)、P3(xw3,yw3,zw3)、P4(xw4,yw4,zw4),Θw为计算A、B、C用到的中间变量向量;
S7.3、再将P1、P2、P3、P4投影到空间平面S上得到P1′(x1,y1)、P2′(x2,y2)、P3′(x3,y3)、P4′(x4,y4),以作为x轴,得到P1′、P2′、P3′、P4′在S上的二维坐标;定义二阶曲线Γ:
a+bx+cx2=y
上式中,a、b、c均为参数;
S7.4、用P1′、P2′、P3′、P4′的二维坐标拟合得到参数a、b、c:
S7.5、通过Γ计算鱼体长度:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010708291.5A CN111862048B (zh) | 2020-07-22 | 2020-07-22 | 基于关键点检测和深度卷积神经网络的鱼体姿态与长度自动分析方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010708291.5A CN111862048B (zh) | 2020-07-22 | 2020-07-22 | 基于关键点检测和深度卷积神经网络的鱼体姿态与长度自动分析方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111862048A true CN111862048A (zh) | 2020-10-30 |
CN111862048B CN111862048B (zh) | 2021-01-29 |
Family
ID=73001910
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010708291.5A Active CN111862048B (zh) | 2020-07-22 | 2020-07-22 | 基于关键点检测和深度卷积神经网络的鱼体姿态与长度自动分析方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111862048B (zh) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112669348A (zh) * | 2020-12-18 | 2021-04-16 | 浙江大学 | 一种鱼体姿势估计和鱼体表型数据测量方法及装置 |
CN112800929A (zh) * | 2021-01-25 | 2021-05-14 | 安徽农业大学 | 一种基于深度学习的竹笋数量与高生长率的在线监测方法 |
CN112861872A (zh) * | 2020-12-31 | 2021-05-28 | 浙大城市学院 | 一种南美白对虾表型数据测定方法、装置、计算机设备及存储介质 |
CN113476171A (zh) * | 2021-07-02 | 2021-10-08 | 浙江大学 | 鱼类疫苗自动注射机及自动获取鱼苗注射位置的方法 |
CN113591671A (zh) * | 2021-07-28 | 2021-11-02 | 常州大学 | 一种基于Mask-Rcnn识别鱼类生长检测方法 |
CN113932712A (zh) * | 2021-10-13 | 2022-01-14 | 南开大学 | 一种基于深度相机和关键点的瓜果类蔬菜尺寸测量方法 |
CN114241031A (zh) * | 2021-12-22 | 2022-03-25 | 华南农业大学 | 基于双视角融合的鱼类体尺测量和体重预测的方法及装置 |
CN114626952A (zh) * | 2022-01-28 | 2022-06-14 | 海南大学 | 一种新颖的鱼体形态学特征精准测量方法 |
CN114723965A (zh) * | 2022-06-10 | 2022-07-08 | 武汉古奥基因科技有限公司 | 一种鱼类关键点表型数据测量方法 |
CN114742806A (zh) * | 2022-04-21 | 2022-07-12 | 海南大学 | 一种基于关键点坐标回归的鱼体形态学特征测量方法 |
CN114782376A (zh) * | 2022-04-24 | 2022-07-22 | 青岛森科特智能仪器有限公司 | 一种具有学习功能的鱼苗计数设备及其工作方法 |
CN114916473A (zh) * | 2022-05-23 | 2022-08-19 | 大连理工大学 | 一种用于养殖场内的俯视鱼体长度监测方法及装置 |
CN114972477A (zh) * | 2022-05-23 | 2022-08-30 | 大连理工大学 | 一种用于养殖场内的低成本鱼类生长监测方法 |
CN114998714A (zh) * | 2022-06-09 | 2022-09-02 | 电子科技大学 | 一种基于深度学习图像检测的水下节点定位装置及方法 |
CN115512215A (zh) * | 2022-09-28 | 2022-12-23 | 中国船舶集团有限公司第七一一研究所 | 水下生物监测方法、装置及存储介质 |
CN117522951A (zh) * | 2023-12-29 | 2024-02-06 | 深圳市朗诚科技股份有限公司 | 鱼类监测方法、装置、设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102353340A (zh) * | 2011-06-08 | 2012-02-15 | 天津大学 | 缸盖毛坯加工尺寸识别方法及装置 |
CN106960461A (zh) * | 2016-01-08 | 2017-07-18 | 上海杜比汝意医疗科技有限公司 | 基于可变形模型的婴儿头颅三维测量方法 |
CN108801142A (zh) * | 2018-07-27 | 2018-11-13 | 复旦大学 | 一种特大尺寸工件双移动测量机器人系统及方法 |
CN109781003A (zh) * | 2019-02-11 | 2019-05-21 | 华侨大学 | 一种结构光视觉系统的下一最佳测量位姿确定方法 |
CN110060240A (zh) * | 2019-04-09 | 2019-07-26 | 南京链和科技有限公司 | 一种基于摄像的轮胎轮廓测量方法 |
US20200184206A1 (en) * | 2018-01-25 | 2020-06-11 | X Development Llc | Fish biomass, shape, and size determination |
-
2020
- 2020-07-22 CN CN202010708291.5A patent/CN111862048B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102353340A (zh) * | 2011-06-08 | 2012-02-15 | 天津大学 | 缸盖毛坯加工尺寸识别方法及装置 |
CN106960461A (zh) * | 2016-01-08 | 2017-07-18 | 上海杜比汝意医疗科技有限公司 | 基于可变形模型的婴儿头颅三维测量方法 |
US20200184206A1 (en) * | 2018-01-25 | 2020-06-11 | X Development Llc | Fish biomass, shape, and size determination |
CN108801142A (zh) * | 2018-07-27 | 2018-11-13 | 复旦大学 | 一种特大尺寸工件双移动测量机器人系统及方法 |
CN109781003A (zh) * | 2019-02-11 | 2019-05-21 | 华侨大学 | 一种结构光视觉系统的下一最佳测量位姿确定方法 |
CN110060240A (zh) * | 2019-04-09 | 2019-07-26 | 南京链和科技有限公司 | 一种基于摄像的轮胎轮廓测量方法 |
Non-Patent Citations (1)
Title |
---|
曹江威: "基于双目立体视觉的工件三维尺寸测量技术研究", 《中国优秀硕士学位论文全文数据库信息科技辑》 * |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112669348B (zh) * | 2020-12-18 | 2023-11-28 | 浙江大学 | 一种鱼体姿势估计和鱼体表型数据测量方法及装置 |
CN112669348A (zh) * | 2020-12-18 | 2021-04-16 | 浙江大学 | 一种鱼体姿势估计和鱼体表型数据测量方法及装置 |
CN112861872A (zh) * | 2020-12-31 | 2021-05-28 | 浙大城市学院 | 一种南美白对虾表型数据测定方法、装置、计算机设备及存储介质 |
CN112800929A (zh) * | 2021-01-25 | 2021-05-14 | 安徽农业大学 | 一种基于深度学习的竹笋数量与高生长率的在线监测方法 |
CN113476171A (zh) * | 2021-07-02 | 2021-10-08 | 浙江大学 | 鱼类疫苗自动注射机及自动获取鱼苗注射位置的方法 |
CN113591671A (zh) * | 2021-07-28 | 2021-11-02 | 常州大学 | 一种基于Mask-Rcnn识别鱼类生长检测方法 |
CN113591671B (zh) * | 2021-07-28 | 2023-10-24 | 常州大学 | 一种基于Mask-Rcnn识别鱼类生长检测方法 |
CN113932712A (zh) * | 2021-10-13 | 2022-01-14 | 南开大学 | 一种基于深度相机和关键点的瓜果类蔬菜尺寸测量方法 |
CN114241031A (zh) * | 2021-12-22 | 2022-03-25 | 华南农业大学 | 基于双视角融合的鱼类体尺测量和体重预测的方法及装置 |
CN114241031B (zh) * | 2021-12-22 | 2024-05-10 | 华南农业大学 | 基于双视角融合的鱼类体尺测量和体重预测的方法及装置 |
CN114626952A (zh) * | 2022-01-28 | 2022-06-14 | 海南大学 | 一种新颖的鱼体形态学特征精准测量方法 |
CN114742806A (zh) * | 2022-04-21 | 2022-07-12 | 海南大学 | 一种基于关键点坐标回归的鱼体形态学特征测量方法 |
CN114782376A (zh) * | 2022-04-24 | 2022-07-22 | 青岛森科特智能仪器有限公司 | 一种具有学习功能的鱼苗计数设备及其工作方法 |
CN114972477A (zh) * | 2022-05-23 | 2022-08-30 | 大连理工大学 | 一种用于养殖场内的低成本鱼类生长监测方法 |
CN114916473A (zh) * | 2022-05-23 | 2022-08-19 | 大连理工大学 | 一种用于养殖场内的俯视鱼体长度监测方法及装置 |
CN114972477B (zh) * | 2022-05-23 | 2024-06-11 | 大连理工大学 | 一种用于养殖场内的低成本鱼类生长监测方法 |
CN114998714A (zh) * | 2022-06-09 | 2022-09-02 | 电子科技大学 | 一种基于深度学习图像检测的水下节点定位装置及方法 |
CN114998714B (zh) * | 2022-06-09 | 2024-05-10 | 电子科技大学 | 一种基于深度学习图像检测的水下节点定位装置及方法 |
CN114723965B (zh) * | 2022-06-10 | 2022-09-09 | 武汉古奥基因科技有限公司 | 一种鱼类关键点表型数据测量方法 |
CN114723965A (zh) * | 2022-06-10 | 2022-07-08 | 武汉古奥基因科技有限公司 | 一种鱼类关键点表型数据测量方法 |
CN115512215A (zh) * | 2022-09-28 | 2022-12-23 | 中国船舶集团有限公司第七一一研究所 | 水下生物监测方法、装置及存储介质 |
CN115512215B (zh) * | 2022-09-28 | 2024-09-10 | 中国船舶集团有限公司第七一一研究所 | 水下生物监测方法、装置及存储介质 |
CN117522951A (zh) * | 2023-12-29 | 2024-02-06 | 深圳市朗诚科技股份有限公司 | 鱼类监测方法、装置、设备及存储介质 |
CN117522951B (zh) * | 2023-12-29 | 2024-04-09 | 深圳市朗诚科技股份有限公司 | 鱼类监测方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111862048B (zh) | 2021-01-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111862048B (zh) | 基于关键点检测和深度卷积神经网络的鱼体姿态与长度自动分析方法 | |
Shi et al. | An automatic method of fish length estimation using underwater stereo system based on LabVIEW | |
Costa et al. | Extracting fish size using dual underwater cameras | |
Hao et al. | The measurement of fish size by machine vision-a review | |
Wang et al. | Real-time underwater onboard vision sensing system for robotic gripping | |
Shortis | Camera calibration techniques for accurate measurement underwater | |
WO2019232247A1 (en) | Biomass estimation in an aquaculture environment | |
US20110196661A1 (en) | Remote Contactless Stereoscopic Mass Estimation System | |
CN114241031B (zh) | 基于双视角融合的鱼类体尺测量和体重预测的方法及装置 | |
CN113850865A (zh) | 一种基于双目视觉的人体姿态定位方法、系统和存储介质 | |
CN115512215B (zh) | 水下生物监测方法、装置及存储介质 | |
JP7074185B2 (ja) | 特徴推定装置および特徴推定方法、プログラム | |
CN115908268A (zh) | 一种水下鱼体生物量实时测量方法及装置 | |
CN112861872A (zh) | 一种南美白对虾表型数据测定方法、装置、计算机设备及存储介质 | |
CN109559342B (zh) | 动物体长的测量方法和装置 | |
CN112261399A (zh) | 胶囊内窥镜图像三维重建方法、电子设备及可读存储介质 | |
JP2022019593A (ja) | 水中3次元復元装置および水中3次元復元方法 | |
Pérez et al. | Automatic measurement of fish size using stereo vision | |
CN115100688A (zh) | 一种基于深度学习的鱼类资源快速识别方法和系统 | |
CN107976148B (zh) | 一种深海生物测量装置及其生物特征的测量方法 | |
Liu et al. | Estimation of weight and body measurement model for pigs based on back point cloud data | |
CN115690546B (zh) | 虾长测量方法、装置、电子设备及存储介质 | |
US20220068018A1 (en) | Method for 3d reconstruction of an object | |
Ward et al. | A model-based approach to recovering the structure of a plant from images | |
CN113628182B (zh) | 鱼类重量自动估计方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |