APP下载

图像分割在鱼苗自动计数系统中的应用

2020-08-18多功昊王紫聪

农业技术与装备 2020年7期
关键词:鱼苗灰度计数

多功昊,王紫聪,张 航

(天津农学院计算机与信息工程学院,天津 300384)

随着计算机视觉和图像处理技术的发展和进步,计算机视觉在水产养殖中得到了广泛的应用,提高了水产养殖和管理的自动化水平。利用计算机视觉技术可以对鱼苗进行行为检测、应季状态的评估、鱼苗的计数和分类、判读鱼苗的状态等。并且基于计算机视觉的鱼苗计数方法又具有精确度高、效率高等优势,从而使之成为一种研究技术的重要方法。此外,利用计算机视觉计数的鱼苗计数方法的研究对提升现代化水产养殖过程中的信息化、自动化水平具有非常重要的实用价值和意义。

1 图像分割

计算机视觉作为一种图像收集、图像处理和图像分割的综合技术,其中图像分割作为图像处理中的核心,影响着整个系统的精确度。作为一种数字图像处理技术,图像分割的依据可以是灰色、纹理或者颜色等,将图像分割成具有不同特征的区域,然后利用特征提取算法对不同特征区域进行特征的提取,从而得到图像的分类信息。图像分割依据不同区域的差异和每个区域的不一致性等将图像分割成为互不相交的部分,从而得到图像的分类。其数学定义如下所示。

假设用R表示图像区域,图像分割实质上就是将R根据不同的特征分割成为非空联通子区域R1,R2,……,R3,并且满足以下条件:

由条件(1)可知图像分割的子集要包括图像的每一个像素,从而保证图像原始数据不缺失;由(2)可知根据不同特征划分的各个子区域相互之间不重叠;由(3)可知图像分割的各个子集特征明显;由(4)可知不同子集之间的特征值要尽可能的大,以便于对于特征的分类。

2 常用的图像分割技术

2.1 阈值分割方法

根据图像的数据信息,选择合适的阈值是阈值分割的核心,阈值的优劣影响着计算的结果和后续的图像分类的精确度问题,其常用的方法是首先得到各个灰度级的概率分布,然后选择一个或多个阈值,进而得到弧度的数据分类。常见的阈值分割方法有p-分数法、最频值法、Otsu方法、最小误差法和矩量保持法等方法。

2.2 边缘检测法

图像的边缘检测利用数据上的灰度值不连续来表示,主要是通过图像信息的原始数据,利用一阶和二阶的导数表来检测图像的边缘,其中前者用于检测边缘的像素,后者则检验像素具有共同的图像特征。

2.3 遗传聚类算法

聚类分析也被称作群分析,从而可以把图像同一特征值划分为一类,以利用遗传聚类算法可以找到图像的分割方法。

2.4 模糊阈值法

主要是利用模糊集的图像分割方法,以解决图像分割过程中由于图像信息的不准确和不完整等原因造成的模型性问题。从而将图像的性质、特征和关系映射到模糊理论的空间,通过模糊集和系统的理论实现图像的分割。

3 基于阈值的图像分割在鱼苗计数中的应用

阈值分割主要是利用图像信息中的目标物体和背景在灰度上的差异,然后选择合适的阈值从而判断图像中的每一个像素点的特征是否符合要求,以确定图像中的像素属于目标区域还是背景区域,最后产生二值的图像。常用的阈值分割方法有直方图阈值法、迭代阈值法和Otsu算法,特点如表1所示。

表1 不同阈值分割方法特点Tab.1 Characteristics of different threshold segmentation methods

由表1可知,不同的阈值分割方法的特点是不同的,在应用是应该根据具体环境选择合适的方法。对于鱼苗的计数来说,利用上述的阈值分割方法,运行处理不同的效果,如图1所示。

由图1可知,如果使用直方图的方法,则鱼苗分割比较清晰,但却不适用于多谷峰的图像,而迭代和Otsu方法在本实验中实现了背景和目标的分类,其耗费的时间分别为3.482 s和2.311 s,因此本实验采用Oust算法来分割图像。

Ostu算法即最大类间方差法,主要是根据图像的灰度特征将图像分为目标和背景两个区域,如果图像中的背景和目标之间的类间方差越大,则两者之间的差别越大,越易于区分。假设图像f有L个灰度级,其范围为[0,L-1],灰度的级别i的像素总个数为Ni,因此总的像素个数为:

图像的灰度级为i的概率为:

选择阈值T从而将图像分为目标区域和背景区域,其中C0表示目前区域像素点,C1表示背景区域的像素点,C0、C1区域的表达式如下所示:

假设μ0、μ1分别表示目标区域和背景区域的灰度值,μ表示整个图像的灰度值,则:

则类间方差的计算可由以下公式得出,

通过以上公式从而计算得出Otsu算法的最佳阈值。

本文中主要采用连通区域标记方法进行鱼苗的计数,其实现步骤如下:首先对二值的图像进行扫描,并记录每行连通区域的行号和起始点;然后对连通区域进行逐步的标记并判断与上一行的连通区域是否相同,如果相同则将重合其他的标号赋值给改区域,否则赋予该连通区域新的标号;对第一次扫描后的相同区域进行最小值的标记,即将所有等价对标号中的最小值赋值给所有的联通区域。其计数的流程如图2所示。

4 试验结果

本试验中采用的硬件设备是Intel I5 7400,8Gb内存,编程工具是MATLAB,实验中采用的是普通鱼苗,如图3所示。本文首先选取了稀疏鱼苗和密集鱼苗进程处理后的图像,其中a和c为稀疏鱼苗与密集鱼苗分割处理后的结果图像,b和d为稀疏鱼苗和密集鱼苗经过处理后的对比,如图4所示。

通过采用连通区域标记法计数,得出的结果与人工计数相比,如表2所示。

表2 鱼苗计数对比Tab.2 Comparison of fish fry counts

由表2可知,在鱼苗稀疏时准确率很高,鱼苗计数的准确率也达到了91%,因此采用该方法对鱼苗进行计数是可行的。

因此,基于上述的试验的验证,在不同的光照环境下,利用Ostu阈值分割方法对鱼苗的图像进行多次分割,其结果表现如图5所示。

不同环境下对鱼苗进行计数的结果如下表3所示。

表3 不同环境下的鱼苗计数结果Tab.3 Number of fish fry in different environments

猜你喜欢

鱼苗灰度计数
采用改进导重法的拓扑结构灰度单元过滤技术
天津港智慧工作平台灰度发布系统和流程设计
Bp-MRI灰度直方图在鉴别移行带前列腺癌与良性前列腺增生中的应用价值
古代的计数方法
Arduino小车巡线程序的灰度阈值优化方案
古代的人们是如何计数的?
控流优选鱼苗检疫器
高原地区青海湖裸鲤鱼苗运输注意事项
黑鱼苗价格将继续高位运行