借力计算机视觉及深度学习,纽卡斯尔大学开发实时、自动化奶牛跛行检测系统

2023-11-12

本文首发自 HyperAI超神经微信公众号~

内容一览:近期,纽卡斯尔大学联合费拉科学有限公司联合开发了一个针对多头奶牛的自动化、实时跛行检测系统。该系统能够按照跛行评分系统将奶牛进行分类,并且准确度高达 94%-100%。目前,该研究成果已发表在《Nature》上。
关键词:奶牛跛行 畜牧业 机器学习

因口蹄疫等疾病造成的奶牛跛行对畜牧业而言,已成为一个全球性话题。相关科普显示,它不仅会导致奶牛产奶量降低、繁殖效率下降,还会导致奶牛过早地被淘汰。国家动物健康监测服务奶业报告数据显示,奶牛有 16% 的淘汰率是由跛行引起的。

跛行已成为奶牛业面临的主要危机之一,因此,早监测、早预防成为规模化养殖奶牛中解决奶牛跛行的有效手段。过往,奶牛业一般都采用人工识别的方法,但这一方法存在效率低、成本高、主观性强等弊病,在这种背景下,奶牛业对奶牛跛行的自动化检测技术需求日益强烈。

近期,来自纽卡斯尔大学的 Shaun Barney、Satnam Dlay 以及来自费拉科学有限公司 (Fera Science Ltd) 的 Andrew Crowe 等人联合开发了一个针对多头奶牛的完全自动化、实时跛行检测系统,并可在整个养殖场内进行部署。这一系统利用计算机视觉和深度学习分析摄像机视野内每头奶牛的姿势和步态,检测准确度可达 94%-100%。目前该研究成果已发表在《Nature》上。

目前该成果已发布在《Nature》
论文链接:

https://www.nature.com/articles/s41598-023-31297-1#Sec7

试验数据集

本次试验中,研究人员首先对英国某农场内 250 头奶牛的运动情况进行视频录像,得到了 25 个视频,然后又把每个视频分解为 3,600 个组成帧。其次,研究人员提取了每秒钟中的 1 帧画面进行了标注。并且为了进一步改善网络泛化能力,他们从 Google 中下载了 500 张牛的相关图片,为每个奶牛标注了 15 个关键点,再将这些图片搜索数据和自己的标注数据相结合,得到了一个大约含有 40,000 条标注信息的数据库。
每头奶牛标注了 15 个关键点
为了用真实数据来评估算法性能,3 名经过 AHDB 认证的观察员同时使用 AHDB 奶牛移动性评分系统对 25 个视频进行了评分,该系统有四个评分等级:0(完全不跛脚)、1(行动稍有不便)、2(跛脚)和 3(严重跛脚),下图显示了由这 3 名观察员的评分分布情况。

3 名观察员对全部奶牛跛行程度评分分布
图中显示,25.2% 的奶牛跛行评分为 0(橙色),43.2% 的奶牛跛行评分为 1(绿色),25.6% 的奶牛跛行得分为 2(红色),6.0% 的奶牛跛行评分为 3(灰色)。

试验过程及成果

本研究使用摄像头和深度卷积神经网络 (Mask-RCNN 算法、SORT 算法和 CatBoost 算法) 来检测多头奶牛的姿态。研究人员通过追踪视频中奶牛背部、头部的关键点,根据提取相关特征指标进行分析,从而检测出跛行程度。

姿态分析算法

研究人员将 Mask-RNN(实体分割算法)中的一部分进行自研后,构建了一个姿态分析算法来对每头奶牛进行姿态估计。该算法使用了来自 Google 数据集中的 500 张图像以及 250 头牛中的 189 头牛的图像来进行训练,而剩余的 61 头牛的图像用来做最终的结果验证。

同时,该算法会高精度定位 15 个关键点位置,并输出每个点的具体坐标位置来用作姿态分析,其中背部有 5 个关键点,头部有 2 个关键点。

跟踪算法

以上步骤中,从将视频分解成组成帧到对每张图像进行关键点标注再到应用 Mask-RNN 来进行姿态分析,都是基于单一的静止图像,因此,试验还需要对奶牛随着时间移动过程进行分析。对此,研究人员采用了 SORT 算法(实时跟踪算法),该算法能够随着时间检测奶牛姿势,获取背部回归曲线、背部区域、颈部回归曲线程度以及颈部角度等指标信息。

跟踪算法的可视化效果
顶部图像中显示了第一帧中的三头奶牛,每个都用不同颜色标记,中间图像中显示了 1 秒之后的奶牛移动情况,并且跟踪算法将刚才标记的奶牛都找出来并成功标记上对应颜色,同理,底部图像则显示了又过了一秒后的奶牛的移动情况。

分类算法

得到由姿态深度学习模型输出的姿态分析结果后,研究人员使用了 CatBoost 算法对奶牛的跛脚情况进行评分分类。这里值得注意的是,为了确保最大程度的泛化,只有最重要的姿态特征结果才应该在最终的训练模型中使用。因此,研究人员进行了一系列变量排列分析,最终得出删除 4 个不重要的指标信息,能够降低误差并对模型性能没有太大影响。

为实现最低误差而删除的 4 个指标信息

最后,为了测试使用 CatBoost 算法的准确性,研究人员采用了三重交叉验证和分类验证的方法来验证模型性能。其中,三重交叉验证结果显示该算法模型能够将每头奶牛按照跛行程度细致地分类到不同跛行评分等级中,且平均准确率为 94%±0.05。

三重交叉验证时验证损失和标准偏差可视化图

总之,研究人员提出,与现有检测奶牛跛行系统相比,本研究成果有以下几个显著优势:

  • 能够同时对多头奶牛进行检测。

  • 根据奶牛的移动姿态按照常规使用的 AHDB 评分系统进行细致分类。

  • 能够在时间维度上追踪、分析每个个体。

  • 完全自动化,对挤奶、喂养等生产不会造成任何影响。

最后,研究人员也提出了几点挑战:

  1. 该系统在区分跛行等级评分为 0 及 1 的准确率要比区分其他等级时的准确率低很多,未来该研究团队将致力于提升微小特征差异的能力,以准确区分不跛行奶牛和行动稍有不便的奶牛。

  2. 该系统需要借助边缘设备(如相机、移动设备或平板电脑)将结果发送到服务器进行处理,从而实现实时观察,这个过程中,如何减弱网络变化带来的性能波动,将成为该项研究未来的工作重点。

  3. 该系统易受外部环境条件影响,例如地板与牛蹄颜色相近时,Mask-RCNN 算法识别准确性会降低,因此,添加更泛化的能力训练也成为该项研究未来的工作重点。

牛!AI 推动畜牧行业实现数字化

目前来看,AI 的风刮到畜牧业已成为一个不争的事实。聚焦国外,除了我们本篇介绍的科研成果之外,由于其畜牧业本身规模化程度高、数字化基础好,AI 落地成果已「百家齐放」。例如,荷兰的农业科技公司 Connecterra 开发了「智慧牧场助理」(IDA ,The Intelligent Dairy Farmer’s Assistant) 系统,通过在奶牛的脖子上佩戴可穿戴设备,软硬件配合实时监测奶牛的健康情况。据一位美国牧场主表示,通过应用 IDA 帮助其提高了 10% 的生产力。

将视线转回国内,一方面近年来 AI 发力畜牧业的例子也不在少数。早在前几年阿里就开启了智能养猪事业,而华为也曾联合中国电信和银川奥特推出基于 NB-IoT 的「牛联网」产品「小牧童」。不过,另一方面,也需要看到 AI 在国内畜牧业应用的覆盖面仍谈不上很广,对此,深牧科技 CEO 曾直言,「目前国内很多养殖者在谈起人工智能时,对它的认识还停留在最传统的人脸识别、语音识别上。」

因此,在这一背景下,如何让 AI 在推动畜牧业数字化上发挥更多积极影响,无疑将成为 AI 和畜牧业两个领域需要重点研究的课题之一。当然,对国内相关领域来说,这条道路更是任重而道远。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

借力计算机视觉及深度学习,纽卡斯尔大学开发实时、自动化奶牛跛行检测系统 的相关文章

随机推荐

  • error: CreateProcess: No such file or directory的解决方法

    办公的笔记本上先装有qnxIDE的700环境 然后再用Eclipse 搭建了一个qnx710的环境 刚搭建完qnx710的时候是可以编译通过的 之后第二天再开机编译Eclipse 710就编译不过了 报错就是 error CreatePro
  • WiFi技术概述

    1 概述 WLAN是无线局域网络的简称 全称为Wireless Local Area Networks 是一种利用无线技术进行数据传输的系统 该技术的出现能够弥补有线局域网络之不足 以达到网络延伸之目的 Wi Fi是无线保真的缩写 英文全称
  • spring加载一个或者多个properties配置文件方法

    在项目中有些参数需要经常修改 或者后期需要修改 比如IP 调用别人的接口地址 数据库地址及帐号密码等 那么我们就不能把这些参数写死在代码里 虽然也可以在代码里改 但是如果是不懂代码的运维人员去现场部署项目又怎么改你的代码 那我们最好把这些参
  • 关于Discuz X3.2如何设置邮箱验证的具体方法

    原文地址 兔子酱老师好久没发文章了的 是因为最近在学习和熟悉Discuz社区程序 这个PHP程序是一木主编推荐给我的 妹子我简单操作了几下 很是喜欢 这个程序目前的版本是X3 2 带有很多好玩的功能 听说这个程序早几年被腾讯收购了的 所以
  • 控制疫情蔓延嵌入式物联网能帮大忙

    联合国所订定之永续发展目标之一 便是针对防治传染病的蔓延做好准备 在新型冠状病毒 COVID 19 流行期间 防疫已成为当前最重要目标 科技在对抗传染病方面扮演重要角色 而物联网 IoT 相关技术正是我们重要的防疫武器 降低成本 自发自主性
  • matlab 求单/多元函数极值

    matlab 求单 多元函数极值 单元函数极值 平时如果手算的话 就会先求导数 再求驻点 最终代值算出极值 如果用matlab代码求的话 就可以减少很多不必要的计算 fun inline 0 5 x exp x 2 ezplot fun 0
  • java复习第7天---7.4---IO流---递归、文件过滤器

    java复习第7天 7 4 IO流 递归 文件过滤器 目录 文章目录 1 递归 1 1 递归概述和分类 2 过滤器 后记 内容 1 递归 1 1 递归概述和分类 递归 在方法内调用自己 递归分类 递归分为直接递归和间接递归 直接递归 方法内
  • python的gzip库解压某一路径下的所有.gz文件

    今天 做机器学习 解压数据集的时候 参考大佬咯咯哒鸭的文章想到的方法 代码如下 encoding utf 8 Author Mr Pan 学狂 finish time 2022 2 15 import sys import gzip imp
  • 入门级题解5. 最长回文子串

    题目 给你一个字符串 s 找到 s 中最长的回文子串 思路 找到最小的那个字串 aba或者aa 然后向两边发散 伪代码 for 1 s length 第一种情况 if s i s i 1 aa bb cc形式 第二种情况 if s i 1
  • layui跨域问题

    由于浏览器存在同源策略 所以如果 layui 里面含图标字体文件 所在的地址与你当前的页面地址不在同一个域下 即会出现图标跨域问题 所以要么你就把 layui 与网站放在同一服务器 要么就对 layui 所在的资源服务器的 Response
  • JavaWeb中文件上传与下载

    JavaWeb中文件上传与下载 一 文件上传 1 文件上传的应用 比如个人信息的管理 上传头像 比如商品信息的管理 上传商品的图片 这些都需要通过浏览器客户端将图片上传到服务器的磁盘上 文件上传原理 所谓的文件上传就是服务器端通过reque
  • idea中连接mysql插入成功数据 在navicat中刷新表格没有数据_数据分析之路——sql入门...

    1 基础知识点 数据库 按照数据结构来组织 存储和管理数据的仓库 是一个长期存储在计算机内的 有组织的 可共享的 统一管理的大量数据的集合 关系型数据库 采用关系模型来组织数据的数据库 其以行和列的形式存储数据 以便于用户理解 多张表 各表
  • 0xc000007b的解决办法(续)

    最后更新 2021 3 1 请大家首先确定已经按照原文的方法及步骤尝试过 但是还是没有解决问题再来看这篇文章 如果你还没有看过原文 请先看原文 http blog csdn net VBcom article details 6070705
  • 基于ZYNQ的掌上超声成像系统前端设计与实现

    http www doc88 com p 6631786569315 html
  • LeetCode刷题——排序(python语言)

    LeetCode刷题 排序 python语言 一 排序 顾名思义 排序就是将数组按照从小到大的顺序排列 广义的排序分为内部排序方法和外部排序方法 排序的方法有很多种 常用的冒泡 选择 插入 希尔 归并 快速 堆 计数 桶 基数排序 按照时间
  • 尝试将RxJava和Retrofit

    http www jianshu com p 2b0aeb6b6b61 安卓学习 记住3点 现在安卓发展的足够成熟 遇到的需求 别人也遇到了 遇到的bug别人遇见过了 不要想着走捷径 这些留下的人 不一定靠技术 也许靠脸皮 所以只管学习 快
  • [洛谷 P3376] 网络最大流

    题目链接 题目描述 如题 给出一个网络图 以及其源点和汇点 求出其网络最大流 输入格式 第一行包含四个正整数 n n n m m m s
  • Redis——zset类型详解

    概要 zset是有序集合 将zset中的members引入一个属性score 根据这个属性值来进行排序 其中members不可以重复 score可以重复 按照字典序排序 默认按照升序排序 有序集合中提供指定分数和元素范围查找 计算成员排名功
  • grep中加单引号与不加引号的区别

    今天写命令时本想查找最后带标点的句子 结果发现不带引号时无法识别 grep n exp grep n exp 貌似不加单引号无法达到我们想要的效果 上网搜了一下 有人说是因为引号的作用 其实这在shell变量中就有介绍 明显的是 这里单引号
  • 借力计算机视觉及深度学习,纽卡斯尔大学开发实时、自动化奶牛跛行检测系统

    本文首发自 HyperAI超神经微信公众号 内容一览 近期 纽卡斯尔大学联合费拉科学有限公司联合开发了一个针对多头奶牛的自动化 实时跛行检测系统 该系统能够按照跛行评分系统将奶牛进行分类 并且准确度高达 94 100 目前 该研究成果已发表