业务背景
《关于稳定生猪生产促进转型升级的意见》提出:“加快构建现代养殖体系,大力发展标准化规模养殖”。但目前集团化企业、中大型规模猪场用户仍存在以下养殖痛点:
1)随着猪场规模扩大、养猪产业链条增多,传统人工养猪模式对猪只管理的投入时间长、劳动强度大、人力成本高,工作效率低。
2)企业难以可视化掌握猪场实时动态信息,分栏养猪作业间的乱窜、逃跑猪只给猪场造成资产安全风险与经济损失。
技术方案
积极响应国家对养殖体系现代化的政策要求,针对集团化企业、中大型规模猪场用户的猪场全业务管理需求,通过海康威视AI开放平台训练的场景化AI算法,构建致力于实现养殖场安全、高效、高质量生产与管理目标的智慧猪场整体解决方案。
本案例主要是针对养猪场景中的猪只是否存在逃窜的情况进行检测和分析。从技术的角度分析,需要去定位场景图片中对象的位置信息。因此,在最终算法方案的选择上,选择的是AI开放平台的“物体检测模型”进行训练。
算法模型训练完成后导入至边缘端设备或发布至云端,当边缘端检测到目标时,将推理结果上传给行业应用平台并将结果进行展示。另外,第三方行业平台也可以通过调用相应接口实现上层应用。
功能介绍
对视频中划线区域出现的猪只进行智能识别,并形成告警信息,将告警信息和报警图片通过海康威视平台上报给第三方大数据平台,并发送给养殖户的移动APP,从而保障猪只的安全。
价值成果
• 提升企业管理效率
提升猪场远程管理效率,使生物资产数据化,减少人力工作量,增加监管效率,实现养殖场的便捷、高效、高质量管理目标。
• 确保企业资产安全
智慧猪场整体解决方案通过加强企业与农户的紧密协作,实现猪只预警,保障猪场的猪只安全,完成数据管理闭环,减少企业经济损失。
开发流程
1、登录海康威视AI开放平台官网:https://ai.hikvision.com/
2、注册AI开放平台账号;
3、使用AI开放平台训练算法。
利用AI开放平台训练算法,主要包括以下几个步骤:
步骤1:创建项目
步骤2:数据准备
步骤3:模型训练
步骤4:模型校验
步骤5:模型部署
步骤1:创建项目
在正式开始训练之前,需要创建一个物体检测模型,在【我的模型】界面,点击【创建模型】,进入创建模型界面,如下所示:
在填写模型名称和相关信息后,页面会回到我的模型主页面,提示“模型创建成功,若无数据集请前往数据服务创建,上传并标注数据集。训练模型后可在此处查看模型的最新版本”。
如果希望将算法和特定的AI设备绑定(需要授权文件),请勾选模型授权选项,需要注意的是,“模型授权”勾选后无法修改,需要慎重选择。
步骤2:准备数据
数据采集
素材收集在整个AI开放平台项目中是一个很关键的过程,素材质量的高低直接决定了算法模型的优劣。根据各个项目实际需求的不同,素材也可以从不同的场景与角度进行收集,达到充分覆盖现场需求场景的要求。
1)整体要求
图像质量高,目标清晰可见。
尽量采集真实应用场景下目标的真实特征。
尽量采集目标的不同类别和状态,通过肉眼可以进行区分。
检测模式下,目标在720P分辨率图像上的占比不得小于32X32像素,不同分辨率按此规则折算。
数据集创建
新建物体检测任务时候,首先需要创建新的数据集,具体步骤如下:
选择【数据总览】-【训练集】-【图片】-【创建训练集】,输入数据集名称,点击【确定】;
数据集创建后进行数据集版本的创建,创建数据集版本可实现数据跨算法类型和跨数据集功能,具体步骤如下:
选择【数据总览】-【训练集】,选择相应的数据集,点击【创建新版本】,选择创建方式、算法类型和标注方式,填写版本备注信息,点击【确定】。
数据导入
海康AI开放平台提供两种数据上传方式,您可以选择通过web端或者客户端工具进行上传。以下以web端为例进行操作说明:
1)在数据总览列表,选择相应的数据集版本,点击【导入】按钮,选择本地数据导入,在【选择导入方式】选择【不带标注导入】;
2)选择图片上传或文件夹上传,设置是否需要去重,选择需要上传的数据,点击【上传数据】。
3)在上传过程中可查看数据上传进度。
数据标注
本案例的基础功能点是检测猪只,以画目标框的形式将图像中需要检测的猪只进行标定,并打上检测标签;标定示例图如下:
在数据标定的过程中,可以利用数据服务提供的功能来提升效率,使用工具栏的放大,缩小,裁剪等工具可以辅助标注,使用右侧添加标签时不同的标签会默认生成数字标签,画框后点击数字即可完成标签选定。标注同一类标签时候,可以自动继承标签内容,无需人工再次选择。
标注过程中,需要将矩形框尽可能的贴合检测目标,避免出现目标框过大过小、类别错标,漏标等。一般情况下,养猪场的猪只会比较拥挤,且猪只的形状不规则,因此,猪只识别也可以通过四边形标注的方式进行标注,使得所标注的目标框更加贴合猪只,训练后的模型精度会更高。
标定过程中需要遵照以下规范进行:
1)目标框要求:
• 标定前请先选择标定矩形框或者四边形框;
• 目标框需紧贴目标;
• 单个目标框像素大小不低于32X32;
2) 目标全标定:
• 图像中所有肉眼清晰可见,满足像素大小要求的检测对象都要标定出来,但每个目标需分开标定,一个框只标一个目标;
• 没有目标的样本,需要对整张图片标定目标框,并打上无目标标签,直接作为负样本加入训练集训练;
3)目标被遮挡/截断(目标在画中出现的比例)的标定:
• 遮挡/截断面积(目标在画中出现的比例)超过2/3以上的目标不需要标定;
• 遮挡/截断面积(目标在画中出现的比例)未超过2/3以上的目标,需要标定。遮挡部分不需要标定,按露出部分正常标定即可;
4)模糊情况下的标定:
• 人肉眼能看清的目标需要标定;
• 极端模糊的,人肉眼看不清的目标不需要标定;
5)标定方案统一:
同个项目同个功能的目标框标定区域要统一;例如检测图中的猪只,不能一个标注整只猪,一个标注猪的身体或者头部;这样会严重影响算法的训练效果。
如果标注的内容太多,可以创建标注团队,将标注任务分发给多人一起开展。也可以采用智能标注功能,基于当前标注阶段的标签,从用户的待标注数据中筛选具有更高标注优先级的图片,在减少标注量的同时达到接近全局标注的效果;
步骤3:模型训练
在模型训练完成后,需要在设备中进行使用。为了满足不同类型设备的要求,模型在训练时有差别,因此需要根据设备选择应用类型。
由于不同应用类型的模型不能够通用,因此在应用类型云部署、本地部署的选择上,可以根据实际的情况来配置。
云部署
云部署包含了在线验证和云眸部署两种。在线验证无法具体部署,但可以做验证模型效果时使用。云眸部署是指将训练好的算法直接部署在云端,通过接口调用的方式进行分析。这种方案不需要在项目中添加智能分析设备,但是需要对行业应用平台或第三方应用平台进行二次开发工作。
本地部署
本地部署包含了AI摄像机、AI超脑、AI服务器、AI物联网主机。
本地部署主要指将训练好的算法导入到设备中进行分析。例如AI摄像机是指将训练好的算法导入到AI摄像机内进行分析,不需要后端添加智能设备。这种方案对网络传输的带宽要求低,后端不需要添加智能设备,但是需要前端架设海康特定的AI摄像机。AI超脑、AI服务器是指将训练好的算法导入后端的智能设备中(NVR或T4 GPU服务器)进行分析。该方案前端设备仅作为数据采集的入口,所有的分析均在后端NVR中完成,对网络的带宽比较高,比较合适前端已有视频设备的场景。

步骤4:模型校验
模型校验可以从本地环境中上传图片进行临时校验,也可以通过创建测试集进行校验,下面以临时校验为例:
如模型准确率不满足预期,可在“数据集管理”步骤中添加图片并进行标注,重新进行模型训练及部署上线。
步骤5:导出/发布模型
对于集团化企业、中大型规模猪场用户,可以选用普通摄像机 + AI超脑或者服务器的方案,将训练完成的模型导出之本地路径,再将导出后的模型导入到AI超脑或者服务器中即可。