一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于机器视觉的水下鲑鱼重量估计方法及系统

2022-07-16 20:25:57 来源:中国专利 TAG:


1.本发明实施例涉及但不限于机器视觉技术领域,特别是涉及一种基于机器视觉的水下鲑鱼重量估计方法及系统。


背景技术:

2.为响应国家海洋强国战略,有必要提高我国渔业养殖的自动化水平。由于中国鲑鱼养殖市场的潜力很大,因此研究如何提升水产养殖的效率和降低管理难度有着重要的实际意义。
3.目前的水下养殖系统存在三大缺点。第一,设备只能在固定位置安放,无法移动且成本高昂。第二,水下养殖系统需要花费的成本极高。第三,一次只能检测一条鲑鱼,不够高效。


技术实现要素:

4.以下是对本文详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。
5.本发明实施例提供了一种基于机器视觉的水下鲑鱼重量估计方法及系统,能够低成本地实现水下预估鲑鱼重量,摄像头设备可以在水下自由移动,且一次能检测多条鲑鱼,大大提高工作效率。
6.第一方面,本发明实施例提供了一种基于机器视觉的水下鲑鱼重量估计方法,包括:
7.获取鲑鱼图片数据集,将所述鲑鱼图片数据集通过深度学习算法进行训练,得到鲑鱼识别模型;
8.通过摄像头拍摄水下图像;
9.利用所述鲑鱼识别模型识别并标注所述水下图像中的鲑鱼;
10.获取所述摄像头到所述鲑鱼的估计距离;
11.通过所述估计距离计算所述鲑鱼的估计长度;
12.根据所述估计长度得到所述鲑鱼的估计重量。
13.在一些实施例,所述深度学习算法为yolov5算法,所述摄像头为单目摄像头。
14.在一些实施例,在通过摄像头拍摄水下图像之前,还包括:
15.利用camera-imu模型对所述摄像头进行标定和畸变校正。
16.在一些实施例,所述利用所述鲑鱼识别模型识别并标注所述水下图像中的鲑鱼,包括:
17.利用所述鲑鱼识别模型识别所述水下图像中的鲑鱼;
18.采用矩形框的方式标注所述水下图像中的鲑鱼;
19.使用opencv处理所述水下图像,以提取所述鲑鱼的轮廓图;
20.将所述轮廓图与预设的鲑鱼形状进行比对,以确认所述鲑鱼的鱼身是否与所述摄
像头的镜头垂直。
21.在一些实施例,所述通过所述估计距离计算所述鲑鱼的估计长度,包括:
22.确定所述摄像头的拍摄焦距;
23.从所述矩形框中获取所述鲑鱼在所述水下图像的像素宽;
24.根据所述拍摄焦距、所述估计距离和所述像素宽计算所述鲑鱼的估计长度。
25.在一些实施例,所述根据所述拍摄焦距、所述估计距离和所述像素宽计算所述鲑鱼的估计长度,包括:
26.对所述估计距离和所述像素宽求积;
27.将所述估计距离和所述像素宽之积除以所述拍摄焦距,得到所述鲑鱼的估计长度。
28.在一些实施例,所述根据所述估计长度得到所述鲑鱼的估计重量,包括:
29.将所述鲑鱼的估计长度输入至估计函数,得到所述鲑鱼的估计重量,其中,所述估计函数通过机器学习对鲑鱼数据训练而得到。
30.第二方面,本发明实施例提供了一种基于机器视觉的水下鲑鱼重量估计系统,包括:
31.训练模块,用于获取鲑鱼图片数据集,将所述鲑鱼图片数据集通过深度学习算法进行训练,得到鲑鱼识别模型;
32.拍摄模块,用于通过摄像头拍摄水下图像;
33.识别模块,用于利用所述鲑鱼识别模型识别并标注所述水下图像中的鲑鱼;
34.获取模块,用于获取所述摄像头到所述鲑鱼的估计距离;
35.计算模块,用于通过所述估计距离计算所述鲑鱼的估计长度;
36.估重模块,用于根据所述估计长度得到所述鲑鱼的估计重量。
37.第三方面,本发明实施例提供了一种基于机器视觉的水下鲑鱼重量估计系统,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上第一方面所述的基于机器视觉的水下鲑鱼重量估计方法。
38.第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行程序,所述计算机可执行程序用于使计算机执行如上第一方面所述的基于机器视觉的水下鲑鱼重量估计方法。
39.本发明实施例包括:获取鲑鱼图片数据集,将鲑鱼图片数据集通过深度学习算法进行训练,得到鲑鱼识别模型;通过摄像头拍摄水下图像;利用鲑鱼识别模型识别并标注水下图像中的鲑鱼;获取摄像头到鲑鱼的估计距离;通过估计距离计算鲑鱼的估计长度;根据估计长度得到鲑鱼的估计重量。基于此,本发明能够低成本地实现水下预估鲑鱼重量,摄像头设备可以在水下自由移动,且一次能检测多条鲑鱼,大大提高工作效率。
40.本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
41.附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本
发明的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
42.图1是本发明一个实施例提供的一种基于机器视觉的水下鲑鱼重量估计方法的主流程图;
43.图2是本发明一个实施例提供的一种基于机器视觉的水下鲑鱼重量估计方法的子流程图;
44.图3是本发明一个实施例提供的一种基于机器视觉的水下鲑鱼重量估计方法的子流程图;
45.图4是本发明一个实施例提供的基于机器视觉的水下鲑鱼重量估计系统结构示意图;
46.图5是本发明另一个实施例提供的基于机器视觉的水下鲑鱼重量估计系统结构示意图。
具体实施方式
47.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
48.应了解,在本发明实施例的描述中,多个(或多项)的含义是两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。如果有描述到“第一”、“第二”等只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。
49.为响应国家海洋强国战略,有必要提高我国渔业养殖的自动化水平。由于中国鲑鱼养殖市场的潜力很大,因此研究如何提升水产养殖的效率和降低管理难度有着重要的实际意义。
50.目前的水下养殖系统存在三大缺点。第一,设备只能在固定位置安放,无法移动且成本高昂。第二,水下养殖系统需要花费的成本极高。第三,一次只能检测一条鲑鱼,不够高效。
51.针对现有技术中存在设备只能在固定位置安放,无法移动且成本高昂,水下养殖系统需要花费的成本极高,以及一次只能检测一条鲑鱼,不够高效的问题,尤其对于学习能力不强的老年人来说操作困难并不友好,本发明实施例提供了一种基于机器视觉的水下鲑鱼重量估计方法及系统,通过获取鲑鱼图片数据集,将鲑鱼图片数据集通过深度学习算法进行训练,得到鲑鱼识别模型;通过摄像头拍摄水下图像;利用鲑鱼识别模型识别并标注水下图像中的鲑鱼;获取摄像头到鲑鱼的估计距离;通过估计距离计算鲑鱼的估计长度;根据估计长度得到鲑鱼的估计重量。基于此,本发明能够低成本地实现水下预估鲑鱼重量,摄像头设备可以在水下自由移动,且一次能检测多条鲑鱼,大大提高工作效率。
52.如图1所示,图1是本发明一个实施例提供的一种基于机器视觉的水下鲑鱼重量估计方法的流程图。基于机器视觉的水下鲑鱼重量估计方法包括但不限于如下步骤:
53.步骤101,获取鲑鱼图片数据集,将鲑鱼图片数据集通过深度学习算法进行训练,得到鲑鱼识别模型;
54.步骤102,通过摄像头拍摄水下图像;
55.步骤103,利用鲑鱼识别模型识别并标注水下图像中的鲑鱼;
56.步骤104,获取摄像头到鲑鱼的估计距离;
57.步骤105,通过估计距离计算鲑鱼的估计长度;
58.步骤106,根据估计长度得到鲑鱼的估计重量。
59.可以理解的是,本发明可以在水下通过机器视觉来估计鲑鱼的重量,用以评估水下养殖鲑鱼的情况。具体可以通过获取鲑鱼图片数据集,将鲑鱼图片数据集通过深度学习算法进行训练,得到鲑鱼识别模型;通过摄像头拍摄水下图像;利用鲑鱼识别模型识别并标注水下图像中的鲑鱼;获取摄像头到鲑鱼的估计距离;通过估计距离计算鲑鱼的估计长度;根据估计长度得到鲑鱼的估计重量。基于此,本发明能够低成本地实现水下预估鲑鱼重量,摄像头设备可以在水下自由移动,且一次能检测多条鲑鱼,大大提高工作效率。
60.可以理解的是,深度学习算法可以采用yolov5算法,摄像头可以采用单目摄像头。。
61.可以理解的是,本发明可以利用camera-imu模型对摄像头进行标定消除畸变,例如可以通过水下机器人使用玻璃使摄像头实现防水,但光线透过玻璃带来很大的畸变,在当玻璃薄到可以忽略不计时,问题就可以简化为只有一个空气-水界面,于是基于以下等式消除畸变:
62.n1sinθ1=n2sinθ2。
63.可以理解的是,基于yolov5,使用鲑鱼图片数据集训练模型,使模型能快速地识别出水中的鲑鱼,并且实时地将其用矩形框标注出来。再使用opencv处理图像(只处理矩形框内的以提高运行效率)得出鲑鱼的轮廓图,具体方法是:先用高斯滤波器去除噪声,然后转化成灰度图并用canny算子得到轮廓,再用这个轮廓图与预设的鲑鱼形状进行比对,确认鱼身是否与镜头垂直。以下是预设的鲑鱼图,经过处理得到轮廓和一点调整后就可用于比对了。
64.可以理解的是,在标定摄像头的时候可以得到焦距f,假设我们有一个宽度为w0的目标或者物体。然后我们将这个目标放在距离我们的相机为d0的位置。我们用相机对物体进行拍照并且测量物体的像素宽度p0,由于摄像头的成像原理可以等效成小孔成像,于是可以得到一组相似三角形,根据相似三角形我们就得出了相机焦距的公式如下:
65.f=(p
0 x d0)/w066.然后结合激光测距模块(pls-k-100)获取摄像头到鱼的实际距离d,从矩形框中得出鲑鱼在图像上的像素宽p,可以得到以下计算物体实际长度的公式如下:
67.w=(d x p)/f
68.接着通过机器学习利用大量数据训练出一个函数,把得到的鱼的长度输入函数得出鱼的估计重量,图x是机器学习的数据集,最后将数据回传到客户端。
69.如图2所示,步骤103可以包括但不限于如下子步骤:
70.步骤201,利用鲑鱼识别模型识别水下图像中的鲑鱼;
71.步骤202,采用矩形框的方式标注水下图像中的鲑鱼;
72.步骤203,使用opencv处理水下图像,以提取鲑鱼的轮廓图;
73.步骤204,将轮廓图与预设的鲑鱼形状进行比对,以确认鲑鱼的鱼身是否与摄像头的镜头垂直。
74.可以理解的是,可以基于yolov5,使用鲑鱼图片数据集训练模型,使模型能快速地识别出水中的鲑鱼,并且实时地将其用矩形框标注出来。再使用opencv处理图像(只处理矩形框内的以提高运行效率)得出鲑鱼的轮廓图,具体方法是:先用高斯滤波器去除噪声,然后转化成灰度图并用canny算子得到轮廓,再用这个轮廓图与预设的鲑鱼形状进行比对,确认鱼身是否与镜头垂直。以下是预设的鲑鱼图,经过处理得到轮廓和一点调整后就可用于比对了。
75.如图3所示,步骤105可以包括但不限于如下子步骤:
76.步骤301,确定摄像头的拍摄焦距;
77.步骤302,从矩形框中获取鲑鱼在水下图像的像素宽;
78.步骤303,根据拍摄焦距、估计距离和像素宽计算鲑鱼的估计长度。
79.可以理解的是,通过对估计距离和像素宽求积,将估计距离和像素宽之积除以拍摄焦距,可以得到鲑鱼的估计长度。
80.可以理解的是,在标定摄像头的时候可以得到焦距f,假设我们有一个宽度为w0的目标或者物体。然后我们将这个目标放在距离我们的相机为d0的位置。我们用相机对物体进行拍照并且测量物体的像素宽度p0,由于摄像头的成像原理可以等效成小孔成像,于是可以得到一组相似三角形,根据相似三角形我们就得出了相机焦距的公式如下:
81.f=(p
0 x d0)/w082.然后结合激光测距模块(pls-k-100)获取摄像头到鱼的实际距离d,从矩形框中得出鲑鱼在图像上的像素宽p,可以得到以下计算物体实际长度的公式如下:
83.w=(d x p)/f。
84.可以理解的是,可以将鲑鱼的估计长度输入至估计函数,得到所述鲑鱼的估计重量,其中,估计函数通过机器学习对鲑鱼数据训练而得到。
85.基于此,本发明能够低成本地实现水下预估鲑鱼重量,摄像头设备可以在水下自由移动,且一次能检测多条鲑鱼,大大提高工作效率。
86.以下结合具体实施例进一步介绍本发明提供的基于机器视觉的水下鲑鱼重量估计方法。
87.本发明可以在水下通过机器视觉来估计鲑鱼重量,用以评估水下养殖鱼情况。
88.(1)利用camera-imu模型对摄像头进行标定消除畸变,例如可以通过水下机器人使用玻璃使摄像头实现防水,但光线透过玻璃带来很大的畸变,在当玻璃薄到可以忽略不计时,问题就可以简化为只有一个空气-水界面,于是基于以下等式消除畸变:
89.n
1 sinθ1=n
2 sinθ2。
90.(2)基于yolov5,使用鲑鱼图片数据集训练模型,使模型能快速地识别出水中的鲑鱼,并且实时地将其用矩形框标注出来。再使用opencv处理图像(只处理矩形框内的以提高运行效率)得出鲑鱼的轮廓图,具体方法是:先用高斯滤波器去除噪声,然后转化成灰度图并用canny算子得到轮廓,再用这个轮廓图与预设的鲑鱼形状进行比对,确认鱼身是否与镜头垂直。以下是预设的鲑鱼图,经过处理得到轮廓和一点调整后就可用于比对了。
91.(3)在标定摄像头的时候可以得到焦距f,假设我们有一个宽度为w0的目标或者物体。然后我们将这个目标放在距离我们的相机为d0的位置。我们用相机对物体进行拍照并且测量物体的像素宽度p0,由于摄像头的成像原理可以等效成小孔成像,于是可以得到一
组相似三角形,根据相似三角形我们就得出了相机焦距的公式如下:
92.f=(p
0 x d0)/w093.(4)然后结合激光测距模块(pls-k-100)获取摄像头到鱼的实际距离d,从矩形框中得出鲑鱼在图像上的像素宽p,可以得到以下计算物体实际长度的公式如下:
94.w=(d x p)/f
95.(5)接着通过机器学习利用大量数据训练出一个函数,把得到的鱼的长度输入函数得出鱼的估计重量,最后将数据回传到客户端。
96.如图4所示,本发明实施例还提供了一种基于机器视觉的水下鲑鱼重量估计系统,包括:
97.训练模块,用于获取鲑鱼图片数据集,将鲑鱼图片数据集通过深度学习算法进行训练,得到鲑鱼识别模型;
98.拍摄模块,用于通过摄像头拍摄水下图像;
99.识别模块,用于利用鲑鱼识别模型识别并标注水下图像中的鲑鱼;
100.获取模块,用于获取摄像头到鲑鱼的估计距离;
101.计算模块,用于通过估计距离计算鲑鱼的估计长度;
102.估重模块,用于根据估计长度得到鲑鱼的估计重量。
103.可以理解的是,训练模块获取鲑鱼图片数据集,将鲑鱼图片数据集通过深度学习算法进行训练,得到鲑鱼识别模型,拍摄模块通过摄像头拍摄水下图像,识别模块利用鲑鱼识别模型识别并标注水下图像中的鲑鱼,获取模块获取摄像头到鲑鱼的估计距离,计算模块通过估计距离计算鲑鱼的估计长度,估重模块根据估计长度得到鲑鱼的估计重量。基于此,本系统能够低成本地实现水下预估鲑鱼重量,摄像头设备可以在水下自由移动,且一次能检测多条鲑鱼,大大提高工作效率。
104.如图5所示,本发明实施例还提供了一种基于机器视觉的水下鲑鱼重量估计系统。
105.在一实施方式中,该基于机器视觉的水下鲑鱼重量估计系统可以包括:一个或多个处理器和存储器,图5中以一个处理器及存储器为例。处理器和存储器可以通过总线或者其他方式连接,图5中以通过总线连接为例。基于机器视觉的水下鲑鱼重量估计系统外部与至少一个摄像机连接,连接方式可以是无线或有线,基于机器视觉的水下鲑鱼重量估计系统可以控制摄像机运作。
106.存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序,如上述本发明实施例中的基于机器视觉的水下鲑鱼重量估计方法。处理器通过运行存储在存储器中的非暂态软件程序以及程序,从而实现上述本发明实施例中的基于机器视觉的水下鲑鱼重量估计方法。
107.存储器可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储执行上述本发明实施例中的基于机器视觉的水下鲑鱼重量估计方法所需的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该基于机器视觉的水下鲑鱼重量估计系统。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
108.实现上述本发明实施例中的基于机器视觉的水下鲑鱼重量估计方法所需的非暂态软件程序以及程序存储在存储器中,当被一个或者多个处理器执行时,执行上述本发明实施例中的基于机器视觉的水下鲑鱼重量估计方法,例如,执行以上描述的图1中的方法步骤101至步骤106,图2中的方法步骤201至步骤204,图3中的方法步骤301至步骤303,通过获取鲑鱼图片数据集,将鲑鱼图片数据集通过深度学习算法进行训练,得到鲑鱼识别模型;通过摄像头拍摄水下图像;利用鲑鱼识别模型识别并标注水下图像中的鲑鱼;获取摄像头到鲑鱼的估计距离;通过估计距离计算鲑鱼的估计长度;根据估计长度得到鲑鱼的估计重量。基于此,本发明能够低成本地实现水下预估鲑鱼重量,摄像头设备可以在水下自由移动,且一次能检测多条鲑鱼,大大提高工作效率。
109.此外,本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机可执行程序,该计算机可执行程序被一个或多个控制处理器执行,例如,被图5中的一个处理器执行,可使得上述一个或多个处理器执行上述本发明实施例中的基于机器视觉的水下鲑鱼重量估计方法,例如,执行以上描述的图1中的方法步骤101至步骤106,图2中的方法步骤201至步骤204,图3中的方法步骤301至步骤303,通过获取鲑鱼图片数据集,将鲑鱼图片数据集通过深度学习算法进行训练,得到鲑鱼识别模型;通过摄像头拍摄水下图像;利用鲑鱼识别模型识别并标注水下图像中的鲑鱼;获取摄像头到鲑鱼的估计距离;通过估计距离计算鲑鱼的估计长度;根据估计长度得到鲑鱼的估计重量。基于此,本发明能够低成本地实现水下预估鲑鱼重量,摄像头设备可以在水下自由移动,且一次能检测多条鲑鱼,大大提高工作效率。
110.本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读程序、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于ram、rom、eeprom、闪存或其他存储器技术、cd-rom、数字多功能盘(dvd)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读程序、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
111.以上是对本发明的较佳实施进行了具体说明,但本发明并不局限于上述实施方式,熟悉本领域的技术人员在不违背本发明精神的共享条件下还可作出种种等同的变形或替换,这些等同的变形或替换均包括在本发明权利要求所限定的范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献