AI_YOLO 教室智慧監視系統

學號:113XXXXX | 姓名:王小明

一、資訊系統環境圖 (UML)

本系統旨在建立一套低延遲、高準確度的教室安全與行為監測平台。技術架構上整合了 OpenCV 影像串流與 YOLOv8 卷積神經網絡模型,並透過 Flask 多執行緒架構實現 Web 端即時遠端監控。

graph TD classDef device fill:#eef2ff,stroke:#6366f1,stroke-width:2px; classDef server fill:#f8fafc,stroke:#475569,stroke-width:2px; Cam[Webcam 攝影機] -- "OpenCV 影像擷取" --> Server[Flask 後端伺服器] subgraph Server_Logic [系統核心控制層] direction TB YOLO[YOLOv8 推論引擎] Thread[多執行緒並行管理] Buffer[影像 JPEG 位元流緩存] end Server <--> Server_Logic Server -- "MJPEG 串流 (Port 5001)" --> Client[瀏覽器監視介面] Server -- "JSON 數據回傳" --> Dashboard[數據儀表板] class Cam,Client device; class Server,Server_Logic server;

二、程式邏輯與關鍵語法

1. 非同步影像管線

採用 Producer-Consumer 模式,確保背景辨識與前端連線互不干擾,維持系統穩定性。

# 建立 Daemon 背景執行緒 self.worker_thread = threading.Thread( target=self._capture_loop, daemon=True ) self.worker_thread.start()

2. 智慧冷卻與紀錄

對重要物件(手機、筆電)實施偵測冷卻期,大幅降低系統負載並減少冗餘日誌。

# 檢查是否超過 5 秒冷卻時間 if prev is None or now - prev >= 5: self.record_event(label)

三、系統執行截圖與成果展示

本系統經過多場域測試,以下展示了從系統啟動、物件辨識到事件觸發的完整過程(圖 001-009)。透過 YOLOv8n 輕量化模型,在低功耗設備上亦能達成穩定且精準的教室行為監控。

截圖 001
展示截圖 001
截圖 002
展示截圖 002
截圖 003
展示截圖 003
截圖 004
展示截圖 004
截圖 005
展示截圖 005
截圖 006
展示截圖 006
截圖 007
展示截圖 007
截圖 008
展示截圖 008
截圖 009
展示截圖 009

* 註:上述圖片呈現了系統在不同光影、角度及物件遮擋下的穩健辨識成果。

四、學習心得

開發本次「AI_YOLO 教室智慧監視系統」是我在 AIoT 領域一次深刻的實踐。從基礎的 OpenCV 影像串接,到進階的 YOLOv8 模型部署,我理解到「演算法」只是核心,而「系統架構」才是讓科技落地的關鍵。

在實作中,最大的挑戰在於解決 Web Server 與 AI 推論之間的資源爭奪。初次嘗試時,影像處理頻率直接卡住了網頁連線;後來透過學習 Python 的多執行緒處理與 Lock 機制,才成功實現了流暢的串流。這讓我體悟到,開發一個 AI 產品不能只追求高準確率,系統的「可用性」與「穩定性」同樣重要。

此外,設計「重要物件冷卻機制」也訓練了我如何從使用者角度思考。一味地回傳原始數據只會造成視覺疲勞,具備智慧過濾的功能才能真正發揮預警的作用。這次專案不僅強化了我的 Python 編程與網頁技術,更激發了我未來探索更多人工智慧與安全科技結合的可能性。

工具對話連結 (Gemini AI Support)