CN110532854A - 一种生猪爬跨行为检测方法及系统 - Google Patents
一种生猪爬跨行为检测方法及系统 Download PDFInfo
- Publication number
- CN110532854A CN110532854A CN201910625612.2A CN201910625612A CN110532854A CN 110532854 A CN110532854 A CN 110532854A CN 201910625612 A CN201910625612 A CN 201910625612A CN 110532854 A CN110532854 A CN 110532854A
- Authority
- CN
- China
- Prior art keywords
- mask
- live pig
- image
- live
- mounting
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/25—Determination of region of interest [ROI] or a volume of interest [VOI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Computational Linguistics (AREA)
- Multimedia (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Human Computer Interaction (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
本发明提供一种生猪爬跨行为检测方法及系统,所述方法包括:将拍摄的猪栏内的包含多个生猪的图像输入到预先训练好的Mask R‑CNN网络中,输出图像中每只生猪的ROI参数和mask坐标;根据每只生猪的ROI参数和mask坐标,提取每只生猪的多维特征向量;将每只生猪的多维特征向量输入预先训练好的分类器中,输出图像中多只生猪的爬跨行为结果。本发明利用Mask R‑CNN网络对拍摄的猪栏内的图像进行生猪掩模的提取,对生猪掩模的提取不受光照变化的影响,对于图像中重叠生猪的识别性能较好,能够精确提取图像中每只生猪的掩模,进而最终通过分类器能够精确分类识别出图像中多只生猪的爬跨行为结果。
Description
技术领域
本发明实施例涉及机器视觉与深度学习领域,尤其涉及一种生猪爬跨行为检测方法及系统。
背景技术
在生猪养殖业领域,猪栏中生猪之间的密切相互作用会威胁生猪的健康并降低动物福利。大多数猪的瘀伤,跛足和腿部骨折都是由猪之间相互作用的行为引起的,并且主要是爬跨行为。爬跨行为是指猪将其两只前蹄搭在同伴的前身或其背部,同时下面的猪跪着或站着不动的行为,爬跨行为有时可能会伴随着下面猪的快速躲闪和尖叫,雄性猪和雌性猪在其整个寿命期间都会发生爬跨行为,特别是在发情期。考虑到爬跨行为会引起猪的表皮损伤和骨折等问题,及时检测爬跨行为并尽快分离猪体是至关重要的,及时检测和干预爬跨行为将能够减少猪的损伤,增加动物福利,进一步确保生猪的健康。
传统的动物行为检测方法主要依靠人眼观察,不但消耗大量劳动力而且很容易产生主观错误,在大型商业养殖模式上也是不切实际的。
随着传感器技术的发展,目前常见的生猪行为检测方法主要是通过传感器监测生猪行为上的信息,即采用传感器等装置采集生猪的个体信息,根据传感器采集的生猪的个体信息来判断生猪之间是否发生爬跨行为。但该种方式,多数传感器需附着在生猪的体表,猪群间互相摩擦碰撞和生猪移动易使其损落,且接触式传感器易造成猪的应激反应并影响测量的准确性,安装于现场的传感器也需工作人员日常介入读数工作,操作不便,也易对生猪造成干扰和惊吓。
另外一种比较常见的方式为,根据拍摄的猪栏内视频图像,通过区域连通性分析和混合高斯背景模型,能够提取完整的目标生猪轮廓,但该方法对光线变化敏感,容易产生虚影。
发明内容
本发明实施例提供一种生猪爬跨行为检测方法及系统,用以解决现有技术中受光照影响无法提取图像中生猪掩模以及对图像中重叠生猪识别性能差的缺陷。
根据本发明的一个方面,提供了一种生猪爬跨行为检测方法,所述方法包括:
S1,将拍摄的猪栏内的包含多个生猪的图像输入到预先训练后的Mask R-CNN网络中,输出所述图像中每只生猪的ROI参数和mask坐标;
S2,根据每只生猪的所述ROI参数和mask坐标,提取每只生猪的多维特征向量;
S3,将每只生猪的所述多维特征向量输入预先训练后的分类器中,输出所述图像中多只生猪的爬跨行为结果;
其中,所述ROI参数表征所述图像中每只生猪的目标边界框,每只生猪的所述mask坐标表征所述图像中每只生猪的掩模,所述爬跨行为结果为发生爬跨行为或未发生爬跨行为。
在上述技术方案的基础上,本发明还可以做如下改进。
进一步的,通过如下方式对所述Mask R-CNN网络进行训练:
将第一训练集中的每一张图像输入构建的Mask R-CNN网络,输出每一张图像中的每只生猪的mask坐标,其中,所述第一训练集中的每一张图像中的每只生猪的掩模已知;
计算通过Mask R-CNN网络输出的每只生猪的掩模和已知的每只生猪的掩模之间的掩模损失,其中,所述mask坐标和所述掩模可相互转换;
通过调整Mask R-CNN网络的参数,使得所述掩模损失满足收敛条件。
进一步的,通过如下方式对所述分类器进行训练:
提取第二训练集中的每一张图像中的每只生猪的多维特征向量,其中,所述第二训练集中的每一张图像中的多只生猪的爬跨行为结果为已知;
将每一张图像中的每只生猪的多维特征向量输入分类器中,通过分类器输出每一张图像中的多只生猪的爬跨行为结果;
计算通过所述分类器输出的每一张图像的多只生猪的爬跨行为结果和已知爬跨行为结果的差异损失;
通过调整所述分类器的参数,使得差异损失满足第一预设阈值。
进一步的,还包括:
将训练好的Mask R-CNN网络和训练好的分类器作为一个整体网络;
将第三训练集中的每一张图像输入所述整体网络中,输出每一张图像中多只生猪的爬跨行为结果,其中,每一张图像中多只生猪的爬跨行为为已知;
计算通过所述整体网络输出的每一张图像中多只生猪的爬跨行为结果与已知爬跨行为结果之间的准确率;
调整所述Mask R-CNN网络的参数或者所述分类器的参数,使得所述准确率达到第二预设阈值。
进一步的,所述分类器为极限学习机或支持向量机或BP神经网络分类器。
进一步的,所述ROI参数包括每只生猪的目标边界框的左上角顶点坐标和右下角顶点坐标,其中,所述目标边界框为矩形框,所述目标边界框包围生猪掩模,所述mask坐标包括每只生猪掩模内的每一个像素点坐标。
进一步的,每只生猪的所述多维特征向量包括每只生猪的掩模周长、半身区域面积以及每只所述生猪的目标边界框的中心点和其它每一只生猪的目标边界框的中心点之间的距离。
根据本发明的第二个方面,提供了一种生猪爬跨行为检测系统,包括:
Mask R-CNN网络,用于根据输入的猪栏内包含多个生猪的图像,输出所述图像中每只生猪的ROI参数和mask坐标;
提取模块,用于根据每只生猪的所述ROI参数和mask坐标,提取每只生猪的多维特征向量;
分类器,用于根据图像中每只生猪的所述多维特征向量,输出所述图像中多只生猪的爬跨行为结果;
其中,所述ROI参数表征所述图像中每只生猪的目标边界框,所述mask坐标表征所述图像中每只生猪的掩模,所述爬跨行为结果为发生爬跨行为或未发生爬跨行为。
进一步的,所述Mask R-CNN网络包括主干网络、区域建议网络RPN、ROIAlign层和两个分支网络,所述主干网络的输入分别连接所述区域建议网络RPN的输入和所述ROIAlign层的输入连接,所述区域建议网络RPN的输出和所述ROIAlign层的输入连接,所述ROIAlign层的输出分别与两个分支网络的输入连接;
所述主干网络,用于对输入的图像进行初步特征图的提取;
所述区域建议网络RPN,用于生成图像的待检测目标框;
所述ROIAlign层,用于将所述待检测目标框映射到所述初步特征图对应的位置上,并利用双线性插值法提取图像中的精确特征图;
一个所述分支网络,用于输出图像中每只生猪的ROI参数,所述ROI参数包括每只生猪的目标边界框的左上角顶点坐标和右下角顶点坐标,其中,所述目标边界框为矩形框,所述目标边界框包围生猪掩模;
另一个所述分支网络,用于输出图像中每只生猪的mask坐标,所述mask坐标包括生猪掩模内的每一个像素点的坐标。
根据本发明的第三个方面,提供了一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现一种生猪爬跨行为检测方法的步骤。
本发明的有益效果位为:利用Mask R-CNN网络对拍摄的猪栏内的图像进行生猪掩模的提取,对生猪掩模的提取不受光照变化的影响,对于图像中重叠生猪的识别性能较好,能够精确提取图像中每只生猪的掩模,进而最终通过分类器能够精确分类识别出图像中多只生猪的爬跨行为结果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一个实施例的生猪爬跨行为检测方法流程图;
图2为本发明一个实施例的生猪爬跨行为检测系统连接框图;
图3为Mask R-CNN网络结构示意图;
图4为BP神经网络分类器结构示意图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
基于现有技术中的缺点,参见图1,本发明实施例提供了一种生猪爬跨行为检测方法,通过该方法能够对拍摄的包含猪栏内的多只生猪的图像中的多只生猪进行精确识别,且精确辨别多只生猪之间是否发生爬跨行为。该生猪爬跨行为检测方法包括:S1,将拍摄的猪栏内的包含多个生猪的图像输入到预先训练好的Mask R-CNN网络中,输出所述图像中每只生猪的ROI参数和mask坐标;S2,根据每只生猪的所述ROI参数和mask坐标,提取每只生猪的多维特征向量;S3,将每只生猪的所述多维特征向量输入预先训练好的分类器中,输出所述图像中多只生猪的爬跨行为结果;其中,所述ROI参数表征所述图像中每只生猪的目标边界框,每只生猪的所述mask坐标表征所述图像中每只生猪的掩模,所述爬跨行为结果为发生爬跨行为或未发生爬跨行为。
具体的,将摄像机固定在猪栏正上方,获取完整的俯视猪栏视频。将拍摄的视频序列分解为视频图像帧。为了使图像具有多样性并且包括猪的日常行为姿势,选择包含猪在不同照明及清洁条件下的采食、走动、站立、躺卧、排泄和爬跨行为状态的俯视视频图像。
得到猪栏内的包含多个生猪的多张图像,可以选择几张图像输入到预先训练好的Mask R-CNN网络中,Mask R-CNN网络会输出每一张图像中每只生猪的ROI参数和mask坐标。其中,通过每只生猪的ROI参数即可得到图像中每只生猪的目标边界框,该目标边界框即为包含生猪掩模的矩形框。在实际中,每一张图像输入Mask R-CNN网络后,输出图像中每只生猪的Mask,即生猪掩模,这个掩模即为图像大小维度的0-1矩阵,每只生猪分别在不同的矩阵里,生猪位置矩阵值为1,背景位置矩阵值为0,通过生猪掩模可以得到生猪的mask坐标,其中,生猪掩模可以理解为生猪身体的边界轮廓组成的区域,生猪掩模位于生猪目标边界框内部。
根据图像中每只生猪的ROI参数和mask坐标,提取每只生猪的多维特征向量,将每只生猪的多维特征向量输入预先训练好的分类器中,输出图像中多只生猪的爬跨行为结果,其中,爬跨行为结果包括发生爬跨行为和未发生爬跨行为两种结果,即要么图像中的多只生猪发生爬跨行为,要么图像中的多只生猪未发生爬跨行为。
本发明实施例利用Mask R-CNN网络对拍摄的猪栏内的图像进行生猪掩模的提取,Mask R-CNN网络是一个参数众多的复杂网络,在数据量足够的条件下,对生猪掩模的提取不受光照变化的影响,对于图像中重叠生猪的识别性能较好,能够精确提取图像中每只生猪的掩模,故而通过分类器能够准确检测生猪的爬跨行为。
在本发明的一个实施例中,通过如下方式对Mask R-CNN网络进行训练:将第一训练集中的每一张图像输入构建的Mask R-CNN网络,输出每一张图像中的每只生猪的mask坐标,其中,所述第一训练集中的每一张图像中的每只生猪的掩模已知;计算通过Mask R-CNN网络输出的每只生猪的掩模和已知的每只生猪的掩模之间的掩模损失;通过调整Mask R-CNN网络的参数,使得所述掩模损失满足收敛条件。
本发明实施例通过构建Mask R-CNN网络来提取图像中每只生猪的ROI参数和mask坐标,为了确保构建的Mask R-CNN网络的准确性,采用训练集对Mask R-CNN网络进行训练,以及采用测试集对训练后的Mask R-CNN网络的准确性进行验证。具体过程中,拍摄一段猪栏内的视频序列,对拍摄的视频序列进行分解得到视频图像帧,以下将视频图像帧称为数据集,将数据集按照随机比例划分为第一训练集和第一测试集,其中,第一训练集中包括多张图像,第一测试集中也包括多张图像。
对第一训练集和第一测试集中的每一张图像中的每只生猪的掩模进行标注,即在对Mask R-CNN网络进行训练前,对第一训练集和第一测试集中的每一张图像中的每只生猪的掩模进行提取。然后将第一训练集中的图像输入构建的Mask R-CNN网络中,通过Mask R-CNN网络输出每一张图像中每只生猪的mask掩模。
对于每一张图像,将经过Mask R-CNN网络输出的图像中的每只生猪的掩模与预先标记好的该图像中的每只生猪的掩模进行对比,计算通过Mask R-CNN网络输出的每只生猪的掩模和已知的每只生猪的掩模之间的掩模损失,通过调整Mask R-CNN网络的参数,使得该掩模损失满足收敛条件。通过扩充第一训练集中的图像样本数量,可对Mask R-CNN网络进行不断完善。
随后为了对训练后的Mask R-CNN网络的性能进行验证,将第一测试集中的每一张图像输入训练后的Mask R-CNN网络,输出每一张图像中每只生猪的掩模,通过将经过MaskR-CNN网络输出的每只生猪的掩模和图像中已标注的每只生猪的掩模进行对比,来验证训练后的Mask R-CNN网络的性能。
同样的,在本发明的另一个实施例中,通过如下方式对分类器进行训练:提取第二训练集中的每一张图像中的每只生猪的多维特征向量,其中,第二训练集中的每一张图像中的多只生猪的爬跨行为结果为已知;将每一张图像中的每只生猪的多维特征向量输入分类器中,通过分类器输出每一张图像中的多只生猪的爬跨行为结果;计算通过分类器输出的每一张图像的多只生猪的爬跨行为结果和已知爬跨行为结果的差异损失;通过调整分类器的参数,使得该差异损失满足第一预设阈值。
本发明实施例中采用分类器对每一张图像中多只生猪是否发生爬跨行为进行分类识别,输入分类器的参数为图像中每只生猪的多维特征向量,分类器的输出为图像中多只生猪的爬跨行为结果,其中,爬跨行为结果为发生爬跨行为或未发生爬跨行为。
为了保证分类器对图像中多只生猪的爬跨行为识别的准确性,采用训练集对分类器进行训练,然后采用测试集对训练后的分类器的准确性进行验证。具体过程为,提取第一训练集中的每一张图像中的每只生猪的多维特征向量,将第一训练集中每一张图像中的每只生猪的多维特征向量作为第二训练集;同样的,将第一测试集中每一张图像的每只生猪的多维特征向量作为第二测试集。其中,第二训练集和第二测试集中的每一张图像中的多只生猪的爬跨行为已知,即对于第二训练集和第二测试集中的每一张图像,图像中的多只生猪是否发生爬跨行为已知。
具体的,可以将第二训练中的图像样本分为正向图像样本和负向图像样本,其中,正向图像样本中的每一张图像中的多只生猪发生了爬跨行为,而负向图像样本中的每一张图像中的多只生猪未发生爬跨行为。在训练时,可以分别采用正向图像样本和负向图像样本对分类器进行训练,通过正向图像样本对分类器进行训练的过程和通过负向图像样本对分类器训练的过程相同,因此,下面仅介绍通过正向图像样本对分类器进行训练的过程。
将正向图像样本中的每一张图像中的每只生猪的多维特征向量输入分类器,通过分类器输出每一张图像中的多只生猪的爬跨行为结果。然后将由分类器输出的图像中的多只生猪的爬跨行为结果与图像中多只生猪的已知爬跨行为进行对比,计算通过分类器输出的图像中多只生猪的爬跨行为结果和已知的爬跨行为之间差异损失,通过调整分类器的参数,使得该差异损失满足第一预设阈值,即满足对分类器的评判标准。
随后为了对训练后的分类器的性能进行验证,将第二测试集中的每一张图像中每只生猪的多维特征向量输入训练后的分类器,输出每一张图像中多只生猪的爬跨行为结果,通过将经过分类器输出的多只生猪的爬跨行为结果和已知爬跨行为进行对比,来验证训练后的分类器的性能。其中,在本发明的一个实施例中,分类器为极限学习机或支持向量机或BP神经网络分类器。
在本发明的一个实施例中,还包括:将训练好的Mask R-CNN网络和训练好的分类器作为一个整体网络;将第三训练集中的每一张图像输入所述整体网络中,输出每一张图像中多只生猪的爬跨行为结果,其中,每一张图像中多只生猪的爬跨行为为已知;计算通过所述整体网络输出的每一张图像中多只生猪的爬跨行为结果与已知爬跨行为结果之间的准确率;调整所述Mask R-CNN网络的参数或者所述分类器的参数,使得所述准确率达到第二预设阈值。
具体的,上述实施例分别对Mask R-CNN网络和分类器进行了训练,本实施例将训练后的Mask R-CNN网络和训练后的分类器作为一个整体网络进行训练,来保证整体网络的准确性。
在具体对整体网络进行训练时,将第三训练集中的每一张图像输入Mask R-CNN网络,由分类器输出每一张图像中的多只生猪的爬跨行为结果。其中,第三训练集中的每一张图像中多只生猪的爬跨行为结果为已知。
假设第三训练集中包括100张图像,该100张图像中的多只生猪的爬跨行为结果为已知,即在预先已标记好。将这100张图像输入整体网络的Mask R-CNN网络中,经过分类器输出每一张图像中的多只生猪的爬跨行为结果。将通过整体网络输出的100张图像中的多只生猪的爬跨行为结果与这100张图像中多只生猪的已知爬跨行为结果进行对比,比如,通过整体网络后有95张图像的爬跨行为结果与已知爬跨行为结果一致,则表明这100张图像经过整体网络输出爬跨行为结果的准确率为95%。该准确率达到第二预设阈值,则该整体网络的整体性能比较好,可以用于后续的图像中多只生猪爬跨行为结果的检测。
其中,每一张图像输入Mask R-CNN网络后输出的每一张图像中每只生猪的ROI参数包括每只生猪的目标边界框的左上角顶点坐标和右下角顶点坐标,其中,目标边界框为矩形框,目标边界框包围生猪掩模,mask坐标包括每只生猪掩模内的每一个像素点坐标。
具体的,将图像输入训练后的Mask R-CNN网络中,通过Mask R-CNN网络输出图像中每只生猪的ROI参数和mask,即掩模,其中,通过每只生猪的ROI参数即可得到每只生猪对应的目标边界框,通过每只生猪的掩模可得到每只生猪的mask坐标,每一张图像中的每只生猪的mask坐标可用三维(像素横坐标,像素纵坐标,生猪的编号)来表示,例如:第一只生猪的一个坐标像素坐标表示为(256,278,0),其中,每一张图像中的生猪从0开始编号。
在本发明的一个实施例中,每只生猪的多维特征向量包括每只生猪的掩模周长、半身区域面积以及生猪的目标边界框的中心点和其它每一只生猪的目标边界框的中心点之间的距离。
具体的,通过Mask R-CNN网络输出图像中每只生猪的目标边界框和mask掩模后,由mask掩模得到mask坐标,然后每只生猪的掩模周长即生猪轮廓的周长是可知的,记为l。将每只生猪的目标边界框的两长边中心连接起来,将目标边界框划分为两部分,由于生猪对应的目标边界框包围生猪掩模,也即将生猪掩模划分为两部分,即可得到每只生猪的半身区域面积。当生猪未发生爬跨行为时,生猪半身区域的面积分别表示为A1、A2;当生猪发生爬跨行为时,生猪半身区域面积被分为两部分,表示为A11′+A12′。
设A,B,C和D分别是图像中四头生猪对应的的目标边界框的中心点,对于每一头生猪,计算该头生猪的目标边界框的中心点和其它每一只生猪的目标边界框的中心点之间的距离。比如,对于目标边界框的中心点位A的这头生猪,该头生猪的目标边界框的中心点与其它三头生猪的目标边界框的中心点之间的距离分别为LAB、LAC和LAD。
将每张图像中每只生猪的掩模周长、半身区域面积以及该生猪的目标边界框的中心点与其它各头生猪的目标边界框的中心点之间的距离作为该头生猪的多维特征向量,比如,一只未发生爬跨行为的生猪的多维特征向量为(l,A1,A2,LAB,LAC,LAD),一只发生爬跨行为的生猪的多维特征向量为(l,A11′+A12′,A2′,LAB,LAC,LAD)。
本发明提供的生猪爬跨行为检测方法,构建的Mask R-CNN网络中的网络参数众多,在对Mask R-CNN网络进行训练的过程中,训练集中的图像包括不同光照条件下以及包括众多张具有重叠生猪的图像,利用这些图像集对构建的Mask R-CNN网络进行训练,网络中的参数众多,通过大量参数的拟合可以提高网络对生猪掩模提取的准确性;Mask R-CNN网络输出的为图像中每只生猪的mask掩模,由mask掩模得到mask坐标,即生猪掩模的每一个像素点的坐标,对生猪掩模的提取非常精细,;在Mask R-CNN网络的ROIAl ign层,采用双性插值法来精确地找到图像中的特征图,相比传统的阈值法能够精确地划分出生猪掩模和图像中的背景,能更精确地区分出图像中的重叠的生猪。
参见图2,提供了本发明一个实施例的生猪爬跨行为检测系统,包括Mask R-CNN网络1、提取模块2和分类器3。
其中,Mask R-CNN网络1,用于根据输入的猪栏内包含多个生猪的图像,输出图像中每只生猪的ROI参数和mask坐标。提取模块2,用于根据每只生猪的ROI参数和mask坐标,提取每只生猪的多维特征向量。分类器3,用于根据图像中每只生猪的多维特征向量,输出图像中多只生猪的爬跨行为结果。其中,ROI参数表征图像中每只生猪的目标边界框,mask坐标表征图像中每只生猪的掩模,爬跨行为结果包括发生爬跨行为和未发生爬跨行为。
通过摄像机拍摄猪栏内的包含多个生猪的多张图像,可以选择几张图像输入到预先训练后的Mask R-CNN网络中,Mask R-CNN网络会输出每一张图像中每只生猪的ROI参数和mask坐标。其中,通过每只生猪的ROI参数即可得到图像中每只生猪的目标边界框,该目标边界框即为包含生猪区域的矩形框,在实际中,每一张图像输入Mask R-CNN网络后,输出图像中每只生猪的Mask,即生猪掩模,这个掩模即为图像大小维度的0-1矩阵,每只生猪分别在不同的矩阵里,生猪位置矩阵值为1,背景位置矩阵值为0,通过生猪掩模可以得到生猪的mask坐标,其中,生猪掩模可以理解为生猪身体的边界轮廓组成的区域,生猪掩模位于生猪目标边界框内部。
根据图像中每只生猪的ROI参数和mask坐标,提取每只生猪的多维特征向量,将每只生猪的多维特征向量输入预先训练后的分类器中,输出图像中多只生猪的爬跨行为结果,其中,爬跨行为结果包括发生爬跨行为和未发生爬跨行为。
参见图3,在本发明的一个实施例中,Mask R-CNN网络包括主干网络、区域建议网络RPN、ROIAlign层和两个分支网络,主干网络的输入分别连接区域建议网络RPN的输入和ROIAlign层的输入连接,区域建议网络RPN的输出和ROIAlign层的输入连接,ROIAlign层的输出分别与两个分支网络的输入连接。
其中,主干网络,用于对输入的图像进行初步特征图的提取;区域建议网络RPN,用于生成图像的待检测目标框;ROIAlign层,用于将所述待检测目标框映射到所述初步特征图对应的位置上,并利用双线性插值法提取图像中的精确特征图。两个分支网络中的其中一个分支网络,用于输出图像中每只生猪的ROI参数,ROI参数包括每只生猪的目标边界框的左上角顶点坐标和右下角顶点坐标,其中,目标边界框为矩形框,目标边界框包围生猪区域;另一个分支网络,用于输出图像中每只生猪的mask掩模,进而得到mask坐标,mask坐标包括生猪区域内的每一个像素点的坐标。
可参见图3,为Mask R-CNN网络结构示意图,主要包括主干网络、区域建议网络RPN、ROIAlign层和两个分支网络。其中,主干网络对输入的图像进行初步特征图的提取,区域建议网络RPN生成图像的待检测目标框,ROIAlign层将待检测目标框映射到初步特征图对应的位置上,并利用双线性插值法提取图像中的精确特征图。
从ROIAlign层分出来两个分支网络,其中一个分支网络包括7x7卷积核、通道数为256的卷积层和两个1024维特征向量的全连接层,该分支网络输出图像中每只生猪的ROI参数。另一分支网络包括5个14x14大小的卷积核、通道数为256的卷积层,一个28x28的卷积核、通道数为256的卷积层和一个28x28卷积核、通道数为2的卷积层,该分支网络输出图像中每只生猪的mask掩模,进而得到mask坐标。
在本发明的一个实施例中,分类器为极限学习机或支持向量机或BP神经网络分类器。
具体的,当分类器为BP神经网络时,其网络结构如图4所示,BP神经网络(BackPropagation Neural Network)是一种按照误差逆向传播算法训练的多层前馈神经网络。BP网络由输入层、隐藏层和输出层组成,隐藏层神经元的数量决定了BP神经网络的计算精确度和学习速度。隐含层神经元的数量目前还没有固定的计算公式,一般通过经验来确定,常用的两个经验公式为:
sl=log2n; (2)
其中,sl为隐含层神经元个数,n为输入BP神经网络的特征向量的维数,2为输出单元数,即BP神经网络输出结果的类别数,在本发明实施例中,BP神经网络输出结果的类别数为2,即发生爬跨行为和未发生爬跨行为,a为[1,10]之间的常数。
BP神经网络的工作过程主要分为两个阶段,第一阶段是信号的前向传播,从输入层经过隐含层,最后到达输出层;第二阶段是误差的反向传播,从输出层到隐含层,最后到输入层,依次调节隐含层到输出层的权重和偏置和输入层到隐含层的权重和偏置。
BP神经网络分类器的具体工作过程为,向BP神经网络输入的生猪的n维特征向量为:
F=[F1,F2,…Fi…Fn],i=1,2,…,n; (3)
BP神经网络的输出向量为:
T=[T1,T2]; (4)
其中,T1,T2分别表示图像中多只生猪发生爬跨行为和未发生爬跨行为;
隐藏层各神经元的输出为:
O=[O1,O2,…Oj…Osl],j=1,2,…,sl; (5)
其中,sl为隐藏层神经元的个数。
设wij为从输入层第i个神经元与隐藏层第j个神经元之间的连接权重,bij为输入层的第i个神经元到隐藏层第j个神经元的偏置,那么:
T=f(Oj); (6)
其中,f(·)为神经元的激活函数。
本发明的一个实施例还提供了一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上的一种图像灰度增强方法的步骤。
本发明提供的一种生猪爬跨行为检测方法及系统,对于拍摄的猪栏内的图像利用Mask R-CNN网络对图像中的多只生猪的目标边界框和掩模进行提取,根据Mask R-CNN网络提取的每只生猪的目标边界框和掩模,提取每只生猪的多维特征向量,根据每只生猪的多维特征向量,利用分类器对图像中多只生猪的爬跨行为进行分类辨别,提出了一种非接触式、低成本、自动化的生猪爬跨行为识别算法,其可以用来检测生猪的爬跨行为,有助于减轻饲养人员的工作负担,提高养猪业的智能化管理水平。
利用Mask R-CNN网络对图像中多只生猪的掩模进行提取,由于Mask R-CNN是一个复杂的网络,网络参数很大,并且在利用Mask R-CNN网络对生猪的掩模进行提取前,对网络进行训练,在训练集中的数据量足够大的条件下,Mask R-CNN网络可以达到预期效果,训练后的Mask R-CNN网络对生猪掩模的提取不受光照变化的影响,对于图像中重叠生猪的识别性能较好,能够精确提取图像中每只生猪的掩模,使得最终通过分类器分类出的图像中多只生猪的爬跨行为结果也非常准确。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种生猪爬跨行为检测方法,其特征在于,包括:
S1,将拍摄的猪栏内的包含多个生猪的图像输入到预先训练好的Mask R-CNN网络中,输出所述图像中每只生猪的ROI参数和mask坐标;
S2,根据每只生猪的所述ROI参数和mask坐标,提取每只生猪的多维特征向量;
S3,将每只生猪的所述多维特征向量输入预先训练好的分类器中,输出所述图像中多只生猪的爬跨行为结果;
其中,所述ROI参数表征所述图像中每只生猪的目标边界框,每只生猪的所述mask坐标表征所述图像中每只生猪的掩模,所述爬跨行为结果为发生爬跨行为或未发生爬跨行为。
2.根据权利要求1所述的生猪爬跨行为检测方法,其特征在于,通过如下方式对所述Mask R-CNN网络进行训练:
将第一训练集中的每一张图像输入构建的Mask R-CNN网络,输出每一张图像中的每只生猪的mask坐标,其中,所述第一训练集中的每一张图像中的每只生猪的掩模已知;
计算通过Mask R-CNN网络输出的每只生猪的掩模和已知的每只生猪的掩模之间的掩模损失,其中,所述mask坐标和所述掩模可相互转换;
通过调整Mask R-CNN网络的参数,使得所述掩模损失满足收敛条件。
3.根据权利要求1所述的生猪爬跨行为检测方法,其特征在于,通过如下方式对所述分类器进行训练:
提取第二训练集中的每一张图像中的每只生猪的多维特征向量,其中,所述第二训练集中的每一张图像中的多只生猪的爬跨行为结果为已知;
将每一张图像中的每只生猪的多维特征向量输入分类器中,通过分类器输出每一张图像中的多只生猪的爬跨行为结果;
计算通过所述分类器输出的每一张图像的多只生猪的爬跨行为结果和已知爬跨行为结果的差异损失;
通过调整所述分类器的参数,使得差异损失满足第一预设阈值。
4.根据权利要求1或3所述的生猪爬跨行为检测方法,其特征在于,所述分类器为极限学习机或支持向量机或BP神经网络分类器。
5.根据权利要求1所述的生猪爬跨行为检测方法,其特征在于,还包括:
将训练好的Mask R-CNN网络和训练好的分类器作为一个整体网络;
将第三训练集中的每一张图像输入所述整体网络中,输出每一张图像中多只生猪的爬跨行为结果,其中,每一张图像中多只生猪的爬跨行为为已知;
计算通过所述整体网络输出的每一张图像中多只生猪的爬跨行为结果与已知爬跨行为结果之间的准确率;
调整所述Mask R-CNN网络的参数或者所述分类器的参数,使得所述准确率达到第二预设阈值。
6.根据权利要求2所述的生猪爬跨行为检测方法,其特征在于,所述ROI参数包括每只生猪的目标边界框的左上角顶点坐标和右下角顶点坐标,其中,所述目标边界框为矩形框,所述目标边界框包围生猪掩模,所述mask坐标包括每只生猪掩模内的每一个像素点坐标。
7.根据权利要求3所述的生猪爬跨行为检测方法,其特征在于,每只生猪的所述多维特征向量包括每只生猪的掩模周长、半身区域面积以及每只所述生猪的目标边界框的中心点和其它每一只生猪的目标边界框的中心点之间的距离。
8.一种生猪爬跨行为检测系统,其特征在于,包括:
Mask R-CNN网络,用于根据输入的猪栏内包含多个生猪的图像,输出所述图像中每只生猪的ROI参数和mask坐标;
提取模块,用于根据每只生猪的所述ROI参数和mask坐标,提取每只生猪的多维特征向量;
分类器,用于根据图像中每只生猪的所述多维特征向量,输出所述图像中多只生猪的爬跨行为结果;
其中,所述ROI参数表征所述图像中每只生猪的目标边界框,所述mask坐标表征所述图像中每只生猪的掩模,所述爬跨行为结果为发生爬跨行为或未发生爬跨行为。
9.根据权利要求8所述的生猪爬跨行为检测系统,其特征在于,所述Mask R-CNN网络包括主干网络、区域建议网络RPN、ROIAlign层和两个分支网络,所述主干网络的输入分别连接所述区域建议网络RPN的输入和所述ROIAlign层的输入连接,所述区域建议网络RPN的输出和所述ROIAlign层的输入连接,所述ROIAlign层的输出分别与两个分支网络的输入连接;
所述主干网络,用于对输入的图像进行初步特征图的提取;
所述区域建议网络RPN,用于生成图像的待检测目标框;
所述ROIAlign层,用于将所述待检测目标框映射到所述初步特征图对应的位置上,并利用双线性插值法提取图像中的精确特征图;
一个所述分支网络,用于输出图像中每只生猪的ROI参数,所述ROI参数包括每只生猪的目标边界框的左上角顶点坐标和右下角顶点坐标,其中,所述目标边界框为矩形框,所述目标边界框包围生猪掩模;
另一个所述分支网络,用于输出图像中每只生猪的mask坐标,所述mask坐标包括生猪掩模内的每一个像素点的坐标。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至7任一项所述一种生猪爬跨行为检测方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910625612.2A CN110532854B (zh) | 2019-07-11 | 2019-07-11 | 一种生猪爬跨行为检测方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910625612.2A CN110532854B (zh) | 2019-07-11 | 2019-07-11 | 一种生猪爬跨行为检测方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110532854A true CN110532854A (zh) | 2019-12-03 |
CN110532854B CN110532854B (zh) | 2021-11-26 |
Family
ID=68659770
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910625612.2A Active CN110532854B (zh) | 2019-07-11 | 2019-07-11 | 一种生猪爬跨行为检测方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110532854B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111685060A (zh) * | 2020-06-10 | 2020-09-22 | 彭东乔 | 一种基于人工智能对反刍动物发情行为识别的方法 |
CN112016527A (zh) * | 2020-10-19 | 2020-12-01 | 成都大熊猫繁育研究基地 | 基于深度学习的大熊猫行为识别方法、系统、终端及介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014189250A2 (ko) * | 2013-05-22 | 2014-11-27 | 주식회사 아이싸이랩 | 동물들의 코무늬를 이용한 동물 개체 인식 장치 및 방법 |
CN106295558A (zh) * | 2016-08-08 | 2017-01-04 | 华南农业大学 | 一种猪只行为节律分析方法 |
CN108717523A (zh) * | 2018-04-26 | 2018-10-30 | 华南农业大学 | 基于机器视觉的母猪发情行为检测方法 |
CN108830144A (zh) * | 2018-05-03 | 2018-11-16 | 华南农业大学 | 一种基于改进Faster-R-CNN的哺乳母猪姿态识别方法 |
CN109766856A (zh) * | 2019-01-16 | 2019-05-17 | 华南农业大学 | 一种双流RGB-D Faster R-CNN识别哺乳母猪姿态的方法 |
-
2019
- 2019-07-11 CN CN201910625612.2A patent/CN110532854B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014189250A2 (ko) * | 2013-05-22 | 2014-11-27 | 주식회사 아이싸이랩 | 동물들의 코무늬를 이용한 동물 개체 인식 장치 및 방법 |
CN106295558A (zh) * | 2016-08-08 | 2017-01-04 | 华南农业大学 | 一种猪只行为节律分析方法 |
CN108717523A (zh) * | 2018-04-26 | 2018-10-30 | 华南农业大学 | 基于机器视觉的母猪发情行为检测方法 |
CN108830144A (zh) * | 2018-05-03 | 2018-11-16 | 华南农业大学 | 一种基于改进Faster-R-CNN的哺乳母猪姿态识别方法 |
CN109766856A (zh) * | 2019-01-16 | 2019-05-17 | 华南农业大学 | 一种双流RGB-D Faster R-CNN识别哺乳母猪姿态的方法 |
Non-Patent Citations (2)
Title |
---|
QIUMEI YANG ET AL.: "Feeding behavior recognition for group-housed pigs with the Faster R-CNN", 《COMPUTERS AND ELECTRONICS IN AGRICULTURE》 * |
高云等: "基于深度学习的群猪图像实例分割方法", 《农业机械学报》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111685060A (zh) * | 2020-06-10 | 2020-09-22 | 彭东乔 | 一种基于人工智能对反刍动物发情行为识别的方法 |
CN111685060B (zh) * | 2020-06-10 | 2022-02-08 | 彭东乔 | 一种基于人工智能对反刍动物发情行为识别的方法 |
CN112016527A (zh) * | 2020-10-19 | 2020-12-01 | 成都大熊猫繁育研究基地 | 基于深度学习的大熊猫行为识别方法、系统、终端及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110532854B (zh) | 2021-11-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wang et al. | ASAS-NANP SYMPOSIUM: Applications of machine learning for livestock body weight prediction from digital images | |
Sadoul et al. | A new method for measuring group behaviours of fish shoals from recorded videos taken in near aquaculture conditions | |
US20180047159A1 (en) | Computerized device and method for processing image data | |
CN107316058A (zh) | 通过提高目标分类和定位准确度改善目标检测性能的方法 | |
CN112016527B (zh) | 基于深度学习的大熊猫行为识别方法、系统、终端及介质 | |
CN108280827A (zh) | 基于深度学习的冠状动脉病变自动检测方法、系统和设备 | |
CN107944399A (zh) | 一种基于卷积神经网络目标中心模型的行人重识别方法 | |
Zhang et al. | Algorithm of sheep body dimension measurement and its applications based on image analysis | |
CN110532850B (zh) | 一种基于视频关节点和混合分类器的跌倒检测方法 | |
CN109033945A (zh) | 一种基于深度学习的人体轮廓提取方法 | |
CN106340000A (zh) | 骨龄评估方法 | |
CN110532854A (zh) | 一种生猪爬跨行为检测方法及系统 | |
KR20190105180A (ko) | 합성곱 신경망 기반의 병변 진단 장치 및 방법 | |
CN103824057B (zh) | 一种基于面积特征算子的猪的呼吸频率检测方法 | |
Jia et al. | Segmentation of body parts of cows in RGB-depth images based on template matching | |
US20210279855A1 (en) | Neural network-based systems and computer-implemented methods for identifying and/or evaluating one or more food items present in a visual input | |
CN108460370B (zh) | 一种固定式家禽生命信息报警装置 | |
CN113435355A (zh) | 多目标奶牛身份识别方法及系统 | |
CN112288793A (zh) | 畜类个体背膘检测方法、装置、电子设备及存储介质 | |
Cao et al. | An automated zizania quality grading method based on deep classification model | |
Yang et al. | A comparative evaluation of convolutional neural networks, training image sizes, and deep learning optimizers for weed detection in alfalfa | |
CN107239827A (zh) | 一种基于人工神经网络的空间信息学习方法 | |
Zhu et al. | Detection the maturity of multi-cultivar olive fruit in orchard environments based on Olive-EfficientDet | |
Zhang et al. | Fully automatic system for fish biomass estimation based on deep neural network | |
Joo et al. | Birds' Eye View: Measuring Behavior and Posture of Chickens as a Metric for Their Well-Being |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |