亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        智能高校健康食堂系統(tǒng)應(yīng)用設(shè)計(jì)與實(shí)現(xiàn)*

        2022-01-14 07:20:08賈昀峰
        科技創(chuàng)新與應(yīng)用 2022年2期
        關(guān)鍵詞:菜品食堂飲食

        任 捷,賈昀峰,李 萌,溫 馨,吳 淑

        (1.四川大學(xué) 軟件學(xué)院,四川 成都610207;2.四川大學(xué) 文學(xué)與新聞學(xué)院,四川 成都610207)

        近些年來,我國社會(huì)經(jīng)濟(jì)的快速發(fā)展,人們生活質(zhì)量不斷提高,膳食營養(yǎng)也越來越受到普遍重視。國內(nèi)外大量科研數(shù)據(jù)顯示,營養(yǎng)膳食能在極大程度上影響一個(gè)人的生活狀態(tài)和身體健康。合理膳食是健康的基礎(chǔ),飲食風(fēng)險(xiǎn)導(dǎo)致疾病幾率在持續(xù)增長(zhǎng),已成為影響人們健康的主要危險(xiǎn)因素?!丁敖】抵袊?030”規(guī)劃綱要》提出,要廣泛推廣合理膳食行動(dòng),針對(duì)一般人群、特定人群和家庭,加強(qiáng)營養(yǎng)和膳食指導(dǎo)[1]。

        高校學(xué)生在日常學(xué)習(xí)和生活中體力和腦力消耗大、身體基礎(chǔ)代謝快,需要保證合理的熱量和營養(yǎng)攝入。作為剛剛脫離父母而步入大學(xué)的群體,容易養(yǎng)成不良飲食習(xí)慣,危害身體健康。食物的選擇影響著大學(xué)生的身體健康,而食物的供應(yīng)主要來源于高校食堂。目前,尚無以學(xué)生群體為受眾的、具有菜品檢測(cè)與識(shí)別功能的健康食堂系統(tǒng),來幫助學(xué)生更容易獲得菜品相關(guān)信息,從而更好地改善個(gè)性化健康飲食計(jì)劃。因此,本文選擇從高校食堂切入進(jìn)行需求分析,設(shè)計(jì)實(shí)現(xiàn)一個(gè)可以識(shí)別記錄每日膳食,并分析其熱量營養(yǎng)的微信小程序,可以讓高校學(xué)生更方便的記錄并調(diào)整自己的飲食結(jié)構(gòu),養(yǎng)成良好的飲食習(xí)慣。

        本文使用前后端分離、目標(biāo)檢測(cè)、推薦系統(tǒng)等技術(shù),構(gòu)建一個(gè)面向高校學(xué)生飲食的食堂健康系統(tǒng)。學(xué)生隨時(shí)可以查詢食堂菜品信息,也可通過拍照識(shí)別的方式對(duì)日常飲食攝入進(jìn)行記錄。此外,系統(tǒng)還根據(jù)綜合數(shù)據(jù)提供菜品熱榜、熱量排行等,讓學(xué)生在制定個(gè)人飲食計(jì)劃上能有更完善的依據(jù),更好地滿足營養(yǎng)需求。

        1 相關(guān)知識(shí)

        1.1 前后端分離

        前后端分離的連接方式,即將軟件應(yīng)用的前端與后端分為兩個(gè)獨(dú)立的模塊分別進(jìn)行開發(fā)部署,并通過相關(guān)的通信技術(shù)(如HTTP 協(xié)議)進(jìn)行交互對(duì)接,從而有效提高開發(fā)過程的靈活度和用戶體驗(yàn)度[2]。

        本文采用基于前后端分離的C/S 架構(gòu)(微信小程序/服務(wù)器)進(jìn)行應(yīng)用的開發(fā)。前端使用Vue.js+mpvue 框架構(gòu)建,以方便工程化地處理頁面交互邏輯,解決常規(guī)前端開發(fā)中數(shù)據(jù)通信與dom 操作等問題。前后端交互上使用微信小程序官方封裝的請(qǐng)求API,能夠有效避免跨域訪問問題的產(chǎn)生,同時(shí)也較大程度地提升了接口的可讀性、安全性和可修改性。

        1.2 菜品目標(biāo)檢測(cè)

        目標(biāo)檢測(cè),即找出圖像中所有感興趣的目標(biāo)(物體)并確定它們的類別及位置,是目前計(jì)算機(jī)視覺領(lǐng)域的核心問題之一。常見的深度學(xué)習(xí)目標(biāo)檢測(cè)算法分為兩大系列:RCNN 系列與YOLO 系列。分別為二階段(two-stage)基于區(qū)域檢測(cè)和一階段(one-stage)基于區(qū)域提取的代表性算法。目前,在面向餐飲領(lǐng)域的菜品圖片識(shí)別與檢測(cè)實(shí)現(xiàn)上,通常是基于這兩個(gè)系列進(jìn)行開發(fā)與創(chuàng)新的[3]。

        本文的應(yīng)用中,系統(tǒng)能夠獲取學(xué)生端上傳的菜品圖片,并識(shí)別出圖片中所有菜品的類別,隨后反饋相應(yīng)信息,此處需要用到上述的目標(biāo)檢測(cè)算法。實(shí)現(xiàn)過程中,本文使用了Faster RCNN 算法[4]來完成菜品目標(biāo)檢測(cè)功能。Faster RCNN 算法是在最初的RCNN 算法的基礎(chǔ)上,采用自適應(yīng)尺度池化對(duì)整個(gè)網(wǎng)絡(luò)進(jìn)行優(yōu)化,從而規(guī)避了RCNN 中冗余的特征提取操作,提高了網(wǎng)絡(luò)識(shí)別的準(zhǔn)確率。同時(shí),使用SoftMax 非線性分類器,以多任務(wù)學(xué)習(xí)的方式同時(shí)進(jìn)行分類和回歸。

        1.3 緩存與消息隊(duì)列

        本系統(tǒng)使用了Redis 緩存技術(shù),將數(shù)據(jù)存儲(chǔ)在內(nèi)存中,從而大幅提高了數(shù)據(jù)讀取速度,也會(huì)周期性的把更新的數(shù)據(jù)寫入磁盤或者把修改操作寫入追加的記錄文件,并且在此基礎(chǔ)上實(shí)現(xiàn)了master-slave(主從)同步。從而不僅保證了數(shù)據(jù)讀取的效率,也保證的數(shù)據(jù)存儲(chǔ)的安全性[5]。此外,Redis 還支持豐富的數(shù)據(jù)類型,如string、list、hash 等,預(yù)防了多種數(shù)據(jù)類型產(chǎn)生沖突的可能性。

        同時(shí),為防止模塊間高并發(fā)通信,本系統(tǒng)搭建了消息隊(duì)列中間件RabbitMQ,避免由于來不及同步處理請(qǐng)求發(fā)生阻塞的情況。通過消息隊(duì)列,可以緩解系統(tǒng)的壓力,提高系統(tǒng)的性能。RabbitMQ 具有消息集群等多種機(jī)制,支持多種協(xié)議和多種語言,保證系統(tǒng)的高可用性和高可靠性[6]。

        2 架構(gòu)設(shè)計(jì)

        2.1 分層架構(gòu)

        基于微信小程序和前后端分離技術(shù),結(jié)合健康管理和菜品識(shí)別業(yè)務(wù)特點(diǎn),并充分考慮師生和食堂工作人員的使用需求,本文采用分層思想設(shè)計(jì)了系統(tǒng)的總體架構(gòu),從上到下共分為四個(gè)層次:用戶層、業(yè)務(wù)層、數(shù)據(jù)庫、運(yùn)行環(huán)境,具體如圖1 所示。

        圖1 系統(tǒng)架構(gòu)圖

        用戶層:又稱表示層、界面UI 層,位于分層架構(gòu)最上層,與用戶直接接觸。本文用戶層是基于微信小程序平臺(tái)進(jìn)行設(shè)計(jì)開發(fā)的。微信小程序(Miniapp)是一種“觸手可及”的應(yīng)用,即用戶使用微信掃一掃或者搜一下就可打開應(yīng)用進(jìn)行使用,具有很高的易用性和跨平臺(tái)性。相較于傳統(tǒng)的APP,它十分適應(yīng)于高校應(yīng)用場(chǎng)景[7]。

        業(yè)務(wù)層:又稱邏輯層,對(duì)具體問題進(jìn)行邏輯判斷與執(zhí)行操作,是用戶層和數(shù)據(jù)庫層的橋梁,實(shí)現(xiàn)兩層之間的數(shù)據(jù)連接與指令傳達(dá)。此處劃分為四個(gè)子系統(tǒng)——食堂端、學(xué)生端、深度學(xué)習(xí)模塊和安全控制域。

        數(shù)據(jù)庫:即按照數(shù)據(jù)結(jié)構(gòu)來組織、存儲(chǔ)和管理數(shù)據(jù)的一些倉庫。此處建立兩個(gè)關(guān)系型數(shù)據(jù)庫MySQL,作為存放主要數(shù)據(jù)信息的主備庫;同時(shí),建立一個(gè)非關(guān)系型數(shù)據(jù)庫Redis,作為頻繁數(shù)據(jù)的緩存庫。

        運(yùn)行環(huán)境:即系統(tǒng)所依靠的機(jī)器設(shè)備、操作系統(tǒng)、虛擬環(huán)境等。此處使用云服務(wù)器+Docker 技術(shù)進(jìn)行多容器化部署,同時(shí)為保證系統(tǒng)較高可用性,利用Nginx 技術(shù)實(shí)現(xiàn)負(fù)載均衡,對(duì)流量進(jìn)行平均分配。

        2.2 系統(tǒng)部署

        通過系統(tǒng)部署圖可以展現(xiàn)軟件系統(tǒng)中的物理架構(gòu),方便進(jìn)行分級(jí)和關(guān)系處理。本系統(tǒng)的部署圖如圖2 所示。從后往前看,MySQL 部署在專門的數(shù)據(jù)庫服務(wù)器上;菜品目標(biāo)檢測(cè)模塊使用python 實(shí)現(xiàn),并使用輕量級(jí)Web 框架Flask 配上uWSGI Web 服務(wù)器部署在專用的深度學(xué)習(xí)服務(wù)器上;而對(duì)于應(yīng)用中的主要業(yè)務(wù)處理模塊與中間件則部署在統(tǒng)一的一臺(tái)應(yīng)用服務(wù)器當(dāng)中;前端依據(jù)具體用戶需求分為多個(gè)端提供訪問。

        圖2 系統(tǒng)部署圖

        如因設(shè)備成本、訪問量小等問題,需要將業(yè)務(wù)處理、深度學(xué)習(xí)和數(shù)據(jù)庫三大模塊放置在同一臺(tái)服務(wù)器當(dāng)中,也直接可通過Docker 鏡像技術(shù)進(jìn)行容器化部署。此方法單機(jī)管理,成本可控,比較適合小規(guī)模應(yīng)用作業(yè),但模塊上具有較高耦合性,因此需要進(jìn)行適當(dāng)權(quán)衡。

        3 功能設(shè)計(jì)與實(shí)現(xiàn)

        3.1 模塊設(shè)計(jì)

        本系統(tǒng)在功能需求上劃分成兩個(gè)端:學(xué)生端、食堂端。

        學(xué)生端的前端為微信小程序,包含著例如飲食方案、健康報(bào)告、飲食計(jì)劃跟蹤、菜品識(shí)別、菜品推薦等重要功能內(nèi)容。值得注意的是,當(dāng)中的“菜品拍照識(shí)別”與菜品飲食推薦兩大功能屬于系統(tǒng)架構(gòu)中(見圖1)的深度學(xué)習(xí)模塊的功能。而食堂端可以設(shè)計(jì)成小程序端,也可以是Web 網(wǎng)頁端。在實(shí)際應(yīng)用當(dāng)中,通常為了滿足食堂管理后臺(tái)對(duì)食品和菜品信息進(jìn)行批量化的展示與處理,適合構(gòu)建成Web 界面;具體系統(tǒng)功能結(jié)構(gòu)如圖3 所示。

        圖3 系統(tǒng)功能結(jié)構(gòu)圖

        3.1.1 學(xué)生端

        學(xué)生端主要包含的功能介紹如下:

        (1)菜品拍照識(shí)別:用戶用餐時(shí)可對(duì)菜品進(jìn)行拍照并上傳照片,系統(tǒng)將對(duì)照片進(jìn)行識(shí)別分析,然后為用戶返饋本次用餐分析,包括菜品的食材、營養(yǎng)成分、常用調(diào)味品、熱量等信息。同時(shí),用戶可以對(duì)識(shí)別的結(jié)果設(shè)置規(guī)格(單位克或份)。通過點(diǎn)擊記錄按鈕,本次識(shí)別將作為用戶的飲食統(tǒng)計(jì)數(shù)據(jù)并后續(xù)供用戶查看。

        (2)菜品飲食推薦:用戶在發(fā)現(xiàn)頁點(diǎn)擊推薦導(dǎo)航選項(xiàng),系統(tǒng)通過用戶的飲食方案和使用歷史生成菜品推薦清單并向用戶展示。

        (3)選擇飲食方案:用戶可以在飲食方案處選擇適合自己的飲食方案,系統(tǒng)為用戶計(jì)算的每日推薦熱量攝入值和營養(yǎng)比例和分量值將根據(jù)用戶選擇的方案與用戶的身體數(shù)據(jù)得出。

        (4)每日飲食計(jì)劃跟蹤:用戶可查看到當(dāng)日當(dāng)前的早中晚三餐及加餐的用餐識(shí)別記錄,并且根據(jù)用戶的身體數(shù)據(jù)與用戶選擇的飲食方案查看當(dāng)日的熱量上限、剩余可攝入熱量以及包含三大營養(yǎng)比例數(shù)據(jù)的營養(yǎng)分析等信息。

        (5)查看健康報(bào)告:系統(tǒng)根據(jù)用戶的用餐歷史數(shù)據(jù)定期為用戶生成一段時(shí)間內(nèi)的飲食報(bào)告,飲食報(bào)告包含用戶這段時(shí)間點(diǎn)過的菜品統(tǒng)計(jì)、攝入的營養(yǎng)統(tǒng)計(jì)、平均每日攝入的熱量、訪問次數(shù)最多的食堂等。

        (6)查看菜品食堂信息:用戶可以查看菜品和食堂的信息。

        (7)收藏菜品:學(xué)生用戶可以對(duì)自己中意的菜品進(jìn)行收藏。

        (8)個(gè)人資料管理:用戶可以管理自己身體的基本信息,如年齡、身高、體重、性別等,為飲食推薦提供一定依據(jù)。

        3.1.2 食堂端

        食堂端主要包含的功能如下:

        (1)食堂信息管理:管理員可以新建編輯餐廳的主頁,添加餐廳圖片,餐廳特色信息,主打菜品介紹等。

        (2)菜品信息管理:可以進(jìn)行菜品的編輯,菜品介紹中包括食材與調(diào)味品種類、展示圖片、烹飪方式、葷素類型等,方便用戶查看;且食堂端可以對(duì)菜品進(jìn)行上架和下架處理操作,上架后也可以對(duì)菜品進(jìn)行編輯處理。

        (3)查看用戶報(bào)告:可以對(duì)在本食堂使用過小程序的用戶特征進(jìn)行搜集,并進(jìn)行分析查看。

        3.2 主要模塊實(shí)現(xiàn)

        3.2.1 菜品拍照識(shí)別

        對(duì)于菜品的拍照識(shí)別模塊,大致有兩種可行方案。

        (1)自行算法訓(xùn)練:自行通過線上或線下方式進(jìn)行多類別大數(shù)目的菜品圖片數(shù)據(jù)搜集,并進(jìn)行數(shù)據(jù)篩選、清洗和相應(yīng)類別標(biāo)注;然后尋找適合的目標(biāo)檢測(cè)算法訓(xùn)練模型,例如上文提到的Faster-RCNN 或者YOLO 系列算法;最后將訓(xùn)練優(yōu)化好的模型部署到服務(wù)端,并放出接口以供邏輯層進(jìn)行調(diào)用。

        (2)調(diào)取服務(wù)接口:調(diào)取公共的深度學(xué)習(xí)API 服務(wù)接口(如AI 菜品識(shí)別,果蔬識(shí)別),來滿足相應(yīng)功能實(shí)現(xiàn)。

        第一種方法易得到更加靈活的模型和更高的場(chǎng)景適應(yīng)性,例如可自定義標(biāo)簽(label)以適應(yīng)具體高校食堂的菜品信息;第二種方法穩(wěn)定的模型和接口能夠在一定程度上保證小程序性能和菜品檢測(cè)的準(zhǔn)確性,但不具備靈活特點(diǎn);本文使用的是第一種方案。

        3.2.2 菜品飲食推薦

        學(xué)生端共實(shí)現(xiàn)了三種推薦方式如下:

        內(nèi)容推薦:小程序首頁,系統(tǒng)將自動(dòng)根據(jù)用戶的用餐記錄數(shù)據(jù)以及后臺(tái)生成的標(biāo)簽,來生成菜品推薦清單并向用戶展示。本文采用基于內(nèi)容的推薦算法(Content-Based Recommendations,CBR),即根據(jù)用戶的收藏和識(shí)別記錄為用戶打上相應(yīng)標(biāo)簽,在推薦時(shí)計(jì)算用戶與菜品標(biāo)簽的匹配程度,并反饋相似度最近的TopN 的序列以及與其相適應(yīng)的菜品數(shù)據(jù)[8]。

        位置推薦:小程序“附近”界面,系統(tǒng)會(huì)調(diào)用地圖組件獲取用戶當(dāng)前位置,并根據(jù)距離來推薦最近的TopN 食堂的菜品。

        熱門推薦:小程序“熱門”界面,系統(tǒng)會(huì)排序篩選出前TopN 瀏覽量和收藏量的菜品,并向用戶展示。

        3.2.3 生成健康報(bào)告

        系統(tǒng)根據(jù)用戶的用餐歷史數(shù)據(jù)定期為用戶生成一段時(shí)間內(nèi)的飲食報(bào)告,飲食報(bào)告包含用戶這段時(shí)間點(diǎn)過的菜品統(tǒng)計(jì)、攝入的營養(yǎng)統(tǒng)計(jì)、平均每日攝入的熱量、訪問次數(shù)最多的食堂等。此處關(guān)注的是,如何通過攝入量去計(jì)算評(píng)估身體健康狀態(tài)。本文借助營養(yǎng)和健身領(lǐng)域的經(jīng)驗(yàn),根據(jù)體質(zhì)指數(shù)(BMI)[9]和基礎(chǔ)代謝率(BMR)兩個(gè)指標(biāo)對(duì)身體狀況進(jìn)行衡量。

        BMI:身體質(zhì)量指數(shù)(Body Mass Index),是國際上常用的衡量人體胖瘦程度以及是否健康的一個(gè)標(biāo)準(zhǔn)。

        BMR:基礎(chǔ)代謝率(Basal Metabolic Rate),指人體在清醒而又極端安靜的狀態(tài)下,不受肌肉活動(dòng)、環(huán)境溫度、食物及精神緊張等影響時(shí)的能量代謝率。通常使用Harris Benedict 公式進(jìn)行計(jì)算,它是根據(jù)身高、體重、年齡及性別來計(jì)算健康人體基礎(chǔ)能量消耗的方法。計(jì)算公式如下所示,其中w 為體重(千克),h 為身高(厘米),a 為年齡(歲):

        男性BMR=66.47+13.75×w+5×h-6.775×a

        女性BMR=655.1+9.563×w+1.85×h-4.676×a

        在進(jìn)行系統(tǒng)測(cè)算時(shí),僅需要將公式轉(zhuǎn)化為對(duì)應(yīng)語言(如java、python)代碼,傳入用戶數(shù)據(jù)進(jìn)行運(yùn)算即可得出結(jié)果。根據(jù)具體的BMI 和BMR 結(jié)果,可以對(duì)用戶提出針對(duì)性的飲食意見,如少食多餐多運(yùn)動(dòng)等。

        4 結(jié)束語

        結(jié)合高校學(xué)生營養(yǎng)膳食需求,本文基于前后端分離、菜品識(shí)別、菜品推薦等技術(shù),完整設(shè)計(jì)并實(shí)現(xiàn)一個(gè)面向?qū)W生飲食健康的高校健康食堂系統(tǒng)小程序。學(xué)生可以選擇個(gè)性化的飲食方案,通過菜品檢測(cè)的方式獲取菜品信息,并記錄每餐的營養(yǎng)攝入量。同時(shí),系統(tǒng)根據(jù)用戶使用歷史,產(chǎn)生對(duì)應(yīng)的菜品推薦結(jié)果,生成的健康報(bào)告可以讓用戶量化地進(jìn)行飲食結(jié)構(gòu)的調(diào)整。綜上所述,本應(yīng)用可方便學(xué)生對(duì)每日飲食進(jìn)行識(shí)別、記錄與規(guī)劃,有利于其個(gè)人對(duì)自己的日常飲食獲得一個(gè)清晰直觀的統(tǒng)計(jì),并針對(duì)其中的問題進(jìn)行調(diào)整,起到均衡飲食結(jié)構(gòu),保障學(xué)生身心健康,養(yǎng)成良好的飲食習(xí)慣的作用,具有較高的應(yīng)用價(jià)值和可擴(kuò)展空間。

        猜你喜歡
        菜品食堂飲食
        “互助孝老食堂”值得推廣
        春節(jié)飲食有“三要”
        中老年保健(2021年2期)2021-08-22 07:30:48
        飲食如何搭配才健康
        迷惑菜品又來了
        食堂
        幸福食堂值得推廣
        三千食堂
        趣味(語文)(2019年3期)2019-06-12 08:50:16
        何為清淡飲食
        特別健康(2018年4期)2018-07-03 00:38:14
        假蒟葉系列菜品的開發(fā)利用現(xiàn)狀
        健康飲食
        久久亚洲AV无码一区二区综合| 国产高清无码91| 亚洲色在线视频| av超碰在线免费观看| 亚洲中文字幕av天堂| 国产粉嫩嫩00在线正在播放| 免费女同毛片在线不卡| 麻豆国产精品久久天堂| 亚洲成人精品在线一区二区| 日本精品一区二区在线看| 日本岛国视频在线观看一区二区| 国产日本精品一区二区免费| 97超碰精品成人国产| 国产日产欧产精品精品蜜芽| 日本无码欧美一区精品久久| 天天夜碰日日摸日日澡| 亚洲精品毛片一区二区三区| 亚洲a∨天堂男人无码| 中文字幕有码高清| 国产麻豆国精精品久久毛片| 亚洲中文字幕日韩综合| 亚洲狠狠婷婷综合久久久久| 日韩放荡少妇无码视频| 日本精品人妻无码77777| 香蕉视频毛片| 亚洲AV小说在线观看| 亚洲av高清一区三区三区| 亚洲av丰满熟妇在线播放| 97se亚洲国产综合自在线 | 亚洲av综合av国产av中文| 国产麻传媒精品国产av| 免费做爰猛烈吃奶摸视频在线观看 | 亚洲欧美乱日韩乱国产| 中文字幕亚洲无线码在一区| 亚洲黄片av在线免费观看| 亚洲一区二区三区偷拍视频| 体验区试看120秒啪啪免费| 久久99精品国产麻豆宅宅| 久久久国产精品麻豆| 亚洲日本无码一区二区在线观看| 麻豆成年人视频在线观看|