APP下载

基于计算机视觉的3种金枪鱼属鱼类形态指标自动测量研究

2021-12-13欧利国王冰妍刘必林陈新军陈勇吴峰刘攀

海洋学报 2021年11期
关键词:金枪鱼轮廓鱼类

欧利国,王冰妍,刘必林,3,4,5,6*,陈新军,3,4,5,6,陈勇,吴峰,刘攀

( 1. 上海海洋大学 海洋科学学院,上海 201306;2. 上海海洋大学 信息学院,上海 201306;3. 大洋渔业资源可持续开发教育部重点实验室,上海 201306;4. 国家远洋渔业工程技术研究中心,上海 201306;5. 农业农村部大洋渔业开发重点实验室,上海 201306;6. 农业农村部大洋渔业资源环境科学观测实验站,上海 201306)

1 引言

计算机视觉是让计算机能够像人一样,通过视觉去认识和了解世界,并具有获取和处理信息的能力[1]。近年来,随着人工智能的迅速发展,其计算机视觉技术在鱼类生物学研究中也得到了广泛应用,例如测量性状指标[2-3]、计算鱼类数[4]、鱼种分类[5]、种类识别[6]、疾病检测[7]等。测量性状指标主要有测量鱼类形态指标[2]和测量鱼体重量指标[3]等。其中,形态指标[8]作为鱼类生物学研究的基础数据,其数据的测量效果直接影响到其他相关研究应用。计算机视觉技术对测量鱼类形态指标具有自动化和批量化的处理能力,可以降低人工测量误差以及使测量的数据具有客观性和可重复性[9-10]。目前,计算机视觉技术对二维鱼类图像的形态指标自动测量主要分为线性测量和非线性测量。线性测量[10-11]是当测量鱼体部位较为笔直时,鱼类长度可通过鱼体像素长度和参考比例之间的关系进行计算,从而进行形态指标的自动测量。而非线性测量[12-13]是当测量鱼类部位是弯曲的时,通过鱼体弯曲部位的长度进行选取其对应宽度的中点,并对若干个中点进行连线计算其长度。

金枪鱼属(Thunnus)隶属硬骨鱼纲(Osteichthyes)、鲈形目(Pereiformes)、鲭科(Scombridae),是我国远洋渔业重要的捕捞作业对象[14],具有很高的经济价值和食用价值[15]。由于传统金枪鱼形态指标测量存在一定的不足和缺陷,需要在船上实地测量,消耗大量人力以及具有人为主观性和不可重复性等因素[16]。因此,为提高金枪鱼类形态指标数据获取质量和效率,近年来,利用计算机视觉技术进行自动化测量。Hsieh等[10]通过计算机视觉技术,利用线性测量等对金枪鱼类图像进行自动测量,其方法能准确测量金枪鱼类叉长指标。Muñoz-Benavent等[17]利用立体视觉系统对蓝鳍金枪鱼(Thunnus thynnus)进行自动测量,通过预先选定5个轮廓点,进行精确测量叉长长度等。但针对金枪鱼形态指标的自动测量研究在国内鲜有报道,因此,为促进和丰富金枪鱼类生物学自动化研究,本研究利用大眼金枪鱼(Thunnus obesus)、黄鳍金枪鱼(Thunnus albacores)、长鳍金枪鱼(Thunnus alalunga)的3种金枪鱼图像,通过计算机视觉技术对图像进行预处理,提取金枪鱼类形态轮廓,对形态轮廓的特征点进行预先选定,然后通过选定的特征点,对每张鱼类图像进行自动定位预先选定的特征点,自动生成形态指标像素长度,通过叉长的实际长度与像素长度的关系进行计算,从而得到其他形态指标的实际数据,并分析3种金枪鱼属鱼类自动测量和人工测量形态指标的绝对误差和相对误差。研究可对金枪鱼属鱼类形态指标进行自动化测量,快速获得多个形态指标,具有高效、客观和可重复等优势。以期为金枪鱼类智能识别和电子观察员研究提供前期基础,也为其他鱼类自动测量研究提供基础参考。

2 材料与方法

2.1 材料

本研究以8尾大眼金枪鱼、9尾黄鳍金枪鱼、7尾长鳍金枪鱼共24尾金枪鱼属鱼类作为研究对象,采集24尾金枪鱼属鱼类二维图像,对图像进行处理并保存图像为JPEG文件格式。

2.2 自动测量处理

金枪鱼类形态指标自动测量过程主要包括:图像预处理、特征点定位、测量形态指标和数据输出(图1)。

图1 金枪鱼类形态指标自动测量流程Fig. 1 Flowchart of the automatic measurement for tuna morphological indexes

2.2.1 图像预处理

通过计算机视觉库OpenCV 对3种金枪鱼图像进行预处理,利用双边滤波(Bilateral Filter, BF)对图像进行去噪处理,使其金枪鱼形态的边缘信息在处理后保持清晰和平滑,其算法公式[18]为

式中,i为待求的像素;N表示图像I中以像素i为中心的方形邻域;j表示邻域中的任一像素;ω为归一化函数;Gσd是一个用来减弱远距离像素影响的空间邻近度函数;Gσr是一个用来减少对像素点i灰度差异太大的像素点j的影响的灰度相似度函数。然后进行灰度变换,使每一个像素值均为单通道颜色的灰度值(Gray),其算法公式[19]为

式中,R(i,j)、G(i,j)、B(i,j)分别是读取RGB的3个通道的分量值。对灰度变换后的图像进行图像二值化处理[20],使图像的像素点的值为0或255的黑白图像。最后利用计算机视觉库OpenCV的findContours函数和drawContours函数对二值化图像的鱼类边缘进行轮廓提取[21],得到鱼类形态轮廓图像。

2.2.2 特征点定位

特征点的选取参考相关金枪鱼类研究[22-23],通过参考研究里的形态指标与3种金枪鱼形态轮廓进行对比选取形态指标。沿着形态轮廓对选取出来的形态指标所处形态轮廓位置进行预先选定特征点,共选定17个特征点,并对每个特征点进行生物学定义和算法选取定位描述(表1)。以图像的最左上方作为坐标轴原点,分别在X轴和Y轴方向进行遍历,遍历轮廓图像上所有的像素点,直到跟踪到预先选定的轮廓特征点,并自动定位出预先选定的轮廓特征点(图2)。本研究特征点定位算法主要有两个步骤:步骤一,根据轮廓图像的上下左右方位按行或按列遍历整张图像,并跟踪到轮廓图像方位特征点;步骤二,计算两个方位特征点间的局部轮廓上所有的点到两个方位特征点连线的距离,并判断局部轮廓上的点到连线是否为最大距离(式(3))[24],若是最大距离即为特征点。

图2 特征点位置和遍历方向Fig. 2 Feature point location and ergodic direction

表1 特征点定义和定位Table 1 Definition and location of feature points

式中,(x,y)为局部轮廓的最远点;z为最大距离;A、B为两方位特征点所在连线的系数,C为常数。

2.2.3 测量形态指标和数据输出

通过特征点位置,自动测量出13个形态指标像素长度(图3),分别为全长、叉长、体长、体高、尾鳍宽、第二背鳍长、第二背鳍基底长、臀鳍长、臀鳍基底长、尾柄高、头一鳍长、头二鳍长、头臀鳍长,形态指标值其单位为像素。设置已知13个形态指标值中的任意1个实际值,可立即得出其他12个实际值,并可计算出3种金枪鱼属鱼类的各个形态指标均值。本研究以叉长的实际长度与像素长度的关系计算出其他12个形态指标的实际长度,公式为

图3 金枪鱼类形态指标Fig. 3 Morphological indexes of tunas

式中,a为叉长像素长度;b为叉长实际长度;x为所求形态指标像素长度;y为所求形态指标实际长度。

2.3 误差分析

通过对计算机视觉技术的自动测量和利用ImageJ图像处理软件的人工测量,分别得出的12个形态指标进行分析,然后分别计算3种金枪鱼属鱼类的绝对误差值和相对误差值(其绝对误差值为自动测量值与人工测量值之差的绝对值,相对误差值为绝对误差值除以人工测量值的百分比)[25]。同时计算绝对误差范围和相对误差值范围,并分别作3种金枪鱼属鱼类形态指标的绝对误差均值图和相对误差均值图。

以上所有数据的分析处理由Python 3.6.6、ImageJ图像处理软件和Excel 2016软件完成。

3 结果

3.1 金枪鱼属鱼类图像预处理分析

通过计算机视觉技术对3种金枪鱼属鱼类形态进行图像预处理分析,结果显示,通过双边滤波处理,不仅平滑鱼类形态彩色图像,而且保持鱼类形态边缘,再对得到的双边滤波图进行灰度变换和图像二值化处理后,得到鱼类形态与背景分割的黑白图,其鱼类形态清晰显著。黑白二值化图中的金枪鱼属鱼类通过计算机视觉处理,快速检测出鱼类形态轮廓特征边缘(图4)。

图4 3种金枪鱼属鱼类图像预处理Fig. 4 Image preprocessing of three Thunnus species1. 大眼金枪鱼;2. 黄鳍金枪鱼;3. 长鳍金枪鱼;a. 灰度图像;b. 二值化图像;c. 轮廓图像1. Thunnus obesus; 2. Thunnus albacores; 3. Thunnus alalunga; a. gray image; b. binary image; c. contour image

3.2 预选特征点自动定位

通过对3种金枪鱼属鱼类预选特征点自动定位分析,结果显示,利用预先选定的特征点,对每张金枪鱼类轮廓图像特征点进行自动定位,遍历图像所有像素点,跟踪到预先选定的特征点,每张图像均能正确定位出17个特征点(图5),且在每张金枪鱼类的特征点处自动标记十字,以此来判断预选特征点的自动定位处理结果的准确性。

图5 特征点自动定位Fig. 5 Automatic locating of feature points1. 大眼金枪鱼;2. 黄鳍金枪鱼;3. 长鳍金枪鱼1. Thunnus obesus; 2. Thunnus albacores; 3. Thunnus alalunga

3.3 形态指标的自动测量

通过3种金枪鱼属鱼类形态指标的自动测量分析,结果显示,对金枪鱼类特征点的自动和准确定位,在金枪鱼属鱼类形态轮廓图像中能很好地自动测量出每个形态指标,并自动生成13个形态指标(图6)和其对应图像上形态指标的像素值长度,通过其3种金枪鱼属鱼类叉长实际长度,快速得到其余12个形态指标实际长度,计算其均值(表2)。

表2 形态指标均值Table 2 Mean of morphological index

图6 形态指标的自动测量Fig. 6 Automatic measurement of morphological indicators1. 大眼金枪鱼;2. 黄鳍金枪鱼;3. 长鳍金枪鱼1. Thunnus obesus; 2. Thunnus albacores; 3. Thunnus alalunga

3.4 金枪鱼属鱼类的绝对误差分析

通过3种金枪鱼属鱼类形态指标的自动测量值和人工测量值计算出其绝对误差并进行分析,结果显示,大眼金枪鱼12个形态指标的绝对误差范围为0~1.46 cm,其尾柄高的绝对误差范围最小,头臀鳍长的绝对误差范围最大;黄鳍金枪鱼12个形态指标的绝对误差范围为0~1.73 cm,其臀鳍基底长的绝对误差范围最小,体长的绝对误差范围最大;长鳍金枪鱼12个形态指标的绝对误差范围为0~1.32 cm,其尾柄高的绝对误差范围最小,全长的绝对误差范围最大(表3)。通过3种金枪鱼属鱼类的12个形态指标的绝对误差均值图分析,可以看出每个形态指标的绝对误差效果,其中3种金枪鱼属鱼类尾柄高的绝对误差均较小(图7)。

表3 3种金枪鱼属的绝对误差范围Table 3 Absolute error range of three Thunnus species

图7 形态指标的绝对误差均值Fig. 7 Absolute error mean of morphological index1. 全长;2. 体长;3. 体高;4. 尾鳍宽;5. 第二背鳍长;6. 第二背鳍基底长;7. 臀鳍长;8. 臀鳍基底长;9. 尾柄高;10. 头一鳍长;11. 头二鳍长;12. 头臀鳍长1: Total length, 2: standard length; 3. body height; 4. caudal fin width;5. second dorsal fin length; 6. second dorsal fin base length; 7. andl fin length; 8. andl fin base length; 9. caudal peduncle height; 10. distance of the first dorsal fin; 11. distance of the second dorsal fin; 12. distance of anal fin

3.5 金枪鱼属鱼类的相对误差分析

通过3种金枪鱼属鱼类形态指标的自动测量值和人工测量值计算出其相对误差并进行分析,结果显示,大眼金枪鱼12个形态指标的相对误差范围为0.01%~5.84%,其全长的相对误差范围最小,臀鳍基底长的相对误差范围最大;黄鳍金枪鱼12个形态指标的相对误差范围为0%~6.17%,其尾鳍宽的相对误差范围最小,尾柄高的相对误差范围最大;长鳍金枪鱼12个形态指标的相对误差范围为0%~6.89%,其头二鳍长的相对误差范围最小,臀鳍基底长的相对误差范围最大(表4)。通过分析3种金枪鱼属鱼类的12个形态指标的相对误差均值图,可以看出3种金枪鱼属鱼类的形态指标是波动变化且变化趋势较为相似(图8)。

图8 形态指标的相对误差均值Fig. 8 Relative error mean of morphological index1. 全长;2. 体长;3. 体高;4. 尾鳍宽;5. 第二背鳍长;6. 第二背鳍基底长;7. 臀鳍长;8. 臀鳍基底长;9. 尾柄高;10. 头一鳍长;11. 头二鳍长;12. 头臀鳍长1: Total length, 2: standard length; 3. body height; 4. caudal fin width; 5.second dorsal fin length; 6. second dorsal fin base length; 7. andl fin length; 8. andl fin base length; 9. caudal peduncle height; 10. distance of the first dorsal fin; 11. distance of the second dorsal fin; 12. distance of anal fin

表4 3种金枪鱼属的相对误差范围Table 4 Relative error range of three Thunnus species

4 讨论

4.1 图像预处理和特征点定位对形态指标自动测量的重要性

计算机视觉的图像预处理是金枪鱼属鱼类形态指标自动测量的重要环节[10]。因此,本研究通过计算机视觉对3种金枪鱼属鱼类的形态图像进行预处理,通过双边滤波、灰度变换、二值化处理和提取轮廓等图像处理技术对3种金枪鱼属鱼类整体形态进行保边去噪[26],提高其形态图像的视觉特性[27],并进一步将金枪鱼属鱼类的形态与背景图像进行分割[28],实现金枪鱼属鱼类形态轮廓的获取。此外,在相关类似金枪鱼自动测量研究中,也采用了图像处理技术对鱼体进行灰度图像转换、设置阈值、图像去噪分析等[10];而其他鱼类则进行灰度图像均衡化、阈值设置、图像灰度拉伸和Canny边缘检测等图像处理[9]。金枪鱼属鱼类轮廓图像是本研究形态指标自动测量中重要的组成部分,鱼类轮廓图像为后续金枪鱼属鱼类的预选特征点自动定位提供重要保障,也是形态指标自动测量的首要前提工作。

计算机视觉对金枪鱼属鱼类特征点进行自动定位,并将输出特征点与待测量形态指标之间建立相关的联系,也是确保形态指标自动测量的关键一步。本研究金枪鱼属鱼类特征点是根据形态轮廓和形态指标进行选定。3种金枪鱼是同属不同种鱼类,通过对其图像处理后得到3种金枪鱼属鱼类轮廓图像,其整体形态具有共性,鱼体轮廓均呈纺锤形[29],根据其形态的共性对特征点进行预先选定。同时,特征点选定也结合预先选定形态指标,而形态指标的选取是建立在鱼类研究相关的领域知识和鱼类专家长期总结的科学经验的基础上[22-23]。因此,选取的特征点具有科学依据。通过对金枪鱼属鱼类的特征点进行预先选定后,在处理每张图片时,让计算机自动定位在预先选定的特征点,使图像特征点处理实现可重复和准确定位。本研究对金枪鱼属鱼类形态特征点进行自动定位,共获得17个特征点。而在类似研究中,对其他鱼类形态特征点定位,共获得10个特征点[10]。

4.2 计算机视觉技术对金枪鱼属鱼类的自动测量效果

本研究通过计算机视觉技术不仅对不同种金枪鱼类的形态指标进行测量,而且能自动测量多个形态指标,自动和准确的将形态指标数据信息化。通过自动定位金枪鱼属鱼类的预选特征点,对金枪鱼属鱼类的形态指标进行自动测量效果较好,自动测量了金枪鱼属鱼类的全长、叉长、体长和体高等13个形态指标像素长度,并根据叉长实际长度,得到其余12个形态指标实际长度。在国外相关金枪鱼形态指标自动测量研究中[10,17],有些也实现了对金枪鱼叉长长度的自动测量,但本研究实现了更多的形态指标的自动测量,能更好满足金枪鱼属鱼类生物学研究的实际需要[22-29]。

对本研究中的3种金枪鱼属鱼类自动测量和人工测量的形态指标数据进行绝对误差和相对误差的分析,结果显示,其自动测量效果较好。大眼金枪鱼、黄鳍金枪鱼和长鳍金枪鱼的12个形态指标的绝对误差范围分别为0~1.46 cm、0~1.73 cm和0~1.32 cm。3种金枪鱼属鱼类形态指标的绝对误差范围均较小,其自动测量和人工测量结果差异较小,表明本研究的自动测量可代替人工测量,其自动测量形态指标数据值可用于金枪鱼属鱼类生物学研究和应用。通过3种金枪鱼的12个形态指标的绝对误差均值对比分析,由于是同属不同种,其整体形态较为相似,测量的绝对误差也因其相似性,使得绝对误差曲线变化趋势较为相似,也因每种金枪鱼在整体形态上有所差异,使得不同种的形态指标在绝对误差值上有所差异。此外,大眼金枪鱼、黄鳍金枪鱼、长鳍金枪鱼的12个形态指标的相对误差范围分别为0.01%~5.84%、0%~6.17%、0%~6.89%。3种金枪鱼12个形态指标的相对误差均值也与绝对误差均值变化趋势过程较为相似。3种金枪鱼的相对误差范围均较小,在其他自动检测研究中也具有相类似的结果,在汉服上衣尺寸的相对误差为0.59%~4.17%[30],大黄鱼其全长的相对误差为0.22%~0.37%[31]。

计算机视觉技术对金枪鱼属鱼类的自动测量具有显著优势。由于是通过计算机视觉技术进行自动测量,而不是人工测量,其测量的每张金枪鱼属鱼类图像的形态指标数据值不仅在重复测量过程中保持一致性,而且其形态指标能准确再次定位在同一个位置处。因此,克服了传统金枪鱼属鱼类的形态指标测量方法的不可重复性和人为误测等情况。自动测量提高了对金枪鱼属鱼类的测量效率,也将人为主观误差尽可能降到最低[9]。此外,本研究通过计算机视觉实现对少量金枪鱼属鱼类图像自动测量,效果较好,相比其他自动测量方法需要几千张样品图像[30]才能实现自动测量而言,为金枪鱼属鱼类生物自动测量提供了更便捷、更高效和限制条件更少的方法。同时,相对其他少量样品的研究[31],本研究不仅测量更多的形态指标,而且还对同属不同种金枪鱼进行自动测量。自动测量金枪鱼属鱼类形态指标有利于推进金枪鱼属鱼类现代生物学自动化研究发展[2-3]。

5 总结

本研究通过计算机视觉的图像处理技术提取3种金枪鱼属鱼类形态轮廓,并在轮廓图像上自动定位出预先选定的特征点,生成形态指标,自动测量出形态指标像素长度和计算出其实际长度。该自动测量方法对同属不同种金枪鱼形态指标测量效果较好,并得到多个形态指标数据信息。实验结果表明,大眼金枪鱼、黄鳍金枪鱼和长鳍金枪鱼的12个形态指标的绝对误差范围分别为0~1.46 cm、0~1.73 cm、0~1.32 cm,其相对误差范围分别为0.01%~5.84%、0%~6.17%、0%~6.89%。自动测量的形态指标能满足金枪鱼属鱼类生物学研究应用。该方法不仅实现同属不同种金枪鱼类多个形态指标的自动和准确测量,而且测量过程具有可重复性和很好的客观性,为金枪鱼属鱼类现代生物学自动化研究提供新思路。由于同属鱼类一般整体形态具有共性,因此,该方法也为其他同属鱼类自动测量提供基础参考。本研究的金枪鱼类图像来源于远洋渔业捕捞作业的渔获物,在其捕捞过程中,鱼鳍部位可能受到影响,作业时间可能也会影响图像采集质量,从而影响自动测量结果。这也是课题研究计划下一步需要解决的问题。

猜你喜欢

金枪鱼轮廓鱼类
金枪鱼淹死事件
可以加速的金枪鱼机器人
金枪鱼与海豚
鱼类运动会
跟踪导练(三)
国内新型远洋金枪鱼围网渔船首航
奇妙的古代动物 泥盆纪的鱼类
儿童筒笔画
创造早秋新轮廓