一种新的鲟鱼计数与定位方法
未命名
07-22
阅读:162
评论:0
1.本发明涉及计数定位技术领域,更确切地说,它涉及一种新的鲟鱼计数与定位方法。
背景技术:
2.目前已有的鲟鱼养殖方式主要是集约化养殖方式,包括池塘、流水、网箱等养殖模式。在通过养殖池进行鲟鱼养殖时,对鱼池中鱼群的鲟鱼数目进行精确计数可以为于水产养殖过程中的鲟鱼数量统计过程、鲟鱼存活率评估过程以及鲟鱼养殖密度调控过程提供重要的参考信息。此外,实现自动化的鲟鱼计数方案能够降低人力成本,提高鲟鱼养殖工作人员的工作效率。
3.传统的鱼类计数方法大多为接触式的人工取样计数的方法,这样的计数方式效率低下,而且需要耗费额外人力,对鱼类也可能造成损伤。因此之后的鱼类计数方法逐渐转向基于硬件机器的无接触式计数方法。比如,通过单通道光电式鱼苗计数器或多通道鱼苗计数器,主要采用光、电、微机一体化设计原理,进行鱼苗计数。这类方法的硬件成本较高,而且受限于鱼类尺寸、管径大小等因素,并不适用于稠密的鱼群。由于双频识别声纳(didson)能够针对水下场景获取到相对理想的鱼群影像数据,因此在之后的鱼群监测与分析的研究中,声纳系统被广泛采用。但这类基于声纳的计数方法无法区分出鱼类目标,因此计数效果并不理想。作为一种非接触式的技术,深度学习和计算机视觉在近年来得到了快速的发展,此外由于计算机视觉具有高效率、高精度、低成本等优势,因此逐渐被鱼群计数领域所重视。但是需构建相应的数据集用于深度学习模型训练,所需数据标注成本较高,需要耗费额外人力。
技术实现要素:
4.本发明的目的是克服现有技术中的不足,提供了一种新的鲟鱼计数与定位方法。
5.第一方面,提供了一种新的鲟鱼计数与定位方法,包括:
6.步骤1、获取养殖池内的鲟鱼图像;
7.步骤2、对所述养殖池内的鲟鱼图像进行直方图均衡处理;
8.步骤3、对步骤2处理后的养殖池内的鲟鱼图像进行圆形检测;
9.步骤4、对步骤3处理后的养殖池内的鲟鱼图像进行二值化得到荧光标记区域;
10.步骤5、对步骤4处理后的养殖池内的鲟鱼图像进行轮廓检测得到荧光区域个数。
11.作为优选,步骤1中,所述养殖池内的鲟鱼图像为养殖场景的俯视图。
12.作为优选,步骤2中,通过直方图均衡处理提升所述养殖池内的鲟鱼图像的对比度。
13.作为优选,步骤3中,通过圆形检测排除无关背景干扰,得到养殖池内的鲟鱼图像的灰度图。
14.作为优选,步骤4中,设定灰度阈值对灰度图像进行二值化,将高于该阈值的像素
值置为255,为白色,表示荧光标记区域,低于该阈值的像素值则置为0,为黑色,表示其它无关区域。
15.作为优选,步骤5中,设定了轮廓的面积阈值,并计算了每个外轮廓所围区域的面积,面积小于阈值的轮廓认为是无效的干扰轮廓,并进行滤除。
16.第二方面,提供了一种新的鲟鱼计数与定位装置,用于执行如第一方面所述的新的鲟鱼计数与定位方法,包括:
17.获取模块,用于获取养殖池内的鲟鱼图像;
18.均衡处理模块,用于对所述养殖池内的鲟鱼图像进行直方图均衡处理;
19.圆形检测模块,用于对均衡处理后的养殖池内的鲟鱼图像进行圆形检测;
20.二值化模块,用于对圆形检测后的养殖池内的鲟鱼图像进行二值化得到荧光标记区域;
21.轮廓检测模块,用于对二值化处理后的养殖池内的鲟鱼图像进行轮廓检测得到荧光区域个数。
22.第三方面,提供了一种计算机存储介质,所述计算机存储介质内存储有计算机程序;所述计算机程序在计算机上运行时,使得计算机执行如第一方面所述的新的鲟鱼计数与定位方法。
23.本发明的有益效果是:本发明以鲟鱼为研究对象,以鲟鱼携带的荧光标记为突破点,通过直方图均衡、圆形检测及轮廓检测等图像处理算法,克服了水面反光、鱼群遮挡等实际问题,实现了自动化的养殖场景下的鲟鱼计数。本发明设计的鲟鱼计数方案仅需离水拍摄的图片作为输入,且无需构建大规模数据集进行模型训练即可实现快速高精度的鲟鱼计数。此外本发明提出的方法还能获得鲟鱼的荧光标记区域,进而实现鲟鱼定位。
附图说明
24.图1为新的鲟鱼计数与定位方法的流程图;
25.图2为对输入图像进行圆形检测的处理结果示意图;
26.图3为灰度图像进行二值化的处理结果示意图。
具体实施方式
27.下面结合实施例对本发明做进一步描述。下述实施例的说明只是用于帮助理解本发明。应当指出,对于本技术领域的普通人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
28.实施例1:
29.现有技术存在以下问题:1.传统的人工取样计数的鱼类计数方法效率低下,而且需要耗费额外的人力,甚至对鱼类也可能造成损伤;2.基于光电硬件设备的鱼群计数方法所需硬件成本较高,且受限于鱼体尺寸等因素,在鲟鱼养殖场景下难以开展;3.基于双频识别声纳的鱼群计数方法容易收到无关背景噪声的干扰,进而无法区分出鱼体目标,因此实际计数效果难以保证;4.基于深度学习的鱼群计数方法需要构建大规模数据集用于模型训练,数据获取及数据标注需要耗费额外人力,成本很高。
30.区别于以上方法,本发明提出的基于图像处理的自动化鲟鱼计数方法能够以较低
的成本实现高精度的鲟鱼计数与定位,从而为鲟鱼养殖相关工作提供可靠的参考信息。具体地,本技术提供了一种新的鲟鱼计数与定位方法,如图1所示,包括:
31.步骤1、获取养殖池内的鲟鱼图像。
32.步骤2、对所述养殖池内的鲟鱼图像进行直方图均衡处理。
33.图片采集设备是在鲟鱼养殖池上方采集养殖场景的俯视图,受限于图片采集设备的成像质量,采集到的图片有较为严重的水面反光情况,这大大影响了鱼体荧光标记区域的提取。为减轻水面反光带来的干扰,本发明通过直方图均衡算法来提升图片的对比度。直方图均衡(histogram equalization)是利用灰度图像的直方图进行图片对比度调整的一种方法。对于一张带有水面反光的图片而言,会有大量像素值都分布在某个特定范围,但是理想的图像像素值应该均匀分布在整个强度范围之中。因此,可以采用全局直方图均衡的方法,通过对图像中对比度较低的区域(如水面反光区域)的灰度值均匀映射到图片的整个范围,从而获得近似线性的像素累积分布函数,此时图片的直方图分布也会更为平坦和均匀,因此图像的对比度也会得到提高。考虑到输入图片为彩色rgb图片,对应这红、绿、蓝三种颜色通道的灰度分量,如果直接分别在三个分量上分别进行直方图均衡,会改变不同颜色通道的相对分布,这可能会对图像的色彩平衡产生显著变化,从而影响图片质量。为解决这一问题,本发明对输入彩色图像的亮度分量进行直方图均衡,从而在提升图像对比度的同时使图像的视觉效果更加稳定。
34.由于全局直方图均衡强调整个图像的对比度提升,因此局部区域如水面反光区域的对比度提升效果并不理想,部分水域出现过亮的情况,这也不利于后续荧光区域的提取。为了针对性地提升水面反光区域的对比度,本发明采用一种自适应的直方图均衡方法,通过对图像的不同区域分别计算直方图,然后通过多个直方图重新分配图像的灰度值来提高局部区域的对比度。
35.步骤3、对步骤2处理后的养殖池内的鲟鱼图像进行圆形检测。
36.在整个鲟鱼养殖场景中,鲟鱼的活动范围局限于养殖池之中,因此本发明在实现鲟鱼计数的过程中主要关注输入图片的鱼池区域的信息。为了提取出鱼池中的鲟鱼荧光标记区域,需要对无关的背景区域进行裁剪。考虑到鱼池的几何形状为圆形,因此本发明通过圆形检测获取图片中鲟鱼养殖池区域,从而排除无关背景信息的干扰。
37.为了检测到图中圆形目标(即鱼池)的所在位置,首先需要将彩色rgb图像转为灰度图像;然后通过平滑滤波过滤掉图中的异常值和噪声,这些异常值可能导致一些错误的圆形被检测到;之后通过霍夫圆变换(hough circle transform)实现圆形检测。霍夫圆变换是一种将圆从圆上每一点的坐标对应的二维图像空间转换到圆的半径和圆形坐标组成的三维参数空间的变换过程。在二维空间中,圆周上任意三个不同的点可以确定一个圆,这个圆在三维参数空间中对应一个点。进一步考虑到图像二维平面上每一个点都可能是某个圆上的一点,而平面上经过该点的所有圆对应着三维参数空间中的一个三维圆锥体,因此二维平面上所有点映射到三维参数空间会得到很多三维圆锥体,而图像平面中同一个圆上的所有点对应的圆方程是一致的,因此这些点各自映射到三维参数空间得到的三维圆锥体应该交于一点,该点对应的圆即为待检测的圆形。为了实现圆形检测,计算三维参数空间中每一点所在位置处的曲线相交累积数目,当该数目大于某一阈值时即可认为检测到一个圆形目标。
38.上述标准霍夫圆变换需要在三维参数空间进行累加计算,对应的计算复杂度很高。考虑圆上每个点处对应切线的经过该点的垂直线一定会经过圆心,而这条垂直线即为圆形边缘位置的梯度方向的延长线。因此为了降低计算复杂度,本发明在用霍夫圆变换进行圆形检测时,不再根据三维曲线的交点累加值判断圆形,而是先通过canny边缘检测得到图像中圆形目标边缘,然后计算边缘位置的梯度方向,并通过累积梯度延长线的相交个数来查找圆形目标的圆心,若某个交点位置处的相交数大于某个阈值,即可判定该位置为某个圆的圆心所在位置。其中canny边缘检测的实现思路是计算每个位置在x,y方向上的梯度得到梯度模长和方向进而得到边缘。由于之前的平滑滤波的作用,这里检测到的边缘不会收到噪声影响。
39.在直方图均衡后的图像上进行圆形检测后的可视化结果如图2所示,其中左图画出了圆形检测得到的圆在图中的所在位置,可以看到圆与鱼池的轮廓基本贴合,因此可以通过检测到的圆形将图中的无关背景区域进行裁剪,如右图所示。
40.步骤4、对步骤3处理后的养殖池内的鲟鱼图像进行二值化得到荧光标记区域。
41.在得到鱼池区域图像之后,由于每个鲟鱼目标都携带一个对应的荧光标记,因此为了实现鲟鱼计数,需要将区域内的所有荧光标记子区域进行提取。
42.考虑到荧光标记的特性,荧光区域相比于鱼体和鱼池中其它水域在视觉上更加突出,这反映到灰度图中表现为荧光区域对应灰度值会显著高于其它区域。因此,本发明基于图像二值化方法来对荧光标记区域进行分割,具体而言,首先将鱼池区域图像进行灰度化得到灰度图像;然后设定灰度阈值对灰度图像进行二值化,将高于该阈值的像素值置为255,为白色,表示荧光标记区域,低于该阈值的像素值则置为0,为黑色,表示其它无关区域。
43.图片二值化的可视化结果如图3所示,左图为灰度图像,右图为二值化之后的图像。可以看到,经过二值化方法可以成功提取鱼池区域内的荧光区域,从而实现荧光区域分割的目标。考虑到鲟鱼目标与荧光标记一一对应,得到的荧光区域分割结果也可以进一步提供鱼池区域中鲟鱼目标的位置信息。
44.步骤5、对步骤4处理后的养殖池内的鲟鱼图像进行轮廓检测得到荧光区域个数。
45.在得到荧光标记区域之后,由于鲟鱼个数与荧光区域个数一致,因此需要进一步对为荧光标记区域个数进行计数,这个计数过程可以通过轮廓检测实现。
46.首先解释轮廓的概念。某一目标的轮廓可以简单地理解为沿着目标的边界连接所有点得到的曲线,分为外轮廓与内轮廓。显然对于二值化之后的图片而言,目标轮廓上的灰度值均为255(白色)。轮廓是目标识别与形状分析的有力工具,对应到荧光区域的二值化图像上,可以通过检测图像中的有效外轮廓个数得到荧光区域个数。具体而言,首先通过从左到右从上到下扫描整个图像,跳过灰度值为0的位置,对于灰度值为255的像素点,若其连通域中有灰度值为0的情况,则为边界点,反之则不是。得到边界点后,外轮廓按逆时针连接,内轮廓按逆时针连接,因此若当前边界点的左邻接位置像素值为0,则为外边界点,若其右邻接位置像素值为0,则为内边界点,同时满足则视为外边界点,这样就可以通过逆时针连接外边界点得到外轮廓,再通过顺时针连接内边界点得到内轮廓。之后对于有效的外轮廓进行计数即可得到荧光区域个数,而每个外轮廓的中间位置即为该荧光标记对应鲟鱼的所在位置。
47.由于鲟鱼养殖池中的泡沫、浮尘等因素的干扰,上述方案中的有效轮廓个数相比于实际荧光标记个数是偏大的。为修正这一现象,本发明提出一种用于无效轮廓过滤的后处理方法,首先设定了轮廓的面积阈值,而后计算了每个外轮廓所围区域的面积,面积小于阈值的轮廓可以认为是无效的干扰轮廓,因此可以直接将这些轮廓进行滤除,从而消除干扰因素带来的影响。
48.需要说明的是,本发明提出了一种新的鲟鱼计数与定位方法,通过结合不同的数字图像处理步骤,以计算机软件形式实现了自动化的鲟鱼计数与定位方法,除了能得到养殖池中的鲟鱼个数,也能获得鲟鱼目标的所在位置。其中通过直方图均衡实现鱼池区域对比度提升的方法以及通过轮廓检测实现鲟鱼计数的方法并不唯一,用其它图像处理方法可能也能获得类似效果,但这些只是中间步骤的具体实现方法,本发明更关注鲟鱼计数与定位方案的整体框架的有效性与高效性。
49.综上所述,本发明提出了一种新的自动化鲟鱼计数方法,能够以较低成本对养殖场景下鱼池中的鲟鱼个数进行准确计数,并得到每个鲟鱼目标所在位置,从而为鲟鱼养殖工作提供参考信息。
技术特征:
1.一种新的鲟鱼计数与定位方法,其特征在于,包括:步骤1、获取养殖池内的鲟鱼图像;步骤2、对所述养殖池内的鲟鱼图像进行直方图均衡处理;步骤3、对步骤2处理后的养殖池内的鲟鱼图像进行圆形检测;步骤4、对步骤3处理后的养殖池内的鲟鱼图像进行二值化得到荧光标记区域;步骤5、对步骤4处理后的养殖池内的鲟鱼图像进行轮廓检测得到荧光区域个数。2.根据权利要求1所述的新的鲟鱼计数与定位方法,其特征在于,步骤1中,所述养殖池内的鲟鱼图像为养殖场景的俯视图。3.根据权利要求2所述的新的鲟鱼计数与定位方法,其特征在于,步骤2中,通过直方图均衡处理提升所述养殖池内的鲟鱼图像的对比度。4.根据权利要求3所述的新的鲟鱼计数与定位方法,其特征在于,步骤3中,通过圆形检测排除无关背景干扰,得到养殖池内的鲟鱼图像的灰度图。5.根据权利要求4所述的新的鲟鱼计数与定位方法,其特征在于,步骤4中,设定灰度阈值对灰度图像进行二值化,将高于该阈值的像素值置为255,为白色,表示荧光标记区域,低于该阈值的像素值则置为0,为黑色,表示其它无关区域。6.根据权利要求5所述的新的鲟鱼计数与定位方法,其特征在于,步骤5中,设定了轮廓的面积阈值,并计算了每个外轮廓所围区域的面积,面积小于阈值的轮廓认为是无效的干扰轮廓,并进行滤除。7.一种新的鲟鱼计数与定位装置,其特征在于,用于执行如权利要求1所述的新的鲟鱼计数与定位方法,包括:获取模块,用于获取养殖池内的鲟鱼图像;均衡处理模块,用于对所述养殖池内的鲟鱼图像进行直方图均衡处理;圆形检测模块,用于对均衡处理后的养殖池内的鲟鱼图像进行圆形检测;二值化模块,用于对圆形检测后的养殖池内的鲟鱼图像进行二值化得到荧光标记区域;轮廓检测模块,用于对二值化处理后的养殖池内的鲟鱼图像进行轮廓检测得到荧光区域个数。8.一种计算机存储介质,其特征在于,所述计算机存储介质内存储有计算机程序;所述计算机程序在计算机上运行时,使得计算机执行如权利要求1所述的新的鲟鱼计数与定位方法。
技术总结
本发明涉及一种新的鲟鱼计数与定位方法,包括:获取养殖池内的鲟鱼图像;对所述养殖池内的鲟鱼图像进行直方图均衡处理、圆形检测、二值化和轮廓检测,得到荧光区域个数。本发明的有益效果是:本发明以鲟鱼为研究对象,以鲟鱼携带的荧光标记为突破点,通过直方图均衡、圆形检测及轮廓检测等图像处理算法,克服了水面反光、鱼群遮挡等实际问题,实现了自动化的养殖场景下的鲟鱼计数。养殖场景下的鲟鱼计数。养殖场景下的鲟鱼计数。
技术研发人员:常永鹏
受保护的技术使用者:浙江大学
技术研发日:2023.04.24
技术公布日:2023/7/20
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
