摘? 要:為解決寵物狗喂養(yǎng)人缺乏飼養(yǎng)知識、飼養(yǎng)方法不當(dāng)?shù)葐栴},設(shè)計了一款基于圖像識別的寵物狗養(yǎng)育系統(tǒng)。該系統(tǒng)從用戶需求出發(fā),提供寵物狗品種、性格特征、喂養(yǎng)方法、訓(xùn)練方式、生病預(yù)防、交流分享等多方面的功能,涉及喂養(yǎng)寵物狗各個環(huán)節(jié)。其中“寵物狗品種識別”是其中的核心功能,利用百度EasyDL平臺圖像識別快速實現(xiàn)該功能。文章主要論述在實現(xiàn)該功能的過程中進行機器訓(xùn)練總結(jié)出的一些方法和經(jīng)驗。
關(guān)鍵詞:圖像識別;機器訓(xùn)練;寵物狗養(yǎng)育系統(tǒng)
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? 引? 言
隨著人類社會的發(fā)展與進步,人類飼養(yǎng)寵物的需求逐步增加。人類需要寵物的陪伴,需要寵物治愈心靈。很多人選擇了飼養(yǎng)寵物狗,但是養(yǎng)育一只寵物狗并不是一件簡單的事情。如何選擇一只適合喂養(yǎng)人的寵物狗,針對它的品種,了解其性情,如何喂養(yǎng),如何訓(xùn)練等,有許多的知識需要學(xué)習(xí),使得飼養(yǎng)的寵物狗能健康成長。針對寵物狗喂養(yǎng)人的需求,利用現(xiàn)代化的移動互聯(lián)技術(shù)和人工智能技術(shù)設(shè)計一個寵物狗喂養(yǎng)系統(tǒng),該系統(tǒng)可以幫助用戶解決在寵物喂養(yǎng)過程中的許多問題。本系統(tǒng)可以在實際寵物狗喂養(yǎng)中提供信息協(xié)助和數(shù)據(jù)支持,并作為本院畜牧獸醫(yī)學(xué)院寵物養(yǎng)護與訓(xùn)導(dǎo)專業(yè)相關(guān)課程的教學(xué)資源。
1? 系統(tǒng)背景
移動互聯(lián)技術(shù)的發(fā)展使用戶可以方便地通過多種方式訪問網(wǎng)絡(luò)獲取信息,人工智能技術(shù)可以在很多不同的應(yīng)用場景中幫助人們快速解決問題。寵物狗喂養(yǎng)系統(tǒng)是針對寵物狗喂養(yǎng)人在喂養(yǎng)過程中的需求,利用移動互聯(lián)技術(shù)和人工智能技術(shù)解決養(yǎng)狗過程中的各種困難和需求。不同品種的寵物狗,性格特征也不盡相同,喂養(yǎng)人需要正確識別寵物狗的品種,并根據(jù)其品種特點,了解適合的喂養(yǎng)照顧方式和訓(xùn)練方法。在喂養(yǎng)過程中,需要注意寵物狗的衛(wèi)生防疫,在寵物狗生病時,及時獲得寵物醫(yī)院的信息;針對疾病,獲取照顧護理的信息。同時也需要解決喂養(yǎng)人記錄寵物狗的日常生活、與其他喂養(yǎng)人交流等方面的信息交換。本系統(tǒng)的業(yè)務(wù)范圍包含寵物狗的品種識別、選擇、喂養(yǎng)、訓(xùn)練,到衛(wèi)生防疫、生病照顧、分享交流等。喂養(yǎng)人在喂養(yǎng)寵物狗的全程都可以通過本系統(tǒng)獲取信息和幫助。
2? 整體設(shè)計
為了符合用戶的使用習(xí)慣,降低用戶的使用成本,本系統(tǒng)設(shè)計采用多種訪問方式,提供網(wǎng)頁、Android APP、小程序等三種訪問方式供用戶選擇,如圖1所示。
其中,Android APP的功能是最全面的,可以實現(xiàn)系統(tǒng)所提供的所有功能,是寵物狗喂養(yǎng)人的首選訪問方式。小程序方式訪問系統(tǒng),方便快捷但部分功能受限;網(wǎng)頁訪問是傳統(tǒng)的訪問方式,但用戶信息不能保存,每次使用需要登錄才能獲得個人信息及偏好設(shè)置。用戶可以根據(jù)自身的需要進行訪問方式的選擇。服務(wù)器端采用Spring Boot框架進行開發(fā)。Spring Boot框架可以快速進行Spring框架的搭建,為快速、高效進行應(yīng)用開發(fā)鋪平了道路。
本系統(tǒng)根據(jù)寵物喂養(yǎng)人在養(yǎng)育一只寵物狗的過程中的實際需要,將系統(tǒng)分為四大功能模塊:“了解寵物狗、喂養(yǎng)寵物狗、照顧寵物狗、狗狗朋友圈”。如圖2所示,“了解寵物狗”模塊主要功能包括“品種識別”、“品種特征”、“喂養(yǎng)須知”、“訓(xùn)練方法”四個功能。“品種識別”功能可以拍照識別寵物狗品種的功能;“品種特征”功能介紹不同品種的寵物狗的外觀特征和性格特點;“喂養(yǎng)須知”功能是分品種提供狗在喂養(yǎng)、生活等方面的知識介紹;“訓(xùn)練方法”功能針對不同品種狗的特征介紹不同的訓(xùn)練方式?!拔桂B(yǎng)寵物狗”模塊主要功能是根據(jù)喂養(yǎng)人的寵物狗的特征,制定喂養(yǎng)計劃,記錄寵物狗的飲食,記錄運動時間并設(shè)置散步提醒,定位位置等滿足日常喂養(yǎng)過程中的需求;“照顧寵物狗”模塊主要功能包括“保健記錄”和“家庭醫(yī)生”,可以記錄并提醒衛(wèi)生預(yù)防,通過人工智能識別一些常見病,并提供附件,包含寵物醫(yī)院的位置、電話,方便喂養(yǎng)人對寵物狗的病中護理;“狗狗朋友圈”模塊主要功能包括“發(fā)布記錄”,“瀏覽記錄”,“好友管理”,可以分享自家寵物狗的日常,根據(jù)條件尋找狗朋友,滿足線上線下的交流需求。
其中“品種識別”模塊是本系統(tǒng)的核心功能,用戶需要確定寵物狗的品種才能有針對性地獲取適合該品種寵物狗的喂養(yǎng)、訓(xùn)練方面的信息。系統(tǒng)將根據(jù)寵物狗的品種主動推薦一些喂養(yǎng)方面的信息。
本系統(tǒng)實現(xiàn)了寵物狗養(yǎng)育環(huán)節(jié)中,從了解寵物狗,選擇寵物狗,日常喂養(yǎng),日常訓(xùn)練,日常照顧,交流分享等每個環(huán)節(jié)中信息的提供,信息分享,根據(jù)自身要求定制服務(wù)。可以有效地幫助各個寵物狗喂養(yǎng)人更好地養(yǎng)育寵物狗,解決寵物狗養(yǎng)育環(huán)節(jié)中的一些困惑、疑慮,以適合的方式照顧寵物狗。
3? 關(guān)鍵技術(shù)
“寵物狗品種識別”功能是本系統(tǒng)的一個關(guān)鍵環(huán)節(jié),通過識別寵物狗的品種可以幫助使用者挑選寵物狗,根據(jù)寵物狗的品種,提供后續(xù)的養(yǎng)育知識、訓(xùn)練方式等定制化的服務(wù)。實現(xiàn)本環(huán)節(jié)需要使用到人工智能領(lǐng)域的圖像識別技術(shù)。當(dāng)前人工智能技術(shù)已經(jīng)融入了我們生活的方方面面,教育、零售、工業(yè)、政務(wù)、交通等領(lǐng)域都在越來越多的使用人工智能技術(shù)。很多人覺得人工智能技術(shù)的門檻較高,一般的程序設(shè)計人員不易掌握。隨著一些大型互聯(lián)網(wǎng)公司人工智能平臺的推出,這種刻板印象正逐漸被改變。使用人工智能技術(shù)正在變得越來越簡便。通過人工智能平臺,開發(fā)人員可以獲得基于人工智能的解決方案、技術(shù)支持、場景應(yīng)用,可以更快、更好地解決實際問題。
百度公司的百度AI開放平臺是其中的佼佼者,其包括254項場景能力、解決方案與軟硬一體組件,并提供EasyDL定制化訓(xùn)練平臺、深度學(xué)習(xí)開發(fā)實訓(xùn)平臺AI Studio、自定義模板OCR等定制化平臺,零算法門檻實現(xiàn)業(yè)務(wù)定制;為上下游合作伙伴搭建展示與交易平臺——AI市場,助力各行業(yè)高效實現(xiàn)AI升級。其中EasyDL平臺是一個可視化模型訓(xùn)練與服務(wù)平臺,可以快速獲取圖像識別、文本檢測、商品檢測等AI服務(wù)。根據(jù)本系統(tǒng)的需要,利用EasyDL平臺中圖像識別的功能實現(xiàn)寵物狗品種的分辨。
EasyDL平臺適合需要高效開發(fā)的項目,無須了解算法細(xì)節(jié),基于百度內(nèi)置AutoDL技術(shù),只需少量數(shù)據(jù)即可快速訓(xùn)練出高精度模型。全方位支持訓(xùn)練數(shù)據(jù)的高質(zhì)量采集和高效標(biāo)注,支持在模型迭代過程中擴充數(shù)據(jù),有效提升模型效果。使用EasyDL平臺重點是通過不同類型的圖片對人工智能平臺進行機器訓(xùn)練,其使用步驟如圖3所示。
機器訓(xùn)練是當(dāng)前人工智能研究中的一個重要的環(huán)節(jié),該環(huán)節(jié)決定了人工智能的工作效率。在本項目中,從不同角度、不同環(huán)境采集多個品種狗的圖片,上傳至平臺并在標(biāo)注類別,提交開始機器訓(xùn)練。選擇圖片時,注意圖片中對象的特征要清晰,具有代表性,不同角度、光線明暗的變化都應(yīng)覆蓋。因為使用者拍攝寵物狗照片的方式不同,應(yīng)該包含不同情況的各種類型的圖片。一個分類至少需要準(zhǔn)備20張以上的圖片,若想獲得較好的效果,每個分類可以準(zhǔn)備不少于100張圖片。
每張圖片上傳時需要標(biāo)注圖片的分類,提交平臺進行機器訓(xùn)練。在訓(xùn)練結(jié)束后,查看模型評估報告,包括基本結(jié)論、準(zhǔn)確率、F1 score、精準(zhǔn)率、召回率等效果指標(biāo)。根據(jù)項目的需要選擇重點關(guān)注的指標(biāo)。通過分標(biāo)簽查看模型識別錯誤的圖片,尋找其中的共性,進而有針對性的擴充訓(xùn)練數(shù)據(jù)。通過增加訓(xùn)練圖片,再次進行訓(xùn)練,以提高識別的精準(zhǔn)性。訓(xùn)練的數(shù)據(jù)量應(yīng)該充足,圖片過少可能會影響訓(xùn)練的效果。每個分類的數(shù)據(jù)量應(yīng)該均衡,不同分類的數(shù)據(jù)量級應(yīng)相同,并盡量接近。測試的數(shù)據(jù)與訓(xùn)練的數(shù)據(jù)來源保持一致,采集設(shè)備、環(huán)境均需一致。如若不一致,需調(diào)整訓(xùn)練數(shù)據(jù)集,重新訓(xùn)練。機器訓(xùn)練的過程是一個迭代的過程,需要根據(jù)訓(xùn)練的效果,進行反復(fù)的調(diào)整、訓(xùn)練,以求最終的訓(xùn)練效果能夠使模型的各項效果指標(biāo)符合實際需求。
本系統(tǒng)選取了市面上常見的二十余種寵物狗,在室內(nèi)、室外,對不同品種、不同年齡的狗狗從各個不同角度、不同狀態(tài)采集了百余張照片,提交到EasyDL平臺進行標(biāo)注并訓(xùn)練。根據(jù)訓(xùn)練結(jié)果,對識別錯誤的圖片進行分析,找出識別錯誤的原因,從而有針對性地增加圖片數(shù)據(jù),再次進行訓(xùn)練,經(jīng)過多次訓(xùn)練,模型的效果指標(biāo)達(dá)到實際要求后,即可發(fā)布使用。
訓(xùn)練完成后,可將模型部署在公有云服務(wù)器、私有服務(wù)器,封裝成可離線運行的設(shè)備端SDK,或直接購買軟硬一體方案,靈活適配各種使用場景及運行環(huán)境。本項目采用云服務(wù)器部署的方式,通過API接口調(diào)用模型,實現(xiàn)寵物狗品種識別功能,如圖4所示為Android APP中通過拍攝照片識別寵物狗品種結(jié)果圖。在實際應(yīng)用中,可以根據(jù)識別錯誤的信息,繼續(xù)加入迭代訓(xùn)練數(shù)據(jù)集糾正結(jié)果,不斷提高圖像識別效果。
4? 結(jié)? 論
本文開發(fā)的采用人工智能技術(shù)的寵物狗養(yǎng)育系統(tǒng),充分考慮用戶的需求,包含養(yǎng)育寵物狗的全部環(huán)節(jié),利用圖像識別技術(shù)分辨不同品種的寵物狗。根據(jù)寵物狗品種的不同,給用戶提供寵物狗的性格特征、喂養(yǎng)方式、訓(xùn)練方式等相關(guān)信息。幫助用戶在寵物狗生病時提供就醫(yī)信息和護理信息。通過狗狗朋友圈獲取、分享狗狗的信息,與其他寵物狗愛好者進行交流。本系統(tǒng)根據(jù)用戶的需求出發(fā),為用戶提供針對其寵物狗品種的各類信息,使用戶獲得良好的體驗?;谌斯ぶ悄軋D像識別技術(shù)的“寵物狗品種識別”功能是本系統(tǒng)的核心功能。借助百度EasyDL平臺快速實現(xiàn)寵物狗品種識別,利用不同品質(zhì)的寵物狗圖片數(shù)據(jù)進行機器訓(xùn)練,獲得了良好的使用效果。
參考文獻(xiàn):
[1] 百度AI開發(fā)平臺.EasyDL定制AI訓(xùn)練平臺 經(jīng)典版圖像分類 [EB/OL].(2020-06-28).https://ai.baidu.com/ai-doc/EASYDL/ok38n2w9h.
[2] 劉洋,史煜,曹雪倩,等.自動化機器學(xué)習(xí)在眼部疾病識別及分類中的初步應(yīng)用 [J].中國數(shù)字醫(yī)學(xué),2019,14(3):44-45+49.
作者簡介:雷靜(1981.12—),女,漢族,四川成都人,講師,工程碩士,研究方向:計算機應(yīng)用。