公开/公告号CN112784713A
专利类型发明专利
公开/公告日2021-05-11
原文格式PDF
申请/专利权人 深圳喜为智慧科技有限公司;
申请/专利号CN202110025419.2
发明设计人 柯海滨;
申请日2021-01-08
分类号G06K9/00(20060101);G06K9/62(20060101);G06T7/12(20170101);G01G17/00(20060101);
代理机构
代理人
地址 518000 广东省深圳市南山区招商街道沿山社区南海大道1031号万海大厦C座803
入库时间 2023-06-19 10:57:17
技术领域
本发明涉及机器视觉领域,具体涉及一种基于图像的猪体重估测方法、系统、设备及存储介质。
背景技术
现有技术中,猪的体重估测主要是通过电子秤等人工测量的方式,这种方式需要耗费很大的人力物力,猪养殖场的自动化管理程度较低。
发明内容
针对上述技术问题,本发明提供一种基于图像的猪体重估测方法、系统、设备及存储介质。
本发明解决上述技术问题的技术方案如下:
第一方面,本发明提供一种基于图像的猪体重估测方法,包括:
采集目标区域中猪的图像;
采用图像处理算法,在所述图像中分割出猪的轮廓;
判断所述轮廓是否完整;
若所述轮廓不完整,则根据该不完整轮廓匹配一个最相似的完整轮廓,以所述完整轮廓对应的猪的体重作为所述不完整轮廓对应的猪的体重。
在上述技术方案的基础上,本发明还可以做如下改进。
进一步,所述判断所述轮廓是否完整,具体包括:
将所述轮廓输入预先构建的CNN分类模型,判断所述轮廓是否完整。
进一步,还包括:
若所述轮廓完整,则根据该完整轮廓估测对应的猪的体重。
进一步,所述根据该完整轮廓估测对应的猪的体重,具体包括:
将所述轮廓的像素面积输入换算公式,计算得到对应的猪的体重。
进一步,在将所述轮廓的像素面积输入换算公式,计算得到对应的猪的体重之前,还包括:
识别所述图像中猪的品种;
根据识别得到的猪的品种确定对应的换算公式。
进一步,所述根据该不完整轮廓匹配一个最相似的完整轮廓,具体包括:
将该不完整轮廓输入预先训练的深度学习模型,得到一个最相似的完整轮廓。
进一步,所述深度学习模型的训练方法包括:
构造一批完整的猪的图像和不完整的猪的图像,覆盖不同体型和大小的猪,然后标注匹配对作为标签训练深度学习模型,所述深度学习模型的输入为猪的图像和猪的分割轮廓图像,输出为是否匹配。
第二方面,本发明提供一种基于图像的猪体重估测系统,包括:
图像采集模块,用于采集目标区域中猪的图像;
图像分割模块,用于采用图像处理算法,在所述图像中分割出猪的轮廓;
轮廓判断模块,用于判断所述轮廓是否完整;
轮廓匹配模块,用于若所述轮廓判断模块判断所述轮廓不完整,则根据该不完整轮廓匹配一个最相似的完整轮廓;
体重估测模块,用于以所述完整轮廓对应的猪的体重作为所述不完整轮廓对应的猪的体重。
进一步,所述体重估测模块,还用于若所述轮廓判断模块判断所述轮廓完整,则根据该完整轮廓估测对应的猪的体重。
进一步,所述体重估测模块根据该完整轮廓估测对应的猪的体重,具体包括:
将所述轮廓的像素面积输入换算公式,计算得到对应的猪的体重。
进一步,还包括:
品种识别模块,用于在所述体重估测模块将所述轮廓的像素面积输入换算公式,计算得到对应的猪的体重之前,识别所述图像中猪的品种;
公式确定模块,用于根据识别得到的猪的品种确定对应的换算公式。
第三方面,本发明提供一种终端设备,包括:
处理器;以及
存储器,其上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行上述的方法。
第四方面,本发明提供一种非暂时性机器可读存储介质,其上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行上述的方法。
本发明的有益效果是:可以估测图像中不完整的猪的体重,克服了因目标不完整而无法进行体重估测的技术问题,大大提高了猪养殖场中猪体重测量的自动化程度,减少了所需的人力物力。
附图说明
图1为本发明实施例提供的一种基于图像的猪体重估测方法的流程图;
图2为本发明实施例提供的相机拍摄猪栏中猪的硬件布置示意图;
图3为拍摄的猪的示意图;
图4为分割得到的完整猪的轮廓的示意图;
图5为分割得到的不完整猪的轮廓的示意图;
图6为匹配结果示意图;
图7为本发明实施例提供的一种基于图像的猪体重估测系统的结构框图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
图1为本发明实施例提供的一种基于图像的猪体重估测方法的流程图,如图1所示,该方法包括:
110、采集目标区域中猪的图像;
具体的,如图2所示,可在猪栏的顶部设置相机俯拍下方猪栏的目标区域中的猪,相机将图像发回计算机进行后续处理,所拍摄的猪的图像如图3所示。
120、采用图像处理算法,在所述图像中分割出猪的轮廓;
该步骤中,分割猪的轮廓所采用的图像处理算法属于现有技术,本实施例对此不作赘述,分割的轮廓如图4和图5所示。
130、判断所述轮廓是否完整;
具体的,可通过采集完整猪的样本数据来构建一个CNN分类模型,这样,将轮廓的图像输入该CNN分类模型后,即可判断出其是否完整。
140、若所述轮廓不完整,则根据该不完整轮廓匹配一个最相似的完整轮廓,以所述完整轮廓对应的猪的体重作为所述不完整轮廓对应的猪的体重。
具体的,该步骤中,可构造一批完整的猪的图像和不完整的猪的图像,覆盖不同体型和大小的猪,然后标注匹配对作为标签训练深度学习模型,所述深度学习模型的输入为猪的图像和猪的分割轮廓图像,输出为是否匹配。
这样,将该不完整轮廓输入训练得到的深度学习模型,即可得到一个最相似的完整轮廓。匹配结果如图6所示。
完整轮廓对应的猪的体重,可通过将轮廓的像素面积输入预先标定的换算公式来得到。
可选地,在该实施例中,该方法还包括:
150、若所述轮廓完整,则根据该完整轮廓估测对应的猪的体重。
可选地,在该实施例中,所述根据该完整轮廓估测对应的猪的体重,具体包括:
将所述轮廓的像素面积输入换算公式,计算得到对应的猪的体重。
其中,换算公式可通过标定的方式来确定,具体来说,当相机固定在某一高度拍摄某一固定区域时,该区域中目标的像素面积与其物理体重是线性相关的,可通过数据采集,利用最小二乘法得出换算公式。
另外,由于不同猪的品种也可能影响上述换算公式的精度,因此,作为本发明的一个实施例中,该方法包括:
210、采集目标区域中猪的图像;
220、采用图像处理算法,在所述图像中分割出猪的轮廓;
230、判断所述轮廓是否完整;
240、若所述轮廓不完整,则根据该不完整轮廓匹配一个最相似的完整轮廓,以所述完整轮廓对应的猪的体重作为所述不完整轮廓对应的猪的体重;
250、若所述轮廓完整,则识别所述图像中猪的品种;
260、根据识别得到的猪的品种确定对应的换算公式。
270、将所述轮廓的像素面积输入换算公式,计算得到对应的猪的体重。
该实施例中,在确定换算公式时考虑了猪的品种,可以在各种猪混养的情况下准确估测出体重。
图7为本发明实施例提供一种基于图像的猪体重估测系统的结构框图,如图7所示,该系统包括:
图像采集模块,用于采集目标区域中猪的图像;
图像分割模块,用于采用图像处理算法,在所述图像中分割出猪的轮廓;
轮廓判断模块,用于判断所述轮廓是否完整;
轮廓匹配模块,用于若所述轮廓判断模块判断所述轮廓不完整,则根据该不完整轮廓匹配一个最相似的完整轮廓;
体重估测模块,用于以所述完整轮廓对应的猪的体重作为所述不完整轮廓对应的猪的体重。
可选地,在该实施例中,所述体重估测模块,还用于若所述轮廓判断模块判断所述轮廓完整,则根据该完整轮廓估测对应的猪的体重。
可选地,在该实施例中,所述体重估测模块根据该完整轮廓估测对应的猪的体重,具体包括:
将所述轮廓的像素面积输入换算公式,计算得到对应的猪的体重。
可选地,在该实施例中,还包括:
品种识别模块,用于在所述体重估测模块将所述轮廓的像素面积输入换算公式,计算得到对应的猪的体重之前,识别所述图像中猪的品种;
公式确定模块,用于根据识别得到的猪的品种确定对应的换算公式。
本发明实施例提供一种终端设备,包括:
处理器;以及
存储器,其上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行上述的方法。
本发明实施例提供一种非暂时性机器可读存储介质,其上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行上述的方法。
读者应理解,在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述系统实施例中的模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
机译: 用于多层材料的多层材料存储介质评估测试程序的评估测试系统和方法,用于多层材料的多层材料评估测试数据管理系统和方法以及用于多层材料的存储介质评估评估测试数据管理程序
机译: 可靠性评估测试设备,可靠性评估测试系统和可靠性评估测试方法
机译: 用于分离至少一种气体和至少一种lquiquido混合物的混合物,该混合物以主要包含lecquido的重馏分和主要包含气体的轻馏分的分离。进料系统,用于预处理至少一种气体和l的混合物至少一种用于分离的馏分,馏分主要包含重馏分和轻馏分,主要馏分包含气体,进气系统和系统EMA或进气系统的操作方法