Processing

Please wait...

Settings

Settings

Goto Application

1. WO2020134255 - METHOD FOR MONITORING GROWTH SITUATIONS OF FISHES BASED ON MACHINE VISION

Document

说明书

发明名称 0001   0002   0003   0004   0005   0006   0007   0008   0009   0010   0011   0012   0013   0014   0015   0016   0017   0018   0019   0020   0021   0022   0023   0024   0025   0026   0027   0028   0029   0030   0031   0032   0033   0034   0035   0036   0037   0038   0039   0040   0041   0042   0043   0044   0045   0046   0047   0048   0049   0050   0051   0052   0053  

权利要求书

1   2   3   4   5   6   7   8  

附图

1   2   3   4  

说明书

发明名称 : 一种基于机器视觉对鱼类生长情况进行监测的方法

技术领域

[0001]
本发明涉及水下鱼类捕捉技术,特别涉及一种基于机器视觉对鱼类生长情况进行监测的方法。

背景技术

[0002]
海洋渔业生产的主要捕捞对象是那些在进行洄游、繁殖、索饵或越冬等活动的鱼类或经济动物的密集群体,特别是繁殖群体,密度大且稳定,而且多数鱼群是以同一体长组或同一年龄组进行集群的,如鲑鳟鱼类特别明显。
[0003]
因此,在进行捕捞作业时,如果对达不到捕捞规格的对象(如低龄或性未成熟的幼鱼)进行酷捕,则必然得不偿失,严重影响来年的资源量,甚至能导致渔业资源的衰退,后患无穷。所以要实现可持续、合理化捕鱼,就需要对不同种类、以及不同大小的鱼类进行选择性捕捞。
[0004]
然而目前对于小规模内陆养鱼来说,一般都是采取竭泽而渔的方式,而对于海场养鱼,也都是采取渔船拉网、撒网,最后再进行人工分拣,不符合捕捞的鱼类再放回,这样就导致人工劳动强度大,工作量非常繁重,效率低下等问题。因此,水下捕鱼机器人具有极其重要的理论研究与实际应用意义,具有良好的经济 价值和社会效益。
[0005]
发明内容
[0006]
本发明要解决的技术问题是提供一种基于机器视觉的水下捕鱼方法,可以捕捉特定种类和特定大小的鱼类,同时,也可以估测鱼类重量,实时监测鱼类生长情况,精准掌握最佳捕鱼时期。
[0007]
为解决上述技术问题,本发明提供了一种基于机器视觉对鱼类生长情况进行监测的方法,其特征在于,包括:利用水下摄像机采集鱼类的图像;根据所采集到的鱼类的图像对所述鱼类进行识别分类;根据所采集到的鱼类的图像计算所述鱼类的长度;根据识别分类的结果以及所述鱼类的长度,并基于预设的鱼类的长度与重量的关系,估算所述鱼类的重量。
[0008]
本发明的优点在于:本发明基于机器视觉的水下捕鱼方法,通过水下捕鱼装置配合鱼类识别分类、鱼类长度测量及重量预测的步骤实时监测鱼类生长情况,精准掌握最佳捕鱼时期;即通过图像处理,测量鱼类长度,实现精准捕捉,通过图像处理对鱼类重量进行估测,实时监测鱼类生长情况,使养殖收益最大化,进而可实现自动捕鱼、分鱼过程,简化了大量的捕鱼工作,提高工作效率;此外,结合水下机器人技术和图像识别技术,有助于减少人员劳动量、提高生产效率、增强自动化水平,具有理论与实际应用上的意义。

附图说明

[0009]
下面结合附图和具体实施方式对本发明作进一步详细的说明。
[0010]
图1是实施例基于机器视觉的水下捕鱼方法中鱼类识别分类的流程图。
[0011]
图2是图1中图像采集与预处理的具体流程图。
[0012]
图3是实施例基于机器视觉的水下捕鱼方法中鱼类长度测量及重量预测的流程图。
[0013]
图4是实施例基于机器视觉的水下捕鱼方法中鱼体长度预测处理中间图像。

具体实施方式

[0014]
下面的实施例可以使本专业的技术人员更全面地理解本发明,但并不因此将本发明限制在所述的实施例范围之中。
[0015]
实施例
[0016]
本发明提供了一种基于机器视觉对鱼类生长情况进行监测的方法,包括:利用水下摄像机采集鱼类的图像;根据所采集到的鱼类的图像对所述鱼类进行识别分类;根据所采集到的鱼类的图像计算所述鱼类的长度;根据识别分类的结果以及所述鱼类的长度,并基于预设的鱼类的长度与重量的关系,估算所述鱼类的重量。
[0017]
本实施例基于机器视觉的水下捕鱼方法中水下捕鱼装置,包括用于采集图像的康奈视In-Sight7000型工业相机、用于黑暗环境照明的水下照明灯、用于诱导鱼儿的诱鱼灯装置和用于捕捉鱼儿的水下专用捕鱼网及水下机器人,其中,诱鱼灯装置包括三色LED和变频发声 器;此外,考虑到水下光传播的蓝绿偏移,水下照明灯选用为碘化铊灯,它辐射的光能大部分集中在蓝与绿范围内,水对它吸收很少;水下摄像机采用这种光源与白炽灯相比,在相同的功率条件下,效率在六倍以上。
[0018]
本实施例基于机器视觉的水下捕鱼方法,通过水下捕鱼装置配合鱼类识别分类、鱼类长度测量及重量预测的步骤实时监测鱼类生长情况,精准掌握最佳捕鱼时期。
[0019]
本实施例中,鱼类识别分类,如图1所示,具体包括如下步骤:
[0020]
步骤1:图像采集与预处理:如图2所示,水下摄像机采集到鱼类的彩色图片,通过改进的中值滤波器对原始图像进行滤波,然后对滤波后图片切割成矩形图像,然后使用Grab Cut算法对所述图像进行分割,得到去除背景后的分割图像,然后对分割图像进行灰度、形态学和二值化操作,获取到经过处理的鱼体二维二值图像;
[0021]
步骤2:小波特征提取:
[0022]
1)归一化处理:对步骤1的预处理图像进行归一化处理;
[0023]
2)极坐标化:假设f(x,y)表示直角坐标上的二维二值图像,其标准矩定义为M pq=∫∫x py qf(x,y)dxdy,由x=r cos(θ),y=r sin(θ)将上式转为极坐标系得到矩特征的一般表达式为F pq=∫∫f(r,θ)g p(r)e jqθrdrdθ,其中g p(r)为变换核的角度分量,e jqθ是变换核的角度分量;
[0024]
3)旋转不变小波矩特征提取:令s q(r)=∫f(r,θ)e jqθdθ, 则上式可写为F pq=∫s q(r)g p(r)rdr,可以证明图像发生旋转后特征值模||F pq||保持不变;选择适当的的基本小波ψ(r),然后通过伸展、平移来生成小波函数集ψ m,n(r),m,n分别为尺度和平移变量,则小波矩不变量为||F m,n,q||=||∫s q(r)ψ m,n(r)rdr||;
[0025]
步骤3:BP神经网络鱼类图像分类
[0026]
1)网络初始化:将上述步骤获得的目标图像的矩特征作为BP网络的输入,进而识别目标;假设输入层的节点个数为n,隐含层的节点个数为l,输出层的节点个数为m,则输入层到隐含层的权重ω ij,隐含层到输出层的权重为ω jk,输入层到隐含层的偏置为a j,隐含层到输出层的偏置为b k;学习速率为η,激励函数为g(x);其中,激励函数为g(x)取Sigmoid函数,形式为:
[0027]
2)计算隐含层和输出层输出:采用三层BP神经网络,隐含层输出为 输出层的输出为
[0028]
3)误差的计算:取误差公式为: 其中Y k为期望输出;记Y k-O k=e k,则误差E可以表示为 公式中i=1···n,j=1···l,k=1···m;
[0029]
4)权值和偏置更新:
[0030]
权值更新公式为:
[0031]
偏置更新公式为:
[0032]
5)输出单元产生的激活再与期望值相比较,判断算法是否已经收敛,如果收敛输出图像识别结果,否则跳转到2)。
[0033]
根据本发明一个实施例,在上述步骤1中进行的图像分割为将滤波后的图像切割成矩形图像,然后使用Grab Cut算法对图像进行分割。Grab Cut算法的过程如下。
[0034]
步骤1.1:颜色模型:
[0035]
采用RGB颜色空间,分别用一个K个高斯分量(一般取K=5)的全协方差GMM(混合高斯模型)来对目标和背景进行建模,于是就存在一个额外的向量k={k 1,...,k n,...,k N},其中k n就是第n个像素对应于那个高斯分量,k n∈{1,...k},对于每个像素,要不来自于目标GMM的某个高斯分量,要不就来自于背景GMM的某个高斯分量,所以用于整个图像的Gibbs能量为:E(α,k,θ,z)=U(α,k,θ,z)+V(α,z),
[0036]
其中,U就是区域项,表示一个像素被归类为目标或者背景的惩罚,也就是某个像素属于目标或者背景的概率的负对数,混合高斯密度模型是如下形式: 且0≤π i≤1,
[0037]
步骤1.2:迭代能量最小化分割算法:
[0038]
所述Grab Cut算法是迭代最小的,每次迭代过程都使得对目标 和背景建模的GMM的参数更优,使得图像分割更优,所述迭代能量最小化分割算法包括:
[0039]
步骤1.2.1:通过直接框选目标来得到一个初始的trimap T,即方框外的像素全部作为背景像素TB,而方框内TU的像素全部作为“可能是目标”的像素,
[0040]
步骤1.2.2:对背景像素TB内的每一像素n,初始化像素n的标签α n=0,即为背景像素;而对TU内的每个像素n,初始化像素n的标签α n=1,即作为“可能是目标”的像素,
[0041]
步骤1.2.3:经过上面两个步骤,分别得到属于目标(α n=1)的一些像素,剩下的为属于背景(α n=0)的像素,随后通过该像素来估计目标和背景的GMM,通过k-mean算法分别把属于目标和背景的像素聚类为K类,即GMM中的K个高斯模型,GMM中每个高斯模型具有多个像素样本集,通过其RGB值估计得到其参数均值和协方差,而通过属于该高斯分量的像素个数与总的像素个数的比值来确定该高斯分量的权值,
[0042]
步骤1.3:迭代最小化:
[0043]
步骤1.3.1:对每个像素分配GMM中的高斯分量,例如像素n是目标像素,那么把像素n的RGB值代入目标GMM中的每一个高斯分量中,概率最大的那个就是最有可能生成n的,也即像素n的第k n个高斯分量:
[0044]
步骤1.3.2:对于给定的图像数据Z,学习优化GMM的参数,所述参数在步骤1.2中已经为每个像素归为哪个高斯分量做了归类,那 么每个高斯模型就具有了多个像素样本集,通过所述像素样本的RGB值估计得到其参数均值和协方差,而通过属于该高斯分量的像素个数与总的像素个数的比值来确定该高斯分量的权值:
[0045]
[0046]
步骤1.3.3:分割估计:通过步骤1.1中分析的Gibbs能量项,建立一个图,并求出权值t-link和n-link,然后通过max flow/min cut算法来进行分割:
[0047]
步骤1.3.4:重复步骤1.3.1到1.3.3,直到收敛,经过3.3.3的分割后,每个像素属于目标GMM还是背景GMM发生改变,从而每个像素的k n发生改变,故GMM也发生改变,所以每次的迭代会交互地优化GMM模型和分割结果,另外,因为步骤1.3.1到1.3.3的过程都是能量递减的过程,所以保证迭代过程会收敛。
[0048]
本实施例中,鱼类长度测量及重量预测,如图3所示,具体包括如下步骤:
[0049]
步骤1:鱼类样本长度和重量参数获取:通过测量大量同一种鱼类的长度和重量数据,并采用线性回归处理计算出二者之间存在的关系,并根据最终测得的鱼类长度来估测鱼类重量,进而评估整个渔场鱼类的生长情况,以及是否满足水下机器人的捕捉条件;
[0050]
步骤2:鱼类长度信息提取:如图4所示,在水下专用捕鱼网的末端与之相平行的位置设置一个直径为5cm的圆,并且使其成像位置在整幅图片的左上角;在种类识别的预处理图像基础上,通过计算鱼类处理后图片的最左侧和最右侧的像素点个数和圆环直径的相熟点 个数之比乘上圆环直径来计算出鱼的长度;
[0051]
步骤3:长度误差补偿:鱼类距离水下专用捕鱼网口的距离为10-20cm,在计算鱼类长度时,加入5%-10%误差补偿;
[0052]
步骤4:重量预测:将从预处理图像中提取出的长度信息输入到线性回归函数预测模型中,计算出鱼类重量近似重量。
[0053]
以上显示和描述了本发明的基本原理和主要特征以及本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。

权利要求书

[权利要求 1]
一种基于机器视觉对鱼类生长情况进行监测的方法,其特征在于,包括: 利用水下摄像机采集鱼类的图像; 根据所采集到的鱼类的图像对所述鱼类进行识别分类; 根据所采集到的鱼类的图像计算所述鱼类的长度; 根据识别分类的结果以及所述鱼类的长度,并基于预设的鱼类的长度与重量的关系,估算所述鱼类的重量。
[权利要求 2]
根据权利要求1所述的方法,其特征在于,根据所采集到的鱼类的图像对所述鱼类进行识别分类包括如下步骤: 步骤1:图像采集与预处理:利用所述水下摄像机采集鱼类的原始图像,通过改进的中值滤波器对所述原始图像进行滤波,然后对滤波后的图像进行图像分割,得到去除背景后的分割图像,然后对所述分割图像进行灰度、形态学和二值化操作,获取到经过处理的鱼体二维二值图像; 步骤2:小波特征提取: 1)归一化处理:对步骤1得到的图像进行归一化处理; 2)极坐标化:假设f(x,y)表示直角坐标上的二维二值图像,其标准矩定义为M pq=∫∫x py qf(x,y)dxdy,由x=r cos(θ),y=r sin(θ)将上式转为极坐标系得到矩特征的一般表达式为 F pq=∫∫f(r,θ)g p(r)e jqθrdrdθ,其中g p(r)为变换核的角度分量,e jqθ是变换核的角度分量; 3)旋转不变小波矩特征提取:令s q(r)=∫f(r,θ)e jqθdθ,则上式可写为F pq=∫s q(r)g p(r)rdr,可以证明图像发生旋转后特征值模||F pq||保持不变;选择适当的的基本小波ψ(r),然后通过伸展、平移来生成小波函数集ψ m,n(r),m,n分别为尺度和平移变量,则小波矩不变量为||F m,n,q||=||∫s q(r)ψ m,n(r)rdr||; 步骤3:BP神经网络鱼类图像分类 1)网络初始化:将上述步骤获得的图像的矩特征作为BP网络的输入,进而识别目标;假设输入层的节点个数为n,隐含层的节点个数为l,输出层的节点个数为m,则输入层到隐含层的权重ω ij,隐含层到输出层的权重为ω jk,输入层到隐含层的偏置为a j,隐含层到输出层的偏置为b k;学习速率为η,激励函数为g(x);其中,激励函数为g(x)取Sigmoid函数,形式为: 2)计算隐含层和输出层输出:采用三层BP神经网络,隐含层输出为 输出层的输出为 3)误差的计算:取误差公式为: 其中Y k为期望输出;记Y k-O k=e k,则误差E可以表示为 公式中i=1···n,j=1···l,k=1···m; 4)权值和偏置更新: 权值更新公式为: 偏置更新公式为: 5)输出单元产生的激活再与期望值相比较,判断算法是否已经收敛,如果收敛输出图像识别结果,否则跳转到2)。
[权利要求 3]
根据权利要求2所述的方法,其特征在于,在所述步骤1中进行的图像分割为将滤波后的图像切割成矩形图像,然后使用Grab Cut算法对所述图像进行分割。
[权利要求 4]
根据权利要求3所述的方法,其特征在于,所述Grab Cut算法包括: 步骤1.1:颜色模型: 采用RGB颜色空间,分别用一个K个高斯分量(一般取K=5)的全协方差GMM(混合高斯模型)来对目标和背景进行建模,于是就存 在一个额外的向量k={k 1,...,k n,...,k N},其中k n就是第n个像素对应于那个高斯分量,k n∈{1,...k},对于每个像素,要不来自于目标GMM的某个高斯分量,要不就来自于背景GMM的某个高斯分量,所以用于整个图像的Gibbs能量为: E(α,k,θ,z)=U(α,k,θ,z)+V(α,z), 其中,U就是区域项,表示一个像素被归类为目标或者背景的惩罚,也就是某个像素属于目标或者背景的概率的负对数,混合高斯密度模型是如下形式: 且0≤π i≤1, 步骤1.2:迭代能量最小化分割算法: 所述Grab Cut算法是迭代最小的,每次迭代过程都使得对目标和背景建模的GMM的参数更优,使得图像分割更优,所述迭代能量最小化分割算法包括: 步骤1.2.1:通过直接框选目标来得到一个初始的trimap T,即方框外的像素全部作为背景像素TB,而方框内TU的像素全部作为“可能是目标”的像素, 步骤1.2.2:对背景像素TB内的每一像素n,初始化像素n的标签α n=0,即为背景像素;而对TU内的每个像素n,初始化像素n的标签α n=1,即作为“可能是目标”的像素, 步骤1.2.3:经过上面两个步骤,分别得到属于目标(α n=1)的一些像素,剩下的为属于背景(α n=0)的像素,随后通过该像素来估计目标和背景的GMM,通过k-mean算法分别把属于目标和背景的像素聚类为K类,即GMM中的K个高斯模型,GMM中每个高 斯模型具有多个像素样本集,通过其RGB值估计得到其参数均值和协方差,而通过属于该高斯分量的像素个数与总的像素个数的比值来确定该高斯分量的权值, 步骤1.3:迭代最小化: 步骤1.3.1:对每个像素分配GMM中的高斯分量,例如像素n是目标像素,那么把像素n的RGB值代入目标GMM中的每一个高斯分量中,概率最大的那个就是最有可能生成n的,也即像素n的第k n个高斯分量: 步骤1.3.2:对于给定的图像数据Z,学习优化GMM的参数,所述参数在步骤1.2中已经为每个像素归为哪个高斯分量做了归类,那么每个高斯模型就具有了多个像素样本集,通过所述像素样本的RGB值估计得到其参数均值和协方差,而通过属于该高斯分量的像素个数与总的像素个数的比值来确定该高斯分量的权值: 步骤1.3.3:分割估计:通过步骤1.1中分析的Gibbs能量项,建立一个图,并求出权值t-link和n-link,然后通过max flow/min cut算法来进行分割: 步骤1.3.4:重复步骤1.3.1到1.3.3,直到收敛,经过3.3.3的分割后,每个像素属于目标GMM还是背景GMM发生改变,从而每个像素的k n发生改变,故GMM也发生改变,所以每次的迭代会交互地优化GMM模型和分割结果,另外,因为步骤1.3.1到1.3.3的过程都是能量递减的过程,所以保证迭代过程会收敛。
[权利要求 5]
根据权利要求2所述的方法,其特征在于,根据所采集到的鱼类的图像计算所述鱼类的长度包括如下步骤: 在水下专用捕鱼网的末端与之相平行的位置设置一个直径为5cm的圆,并且使其成像位置在整幅图像的左上角; 在图像预处理的基础上,通过计算识别分类处理后的图像的最左侧和最右侧的像素点个数和圆环直径的像素点个数之比乘上圆环直径来计算出鱼类的长度; 长度误差补偿:鱼类距离所述水下专用捕鱼网的网口的距离为10-20cm,在计算鱼类的长度时,加入5%-10%的误差补偿。
[权利要求 6]
根据权利要求5所述的方法,其特征在于,根据识别分类的结果以及所述鱼类的长度,并基于预设的鱼类的长度与重量的关系,估算所述鱼类的重量包括如下步骤: 根据识别分类的结果,确定与所识别出的鱼的种类相对应的预设线性回归函数预测模型,所述线性回归函数预测模型反映鱼类的长度与重量的关系; 将误差补偿后的鱼类的长度输入至所述线性回归函数预测模型,估算出所述鱼类的重量。
[权利要求 7]
根据权利要求6所述的方法,其特征在于,所述线性回归函数预测模型是通过测量多个同一种鱼类的长度和重量数据,并采用线性回归处理建立的预测模型。
[权利要求 8]
根据权利要求1所述的方法,其特征在于,还包括: 判断识别分类的结果、所述鱼类的长度以及所述鱼类的重量是否满足水下机器人的捕捉条件。

附图

[ 图 1]  
[ 图 2]  
[ 图 3]  
[ 图 4]