首页> 中国专利> 一种生猪体尺视觉测量的特征点选取及测量方法

一种生猪体尺视觉测量的特征点选取及测量方法

摘要

本发明提供了一种生猪体尺视觉测量的特征点选取及测量方法。包括以下步骤:对猪舍进行图像采集,并基于张正友相机标定法计算相机畸变参数,对图像的径向畸变进行校正;将图像输入YOLOv5得到猪只的检测框,并根据检测框从图像中对猪只进行切割提取,得到单只猪只的图像;对猪只特征点进行选取,建立新的猪只特征点数据集,融合注意力机制获取图像中的猪只特征点;设计基于深度神经网络的猪只特征点评估算法,根据识别出的特征点坐标对猪只体态进行判断并对体尺数据能否测量进行评估;采用仿射变换、结合采集设备安装位置的数据对猪只体尺进行测量。该方法提高了猪只体尺测量过程中的检测效率,对养猪生产过程的智能化实现,提升养殖水平具有重要意义。

著录项

  • 公开/公告号CN114973321A

    专利类型发明专利

  • 公开/公告日2022-08-30

    原文格式PDF

  • 申请/专利权人 东南大学;

    申请/专利号CN202210538688.3

  • 发明设计人 秦文虎;杨雨锟;孙立博;

    申请日2022-05-18

  • 分类号G06V40/10(2022.01);G06V10/44(2022.01);G06V10/764(2022.01);G06V10/82(2022.01);G06K9/62(2022.01);G06N3/04(2006.01);G06N3/08(2006.01);G06T3/00(2006.01);G06T5/00(2006.01);G06T7/60(2017.01);

  • 代理机构南京众联专利代理有限公司 32206;

  • 代理人张天哲

  • 地址 210096 江苏省南京市玄武区四牌楼2号

  • 入库时间 2023-06-19 16:36:32

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-09-16

    实质审查的生效 IPC(主分类):G06V40/10 专利申请号:2022105386883 申请日:20220518

    实质审查的生效

说明书

技术领域

本发明涉及计算机视觉、图像处理和牲畜养殖技术领域,具体为一种生猪体尺视觉测量的特征点选取及测量方法。

背景技术

发展规模化、集约化、智能化的现代化生猪养殖管理模式是提高养殖生产效率和降低单猪成本的必经之路。现有猪场养殖在生产过程中对猪只巡检、生长、健康状态表观评判方面还主要依赖人工,误检、漏检率高,无法满足规模生产与防疫需要。围绕生猪养殖过程中生猪体尺自动测量展开研究,对养猪生产过程的智能化实现,提升养殖水平具有重要的研究意义。

现阶段我国对猪只体尺的测量主要停留在人工测量阶段,不采用人工的猪只体尺自动测量技术的应用较少。对于这两类方法,人工测量会存在测量效率低、精确度不够高、存在人猪染病风险等问题;对于猪只体尺自动测量技术,主要包括两类方法进行测量,第一类是采用算法提取牲畜轮廓,再使用包络线等方法提取体尺信息,另一类是采用深度相机等设备对牲畜点云进行提取,再根据点云计算牲畜体尺。这些方法虽然可以良好的计算出牲畜体尺,但是也具备较大局限性,第一类存在要求较合适的拍摄角度、牲畜姿态笔直、牲畜不能过于密集等问题,第二类则存在设备要求较高、牲畜同样不能过于密集等问题。考虑到以上问题,本发明提出了融合注意力机制的特征点检测算法对图像中的生猪进行特征点检测,以生猪身上的特征点作为生猪体尺测量的依据。

特征点检测技术在过去多用于人体姿态的估计,注意力机制是近年深度学习领域的研究热点之一,其通过对模型中不同部分赋予不同权重,从中抽取出更加重要关键的信息,优化模型得到更准确的预测。将注意力机制融合入SimpleBaselines特征点检测算法对图像中的生猪进行特征点检测,可以为生猪体尺测量提供参考。

本发明针对养殖猪舍中的猪只体尺测量问题,采用目标检测技术分离出猪只个体,设计猪只特征点并利用融合注意力机制的SimpleBaselines算法对猪只特征点进行识别,设计猪只特征点评估算法对猪只姿态以及体尺信息能否进行测量进行评估,最后根据设备安装角度等数据,采用仿射变换等计算得到猪只体尺数据,解决了目前猪只体尺自动测量技术中对猪只体态要求较高、猪群过于密集时无法测量猪只体尺等问题。

发明内容

为解决上述问题,本发明公开了提供一种生猪体尺视觉测量的特征点选取及测量方法,本发明要解决的技术问题:一是对养殖猪舍中的猪只进行个体图像提取并基于体尺测量方式设计猪只特征点;二是对猪只特征点进行良好的检测识别并对特征点进行算法评估;三是基于养殖猪舍安装设备信息以及识别出的猪只特征点提出一种猪只体尺计算方法。

为解决上述技术问题,达到本发明的目的,本发明采取的技术方案如下:

一种生猪体尺视觉测量的特征点选取及测量方法,包括以下步骤:

步骤S1、在养殖猪舍搭建图像采集设备,在猪舍中架设导轨以及巡检设备,在巡检设备上安置摄像头,通过交换机与主机连接采集图像并采用张正友相机标定法进行径向畸变矫正,并测量得到安装设备在养殖猪舍中的位置信息。

步骤S2、获得采集图像构建生猪养殖数据集,将数据集输入YOLOv5(You OnlyLook Once version 5),通过骨干网络提取图像特征信息,从特征中得到猪只的检测包围框,从而对猪只从图像中进行个体分离。

步骤S3、根据大量统计测试,对猪只身体上的特征点进行设计,以SimpleBaselines算法为基础,在其中融合注意力机制,获取图像中猪只的特征点信息,并将仅包含单个个体的猪只图像中的特征点坐标还原至采集的猪舍养殖环境图像中。

步骤S4、基于深度神经网络设计猪只特征点评估算法,其输入为识别出的特征点坐标,输出为猪只姿态与体尺信息是否可以通过图像进行测量。

步骤S5、采用仿射变换将拍摄的猪舍养殖环境图像变换成正上方往下拍摄的视角,并将猪只特征点坐标变换至仿射变换后的图像中的对应点的坐标。

步骤S6、根据得到的猪只特征点在图像中的坐标信息,结合设备安装角度以及高度、长度等信息,对猪只体尺进行计算。

进一步,所述步骤S1的具体过程如下:

步骤S11、在养殖猪舍内部的过道上方架设导轨,安装可以进行横向移动的巡检机器设备,在巡检机器设备上安装摄像头,可以对猪舍中其中一侧的猪栏进行图像采集;

步骤S12、根据张正友相机标定法,对相机畸变参数进行计算,求出径向畸变三阶公式中的畸变参数k

步骤S13、采用网线将巡检设备、以及摄像头连接至交换机上,再从交换机牵引网线与养殖猪舍外围放置的主机相连接,通过主机可以对巡检设备以及摄像头进行控制,从而采集得到相应的图像数据。

进一步,所述步骤S2的具体过程如下:

步骤S21、采用labelme对采集图像进行标注,采用方框对每头猪只进行框选,保存得到json格式标注文件。将得到每张图像的标注文件进行转换得到对应信息的的txt文本文件后,与图像一起作为数据集输入YOLOv5进行训练;

步骤S22、提取YOLOv5检测后图像中的猪只识别框,根据框左上角的坐标(x

进一步,所述步骤S21及S22中的YOLOv5是一种单阶段目标检测算法:图像输入YOLOv5后首先会通过骨干网络初步提取图像特征,随后根据初步提取的特征计算得到三种不同大小的特征分别用于检测图像中的不同大小的猪只。

进一步,所述步骤S21及S22中的YOLOv5的骨干网络主要由下采样、残差结构以及空间金字塔池化操作共同组成,养殖猪舍采集图像输入骨干网络计算可以提取得到三个大小的特征图,在这三个大小的特征图上分别采用FPN(Feature Pyramid Network)以及PAN(Perceptual Adversarial Network)结构最后得到预测结果,其中FPN结构是指将面积较小的特征层通过上采样的方式与面积较大的特征层进行融合,PAN结构则于FPN相反,将面积较大的特征层信息通过下采样与面积较小的特征层进行融合。

进一步,所述步骤S3的具体过程如下:

步骤S31、从图像中选取100头以上的猪只,采用边缘检测、质心算法、包络线等方法获取猪只身体上的多个特征点,进行统计与测试,从多种猪只特征点选取其中可以用于猪只体尺计算的出现频率较高的特征点。由此设计选取了左右耳根、左右前腿、肩胛骨中心、尾巴根部这六个点作为猪只特征点用于表征猪只特征信息,进而用于猪只体尺计算。左耳根、右耳根记为点1、点2,左前腿、右前腿记为点3、点4,尾巴根部为点5,肩胛骨中心记为点6。

步骤S32、将步骤S22中得到的个体猪只图像输入融合了注意力机制的SimpleBaselines中,通过骨干网络提取特征,再利用反卷积得到热图,从热图中得到特征点后,利用放射变换可以得到输入图像中的猪只特征点坐标,点1至点6的坐标表示为(x

步骤S33、根据步骤S22中得到的裁剪之前的猪只检测框坐标与大小,将步骤S32中得到的特征点坐标还原得到特征点裁剪前原图像中的坐标,可表示为(x

进一步,步骤S32中的注意力机制是在神经网络算法中使用的一种函数结构,通过对模型中不同部分赋予不同权重,从中抽取出更加重要关键的信息,优化模型得到更准确的预测,其加入算法中可以明显提升养殖猪舍一类环境单一的场景中的算法检测准确率。

进一步,步骤S32中的SimpleBaselines是一种结构精简、准确率较高的特征点检测算法,图像输入由残差网络构成的骨干网络提取特征,得到的特征经过三次反卷积,最后经过一次1×1卷积得到输出张量,也称为热图。通过计算可得特征点在各个热图中的坐标,随后利用仿射变换即可得到特征点在输入图像中的坐标。

进一步,所述步骤S4的具体步骤如下:

步骤S41,基于深度神经网络,设计猪只特征点评估算法,该算法由多层全连接层构成。算法输入为特征点识别算法识别出的6个特征点坐标,若图像中某特征点未识别出,则该点坐标设定为(0,0)。算法输出包括三项,第一项为猪只姿态,包括姿态笔直、弯曲、侧卧等;第二项为猪只体长能否进行测量,输出1为可测量,0为不可测量;第三项为猪只体宽能否进行测量,输出1为可测量,0为不可测量。

进一步,所述步骤S5的具体步骤如下:

步骤S51,在采集的养殖猪舍图像中选取猪栏边界的四个角落作为基准点,通过仿射变换将这四个点变换至大小为(H,W)的矩形的四个角点,使图像角度转换至俯视角度。其中仿射变换可以通过公式(x′,y′,z′)

步骤S52,根据计算得到的矩阵M计算得到变换后特征点在新图像中的坐标(x″

(x′

(x″

进一步,所述步骤S6的具体步骤如下:

步骤S61、测量出摄像头安装水平面与地面之间的高度H

(三)有益效果

与现有技术相比,本发明提供了一种生猪体尺视觉测量的特征点选取及测量方法,具备以下有益效果:

1、本发明的一种生猪体尺视觉测量的特征点选取及测量方法在传统猪只体尺测量基础上,根据大量猪只身体上不同特征点进行统计与测试,设计了左右耳根、左右前腿、肩胛骨中心、尾巴根部这六个特征点,可以根据特征点信息对猪只特征部位进行较好表征,可以解决猪只体态弯曲时无法测量体长的问题。

2、本发明的一种生猪体尺视觉测量的特征点选取及测量方法,采用结合目标检测与特征点识别的方式,并对图像算法进行创新,以这种方式可以快速识别出猪只的特征信息,从而计算出不同姿态下猪只的体尺长度。

3、本发明的一种生猪体尺视觉测量的特征点选取及测量方法中设计了特征点评估算法,使得处于不同姿态下的猪只可以通过识别出的特征点,对其姿态以及能否进行体尺测量进行具体评估,使得猪只体尺测量不局限于猪只处于笔直站立姿态。

4、本发明的一种生猪体尺视觉测量的特征点选取及测量方法,在利用SimpleBaselines算法进行猪只特征点识别前,在算法中融合了注意力机制,可以有效减少在光照条件较暗、生猪较密集以及生猪呈弯曲角度姿态时的特征点识别误差。

附图说明

图1是本发明总体方法流程图;

图2是本发明中的养殖猪舍中设备安装示意图,图中H

图3是YOLOv5网络结构图;

图4是本发明中设计选取的猪只特征点,其中点1、点2为左、右耳根,点3、点4为左、右前腿,点5为尾巴根部,点6为肩胛骨中心,点7是左右耳根的中点。

图5是融合了注意力机制的SimpleBaselines网络结构示意图;

图6是猪只特征点评估算法结构示意图;

图7是本发明中对采集的养殖猪舍图像进行仿射变换示意图,其中放仿射变换依据变换前后的点A、B、C、D与点A′、B′、C′、D′相对应进行变换,图中H

图8是本发明中检测出的猪只特征点在图像进行仿射变换时变换的示意图,其中点7′与点6′之间的距离加上点6′与点5′之间的距离即可得到猪只的体长,点3′与点4′之间的距离则为猪只的体宽。

具体实施方式

下面结合附图和具体实施方式,进一步阐明本发明,应理解下述具体实施方式仅用于说明本发明而不用于限制本发明的范围。需要说明的是,下面描述中使用的词语“前”、“后”、“左”、“右”、“上”和“下”指的是附图中的方向,词语“内”和“外”分别指的是朝向或远离特定部件几何中心的方向。

图1为基于YOLOv5目标检测及Simple Baselines特征点检测的猪只体尺测量方法的流程图,以下结合附图和实施例对本发明做进一步的阐述。

实施例1

具体实现为:

步骤一、在养殖猪舍中安装导轨、巡检设备、相机等设备,测量得到安装的相机距地面的高度H

步骤二、利用养殖猪舍中安装的设备采集图像并采用张正友相机标定法进行径向畸变矫正,将图像输入YOLOv5算法中对猪只进行检测,根据检测结果从图像中分割的个体猪只。YOLOv5是一种单阶段目标检测算法,养殖猪舍图像输入算法可以得到猪只识别框的坐标与大小。

步骤三、根据YOLOv5检测出的猪只识别框对养殖猪舍图像进行裁剪,得到个体猪只图像。根据大量统计测试设计猪只特征点,再根据设计的猪只特征点,利用labelme软件对图像进行标注,得到json标注文件。

步骤四、标注文件与猪只图像共同输入融合了注意力机制的SimpleBaselines算法进行训练。完成训练后能通过该算法得到输入猪只图像的特征点坐标。

步骤五、设计猪只特征点评估算法网络结构,输入识别出的特征点坐标,输出猪只姿态信息及体尺信息是否可以测量。

步骤六、根据步骤二中的猪只识别框坐标将得到的图像特征点坐标转换至原图像中,再根据图像中猪栏的四个角落点将图像进行仿射变换,得到俯视视角图像,并根据仿射变换公式得到俯视视角图像中的特征点对应点的坐标。

步骤七、根据相机安装高度以及猪只平均高度、猪只特征点坐标等数据,对猪只体长体宽进行计算。

所述步骤一中养殖猪舍内安装设备图如图2所示,安装设备具体过程包括:在养殖猪舍顶棚架设导轨支架,再在支架上架设导轨,于导轨上安置巡检设备,相机设备固定于巡检设备上。巡检设备以及相机通过网线与交换机相连接,随后通过网线将交换机与养殖猪舍外的主机相连接,通过主机实现对巡检设备以及相机的控制。采集到的图像根据张正友相机标定法计算出的相机畸变参数k

所述步骤二的YOLOv5网络结构如图3所示,YOLOv5检测猪只过程包括:首先将养殖猪舍图像转换至640×640×3大小,输入骨干网络提取特征;接着对得到的大小分别为80×80×256、40×40×256、20×20×512的三组特征进行FPN以及PAN操作得到三种大小的输出,最后采用非极大值抑制得到养殖图像中猪只的识别框坐标(x

所述步骤三中的设计选取特征点,需从图像中选取100头以上的猪只,采用边缘检测、质心算法、包络线等方法获取猪只身体上的多个特征点,进行统计与测试,从多种猪只特征点选取其中可以用于猪只体尺计算的出现频率较高的特征点。由此设计选取了左右耳根、左右前腿、肩胛骨中心、尾巴根部这六个点作为猪只特征点用于表征猪只特征信息,如图4所示。

所述步骤三中裁剪图像并对猪只特征点进行标注包括:以YOLOv5在养殖猪舍图像中检测出的一只猪只为例,计该猪只的识别框左上角的坐标为(x

所述步骤四中使用融合注意力机制的SimpleBaselines算法训练数据并对图像中猪只特征点进行识别包括:首先构建融合注意力机制的SimpleBaselines算法网络结构如图5所示,在SimpleBaselines算法的骨干网络部分中的每一处残差网络结构中,均加入一个注意力模块;接下来使用融合注意力机制的SimpleBaselines算法进行训练,猪只图像先转换至192×256×3大小,输入融合了注意力机制的骨干网络部分,得到大小为6×8×2048的特征层,随后经过上采样部分中的三次反卷积操作,得到大小为48×64×6大小的热图,根据这里得到的6张热图可以计算可得得到猪只身上的6个特征点在各个热图中的坐标,随后利用仿射变换即可得到特征点在输入图像中的坐标,这六个特征点可以记为点1、点2、点3、点4、点5、点6,其在图像中的坐标可以记为(x

所述步骤五中猪只特征点评估算法由多层全连接层构成,输出层包括三个单元,其中一个由softmax函数构成,用于评估猪只姿态,另外两个单元均由sigmoid函数构成,用于评估体尺信息能否测量。算法输入为特征点识别算法识别出的6个特征点坐标,若图像中某特征点未识别出,则该点坐标设定为(0,0)。算法输出包括三项,第一项为猪只姿态,包括姿态笔直、弯曲、侧卧等;第二项为猪只体长能否进行测量,输出1为可测量,0为不可测量;第三项为猪只体宽能否进行测量,输出1为可测量,0为不可测量。

所述步骤六中将特征点坐标转换至原图像中包括:根据步骤二中得到的猪只识别框左上角坐标(x

所述步骤六中将图像进行仿射变换,得到俯视视角图像并计算特征点坐标包括:仿射变换如图6所示,选取养殖猪舍图像中猪栏的四个角落,分别记为点A、B、C、D,并测量出猪栏实际长宽大小为(H

(x′,y′,z′)

根据点A、B、C、D与点A′、B′、C′、D′相互对应,求出矩阵M,于是可以计算出仿射变换后图像中特征点的坐标(x″

(x′

(x″

所述步骤七中根据相机安装高度以及猪只平均高度、猪只特征点坐标等数据,对猪只体长体宽计算包括:如图7所示为图像经过仿射变换后的特征点变化,此时猪只的体宽长度为点3′和点4′之间的距离,体长长度为点1′与点2′的中点点7′与点6′之间的距离加上点6′与点5′之间的距离;又根据点A′、B′、C′、D′构成的矩形长宽可以计算出图像中每个横向像素与纵向像素对应的真实长度;最后根据相机架设高度与猪只高度可以计算出猪只体长D

本发明方案所公开的技术手段不仅限于上述实施方式所公开的技术手段,还包括由以上技术特征任意组合所组成的技术方案。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号