[發明專利]一種基于Hadoop和監控視頻流的車輛軌跡統計方法有效
| 申請號: | 201710464743.8 | 申請日: | 2017-06-19 |
| 公開(公告)號: | CN107316016B | 公開(公告)日: | 2020-06-23 |
| 發明(設計)人: | 陳名松;周奕捷;王偉光;董適;周信玲;李孜涵 | 申請(專利權)人: | 桂林電子科技大學 |
| 主分類號: | G06K9/00 | 分類號: | G06K9/00;G06K9/32;G06K9/62;G06F16/182;G06F16/13;G06F16/71;G06F16/78 |
| 代理公司: | 桂林市華杰專利商標事務所有限責任公司 45112 | 代理人: | 周雯 |
| 地址: | 541004 廣*** | 國省代碼: | 廣西;45 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 hadoop 監控 視頻 車輛 軌跡 統計 方法 | ||
1.一種基于Hadoop和監控視頻流的車輛軌跡統計方法,其特征在于,具體包括如下步驟:
1)將各場景下的監控視頻上傳到HDFS,執行Hadoop任務;
2)Hadoop視頻數據處理接口從HDFS上讀取視頻數據初始化Xuggler解碼庫,Xuggler解碼庫解析視頻數據,得到一系列key,value交由Map處理,其中key為視頻名_幀號,value為視頻幀元數據;
3)Map函數對傳入的key,value進行分析,具體是通過Jave Native Interface即JNI與動態鏈接庫交互實現對車輛檢測定位和車牌識別,通過車輛檢測算法從視頻幀圖像中定位到車輛區域,通過車牌識別算法對定位到的車輛區域進行車牌識別,未定位到車輛區域直接執行下一次key,value,將識別到車牌的幀圖像以視頻名_車牌號_時間戳形式進行命名寫回到HDFS進行存儲,Map輸出key1,value1進入Combiner階段,其中key1為車牌號,value1為封裝了初始化統計次數1、時間戳以及視頻名的容器對象;
4)Combiner接收單前視頻Split中的Map輸出,以相同的key1歸并Map輸出結果為key1,listvalue1形式進行處理,引入時間戳和閾值判別來有效避免相同車輛在連續幀中出現帶來的統計偏差,如果滿足效驗條件,行車頻次加1,反之,不對行車頻次進行累加,Combiner輸出key1,value2進入Partition階段,其中key1為車牌號,value2為封裝了累計統計次數、視頻名的容器對象,Partition階段根據value2中的視頻名進行分區,每個分區對應一個Reduce處理;
5)Reduce接收Partition分配的多個Combiner結果,以相同的key1歸并Combiner分析結果為key1,listvalue2形式進行處理,對listvalue2中存在相同視頻名的value2中的統計次數進行累加并匯總,對不同視頻名的value2中的統計次數進行匯總,最終生成新的key1,value3,其中key1為車牌號,value3為包含了該車牌號在不同視頻名下分別出現次數,匯總結果以文本形式寫入到HDFS;
經過上述步驟,完成車輛軌跡統計。
2.根據權利要求1所述的一種基于Hadoop和監控視頻流的車輛軌跡統計方法,其特征在于,步驟2中,所述的Hadoop視頻數據處理接口,是通過結合開源庫Xuggler重寫Hadoop的記錄讀取器和Hadoop支持的數據輸入輸出類型格式,使MapReduce支持對HDFS中的視頻類型格式數據的并行處理,具體方法為:
1)重寫Hadoop的記錄讀取器,設計實現RecordReader類的VideoRecordReader類,重寫initialize()方法從HDFS上獲取視頻文件初始化Xuggler解碼庫,Xuggler解碼庫將視頻文件解碼為一系列幀圖像,將幀圖像作為value,視頻名_幀號作為key,重寫getCurrentKey()方法、getCurrentValue()方法、nextKeyValue()方法將一系列幀圖像以key:視頻名_幀號,value:幀元數據形式交由Map處理,value為實現了Writable接口的ImageWritable類型,并需要重寫Writable接口中的序列化方法和反序列化方法;
2)重寫Hadoop輸入輸出格式,設計VideoInputFormat類和ResultOutputFormat類,VideoInputFormat類繼承自FileInputFormat類,VideoInputFormat類中重寫creatRecordReader()方法獲支持讀取視頻數據為一系列key,value的VideoRecordReader類對象,重寫isSplitable()方法,返回flase,不對Block進行邏輯切分,根據默認128M大小分配Mapper數量,ResultOutputFormat類繼承自FileOutputFormat類,并自定義ResultRecordWrite類,重寫write()方法,支持將Reduce執行結果中的車牌號、視頻名、累計統計次數以Text形式寫出到HDFS,支持將Map執行結果中識別到車牌的視頻幀圖像以Image形式寫出到HDFS。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于桂林電子科技大學,未經桂林電子科技大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710464743.8/1.html,轉載請聲明來源鉆瓜專利網。





