1.本技术涉及机器视觉领域,具体涉及一种基于机器视觉的鱼类养殖控制系统。
背景技术:2.在鱼类养殖的过程中,对所养殖的鱼类进行适量的鱼饲料投放,可以使鱼类以最佳的生长速度进行生长。
3.目前在鱼类养殖的过程中,主要根据养殖人员的经验确定鱼饲料的投放速度,以所确定的投放速度进行鱼饲料投放,并通过人工留守观察的方式观察鱼群的进食状态,从而确定停止鱼饲料投放的具体时间。
4.然而,上述鱼类养殖过程中鱼饲料的投放方式下,通过人工进行留守观察鱼群的进食状态需要占用观察人员大量的时间,导致效率低下,同时,人工对鱼群的进食状态进行观察受观察人员的养殖经验以及视力的限制,且对于大规模的鱼类养殖,有限数量的观察人员难以高效兼顾所有的养殖区域。
技术实现要素:5.针对上述技术问题,本发明提供了一种基于机器视觉的鱼类养殖控制系统,通过对包含鱼群的水体图像进行处理,能够获得鱼群在饲料投放过程中的进食状态,以根据鱼群的进食状态适时停止鱼饲料投放行为,避免了人工进行留守观察,提高了对鱼类养殖过程中鱼饲料投放过程的效率。
6.本发明实施例提出了一种基于机器视觉的鱼类养殖控制系统,包括:投料模块,用于以预定速度向投喂区域投放鱼饲料。
7.图像采集模块,用于采集投放鱼饲料过程中投喂区域处包含鱼群的第一水体表面图像。
8.关键点检测模块,用于将第一水体表面图像输入至关键点检测网络,获得鱼群关键点热图。
9.聚集度计算模块,用于根据鱼群关键点热图获取其中预定比例的关键点的最小凸包,并根据最小凸包中所包含的各关键点到最小凸包的形心的距离获取鱼群的聚集度。
10.积极度计算模块,根据每一关键点在相邻多帧鱼群关键点热图中的移动距离以及移动角度,获得鱼群的积极度。
11.反馈控制模块,用于根据所获得的聚集度以及积极度获取鱼群的摄食特征参数,并在摄食特征参数小于预设阈值的情况下,控制投料模块停止向投喂区域中投放鱼饲料。
12.进一步的,基于机器视觉的鱼类养殖控制系统,聚集度计算模块中,根据最小凸包中所包含的各关键点到最小凸包的形心的距离获取鱼群的聚集度的公式如下:
其中,为鱼群的聚集度,n为最小凸包中所包含的关键点的数量,为最小凸包中第n个关键点到最小凸包的形心的距离,e为自然常数。
13.进一步的,基于机器视觉的鱼类养殖控制系统,积极度计算模块中,根据每一关键点在相邻多帧鱼群关键点热图中的移动距离以及移动角度,获得鱼群的积极度的公式如下:其中,为鱼群的积极度,为第m个关键点在相邻多帧鱼群关键点热图中的移动距离,m为关键点的数量,为第m个关键点在相邻多帧鱼群关键点热图中的移动角度,exp为以自然常数为底数的指数函数,为相邻多帧鱼群关键点热图中包含的关键点热图的帧数。
14.进一步的,基于机器视觉的鱼类养殖控制系统,反馈控制模块用于将积极度与1进行求和,并将求和结果与聚集度进行乘积,将乘积结果作为鱼群的摄食特征参数。
15.进一步的,基于机器视觉的鱼类养殖控制系统,还包括音频播放模块。所述音频播放模块用于在投料模块投放鱼饲料前播放预先设定的音频。
16.进一步的,基于机器视觉的鱼类养殖控制系统,图像采集模块还用于采集投料模块未投料时投喂区域的第二水体表面图像。
17.进一步的,基于机器视觉的鱼类养殖控制系统,还包括:水质检测模块,用于基于图像采集模块所采集的第二水体表面图像,获得投喂区域处水体的浊度指标,其中,投喂区域的浊度指标越大,投喂区域处的水体越浑浊。
18.水质调节模块,用于在浊度指标大于浊度阈值的情况下,对投喂区域处水体的水质进行调节。
19.进一步的,基于机器视觉的鱼类养殖控制系统,水质检测模块中,将第二水体表面图像的灰度熵作为投喂区域处水体的浊度指标。
20.进一步的,基于机器视觉的鱼类养殖控制系统,水质调节模块用于利用水泵对投喂区域处水体进行换水,直至浊度指标不大于浊度阈值,或者,利用循环过滤装置对投喂区域处水体进行循环过滤,直至浊度指标不大于浊度阈值。
21.进一步的,基于机器视觉的鱼类养殖控制系统,还包括投喂次数确定模块。
22.所述投喂次数确定模块,用于基于同一投喂区域处水体在前一天中不同时刻的浊度指标,确定后一天中投喂区域处的投喂次数。
23.本发明实施例提供了一种基于机器视觉的鱼类养殖控制系统,相比于现有技术,本发明实施例的有益效果在于:通过对包含鱼群的水体图像进行处理,能够获得鱼群在饲料投放过程中的进食状态,以根据鱼群的进食状态适时停止鱼饲料投放行为,避免了人工进行留守观察,提高了对鱼类养殖过程中鱼饲料投放过程的效率。
附图说明
24.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本
发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
25.图1是本发明实施例提供的一种基于机器视觉的鱼类养殖控制系统的结构示意图。
具体实施方式
26.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
27.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本技术实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本技术。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本技术的描述。
28.术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征;在本实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
29.请参阅图1,本发明实施例提供了一种基于机器视觉的鱼类养殖控制系统,用于在向鱼类进行鱼饲料投放的过程中,通过机器视觉获取鱼群的摄食行为,以根据鱼群的摄食行为对鱼饲料投放行为自动进行控制。该鱼类养殖控制系统包括投料模块100、图像采集模块200、关键点检测模块300、聚集度计算模块400、积极度计算模块500以及反馈控制模块600。其中,投料模块设置于鱼类养殖区域中,本发明实施例中鱼类养殖区域可以是鱼塘,也可以是用于进行鱼类养殖的集装箱。
30.投料模块100,用于以预定速度向投喂区域投放鱼饲料,所述投喂区域为预先设定的用于投放鱼饲料的区域。同时本发明实施例中投喂区域位于鱼类养殖区域中,实施者可以根据实际情况,具体确定投喂区域所设置的数量以及每一投喂区域的具体位置。
31.作为一个优选的实施例,本发明实施例中还可以设置有音频播放模块,其用于在投料模块100投放鱼饲料前播放预先设定的音频,如此,经过多次在进行投放饲料前播放相同的预先设定的音频,在后续鱼饲料投放前播放该音频时,鱼群可以更快地聚集至投喂区域进行摄食,从而缩短鱼饲料投放所需要的时长。
32.图像采集模块200,用于采集投料模块进行投料过程中投喂区域处包含鱼群的第一水体表面图像。本发明实施例中所采用的图像采集模块,可以是包括工业相机在内的图像采集设备。
33.关键点检测模块300,用于将第一水体表面图像输入至关键点检测网络,获得鱼群关键点热图。设置该模块的目的在于:能够通过水体表面图像获取鱼群的关键点热图,从而获取鱼群在摄食的过程中的分布情况,且便于后续通过相邻多帧的鱼群关键点热图获取鱼群在摄食过程中的移动情况,其中,本发明实施例中每一尾鱼至少对应一个关键点。
34.需要说明的是,关键点检测网络可以通过预先训练获得,获得过程可以包括:利用
带有关键点的标注图像以及包含鱼群的图像对关键点检测网络进行训练,在完成训练过程后,可以根据关键点检测网络利用包含鱼群的图像输出关键点热图,训练过程中所采用的损失函数可以是交叉熵损失函数。
35.聚集度计算模块400,用于获取鱼群关键点热图中包括预定比例的关键点的最小凸包,并根据最小凸包中所包含的各关键点到最小凸包的形心的距离获取鱼群的聚集度。
36.在获得鱼群关键点热图后,可以获取鱼群关键点热图中包括预定比例的关键点的最小凸包,所设置的预定比例可以根据实施者的实际需求进行设定,本发明实施例中对于预定比例的示例为90%。
37.需要说明的是,凸包指的能够包含所有期望包括的点的多边形,本发明实施例中选取预定比例的关键点即可反映鱼群的聚集程度,同时,相较于选取所有的关键点,选取预设比例的关键点进行最小凸包获取,能够反映鱼群的聚集程度的同时可以减少计算量。
38.本发明实施例在获取到最小凸包后,可以根据最小凸包中各关键点到最小凸包的形心的距离,反映鱼群是否存在较大程度的聚集,同时,本发明实施例中鱼群的聚集度的获得过程包括:其中,为鱼群的聚集度,n为最小凸包中所包含的关键点的数量,为最小凸包中第n个关键点到最小凸包的形心的距离,e为自然常数。在进行鱼饲料投喂的过程中,鱼群常常会为了抢食临近的鱼饲料造成鱼群聚集,因此,本发明实施例能够反映鱼群的聚集特征。
39.积极度计算模块500,根据每一关键点在相邻多帧鱼群关键点热图中的移动距离以及移动角度,获得鱼群的积极度。
40.由于在进行鱼饲料投放的过程中,鱼群会为了抢食鱼饲料而发生移动,在此过程中鱼在一定时间内进行移动的距离以及角度,均可以表征其发生移动的程度。
41.本发明实施例的积极度计算模块中,通过根据每一关键点在相邻多帧鱼群关键点热图中的移动距离以及移动角度,获得鱼群的积极度,包括:其中,为鱼群的积极度,为第m个关键点在相邻多帧鱼群关键点热图中的移动距离,m为关键点的数量,为第m个关键点在相邻多帧鱼群关键点热图中的移动角度,exp为以自然常数为底数的指数函数,为相邻多帧鱼群关键点热图中包含的关键点热图的帧数。
42.需要说明的是,关键点在相邻多帧鱼群关键点热图中的移动角度,指的是关键点在响铃多帧鱼群关键点热图中的累计移动角度,例如,在采用相邻三帧鱼群关键点热图的情况下,可以通过关键点匹配,获取同一关键点分别在这相邻的三帧鱼群关键点热图中所处的位置,将该同一关键点分别在这相邻的三帧关键点热图中的位置形成的夹角作为关键点的移动角度。
43.作为一个优选的实施例,可以在计算活跃度之前,通过关键点对应的移动角度以及移动距离,实现对关键点的筛选,然后将对筛选出的关键点的积极度计算结果作为鱼群的积极度。例如,将对关键点的筛选条件设置为移动角度大于30度或者移动距离大于20cm,具体筛选条件可以根据鱼类养殖区域中所养殖的鱼类的品种以及鱼群的当前养殖阶段确定,养殖阶段指的是投放鱼苗至今的累计天数。
44.反馈控制模块600,用于根据所获得的聚集度以及积极度获取鱼群的摄食特征参数,并在摄食特征参数小于预设阈值的情况下,控制投料模块100停止投放鱼饲料。
45.本发明实施例将对聚集度以及积极度进行综合考虑,从而获得能够同时反映聚集度以及积极度的鱼群的摄食特征参数,同时,摄食特征参数的获得过程包括:将积极度与1进行求和,并将求和结果与聚集度进行乘积,将乘积结果作为鱼群的摄食特征参数,所获取的摄食特征参数越大,鱼群越活跃同时进越积极。如此,可以通过所获取的鱼群的摄食特征参数对鱼饲料投放过程进行控制。
46.最后,在本发明实施例的反馈控制模块600中,可以在摄食特征参数小于预设阈值的情况下,控制投料模块100停止投放鱼饲料,从而实现对鱼饲料投放过程的自动控制。
47.需要说明的是,本发明实施例中所设置的预设阈值,可以是预先配置的,也可以根据实施者的需求进行调整。
48.作为一种可选的实施方式,为进一步表征鱼群的摄食状态,在获得鱼群的关键点热力图之后,可以获取关键点热力图中所有关键点的聚集中心,然后以该聚集中心为圆心,获取多个同心的圆环,每个圆环对应一个活动圈,本发明实施例中将以半径加倍的方式进行获取多个同心圆,例如,获取以聚类中心为圆心半径为20cm的圆形区域,距离该圆形区域最近的首个圆环外侧圆形的半径为40cm,与该首个圆环相邻的下一个圆环的外侧圆形的半径为80cm,并以此完成对所有圆环区域的获取,直至所有的圆环与圆形区域实现对所有关键点的覆盖。
49.然后,可以根据所获取的每一圆环以及初始的圆形区域中所包含的关键点的数量,可以获取鱼群的活动熵:式中,h为鱼群的活动熵,k为圆形区域以及圆环的数量,为第k个圆环中关键点数量占所有关键点的比例,所获得的活动熵越大,则投喂过程中鱼群越活跃,可以对投喂过程中鱼群的状态进行表征。
50.可选的,可以分别对所获取的活动熵以及摄食特征参数归一化至[0,1]范围内,并对归一化后的活动熵以及摄食特征参数进行平均加权求和,将平均加权求和结果作为对摄食特征参数更新后的结果。如此,所获得的更新后的摄食特征参数中包含更多的鱼群进行摄食的特征,能够更好地反映鱼群的状态。
[0051]
进一步的,本发明实施例中图像采集模块200除了用于采集投料模块进行投料过程中投喂区域处包含鱼群的第一水体表面图像以外,还可以用于采集投料模块未进行投料时投喂区域处的第二水体图像。
[0052]
更进一步的,本发明实施例中鱼类养殖控制系统中还可以设置有水质检测模块以
及水质调节模块。具体的,水质检测模块用于基于图像采集模块200所采集的第二水体表面图像,获得投喂区域处水体的浊度指标,其中,投喂区域的浊度指标越大,投喂区域处的水体越浑浊。
[0053]
水质检测模块中,基于图像采集模块所采集的第二水体表面图像,获得投喂区域处水体的浊度指标,包括:将第二水体表面图像的灰度熵作为投喂区域处水体的浊度指标。由于通过灰度图像的灰度熵能够反映图像的问题复杂程度,且在相同光照下,由于水质浑浊的水体中所存在的饲料颗粒或者鱼类粪便等悬浮颗粒物,水质浑浊的水质相较于清澈的水体,其所包含的纹理信息更多,直接表现为灰度熵更大,因此,本发明实施例将第二水体图像的灰度熵来作为浊度指标。
[0054]
具体的,本发明实施例中所设置的水质调节模块,用于在浊度指标大于浊度阈值的情况下,对投喂区域处水体的水质进行调节。对于水质的调节包括:利用水泵对投喂区域处水体进行换水,或者,利用循环过滤装置对投喂区域处水体进行循环过滤,直至浊度指标不大于浊度阈值。
[0055]
进一步的,本发明实施例中鱼类养殖控制系统中还可以包括投喂次数确定模块,其用于基于同一投喂区域处水体在前一天中不同时刻的浊度指标,确定后一天中投喂区域处的投喂次数。由于水体的水质较为浑浊的情况下,依然按照原有的投喂次数进行投喂,可能造成水质的进一步恶化,同时还有可能引起所饲养的鱼类患病。因此,前一天的不同时刻的浊度指标的平均值大于预先设定的数值时,可以将后一天的投喂次数减少,且每天投喂次数不少于2次,同时,投料模块在一天中具体的投喂开始时间,以及相邻两次投喂过程的开始时间的间隔,可以根据实施者的经验进行具体确定。
[0056]
综上所述,本发明实施例提供了一种基于机器视觉的鱼类养殖控制系统,通过对包含鱼群的水体图像进行处理,能够获得鱼群在饲料投放过程中的进食状态,以根据鱼群的进食状态适时停止鱼饲料投放行为,避免了人工进行留守观察,提高了对鱼类养殖过程中鱼饲料投放过程的效率。
[0057]
本发明中涉及诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
[0058]
还需要指出的是,在本发明的方法和系统中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。
[0059]
上述实施例仅仅是为清楚地说明所做的举例,并不构成对本发明的保护范围的限制。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动,这里无需也无法对所有的实施方式予以穷举。凡是与本发明相同或相似的设计均属于本发明的保护范围之内。