1. 概述
跌倒是一個重大問題,特別是對老年人和有疾病的人來說,因為它們可能導致嚴重傷害甚至死亡。墜落探測系統(tǒng)旨在迅速識別此類事件,確保及時提供援助并減少造成嚴重后果的風險。隨著人工智能和機器學習的進步,跌倒檢測變得更加準確和可靠。
在我之前的博客中,“開始使用Jetson Nano開發(fā)工具包”和“在Jetson Nano 4GB上運行YOLOv12:綜合指南”,我們探索了設置Jetson Nano和運行YOLOv12模型進行對象檢測的基礎知識。在此基礎上,我們現(xiàn)在將深入定制YOLOv8,專門用于Jetson Nano上的跌倒檢測。
YOLOv8(你只看一次,版本8)。是一種最先進的物體檢測模型,以其速度和準確性而聞名。它能夠快速準確地實時識別物體,使其成為跌倒檢測應用的理想選擇。通過定制YOLOv8,我們可以訓練模型專門識別墜落事件,提高其檢測和響應此類事件的有效性。
Jetson Nano是NVIDIA開發(fā)的一款功能強大但價格實惠的邊緣人工智能平臺,是部署基于yolov8的跌倒檢測系統(tǒng)的絕佳選擇。其緊湊的尺寸、低功耗和強大的GPU功能使其非常適合在邊緣運行復雜的人工智能模型。這種組合可以實現(xiàn)實時跌倒檢測和即時警報,確保及時援助并提高各種環(huán)境中的安全性。
在這篇博文中,我們將探索為跌倒檢測定制YOLOv8并將其部署在Jetson Nano上的過程,為構建一個有效和高效的跌倒檢測系統(tǒng)提供全面的指導。
2.準備數(shù)據(jù)集
在本教程中,我們使用Roboflow數(shù)據(jù)集,如圖所示。
下載具有所需格式的數(shù)據(jù)集,如下圖所示。
該數(shù)據(jù)集組織良好,包括以JSON格式注釋的圖像,分為三類:訓練、測試和有效。它具有三個類(站立,跌倒和跌倒),這對于訓練跌倒檢測模型至關重要。YAML文件和其他文本文件提供了配置設置和說明,以方便在機器學習工作流程中使用數(shù)據(jù)集。
3.訓練模型
要培訓YOLOv8或更高版本(因為YOLOv8是Ultralytics的產品),Ultralytics文檔提供了更多關于培訓的詳細信息。在自定義數(shù)據(jù)上定制YOLOv8,就像在跌倒檢測教程中一樣,意味著用特定的目標數(shù)據(jù)集訓練YOLOv8。
3.1. 準備數(shù)據(jù)集:
要為跌倒檢測定制YOLOv8,您需要針對您的應用程序定制一個特定的數(shù)據(jù)集。在本教程中,我們專注于一個數(shù)據(jù)集,其中包括不同狀態(tài)的人的圖像:站立,摔倒和摔倒。
確保數(shù)據(jù)集組織良好,將圖像分為訓練集、測試集和驗證集。注釋應該采用JSON格式,數(shù)據(jù)集應該使用YAML配置文件進行結構化,以便于設置。
3.2. 數(shù)據(jù)集注釋:
數(shù)據(jù)集中的每個圖像都應該有相應的注釋來指定邊界框和類標簽。對于墜落檢測,有三種類型:站立、墜落和墜落。
3.3. 配置培訓環(huán)境:
使用提供的YAML文件配置訓練參數(shù)。該文件將包括計算機上數(shù)據(jù)集的路徑、類的數(shù)量和其他必要的設置。
一個示例YAML配置可能如下所示:
3.4. 訓練模型
3.5.秋天架構
下圖說明了跌落檢測架構。它包括通過凍結某些層的權重來微調預訓練的YOLOv8模型,并將輸出通過密集層進行墜落運動分類。
3.6.訓練模型
4. 評估模型的性能
評估結果表明,平均精密度(mAP)為94%,精密度為90%,召回率為91.9%。這些圖提供了我們的模型性能的可視化,說明了它在通過訓練結果圖和混淆矩陣檢測跌倒方面的魯棒性。
5. 推理
5.1. 圖像推理
5.2. 視頻推理
6.硬件設置
下圖展示了Jetson Nano硬件設置,其中包括:
?Jetson Nano開發(fā)工具包
?顯示器與HDMI輸入能力
?鍵盤和鼠標用于用戶交互
?用于拍攝視頻的攝像機
?相機支架,用于在使用過程中穩(wěn)定相機
7. 部署在Jetson Nano上
要在Jetson Nano上部署YOLOv8,我建議您查看我之前的文章。按照相同的步驟在Jetson Nano上部署YOLOv12,但是您將使用預訓練的YOLOv8模型進行跌倒檢測,而不是使用YOLOv12。
你需要激活名為y8的Python虛擬環(huán)境,并運行位于Documents中的fall-detection-i.py腳本,按照以下步驟操作:
?使用$ source y8/bin/ Activate激活虛擬環(huán)境
?使用$ cd Documents導航到Documents目錄
?通過運行$ python fall-detection-i.py來執(zhí)行腳本
結論
總之,在Jetson Nano上定制YOLOv8為跌倒檢測等實時人工智能應用開辟了新的可能性。這次演示不僅突出了嵌入式人工智能系統(tǒng)的潛力,還展示了這些解決方案在安全和監(jiān)控方面的強大和高效。
本文編譯自hackster.io