開發者:家平 | 指導工具:Google Gemini
本專案旨在建置一套整合多種電腦視覺技術的「AI 教室監視系統」。透過 Flask Web 框架搭載 YOLOv8 物件偵測、MediaPipe 手部與臉部辨識,實現即時的人流統計、行為監控與事件記錄功能。
本架構採用模組化設計,將前端展示、後端邏輯與 AI 推理模組分離,便於後續擴充功能。
1. 影像擷取:透過 OpenCV 讀取 Web Camera 串流。
2. AI 推理層:影像依序經過 YOLO (物件) 與 MediaPipe (特徵) 處理。
3. 數據傳輸:Flask 透過 /video_feed 推送影像,並透過 /stats API 提供 JSON 格式統計數據。
4. 前端呈現:Dashboard.js 定時抓取數據並利用 Chart.js 繪製動態圖表。
系統整合了即時影像、物件標示框與數據統計。下方為實際執行之截圖:
利用 OpenCV 在畫面上即時繪製 Bounding Box 與 Confidence Score。
當偵測到人數變動或異常事件時,自動記錄時間點並更新至前端圖表。
目前系統穩定支援 People Count 功能,並將數據視覺化為折線圖。
本專案開發過程中,與 Gemini 協作進行代碼除錯與架構設計:
點此查看 Gemini 對話紀錄連結gen_frames() 中加入異常處理,確保 Frame 遺失時能重新連線。透過這次製作 AI 教室監視系統,我深刻理解到前端 Flask 與後端 AI 模型整合的難點,特別是即時數據的同步。學習如何閱讀官方文檔並利用 AI 工具加速開發,是這次專案最大的收穫。