《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 移動監控系統中設備端視頻軟件的設計與實現
移動監控系統中設備端視頻軟件的設計與實現
2015年微型機與應用第18期
楊云龍1,孟利民2
(1.浙江工業大學 信息工程學院,浙江 杭州 310023; 2.浙江省通信網技術應用研究重點實驗室,浙江 杭州 310023)
摘要: 提出了一種移動視頻監控系統中視頻數據處理軟件的設計方案。移動監控系統主要由前端移動監控設備、3G網絡、服務器、手機客戶端組成。給出了系統總體原理圖,主要分析了移動監控系統中視頻數據的采集、去抖動處理、壓縮以及備份等設備端軟件設計部分。在去抖動的過程中使用了改進的灰度投影法,解決了傳統投影法中易受到移動前景干擾的問題。通過實際測試驗證了方案的可行性。
Abstract:
Key words :

  摘  要: 提出了一種移動視頻監控系統中視頻數據處理軟件的設計方案。移動監控系統主要由前端移動監控設備、3G網絡、服務器、手機客戶端組成。給出了系統總體原理圖,主要分析了移動監控系統中視頻數據的采集、去抖動處理、壓縮以及備份等設備端軟件設計部分。在去抖動的過程中使用了改進的灰度投影法,解決了傳統投影法中易受到移動前景干擾的問題。通過實際測試驗證了方案的可行性。

  關鍵詞: 移動監控系統;3G網絡;視頻處理;去抖動處理;灰度投影法

0 引言

  隨著計算機網絡技術的發展和應用,安全防范產品的逐漸豐富,“安防大眾化”已是大勢所趨,安全是一種需求,安全對于人們來說已是必不可少的商品[1]。視頻監控系統在安防行業中具有重要地位。視頻監控系統的發展經歷了由模擬到數字、由錄像人工檢查到狀態智能分析、由實地操作到遠程遙控的過程[2]。移動通信系統已經開始更新換代,中國3家不同運營商旗下基于不同標準的3G網絡也全面步入商用時代,同時隨著LTE(Long Term Evolution)技術的發展和4G標準化的來臨,基于新型系統的基礎網絡建設必將保持高速發展[3]。無線網絡的發展極大地促進了移動監控系統的發展。移動監控系統不僅能夠擴大監控范圍,也能節約成本,甚至還能減少許多不必要的損失[4]。

  移動監控系統的前端設備在采集視頻數據的過程中難免會產生抖動,所以電子穩像技術對移動監控系統至關重要。目前的電子穩像技術是利用電子設備和數字圖像處理技術相結合的方法,直接從像面上通過檢測被比較圖像與參考幀圖像的運動矢量,并對被比較圖像進行運動補償,從而獲得清晰穩定的視頻圖像序列[5]。視頻穩像中最重要的一步是運動估計,灰度投影法是一種比較常見的運動估計方法,它是利用圖像的整體信息進行運動估計,主要是利用相鄰兩幀圖像重合區域內圖像信息分布相同的原理[6]。但是灰度投影法容易受到前景運動物體的影響。本文對灰度投影法進行了改進,有效地減緩了前景運動物體對運動估計的影響。

1 系統總體結構

  移動監控系統主要由前端移動監控設備、3G無線網絡、服務器以及手機客戶端組成。系統總體結構圖如圖1所示。

001.jpg

  前端移動監控設備采集視頻數據并經過壓縮后發送給服務器,供服務器管理人員分析。服務器按客戶端的要求將視頻壓縮數據發送給客戶端查看。

2 前端設備視頻軟件設計

  前端設備視頻軟件主要負責對視頻數據的采集、去抖動、編碼以及存儲等工作。這些工作主要是由encode進程完成。encode進程包含了Capture線程、Video線程和Write線程3個線程。

  主線程首先創建4個同步對象,分別為hRendezvousCap、hRendezvousWriter、hRendezvousInit和hRendezvous Cleanup,然后創建Capture線程,Capture線程一旦創建完成,主線程就會馬上調用等待函數Rendezvous_meet(hRendezvousCap)函數進入等待狀態。Capture線程的流程如圖2所示。

002.jpg

  Capture線程首先通過調用Capture_detectVideoStd()函數獲得視頻數據類型。然后再通過調用VideoStd_getResolution()函數得到將要采集的視頻數據的分辨率,并將該分辨率傳給主線程。再調用等待函數Rendezvous_meet(hRendezvousCap),這次調用等待函數時Capture線程并不會進入等待狀態而是將等待中的主線程喚醒。然后Capture線程會繼續調用Capture_create()函數創建視頻數據的采集對象。調用Resize_create()函數創建視頻數據的放縮對象。調用Framecopy_create()函數創建視頻數據的裁剪對象。Capture線程在完成了這些準備工作后就會再次調用等待函數Rendezvous_meet(hRendezvousInit)等待其他線程到達預定的等待點。

  主線程被Capture線程喚醒后會接著創建Video線程,并將視頻數據的分辨率參數傳給Video線程,然后調用Rendezvous_meet(hRendezvousWriter)等待函數進入等待狀態。Video線程的流程圖如圖3所示。

003.jpg

  Video線程首先通過調用Engine_open()函數開啟編碼引擎。然后將視頻分辨率參數傳給Venc1_create()函數來創建兩個編碼對象hVe1、hVe2。hVe1與hVe2分別用來將352×288 YUV420SP與720×576 YUV420SP兩種格式的視頻數據編碼成H.264格式。然后Video線程會調用Venc1_getOutBufSize()函數獲得編碼器輸出數據參數,并傳給主線程。再調用等待函數Rendezvous_meet(hRendezvousWriter)喚醒主線程。當Video線程完成上述準備工作后就會調用等待函數Rendezvous_meet(hRendezvousInit)等待其他線程到達預定的等待點。

  被喚醒的主線程還會繼續創建Write線程,并將Video線程的兩個編碼器的輸出參數outBufSize1、outBufSize2傳給Write線程。Write線程的流程圖如圖4所示。

004.jpg

  Write線程首先將參數outBufSize1與outBufSize2傳給BufTab_create()函數申請兩組緩存區。這兩組緩存區用于接收Video線程傳來的兩路H.264數據。然后Write線程會調用函數createShm()創建一塊共享內存。這塊共享內存用于存儲由352x288 YUV420SP格式數據編碼而來的H.264數據,供數據發送程序讀取。在完成了上述準備工作后,Write線程會調用等待函數Rendezvous_meet(hRendezvousInit)進入等待狀態。

  當等待函數Rendezvous_meet(hRendezvousInit)被第三次調用時,第三次調用等待函數的線程并不會進入等待狀態,而是喚醒前兩個正在等待的線程。

  當所有線程都被喚醒后就會同步進入主循環。Capture線程負責采集視頻數據和視頻穩像,Video線程負責視頻數據編碼,Write線程負責數據存盤和將數據寫入共享內存。

  Capture線程首先采集一幀736x576 UYVY格式的數據,然后對視頻數據進行電子穩像處理。得到穩定的視頻數據后,通過調用Resize()函數改變穩像后的視頻數據的分辨率和數據格式,并輸出兩路數據,一路數據為352×288 YUV420SP格式,另一路數據為736×576 YUV420SP格式。然后將352×288 YUV420SP格式的視頻數直接傳給Video線程。將736×576 YUV420SP格式的視頻先裁剪成720×576 YUV420SP格式后再傳給Video線程。接著Capture線程判斷是否繼續采集下一幀視頻數據,若是,則重復主循環中的內容;若不是,則向其他線程發送結束信號并調用等待函數Rendezvous_meet(hRendezvousCleanup),等待其他線程一起進行清理工作。

  Video線程在進入主循環后首先會將自己創建的兩組空buffer傳給Capture線程,用于Capture線程向Video線程傳輸數據。然后接收Capture線程傳來的兩路視頻數據,并分別用編碼對象hVe1與hVe2將這兩路視頻數據編碼成H.264格式。然后接收Write線程傳過來的兩塊buffer,并將兩路H.264格式數據分別存儲于這兩塊buffer中,再通過FIFO_put()函數傳給Write線程。然后Video線程判斷是否繼續編碼工作,若是,則對下一幀數據重復主循環中的編碼工作;若不是,則向其他線程發送結束信號并調用等待函數Rendezvous_meet(hRendezvousCleanup),等待其他線程一起進行清理工作。

  Write線程進入主循環后首先將兩塊空buffer傳給Video線程,用于Video線程向Write線程傳輸數據。然后接收Video線程傳來的兩路H.264數據,第一路數據由352×288 YUV420SP格式編碼而來,將該H.264數據寫到共享內存中供發送程序發送給服務器;第二路數據由720×576 YUV420SP格式編碼而來,將該數據寫到SD卡中用于備份,當前幀處理結束。然后Write線程判斷是否繼續處理下幀數據,若是,則重復主循環中的內容;若不是,則向其他線程發送結束信號并調用等待函數Rendezvous_meet(hRendezvousCleanup),等待其他線程一起進行清理工作。

  當等待函數Rendezvous_meet(hRendezvousCleanup)被第三次調用時,調用它的線程并不會進入等待狀態,而是喚醒其他兩條正在等待的線程。然后三條線程同時進行各自的清理工作,釋放各自申請的資源,然后結束各自的線程,程序結束。

3 電子穩像處理

  Capture線程采集的視頻數據為736×576 UYVY格式,由于移動監控設備在采集視頻數據時難免會產生抖動,因此必須對采集的視頻數據進行電子穩像處理。首先對當前幀視頻圖像進行直方圖均衡化處理,以提高圖像的對比度。然后對圖像進行多分塊灰度投影。將一幀736×576 UYVY的視頻數據按圖5所示的方式劃分成24個100×110的宏塊,宏塊與視頻數據邊緣的最近距離為68個像素點。

005.jpg

  將每個宏塊在水平方向和垂直方向上分別進行灰度投影,并通過互相關運算求出其運動參數。下式為進行行、列互相關運算的計算公式:

  3R2P~}DW)6$21U6%NP]JXOL.png

  其中,Colkn(j)為第k幀圖像第n號宏塊第j列的灰度投影值,NC是宏塊列的長度。設Wmin為C(w)最小值時w的值,則第k幀圖像的第n號宏塊相對于參考幀圖像的第n號宏塊在垂直方向的位移矢量為:

  a=-Wmin(2)

  得到所有宏塊的運動參數后求出其平均運動參數。然后去除與平均運動參數相差最大的前30%的宏塊的運動參數,取剩下70%宏塊的運動參數的平均值為當前幀的運動參數。然后用均值濾波器去掉運動參數中的高頻抖動部分,得到低頻的攝像機正常掃描運動參數。然后通過總運動參數和正常掃描的運動參數得到視頻數據的抖動參數。最后進行運動補償處理,本文通過對穩定的前一幀補償得到下一穩定幀,為了避免錯誤向后續幀的傳播,選取每15幀利用一次原始幀做補償。運動補償以后就得到了穩定的視頻數據。

4 系統測試

  服務器端通過3G網絡接收前端移動設備發送的視頻壓縮數據,并將其解碼和顯示。視頻圖像如圖6所示。

006.jpg

  其中圖6(a)是移動監控設備對采集的視頻數據經過電子穩像處理過的連續3幀視頻數據,圖6(b)是與圖(a)相對應的未經過設備端穩像處理的視頻數據。由圖6可以看出電子穩像操作解決了拍攝視頻時的抖動問題。將前端移動監控設備在不同的地方進行測試,系統都可以穩定運行。本系統可以廣泛地應用于一些無法鋪設線路的偏遠地區,解決了傳統監控系統中難以鋪設線路的問題。

參考文獻

  [1] 何岳.移動監控系統研究[J].信息通信,2012(5):126-127.

  [2] 姚楠,余勁.基于云的電力監控視頻故障管理系統設計[J].電子技術應用,2014,40(6):140-142.

  [3] 楊陽,胡永輝.移動監控終端無線傳輸系統的設計與實現[J].時間頻率學報,2011,34(1):27-32.

  [4] 梁振濤,樊澤明,任永亮,等.基于單片機的移動監控系統硬件設計[J].微型機與應用,2014,33(2):25-30.

  [5] 葛虎龍,李安平.高清抖動視頻的實時穩像算法[J].信息通信,2013(6):41-43.

  [6] 黃九林.基于塊匹配和直線特征的視頻穩像方法研究[D].大連:大連理工大學,2014.


此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
久久爱www| 亚洲一区免费视频| 日韩一区二区精品| 今天的高清视频免费播放成人| 国产精品www.| 欧美日韩不卡合集视频| 欧美ab在线视频| 久久偷窥视频| 久久久精品日韩欧美| 欧美呦呦网站| 欧美一级一区| 性色av一区二区三区| 亚洲欧美日韩精品久久久久| 中文精品视频一区二区在线观看| 99精品久久久| 99视频超级精品| 一区二区欧美激情| 亚洲一区二区日本| 亚洲欧美日韩网| 午夜一区不卡| 久久不射网站| 久久久久在线观看| 久热爱精品视频线路一| 免费日韩精品中文字幕视频在线| 免费中文日韩| 欧美紧缚bdsm在线视频| 欧美精品一区在线发布| 欧美日韩国产亚洲一区| 欧美午夜片欧美片在线观看| 国产精品久久久久毛片大屁完整版 | 午夜精品偷拍| 亚洲第一主播视频| 亚洲日本久久| 亚洲午夜激情在线| 先锋影音国产一区| 久久久久亚洲综合| 欧美精品电影| 国产精品国产三级国产aⅴ浪潮 | 欧美精品一区视频| 欧美午夜视频一区二区| 国产精品亚洲片夜色在线| 国产一区二区精品丝袜| 亚洲盗摄视频| 99re亚洲国产精品| 午夜欧美不卡精品aaaaa| 亚洲日本成人网| 中文在线资源观看网站视频免费不卡 | 亚洲国产欧美一区二区三区丁香婷| 亚洲精品乱码久久久久久按摩观| 亚洲视频在线观看| 亚洲大胆av| 亚洲一区二区在线视频| 久久一区二区三区超碰国产精品| 欧美人成免费网站| 国产精品综合久久久| 亚洲第一福利视频| 亚洲一区二区在| 亚洲青色在线| 欧美亚洲日本网站| 欧美福利一区二区三区| 国产精品自拍一区| 亚洲精品久久久久久久久久久久| 亚洲永久免费观看| 亚洲精品中文在线| 欧美自拍丝袜亚洲| 欧美连裤袜在线视频| 国产色产综合色产在线视频| 亚洲精选视频在线| 久久不射2019中文字幕| 9色精品在线| 久久一区二区精品| 国产精品一二三四区| 亚洲精品一区二区三区福利| 午夜视频一区| 中文国产成人精品| 免费观看亚洲视频大全| 国产乱码精品1区2区3区| 亚洲精品男同| 亚洲国产精品久久久久婷婷老年| 亚洲免费在线观看| 欧美激情精品久久久久久久变态 | 夜久久久久久| 亚洲精品国产精品久久清纯直播| 久久成人精品视频| 欧美视频第二页| 亚洲电影免费在线 | 国产精品草草| 亚洲人被黑人高潮完整版| 午夜在线精品偷拍| 亚洲主播在线播放| 欧美激情视频一区二区三区免费| 国户精品久久久久久久久久久不卡| 在线亚洲一区观看| 日韩视频在线观看免费| 久久综合九色综合网站| 国产精品视频导航| 一区二区三区日韩精品视频| 亚洲美女视频网| 美日韩精品免费| 国内自拍一区| 香蕉久久a毛片| 午夜免费久久久久| 国产精品久久久久久亚洲调教| 亚洲精品裸体| 99国产精品视频免费观看| 欧美大片在线观看| 一区二区三区在线视频播放| 欧美在线播放一区| 久久精品国产欧美亚洲人人爽| 国产精品久久久久一区二区三区| 日韩一级黄色av| 一区二区三区日韩精品视频| 欧美精彩视频一区二区三区| 亚洲日韩欧美视频| 亚洲美女电影在线| 欧美电影资源| 亚洲欧洲视频在线| 日韩亚洲欧美一区二区三区| 欧美成人中文| 亚洲国产日韩一区二区| 亚洲精品免费在线观看| 欧美国产视频日韩| 亚洲乱码国产乱码精品精可以看| 亚洲免费福利视频| 欧美日韩三区四区| 一本色道久久加勒比88综合 | 亚洲欧美日韩第一区| 国产精品拍天天在线| 亚洲欧美一区二区视频| 欧美在线观看一区二区三区| 国产一区二区精品丝袜| 亚洲第一区在线观看| 久久综合伊人77777麻豆| …久久精品99久久香蕉国产| 亚洲人久久久| 欧美色图一区二区三区| 亚洲一级电影| 久久成人免费网| 狠狠久久亚洲欧美专区| 亚洲国产免费| 欧美人与性动交cc0o| 一区二区三区.www| 性欧美暴力猛交69hd| 国产一级精品aaaaa看| 亚洲国产精品免费| 欧美另类人妖| 亚洲一区二区在线免费观看视频| 欧美一区二区视频观看视频| 韩国亚洲精品| 99精品视频免费全部在线| 国产精品久久久久久久久久尿| 亚洲欧美另类中文字幕| 久久女同互慰一区二区三区| 亚洲欧洲一区二区在线播放| 亚洲永久精品国产| 国产一区二区三区黄| 亚洲乱码国产乱码精品精98午夜| 欧美日韩亚洲一区二区三区四区 | 久久综合伊人| 99香蕉国产精品偷在线观看| 欧美一区二区三区视频在线观看| 国产一区二区av| 亚洲另类自拍| 国产精品一区二区三区免费观看 | 久久国产精品久久久久久电车| 欧美gay视频| 在线亚洲成人| 免费不卡中文字幕视频| 一区二区av在线| 久久久国产精品亚洲一区| 亚洲肉体裸体xxxx137| 欧美一区观看| 亚洲韩日在线| 欧美亚洲一区| 亚洲国产第一| 欧美在线日韩| 91久久国产自产拍夜夜嗨| 欧美一区二区在线观看| 亚洲激情在线观看| 欧美在线91| 日韩午夜免费| 免费av成人在线| 亚洲你懂的在线视频| 欧美国产大片| 欧美国产精品| 91久久久久| 欧美伊人久久大香线蕉综合69| 在线播放精品| 亚洲在线日韩| 在线观看亚洲a| 午夜免费日韩视频| 亚洲国产日韩在线| 久久精品免视看| 9色国产精品| 免费看的黄色欧美网站| 小黄鸭精品密入口导航| 欧美日韩日日骚| 亚洲风情在线资源站| 国产精品影院在线观看| 亚洲丝袜av一区|