1、基于目标深度分析的鱼体生长在线测量系统研究燕 斌1,2李 晶1叶 艳1(1江苏农牧科技职业学院,江苏泰州 225300;2江苏省农业物联网工程中心,江苏泰州 225300)摘要针对我国水产养殖中无法实时在线无接触地自动估测鱼体重量的难题,利用水下摄像头获取鱼体的双目图像,对水下图像进行优化,通过 YOLACT 实例图像分割模型对图像进行实时分割,通过自定义约束条件筛选的确信特征点完成左右图像匹配,最后计算出鱼体所处深度,从而复原鱼体实际大小。对鱼体在水下不同深度进行了测量准确性测试。结果表明,在水深 70 cm 处存在测量最优值,长度和宽度误差分别为 6.50%和5.75%。本研究为实现水产养
2、殖中的个体实时无接触生长监测,从而形成闭环的物联网化生产模型提供了一种可行方案。关键词水产养殖;鱼体监测;立体视觉;估测中图分类号S951.2文献标识码A文章编号 1007-5739(2023)21-0133-05DOI:10.3969/j.issn.1007-5739.2023.21.033开放科学(资源服务)标识码(OSID):Online Measurement System of Fish Growth Based on Target Depth AnalysisYAN Bin1,2LI Jing1YE Yan1(1Jiangsu Agri-animal Husbandry Veter
3、inary College,Taizhou Jiangsu 2253002Jiangsu Agricultural Internet of Things Engineering Center,Taizhou Jiangsu 225300)AbstractAiming at the problem that it is impossible to automatically estimate the weight of fish in real-time,online and contactless in China aquaculture,we used the underwater came
4、ra to obtain the binocular image of the fishbody and optimized the underwater image.Then,we segmented the image in real-time through YOLACT instance imagesegmentation model,completed the left and right image matching by the confident feature points filtered by user-defined constraints,calculated the
5、 depth of the fish,and restored the actual size of the fish.Measurement accuracy testswere conducted on the fish body at different depths underwater.The results showed that there was an optimalmeasurement value at a depth of 70 cm,and the length and width errors were 6.50%and 5.75%,respectively.This
6、 studyprovides a feasible scheme to realize real-time contactless growth monitoring of individuals in aquaculture and form aclosed-loop internet of things production model.Keywordsaquaculture;fish body monitoring;stereovision;estimation随着我国智慧养殖的兴起,水产养殖中逐步引入了物联网环控系统,但物联网环控系统在智慧养殖中仍属于开环系统,养殖模型的最终确立需要养
7、殖效果的闭环反馈。鱼体外形尺寸是反映养殖效果的重要指标,不仅反映了鱼体生长情况1,还是水产品质量分集的一项重要指标2,可为物联网系统动态调整养殖环境提供直接参考。在线、便捷、准确的鱼体尺寸测量是真正实现智慧养殖的关键环节之一。目前,为了掌握渔业养殖中鱼类的实际生长情况,仍使用传统的撒网捕捞、手工测量的方式,这些方式费工费时,还会影响鱼的正常生长3。机器视觉在使用方便度、测量准确性及模型泛化能力上具有优势,已经大量应用于农业种养殖领域4-5。传统的机器视觉基于阈值、区域及边缘等特征进行图像的分割,但由于水体背景复杂、浑浊,经典图基 金 项 目江 苏 省 高 等 学 校 自 然 科 学 研 究 面
8、 上 项 目(20KJB630011);泰州市科技计划项目“基于深度学习的农作物病虫害在线诊疗系统”(TS201821)。第一作者燕斌(1980),男,硕士,讲师,从事农业信息化技术研究工作。E-mail:收稿日期 2023-02-07现代农业科技2023 年第 21 期农业工程学133现代农业科技2023 年第 21 期农业工程学像分割算法在水下物体的识别中效果并不理想6。基于深度学习的实例图像分割模型 YOLACT 提供了首个实时实例分割算法,相较于经典的 Mask R-CNN 两阶段实例分割模型7,YOLACT 在现有的一阶段(one-stage)目标检测模型里添加掩模分支,运行速度大大
9、提升8。本研究基于水下双目成像与 YOLACT 实例分割模型以及确信特征点的筛选,通过对原始图片进行去雾、增强对比度等预处理,再由 YOLACT 模型进行鱼体掩模计算,最后根据掩模图像中左右图确信特征点匹配,计算鱼体深度,还原鱼体的实际尺寸,实现了在水下对不同鱼体尺寸快速、无损、连续测量。1系统搭建本研究使用带有辅助光源的专业水下双目摄像机,成像分辨率 1280960(30 FPS),基线长度 60 mm。通过前端嵌入式采集设备将图片通过网络传输给远程服务器,服务器使用 Nvidia GTX1080 显卡进行深度学习图像分割,编程语言为 Python,相关库包括Opencv 及 Tensorf
10、low。水下鱼体测量系统如图 1 所示。2研究方法与框架为了获取图像的深度数据,常用的方式有双目成像、结构光成像和光飞行时间(TOF)成像。由于水流密度不均匀及环境光的干扰,基于结构光以及 TOF 的深度计算在水下效果不佳,甚至无法完成。本研究选用双目成像作为鱼体深度信息计算的手段。2.1深度计算双目立体视觉基于视差原理利用成像设备从不同位置获取被测物体的两幅图像,通过计算图像对应点间的位置偏差 Disparity 来获取物体的三维几何信息及深度信息。由于双目相机在生产过程中有机械误差,需要先对双目相机在应用场景进行相机内外参数的标定9。内外参数矩阵分别为左右相机内参矩阵M、畸变系数矩阵 D、
11、平移向量 T 和旋转矩阵 R,则世界坐标系中的点的信息转变为图像坐标系中的点可归纳如下10:xy1=M D RT0T1XYZ1(1)其中,(X,Y,Z)为点在世界坐标系下的坐标,(x,y,1)为该点在图像坐标系中投影的齐次坐标,为比例因子。标定完成后,使用内外参矩阵对获取的图片进行立体校正,可得到校正后的双目相机模型:模型中某点的深度 z 可通过公式(2)计算得出:z=ftd=ftul-ur(2)式(2)中:d=ul-ur,为物点在左右成像平面上的像点坐标横坐标差值,又称视差;t 为双目相机基线长度;f 为立体校正后的焦距长度。2.2鱼体识别与分割图片中深度信息只有鱼体部分有意义,而其他部分可
12、舍去,节省计算开销。同时,鱼体尺寸测量也需要精确的分割信息,将鱼体和背景区分开来。因此,良好的图像分割效果对本研究至关重要。本研究选用 YOLACT 实例图像分割模型,其最大的特点是在运行速度和计算精度上取得了平衡,可以实现边缘端的本地处理,方便实现离线本地计算一体化。2.2.1图像预处理在实际鱼塘养殖中,水体透明度低、悬浮粒多,在辅助光源照射下呈现一种雾化结果,极大地影响了图像分割在边缘处的精度,故需要对图像进行去雾预处理。本研究选用 He 等11的暗通道先验去雾算法,去雾公式如下:J(x)=I(x)-Amax t(x),t0+A(3)式(3)中,J(x)为去雾后的图像,I(x)是待去雾的图
13、像,t(x)透射率图,t0为防止图像整体向白场过度的阈值(本研究取 0.1),A 为大气光成分(可借助暗通道图从有雾图像中获取)。USB 线辅助光源双目摄像头辅助光源前端采集嵌入式设备网络传输图 1水下鱼体测量系统PPleftPrightftOrightOleftZ(ul,vl)(ur,vr)134鱼塘水下环境昏暗,即使在辅助光源照射下,可见距离一般也不超过 1 m。增大光源功率可增加可见距离,但近距离下会造成图像曝光过度,影响图像分割效果。因此,本研究在图像预处理第二部中使用图像直方图均衡化来增强对比度,将原始图像的直方图变换为均匀分布的形式,增加了像素灰度值的动态范围,从而达到增强图像整体
14、对比度的效果(图 2)。2.2.2图像分割基于深度学习的实例图像分割可以克服实际养殖中水质的影响,具有较强的鲁棒性,在各种环境光ab注:a 为预处理前,b 为预处理后。图 2图像预处理结果对比下均可有效地检测目标并进行较好的图像分割。本系统使用 YOLACT 实例图像分割模型计算鱼体掩模,以获得速度和精度的平衡。共使用 1 000 张手工标注图像制作数据集,其中 800 张为训练集,200 张为验证集,通过标注工具 Labelme 制作 COCO 风格的目标检测 JSON 注释文件,程序实现使用 Python 语言。与成像平面夹角过大,鱼体被遮挡,图片边缘不完整鱼体不计入标注范围(图 3)。a
15、b注:a 为摄像头原图;b 为图像分割结果。图 3YOLACT 图像分割模型分割结果2.3鱼体尺寸获取通过图像分割算法可得到鱼体的掩模图像,通过等高线计算出鱼体轮廓,再通过计算包含鱼体轮廓的最小矩形,得出鱼体长高尺寸的像素值。结合鱼体的深度信息,可计算出鱼体的实际大小。双目深度计算通过左右图像中相同点的视差来获取图片中该点的深度信息。但是,在实际水下应用中,由于环境昏暗、浑浊度高、鱼群密度等干扰因素的存在,特征点的匹配是本研究的难点。同时,鱼体高度相似以及鱼体表面图像的高度重复性也会导致在相同或不同个体之间相似特征点的误匹配12。因此,本研究中的目标深度分析将基于特定筛选后的确信特征点。通过
16、ORB 特征点计算,并通过半全局块匹配(SGBM)算法得到左右图成对特征点 Pleft(xpl,ypl),Pright(xpr,ypr),左右图掩模集合分别为 M=mii=1n,N=nii=1n,其中 mi、ni分别为左、右图片中第 i 个掩模的区域,即区域内部所有像素点的集合。确信特征点对 Pl、Pr应同时满足下列 3 个条件:Pleft miANDPright nift/zmax|xpl-xpr ft/zmin|ypl-ypr c(4)式(4)中,zmax、zmin分别为应用环境下的最大及最小可视深度,c 为左右摄像头 y 轴位移误差,可由摄像燕 斌等:基于目标深度分析的鱼体生长在线测量系
17、统研究135现代农业科技2023 年第 21 期农业工程学头外参矩阵获得。由图 4 可以看出,左右图中并非所有特征点都会被记为确信特征点,只有满足上述 3 条件的特征点会被保留下来,用来计算视距差,本研究使用所有确信特征点的平均视差反映鱼体的深度信息。利用校正过程中得到的相机 Q 矩阵(透视变换矩阵)即可计算图像中鱼体最小矩形顶点在世界坐标系中的三维坐标13,计算公式如下:X,Y,Z,WT=Qx,y,disparity(x,y),1T3dImage(x,y)=(X/W,Y/W,Z/W)(5)其中:Q=100-cx010-cy000f00-1Txcx-cxTx,Q xyd1=x-cxy-cyf-
18、d+cx-cxTx=XYZW(6)ZW=Txf-d-(cx-cx)(7)ab图 4特定筛选后的确信特征匹配式(6)(7)中,cx、cy为左相机主点在图像中的坐标,f 为焦距,Tx为左右相机投影中心间的平移(负值),cx是右相机主点在图像中的坐标。综上所述,基于深度分析的鱼体在线尺寸测量系统研究流程可用图 5 表示。3结果与分析本研究根据双目成像及人工神经元网络 YOLAC图像分割模型,使用前述实现流程,通过选择确信特征点以及掩模最小矩形框的大小来计算鱼体长度和宽度信息,并与鱼体的实际尺寸进行对比,验证本研究的测量精度。本研究中鱼体长度和宽度的测量相对误差随测量深度的变化如图 6 所示,在测量深
19、度为 70 cm 处存在最优值,分别为 6.50%和 5.75%。原因在于鱼体离镜头越近,鱼体弯曲与成像平面的夹角影响就越大,双目相机标定立体矫正图像去雾对比度增强双目图像图像预处理图像分割特征点获取特征点匹配特征点对获取特征点筛选鱼体深度三维复原三维复原鱼体尺寸图 5本研究的整体框架注:a、b 分别为鱼体长度、宽度。图 6鱼体长度和宽度随测量深度变化的相对误差25-5-15-25-3515530501107090测量深度/cm长度相对误差/%25-5-15-25-35155宽度相对误差/%30501107090测量深度/cmab136燕 斌等:基于目标深度分析的鱼体生长在线测量系统研究误差增
20、大;鱼体离镜头越远,由于真实水体的浑浊带来的成像不清晰,图像分割结果在边缘处缺失增多,也导致误差增大。4结论本研究采用专用水下双目摄像头及辅助光源,搭建了一套能满足水产养殖实际场景需求的水下鱼体尺寸在线测量系统。通过计算机双目视觉,在不影响鱼体自由活动的情况下,实时获取鱼体深度和尺寸数据,实现在水下快速、无损测量鱼体尺寸。1)通过去雾、增强对比度等图像预处理,可以很好地抵消水产养殖实际过程中水体浑浊的影响,增加了识别深度和匹配准确率。2)通过基于深度学习的实例图像分割 YOLACT模型实现了分割速度和精度的平衡,通过 800 张训练集、200 张验证集实现了鱼体的实时分割。在置信阈值为 0.9
21、 的情况下,模型精确率为 86.8%,召回率为83.4%。模型处理图像速度达到 21.7 FPS,满足实时监测需求。3)由于养殖环境中鱼群的密度大、背景噪声大、特征点高度相似,难以实现全图的深度计算,本研究采用 3 条约束条件进行确信特征点筛选,提高了鱼体深度计算的精度,但对成像平面夹角过大的鱼体则误差较大。4)模型计算结果与鱼体实际尺寸进行比较,在最优深度下,长度测量平均误差为 6.50%,宽度测量平均误差为 5.75%,模型端到端计算速度为 6.2 FPS。本研究通过连续长时间水下无接触测量鱼群个体尺寸,可以得到鱼群整体的生长数据,为水产养殖物联网的生长情况闭环反馈提供了一种可行方案。参考
22、文献1 ANTONUCCI F,COSTA C.Precision aquaculture:a shortreview on engineering innovationsJ.Aquaculture Inter-national,2019,28(2):41-57.2 COSTA C,ANTONUCCI F,BOGLIONE C,et al.Automatedsorting for size,sex and skeletal anomalies of culturedseabass using external shape analysisJ.Aquacultural En-gineering,
23、2013,52:58-64.3 李道亮,刘畅.人工智能在水产养殖中研究应用分析与未来展望J.智慧农业,2020,2(3):1-20.4 李振波,赵远洋,杨普,等.基于机器视觉的鱼体长度测量研究综述J.农业机械学报,2021,52(增刊 1):207-218.5 李奇峰,李嘉位,马为红,等.畜禽养殖疾病诊断智能传感技术研究进展J.中国农业科学,2021,54(11):2445-2463.6 丛润民,张禹墨,张晨,等.深度学习驱动的水下图像增强与复原研究进展J.信号处理,2020,36(9):1377-1389.7 HE K M,GKIOXARI G,DOLLR P,et al.Mask R-CN
24、NC/2018IEEEtransactionsonpatternanalysisandmachine intelligence.Los Alamitos:IEEE Computer Society,2018:386-397.8 BOLYA D,ZHOU C,XIAO F Y,et al.YOLACT:real-timeinstancesegmentationC/2019IEEE/CVFinternationalconference on computer vision(ICCV).Korea:ComputerVision Foundation-CVF,2020:9156-9165.9 李光乐,
25、黄文有,刘青松,等.面向水下双目视觉的改进张氏标定方法及实验J.光学学报,2014,34(12):219-224.10 杨戈,王震尧.面向水下目标的双目视觉测距方法J.电子技术应用,2022,48(4):34-38.11 HE K M,SUN J,TANG X O.Single image haze removalusing dark channel priorC/2009 IEEE conference oncomputer vision and pattern recognition.Miami:Instituteof Electrical and Electronics Engineers(IEEE),2009:1956-1963.12 张文明,刘彬,李海滨.基于双目视觉的三维重建中特征点提取及匹配算法的研究J.光学技术,2008,34(2):181-185.13 郑太雄,黄帅,李永福,等.基于视觉的三维重建关键技术研究综述J.自动化学报,2020,46(4):631-652.137