亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于YOLOv5的空巢老人跌倒檢測系統(tǒng)的設(shè)計與研究

        2023-02-12 11:56:30廖義奎
        軟件工程 2023年2期
        關(guān)鍵詞:視頻流短信服務(wù)器

        徐 威,廖義奎

        (廣西民族大學(xué)電子信息學(xué)院,廣西 南寧 530006)

        1 引言(Introduction)

        我國人口老齡化趨勢逐漸明顯,如何保障老年人的身體健康和人身安全成為不可忽視的社會問題[1]。老年人身體素質(zhì)較差,一旦發(fā)生跌倒行為而未能及時就醫(yī),就很有可能會導(dǎo)致終身殘疾,甚至危及生命,給老人的家庭帶來不可磨滅巨大的負(fù)擔(dān)。隨著人工智能技術(shù)的興起,各種智能化設(shè)備層出不窮,比如自動駕駛、智能人臉識別、智能導(dǎo)航,不僅給人們帶來了極大的便利,而且大大節(jié)省了人力成本。目前,市面上主流的跌倒檢測系統(tǒng)有以下幾種:(1)基于可穿戴方式的老人跌倒預(yù)警系統(tǒng)設(shè)計[2];(2)基于視覺識別的人體跌倒檢測研究[3]。由于穿戴設(shè)備的監(jiān)測需要的設(shè)備比較多,穿戴不便,所以不易推廣。本文提出的基于計算機視覺的監(jiān)控系統(tǒng)具有較大的應(yīng)用優(yōu)勢,只需要配置監(jiān)控設(shè)備就能夠監(jiān)控記錄獨居老人的日常生活,并將實時視頻流推送到SRS流媒體服務(wù)器中,然后本地服務(wù)端拉取SRS流媒體服務(wù)器上的視頻流,通過目標(biāo)檢測算法進行識別并把結(jié)果返回給本地客戶端進行顯示。若判定為跌倒?fàn)顟B(tài),系統(tǒng)會啟動短信進程,準(zhǔn)備發(fā)送信息給監(jiān)護人。如果在設(shè)置的閾值時間內(nèi),老人自行起來或者有人攙扶起來,系統(tǒng)會重新識別老人為正常狀態(tài),若此時信息未發(fā)送,程序會終止短信進程。通過多次實驗發(fā)現(xiàn),該模型能夠準(zhǔn)確檢測獨居老人的跌倒行為,可以滿足對獨居老人行為監(jiān)測的需求。

        2 獨居老人跌倒檢測系統(tǒng)研究(Process of fall detection system for empty-nesters)

        2.1 系統(tǒng)架構(gòu)流程圖

        整個系統(tǒng)主要由四個部分組成,分別是監(jiān)控攝像頭、SRS流媒體服務(wù)器、GPU服務(wù)器、本地客服端。監(jiān)控攝像頭推送實時視頻流到SRS服務(wù)器中,SRS流媒體服務(wù)器可以查看和管理視頻流,GPU服務(wù)器則負(fù)責(zé)拉取視頻流進行識別、分析,并將識別后的結(jié)果發(fā)送給本地客戶端進行顯示。rtmp是實時消息傳輸協(xié)議,視頻流都是基于此協(xié)議進行傳輸?shù)?。具體流程如圖1所示。

        圖1 跌倒檢測系統(tǒng)架構(gòu)流程圖Fig.1 Architecture flow chart of fall detection system

        2.2 SRS流媒體服務(wù)器的搭建

        流媒體服務(wù)器是流媒體應(yīng)用的核心系統(tǒng),是流媒體應(yīng)用系統(tǒng)的基礎(chǔ),也是系統(tǒng)最重要的組成部分之一[4],而SRS流媒體服務(wù)器是由國人開發(fā)且開源的一款用于視頻直播的服務(wù)器,作為后起之秀,因其簡潔的代碼及強大的性能,備受IT工作者的青睞。SRS流媒體服務(wù)器支持多種協(xié)議的傳輸方式。開發(fā)人員可以將視頻文件或者監(jiān)控設(shè)備采集到的視頻流推送到流媒體上。流媒體接收到推流視頻后,可以通過控制臺進行處理和管理,非常高效。SRS流媒體需要在Linux環(huán)境下運行,所以需要一臺Linux服務(wù)器,通過git clone的方式拉取SRS開源代碼,本文使用的是SRS5.0版本。下載SRS開源代碼后,進入srs/trunk文件目錄下,輸入./configure &&make進行編譯,然后進行SRS的相關(guān)配置,可以參考官方文檔,里面有詳細的配置說明。最后輸入./objs/srs-conf/srs.conf啟動SRS服務(wù)器,至此SRS搭建完畢,可以通過手機ip攝像頭進行推流測試。如圖2所示為SRS客戶端推流信息。

        圖2 SRS客戶端Fig.2 SRS client

        使用手機代替監(jiān)控設(shè)備進行實時推流,推流到服務(wù)器上的視頻流可以在SRS進行預(yù)覽,如圖3所示,GPU服務(wù)器可以通過SRS提供的拉流地址對視頻流進行識別處理,然后顯示在客戶端。

        圖3 手機推流Fig.3 Mobile streaming

        2.3 GPU服務(wù)器和本地客服端的設(shè)計

        本系統(tǒng)采用本地GPU服務(wù)器運行項目代碼,本地電腦顯卡版本是Geforce GTX 950M,GPU內(nèi)存為8 GB,下載對應(yīng)的Pytorch及cuda版本。通過GPU對圖像進行并行運算,可以使運行速度大大加快,視頻流是一個實時的圖像,只有實現(xiàn)速度和準(zhǔn)確率的同時提升,才能保證系統(tǒng)正常運行。搭建好本地GPU環(huán)境后,再設(shè)計客戶端,客服端是基于PyQt5(開發(fā)可視化界面的Python庫)設(shè)計的。PyQt5作為Python眾多模塊中的一個,功能多樣,有多種圖形化界面的庫及模塊,同時它也支持在各種主流操作系統(tǒng)上運行。如圖4所示為系統(tǒng)客服端界面,左邊有跌倒檢測框及識別結(jié)果顯示框,右邊是視頻的播放界面,右下角有三個按鈕。點擊打開監(jiān)控按鈕可以顯示監(jiān)控實時畫面,關(guān)閉監(jiān)控則停止播放畫面,點擊跌倒檢測可以對監(jiān)控視頻流進行識別,并在播放界面顯示識別后的監(jiān)控畫面,識別結(jié)果欄會打印當(dāng)前時間及識別結(jié)果。

        圖4 檢測系統(tǒng)界面Fig.4 Detection system interface

        3 YOLOv5簡介(A brief introduction to YOLOv5)

        YOLO(You Only Look Once)是REDMON等[5]提出的目標(biāo)檢測算法,作為單階段(one-stage)的代表算法,目前YOLO已經(jīng)更新到了YOLOv5。相比于Two stage目標(biāo)檢測算法,YOLO是直接從網(wǎng)絡(luò)中提取特征,并預(yù)測物體的類別和具體位置,一步到位。此后,REDMON在此基礎(chǔ)上提出了YOLO9000[6]等檢測算法,使系統(tǒng)的檢測性能得到進一步提升。在YOLOv3的基礎(chǔ)上繼續(xù)改進升級,并最終得到Y(jié)OLOv4。YOLOv4網(wǎng)絡(luò)結(jié)構(gòu)主要由CSPDarknet53特征提取網(wǎng)、SPP(空間金字塔池化)模塊、PANet特征融合模塊、Yolo Head分類器組成[7-8]。YOLOv5算法使用CSPDarknet(跨階段局部網(wǎng)絡(luò))作為特征提取網(wǎng)絡(luò),從輸入圖像中提取目標(biāo)信息。如今,YOLOv5無論是在準(zhǔn)確率還是速度上,都已經(jīng)達到較好的效果。所以,本文采用YOLOv5訓(xùn)練模型,并將其應(yīng)用在跌倒檢測系統(tǒng)中。結(jié)合YOLOv5算法構(gòu)建跌倒檢測系統(tǒng),具體檢測流程如圖5所示。

        圖5 YOLOv5算法檢測流程圖Fig.5 Flow chart of YOLOv5 algorithm detection

        4 數(shù)據(jù)采集和訓(xùn)練(Collection and training of data set)

        4.1 數(shù)據(jù)集采集

        跌倒檢測技術(shù)需要大量數(shù)據(jù)集的支持,而市面上的跌倒數(shù)據(jù)集還鮮有公開的,所以本文通過自建數(shù)據(jù)集訓(xùn)練模型,數(shù)據(jù)集主要來源為通過拍攝日常生活中和采取爬蟲技術(shù)爬取網(wǎng)站上的老年人跌倒圖片,將跌倒視頻分成一幀幀的圖片,最終得到7,000 張圖片,其中跌倒圖片和正常狀態(tài)圖片的比例為1:1.8。使用標(biāo)注軟件labelImg對數(shù)據(jù)集進行標(biāo)注,圖片標(biāo)注過程如圖6所示。對7,000 張圖片進行標(biāo)注完成之后,會生成7,000 個xml文件,xml文件記錄了標(biāo)注框的類別及位置信息。

        圖6 圖片標(biāo)注Fig.6 Image annotation

        利用寫好的python腳本將7,000 個xml文件轉(zhuǎn)換成txt文件,YOLOv5訓(xùn)練所需要的文件格式類型是txt,并將數(shù)據(jù)集劃分為訓(xùn)練集和驗證集,訓(xùn)練集和驗證集的比例為1:4。具體數(shù)據(jù)集分配情況如表1所示。

        表1 數(shù)據(jù)集分配Tab.1 Data set allocation(單位:張)

        4.2 評價指標(biāo)

        本次試驗采用查全率(Recall)、精確率(Precision)、所有類別平均值(mAP)衡量模型的好壞。我們假設(shè)up是正樣本,fall是負(fù)樣本,如表2所示。在信息檢索領(lǐng)域,精確率指返回文檔中相關(guān)文檔所占的比例,查全率指返回的相關(guān)文檔占所有相關(guān)文檔的比例[9]。TP表示實際是正樣本預(yù)測是正樣本,F(xiàn)P表示實際是負(fù)樣本預(yù)測是正樣本,F(xiàn)N表示實際是正樣本預(yù)測是負(fù)樣本,TN表示實際是負(fù)樣本預(yù)測也是負(fù)樣本。精確率和查全率的具體計算如公式(1)和公式(2)所示。

        表2 精確率和查全率Tab.2 Precision and recall

        而實際訓(xùn)練過程中,精確度和查全率是成反比的。隨著精確度的提高,查全率會不斷下降,這時必須權(quán)衡兩者之間的關(guān)系,才能得到準(zhǔn)確、優(yōu)秀的網(wǎng)絡(luò)模型。

        4.3 模型的訓(xùn)練

        本次實驗在Pytorch深度學(xué)習(xí)框架下進行,訓(xùn)練過程使用本地GPU服務(wù)器[10],YOLOv5有四個模型,分別是YOLOv5s、YOLOv5m、YOLOv5l、YOLOv5x。本文采用的是YOLOv5s的模型,因為此模型速度最快,模型量級較小,準(zhǔn)確率較高。將模型訓(xùn)練的迭代次數(shù)設(shè)置為50 次,開始訓(xùn)練。經(jīng)過一天的時間,最終訓(xùn)練得到跌倒檢測模型權(quán)重文件。如圖7所示,模型訓(xùn)練到40 次以后開始慢慢收斂,其中Box、Objectness、Classification已經(jīng)降到了較低的水平。其中,Box是bounding box(邊界框)的定位損失,也就是模型預(yù)測框與真實框的差值,差值越小,說明模型預(yù)測框越準(zhǔn);Objectness為置信度損失,損失越小,說明目標(biāo)檢測準(zhǔn)確度越高;Classification為分類損失,數(shù)值越小,說明分類準(zhǔn)確度越高??偟膿p失函數(shù)就是計算三者之和,所以損失函數(shù)的變化就是Box、Objectness和Classification的變化。

        圖7 損失函數(shù)變化Fig.7 Loss function change

        如圖8所示,Precision和Recall在逐漸上升,達到了比較理想的效果,將精確率和查全率作為x軸和y軸,并作圖得到圍成的面積,即mAP,如圖8(c)所示,其中map最大值為94.23%。

        圖8 評價指標(biāo)變化圖Fig.8 Change chart of evaluation indicators

        5 跌倒檢測系統(tǒng)的實現(xiàn)(Fall detection system implementation)

        將訓(xùn)練所得的模型文件放在源代碼下的weights文件夾下,接下來進行跌倒檢測系統(tǒng)的測試與實現(xiàn)。本系統(tǒng)需要配置一個監(jiān)控設(shè)備用于拍攝實時畫面,并將監(jiān)控畫面的視頻流推流到SRS流媒體服務(wù)器中,通過客戶端可視化界面顯示流媒體中的視頻流,這時點擊跌倒檢測,開始對視頻流進行識別。由于實時監(jiān)控跌倒的情況不多,因此難以實現(xiàn)測試的效果,所有本次測試采用網(wǎng)上下載的視頻文件進行無限推流,并發(fā)送至流媒體服務(wù)器上,后續(xù)部署時可以將監(jiān)控視頻流推送到流媒體上。本地GPU服務(wù)器運行項目代碼,客戶端應(yīng)用彈出顯示主界面,打開監(jiān)控,顯示視頻。原始視頻流如圖9所示。

        圖9 原始視頻流Fig.9 Original video stream

        打開跌倒檢測系統(tǒng)可以查看識別后的視頻流,運行界面如圖10所示。從圖10中可以看到,畫面中有老人摔跤時,跌倒檢測系統(tǒng)能夠準(zhǔn)確地檢測出來,并將結(jié)果顯示在左邊欄框內(nèi),這時系統(tǒng)會根據(jù)老年人的跌倒情況進行下一步處理。

        圖10 識別后的視頻流Fig.10 Recognized video stream

        再好的模型也會出現(xiàn)誤測的情況,這就會導(dǎo)致某一幀圖片本來是up卻被識別為fall,這時系統(tǒng)一旦檢測到fall就會發(fā)送短信,導(dǎo)致信息頻繁發(fā)送。所以,本文通過設(shè)置源代碼中的閾值解決誤判的情況,只有當(dāng)連續(xù)檢測到視頻幀的圖片均為fall,并達到系統(tǒng)給定的閾值時,系統(tǒng)才會判斷有人摔跤,否則視為誤測。如圖11所示,系統(tǒng)檢測到有人真實摔跤時,便會提示在5 s內(nèi)發(fā)送短信給監(jiān)護人。

        圖11 準(zhǔn)備發(fā)送短信Fig.11 Preparation for sending SMS

        當(dāng)檢測到老人跌倒時,跌倒檢測系統(tǒng)則會開啟發(fā)短信進程,5 s后開始發(fā)送信息。如圖12所示,監(jiān)護人收到推送短信。

        圖12 監(jiān)護人收到短信Fig.12 The guardian's receiving of the text message

        有時,系統(tǒng)檢測到老人確實是真實跌倒,但并不是每次摔跤都比較嚴(yán)重或者有人立即將老人攙扶起來,如果此時短信進程開啟,但是還未發(fā)送,系統(tǒng)會終止進程,停止發(fā)送信息。除了以上實驗,本文還進行了一些其他情況下的跌倒和起立的實驗。跌倒行為包括絆倒、滑倒、暈倒、撞倒,也采集了可能發(fā)生誤判的類似跑、坐下、走路、跳舞等較為激烈的正常生活行為[11]。針對以上情況進行實驗,本文對105 個視頻文件進行測試實驗,其中每個狀態(tài)有15 個視頻,分別統(tǒng)計預(yù)測為up和fall的視頻次數(shù)及發(fā)送短信的次數(shù),實驗結(jié)果見表3。

        表3 實驗結(jié)果Tab.3 Experimental result(單位:個)

        由表3數(shù)據(jù)可知,系統(tǒng)對于跑、走路、跳舞的視頻都能正常識別為up且均未發(fā)送短信,符合預(yù)期效果。只針對坐下的狀態(tài),系統(tǒng)有時會將坐在地上的某些時刻識別為fall,所以導(dǎo)致不該發(fā)短信的時候發(fā)送短信,這也是后面需要改進的地方。對于實際摔倒的視頻文件,基本能識別出暈倒、絆倒、撞倒的情況,并且成功發(fā)送短信提醒監(jiān)護人。所以105 個視頻只有2 個視頻未達到預(yù)期效果,故短信發(fā)送成功率為98.10%。由此可見,系統(tǒng)能達到很好的預(yù)警效果。

        6 結(jié)論(Conclusion)

        基于YOLOv5的空巢老人跌倒檢測系統(tǒng)的設(shè)計與研究,通過自建數(shù)據(jù)集對模型進行訓(xùn)練得到訓(xùn)練權(quán)重文件,并對系統(tǒng)的架構(gòu)進行搭建,最終構(gòu)建空巢老人跌倒檢測系統(tǒng)。本系統(tǒng)設(shè)計的初衷是為空巢老人提供一份安全保障,讓在外打工的親人能夠踏實工作。經(jīng)過實驗測試和分析后,證明基于YOLOv5的空巢老人跌倒檢測系統(tǒng),無論是準(zhǔn)確率還是實時性都可以達到較好的效果,有進一步研究的價值。本系統(tǒng)不足之處在于,搭建SRS流媒體服務(wù)器的Linux系統(tǒng)的性能相對較差,真實監(jiān)控畫面時間和在客戶端上看到的時間存在一定延時問題。后續(xù)部署可以更換更好的Linux服務(wù)器。此外,算法的性能可能在人多的應(yīng)用場景或者人群應(yīng)用場景中的識別效果較差,對臥倒及坐下狀態(tài)會出現(xiàn)誤判的情況,有待進一步研究完善。但是,針對空巢老人獨居在家的應(yīng)用場景,系統(tǒng)對日常生活中的跌倒識別準(zhǔn)確率較高,基本能夠滿足對獨居老人行為監(jiān)測的需求。

        猜你喜歡
        視頻流短信服務(wù)器
        邊緣實時視頻流分析系統(tǒng)配置動態(tài)調(diào)整算法研究
        基于視頻流傳輸中的擁塞控制研究
        通信控制服務(wù)器(CCS)維護終端的設(shè)計與實現(xiàn)
        道歉短信
        代發(fā)短信
        得形忘意的服務(wù)器標(biāo)準(zhǔn)
        美國視頻流市場首現(xiàn)飽和征兆
        計算機網(wǎng)絡(luò)安全服務(wù)器入侵與防御
        視頻網(wǎng)格中流媒體業(yè)務(wù)的流量模型
        “八一”節(jié)日短信之一
        国产免费一区二区三区免费视频| 国产一级一厂片内射视频播放 | 亚洲福利一区二区不卡| 亚洲精品国产一二三区| 影音先锋女人av鲁色资源网久久| 欧美日韩国产综合aⅴ| 久久久国产视频久久久| 国产91精品高潮白浆喷水| 欧美人与动牲交a精品| 久久精品这里只有精品| 中文字幕一区二区三区在线看一区| 亚洲最好看的中文字幕| 久久www色情成人免费观看| 精品人妻中文av一区二区三区| 日本人妻系列一区二区| 亚洲a无码综合a国产av中文| 海角国精产品一区一区三区糖心| 97日日碰日日摸日日澡| 天堂av国产一区二区熟女人妻| 亚洲精品乱码久久久久久不卡| 色婷婷久久一区二区三区麻豆| 久久99精品久久久久九色| 日韩av一区二区不卡在线| 午夜免费视频| 麻豆精品久久久久久久99蜜桃| 亚洲av套图一区二区| 新中文字幕一区二区三区| 国产一卡2卡3卡四卡国色天香| 亚洲 无码 制服 丝袜 自拍| 亚洲女同性恋第二区av| 日本另类αv欧美另类aⅴ| 国产又爽又黄的激情精品视频| 一区二区三区国产视频在线观看| 亚洲偷自拍国综合第一页| 日本亚洲色大成网站www久久| 日本香蕉久久一区二区视频| 亚洲女同免费在线观看| 337p日本欧洲亚洲大胆精品| 在线精品国内视频秒播| 久久精品久久精品中文字幕| 丰满大爆乳波霸奶|