一种动物状态监测方法、装置、电子设备及存储介质
技术领域
本申请涉及图像处理领域,尤其涉及一种动物状态监测方法、装置、电子设备及存储介质。
背景技术
作为传统农牧业大国,猪养殖行业一直在我国占据主导。目前,我国猪养殖行业不断发展,养猪业逐渐趋向规模化养殖,但饲养方式比较传统,粗糙,存在效率低、耗费劳动力、不卫生等问题,因此需要制定科学养殖方法提高猪养殖技术。
在养殖猪的过程中,猪的行为并不一定受人控制,很多异常行为被忽视导致群体出现问题,比如由于气温过低导致的猪只异常扎堆现象,如果不能够及时发现并采取相应的措施就会引发大面积猪病变,进而引发猪瘟。
现有技术中,猪异常行为主要通过人工监测。饲养员定时进行观察,发现异常后进行汇报或根据异常情况进行相应的操作,如将养殖区域的温度调高等等。但是,人工观察监测方式准确度较低,且反馈不及时。另外,人工监测耗费人力成本和时间成本较高。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本申请实施例提供了一种动物状态监测方法、装置、电子设备及存储介质。
第一方面,本申请实施例提供了一种动物状态监测方法,包括:
获取养殖区域图像,所述养殖区域图像中包括至少两个动物;
通过预先训练的动物分割模型对所述养殖区域图像中的动物进行分割,得到动物聚集信息;
根据所述动物聚集信息确定动物状态。
可选的,所述通过预先训练的动物分割模型对所述养殖区域图像中的动物进行分割,得到动物聚集信息,包括:
通过所述动物分割模型从所述养殖区域图像中分割出动物前景,形成第一掩模图像;
对所述第一掩模图像进行腐蚀处理,当所述第一掩模图像中目标区域的连接部分符合第一预设条件时,将所述连接部分断开,得到第二掩模图像;
根据所述第二掩模图像确定目标区域;
根据所述目标区域确定所述动物聚集信息。
可选的,所述根据所述目标区域确定所述动物聚集信息,包括:
确定所述目标区域的以下至少一项区域信息:数量、面积及位置;
根据所述区域信息确定所述动物聚集信息。
可选的,所述方法还包括:
获取食槽位置信息;
所述根据所述动物聚集信息确定动物状态,包括:
当所述动物聚集信息符合第二预设条件时,确定所述动物状态为异常;
所述动物聚集信息符合第二预设条件,包括:
所述目标区域的数量为1,且根据所述食槽位置信息确定所述目标区域的位置不在食槽位置;
或,
所述目标区域的数量大于1,最大目标区域的面积大于或等于最小目标区域面积的预设倍数,且根据所述食槽位置信息确定最大目标区域的位置不在食槽位置。
可选的,当所述动物状态为异常时,所述方法还包括:
获取所述养殖区域图像对应的区域标识;
根据所述区域标识执行预设提醒操作。
可选的,当所述动物状态为异常时,所述方法还包括:
确定所述区域标识对应的养殖区域及设置于所述养殖区域内的环境控制设备;
生成环境调节指令,所述环境调节指令用于控制所述环境控制设备调节所述养殖区域的环境参数;
将所述环境调节指令发送到所述环境控制设备。
可选的,所述获取养殖区域图像,包括:
获取对至少两个养殖区域进行拍摄得到的巡检视频及所述养殖区域对应的区域标识;
从所述巡检视频中截取所述养殖区域对应的养殖区域图像,所述养殖区域图像与所述区域标识关联。
可选的,所述动物分割模型基于预设语义分割模型训练得到;
所述预设语义分割模型包括多个瓶颈模块;
所述瓶颈模块包括:依次连接的第一卷积层、转置卷积层和第二卷积层;
所述转置卷积层,获取下采样时的最大索引位置,对下采样输出矩阵中所述最大索引位置之外的位置做补0扩充操作后,得到上采样输入矩阵,对所述上采样输入矩阵进行反卷积计算。
第二方面,本申请实施例提供了一种动物状态监测装置,包括:
获取模块,用于获取养殖区域图像,所述养殖区域图像中包括至少两个动物;
分割模块,用于通过预先训练的动物分割模型对所述养殖区域图像中的动物进行分割,得到动物聚集信息;
确定模块,用于根据所述动物聚集信息确定动物状态。
第三方面,本申请实施例提供了一种电子设备,包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行计算机程序时,实现上述方法步骤。
第四方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述方法步骤。
本申请实施例提供的上述技术方案与现有技术相比具有如下优点:
基于计算机视觉方式,通过预先训练的模型从图像中分割出动物,分析得到动物聚集信息,根据动物聚集信息确定动物状态,从而实现对动物状态的自动监测,可以及时、准确地发现动物异常情况,防止动物疫病的发生,保证动物健康,提高养殖效益。另外,无需人工监测,降低人力成本及时间成本。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种动物状态监测方法的流程图;
图2为本申请另一实施例提供的一种动物状态监测方法的流程图;
图3为本申请实施例提供的瓶颈模块示意图;
图4为本申请实施例提供的养殖区域图像;
图5为本申请实施例提供的通过动物分割模型对养殖区域图像处理后得到的第一掩模图像;
图6为本申请实施例提供的对图5中的第一掩模图像腐蚀处理后的第二掩模图像;
图7为本申请另一实施例提供的养殖区域图像;
图8为本申请另一实施例提供的通过动物分割模型对养殖区域图像处理后得到的第一掩模图像;
图9为本申请另一实施例提供的一种动物状态监测方法的流程图;
图10为本申请实施例提供的一种动物状态监测装置的框图;
图11为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例通过计算机视觉的方式,基于预先训练的分割模型从养殖区域图像中分割得到动物聚集信息,进而判断动物状态是否异常。
下面首先对本发明实施例所提供的一种动物状态监测方法进行介绍。
图1为本申请实施例提供的一种动物状态监测方法的流程图。如图1所示,该方法包括以下步骤:
步骤S11,获取养殖区域图像,养殖区域图像中包括至少两个动物;
步骤S12,通过预先训练的动物分割模型对养殖区域图像中的动物进行分割,得到动物聚集信息;
步骤S13,根据动物聚集信息确定动物状态。
本实施例中,基于计算机视觉方式,通过预先训练的模型从图像中分割出动物,分析得到动物聚集信息,根据动物聚集信息确定动物状态,从而实现对动物状态的自动监测,可以及时、准确地发现动物异常情况,防止动物疫病的发生,保证动物健康,提高养殖效益。另外,无需人工监测,降低人力成本及时间成本。
在一个可选实施例中,上述步骤S11包括:获取对至少两个养殖区域进行拍摄得到的巡检视频及养殖区域对应的区域标识;从巡检视频中截取养殖区域对应的养殖区域图像,养殖区域图像与区域标识关联。
例如,养殖场内有多个养殖区域,在养殖区域上方设有轨道,巡检车在轨道上行驶,同时巡检车上的摄像装置拍摄下方巡检区域,得到巡检视频。由于巡检车一般是按照一定顺序运行拍摄,而每个养殖区域都有其对应的区域标识。因此,从该巡检视频中可截取各个养殖区域对应的养殖区域图像,且将养殖区域图像与养殖区域对应的区域标识关联。这样,后续通过计算机视觉方式可以从每个养殖区域对应的图像中检测出动物聚集情况,从而确定动物是否存在异常。
图2为本申请另一实施例提供的一种动物状态监测方法的流程图。如图2所示,上述步骤S12包括以下步骤:
步骤S21,通过动物分割模型从养殖区域图像中分割出动物前景,形成第一掩模图像;
步骤S22,对第一掩模图像进行腐蚀处理,当第一掩模图像中目标区域的连接部分符合第一预设条件时,将连接部分断开,得到第二掩模图像;
步骤S23,根据第二掩模图像确定目标区域;
步骤S24,根据目标区域确定动物聚集信息。
本实施例中,通过动物分割模型从养殖图像中分割出动物前景,得到掩模图像,动物前景为黑色,背景为白色。由于存在多个动物,得到的动物前景区域也就可能有多个,各个区域之间可能有连接。如果连接部分较大,则说明动物之间距离较近,可能发生动物聚集现象。如果连接部分较小,则说明动物之间间隔一定距离,两个区域的动物未发生聚集。因此,在分析动物聚集信息之前,可以对该掩模图像进行腐蚀处理,将连接部分较小的腐蚀掉,即将非聚集动物对应的区域分离,从而更精确地确定动物聚集信息,以判断动物是否异常聚集。
另外,通过动物分割模型能够实现对不同颜色的动物分割,并且,即便环境光线较差,也可以实现对动物前景的准确分割,增加了本实施例方法应用场景的广泛性及兼容性。
在一个可选实施例中,动物分割模型基于预设语义分割模型训练得到。该预设语义分割模型可以包括:ENet,FCN,U-Net,SegNet,RefineNet,PSPNet等等。该预设语义分割模型包括多个瓶颈模块(bottleneck)。
本实施例中,可以优选ENet网络结构。ENet通过减少浮点运算解决传统语义分割模型时效性差的问题,其主要由瓶颈模块(bottleneckmodule)堆积而成。为了减少深度神经网络的浮点运算,ENet使用如下策略:
1、利用initial层对图像进行压缩,过滤图像中的视觉冗余信息;
2、设计了较大的编码器和较小的解码器,在不明显影响分割精度的情况下尽可能地缩小了网络的体积,减少了参数数量;
3、为了进一步减少参数数量,使用小卷积核替代大卷积核。
ENet通过优化模型参数,使模型在保持高精度的同时,极大减少了深度神经网络的浮点运算,从而极大提高了模型的时效性。
图3为本申请实施例提供的瓶颈模块示意图。如图3所示,瓶颈模块包括:依次连接的第一卷积层、转置卷积层和第二卷积层。其中,第一卷积层和第二卷积层可分别做1×1卷积计算。转置卷积层,获取下采样时的最大索引位置,对下采样输出矩阵中最大索引位置之外的位置做补0扩充操作后,得到上采样输入矩阵,对上采样输入矩阵进行反卷积计算。
相关技术中,ENet瓶颈模块中采用带有pooling index的反卷积,每次池化(pooling),都会保存通过最大索引值选出的权值在n*n大小的filter中的相对位置,即index。带有pooling index的反卷积就是pooling的逆过程,根据index信息,直接将数据放回对应位置,其他位置的权值使用0填充,最后进行卷积操作。
而本实施例中的转置卷积,不根据index进行插值,直接进行规律性的固定位置的0填充操作,再进行反卷积。
本实施例中,将ENet瓶颈模块中的pooling index上采样层改为上述转置卷积层,以提高模型的兼容性。
图4为本申请实施例提供的养殖区域图像的示意图,图5为本申请实施例提供的通过动物分割模型对养殖区域图像处理后得到的第一掩模图像的示意图。图6为本申请实施例提供的对图5的第一掩模图像腐蚀处理后的第二掩模图像。
图7为本申请另一实施例提供的养殖区域图像的示意图,图8为本申请另一实施例提供的通过动物分割模型对养殖区域图像处理后得到的第一掩模图像的示意图。
本实施例中,将图4和图7中的养殖区域图像输入动物分割模型后,分别得到图5和图8所示的第一掩模图像。对如图5所示的第一掩模图像进行腐蚀处理,将连接较少的部分断开,得到如图6所示的第二掩模图像,根据第二掩模图像中的目标区域确定动物聚集信息。
可选的,步骤S24包括:确定目标区域的以下至少一项区域信息:数量、面积及位置;根据区域信息确定动物聚集信息。
可选的,该方法还包括:获取食槽位置信息。其中,食槽位置信息可以从养殖区域图像中识别得到,由于食槽是固定的,每个摄像范围都有对应的参数来说明食槽的位置;该食槽位置信息也可为预先设定的参数。
步骤S13包括:当动物聚集信息符合第二预设条件时,确定动物状态为异常。其中,动物聚集信息符合第二预设条件,包括以下情形:
(1)目标区域的数量大于1,最大目标区域的面积大于或等于最小目标区域面积的预设倍数,且根据食槽位置信息确定最大目标区域的位置不在食槽位置。
一般3只或3只以上的动物聚集才确定为出现异常,因此该预设倍数可以设为大于等于3的整数。或者,根据养殖区域内动物数量n,超过1/2的动物聚集在一起,则可确定出现异常,则该预设倍数可设为n/2。若n为奇数,则该预设倍数可设为n2±1。
如图6所示,目标区域的个数有4个,最大目标区域61的面积大于最小目标区域62面积的3倍,且最大目标区域61不在食槽位置,则动物聚集信息符合第二预设条件,动物状态为异常。
在该种情形下,养殖区域中仅有部分动物聚集,聚集动物的数量应超过一定数量,且聚集在非食槽位置,才可确定出现异常。
(2)目标区域的数量为1,且根据食槽位置信息确定目标区域的位置不在食槽位置。
在该种情形下,养殖区域中所有动物都聚集在非食槽位置,可以确定出现异常。如图8所示的掩模图像中,只有一个目标区域,且该目标区域的位置不在食槽位置,则动物聚集信息符合第二预设条件,动物状态为异常。
本实施例中,如果聚集情况发生在食槽位置,由于动物可能在进食,不能确定为异常。但如果聚集情况发生在非食槽位置,则根据目标区域的数量、面积,进一步分析确定是否出现异常聚集情况。
在一个可选实施例中,当动物状态为异常时,该方法还包括:获取养殖区域图像对应的区域标识;根据区域标识执行预设提醒操作。
其中,该预设提醒操作可以包括:将养殖区域的区域标识和动物状态以信息方式发送到预设的终端,或者,可以在养殖区域的猪栏上设有显示装置,显示该区域内动物状态等等。
这样,可以快速、准确地通知相关人员动物情况,可以及时进行处理,避免动物病变发生,减少经济损失。
可选的,当动物状态为异常时,该方法还包括:
确定区域标识对应的养殖区域及设置于养殖区域内的环境控制设备;
生成环境调节指令,环境调节指令用于控制环境控制设备调节养殖区域的环境参数;
将环境调节指令发送到环境控制设备。
本实施例中,当动物出现异常聚集情况时,可能是由于养殖区域内环境状况不适宜造成,如温度过低,因此,可以进行相应的环境参数调节,如调节温度等等。
以下对本实施例动物状态监测方法的流程进行具体说明。
图9为本申请另一实施例提供的一种动物状态监测方法的流程图。如图9所示,该方法包括以下步骤:
步骤S901,获取养殖区域图像;
步骤S902,获取养殖区域内的食槽位置参数;
步骤S903,将养殖区域图像输入预先训练好的动物分割模型进行分割处理,得到第一掩模图像;
步骤S904,对第一掩模图像进行腐蚀处理,得到第二掩模图像;
步骤S905,计算第二掩模图像中目标区域的数量以及每个目标区域的面积;
步骤S906,判断目标区域的数量是否只有1个,如果是,执行步骤S908,如果否,执行步骤S907;
步骤S907,判断最大目标区域的面积是否大于或等于最小目标区域面积的3倍,如果是,执行步骤S908,如果否,执行步骤S909;
步骤S908,判断目标区域的位置是否在食槽位置,如果是,执行步骤S909,如果否,执行步骤S910;
步骤S909,确定动物状态为正常;
步骤S910,确定动物状态为异常。
本实施例中,基于计算机视觉方式,通过动物分割模型从图像中分割出动物,分析得到动物聚集信息,包括目标区域的数量、面积及位置,根据动物聚集信息确定动物状态,从而实现对动物状态的自动监测,可以及时、准确地发现动物异常情况,防止动物疫病的发生,保证动物健康,提高养殖效益。另外,无需人工监测,降低人力成本及时间成本。
下述为本申请装置实施例,可以用于执行本申请方法实施例。
图10为本申请实施例提供的一种动物状态监测装置的框图,该装置可以通过软件、硬件或者两者的结合实现成为电子设备的部分或者全部。如图10所示,该动物状态监测装置包括:
获取模块101,用于获取养殖区域图像,养殖区域图像中包括至少两个动物;
分割模块102,用于通过预先训练的动物分割模型对养殖区域图像中的动物进行分割,得到动物聚集信息;
确定模块103,用于根据动物聚集信息确定动物状态。
本申请实施例还提供一种电子设备,如图11所示,电子设备可以包括:处理器1501、通信接口1502、存储器1503和通信总线1504,其中,处理器1501,通信接口1502,存储器1503通过通信总线1504完成相互间的通信。
存储器1503,用于存放计算机程序;
处理器1501,用于执行存储器1503上所存放的计算机程序时,实现以下上述方法实施例的步骤。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,P C I)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(CentralProcessing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本申请还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以下上述方法实施例的步骤。
需要说明的是,对于上述装置、电子设备及计算机可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
进一步需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。