国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于深度學(xué)習(xí)的危險(xiǎn)駕駛行為檢測模型研究

2021-12-29 01:10岳宸宇周沛松李明亮
新一代信息技術(shù) 2021年22期
關(guān)鍵詞:駕駛員卷積危險(xiǎn)

岳宸宇,周沛松,2,李明亮,2

(1. 河北地質(zhì)大學(xué)信息工程學(xué)院,河北 石家莊 050031;2. 智能傳感物聯(lián)網(wǎng)技術(shù)河北省工程研究中心,河北 石家莊 050031)

0 引言

長期以來,網(wǎng)絡(luò)及交通等基礎(chǔ)設(shè)施逐漸完善,我國運(yùn)輸能力也有了飛躍的成長。然而高效便捷的交通在給人們帶來生活上便利的同時(shí),也帶來了由于各種原因引起的交通事故頻發(fā)的嚴(yán)重安全問題。據(jù)統(tǒng)計(jì),全球每年因交通事故死亡的人數(shù)達(dá)到130萬人,約2 000萬至5 000萬人受到非致命性傷害[1]。利用計(jì)算機(jī)視覺來檢測駕駛員分心狀態(tài)可以減少人工檢查費(fèi)時(shí)費(fèi)力廢財(cái)?shù)谋锥?。通過這種方式,能夠作為一種智能化的安全輔助駕駛功能,能夠及時(shí)提醒駕駛員注意開車安全,讓視頻監(jiān)控變得不再依賴人工干預(yù),而更加智能化,有著重要的實(shí)際意義。

1 基于PaddleX的危險(xiǎn)駕駛行為檢測方法

基于 PaddleX的危險(xiǎn)駕駛行為檢測方法總體設(shè)計(jì)即為該模型訓(xùn)練及測試總流程,總體設(shè)計(jì)流程圖如圖 1所示。主要針對 Kaggle 駕駛員狀態(tài)檢測數(shù)據(jù)集進(jìn)行下載解壓,讀取數(shù)據(jù),并安裝相關(guān)配置環(huán)境,模型訓(xùn)練及導(dǎo)出、評估模型性能,為方便部署將PaddleX模型轉(zhuǎn)換為PaddleHub模型,最后對模型進(jìn)行測試。

圖1 總體設(shè)計(jì)流程圖Fig.1 Overall design flow chart

其中訓(xùn)練模型所采用的主要是 MobileNet輕量型網(wǎng)絡(luò),本章主要介紹 MobileNet的提出及迭代變化,包括最新提出的MobileNetV3模型及本設(shè)計(jì)所涉及到的原理。數(shù)據(jù)中提到相對重量級(jí)網(wǎng)絡(luò)而言,輕量級(jí)網(wǎng)絡(luò)因其有參數(shù)少、計(jì)算量小、推理時(shí)間短的特點(diǎn),從而更適用于存儲(chǔ)空間和功耗受限的場景。

基于 PaddleX的危險(xiǎn)駕駛行為檢測模型主要采用的是谷歌于 2019年在 arxiv公開的論文“Searching for MobileNetV3”中提出的第三代MobileNet,百度在其全流程開發(fā)工具包PaddleX中嵌入MobileNetV3網(wǎng)絡(luò),將其應(yīng)用于目標(biāo)檢測等領(lǐng)域。MobileNetV3的網(wǎng)絡(luò)結(jié)構(gòu)如圖 2所示,文中提到的 Large模型和 Small模型的整體結(jié)構(gòu)一致,區(qū)別即是基本單元bneck的個(gè)數(shù)以及內(nèi)部參數(shù)上,主要是通道數(shù)目不同。

圖2 通道分離卷積Fig.2 channel separation convolution

MobileNet是基于 TensorFlow框架下開發(fā)的一系列基于移動(dòng)設(shè)備優(yōu)化的計(jì)算機(jī)視覺模型,其設(shè)計(jì)目的是在考慮移動(dòng)設(shè)備或嵌入式應(yīng)用程序的受限資源的情況下有效地最大化精度。它們是小型、低功耗、參數(shù)化的模型,以滿足設(shè)備的資源負(fù)擔(dān)??梢詾榉诸?、檢測和分割任務(wù)創(chuàng)建模型。寬度倍增和分辨率倍增是MobileNetV1的參數(shù),可以調(diào)整以權(quán)衡資源精度的權(quán)衡。寬度倍增可以使網(wǎng)絡(luò)變薄,而分辨率倍增可以改變輸入圖像的尺寸。這些變化可以減少每一層的內(nèi)部結(jié)構(gòu)參數(shù)。MobileNetV1引入了深度可分離卷積,有效替代了傳統(tǒng)卷積層。標(biāo)準(zhǔn)卷積的特點(diǎn)是卷積核的通道數(shù)等于輸入特征圖的通道數(shù)。MobileNetV1通過從特征生成機(jī)制中分離空間濾波,可分離卷積有效地分解了傳統(tǒng)卷積,從而減少模型所需要的參數(shù)和計(jì)算量。深度可分離卷積定義了兩個(gè)獨(dú)立的層:其一是用于空間濾波的輕量級(jí)depthwise(深度卷積)以及用于生成特征的 Point W ise Convolution(逐點(diǎn)卷積)。本質(zhì)上深度卷積即是卷積核的通道數(shù)為 1;逐點(diǎn)卷積即是 1×1的卷積核,通道數(shù)等于輸入特征圖的通道數(shù)。

相比于 MobileNetV2網(wǎng)絡(luò),MobileNetV3網(wǎng)絡(luò)優(yōu)化了網(wǎng)絡(luò)輸出部分。移除之前的瓶頸層連接,進(jìn)一步降低網(wǎng)絡(luò)參數(shù)??梢杂行Ы档?1%的推理耗時(shí),而性能幾乎沒有損失。

SE通道注意力機(jī)制,這里利用1×1卷積實(shí)現(xiàn)的 FC操作,本質(zhì)上和 FC是一樣的。這里利用hsigmoid模擬 sigmoid操作。利用 h-swish和 hsigmoid近似操作模擬swish和ReLU,公式為:

bneck模塊是該網(wǎng)絡(luò)核心模塊,也是網(wǎng)絡(luò)的基本模塊。主要實(shí)現(xiàn)了“通道可分離卷積+SE通道注意力機(jī)制+殘差連接”。

2 實(shí)驗(yàn)結(jié)果分析

(1)實(shí)驗(yàn)環(huán)境

硬件環(huán)境:CPU:4 Cores;RAM:32GB;GPU:Tesla V100;顯存:32GB;磁盤:100GB;

編譯環(huán)境:Jupyter Notebook;

環(huán)境配置:Python版本:python 3.7;pip版本:21.1;OpenCV2;

框架版本:PaddlePaddle 2.0.2。

(2)解壓數(shù)據(jù)集

數(shù)據(jù)集解壓根據(jù)環(huán)境需要修改路徑,在之后的訓(xùn)練過程中路徑必須統(tǒng)一,否則執(zhí)行程序?qū)?huì)報(bào)錯(cuò)。

!unzip/home/aistudio/data/data35503//imgs.zip-d /home/aistudio/work/imgs

!cp/home/aistudio/data/data35503/lbls.csv/home/aistudio/work/

(3)安裝PaddleX

import os

# 設(shè)置使用0號(hào)GPU卡(如無GPU,執(zhí)行此代碼后仍然會(huì)使用CPU訓(xùn)練模型)

os.environ['CUDA_VISIBLE_DEVICES'] = '0'

(4)定義數(shù)據(jù)加載器

由于分類使用ImageNet格式的數(shù)據(jù)集,用于識(shí)別任務(wù)的數(shù)據(jù)加載器的類定義使用pdx.datasets.ImageNet,其主要目的在于讀取數(shù)據(jù)。

model = pdx.cls.MobileNetV3_small_ssld(num_classes=num_classes)

model.train(num_epochs=20,train_dataset=trai n_dataset,train_batch_size=32,log_interval_steps=2 0,eval_dataset=eval_dataset,lr_decay_epochs=[1],sa ve_interval_epochs=1,learning_rate=0.01,save_dir='output/mobilenetv3')

(5)實(shí)驗(yàn)結(jié)果

模型在Jupyter Notebook運(yùn)行結(jié)果如圖3所示,測試程序中分別讀取十張圖片對應(yīng)各個(gè)標(biāo)簽的圖片。模型測試結(jié)果在最下方分別輸出,格式為:(類別ID,類別,識(shí)別成績/準(zhǔn)確度),測試結(jié)果顯示:10張不同狀態(tài)圖像測試運(yùn)行時(shí)間為:492 ms。

圖3 激活函數(shù)損失對比Fig.3 activation function loss comparison

圖4 實(shí)驗(yàn)運(yùn)行結(jié)果Fig.4 experimental results

3 結(jié)論

本設(shè)計(jì)針對駕駛員常見危險(xiǎn)駕駛習(xí)慣如駕駛汽車過程中看手機(jī)、打電話、進(jìn)食以及同車內(nèi)乘客聊天等現(xiàn)象,設(shè)計(jì)基于深度學(xué)習(xí)技術(shù)的危險(xiǎn)駕駛行為檢測模型。采用PaddlePaddle框架,利用Kaggle駕駛員狀態(tài)檢測數(shù)據(jù)集訓(xùn)練并測試基于PaddleX+OpenCV的深度學(xué)習(xí)網(wǎng)絡(luò)模型;將PaddleX深度學(xué)習(xí)網(wǎng)絡(luò)模型轉(zhuǎn)化為 PaddleHub輕量型深度學(xué)習(xí)網(wǎng)絡(luò)模型便于部署和應(yīng)用;能夠?qū)崿F(xiàn)對駕駛員normal driving(正常駕駛);texting -right(右手發(fā)短信/玩手機(jī));talking on the phone -right(右手打電話);texting - left(左手發(fā)短信/玩手機(jī));talking on the phone - left(左手打電話);operating the radio(調(diào)試車載多媒體);drinking(進(jìn)食);reaching behind(向后排拿東西);hair and makeup(整理妝容);talking to passenger(同乘客談話)等10種駕駛行為的檢測,其中有9種危險(xiǎn)駕駛行為,并且識(shí)別準(zhǔn)確率可達(dá)到98%以上。經(jīng)測試,模型可同時(shí)進(jìn)行10種狀態(tài)檢測,檢測運(yùn)行時(shí)間為492 ms,由此可推斷,該模型可進(jìn)行實(shí)時(shí)檢測駕駛員危險(xiǎn)駕駛狀態(tài)。

根據(jù)模型表現(xiàn),下一步可以將模型部署到手機(jī)端或類似于樹莓派等嵌入式終端進(jìn)行本地檢測,同時(shí)還可以將模型進(jìn)行“邊緣端+云端”部署,這樣可以實(shí)現(xiàn)更加穩(wěn)定的實(shí)時(shí)檢測,并且可以根據(jù)模型不斷迭代實(shí)現(xiàn)模型檢測的高效性和高魯棒性。

猜你喜歡
駕駛員卷積危險(xiǎn)
基于高速公路的駕駛員換道意圖識(shí)別
駕駛員安全帶識(shí)別方法綜述
基于3D-Winograd的快速卷積算法設(shè)計(jì)及FPGA實(shí)現(xiàn)
從濾波器理解卷積
喝水也會(huì)有危險(xiǎn)
基于傅里葉域卷積表示的目標(biāo)跟蹤算法
起步前環(huán)顧四周是車輛駕駛員的義務(wù)
擁擠的危險(xiǎn)(三)
一種基于卷積神經(jīng)網(wǎng)絡(luò)的性別識(shí)別方法
話“危險(xiǎn)”
临城县| 广元市| 博乐市| 泽库县| 河间市| 乡城县| 连城县| 陇南市| 石城县| 平山县| 武宁县| 拉萨市| 江山市| 花垣县| 化州市| 沙坪坝区| 穆棱市| 蓬莱市| 云阳县| 老河口市| 西平县| 寿阳县| 岐山县| 焦作市| 松溪县| 绥中县| 西安市| 临高县| 东光县| 石渠县| 分宜县| 神农架林区| 盘山县| 随州市| 凌源市| 靖安县| 织金县| 墨江| 军事| 宣威市| 勐海县|