动物体重的识别方法及装置与流程

文档序号:15984124发布日期:2018-11-17 00:41阅读:509来源:国知局

本发明涉及畜牧业领域,具体而言,涉及一种动物体重的识别方法及装置。

背景技术

随着畜牧业保险的发展,越来越多的养殖户为养殖的猪投保,投保量逐年增加。在猪死亡理赔的过程中,保险公司通常以猪的长度和体重为标准进行理赔,而获得猪体重的过程会耗费大量的人力,且存在一定的道德风险。



技术实现要素:

为了解决目前在猪死亡理赔时,获得猪体重的过程需要耗费大量人力的问题,本发明实施例提供了一种动物体重的识别方法及装置。

第一方面,本发明实施例提供了一种动物体重的识别方法,包括以下步骤:采集包括参照物和所述动物的图像;从所述图像中分割出所述动物和参照物;提取所述动物和参照物的特征;将所述动物和参照物的特征输入分类器,所述分类器根据所述动物和参照物的特征获得所述动物的体重。

第二方面,本发明实施例提供了一种动物体重的识别装置,包括:采集单元,用于采集包括参照物和所述动物的图像;分割单元,用于从所述图像中分割出所述动物和参照物;提取单元,用于提取所述动物和参照物的特征;获得单元,用于将所述动物和参照物的特征输入分类器,所述分类器根据所述动物和参照物的特征获得所述动物的体重。

第三方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述方法的步骤。

第四方面,本发明实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述方法的步骤。

本发明实施例动物体重的识别方法具有以下效果:

本发明实施例动物体重的识别方法中,采集包括参照物和动物的图像,从图像中分割出动物和参照物;提取动物和参照物的特征;将动物和参照物的特征输入分类器,利用该分类器就能够得出动物的体重,实现了动物体重的自动测量,大大减少了获得动物体重的过程中耗费的人力,大大减少了工作量,而且能够杜绝人为的更改动物体重的数值,防止道德风险。

本发明实施例的附加方面和优点将在下面的描述部分中变得明显,或通过本发明实施例的实践了解到。

附图说明

图1为本发明实施例动物体重的识别装置的结构示意图;

图2为图1所示动物体重的识别装置的工作流程图;

图3为本发明实施例包括参照物和动物的图像的示意图;

图4为从图3所示图像中分割出的动物的示意图;

图5为从图3所示图像中分割出的参照物的示意图;

图6为本发明实施例提取动物的特征的示意图一;

图7为本发明实施例提取动物的特征的示意图二;

图8为本发明实施例提取动物的特征的示意图三;

图9为本发明实施例提取动物的特征的示意图四;

图10为本发明实施例提取参照物特征的示意图。

具体实施方式

为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。

在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。

下述讨论提供了本发明的多个实施例。虽然每个实施例代表了发明的单一组合,但是本发明不同实施例可以替换,或者合并组合,因此本发明也可认为包含所记载的相同和/或不同实施例的所有可能组合。因而,如果一个实施例包含a、b、c,另一个实施例包含b和d的组合,那么本发明也应视为包括含有a、b、c、d的一个或多个所有其他可能的组合的实施例,尽管该实施例可能并未在以下内容中有明确的文字记载。

下面的描述提供了示例,并且不对权利要求书中阐述的范围、适用性或示例进行限制。可以在不脱离本申请内容的范围的情况下,对描述的元素的功能和布置做出改变。各个示例可以适当省略、替代或添加各种过程或组件。例如所描述的方法可以以所描述的顺序不同的顺序来执行,并且可以添加、省略或组合各种步骤。此外,可以将关于一些示例描述的特征组合到其他示例中。

本发明实施例提供了一种动物体重的识别装置,包括:采集单元,用于采集包括参照物和动物的图像;分割单元,用于从图像中分割出动物和参照物;提取单元,用于提取动物和参照物的特征;获得单元,用于将动物和参照物的特征输入分类器,分类器根据动物和参照物的特征获得动物的体重。

本发明实施例动物体重的识别装置中,采集单元采集包括参照物和动物的图像,再经过分割单元、提取单元和获得单元的处理,就能够得出动物的体重,实现了动物体重的自动测量,大大减少了获得动物体重的过程中耗费的人力,大大减少了工作量,而且能够杜绝人为的更改动物体重的数值,防止道德风险。

图1为本发明实施例动物体重的识别装置的结构示意图,如图1所示,本发明实施例动物体重的识别装置10包括:采集单元11,用于采集包括参照物和动物的图像;分割单元12,用于从图像中分割出动物和参照物;提取单元13,用于提取动物和参照物的特征;获得单元14,用于将动物和参照物的特征输入分类器,分类器根据动物和参照物的特征获得动物的体重。

图2为图1所示动物体重的识别装置的工作流程图,如图2所示,本发明实施例动物体重的识别装置的工作流程包括:步骤101,采集单元11采集包括参照物和动物的图像;步骤102,分割单元12从图像中分割出动物和参照物;步骤103,提取单元13提取动物和参照物的特征;步骤104,获得单元14将动物和参照物的特征输入分类器,分类器根据动物和参照物的特征获得动物的体重。下面详细介绍本发明实施例动物体重的识别装置的工作流程。

步骤101,采集单元11采集包括参照物和动物的图像。

在一个实施例中,采集单元11例如可以为照相机、摄像机、卫星、扫描仪等设备;采集的图像例如为位图、矢量图等各种种类的图像。在另一个实施例中,参照物例如为圆盘,参照物的形状也可以为矩形或者平行四边形等,参照物的颜色例如可以为红色或其他颜色。在另一个实施例中,参照物也可以为其他物品。

在一个实施例中,动物例如可以为猪、牛、羊等,下面以猪为例进行介绍。图3为本发明实施例包括参照物和动物的图像的示意图,如图3所示,图像中包括猪和圆盘(参照物)。在本发明的一个实施例中,圆盘放置于猪身上,这样在拍摄照片时,当受拍摄角度和/或相机镜头变形影响时,圆盘与猪的变形会基本一致或者相近,因为在后续过程中,使用从图像上提取的圆盘与猪的特征来获得猪的体重,当圆盘与猪的变形会基本一致或者相近,得到的猪的体重更准确。

步骤102,分割单元12从图像中分割出动物和参照物。

在一个实施例中,分割单元12用于:使用第二训练样本集训练深度神经网络,第二训练样本集包括至少一个第二训练图像、从第二训练图像分割出的第二训练动物和第二训练参照物;将步骤101采集到的图像输入训练后的深度神经网络,训练后的深度神经网络根据图像分割出动物和参照物。也就是说,先使用第二训练样本集训练深度神经网络模型,第二训练样本集包括至少一个训练样本,训练样本例如可以是第二训练图像以及从第二训练图像分割出的第二训练动物,训练样本例如还可以是第二训练图像以及从第二训练图像分割出的第二训练参照物。

在一个实施例中,在训练深度神经网络模型时,对采集到的图像进行归一化整理,包括将图像大小整理到统一尺寸,使用图像像素值减去像素均值,这样能够加快深度神经网络收敛,使训练更快。

在一个实施例中,将步骤101采集到的图像输入训练后的深度神经网络模型,训练后的深度神经网络模型从输入的图像中分割出动物和参照物的图像。图3为本发明实施例包括参照物和动物的图像的示意图,图4为从图3所示图像中分割出的动物的示意图,图5为从图3所示图像中分割出的参照物的示意图,如图3-5所示,在一个实施例中,图3为步骤101采集到的图像,图4为从图3分割出的猪的图像,图5为从图3分割出的圆盘的图像。

步骤103,提取单元13提取动物和参照物的特征;

在一个实施例中,提取单元13用于:对分割出的动物和参照物进行二值化处理;利用二值化后的图像确定动物和参照物的轮廓点;根据轮廓点计算得到动物和参照物的重心。如图3-5所示,对分割出的猪和圆盘进行二值化处理,阈值为127,图4和图5均为二值化处理后的图像,经过二值化处理分割出的猪和圆盘的图像只有黑白两个颜色,这样便于后续确定动物和参照物的轮廓点。

图6为本发明实施例提取动物的特征的示意图一,如图6所示,在一个实施例中,利用二值化后的图像找到猪和圆盘的轮廓点,根据猪的轮廓点的零阶矩和一阶矩,可以计算得到猪的重心18;根据圆盘的轮廓点的零阶矩和一阶矩,可以计算得到圆盘的重心,计算方法如下:

零阶矩:

一阶矩:

则图像的重心坐标为:

其中,i为轮廓点的横坐标,j为轮廓点的纵坐标,v(i,j)为常值函数,i为i的取值范围,j为j的取值范围,xc为重心的横坐标,yc为重心的纵坐标。本发明实施例提取的动物和参照物的特征为:猪的重心和圆盘的重心。

如图6所示,在一个实施例中,提取单元13还用于:按照动物的轮廓点拟合出多边形,在多边形的拐点当中,确定动物的重心以下,动物的重心左侧距离重心最近的拐点并记为点p1;确定动物的重心以下,动物的重心右侧距离重心最近的拐点并记为点p2;确定动物背部的轮廓点中距离点p1最近的轮廓点并记为点q1,点p1与点q1之间的距离为动物的臀部15的长度。其中,按照猪的轮廓点拟合出的多边形包括多条线段,两条线段的交点即为拐点。本步骤的目的之一是确定猪的前腿根和后腿根,所以在猪的重心以下的拐点中寻找,如图6所示,拐点p1为猪的后腿根,拐点p2为猪的前腿根。本发明实施例提取的动物和参照物的特征为:猪的臀部长度。

如图6所示,在一个实施例中,提取单元13还用于:确定动物背部的轮廓点中距离点p2最近的轮廓点并记为点q2,点p2与点q2之间的距离为动物的胸部长度。本发明实施例提取的动物和参照物的特征为:猪的胸部长度。

如图6所示,提取单元13还用于:点p1和点q1形成线段p1q1,点p2和点q2形成线段p2q2,线段p1q1和线段p2q2之间的部分为动物的腹部16;计算腹部16的像素个数以得到腹部16的面积。本发明实施例提取的动物和参照物的特征为:猪的腹部面积。

如图6所示,在一个实施例中,提取单元13还用于:确定点p1和点p2之间的轮廓点中,每个该轮廓点与动物背部的轮廓点之间的最小距离;在该最小距离中选出最大值作为动物的腹部16的长度。如图6所示,线段mn的长度为猪的腹部16的长度。本发明实施例提取的动物和参照物的特征为:猪的腹部长度。

如图6所示,在一个实施例中,提取单元13还用于:点p1和点q1形成线段p1q1,点p2和点q2形成线段p2q2;计算线段p1q1左侧部分的像素个数以得到线段p1q1左侧部分的面积,计算线段p2q2右侧部分的像素个数以得到线段p2q2右侧部分的面积,将该两部分面积的乘积作为动物臀部15的面积和头部17的面积之乘积。因为在图像的处理过程中,可能不易区分猪的头部和臀部,因此将猪臀部15的面积和头部17的面积之乘积作为一个特征,这样就不必区分头部和臀部,降低了处理的难度,避免了将头部和臀部混淆的错误。

图7为本发明实施例提取动物的特征的示意图二,如图7所示,在一个实施例中,提取单元13还用于:当所述动物的腹部中还存在第一拐点p3时,重心18左侧最近的拐点为p3,但显然第一拐点p3的位置不是猪的前腿根或者后腿根,点p1的位置才是猪的前腿根或者后腿根,为了避免将第一拐点p3作为猪的前腿根或者后腿根,需要检测猪的腹部是否还有其他拐点,如图7所示,猪的腹部还有拐点p1,则判断拐点p1是否位于通过第一拐点p3和点p2的直线的上侧,如果是,则使用点p1更新第一拐点p3,即将点p1作为猪的前腿根或者后腿根。同理,图8为本发明实施例提取动物的特征的示意图三,在图8中,第一拐点p3为重心18右侧最近的拐点,而拐点p2位于通过第一拐点p3和点p1的直线的上侧,则使用点p2更新第一拐点p3,即将点p2作为猪的前腿根或者后腿根。

图9为本发明实施例提取动物的特征的示意图四,如图9所示,提取单元13还用于:从动物的轮廓点中确定凸包点;以重心18与动物的最低轮廓点之间的中心为边界,删除该边界下方的凸包点,如图9所示,删除边界线19以下的凸包点,本实施例是为了得到猪的身长,删除边界线19以下的凸包点是为了避免猪腿部、腹部等部位的凸包点的干扰,提高测量猪身长的准确性。在剩下的凸包点中,将左侧的至少一个凸包点作为第一点集,将右侧的至少一个凸包点作为第二点集,第一点集与第二点集之间的最大距离为动物的身长。例如第一点集包括a和b两个凸包点,第二点集包括c和d两个凸包点,则分别计算凸包点ac、ad、bc和bd之间的距离,最大距离即为猪的身长。其中,凸包(convexhull)是一个计算几何(图形学)中的概念,在一个实数向量空间v中,对于给定集合x,所有包含x的凸集的交集s被称为x的凸包。x的凸包可以用x内所有点(x1,...xn)的凸组合来构造。本发明实施例提取的动物和参照物的特征为:猪的身长。

图10为本发明实施例提取参照物特征的示意图,如图10所示,提取单元13还用于:经过圆盘20重心22的直线21将圆盘分为两个点集,该两个点集之间的最大距离为圆盘20的长轴。本发明实施例提取的动物和参照物的特征为:参照物的长轴。

步骤104,获得单元14将动物和参照物的特征输入分类器,分类器根据动物和参照物的特征获得动物的体重。

在一个实施例中,获得单元13还用于:使用第一训练样本集训练分类器,第一训练样本集包括至少一个第一训练动物的体重、第一训练图像中第一训练参照物和第一训练动物的特征。其中,第一训练参照物和第一训练动物的特征例如可以为:第一训练参照物的重心和/或长轴、第一训练动物的重心、臀部长度、胸部长度、腹部长度、腹部面积、臀部和头部面积的乘积和/或身长等。在一个实施中,训练分类器时使用的第一训练参照物和第一训练动物的特征与步骤103中,提取单元13提取的动物和参照物的特征相同。

在一个实施例中,分离器例如为随机森林模型,随机森林最大弱学习器的个数例如为200。cart树做划分时对特征的评价标准采用均方误差,即

其中,trutht为动物体重的真实值,predictiont为动物体重的估算值。

本发明实施例动物体重的识别装置中,采集单元采集包括参照物和动物的图像,再经过分割单元、提取单元和获得单元的处理,就能够得出动物的体重,实现了动物体重的自动测量,大大减少了获得动物体重的过程中耗费的人力,大大减少了工作量,而且能够杜绝人为的更改动物体重的数值,防止道德风险。本发明实施例动物体重的识别装置能够快速准确地获得猪的体重。

本发明实施例还提供了一种动物体重的识别方法,包括以下步骤:采集包括参照物和动物的图像;从图像中分割出动物和参照物;提取动物和参照物的特征;将动物和参照物的特征输入分类器,分类器根据动物和参照物的特征获得动物的体重。

优选地,将动物和参照物的特征输入分类器,分类器根据动物和参照物的特征得出动物的体重步骤之前包括:

使用第一训练样本集训练分类器,第一训练样本集包括至少一个第一训练动物的体重、第一训练图像中第一训练参照物和第一训练动物的特征。

优选地,其特征在于,步骤从图像中分割出动物和参照物包括:

使用第二训练样本集训练深度神经网络,第二训练样本集包括至少一个第二训练图像、从第二训练图像分割出的第二训练动物和第二训练参照物;

将图像输入训练后的深度神经网络,训练后的深度神经网络根据图像分割出动物和参照物。

优选地,步骤提取动物和参照物的特征包括:对分割出的动物和参照物进行二值化处理;利用二值化后的图像确定动物和参照物的轮廓点;根据轮廓点计算得到动物和参照物的重心。

优选地,步骤提取动物和参照物的特征还包括:

按照动物的轮廓点拟合出多边形,在多边形的拐点当中,确定动物的重心以下,动物的重心左侧距离重心最近的拐点并记为点p1;确定动物的重心以下,动物的重心右侧距离重心最近的拐点并记为点p2;

确定动物背部的轮廓点中距离点p1最近的轮廓点并记为点q1,点p1与点q1之间的距离为动物的臀部长度。

优选地,还包括:确定动物背部的轮廓点中距离点p2最近的轮廓点并记为点q2,点p2与点q2之间的距离为动物的胸部长度。

优选地,还包括:

确定点p1和点p2之间的轮廓点中,每个该轮廓点与动物背部的轮廓点之间的最小距离;

在该最小距离中选出最大值作为动物的腹部长度。

优选地,还包括:

点p1和点q1形成线段p1q1,点p2和点q2形成线段p2q2,线段p1q1和线段p2q2之间的部分为动物的腹部;

计算腹部的像素个数以得到腹部的面积。

优选地,还包括:

点p1和点q1形成线段p1q1,点p2和点q2形成线段p2q2;

计算线段p1q1左侧部分的面积,计算线段p2q2右侧部分的面积,将该两部分面积的乘积作为动物的臀部面积和头部面积的乘积。

优选地,步骤在多边形的拐点当中,确定动物的重心以下,动物的重心左侧距离重心最近的拐点并记为点p1;确定动物的重心以下,动物的重心右侧距离重心最近的拐点并记为点p2还包括:

当动物的腹部中还存在第一拐点时,如果点p1位于通过第一拐点和点p2的直线的上侧,则使用点p1更新第一拐点;

如果点p2位于通过第一拐点和点p1的直线的上侧,则使用点p2更新第一拐点。

优选地,还包括:从动物的轮廓点中确定凸包点;

以重心与动物的最低轮廓点之间的中心为边界,删除该边界下方的凸包点;

在剩下的凸包点中,将左侧的至少一个凸包点作为第一点集,将右侧的至少一个凸包点作为第二点集,第一点集与第二点集之间的最大距离为动物的身长。

优选地,还包括:经过参照物重心的直线将参照物分为两个点集,该两个点集之间的最大距离为参照物的长轴。

优选地,参照物为圆盘。

优选地,参照物放置于动物身上。

优选地,分类器为随机森林。

对于动物体重的识别方法实施例,由于其基本相似于动物体重的识别装置实施例,相关之处请参见动物体重的识别装置实施例。

本领域的技术人员可以清楚地了解到本发明实施例的技术方案可借助软件和/或硬件来实现。本说明书中的“单元”是指能够独立完成或与其他部件配合完成特定功能的软件和/或硬件,其中硬件例如可以是fpga(field-programmablegatearray,现场可编程门阵列)、ic(integratedcircuit,集成电路)等。

本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述动物体重的识别方法的步骤。其中,计算机可读存储介质可以包括但不限于任何类型的盘,包括软盘、光盘、dvd、cd-rom、微型驱动器以及磁光盘、rom、ram、eprom、eeprom、dram、vram、闪速存储器设备、磁卡或光卡、纳米系统(包括分子存储器ic),或适合于存储指令和/或数据的任何类型的媒介或设备。

本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现动物体重的识别方法的步骤。在本发明实施例中,处理器为计算机系统的控制中心,可以是实体机的处理器,也可以是虚拟机的处理器。

以上介绍仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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