一种基于机器视觉的水下捕鱼方法与流程

文档序号:17726719发布日期:2019-05-22 02:33阅读:343来源:国知局
一种基于机器视觉的水下捕鱼方法与流程

本发明涉及水下鱼类捕捉技术,特别涉及一种基于机器视觉的水下捕鱼方法。



背景技术:

海洋渔业生产的主要捕捞对象是那些在进行洄游、繁殖、索饵或越冬等活动的鱼类或经济动物的密集群体,特别是繁殖群体,密度大且稳定,而且多数鱼群是以同一体长组或同一年龄组进行集群的,如鲑鳟鱼类特别明显。

因此,在进行捕捞作业时,如果对达不到捕捞规格的对象(如低龄或性未成熟的幼鱼)进行酷捕,则必然得不偿失,严重影响来年的资源量,甚至能导致渔业资源的衰退,后患无穷。所以要实现可持续、合理化捕鱼,就需要对不同种类、以及不同大小的鱼类进行选择性捕捞。

然而目前对于小规模内陆养鱼来说,一般都是采取竭泽而渔的方式,而对于海场养鱼,也都是采取渔船拉网、撒网,最后再进行人工分拣,不符合捕捞的鱼类再放回,这样就导致人工劳动强度大,工作量非常繁重,效率低下等问题。因此,水下捕鱼机器人具有极其重要的理论研究与实际应用意义,具有良好的经济价值和社会效益。



技术实现要素:

本发明要解决的技术问题是提供一种基于机器视觉的水下捕鱼方法,可以捕捉特定种类和特定大小的鱼类,同时,也可以估测鱼类重量,实时监测鱼类生长情况,精准掌握最佳捕鱼时期。

为解决上述技术问题,本发明的技术方案为:一种基于机器视觉的水下捕鱼方法,其创新点在于:所述水下捕鱼方法通过水下捕鱼装置配合鱼类识别分类、鱼类长度测量及重量预测的步骤实时监测鱼类生长情况,精准掌握最佳捕鱼时期;

其中,所述鱼类识别分类包括图像采集与预处理、小波特征提取和bp神经网络鱼类图像分类,所述鱼类长度测量及重量预测包括鱼类样本长度和重量参数获取、鱼类长度信息提取、长度误差补偿和重量预测;

所述水下捕鱼装置包括用于采集图像的水下摄像机、用于黑暗环境照明的水下照明灯、用于诱导鱼儿的诱鱼灯装置和用于捕捉鱼儿的水下专用捕鱼网及水下机器人;其中,所述诱鱼灯装置包括三色led和变频发声器。

进一步地,所述鱼类识别分类具体包括如下步骤:

步骤1:图像采集与预处理:水下摄像机采集到鱼类的彩色图片,通过改进的中值滤波器对原始图像进行滤波,然后对滤波后图片进行图像分割,得到去除背景后的分割图像,然后对分割图像进行灰度、形态学和二值化操作,获取到经过处理的鱼体二维二值图像;

步骤2:小波特征提取:

1)归一化处理:对步骤1的预处理图像进行归一化处理;

2)极坐标化:假设f(x,y)表示直角坐标上的二维二值图像,其标准矩定义为mpq=∫∫xpyqf(x,y)dxdy,由x=rcos(θ),y=rsin(θ)将上式转为极坐标系得到矩特征的一般表达式为fpq=∫∫f(r,θ)gp(r)ejqθrdrdθ,其中gp(r)为变换核的角度分量,ejqθ是变换核的角度分量;

3)旋转不变小波矩特征提取:令sq(r)=∫f(r,θ)ejqθdθ,则上式可写为fpq=∫sq(r)gp(r)rdr,可以证明图像发生旋转后特征值模||fpq||保持不变;选择适当的的基本小波ψ(r),然后通过伸展、平移来生成小波函数集ψm,n(r),m,n分别为尺度和平移变量,则小波矩不变量为||fm,n,q||=||∫sq(r)ψm,n(r)rdr||;

步骤3:bp神经网络鱼类图像分类

1)网络初始化:将上述步骤获得的目标图像的矩特征作为bp网络的输入,进而识别目标;假设输入层的节点个数为n,隐含层的节点个数为l,输出层的节点个数为m,则输入层到隐含层的权重ωij,隐含层到输出层的权重为ωjk,输入层到隐含层的偏置为aj,隐含层到输出层的偏置为bk;学习速率为η,激励函数为g(x);其中,激励函数为g(x)取sigmoid函数,形式为:

2)计算隐含层和输出层输出:采用三层bp神经网络,隐含层输出为输出层的输出为

3)误差的计算:取误差公式为:其中yk为期望输出;记yk-ok=ek,则误差e可以表示为公式中i=1…n,j=1…l,k=1…m;

4)权值和偏置更新:

权值更新公式为:

偏置更新公式为:

5)输出单元产生的激活再与期望值相比较,判断算法是否已经收敛,如果收敛输出图像识别结果,否则跳转到2)。

进一步地,所述步骤1中图像分割为对滤波图像切割成矩形图像,然后使用grabcut算法对所述图像进行分割。

进一步地,所述grabcut算法采用rgb颜色空间,分别用一个k个高斯分量,一般取k=5的全协方差混合高斯模型gmm来对目标和背景进行建模,则存在一个额外的向量k={k1,...,kn,...,kn},其中kn就是第n个像素对应于那个高斯分量,kn∈{1,...k};其中,对于每个像素,来自于目标gmm的某个高斯分量,或来自于背景gmm的某个高斯分量,则用于整个图像的gibbs能量为:

e(α,k,θ,z)=u(α,k,θ,z)+v(α,z);

其中,u就是区域项,表示一个像素被归类为目标或者背景的惩罚,即是某个像素属于目标或者背景的概率的负对数,混合高斯密度模型是如下形式:且0≤πi≤1;

grabcut是迭代最小的,每次迭代过程都使得对目标和背景建模的gmm的参数更优,使得图像分割更优,具体步骤如下:

步骤1:用户通过直接框选目标来得到一个初始的trimapt,即方框外的像素全部作为背景像素tb,而方框内tu的像素全部作为“可能是目标”的像素;

步骤2:对tb内的每一像素n,初始化像素n的标签αn=0,即为背景像素;而对tu内的每个像素n,初始化像素n的标签αn=1,即作为“可能是目标”的像素;

步骤3:经过步骤1和步骤2,分别得到属于目标(αn=1)的一些像素,剩下的为属于背景(αn=0)的像素,则通过这个像素来估计目标和背景的gmm了;同时,通过k-mean算法分别把属于目标和背景的像素聚类为k类,即gmm中的k个高斯模型,则gmm中每个高斯模型就具有了一些像素样本集,它的参数均值和协方差可以通过rgb值估计得到,则该高斯分量的权值可以通过属于该高斯分量的像素个数与总的像素个数的比值来确定。

进一步地,所述迭代最小化的具体步骤如下:

步骤1:对每个像素分配gmm中的高斯分量,即像素n是目标像素,那么把像素n的rgb值代入目标gmm中的每一个高斯分量中,概率最大的那个就是最有可能生成n的,也即像素n的第kn个高斯分量:

步骤2:对于给定的图像数据z,学习优化gmm的参数

步骤3:分割估计,通过高斯模型gmm分析的gibbs能量项,建立一个图,并求出权值t-link和n-link,然后通过maxflow/mincut算法来进行分割:

步骤4:重复步骤1到步骤3,直到收敛。

进一步地,所述鱼类长度测量及重量预测具体包括如下步骤:

步骤1:鱼类样本长度和重量参数获取:通过测量大量同一种鱼类的长度和重量数据,并采用线性回归处理计算出二者之间存在的关系,并根据最终测得的鱼类长度来估测鱼类重量,进而评估整个渔场鱼类的生长情况,以及是否满足水下机器人的捕捉条件;

步骤2:鱼类长度信息提取:在水下专用捕鱼网的末端与之相平行的位置设置一个直径为5cm的圆,并且使其成像位置在整幅图片的左上角;在种类识别的预处理图像基础上,通过计算鱼类处理后图片的最左侧和最右侧的像素点个数和圆环直径的相熟点个数之比乘上圆环直径来计算出鱼的长度;

步骤3:长度误差补偿:鱼类距离水下专用捕鱼网口的距离为10-20cm,在计算鱼类长度时,加入5%-10%误差补偿;

步骤4:重量预测:将从预处理图像中提取出的长度信息输入到线性回归函数预测模型中,计算出鱼类重量近似重量。

本发明的优点在于:本发明基于机器视觉的水下捕鱼方法,通过水下捕鱼装置配合鱼类识别分类、鱼类长度测量及重量预测的步骤实时监测鱼类生长情况,精准掌握最佳捕鱼时期;即通过图像处理,测量鱼类长度,实现精准捕捉,通过图像处理对鱼类重量进行估测,实时监测鱼类生长情况,使养殖收益最大化,进而可实现自动捕鱼、分鱼过程,简化了大量的捕鱼工作,提高工作效率;此外,结合水下机器人技术和图像识别技术,有助于减少人员劳动量、提高生产效率、增强自动化水平,具有理论与实际应用上的意义。

附图说明

下面结合附图和具体实施方式对本发明作进一步详细的说明。

图1是实施例基于机器视觉的水下捕鱼方法中鱼类识别分类的流程图。

图2是图1中图像采集与预处理的具体流程图。

图3是实施例基于机器视觉的水下捕鱼方法中鱼类长度测量及重量预测的流程图。

图4是实施例基于机器视觉的水下捕鱼方法中鱼体长度预测处理中间图像。

具体实施方式

下面的实施例可以使本专业的技术人员更全面地理解本发明,但并不因此将本发明限制在所述的实施例范围之中。

实施例

本实施例基于机器视觉的水下捕鱼方法中水下捕鱼装置,包括用于采集图像的康奈视in-sight7000型工业相机、用于黑暗环境照明的水下照明灯、用于诱导鱼儿的诱鱼灯装置和用于捕捉鱼儿的水下专用捕鱼网及水下机器人,其中,诱鱼灯装置包括三色led和变频发声器;此外,考虑到水下光传播的蓝绿偏移,水下照明灯选用为碘化铊灯,它辐射的光能大部分集中在蓝与绿范围内,水对它吸收很少;水下摄像机采用这种光源与白炽灯相比,在相同的功率条件下,效率在六倍以上。

本实施例基于机器视觉的水下捕鱼方法,通过水下捕鱼装置配合鱼类识别分类、鱼类长度测量及重量预测的步骤实时监测鱼类生长情况,精准掌握最佳捕鱼时期。

本实施例中,鱼类识别分类,如图1所示,具体包括如下步骤:

步骤(1):图像采集与预处理:如图2所示,水下摄像机采集到鱼类的彩色图片,通过改进的中值滤波器对原始图像进行滤波,然后对滤波后图片切割成矩形图像,然后使用grabcut算法对所述图像进行分割,得到去除背景后的分割图像,然后对分割图像进行灰度、形态学和二值化操作,获取到经过处理的鱼体二维二值图像;其中,grabcut算法采用rgb颜色空间,分别用一个k个高斯分量,一般取k=5的全协方差混合高斯模型gmm来对目标和背景进行建模,则存在一个额外的向量k={k1,...,kn,...,kn},其中kn就是第n个像素对应于那个高斯分量,kn∈{1,...k};其中,对于每个像素,来自于目标gmm的某个高斯分量,或来自于背景gmm的某个高斯分量,则用于整个图像的gibbs能量为:e(α,k,θ,z)=u(α,k,θ,z)+v(α,z);其中,u就是区域项,表示一个像素被归类为目标或者背景的惩罚,即是某个像素属于目标或者背景的概率的负对数,混合高斯密度模型是如下形式:且0≤πi≤1;grabcut是迭代最小的,每次迭代过程都使得对目标和背景建模的gmm的参数更优,使得图像分割更优,具体步骤如下:

步骤1:用户通过直接框选目标来得到一个初始的trimapt,即方框外的像素全部作为背景像素tb,而方框内tu的像素全部作为“可能是目标”的像素;

步骤2:对tb内的每一像素n,初始化像素n的标签αn=0,即为背景像素;而对tu内的每个像素n,初始化像素n的标签αn=1,即作为“可能是目标”的像素;

步骤3:经过步骤1和步骤2,分别得到属于目标(αn=1)的一些像素,剩下的为属于背景(αn=0)的像素,则通过这个像素来估计目标和背景的gmm了;同时,通过k-mean算法分别把属于目标和背景的像素聚类为k类,即gmm中的k个高斯模型,则gmm中每个高斯模型就具有了一些像素样本集,它的参数均值和协方差可以通过rgb值估计得到,则该高斯分量的权值可以通过属于该高斯分量的像素个数与总的像素个数的比值来确定。

作为实施例,更具体的实施方式为迭代最小化的具体步骤如下:

步骤1:对每个像素分配gmm中的高斯分量,即像素n是目标像素,那么把像素n的rgb值代入目标gmm中的每一个高斯分量中,概率最大的那个就是最有可能生成n的,也即像素n的第kn个高斯分量:

步骤2:对于给定的图像数据z,学习优化gmm的参数

步骤3:分割估计,通过高斯模型gmm分析的gibbs能量项,建立一个图,并求出权值t-link和n-link,然后通过maxflow/mincut算法来进行分割:

步骤4:重复步骤1到步骤3,直到收敛。

步骤(2):小波特征提取:

1)归一化处理:对步骤(1)的预处理图像进行归一化处理;

2)极坐标化:假设f(x,y)表示直角坐标上的二维二值图像,其标准矩定义为mpq=∫∫xpyqf(x,y)dxdy,由x=rcos(θ),y=rsin(θ)将上式转为极坐标系得到矩特征的一般表达式为fpq=∫∫f(r,θ)gp(r)ejqθrdrdθ,其中gp(r)为变换核的角度分量,ejqθ是变换核的角度分量;

3)旋转不变小波矩特征提取:令sq(r)=∫f(r,θ)ejqθdθ,则上式可写为fpq=∫sq(r)gp(r)rdr,可以证明图像发生旋转后特征值模||fpq||保持不变;选择适当的的基本小波ψ(r),然后通过伸展、平移来生成小波函数集ψm,n(r),m,n分别为尺度和平移变量,则小波矩不变量为||fm,n,q||=||∫sq(r)ψm,n(r)rdr||;

步骤(3):bp神经网络鱼类图像分类

1)网络初始化:将上述步骤获得的目标图像的矩特征作为bp网络的输入,进而识别目标;假设输入层的节点个数为n,隐含层的节点个数为l,输出层的节点个数为m,则输入层到隐含层的权重ωij,隐含层到输出层的权重为ωjk,输入层到隐含层的偏置为aj,隐含层到输出层的偏置为bk;学习速率为η,激励函数为g(x);其中,激励函数为g(x)取sigmoid函数,形式为:

2)计算隐含层和输出层输出:采用三层bp神经网络,隐含层输出为输出层的输出为

3)误差的计算:取误差公式为:其中yk为期望输出;记yk-ok=ek,则误差e可以表示为公式中i=1…n,j=1…l,k=1…m;

4)权值和偏置更新:

权值更新公式为:

偏置更新公式为:

5)输出单元产生的激活再与期望值相比较,判断算法是否已经收敛,如果收敛输出图像识别结果,否则跳转到2)。

本实施例中,鱼类长度测量及重量预测,如图3所示,具体包括如下步骤:

步骤1:鱼类样本长度和重量参数获取:通过测量大量同一种鱼类的长度和重量数据,并采用线性回归处理计算出二者之间存在的关系,并根据最终测得的鱼类长度来估测鱼类重量,进而评估整个渔场鱼类的生长情况,以及是否满足水下机器人的捕捉条件;

步骤2:鱼类长度信息提取:如图4所示,在水下专用捕鱼网的末端与之相平行的位置设置一个直径为5cm的圆,并且使其成像位置在整幅图片的左上角;在种类识别的预处理图像基础上,通过计算鱼类处理后图片的最左侧和最右侧的像素点个数和圆环直径的相熟点个数之比乘上圆环直径来计算出鱼的长度;

步骤3:长度误差补偿:鱼类距离水下专用捕鱼网口的距离为10-20cm,在计算鱼类长度时,加入5%-10%误差补偿;

步骤4:重量预测:将从预处理图像中提取出的长度信息输入到线性回归函数预测模型中,计算出鱼类重量近似重量。

以上显示和描述了本发明的基本原理和主要特征以及本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1