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

        ?

        基于Hadoop的客車超載監(jiān)測系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

        2020-04-05 18:51:36石明翔彭建輝賴力上官陳媛郭磊
        計(jì)算機(jī)時(shí)代 2020年2期
        關(guān)鍵詞:分布式系統(tǒng)人臉檢測

        石明翔 彭建輝 賴力 上官陳媛 郭磊

        摘? 要: 為了解決長途客車日益嚴(yán)重的超載問題,設(shè)計(jì)實(shí)現(xiàn)了基于Hadoop的客車超載監(jiān)測系統(tǒng)。利用大數(shù)據(jù)處理、圖像識(shí)別和人臉檢測等技術(shù)對(duì)車載人員數(shù)量進(jìn)行遠(yuǎn)程核查,從而避免超載現(xiàn)象的發(fā)生。文章介紹了系統(tǒng)的設(shè)計(jì)與架構(gòu),著重闡述了如何在Hadoop集群下解決“視頻關(guān)鍵幀提取”、“Spark Streaming與Opencv結(jié)合實(shí)現(xiàn)人臉檢測”、“MapFile實(shí)現(xiàn)小文件合并”等問題,最后通過實(shí)驗(yàn)對(duì)比證明了系統(tǒng)具有良好的效率及可擴(kuò)展性。

        關(guān)鍵詞: Hadoop; Spark Streaming; 人臉檢測; 分布式系統(tǒng)

        中圖分類號(hào):TP391? ? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A? ? ?文章編號(hào):1006-8228(2020)02-50-04

        Design and realization of intelligent passenger bus overload monitoring

        system using Hadoop

        Shi Mingxiang, Peng Jianhui, Lai Li, Shangguan Chenyuan, Guo Lei

        (Beijing City University, Beijing 100075, China)

        Abstract: An intelligent public-transport people flow monitoring system using Hadoop is designed and realized so that the increasingly serious bus overloading problem during holidays and festivals can be resolved. The system can make intelligent identification and remote inspection of persons loaded in an inter-city bus so that overloading can be prevented. In this paper, the system design and architecture are introduced, the ways of video key frame extraction, face detection combining Spark Streaming with OpenCV, and small file merger with MapFile, etc. were resolved under Hadoop environments are expounded. And through experimental comparison, the system is proved to have a good efficiency and expandability.

        Key words: Hadoop; Spark Streaming; face detection; distributed system

        0 引言

        近年來,盡管中國的交通體系結(jié)構(gòu)不斷完善,但人們在中短途出行中主要還是依靠大客車。由于大部分公共大客車是私營運(yùn)行,有些車主為了自身利益需求,經(jīng)常超載行駛,這一現(xiàn)象嚴(yán)重威脅著乘客的生命安全。針對(duì)此問題,以往是交警部門投入大量人力物力在交通干道、樞紐等位置進(jìn)行設(shè)點(diǎn)檢查。但是在利益的驅(qū)動(dòng)下,車輛運(yùn)營商可能采用各種方式來躲避交警檢查,例如:讓超載乘客提前下車步行通過檢查口,之后再上車等,因此,傳統(tǒng)的檢查方法并不能杜絕超載現(xiàn)象的發(fā)生[1]。

        隨著我國信息化建設(shè)的不斷深入,一些學(xué)者嘗試?yán)眉夹g(shù)手段來解決超載問題,例如,徐斌等人提出在車門處安裝紅外傳感器來統(tǒng)計(jì)乘客數(shù)量[2];楊勁松等人開發(fā)了一種客運(yùn)汽車超載預(yù)警裝置,利用車載攝像頭配合圖像識(shí)別模塊來檢測超載的發(fā)生[3]。但是這些辦法或需要安裝昂貴易損的紅外熱感設(shè)備,或系統(tǒng)服務(wù)器為單點(diǎn)架構(gòu),無法同時(shí)處理多車的海量視頻數(shù)據(jù)。文本嘗試將開源大數(shù)據(jù)技術(shù)與客車超載檢測結(jié)合起來,利用分布式系統(tǒng)架構(gòu)Hadoop[4]、分布式實(shí)時(shí)計(jì)算框架Spark Streaming[5]以及視頻關(guān)鍵幀提取、人臉檢測等算法,設(shè)計(jì)實(shí)現(xiàn)了基于Hadoop的客車超載監(jiān)測系統(tǒng),通過對(duì)平臺(tái)中所有運(yùn)行客車的海量視頻進(jìn)行實(shí)時(shí)檢測和預(yù)警超載。

        1 系統(tǒng)架構(gòu)及工作原理

        本系統(tǒng)主要依托于Hadoop集群,利用車載攝像頭實(shí)時(shí)采集車內(nèi)視頻并利用GPS定位、圖像比對(duì)分析、人臉檢測及分布式計(jì)算等技術(shù)實(shí)現(xiàn)對(duì)客車是否存在超載現(xiàn)象進(jìn)行監(jiān)測和分析。

        系統(tǒng)主要由車載終端層、應(yīng)用服務(wù)層和數(shù)據(jù)存儲(chǔ)層構(gòu)成(圖1)。其工作原理:客車行駛過程中,車載終端層的前置攝像頭實(shí)時(shí)拍攝車內(nèi)情況,并將視頻通過4G網(wǎng)絡(luò)上傳到服務(wù)器中的應(yīng)用服務(wù)層,該層的視頻處理模塊通過擴(kuò)展后的視頻處理庫Ffmepg[6]將視頻文件切割成一幅幅圖片后存入數(shù)據(jù)存儲(chǔ)層,接下來人臉檢測模塊使用分布式計(jì)算框架Spark Streaming和開源圖片處理庫OpenCV[7]對(duì)存儲(chǔ)層中的圖片進(jìn)行人臉檢測,如果在客車過道處連續(xù)檢出多張人臉,則可判定該車超載。其工作流程如圖2所示。

        2 系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

        2.1 車載終端層

        該層由車載攝像頭和GPS定位模塊組成,攝像頭用于實(shí)時(shí)采集車輛內(nèi)部視頻信息,并通過DVR自帶的4G傳輸模塊定時(shí)將視頻文件上傳至應(yīng)用服務(wù)層的特定目錄;GPS定位模塊則負(fù)責(zé)將車輛位置實(shí)時(shí)發(fā)送至服務(wù)器,用于對(duì)車輛行駛狀況進(jìn)行監(jiān)控。

        2.2 應(yīng)用服務(wù)層

        該層為系統(tǒng)的核心功能層,主要由“車載視頻預(yù)處理”、“人臉檢測”、“GPS定位、監(jiān)控”等模塊構(gòu)成。

        2.2.1 車載視頻預(yù)處理

        視頻是一種壓縮數(shù)據(jù)文件,只有先將其轉(zhuǎn)換為圖片后才能進(jìn)行人臉檢測。車載視頻預(yù)處理模塊在運(yùn)行時(shí)會(huì)啟動(dòng)處理線程,該線程會(huì)時(shí)刻監(jiān)控存放視頻的目錄是否發(fā)生變化,如果發(fā)現(xiàn)有新視頻上傳,線程會(huì)調(diào)用視頻處理庫Ffmepg并結(jié)合關(guān)鍵幀提取算法(具體原理在下段描述)將視頻文件切割成一幅幅圖片,在進(jìn)行二值化和灰度處理后,以“車牌號(hào)+日期+時(shí)間”的方式對(duì)圖片重命名并上傳到數(shù)據(jù)存儲(chǔ)層中的HDFS中進(jìn)行保存。

        雖然FFmepg庫可以將視頻文件按照時(shí)間間隔分割成圖片,但是視頻是一種高度壓縮的數(shù)據(jù)格式,在解壓過程中得到視頻幀的數(shù)據(jù)量將成倍增長,以一個(gè)大小約100M每秒24幀的480p視頻為例,解壓完后的圖片總大小約為800M,數(shù)據(jù)量增大8倍。而由于行駛客車的車內(nèi)場景基本處于靜止?fàn)顟B(tài),通過對(duì)車內(nèi)視頻解壓后的圖片進(jìn)行對(duì)比發(fā)現(xiàn),相鄰圖片之間的差異非常小,幾乎不會(huì)影響人臉檢測的結(jié)果,因此本文使用直方圖平均法來擴(kuò)展FFmepg庫,通過計(jì)算兩視頻幀圖像之間的距離來完成關(guān)鍵幀的提取,從而大大降低圖片數(shù)據(jù)量。算法公式如下:

        [d(Im,In)=i=1j(Hm(ε)-Hn(ε))2Hn(ε)]? ? ? ⑴

        [H(ε)=-i=0j-1p(εi)logp(εi)]? ? ? ? ?⑵

        式⑵用于計(jì)算某一幀經(jīng)過量化后圖像信號(hào)的熵,其中[P(εi)]表示隨機(jī)變量[ε]的概率密度函數(shù)。式⑴會(huì)在式⑵的基礎(chǔ)上計(jì)算兩個(gè)不同視頻幀[Im],[In]之間的距離,并將該值與經(jīng)驗(yàn)閾值[η]進(jìn)行比較:如果距離大于等于[η],則將[In]作為關(guān)鍵幀提取出來;如果距離小于[η],則丟棄圖片[In],繼續(xù)抓取下一幀進(jìn)行計(jì)算,直到將視頻中所有的關(guān)鍵幀全部提取出來。

        通過實(shí)驗(yàn)對(duì)比發(fā)現(xiàn),在相同環(huán)境下經(jīng)過擴(kuò)展FFmepg庫提取出的圖片數(shù)量約為未擴(kuò)展庫提取出圖片數(shù)量的1/8,極大地降低了人臉檢測模塊需要處理的數(shù)據(jù)量。

        2.2.2 人臉檢測

        人臉檢測模塊是判斷客車是否超載的核心功能,由于長途客車每人一座,若發(fā)生超載,人員會(huì)主要集中于過道,因此本模塊對(duì)車內(nèi)圖片的過道處進(jìn)行人臉檢測,如果在連續(xù)時(shí)間段檢測出多張人臉,則可判定該客車疑似超載,并將結(jié)果反饋至系統(tǒng)前臺(tái),管理員接到通知后可對(duì)該車圖片或視頻進(jìn)行回溯查看,從而確定客車是否真實(shí)超載。

        在具體實(shí)現(xiàn)時(shí),本文通過調(diào)用開源圖片處理庫OpenCV和局部二值直方圖算法(LBPH)完成了對(duì)圖片過道區(qū)域的截取及人臉檢測。同時(shí)由于業(yè)務(wù)場景需要對(duì)大量的車內(nèi)圖片進(jìn)行實(shí)時(shí)處理,因此本文選擇分布式實(shí)時(shí)計(jì)算框架Spark Streaming來完成圖片的讀取和OpenCV的調(diào)用,相比于另一個(gè)分布式計(jì)算框架MapReduce[8],Spark Streaming作為Spark的擴(kuò)展,支持在內(nèi)存中對(duì)流式數(shù)據(jù)進(jìn)行迭代計(jì)算,其處理磁盤存儲(chǔ)數(shù)據(jù)的速度約是MapReduce的10倍,處理內(nèi)存存儲(chǔ)數(shù)據(jù)的速度可達(dá)MapReduce的百倍。在工作時(shí)Spark Streaming會(huì)將連續(xù)不斷的數(shù)據(jù)流進(jìn)行切片后放入多個(gè)批處理流程(Batches),再由Spark引擎進(jìn)行并行處理,最后將計(jì)算結(jié)果匯總輸出。實(shí)現(xiàn)流程如下。

        ⑴ 通過調(diào)用RDD API構(gòu)建一個(gè)用于業(yè)務(wù)數(shù)據(jù)處理的有向無環(huán)圖(靜態(tài)DAG模板)。

        ⑵ 構(gòu)建一個(gè)工作控制器(JobScheduler),將從HDFS中讀取的圖片流切割成數(shù)據(jù)片段(Data Stage)后再按照第1步的DAG模板創(chuàng)建出新的RDD。

        ⑶ 實(shí)現(xiàn)DAG實(shí)例以對(duì)數(shù)據(jù)片段進(jìn)行處理。

        基于以上原理,本文的人臉檢測功能在實(shí)現(xiàn)時(shí)構(gòu)建了“從HDFS讀取圖片”=>“調(diào)用Opencv進(jìn)行人臉檢測”=>“結(jié)果反饋”=>“超載預(yù)警”的Spark工作流(圖3),在通過實(shí)驗(yàn)對(duì)比后發(fā)現(xiàn)系統(tǒng)的運(yùn)行效率要遠(yuǎn)大于基于MapReduce框架構(gòu)建的程序。

        2.2.3 GPS定位、監(jiān)控

        該模塊在運(yùn)行時(shí)會(huì)啟動(dòng)車輛監(jiān)控線程,將車載終端層的GPS定位信息與百度地圖開放接口結(jié)合起來,對(duì)車輛的運(yùn)行線路、是否超速等信息進(jìn)行監(jiān)控和預(yù)警。

        2.3 數(shù)據(jù)存儲(chǔ)層

        由于系統(tǒng)在運(yùn)行時(shí)產(chǎn)生的視頻數(shù)據(jù)量巨大,因此本文選用Hadoop框架下的分布式文件系統(tǒng)HDFS作為數(shù)據(jù)存儲(chǔ)層,該層主要用于存放應(yīng)用服務(wù)層提取出來的視頻關(guān)鍵幀,這些視頻圖片的特點(diǎn)是文件?。ㄒ话銌螐?jiān)?M左右)、數(shù)量大,但Hadoop在設(shè)計(jì)之初是為了處理大文件(幾百M(fèi)或幾個(gè)G)而存在的,在處理大量小文件時(shí)反而會(huì)出現(xiàn)效率低下的問題,這是由于HDFS采用名稱節(jié)點(diǎn)(NameNode)來存放文件的元數(shù)據(jù),即系統(tǒng)中所有的文件和文件夾都會(huì)占用名稱節(jié)點(diǎn)一定的內(nèi)存空間,而且元數(shù)據(jù)的大小與文件大小沒有必然聯(lián)系,這就導(dǎo)致HDFS在存放海量小文件時(shí)會(huì)占用名稱節(jié)點(diǎn)的大量內(nèi)存空間[9]。再者,在使用Spark Streaming做分布式計(jì)算時(shí),由于生成RDD階段的任務(wù)處理對(duì)象通常是一個(gè)數(shù)據(jù)塊,如果系統(tǒng)中含有大量小文件的話,勢必會(huì)產(chǎn)生大量的batch任務(wù),也會(huì)耗費(fèi)大量的系統(tǒng)資源。

        針對(duì)Hadoop并不適合處理海量小文件的特點(diǎn),本文采用了MapFile技術(shù)將多個(gè)小文件合并成一個(gè)大文件再進(jìn)行存儲(chǔ)。MapFile是一種帶索引的序列文件(SequenceFile),而SequenceFile又是Hadoop一種自帶的二進(jìn)制文件格式,它支持以“鍵/值對(duì)”的形式在HDFS上存儲(chǔ)數(shù)據(jù)[10]。本文在設(shè)計(jì)時(shí)將各個(gè)客車的車牌號(hào)作為“鍵”,該車所對(duì)應(yīng)的各張圖片內(nèi)容作為“值”,通過“鍵/值”合并將同一輛車的所有圖片小文件壓縮合并成一個(gè)大文件后再存儲(chǔ),這樣做不但解決了小文件合并問題,而且合并后的大文件在作為Spark的DStream輸入時(shí),也可以被分割后進(jìn)行單獨(dú)處理,從而提高了HDFS的存儲(chǔ)能力和Spark Streaming的處理效率。

        3 性能測試

        為了驗(yàn)證系統(tǒng)在Hadoop集群下的運(yùn)行效率,本文采用以下實(shí)驗(yàn)環(huán)境:集群共有5個(gè)節(jié)點(diǎn),其中1個(gè)Master節(jié)點(diǎn),4個(gè)Slaver節(jié)點(diǎn),每個(gè)節(jié)點(diǎn)的硬件配置為4核CPU、8G內(nèi)存和512G硬盤。在實(shí)驗(yàn)中,集群分別啟動(dòng)2節(jié)點(diǎn),3節(jié)點(diǎn)和4節(jié)點(diǎn)對(duì)300G的視頻數(shù)據(jù)進(jìn)行處理,并將結(jié)果與Spark Standalone(單節(jié)點(diǎn)偽分布式)模式下結(jié)果進(jìn)行對(duì)比,以驗(yàn)證系統(tǒng)的加速比,實(shí)驗(yàn)結(jié)果如圖4所示。

        實(shí)驗(yàn)結(jié)果表明,在單節(jié)點(diǎn)偽分布式下系統(tǒng)所用時(shí)間為1882.5分鐘,隨著節(jié)點(diǎn)的增加,系統(tǒng)的加速比成線性增長,當(dāng)節(jié)點(diǎn)達(dá)到4個(gè)時(shí),系統(tǒng)的速度達(dá)到單節(jié)點(diǎn)的六倍。這證明集群的處理效率隨著節(jié)點(diǎn)數(shù)目的增加而增加,系統(tǒng)具有良好的可擴(kuò)展性。

        4 結(jié)論

        本文依托于Hadoop分布式集群,綜合應(yīng)用GPS定位、圖像比對(duì)分析、人臉檢測和分布式計(jì)算框架Spark等技術(shù)設(shè)計(jì)實(shí)現(xiàn)了《基于Hadoop的客車超載監(jiān)測系統(tǒng)》,用于對(duì)行駛客車上的乘客數(shù)量進(jìn)行監(jiān)測和分析,以防止超載現(xiàn)象的發(fā)生。在系統(tǒng)實(shí)現(xiàn)過程中,本文依據(jù)Hadoop和Spark Streaming的特點(diǎn)重點(diǎn)解決了在分布式環(huán)境下實(shí)現(xiàn)“視頻關(guān)鍵幀提取”、“人臉檢測”、“HDFS小文件合并”等技術(shù)難題,并通過實(shí)驗(yàn)結(jié)果的對(duì)比分析,證明了系統(tǒng)無論是在運(yùn)行效率還是可擴(kuò)展性上都有著良好的表現(xiàn)。

        參考文獻(xiàn)(References):

        [1] 馬麗娟.長途客車客流統(tǒng)計(jì)系統(tǒng)設(shè)計(jì)[D].西北工業(yè)大學(xué),2007.

        [2] 徐斌,陳曉冰.基于紅外傳感器的城市客車客流統(tǒng)計(jì)系統(tǒng)的研制[J].客車技術(shù)與研究,2010.

        [3] 楊勁松,陳曉旺,汪亮.一種客運(yùn)汽車超載預(yù)警裝置[P].中國,CN202294307U,2012-07-4.

        [4] The Hadoop DistributedFile System[EB/OL].http://hadoop.apache.org/core/docs.

        [5] Spark Streaming[EB/OL].http://spark.apache.org/docs.

        [6] FFmpeg[EB/OL]. https: //ffmpeg. org/.

        [7] OpenCV. Open Source Computer Vision Library [EB/OL]. http: //opencv. org/.

        [8] Apache Hadoop MapReduce[EB/OL].http://hadoop.apache.org/docs/mapred_tutorial.html.

        [9] 賈玉辰.Hadoop中海量小文件存取關(guān)鍵技術(shù)的設(shè)計(jì)與實(shí)現(xiàn)[D].南京郵電大學(xué),2015.

        [10] 蔡睿誠.基于HDFS的小文件處理與相關(guān)MapReduce計(jì)算模型性能的優(yōu)化與改進(jìn)[D].吉林大學(xué),2012.

        猜你喜歡
        分布式系統(tǒng)人臉檢測
        基于人臉特征定位的SNS網(wǎng)站應(yīng)用組件研究與設(shè)計(jì)
        典型應(yīng)用領(lǐng)域全球定量遙感產(chǎn)品生產(chǎn)體系
        科技資訊(2016年25期)2016-12-27 16:23:06
        以數(shù)據(jù)為中心的分布式系統(tǒng)自適應(yīng)集成方法
        基于Android平臺(tái)的人臉識(shí)別系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
        分布式系統(tǒng)中的辯證對(duì)立統(tǒng)一概念與方法
        一種基于Hadoop的海量圖片檢索策略
        基于Matlab的人臉檢測實(shí)驗(yàn)設(shè)計(jì)
        基于JSeg和顯著性檢測的服裝圖像分割方法
        亚洲人成网站免费播放| 国产av一卡二卡日韩av| 亚洲成av人片不卡无码| 男女啪啪无遮挡免费网站| 亚洲AⅤ永久无码精品AA| 风韵丰满妇啪啪区老老熟女杏吧| 日本二区在线视频观看| 欧美亚洲国产一区二区三区| 五月天精品视频在线观看| 日韩不卡av高清中文字幕 | 日产精品久久久一区二区| 国产成人综合久久精品免费| 久久亚洲aⅴ精品网站婷婷| 亚洲女同av在线观看| 国产欧美日韩一区二区三区 | 久久国产精品免费一区二区| 亚洲av高清一区二区| 初尝人妻少妇中文字幕| 欧美日韩中文国产一区| 欧美片欧美日韩国产综合片| 一区二区三区日韩精品视频| 亚洲热妇无码av在线播放 | AV成人午夜无码一区二区| 国产风骚主播视频一区二区| 欧美老肥婆牲交videos| 99久久国产综合精品麻豆| 精品人妻一区二区三区蜜桃 | 国模冰莲自慰肥美胞极品人体图| 欧美国产成人精品一区二区三区| 一区视频在线观看免费播放.| 91精品久久久老熟女91精品| www射我里面在线观看| 久久精品国产热| 国产亚洲精品免费专线视频| 国产美女精品视频线免费播放软件| 欧美高大丰满freesex| 亚洲国产综合性感三级自拍| 中国免费看的片| 99久久国产综合精品麻豆| 一区二区特别黄色大片| 久久精品人妻少妇一二三区|