CN112364763B - 基于边缘计算的仔猪吃奶行为监测系统 - Google Patents
基于边缘计算的仔猪吃奶行为监测系统 Download PDFInfo
- Publication number
- CN112364763B CN112364763B CN202011248694.2A CN202011248694A CN112364763B CN 112364763 B CN112364763 B CN 112364763B CN 202011248694 A CN202011248694 A CN 202011248694A CN 112364763 B CN112364763 B CN 112364763B
- Authority
- CN
- China
- Prior art keywords
- data
- piglet
- target detection
- area
- detection frame
- 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.)
- Active
Links
- 239000008267 milk Substances 0.000 title claims abstract description 42
- 210000004080 milk Anatomy 0.000 title claims abstract description 42
- 235000013336 milk Nutrition 0.000 title claims abstract description 42
- 238000004364 calculation method Methods 0.000 title claims abstract description 30
- 238000012544 monitoring process Methods 0.000 title claims abstract description 14
- 238000012545 processing Methods 0.000 claims abstract description 33
- 230000005540 biological transmission Effects 0.000 claims abstract description 22
- 238000013500 data storage Methods 0.000 claims abstract description 14
- 238000003860 storage Methods 0.000 claims abstract description 6
- 238000001514 detection method Methods 0.000 claims description 109
- 230000006651 lactation Effects 0.000 claims description 34
- 238000000034 method Methods 0.000 claims description 16
- 230000009471 action Effects 0.000 claims description 12
- 238000012549 training Methods 0.000 claims description 10
- 230000008859 change Effects 0.000 claims description 8
- 238000004140 cleaning Methods 0.000 claims description 6
- 238000012360 testing method Methods 0.000 claims description 6
- 210000001015 abdomen Anatomy 0.000 claims description 5
- 230000001133 acceleration Effects 0.000 claims description 5
- 210000000481 breast Anatomy 0.000 claims description 4
- 210000003141 lower extremity Anatomy 0.000 claims description 4
- 230000000007 visual effect Effects 0.000 claims description 4
- 210000003194 forelimb Anatomy 0.000 claims description 3
- 230000000474 nursing effect Effects 0.000 claims description 3
- 238000012216 screening Methods 0.000 claims description 3
- 238000013079 data visualisation Methods 0.000 abstract description 7
- 230000006399 behavior Effects 0.000 description 23
- 238000005516 engineering process Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 238000013461 design Methods 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000013135 deep learning Methods 0.000 description 4
- 238000009395 breeding Methods 0.000 description 3
- 230000001488 breeding effect Effects 0.000 description 3
- 238000009434 installation Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000004806 packaging method and process Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000013138 pruning Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 206010033799 Paralysis Diseases 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 235000019788 craving Nutrition 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 210000003414 extremity Anatomy 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000284 resting effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000002054 transplantation Methods 0.000 description 1
Classifications
-
- 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/20—Movements or behaviour, e.g. gesture recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/71—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/75—Clustering; Classification
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/02—Agriculture; Fishing; Forestry; Mining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/18—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
- H04N7/181—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a plurality of remote sources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/07—Target detection
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Signal Processing (AREA)
- Molecular Biology (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Artificial Intelligence (AREA)
- Business, Economics & Management (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Economics (AREA)
- Animal Husbandry (AREA)
- Human Computer Interaction (AREA)
- Agronomy & Crop Science (AREA)
- Human Resources & Organizations (AREA)
- Marine Sciences & Fisheries (AREA)
- Mining & Mineral Resources (AREA)
- Marketing (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Image Processing (AREA)
Abstract
本发明公开了一种基于边缘计算的仔猪吃奶行为监测系统,包括仔猪吃奶算法部分、边缘计算部分、网络传输部分、数据存储部分和数据可视化部分。仔猪吃奶算法部分是对仔猪吃奶行为进行监测的依据。边缘计算部分由数据采集模块和数据处理模块组成,数据采集模块是采用摄像头采集母猪产床上的实时视频数据,将采集到的实时视频数据传输至Jetson nano嵌入式设备,Jetson nano将处理完成后的结构化数据打包,利用网络传输部分,将处理后的数据结果传输至本地服务器与云服务器进行存储,在云服务器中对结构化数据结果进行清洗与重组,将结果发送至移动端进行展示。本发明可作为高效、安全的、便捷的新一代智慧养殖系统。
Description
技术领域
本发明涉及图像处理技术、目标识别技术、边缘计算技术及网络传输技术,具体地讲是一种基于基于边缘计算的仔猪吃奶行为监测系统。
背景技术
云计算技术能很好地解决互联网终端设备对计算资源的渴求与自身资源受限的矛盾,形成强大的集中式计算规模效益,推动万物互联的物联网技术迅速发展。然而固定化的传输方式无法满足多样化的需求,移动云计算技术应运而生。但网络终端设备数量的急剧增加会导致云计算中心计算压力过大、数据传输延迟高无法满足实时应用要求、终端节点传输能耗高等问题。越来越多的数据在网络中的边缘设备产生,利用边缘计算技术直接在边缘设备上进行数据处理可以有效减轻中心服务器的负担,保障数据的安全性。
我国规模化养猪场数量不断增加,养殖规模的不断扩大,猪场信息数据的日产生量也会出现爆发式增长,若所有的数据均依赖云端服务器进行处理,这不仅会产生信息安全问题,形成数据冗余,一旦云服务器出现问题,边缘设备将无法继续有效工作,造成经济损失。
发明内容
本发明针对背景技术中存在的问题,提出了一种基于边缘计算的仔猪吃奶行为监测系统。本申请主要分为算法设计与硬件移植两个部分。(1)算法部分主要采用yolov4-tiny为主干模型,通过已采集到的俯拍哺乳期母猪与仔猪视频,处理得到仔猪吃奶行为数据集。哺乳区域的标注位置为--母猪为侧卧姿态时,前肢到后肢的腹部乳房区域。标注完成后按比例划分训练集、测试集和验证集图片,建立数据集。利用yolov4-tiny网络训练数据集,得到仔猪--哺乳区域检测模型。根据仔猪检测框与哺乳区域检测框的位置关系以及时序位置分析建立仔猪吃奶行为检测模型。(2)硬件移植部分采用Jetson nano嵌入式设备作为边缘核心处理器,通过摄像头采集仔猪的实时数据传入Jetson nano进行处理,构建数据边缘计算平台。视频解码处理通过Deepstream框架进行,yolov4-tiny模型通过模型剪枝与结构转换,形成Tensorrt网络下的运行结构,进一步减小模型大小并提升模型运算效率,最终将Tensorrt结构下的yolov4-tiny部署到Jetson nano嵌入式结构,完成实时的边缘设备计算。最后,将Jetson nano上处理得到的结构化数据分别传输至本地服务器与云服务器,从而确保数据的安全以及系统响应效率。最终实现边缘计算的仔猪吃奶行为监测系统,确保系统功能的安全性与高效性。
技术方案:
一种基于边缘计算的仔猪吃奶行为监测系统,它包括:
-数据采集层:包括若干摄像头,由摄像头采集视频数据;
-数据处理层:包括若干Jetson nano嵌入式设备,单个Jetson nano嵌入式设备接收若干摄像头采集的视频数据,进行实时数据处理与传输;
-数据传输层:通过网络节点将多个Jetson nano嵌入式设备发送的数据传输至数据存储层;
-数据存储层:包括云服务器、本地服务器和其他设备,对处理后的数据进行分类存储,在服务器中对每类的所属数据进行清洗和重组,把处理后的结果送至数据展示层。
-数据展示层:包括移动/PC端,将数据存储层发送的数据进行用户端的可视化展示。
优选的,系统基于仔猪吃奶检测算法:使用yolov4-tiny为主干网络,通过yolov4-tiny算法识别仔猪与母猪哺乳区的目标检测框,根据两种检测框的不同位置关系以及时序关系,进行仔猪吃奶行为的判断。
具体的,仔猪目标检测框的四个点分别为a、b、c、d,对应坐标为(Xa,Ya)、(Xb,Yb)、(Xc,Yc)、(Xd,Yd);母猪哺乳区域的目标检测框四个点分别为A、B、C、D,对应的坐标为(XA,YA)、(XB,YB)、(XC,YC)、(XD,YD),仔猪吃奶检测算法具体流程为:
S1、采集母猪产床上的仔猪与母猪俯拍数据;
S2、对数据进行清洗、筛选,删除无关图片,对图片进行标注,标注标签分别为仔猪与哺乳区域,仔猪目标以矩形框进行标注,哺乳区域以母猪为侧卧姿态时,前肢到后肢的腹部乳房区域进行标注,并根据8:2比例划分训练集与测试集图片,构建仔猪与母猪哺乳区域的目标检测数据集;
S3、用yolov4-tiny模型对数据集进行训练得到仔猪--哺乳区域目标检测模型;
S4、使用仔猪--哺乳区域目标检测模型得到多个仔猪目标检测框与一个哺乳区域目标检测框;
S5、根据连续时间内的仔猪目标检测框中心位置变化幅度来判断仔猪是否在运动;
S6、判定仔猪为运动状态后,计算仔猪目标检测框与母猪哺乳区域目标检测相交面积s;相交面积/仔猪目标检测框面积大于设定阈值时判定为疑似吃奶行为;
S7、通过仔猪目标检测框的长与哺乳区域检测框的长之间的夹角关系判定仔猪是否为吃奶行为。
优选的,S5中,仔猪目标检测框中心位置变化幅度如下:
S5-1、仔猪目标检测框的中心点坐标为
S5-2、中心点坐标变化计算公式为式中,(x,y)为前一帧的仔猪目标检测框的中心点坐标,(x',y')为后一帧的中心点坐标。
优选的,S6中,计算两个目标检测框的相交面积的计算流程为:
S6-1、判断是否相交:对两个目标检测框的Y轴坐标(Ya,Yb,Yc,Yd)与(YA,YB,YC,YD)分别进行排序,若满足下列任一条件,则判定两个目标检测框之间存在相交面积s,条件:
min(Ya,Yb,Yc,Yd)<max(YA,YB,YC,YD)且max(Ya,Yb,Yc,Yd)>max
(YA,YB,YC,YD);
max(Ya,Yb,Yc,Yd)>min(YA,YB,YC,YD)且min(Ya,Yb,Yc,Yd)<min
(YA,YB,YC,YD);
S6-2、计算获得相交点坐标;
S6-3、联立仔猪目标检测框的两个端点获得相交面积s。
优选的,S7中,夹角计算方法为:
S7-1、选取仔猪目标检测框与哺乳区域检测框之间的一个交点o,以及两个检测框上对应的角点坐标c和B,o点坐标为:
oc向量为:
oB向量为:
S7-2、夹角∠o=arccos∠o{[(Xc-Xo)(XB-Xo)+(Yb-Yo)(YB-Yo)]/|oc||oB|},其中,(Xo,Yo)为o点坐标简化记法。
优选的,Jetson nano嵌入式设备配备GPU,采用NVIDIA开发的Tensorrt框架,将检测模型转换为Tensorrt框架下运行的格式。
优选的,系统执行边缘计算:
首先通过摄像头采集实时视频数据传输给Jetson nano嵌入式设备进行数据处理,Jetson nano通过Deepstream框架对多路视频数据进行解码和切片处理;
之后采用Tensorrt网络加速后的yolov4-tiny模型对处理后的数据进行推理检测,得出相应结果;
最后根据处理结果自动化决策是否触发报警,同时通过网络节点,将处理后的数据传输至本地服务器和云服务器进行分类存储。
优选的,Jetson nano配置无线网卡模块,上位机与Jetson nano嵌入式设备接入统一网络节点,然后上位机利用SSH协议与Jetson nano设备进行通讯,并控制和读取Jetson nano实时状态。
本发明的有益效果
(1)提出一种新的仔猪吃奶行为监测方法,为智能化养殖提供技术支持。
(2)通过对深度学习算法的嵌入式部署,实现边缘计算模式下的仔猪吃奶行为识别任务,能够有效减少中心服务器的运行压力、提升运行速度、保证数据的安全性,同时确保在中心服务器出现故障的情况下,整个系统的基本功能可以继续运行,从而降低可能带来的经济损失。
(3)部分小型养殖场对智能化养殖装备的需求中可能不需要调用昂贵的云服务器,采用边缘计算模式对仔猪进行目标识别摆脱对云服务器的依赖,可以使得本系统更好地适用于不同规模的养殖场。
(4)将图像采集设备与数据处理设备进行集成,并利用无线传输模式进行数据传输与系统控制,能够实现便捷式安装,可以有效减少系统的安装成本与安装的工作量。
(5)用户通过不同客户端对数据进行查询,界面提供整体和分栏数据展示,可以满足养殖人员不同的个性化需求,更加方便、高效地查询到自己想要的信息。
附图说明
图1为本发明的系统框架图
图2为仔猪目标检测框与哺乳区域目标检测框长边夹角示意图
图3为仔猪吃奶算法流程图
图4为边缘计算部分总体流程图
图5为Jetson nano数据处理流程图
图6为网络传输部分框架图
图7为数据存储与可视化框架图
图8为数据存储与展示结构图
图9为服务器数据处理流程图
图10为Tensorrt模型生成流程图
图11为本发明的系统工作流程图
具体实施方式
下面结合实施例对本发明作进一步说明,但本发明的保护范围不限于此:
结合图1,本专利“基于边缘计算的仔猪吃奶行为监测系统”以yolov4-tiny为主干网络构建仔猪吃奶行为识别模型,以Jetson nano嵌入式设备作为核心处理器,开发基于Jetson nano的仔猪吃奶行为监测平台,构建边缘计算模式下的仔猪信息采集系统。可作为高效、安全的、便捷的新一代智慧养殖系统。基于边缘计算的仔猪吃奶行为监测系统主要包括边缘计算部分、网络传输部分、数据存储部分和数据可视化部分。边缘计算部分由数据采集模块和数据处理模块组成,数据采集模块是采用摄像头采集母猪产床上的实时视频数据,将采集到的实时视频数据传输至Jetson nano嵌入式设备,在Jetson nano上实现对数据流的解析、处理与传输。每台Jetson nano设备理论上最多同时支持8路摄像头的实时数据处理与传输。将处理完成后的结构化数据打包,利用网络传输部分,将处理后的数据结果传输至本地服务器与云服务器进行存储,在云服务器中对结构化数据结果进行清洗与重组,将结果发送至移动端进行展示。
结合图11,系统整体运行流程为:
Step1:多路摄像头采集多路视频数据
Step2:Jetson nano自带各类数据接口均不超过8路,因此通过多路视频转换接口将多路视频信号转换为单路输入
Step3:利用上位机监控Jetson nano对视频流数据进行读取与处理
Step4:Jetson nano检测是否存在需要报警事项,若存在需要报警的事项则执行本地报警动作,同时将处理后的数据结果发送至云服务器和本地服务器
Step5:服务器将数据进行清洗、存储,并根据客户端请求将相应数据发送至客户端进行可视化显示。
系统功能说明:
(1)视频采集部分
主要由多路摄像头和多路视频转换接口组成,首先通过多路摄像头采集多路视频数据,利用多路视频转换接口将多路视频流转换成单路视频流输入至Jetson nano嵌入式设备。
(2)边缘计算部分
主要由Jetson nano嵌入式设备组成,将深度学习算法进行模型转换后部署至Jetson nano上,利用Deepstream将多路视频信号进行解码,通过部署完成的深度学习算法实现仔猪吃奶行为检测,并根据检测结果判定是否进行本地报警动作,同时将处理后的结果数据传输至无线网关节点。
(3)上位机控制部分
上位机通过SSH协议与Jetson nano嵌入式设备进行通讯,监测并控制Jetsonnano设备的运行。
(4)网络传输部分
主要由无线网关节点组成,通过WiFi协议连通Jetson nano、本地设备与服务器,数据通过无线网络进行传输。
(5)数据存储部分
通过服务器接收处理过后的数据图像,并建立客户端响应接口,对客户端的数据请求作出响应,发送处理后信息。
(6)数据可视化部分
设计客户端使用程序,接收数据并进行可视化展示,为用户提供实时数据查询和历史数据查询功能,方便用户对猪舍进行管理。
模型构建部分首先是采集俯拍情况下的哺乳期母猪与仔猪视频,选取仔猪吃奶时间段视频并且按帧对视频进行截取,清洗得到的帧数据,并将其以一定比例划分训练集、测试集和验证集,构建仔猪吃奶行为检测数据集。构建yolov4-tiny网络,并导入建立好的数据集进行yolov4-tiny仔猪--哺乳区目标检测模型。通过仔猪--哺乳区目标检测模型可以在仔猪出现吃奶行为时,检测出仔猪目标检测框与哺乳区目标检测框。根据仔猪目标检测框与哺乳区目标检测框的位置关系以及时序关系进行仔猪吃奶行为算法的建立。边缘计算部分首先通过摄像头采集实时视频数据传输给Jetson nano设备进行数据处理,Jetsonnano通过Deepstream框架对多路视频数据进行解码和切片处理,之后采用Tensorrt网络加速后的yolov4-tiny模型对处理后的数据进行推理检测,得出相应结果。随后根据处理结果自动化决策是否触发报警,同时通过网络节点,将处理后的数据传输至本地服务器和云服务器进行分类存储。在服务器中对每类的所属数据进行清洗和重组,把处理后的结果送至移动或PC端,完成用户端的可视化数据展示。通过该边缘计算模式下的仔猪吃奶行为监测系统能够对哺乳期仔猪的吃奶行为进行高效、准确的行为识别,满足智慧养殖的需求,同时在边缘计算模式下能够确保数据的安全性,防止中心服务器出现问题的情况下整体系统瘫痪的情况,减少可能带来的经济损失。
仔猪吃奶检测算法的设计
仔猪吃奶检测算法主要是使用yolov4-tiny为主干网络,通过yolov4-tiny算法识别仔猪与母猪哺乳区的目标检测框,根据两种检测框的不同位置关系以及时序关系,进行仔猪吃奶行为的判断。结合图2,设图片中某一只仔猪目标检测框的四个点分别为a、b、c、d,对应坐标为(Xa,Ya)、(Xb,Yb)、(Xc,Yc)、(Xd,Yd);母猪哺乳区域的目标检测框四个点分别为A、B、C、D,对应的坐标为(XA,YA)、(XB,YB)、(XC,YC)、(XD,YD);1为仔猪目标检测框,2为母猪哺乳区域目标检测框,3为母猪腹部线条示意,4为母猪哺乳区域目标检测框长边延长线,5为仔猪目标检测框长边延长线,6为仔猪目标检测框与母猪哺乳区域检测框相交面积s;结合图3,具体算法流程如下:
Step1:采集母猪产床上的仔猪与母猪俯拍数据;
Step2:对数据进行清洗、筛选,删除无关图片,对图片进行标注,标注标签分别为仔猪与哺乳区域,仔猪目标以矩形框进行标注,哺乳区域以母猪为侧卧姿态时,前肢到后肢的腹部乳房区域进行标注,并根据8:2比例划分训练集与测试集图片,构建仔猪与母猪哺乳区域的目标检测数据集;
Step3:使用yolov4-tiny模型对数据集进行训练,以5000张数据集图片为例,epoch设置为20000,learning rate设置为0.0001。经过训练得到仔猪--哺乳区域目标检测模型;
Step4:使用仔猪--哺乳区域目标检测模型能够得到多个仔猪目标检测框与一个哺乳区域目标检测框;
Step5:每个仔猪目标检测框都存在一个中心,根据连续时间内的仔猪目标检测框中心位置变化幅度来判断仔猪是否在运动,例如连续5s内检测到仔猪目标检测框的中心点变化幅度超过10个像素点位置,则判定仔猪为运动状态,反之判定仔猪为休息状态。
设某个仔猪目标检测框的中心点坐标为
设(x,y)为前一帧的仔猪目标检测框的中心点坐标,(x',y')为后一帧的中心点坐标,则中心点坐标变化计算公式为
Step6:在判定仔猪为运动状态后,计算仔猪目标检测框与母猪哺乳区域目标检测相交面积s,设定相交面积/仔猪目标检测框面积大于设定阈值时判定为疑似吃奶行为,例如面积阈值为0.2,则相交面积/仔猪目标检测框面积大于0.2时,仔猪为疑似吃奶动作,反之为其他动作
计算两个目标检测框的相交面积的计算流程为,
首先对两个目标检测框的Y轴坐标(Ya,Yb,Yc,Yd)与(YA,YB,YC,YD)分别进行排序,是否满足min(Ya,Yb,Yc,Yd)<max(YA,YB,YC,YD)且max(Ya,Yb,Yc,Yd)>max(YA,YB,YC,YD)或者max(Ya,Yb,Yc,Yd)>min(YA,YB,YC,YD)且min(Ya,Yb,Yc,Yd)<min(YA,YB,YC,YD),当满足这一条件时,可判断两个目标检测框之间存在相交面积s,反之不存在。
假设排序结果为Yb>Yc>Ya>Yd与YA>YB>YD>YC,那么得到两个检测框的相交点坐标为:
和/>联立(Xa,Ya),(Xd,Yd)可计算得到相交面积s,对相交面积与仔猪目标检测框的面积进行比较,相交面积/仔猪目标检测框面积>设定阈值即判定为疑似吃奶行为,反之为其他行为;
Step7:检测到仔猪为疑似吃奶动作之后,通过仔猪目标检测框的长与哺乳区域检测框的长之间的夹角关系判定仔猪是否为吃奶行为,例如,设定阈值为30度,则仔猪目标检测框的长与哺乳区域检测框的长之间的夹角大于30度时,则判定为仔猪吃奶,反之为其它动作。夹角计算方法为:
选取Step6计算得到的一个交点坐标设为o,和两个检测框上对应的角点坐标c和B,o点坐标为:
那么oc向量为:
oB向量为:
将o点坐标简化记为(Xo,Yo);
根据角度计算公式即可得到:
∠o=arccos∠o{[(Xc-Xo)(XB-Xo)+(Yb-Yo)(YB-Yo)]/|oc||oB|}
根据o点角度与所给定的阈值之间的关系,判断仔猪是否为吃奶行为。
边缘计算部分设计
边缘计算部分主要由图像采集和数据处理部分组成,结构框图如图4所示。
视频流数据在Jetson nano处理部分的流程如图5所示,对多路视频流的处理主要依托于Deepstream框架下提供的Decoder解码加速功能,由于嵌入式处理器相较于云服务器的算力差距较大,对当前的深度学习主流目标检测算法在嵌入式设备上的部署难以取得较好地实际运行效果,因此本专利采用模型体积较小的yolov4-tiny模型,同时利用Tensorrt框架对yolov4-tiny模型进行剪枝与运算加速,确保yolov4-tiny模型在Jetsonnano设备上的有效运行。
边缘计算部分首先通过获得多路摄像头的视频流数据,将多路视频流数据输入Jetson nano嵌入式设备进行处理。处理步骤为:
Step1:解析器解析输入多路视频流
Step2:汇总多路数据,排队等待数据切片
Step3:将转换好的Tensorrt模型导入Jetson nano的数据推理模块
Step4:推理器加载,依次处理切片后数据,绘制推理结果
Step5:对处理结果进行分析,决策是否执行本地预警/报警动作,并将处理结果进行打包准备发送到服务器存储。
网络传输部分设计
网络传输部分主要由网络传输节点和上位机组成,结构框图如图6所示。网络传输部分中,Jetson nano配置无线网卡模块,上位机与Jetson nano嵌入式设备接入统一网络节点,然后上位机利用SSH协议与Jetson nano设备进行通讯,并控制和读取Jetson nano实时状态。Jetson nano设备利用无线网络节点进行数据的传输和存储,同时向本地响应设备发送信号。
数据存储与数据可视化部分的设计
数据存储部分主要由本地服务器和云服务器组成,数据可视化部分主要由云服务器和客户端组成,结构框图如图7所示。
服务器主要用于视频数据的接收、存储以及传输,显示模块主要用于展示处理后的数据,包括移动端与网页端,能够提供实时数据以及历史数据的查询,提供个性化展示界面。相关模块结构图如图8所示。
数据存储部分主要是将Jetson nano处理完成的结构化数据存储到本地服务器和云服务器中,同时在云服务器中对结构化数据进行清洗去除无用的数据,之后对清洗后的数据进行重组,将重组后的数据发送至客户端,完成数据可视化。在云服务器中的数据操作流程如图9所示。
识别算法部署设计
Jetson nano嵌入式设备配备GPU,但算力相对于显卡级别只有0.5,若直接将相关深度学习模型移植到Jetson nano设备上将无法得到较好地处理效果,因此需要对相关模型进行剪枝与加速,采用NVIDIA开发的Tensorrt框架,将深度学习检测模型转换为Tensorrt框架下运行的格式,由于Jetson nano算力不足,模型训练依旧依托电脑主机进行,以Darknet框架为例,Tensorrt模型生成步骤如图10所示。
本文中所描述的具体实施例仅仅是对本发明精神做举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。
Claims (7)
1.一种基于边缘计算的仔猪吃奶行为监测系统,其特征在于它包括:
-数据采集层:包括若干摄像头,由摄像头采集视频数据;
-数据处理层:包括若干Jetson nano嵌入式设备,单个Jetson nano嵌入式设备接收若干摄像头采集的视频数据,进行实时数据处理与传输;
-数据传输层:通过网络节点将多个Jetson nano嵌入式设备发送的数据传输至数据存储层;
-数据存储层:包括云服务器、本地服务器和其他设备,对处理后的数据进行分类存储,在服务器中对每类的所属数据进行清洗和重组,把处理后的结果送至数据展示层;
-数据展示层:包括移动/PC端,将数据存储层发送的数据进行用户端的可视化展示;
系统基于仔猪吃奶检测算法:使用yolov4-tiny为主干网络,通过yolov4-tiny算法识别仔猪与母猪哺乳区的目标检测框,根据两种检测框的不同位置关系以及时序关系,进行仔猪吃奶行为的判断;
仔猪目标检测框的四个点分别为a、b、c、d,对应坐标为(Xa,Ya)、(Xb,Yb)、(Xc,Yc)、(Xd,Yd);母猪哺乳区域的目标检测框四个点分别为A、B、C、D,对应的坐标为(XA,YA)、(XB,YB)、(XC,YC)、(XD,YD),仔猪吃奶检测算法具体流程为:
S1、采集母猪产床上的仔猪与母猪俯拍数据;
S2、对数据进行清洗、筛选,删除无关图片,对图片进行标注,标注标签分别为仔猪与哺乳区域,仔猪目标以矩形框进行标注,哺乳区域以母猪为侧卧姿态时,前肢到后肢的腹部乳房区域进行标注,并根据8:2比例划分训练集与测试集图片,构建仔猪与母猪哺乳区域的目标检测数据集;
S3、用yolov4-tiny模型对数据集进行训练得到仔猪--哺乳区域目标检测模型;
S4、使用仔猪--哺乳区域目标检测模型得到多个仔猪目标检测框与一个哺乳区域目标检测框;
S5、根据连续时间内的仔猪目标检测框中心位置变化幅度来判断仔猪是否在运动;
S6、判定仔猪为运动状态后,计算仔猪目标检测框与母猪哺乳区域目标检测相交面积s;相交面积/仔猪目标检测框面积大于设定阈值时判定为疑似吃奶行为;
S7、通过仔猪目标检测框的长与哺乳区域检测框的长之间的夹角关系判定仔猪是否为吃奶行为。
2.根据权利要求1所述的系统,其特征在于S5中,仔猪目标检测框中心位置变化幅度如下:
S5-1、仔猪目标检测框的中心点坐标为
S5-2、中心点坐标变化计算公式为式中,(x,y)为前一帧的仔猪目标检测框的中心点坐标,(x',y')为后一帧的中心点坐标。
3.根据权利要求1所述的系统,其特征在于S6中,计算两个目标检测框的相交面积的计算流程为:
S6-1、判断是否相交:对两个目标检测框的Y轴坐标(Ya,Yb,Yc,Yd)与(YA,YB,YC,YD)分别进行排序,若满足下列任一条件,则判定两个目标检测框之间存在相交面积s,条件:
min(Ya,Yb,Yc,Yd)<max(YA,YB,YC,YD)且max(Ya,Yb,Yc,Yd)>max(YA,YB,
YC,YD);
max(Ya,Yb,Yc,Yd)>min(YA,YB,YC,YD)且min(Ya,Yb,Yc,Yd)<min(YA,YB,
YC,YD);
S6-2、计算获得相交点坐标;
S6-3、联立仔猪目标检测框的两个端点获得相交面积s。
4.根据权利要求1所述的系统,其特征在于S7中,夹角计算方法为:
S7-1、选取仔猪目标检测框与哺乳区域检测框之间的一个交点o,以及两个检测框上对应的角点坐标c和B,o点坐标为:
oc向量为:
oB向量为:
S7-2、夹角∠o=arccos∠o{[(Xc-Xo)(XB-Xo)+(Yb-Yo)(YB-Yo)]/|oc||oB|},其中,(Xo,Yo)
为o点坐标简化记法。
5.根据权利要求1所述的系统,其特征在于Jetson nano嵌入式设备配备GPU,采用NVIDIA开发的Tensorrt框架,将检测模型转换为Tensorrt框架下运行的格式。
6.根据权利要求1所述的系统,其特征在于系统执行边缘计算:
首先通过摄像头采集实时视频数据传输给Jetson nano嵌入式设备进行数据处理,Jetson nano通过Deepstream框架对多路视频数据进行解码和切片处理;
之后采用Tensorrt网络加速后的yolov4-tiny模型对处理后的数据进行推理检测,得出相应结果;
最后根据处理结果自动化决策是否触发报警,同时通过网络节点,将处理后的数据传输至本地服务器和云服务器进行分类存储。
7.根据权利要求1所述的系统,其特征在于Jetson nano配置无线网卡模块,上位机与Jetson nano嵌入式设备接入统一网络节点,然后上位机利用SSH协议与Jetson nano设备进行通讯,并控制和读取Jetson nano实时状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011248694.2A CN112364763B (zh) | 2020-11-10 | 2020-11-10 | 基于边缘计算的仔猪吃奶行为监测系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011248694.2A CN112364763B (zh) | 2020-11-10 | 2020-11-10 | 基于边缘计算的仔猪吃奶行为监测系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112364763A CN112364763A (zh) | 2021-02-12 |
CN112364763B true CN112364763B (zh) | 2024-01-26 |
Family
ID=74509281
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011248694.2A Active CN112364763B (zh) | 2020-11-10 | 2020-11-10 | 基于边缘计算的仔猪吃奶行为监测系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112364763B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112990073A (zh) * | 2021-03-31 | 2021-06-18 | 南京农业大学 | 基于边缘计算的哺乳期仔猪活动规律统计系统 |
CN115019391A (zh) * | 2022-05-27 | 2022-09-06 | 南京农业大学 | 基于YOLOv5和C3D的仔猪吃奶行为检测系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107067365A (zh) * | 2017-04-25 | 2017-08-18 | 中国石油大学(华东) | 基于深度学习的分布嵌入式实时视频流处理系统及方法 |
CN110147771A (zh) * | 2019-05-23 | 2019-08-20 | 南京农业大学 | 基于母猪关键部位与环境联合分区的母猪侧卧姿态实时检测系统 |
CN111242025A (zh) * | 2020-01-13 | 2020-06-05 | 佛山科学技术学院 | 一种基于yolo的动作实时监测方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107818571B (zh) * | 2017-12-11 | 2018-07-20 | 珠海大横琴科技发展有限公司 | 基于深度学习网络和均值漂移的船只自动跟踪方法及系统 |
-
2020
- 2020-11-10 CN CN202011248694.2A patent/CN112364763B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107067365A (zh) * | 2017-04-25 | 2017-08-18 | 中国石油大学(华东) | 基于深度学习的分布嵌入式实时视频流处理系统及方法 |
CN110147771A (zh) * | 2019-05-23 | 2019-08-20 | 南京农业大学 | 基于母猪关键部位与环境联合分区的母猪侧卧姿态实时检测系统 |
CN111242025A (zh) * | 2020-01-13 | 2020-06-05 | 佛山科学技术学院 | 一种基于yolo的动作实时监测方法 |
Non-Patent Citations (1)
Title |
---|
基于MPU6050传感器的哺乳期母猪姿态识别方法;闫丽 等;农业机械学报;第46卷(第05期);279-285 * |
Also Published As
Publication number | Publication date |
---|---|
CN112364763A (zh) | 2021-02-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104794214B (zh) | 一种设计大数据驱动云机器人的方法 | |
CN112364763B (zh) | 基于边缘计算的仔猪吃奶行为监测系统 | |
CN106056106B (zh) | 一种草原放牧绵羊牧食行为检测系统及其检测方法 | |
Karthick et al. | Internet of things based high security border surveillance strategy | |
CN202904667U (zh) | 基于移动终端的作物病害识别系统 | |
CN101894220A (zh) | 一种畜禽健康状况数据采集系统 | |
WO2024099313A1 (zh) | 一种云边端协同智能婴儿护理系统及方法 | |
Ding et al. | Environment monitoring and early warning system of facility agriculture based on heterogeneous wireless networks | |
CN105748046A (zh) | 基于红外热像图的温度信息监测方法及其系统 | |
CN106296788A (zh) | 一种跨机房集群渲染部署实现系统 | |
KR20190028021A (ko) | 센서 기술을 활용한 애완동물 상태 분석 방법 및 시스템 | |
Zhang et al. | Dynamic fry counting based on multi-object tracking and one-stage detection | |
CN205175997U (zh) | 一种奶牛乳腺炎无线监测系统 | |
CN113221776B (zh) | 一种基于人工智能对反刍动物一般行为识别的方法 | |
Li et al. | A review of rgb image-based internet of things in smart agriculture | |
CN108111549A (zh) | 移动机器人远程控制系统 | |
CN109509558A (zh) | 基于b/s架构的发热疫情快速反应智能公卫服务系统 | |
CN106614071A (zh) | 一种母猪产前行为监测系统以及方法 | |
Ji et al. | A Comprehensive Review of the Research of the “Eye–Brain–Hand” Harvesting System in Smart Agriculture | |
CN113723241A (zh) | 一种基于姿态估计的手卫生监测系统 | |
CN104732185A (zh) | 一种农产品市场信息采集方法及装置 | |
CN107609586A (zh) | 一种基于自我监督的视觉表征学习方法 | |
CN109165596A (zh) | 一种基于智慧农村ai系统的农产品溯源方法 | |
CN206003119U (zh) | 一种草原放牧绵羊牧食行为检测系统 | |
CN115077488B (zh) | 一种基于数字孪生的厂区人员实时定位监测系统和方法 |
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 |