摘 要:为解决宠物狗喂养人缺乏饲养知识、饲养方法不当等问题,设计了一款基于图像识别的宠物狗养育系统。该系统从用户需求出发,提供宠物狗品种、性格特征、喂养方法、训练方式、生病预防、交流分享等多方面的功能,涉及喂养宠物狗各个环节。其中“宠物狗品种识别”是其中的核心功能,利用百度EasyDL平台图像识别快速实现该功能。文章主要论述在实现该功能的过程中进行机器训练总结出的一些方法和经验。
关键词:图像识别;机器训练;宠物狗养育系统
Abstract:In order to solve the problems of pet dog breeders,such as lack of knowledge and improper breeding methods,a pet dog rearing system based on image recognition was designed. Based on the needs of users,the system provides various functions such as pet dog breed,personality characteristics,feeding methods,training methods,disease prevention,communication and sharing,involving all aspects of pet dog feeding. Among them,“pet dog breed identification” is the core function,which is realized quickly by using Baidu EasyDL platform image recognition. This paper mainly discusses some methods and experience of machine training in the process of realizing this function.
Keywords:image recognition;machine training;pet dog rearing system
0 引 言
随着人类社会的发展与进步,人类饲养宠物的需求逐步增加。人类需要宠物的陪伴,需要宠物治愈心灵。很多人选择了饲养宠物狗,但是养育一只宠物狗并不是一件简单的事情。如何选择一只适合喂养人的宠物狗,针对它的品种,了解其性情,如何喂养,如何训练等,有许多的知识需要学习,使得饲养的宠物狗能健康成长。针对宠物狗喂养人的需求,利用现代化的移动互联技术和人工智能技术设计一个宠物狗喂养系统,该系统可以帮助用户解决在宠物喂养过程中的许多问题。本系统可以在实际宠物狗喂养中提供信息协助和数据支持,并作为本院畜牧兽医学院宠物养护与训导专业相关课程的教学资源。
1 系统背景
移动互联技术的发展使用户可以方便地通过多种方式访问网络获取信息,人工智能技术可以在很多不同的应用场景中帮助人们快速解决问题。宠物狗喂养系统是针对宠物狗喂养人在喂养过程中的需求,利用移动互联技术和人工智能技术解决养狗过程中的各种困难和需求。不同品种的宠物狗,性格特征也不尽相同,喂养人需要正确识别宠物狗的品种,并根据其品种特点,了解适合的喂养照顾方式和训练方法。在喂养过程中,需要注意宠物狗的卫生防疫,在宠物狗生病时,及时获得宠物医院的信息;针对疾病,获取照顾护理的信息。同时也需要解决喂养人记录宠物狗的日常生活、与其他喂养人交流等方面的信息交换。本系统的业务范围包含宠物狗的品种识别、选择、喂养、训练,到卫生防疫、生病照顾、分享交流等。喂养人在喂养宠物狗的全程都可以通过本系统获取信息和帮助。
2 整体设计
为了符合用户的使用习惯,降低用户的使用成本,本系统设计采用多种访问方式,提供网页、Android APP、小程序等三种访问方式供用户选择,如图1所示。
其中,Android APP的功能是最全面的,可以实现系统所提供的所有功能,是宠物狗喂养人的首选访问方式。小程序方式访问系统,方便快捷但部分功能受限;网页访问是传统的访问方式,但用户信息不能保存,每次使用需要登录才能获得个人信息及偏好设置。用户可以根据自身的需要进行访问方式的选择。服务器端采用Spring Boot框架进行开发。Spring Boot框架可以快速进行Spring框架的搭建,为快速、高效进行应用开发铺平了道路。
本系统根据宠物喂养人在养育一只宠物狗的过程中的实际需要,将系统分为四大功能模块:“了解宠物狗、喂养宠物狗、照顾宠物狗、狗狗朋友圈”。如图2所示,“了解宠物狗”模块主要功能包括“品种识别”、“品种特征”、“喂养须知”、“训练方法”四个功能。“品种识别”功能可以拍照识别宠物狗品种的功能;“品种特征”功能介绍不同品种的宠物狗的外观特征和性格特点;“喂养须知”功能是分品种提供狗在喂养、生活等方面的知识介绍;“训练方法”功能针对不同品种狗的特征介绍不同的训练方式。“喂养宠物狗”模塊主要功能是根据喂养人的宠物狗的特征,制定喂养计划,记录宠物狗的饮食,记录运动时间并设置散步提醒,定位位置等满足日常喂养过程中的需求;“照顾宠物狗”模块主要功能包括“保健记录”和“家庭医生”,可以记录并提醒卫生预防,通过人工智能识别一些常见病,并提供附件,包含宠物医院的位置、电话,方便喂养人对宠物狗的病中护理;“狗狗朋友圈”模块主要功能包括“发布记录”,“浏览记录”,“好友管理”,可以分享自家宠物狗的日常,根据条件寻找狗朋友,满足线上线下的交流需求。
其中“品种识别”模块是本系统的核心功能,用户需要确定宠物狗的品种才能有针对性地获取适合该品种宠物狗的喂养、训练方面的信息。系统将根据宠物狗的品种主动推荐一些喂养方面的信息。
本系统实现了宠物狗养育环节中,从了解宠物狗,选择宠物狗,日常喂养,日常训练,日常照顾,交流分享等每个环节中信息的提供,信息分享,根据自身要求定制服务。可以有效地帮助各个宠物狗喂养人更好地养育宠物狗,解决宠物狗养育环节中的一些困惑、疑虑,以适合的方式照顾宠物狗。
3 关键技术
“宠物狗品种识别”功能是本系统的一个关键环节,通过识别宠物狗的品种可以帮助使用者挑选宠物狗,根据宠物狗的品种,提供后续的养育知识、训练方式等定制化的服务。实现本环节需要使用到人工智能领域的图像识别技术。当前人工智能技术已经融入了我们生活的方方面面,教育、零售、工业、政务、交通等领域都在越来越多的使用人工智能技术。很多人觉得人工智能技术的门槛较高,一般的程序设计人员不易掌握。随着一些大型互联网公司人工智能平台的推出,这种刻板印象正逐渐被改变。使用人工智能技术正在变得越来越简便。通过人工智能平台,开发人员可以获得基于人工智能的解决方案、技术支持、场景应用,可以更快、更好地解决实际问题。
百度公司的百度AI开放平台是其中的佼佼者,其包括254项场景能力、解决方案与软硬一体组件,并提供EasyDL定制化训练平台、深度学习开发实训平台AI Studio、自定义模板OCR等定制化平台,零算法门槛实现业务定制;为上下游合作伙伴搭建展示与交易平台——AI市场,助力各行业高效实现AI升级。其中EasyDL平台是一个可视化模型训练与服务平台,可以快速获取图像识别、文本检测、商品检测等AI服务。根据本系统的需要,利用EasyDL平台中图像识别的功能实现宠物狗品种的分辨。
EasyDL平台适合需要高效开发的项目,无须了解算法细节,基于百度内置AutoDL技术,只需少量数据即可快速训练出高精度模型。全方位支持训练数据的高质量采集和高效标注,支持在模型迭代过程中扩充数据,有效提升模型效果。使用EasyDL平台重点是通过不同类型的图片对人工智能平台进行机器训练,其使用步骤如图3所示。
机器训练是当前人工智能研究中的一个重要的环节,该环节决定了人工智能的工作效率。在本项目中,从不同角度、不同环境采集多个品种狗的图片,上传至平台并在标注类别,提交开始机器训练。选择图片时,注意图片中对象的特征要清晰,具有代表性,不同角度、光线明暗的变化都应覆盖。因为使用者拍摄宠物狗照片的方式不同,应该包含不同情况的各种类型的图片。一个分类至少需要准备20张以上的图片,若想获得较好的效果,每个分类可以准备不少于100张图片。
每张图片上传时需要标注图片的分类,提交平台进行机器训练。在训练结束后,查看模型评估报告,包括基本结论、准确率、F1 score、精准率、召回率等效果指标。根据项目的需要选择重点关注的指标。通过分标签查看模型识别错误的图片,寻找其中的共性,进而有针对性的扩充训练数据。通过增加训练图片,再次进行训练,以提高识别的精准性。训练的数据量应该充足,图片过少可能会影响训练的效果。每个分类的数据量应该均衡,不同分类的数据量级应相同,并尽量接近。测试的数据与训练的数据来源保持一致,采集设备、环境均需一致。如若不一致,需调整训练数据集,重新训练。机器训练的过程是一个迭代的过程,需要根据训练的效果,进行反复的调整、训练,以求最终的训练效果能够使模型的各项效果指标符合实际需求。
本系统选取了市面上常见的二十余种宠物狗,在室内、室外,对不同品种、不同年龄的狗狗从各个不同角度、不同状态采集了百余张照片,提交到EasyDL平台进行标注并训练。根据训练结果,对识别错误的图片进行分析,找出识别错误的原因,从而有针对性地增加图片数据,再次进行训练,经过多次训练,模型的效果指标达到实际要求后,即可发布使用。
训练完成后,可将模型部署在公有云服务器、私有服务器,封装成可离线运行的设备端SDK,或直接购买软硬一体方案,灵活适配各种使用场景及运行环境。本项目采用云服务器部署的方式,通过API接口调用模型,实现宠物狗品种识别功能,如图4所示为Android APP中通过拍摄照片识别宠物狗品种结果图。在实际应用中,可以根据识别错误的信息,继续加入迭代训练数据集纠正结果,不断提高图像识别效果。
4 结 论
本文开发的采用人工智能技术的宠物狗养育系统,充分考虑用户的需求,包含养育宠物狗的全部环节,利用图像识别技术分辨不同品种的宠物狗。根据宠物狗品种的不同,给用户提供宠物狗的性格特征、喂养方式、训练方式等相关信息。帮助用户在宠物狗生病时提供就医信息和护理信息。通过狗狗朋友圈获取、分享狗狗的信息,与其他宠物狗爱好者进行交流。本系统根据用户的需求出发,为用户提供针对其宠物狗品种的各类信息,使用户获得良好的体验。基于人工智能图像识别技术的“宠物狗品种识别”功能是本系统的核心功能。借助百度EasyDL平台快速实现宠物狗品種识别,利用不同品质的宠物狗图片数据进行机器训练,获得了良好的使用效果。
参考文献:
[1] 百度AI开发平台.EasyDL定制AI训练平台 经典版图像分类 [EB/OL].(2020-06-28).https://ai.baidu.com/ai-doc/EASYDL/ok38n2w9h.
[2] 刘洋,史煜,曹雪倩,等.自动化机器学习在眼部疾病识别及分类中的初步应用 [J].中国数字医学,2019,14(3):44-45+49.
作者简介:雷静(1981.12—),女,汉族,四川成都人,讲师,工程硕士,研究方向:计算机应用。