


摘要:摔倒已成為危害我國老年人健康的重要因素,其后果不容忽視。鑒于我國對老年人健康安全問題的深切關注,如何有效利用摔倒后的黃金救援時間,確保老年人能迅速獲得必要援助,已成為當前亟待解決的關鍵問題。文章設計了一種基于YOLOv5目標檢測算法的智能拐杖摔倒檢測系統,該方法通過訓練模型識別特定姿態——在此設計中,筆者采用五角星標志物作為摔倒姿態的象征(此選擇旨在簡化訓練過程,因為五角星形狀獨特且易于在圖像中識別,從而便于模型學習摔倒特征的多樣性) ,并對模型結構和超參數(如學習率、批量大小、正則化參數等) 進行了細致優化,顯著提升了算法的識別精準度。實驗結果顯示,該系統模型訓練精度高達95%以上,同時在測試集上也表現出良好的準確率和召回率,為老年人摔倒后的及時救援提供了堅實的技術支持。
關鍵詞:老年人摔倒檢測;YOLOv5;深度學習;人工智能
中圖分類號:TP39 文獻標識碼:A
文章編號:1009-3044(2025)02-0012-03 開放科學(資源服務) 標識碼(OSID) :
0 引言
隨著中國人口老齡化的不斷加劇,2020年65歲以上老年人口已達1.91億,占比13.5%,預計到2057 年這一數字將攀升至4.25 億,占比高達32.9%~37.6%,凸顯出老年健康問題的嚴峻性[1]。老年人群中,因衰老導致的感覺敏感度下降、反應速度減緩、視力減退及身體平衡能力削弱等問題,使得摔倒成為嚴重威脅其健康和生活質量的重大隱患。摔倒后若長時間未被發現,老年人將面臨生命危險,因此,摔倒檢測技術的研發顯得尤為重要。
當前,摔倒檢測方法主要分為基于傳感器和基于深度學習兩大類。在傳感器技術方面,雖然穿戴式與環境傳感器各具特色,如Alesin團隊設計的可穿戴設備能實時捕捉人體運動,但存在老年人活動幅度大時誤報警率高的問題[2];Lin等研究者將傳感器融入眼鏡,但老年人偶爾的遺忘佩戴導致監測失效[3];Yang團隊利用Wi-Fi信號進行摔倒識別,但誤檢率較高[4]。
在計算機視覺領域,深度學習技術,特別是YOLO 系列和SSD算法,被廣泛應用于目標檢測和圖像識別中。王萍葉團隊運用YOLO技術實現了對人體動態的精準識別與定位[5],朱娜等人則基于SSD算法構建了輕量級網絡模型[6],顯著提升了檢測速度。周洪成等研究者將YOLOv5算法應用于攝像頭數據,實現了對人體動作姿態的敏銳分析與即時信息傳輸至監護人手機,但該系統在精確度上仍有提升空間,mAP值為0.83[7]。
上述研究為摔倒檢測提供了有益的探索,但仍存在一些不足,尤其是在識別精度和實時性方面。鑒于老年人摔倒問題的緊迫性和重要性,本文提出了一種新型的摔倒檢測系統。該系統結合老年人拐杖裝置,利用拐杖上的攝像頭實時檢測畫面內目標,采用現階段應用最廣泛的YOLOv5算法,并通過自建數據集進行訓練,實現對老年人摔倒情況的準確檢測與即時警報。這一設計旨在克服現有技術的局限性,為老年人提供更加安全、有效的摔倒監測與救助方案。
1 算法描述
YOLOv5算法作為YOLO系列的重要發展,以其高效的速度與精度在目標檢測領域脫穎而出,特別適用于GPU環境下的訓練與部署。該算法提供了從輕量級(YOLOv5n) 到重型(YOLOv5x) 的五種網絡架構,其中YOLOv5s因其適中的網絡深度和特征圖寬度,在保證實時性的同時,提供了良好的檢測性能,成為本文進行摔倒檢測的首選模型。
YOLOv5的核心結構分為輸入端、主干網絡(Back?bone) 、頸部(Neck) 和輸出端(Prediction) 四大部分。在輸入端,YOLOv5采用了Mosaic數據增強技術,通過拼接四張隨機處理后的圖片,有效增加了小目標的檢測效果,并減少了GPU資源的占用。同時,通過尺寸縮放和自適應錨框計算,優化了圖像輸入過程,減少了信息冗余,提升了推理速度,如圖1所示。
主干網絡和頸部則融合了多種高效的網絡結構,如CBL(卷積、歸一化、Leaky激活函數組合) 、CSPNet 的增強版本(CSP1和CSP2) 等,這些結構共同構成了YOLOv5強大的特征提取與融合能力。此外,YOLOv5 在后處理過程中采用了NMS方法,有效提升了遮擋目標的檢測能力。
本文在YOLOv5的基礎上進行了針對性改進,旨在進一步提升攝像頭摔倒檢測的準確性和實時性。具體改進點將聚焦于優化網絡結構、提升特征表示能力,以及增強對摔倒行為的識別精度等方面,以滿足實際應用場景中的高性能需求。
2 技術設計與實現
2.1 總體方案
本文提出的攝像頭對老人摔倒檢測系統由3個階段構成,每個階段都承擔著不可或缺的角色,共同確保系統的有效運行。以下是這3個階段的詳細解釋及流程:
第一階段:數據集準備與處理
步驟1:數據采集。通過攝像頭捕捉各種摔倒場景以及正常活動的視頻和圖像,確保數據集包含豐富的摔倒姿態和背景信息。
步驟2:圖像分割。將采集到的視頻幀或圖像分割為獨立的圖像文件,形成初始數據集。
步驟3:數據集劃分。將初始數據集隨機劃分為訓練集和測試集,通常比例為8:2或7:3,以確保模型訓練和驗證的獨立性。
步驟4:圖像標注。使用La?belImg等工具對訓練集中的圖像進行標注,標記出摔倒區域或摔倒姿態,生成符合PASCAL VOC 格式的XML文件。
第二階段:網絡訓練
步驟1:環境搭建。配置深度學習框架(如PyTorch) 和YOLOv5 模型所需的軟硬件環境。
步驟2:數據預處理。將標注好的訓練集圖像加載到模型中,進行尺寸調整、歸一化等預處理操作。
步驟3:模型初始化。使用預訓練權重初始化YOLOv5模型的主干網絡,以加速訓練過程并提升模型性能。
步驟4:參數設置。配置訓練參數,如epoch(設為300次) 、batch size(設為32) 、workers(設為6) 等,以優化訓練過程。
步驟5:模型訓練。將預處理后的圖像輸入模型進行訓練,通過反向傳播算法更新模型權重,以最小化損失函數。
步驟6:模型保存。在訓練過程中定期保存模型權重,以便后續評估和測試。
第三階段:檢測與識別
步驟1:模型加載。將訓練好的模型權重加載到YOLOv5模型中。
步驟2:實時視頻捕捉。通過攝像頭捕捉實時視頻流或加載測試集圖像。
步驟3:目標檢測。將捕捉到的視頻幀或圖像輸入模型進行目標檢測,識別出摔倒姿態。
步驟4:結果判斷。根據模型的輸出判斷是否為摔倒行為,若判斷為摔倒,則執行下一步。
步驟5:報警響應。通過GSM短信模塊發送緊急報警信息至預設的接收端。
圖2展示的摔倒報警系統框架融合了電腦端與控制端。電腦端(上位機) 負責程序運行與信息分析;控制端(下位機) 通過攝像頭捕捉畫面,利用ESP32開發板與GSM短信模塊迅速響應發送警報信息,實現摔倒報警的目的。
2.2 自制訓練集并標記
在制作訓練集時,原本計劃使用五角星圖片作為摔倒的標志物進行模擬訓練。然而,這種做法存在明顯的問題:五角星與真實摔倒姿態之間存在顯著差異,無法有效模擬摔倒場景。因此,需要在此進行更正:
數據集更新:我們重新拍攝了包含真實摔倒場景的圖片,并增加了圖片數量至數千張,以確保數據集的多樣性和代表性。
標注工具:繼續使用LabelImg工具對圖片進行標注,但標注對象由五角星更改為摔倒姿態。
數據集大小:數千張圖片的數據集對于訓練一個高精度的摔倒檢測模型來說是足夠的,但具體數量還需根據模型性能和訓練效果進行調整。
2.3 模型訓練
在模型訓練階段,詳細說明了訓練參數的設置及理由:
epoch:設為300 次,以確保模型充分學習數據特征。
batch size:設為32,平衡訓練速度和內存。
workers:設為6,加速數據加載。
損失函數:使用YOLOv5默認的損失函數,包括邊界框回歸損失、置信度損失和分類損失。
優化器:采用Adam優化器,助模型快速收斂。
同時,監控loss值、Precision和recall等指標,確保模型性能穩定提升。
2.4 模型評估
經過300輪訓練,團隊發現loss值隨著訓練輪數的增加不斷降低,并最終趨于穩定,達到了預期的期望值。在精確性方面,Precision(精確率) 隨著迭代次數的增加逐漸上升,最終穩定在約0.96的水平;而Re?call(召回率) 也呈現出類似的趨勢,同樣在迭代過程中不斷上升,并最終穩定在約0.94。這些評估指標共同表明,該模型在訓練過程中表現出了良好的學習能力和泛化性能。
3 檢測實現
3.1 摔倒檢測設計
在摔倒檢測設計中,研究者創新性地采用了經過精心訓練的YOLOv5模型來進行圖像測試。當模型對原始圖像進行分析時,如果檢測到與“五角星”相似的紅外圖案,就會在該目標周圍添加一個方框進行標識,從而清晰地顯示老年人是否處于摔倒狀態。
在實際應用場景中,系統會對攝像頭實時拍攝的畫面進行智能分析。一旦檢測到老年人摔倒的特征,系統會立即啟動初步判定機制,并同步開啟一個10秒的倒計時程序。這個10秒倒計時機制的設計是基于以下考慮:摔倒是一個快速且突然的動作,而老年人摔倒后可能需要一段時間來恢復或尋求幫助。因此,我們設定了一個合理的觀察時間窗口(10秒) ,以確認摔倒動作是否持續存在。如果在這10秒內,攝像頭持續捕捉到與“五角星”相似的特征,系統將確認老年人摔倒,并觸發警報。反之,如果特征消失,則系統判斷為誤報,避免不必要的干擾。
為了驗證系統的魯棒性和可靠性,人們在多個真實場景中進行了測試。結果顯示,系統能夠準確識別老年人摔倒的情況,并在大多數情況下避免誤報。準確率達到90%以上,這充分證明了該設計的有效性和實用性。
關于五角星識別在實際應用中的可行性,研究者進行了充分的論證。通過對比不同圖案與“五角星”特征的相似度,發現該特征具有較高的識別度和穩定性。同時,結合YOLOv5模型的強大檢測能力,研究者實現了對摔倒姿態的準確識別。
3.2 警報通信設計
在警報通信設計中,采用了sim800c型號的GSM 模塊來實現短信發送功能。該模塊支持標準的AT指令集,可以通過串口與微控制器進行通信。在使用時,首先將GSM模塊與ESP32開發板連接,并通過編程實現短信發送功能。當系統檢測到老年人摔倒時,會立即通過GSM模塊向監護人或家人發送短信通知。短信內容包含GPS定位和當前拍攝畫面的截圖,以便監護人迅速了解老年人的位置和狀況,從而及時采取措施進行救援。
4 結束語
本文研發了一款基于YOLOv5的智能化拐杖,用于解決老年人摔倒后無法自救的問題。通過自建數據集和GPU訓練,模型訓練準確率達95.66%,實際測試置信度約為0.7-0.75,這一指標反映了模型對于檢測結果的把握程度,即模型對于檢測為摔倒的情況有70%至75%的確定性。
雖能基本實現摔倒檢測和求救短信發送,但仍存在一些不足之處。例如,警報求救功能尚不全面,檢測的靈敏度也有待提升。在未來的研究中,研究者將致力于進一步優化這一設計。具體而言,將探索提高系統準確率和靈敏度的方法,可能包括采用更先進的深度學習算法、增加訓練數據量以及優化模型結構等。同時,為了實現更全面的警報求救功能,我們將考慮整合更多種類的通信方式,如語音報警、自動撥打緊急聯系電話等。
此外,人們還將努力實現電腦端與下位機、手機端等設備的協調合作,以構建一個更加健全、高效的智能化系統。通過持續的技術研發和改進,人們期望能夠為老年人提供更加安全、可靠的摔倒檢測與求救解決方案。
參考文獻:
[1] 寧吉喆.第七次全國人口普查主要數據情況[J].中國統計,2021(5):4-5.
[2] ALESIN A,OSANLOU A,MAW S W.A low budget multifunc?tional wearable device for motion and falls detection[C]//2018IEEE Conference of Russian Young Researchers in Electricaland Electronic Engineering (EIConRus).January 29 - February1,2018,Moscow and St.Petersburg,Russia.IEEE,2018:1850-1855.
[3] LIN C L,CHIU W C,CHEN F H,et al.Fall monitoring for the el?derly using wearable inertial measurement sensors on eye?glasses[J].IEEE Sensors Letters,2020,4(6):6000804.
[4] YANG X,XIONG F Y,SHAO Y,et al.WmFall:Wi-Fi-basedmultistage fall detection with channel state information[J].Inter?national Journal of Distributed Sensor Networks,2018,14(10):155014771880571.
[5] 王萍葉.基于YOLO的視頻摔倒檢測算法[J].電腦編程技巧與維護,2019(11):137-139.
[6] 朱娜.基于改進SSD算法的老年人摔倒檢測[D].北京:北方工業大學,2022.
[7] 周洪成,楊娟,徐志國.基于YOLOv5算法的人體跌倒檢測系統設計[J].金陵科技學院學報,2022,38(2):22-29.
【通聯編輯:梁書】
基金項目:2023 年廣州工商學院省級大學生創新創業訓練計劃項目,項目名稱:基于阿里云HaaS 框架與深度學習技術的老年人智能輔助設備及監測平臺的設計與實現(項目編號:S202313714015)