植柯霖,李 明
(廣州城建職業(yè)學(xué)院 信息工程學(xué)院,廣東 廣州 510925)
當(dāng)前居民對個人飲食營養(yǎng)的了解僅限于電視健康養(yǎng)生節(jié)目、科普書籍雜志等形式,獲取到的信息往往是關(guān)于食材營養(yǎng)知識的定性知識,缺乏關(guān)于食材營養(yǎng)的定量數(shù)據(jù)。為了讓居民了解食材營養(yǎng)的準(zhǔn)確營養(yǎng)數(shù)據(jù),已有不少學(xué)者和系統(tǒng)設(shè)計提出了不同的食材營養(yǎng)查詢系統(tǒng)。董曉威等[1]設(shè)計開發(fā)了一個基于VB編程技術(shù)與Access數(shù)據(jù)庫技術(shù)的營養(yǎng)膳食咨詢系統(tǒng),該查詢系統(tǒng)是Windows應(yīng)用程序查詢系統(tǒng),在功能和查詢速度上,都有不錯的表現(xiàn),但缺乏隨時隨地查詢的便利性;吳晨曦等[2]基于單片機(jī)與傳感器技術(shù)設(shè)計開發(fā)了一套稱量計算食材營養(yǎng)成分的檢測系統(tǒng),該系統(tǒng)能夠使用硬件和算法通過傳感器識別食材營養(yǎng)的成分和參考數(shù)值,實現(xiàn)了較高的智能化,但設(shè)備移動性差,只能用在食堂、餐廳等固定場所;熊國紅[3]基于B/S架構(gòu)設(shè)計了一個營養(yǎng)信息共享系統(tǒng),采用了網(wǎng)頁式的查詢方式,在手機(jī)等移動設(shè)備上可以隨時隨地查詢,但在查詢之前需要先搜索該查詢系統(tǒng)或輸入網(wǎng)址或在瀏覽器中找到該網(wǎng)頁書簽,這些操作上的麻煩都可能導(dǎo)致用戶放棄查詢,導(dǎo)致該查詢系統(tǒng)缺乏用戶黏性?;诓樵儽憷院陀脩麴ば缘目紤],本系統(tǒng)采用目前非常流行的微信小程序架構(gòu),微信小程序輕巧靈活[4],具有非常友好的交互體驗[5-6],依托微信手機(jī)應(yīng)用程序的用戶黏性,小程序在用戶中具有較高的持續(xù)使用意愿[7],可隨時用手機(jī)進(jìn)行移動端數(shù)據(jù)訪問。目前類似的查詢系統(tǒng)也較多[8-10],具有較好的用戶基礎(chǔ)。
查詢系統(tǒng)最重要的部分是提供充足和準(zhǔn)確的查詢數(shù)據(jù),《中國食物成分表》[12-13]是目前我國關(guān)于食材成分?jǐn)?shù)據(jù)最專業(yè)的參考書,現(xiàn)已更新至第6版,在食物分類、成分命名、數(shù)據(jù)表達(dá)等方面基本與國際組織INFOODS[13]的規(guī)范和標(biāo)準(zhǔn)一致,共收錄1 100多條關(guān)于植物性原料的食物的一般營養(yǎng)成分?jǐn)?shù)據(jù),3 600多條關(guān)于動物性原料和以食品為主的食物成分?jǐn)?shù)據(jù),數(shù)據(jù)充足權(quán)威。本查詢系統(tǒng)以《中國食物成分表》作為重要參考數(shù)據(jù),同時適時增加有價值的網(wǎng)絡(luò)參考數(shù)據(jù)。為提供更有價值且清晰的數(shù)據(jù),在建立數(shù)據(jù)庫前,先對數(shù)據(jù)進(jìn)行了歸類標(biāo)記,所有的食材數(shù)據(jù)分為12個大類,55個小類。
本食材營養(yǎng)數(shù)據(jù)智慧查詢系統(tǒng)是基于微信小程序的云開發(fā)框架。系統(tǒng)的查詢數(shù)據(jù)通過云開發(fā)的后臺導(dǎo)入,每種食材建立一條記錄,每一條記錄中包含ID、食材圖片、營養(yǎng)信息、食材名稱、食材類型等數(shù)據(jù)字段,具體數(shù)據(jù)類型如表1所示。
表1 數(shù)據(jù)庫字段設(shè)置
目前該系統(tǒng)有兩種查詢模式,一種是基于文本關(guān)鍵字的查詢,該查詢模式基于正則表達(dá)式進(jìn)行匹配,根據(jù)查詢字條的相關(guān)度進(jìn)行降序排列顯示;另一種是基于圖片目標(biāo)檢測與識別的方式識別查詢體,通過返回的識別關(guān)鍵字,按第一種方式查詢。查詢程序流程如圖1所示。
圖1 食材營養(yǎng)成分?jǐn)?shù)據(jù)智慧查詢系統(tǒng)查詢流程
本系統(tǒng)采用目前非常流行的微信小程序架構(gòu),涉及WXML,WXS,JavaScript和Json等技術(shù)。其中WXML是在微信程序框架下的標(biāo)簽語言,它結(jié)合了微信頁面中的基礎(chǔ)組件、事件響應(yīng)系統(tǒng),可以建構(gòu)出各種布局形式的展示頁面;WXS是微信小程序的腳本語言,對WXML定義的基礎(chǔ)組件的布局、樣式進(jìn)行描述;JavaScript是微信小程序運(yùn)行控制邏輯的程序語言,能有效組織相關(guān)的數(shù)據(jù)操作和人機(jī)交互請求;Json則是微信小程序重要的數(shù)據(jù)組織形式。本食材營養(yǎng)數(shù)據(jù)查詢系統(tǒng)的功能如圖2所示。本食材營養(yǎng)成分查詢系統(tǒng)分成兩大部分,一部分是小程序查詢申請的前端部分,負(fù)責(zé)接收用戶的文本查詢輸入和拍照輸入與上傳,實現(xiàn)后臺數(shù)據(jù)查詢請求的連接,接入第三方的智能目標(biāo)檢測識別出食材用于查詢的控制邏輯;另一部分是云端數(shù)據(jù)處理部分,負(fù)責(zé)食材數(shù)據(jù)庫查詢操作和為前端提供查詢結(jié)果。
圖2 食材營養(yǎng)成分查詢系統(tǒng)功能
移動終端小程序包括3個主要功能,一是架設(shè)人機(jī)交互的界面,用戶可通過輸入食材文本名稱或提交上傳食材圖片兩種方式實現(xiàn)查詢;二是管理用戶個人登錄信息和其他收藏、評論等功能,用戶可對自己關(guān)注的食材進(jìn)行收藏和注釋評論;三是查詢請求處理和響應(yīng)數(shù)據(jù)展示處理以及不同交互界面的管理。
云端數(shù)據(jù)處理主要分3部分?jǐn)?shù)據(jù)處理。一是針對關(guān)鍵字的數(shù)據(jù)檢索查詢;二是對檢索的結(jié)果進(jìn)行反饋和客戶端響應(yīng);三是針對用戶提交的圖片進(jìn)行人工智能目標(biāo)檢測與識別,將識別的結(jié)果反饋至小程序端,進(jìn)行下一步文本關(guān)鍵字的檢索與查詢。目前,針對圖片的檢索需要借助第三方圖像目標(biāo)檢測與識別云端接口技術(shù),同時保留自主開發(fā)食材目標(biāo)圖片檢索識別的接口。
目前,食材營養(yǎng)數(shù)據(jù)查詢系統(tǒng)已發(fā)布一個試用版本給測試群體試用,根據(jù)用戶的評價與反饋意見進(jìn)行進(jìn)一步優(yōu)化,收集用戶想增加的應(yīng)用功能?,F(xiàn)收集到用戶的反饋的內(nèi)容如表2所示。
表2 用戶反饋功能需求
通過用戶反饋的功能需求意見,已了解到本食材營養(yǎng)數(shù)據(jù)查詢系統(tǒng)具有較大的實用價值,用戶在選擇日常食材時,可隨時打開小程序進(jìn)行查詢,根據(jù)查詢數(shù)據(jù),用戶可以合理搭配食材,保證食材營養(yǎng)總體平衡。針對用戶的具體功能需求,可基于現(xiàn)有查詢系統(tǒng)進(jìn)一步開發(fā),在增強(qiáng)系統(tǒng)功能集成的同時,實現(xiàn)智能化食材管理和膳食菜式管理。針對營養(yǎng)食材搭配、菜式推薦等功能,涉及較多的智能推薦算法開發(fā),這是智能營養(yǎng)菜式推薦系統(tǒng)后續(xù)開發(fā)需要研究的課題。本食材營養(yǎng)數(shù)據(jù)智慧查詢系統(tǒng)如圖3所示,通過檢索文本關(guān)鍵字或食材圖片,小程序可快速檢索出所查詢的食材營養(yǎng)數(shù)據(jù),包括食材的圖片和食材的各項營養(yǎng)成分含量數(shù)據(jù)。用戶使用本查詢系統(tǒng)生成的查詢數(shù)據(jù)信息,可以用于商業(yè)運(yùn)營。本查詢系統(tǒng)可記錄用戶對查詢食材的關(guān)注信息、評論信息等運(yùn)維數(shù)據(jù);通過對運(yùn)維數(shù)據(jù)的挖掘和分析,生成有價值的運(yùn)維數(shù)據(jù)報表和可視化數(shù)據(jù)信息。針對餐飲行業(yè),可為商家對接用戶關(guān)于健康餐食的需求,餐飲商家可根據(jù)用戶對不同食材的關(guān)注度,為消費(fèi)者提供健康、可口的餐食,提高客戶用餐的滿意度,從而增加創(chuàng)收。
圖3 食材營養(yǎng)數(shù)據(jù)智慧查詢系統(tǒng)
本文給出了食材營養(yǎng)數(shù)據(jù)智慧查詢系統(tǒng)的整體設(shè)計架構(gòu)和數(shù)據(jù)庫構(gòu)建方法,為小程序設(shè)計查詢系統(tǒng)開發(fā)提供重要參考。同時,本食材營養(yǎng)數(shù)據(jù)智慧查詢系統(tǒng)能夠幫助居民了解食材當(dāng)中的營養(yǎng)成分信息,特別是對有慢性疾病困擾或食物過敏的人[14],能起到重要的規(guī)避預(yù)防;同時該查詢系統(tǒng)提供的查詢信息也有科普意義,能夠幫助居民提高健康知識水平,了解健康的食材,改善日常飲食營養(yǎng)平衡,提高人體免疫水平。