杜 O 慧、駱 O 慧、楊 O 民
ᴀɪ 熱量
管理師
Agenda
動機與目標
熱量計算
運動識別模型
UI 介紹
成果展示
4
5
3
2
1
專題動機
人口過重及肥胖率已達
58.4 %,且呈逐年上升趨勢
國人外食比例接近 7 成,
享美食造成攝取過剩熱量
如何兼顧美食與健康,管理
熱量是大家關注課題
專題目標
每日攝入卡路里 總熱量消耗
< 0 : 熱量赤字,體重減少
> 0 : 熱量盈餘,體重增加
消耗量
吃的量
熱量
缺口
活動量
運動量
基礎代謝率
熱量計算
熱量說明
每日攝入卡路里 總熱量消耗 TDEE
主餐 BMR
活動係數
運動熱
量消耗
飲品
每日攝入卡路里
❖主餐 ❖飲品
總熱量消耗
總熱量消耗
計算公式
AI 運動識別模型
活動係數
總熱量消耗計算說明
BMR( 男 ) = (13.7× 體重 ( 公斤 )) + (5.0 × 身高 ( 公分 )) - (6.8 × 年齡 ) + 66
BMR( 女 ) = (9.6× 體重 ( 公斤 )) + (1.8 × 身高 ( 公分 )) - (4.7 × 年齡 ) + 655
日常活動量 無活動
輕度
活動量
中度
活動量
高度
活動量
非常高度
活動量
BMR 1.2 1.375 1.55 1.72 1.9
倍 倍 倍
倍 倍
註 : BMR( 基礎代謝率 ) 是一天 24 小時躺臥狀態下所需的熱量。
❖ 𝓑𝓜𝓡 ( 依性別、年齡、身高、體重計算)
❖ 𝓑𝓜𝓡 活動係數
總熱量消耗計算說明
EEE 運動熱量消耗 ( 千卡 ) = 體重 ( 公斤 ) x MET_Like/ 次 x 運動次
數
0.4 大卡 / 次
1.0 大
卡 / 次
註 : MET( 代謝當量 ) 為在安靜坐著的狀態下,每公斤體重每小時消耗 1 大卡的熱
量。
0.16 大
卡 / 次
❖ 運動熱量消耗 ( 依運動類型、次數、體重計算)
運動熱量消耗
如何估算 ?
伏地挺身 (0.4 大
卡 / 次 )
次數 = 7
Cal = 2.8 大卡
仰臥起坐 (0.16 大卡 /
次 )
次數 = 10
Cal = 1.6 大卡
引體向上 (1.0 大卡 / 次 )
次數 = 5
Cal = 5 大卡
時間軸
Cal = 9.4 大
運動熱量消耗估算
AI 運動識別
M odel
運動
識別
運動
影片
運動類型
運動
次數
MET_
Like
5
7
運動熱量消耗估算
AI 運動識別模型
AI 運動類型識別 M odel
𝓂𝑒𝒹𝒾𝒶𝓅𝒾𝓅𝑒
𝓅𝑜𝓈𝑒
𝓛𝓢𝓣𝓜 𝓜𝓸𝓭𝓮𝓵
伏地挺身 ...
運動類型
45 幀
input
(1,45,99)
output
(1,6)
姿態座標資料收集
骨架是使用” Mediapipe Pose landmarker model” 追蹤人體 33
個身體座標點,於影片抓取每一幀 (frame) 的座標資料 (x,y,z) ,座
標資料總共有 99 個 (3x33)
(X24, Y24,Z24)
frame
1
x0 y0 z0
… x32 y32 z32
x0 y0 z0
… x32 y32 z32
frame
30
正規化
以鼻子為原點,將所有座標關係轉換為與鼻子的距離,除去人物
在畫面位置的影響
正規化:鼻子為原點
base_x, base_y, base_z = temp_landmark_list[0]
for point in temp_landmark_list:
point[0] -= base_x
point[1] -= base_y
point[2] -= base_z
正規化
利用肩膀長度作為基準,進行所有資料正規化處理,減少人物因
為距離遠近產生的影響
正規化:
肩膀長度作為標準差
shoulder_length_x = abs(temp_landmark_list[11][0] -
temp_landmark_list[12][0])
if shoulder_length_x == 0:
shoulder_length_x = 1 # 防止除以 0
for i in range(len(temp_landmark_list)):
for j in range(3):
temp_landmark_list[i][j] /= shoulder_length_x
temp_landmark_list =
list(itertools.chain.from_iterable(temp_landmark_list))
影片資料處理
收集各類運動影片共 310 個影片,擷取每部影片前、後 40% 資
料,存入 CSV 檔。
20% 40% 60%
15
frames
15
frames
15
frames
X(45,99)
100%
0%
資料集
20%
40%
60%
•
•
•
⮞
•
•
•
⮞
1
2
…
13
14
15
•
•
•
⮞
20%
40%
60%
•
•
•
⮞
•
•
•
⮞
•
•
•
⮞
1
2
…
13
14
15
每部影片資料筆數,在 20% 、 20% -40% 、 60% -100% ,分別
取 15 幀,每一幀有 99 個欄位資料 (X0, Y0, Z0, … , X32,Y32, Z32)
frame 1
frame n
•
•
•
⮞
.......
•
•
•
⮞
LSTM 模型
LSTM ( Long Short-Term
Memory )模型是一種特殊的
RNN ( Recurrent Neural
Network ,循環神經網絡),專門
設計用來解決長期依賴問題,被廣泛
應用於需要處理序列數據的任務
中,例如時間序列預測, LSTM 選
擇性地保留或忘記信息,避免了傳
統 RNN 在處理長期依賴問題時容
易出現的梯度消失或梯度爆炸問
題。
問題:
1.user 運動姿勢影響判斷
2.類型相似的運動易有誤判
Evaluation Performance
AI 運動次數計數
𝓂𝑒𝒹𝒾𝒶𝓅𝒾𝓅𝑒
𝓅𝑜𝓈𝑒
K 次
次數計數
你做了幾下 ?
觀察角度變化
引體向上 Pullup
45 < 手肘角度 <
90
( 肩膀、肘部、手腕 )
仰臥起坐 Abworkout
50 < 腰部角度 <
140
( 肩膀、髖部、膝蓋 )
50 < 膝關節
角度 < 140
( 髖部、膝蓋、腳踝 )
伏地挺身 Pushup 深蹲 Squat
手肘角度 > 90
( 肩膀、肘部、手腕 )
提取主要關節
觀察後
●核心動作幅度大,運動量相對大
●上半身取左肩 L_Shoulder 運動角
度
●下半身取左臀 L_Hip 運動角度
●運動動作基本上是對稱
33( 全身 )-11( 頭部 )=22( 身體 ) /2 = 11 半邊
點
上半身主要關節
左肩 L_Shoulder 運動角
度
● Elbow 、 Shoulder 、 Hip
●3 個節點計算出角度 θ
●推算出 Shoulder 夾角角度
θ
計數上半身
+1 計數條件
● 定義滿足 up 、 down 狀態條件
為計數加 +1
● 引體向上 pullup
● up 狀態 : Shoulder 夾角 > 45
度
● down 狀態 : Shoulder 夾角 <
35 度
下半身主要關節
左臀 L_Hip 運動角度
● Shoulder 、 Hip 、 Knee
● 3 個節點計算出角度 θ
● 推算出 Hip 夾角角度
θ
計數下半身
+1
計數條件
● 定義滿足 up 、 down 狀態條件為
計數加 +1
● 仰臥起坐 Situp
● up 狀態 : Hip 夾角 > 60 度
● down 狀態 : Hip 夾角 < 45 度
計數上或下半身 ?
● 比較 shoulder 與 hip
● 角度條件完成次數
● 取累積次數較多
● 伏地挺身 Pushup hip 角度變化很
小,取 shoulder 角度計算次數
● 仰臥起坐 Situp shoulder 角度變
化很小,取 hip 角度計算次數
● Done!
運動類型判斷
● 載入已訓練的模
lstm_model.h5
● opencv 每格判斷 predict
squat,squat,squat,abworkout,abworkout,
abworkout,abworkout…
● 實際偵測雜訊太多且不停變化
● 調整為 30 格累績次數
squat = 3 深蹲 Squat
abworkout= 27 仰臥起坐 Situp*
pullup = 0 引體向上 Pullup
● 取累績次數較多之類別 :
abworkout 仰臥起坐
● 結果較穩定 !!
UI 介紹
UI 功能使用說明
技術
Tkinter
輸入 呈現
基本資料
影片上傳
AI 識別模型資料
熱量數值
影片內容
運動食物建議
歷史資料圖表
UI Layout
總消耗熱量
TDEE
熱量計算式
基本 + 運動 - 攝入 = 剩餘
影片上傳區
運動細項
影片顯示區
用餐選擇區 建議
成果展示
攝入卡路里
運動燃燒
卡路里
總消耗熱量
TDEE
https://www.youtube.com/
watch?v=ldoRX7QRn74
未來發展
運動姿勢矯正 疾病預防
1. 結合運動專業.分析影片動
作正確性,避免運動傷害
2. 依據 user 基本資料,建議
適
合的運動項目
1. 資料儲存為 user 的健康日
記,
結合營養 / 醫療專業,提早警
示健康問題,預防疾病
2. 依據 user 基本資料及記錄
,提供餐飲建議
感 謝 聆
聽 ~

More Related Content

PPT
AIoT智能健身 AIoT Smart Fitness
PPT
智能健身
PPTX
專題作品簡報
PPTX
專題作品簡報
DOC
常見各種運動熱量消耗量表
PDF
1206 雅筑怡嘉昱仁
PPTX
AI 認得你,也認得照片的重複 - 智慧型圖片管理系統:結合人臉辨識與重複圖片偵測技術【艾鍗學院學員專題 】
PPTX
AI 個人造型顧問:結合 Stable Diffusion 與 CLIP 的 AI 虛擬穿搭推薦系統設計【艾鍗學院學員專題 】
AIoT智能健身 AIoT Smart Fitness
智能健身
專題作品簡報
專題作品簡報
常見各種運動熱量消耗量表
1206 雅筑怡嘉昱仁
AI 認得你,也認得照片的重複 - 智慧型圖片管理系統:結合人臉辨識與重複圖片偵測技術【艾鍗學院學員專題 】
AI 個人造型顧問:結合 Stable Diffusion 與 CLIP 的 AI 虛擬穿搭推薦系統設計【艾鍗學院學員專題 】

More from IttrainingIttraining (20)

PPTX
「熊出沒注意!」:結合 YOLOv8 的台灣黑熊即時預警系統設計【艾鍗學院學員專題 】
PPTX
BentoCal:食物熱量健康管理系統 - 結合 YOLOv8 的便當影像辨識與熱量推估系統【艾鍗學院學員專題 】
PPTX
AI 飆股預測:你的智慧投資夥伴-基於技術分析與基本面的 AI 股價預測系統【艾鍗學院學員專題 】
PPTX
Character Generation Master 角色生成大師【艾鍗學院】
PPTX
吉伊卡哇臉盲辨識器 - 艾鍗學院學員專題 [AI人工智慧與邊緣運算工程師班]
PPTX
AI 語音複製 X 翻譯 - 艾鍗學院學員專題 [AI人工智慧與邊緣運算工程師班]
PPTX
以人工智能打造企業內部知識管理系統以PCB板為例 - 艾鍗學院學員專題 [AI人工智慧與邊緣運算工程師班]
PPTX
Scratch遊戲設計 教學培訓課程Scratch Game【台灣程式教育協進會】
PPTX
Scratch AI應用與遊戲開發 教學培訓課程【台灣程式教育協進會】
PPTX
APCS程式設計 - C++程式語言觀念 (大學程式設計先修檢測)
PPTX
艾鍗學院課程節錄 - 自然語言處理與大型語言模型(NLP,LLM,Transformer)
PPTX
艾鍗學院學員AI專題 - 飛向Kaggle宇宙🚀🚀-系外行星之光譜與物質濃度分析
PDF
艾鍗學院學員AI專題 - 類流感預測
PPTX
艾鍗學院學員AI專題 - Kaggle貸款風險預測模型開發
PPTX
艾鍗學院學員AI專題 - 串流平台Netflix 熱門電影與節目特徵分析及排行上榜預測平台
PPT
C++程式設計Basic
PPTX
第五組_速速單字書 Quickly Collect Words
PDF
第四組_產品評論情緒分析系統
PPTX
第三組_籃球賽影像分析-艾鍗學院
PPTX
第二組_Fast CheckOut秒結專案-艾鍗學院
「熊出沒注意!」:結合 YOLOv8 的台灣黑熊即時預警系統設計【艾鍗學院學員專題 】
BentoCal:食物熱量健康管理系統 - 結合 YOLOv8 的便當影像辨識與熱量推估系統【艾鍗學院學員專題 】
AI 飆股預測:你的智慧投資夥伴-基於技術分析與基本面的 AI 股價預測系統【艾鍗學院學員專題 】
Character Generation Master 角色生成大師【艾鍗學院】
吉伊卡哇臉盲辨識器 - 艾鍗學院學員專題 [AI人工智慧與邊緣運算工程師班]
AI 語音複製 X 翻譯 - 艾鍗學院學員專題 [AI人工智慧與邊緣運算工程師班]
以人工智能打造企業內部知識管理系統以PCB板為例 - 艾鍗學院學員專題 [AI人工智慧與邊緣運算工程師班]
Scratch遊戲設計 教學培訓課程Scratch Game【台灣程式教育協進會】
Scratch AI應用與遊戲開發 教學培訓課程【台灣程式教育協進會】
APCS程式設計 - C++程式語言觀念 (大學程式設計先修檢測)
艾鍗學院課程節錄 - 自然語言處理與大型語言模型(NLP,LLM,Transformer)
艾鍗學院學員AI專題 - 飛向Kaggle宇宙🚀🚀-系外行星之光譜與物質濃度分析
艾鍗學院學員AI專題 - 類流感預測
艾鍗學院學員AI專題 - Kaggle貸款風險預測模型開發
艾鍗學院學員AI專題 - 串流平台Netflix 熱門電影與節目特徵分析及排行上榜預測平台
C++程式設計Basic
第五組_速速單字書 Quickly Collect Words
第四組_產品評論情緒分析系統
第三組_籃球賽影像分析-艾鍗學院
第二組_Fast CheckOut秒結專案-艾鍗學院
Ad

艾鍗學院學員AI專題 - AI 熱量管理師