雪豹

MindSpore联合山水自然保护中心,

发布时间:2023/4/21 16:37:21   

机器之心发布

机器之心编辑部

红外相机是常用的野生动物调查手段,通过布设在野外的相机利用红外感应相机前经过的动物并拍摄照片或视频素材,来获取当地野生动物的信息。

红外相机照片和视频中物种的识别往往需要大量的人力和时间投入,这也是红外相机调查整个工作流程中的限速步,使得调查结果很难快速及时地转化为科学成果、反馈给利益相关方、应用于生物多样性保护决策等。

山水自然保护中心、北京大学自然保护与社会发展研究中心、以及其他合作伙伴自年开始在三江源、四川、云南、北京等地开展红外相机调查与长期监测,积累了大量红外相机数据,也在不断思考和探索如何加速红外数据的识别环节。山水希望能引入AI技术和公民科学两个「小帮手」,首先由AI识别模型完成对红外数据的初步识别和筛选(去除未拍到动物的空拍),再由公民科学志愿者对AI识别结果进行检查和修正,最后再由专家鉴定和复核志愿者识别中不确定的内容,从而实现大批量红外数据的快速识别。

山水目前也在基于这一识别流程开发一套线上红外数据管理系统,期望为行业提供帮助。

图1红外相机数据识别流程,公民科学相关内容详见山水前序推送(红外盲盒)

近年来,已经有很多将AI技术应用于红外相机数据物种识别的实践,而对于素有「中华水塔」之称、生物多样性丰富、有着众多珍稀物种的三江源地区,在红外相机AI物种识别方面的尝试还并不多。山水曾在年利用Res18深度卷积神经网络进行了三江源物种AI识别的初步尝试,取得了不错的效果,希望能在已有模型的基础上进行更多的探索和尝试。

MindSpore开源社区也很希望能够将AI技术应用于实际的生物多样性保护场景,双方深入交流后,决定开展三江源地区红外相机照片AI物种识别模型训练的合作,而这也是首次基于国产框架的开源模型用于支持三江源红外相机物种识别。

MindSpore是华为开源的一款全场景AI框架,旨在提供友好设计、高效运行、简捷部署的开发体验,目前应用于医疗、金融、科研等多个领域,提供面向端边云多种场景的主流硬件支持,并针对昇腾硬件平台提供深度优化能力。MindSpore着力构筑面向全球的人工智能开源社区,推动人工智能软硬件应用生态繁荣发展。目前MindSpore社区已拥有80万社区开发者,下载量超过万,+企业应用上线,认证开发者/布道师近人,社区企业伙伴+,是国内第一热度的AI开源社区。

1-数据准备

考虑到物种识别模型需要每个物种具有足够的训练数据量,首期模型训练选取了三江源红外数据中常见的10个物种或物种类别,包含雪豹、岩羊、白唇鹿、赤狐、狼、喜马拉雅旱獭、川西鼠兔、鸟类(除藏雪鸡、大外,其余未再提供二次细分类别的鸟类统属鸟类这一大类)、藏雪鸡、大,共张照片,其中张作为训练集,张作为验证集。

图2AI物种识别模型物种图鉴

2-模型选择

在项目初期,MindSpore团队首先着手对山水提供的一小批红外相机物种照片进行识别分类,因此模型的初选型定位为ResNet等图像分类模型。在经过进一步讨论后,了解到不同于动物摄影照片,红外相机照片中的动物通常难以拍得清晰、完整,常出现一道模糊的身影、画面边缘露出的半个脑袋、或者动物借助保护色隐匿于复杂背景中等情形,因而仅对图像中特定对象的类别进行分类或预测难以满足项目需求,还需要能够在分类的同时确定目标在给定图像中的位置和得分,因此目标检测模型成为本次合作的首选。

图3你能找到红外相机照片中的动物吗?

目标检测模型分为one-stage和two-stage两大类,两大类模型的共同点在于Backbone骨干网络都用于对输入图片进行特征提取工作,区别则在于Head网络,one-stage模型在一个阶段即可完成对目标的定位与分类,而two-stage网络则是分两个阶段完成,先完成目标定位,再对定位的目标进行分类,即对输入的图片先通过滑窗得到几十万个的框,要求物体正好出现在一个滑窗中,这个滑窗的位置即为物体的位置。对于一张图片来说,存在大小各异的物体,这就导致设计的窗口大小也存在多种,这样耗费了大量的时间,然后再使用选择算法筛选出较符合的框,对这些窗口的目标进行分类,而one-stage则是基于整张图片的,它并不要求物体必须在这个框内,就不需要设计大小各异的框,只要求物体的中心落在这个框内即可,因此我们就可以先预测出X个框的分类,再通过置信度去筛选较可信结果。

图4目标检测模型选型分析图

这样带来的结果是one-stage模型的检测速度快于two-stage模型,检测精度则是会略微弱于two-stage模型。

图5目标检测模型选型对比表

出于对模型的实时性检测和准确率双重考虑,选用精度和速度相平衡的算法,能够让模型更好地扩展部署到野外的端侧设备,同时也能保证模型预测的相对准确率,MindSpore开源运营团队和山水讨论后,决定采用基于MindSpore1.2框架的YOLOv3目标检测模型,它是第一个平衡所提供检测的质量和速度的算法,在定位照片中动物所在位置的基础上完成对物种类型的识别。

YOLO是经典的one-stage目标检测模型,全称「youonlylookonce」译为只需要看一次就可以识别出图像中的物体类别和位置,在年提出了第一个版本YOLOv1,后续还出了4个版本,相比YOLOv1和YOLOv2,YOLOv3引入了多尺度预测,大大提升了预测精度,因此本次实验选用YOLOv3模型进行实践。

YOLOv3使用基础网络Darknet53,相比YOLOv2使用的Darknet19,Darknet53移除了MAXPOOLING池化层,并增加了卷积层数,速度稍有减慢,精度大大提升,整个网络结构相对简单。

图6Darknet53网络

3-模型训练

目标检测模型不仅需要红外相机照片的物种类别标签,也需要用标注框框出照片中的物种的位置,在MindSpore团队的线上与教程指导下,山水团队使用华为云AI标注平台开展物种标注工作,并后续邀请了61位志愿者来一同完成这个任务。

标注好的数据无法直接用于训练,因此,在拿到标注好的数据后,MindSpore团队首先会对其进行数据清洗的工作,从中审查和纠正出「脏」数据,然后再开发一套格式转换工具,将标注数据的格式转换为训练可用的COCO数据集格式。通常,这样的数据仍存在一些不规则的地方,在训练前还需要对其进行一系列的数据预处理操作,再喂给模型进行训练。目前,这些数据预处理方法都是基于MindSpore提供的接口实现的,感兴趣的开发者可以详细阅读MindSpore的API文档。

文档链接:

转载请注明:http://www.aideyishus.com/lkjg/4312.html

------分隔线----------------------------