?

基于達芬奇技術的視頻監控系統設計*

2015-12-07 06:18田增山袁正午
電子技術應用 2015年1期
關鍵詞:達芬奇線程傳輸

鄧 娜,田增山,袁正午

(重慶郵電大學 無線定位與空間測量研究所,重慶400065)

基于達芬奇技術的視頻監控系統設計*

鄧娜,田增山,袁正午

(重慶郵電大學 無線定位與空間測量研究所,重慶400065)

結合實際應用及多媒體技術的發展趨勢,設計了一套以TMS320DM6467為核心的硬件平臺,并借助嵌入式Linux為軟件核心的多通道視頻監控系統。系統采用TVP5158實現對4通道模擬視頻信號采集,通過達芬奇技術實現基于H.264的4通道實時視頻壓縮,利用UDP協議將采集端的視頻數據通過局域網發送至監控中心,用戶可通過監控中心控制軟件對相應區域進行實時監控。系統在單芯片上實現多通道視頻監控系統,具有低成本、高性能的特點,可應用于交通、廠區防盜、智能家居監控、視頻會議等領域。

達芬奇;H.264;視頻監控;DM6467

0 引言

隨著互聯網、多媒體及自動控制技術的飛速發展,視頻應用的需求也越來越大。近幾年來,圖像處理技術已在智能樓宇、交通監控、智能家居、汽車電子以及航空航天等諸多領域得到了廣泛的應用。芯片技術的發展及嵌入式技術的日趨成熟,使得視頻監控系統越來越小型化、集成化和網絡化[1]。

目前,視頻監控仍存在一些問題。諸如監控區域太窄,一套系統無法完成對多個區域的同時監測;非網絡化,大多數監控系統仍然采用模擬信號傳輸,導致系統布線復雜,無法輕易擴容,成本高。諸多問題無法滿足實際需求[2]。

本文立足于解決實際問題,設計了一套集嵌入式技術、網絡技術及TI達芬奇技術為一體的多通道視頻監控系統。利用該系統,可實現對多個關鍵區域的實時遠程視頻監控。系統采用單芯片完成了多通道實時圖像采集、壓縮處理和網絡傳輸,節省成本,管理方便。

1 系統總體設計

系統以DM6467為核心,嵌入式Linux作為操作系統平臺,通過TVP5158采集多路視頻數據并進行壓縮處理,采用 TCP/IP協議將壓縮處理后的視頻數據發送至監控中心。監控中心接收網絡數據并實時解析,通過H. 264解碼后實時顯示。系統總體方案如圖1所示。

本系統主要由視頻處理前端與監控中心構成。視頻處理前端由處理器、攝像頭及TVP5158組成。監控中心由PC構成。系統運行后,監控中心可實時配置視頻處理前端信號參數,如圖像分辨率、通道數等。為了滿足系統需求,在不影響視覺觀看下的指標設計如下:

(1)1-4通道圖像實時采集和壓縮處理(基于 H.264協議),圖像制式包括PAL(720×576)和NTSC(720×480);

(2)實時傳輸幀率不小于15幀/s;

(3)系統時延不大于0.5 s。

圖1 系統結構圖

2 系統硬件設計

系統主要分為信號采集平臺和監控中心兩大部分。監控中心在PC上完成。信號采集平臺主控芯片采用TI公司達芬奇處理器TMS320DM6467,同時還包括SRAM、Nand Flash、TVP5158以及多種外圍接口。Flash中存放有一級引導文件 ubl、U-boot、Linux內核、文件系統、驅動程序以及應用程序等。SRAM作為系統運行內存,TVP5158完成對多通道模擬信號的采集。外圍接口中,串口負責應用程序調試;以太網接口完成對視頻信號和控制信息的傳輸;主控制器通過I2C接口對TVP5158進行參數配置,同時通過VPIF接口接收TVP5158傳回的視頻信號[3]。

信號采集平臺主要實現對1~4通道視頻圖像的采集、實時圖像壓縮、網絡傳輸、心跳檢測、參數接收等功能。采集平臺硬件結構如圖2所示。

圖2 采集平臺硬件結構圖

3 系統軟件設計

系統軟件主要包括采集端和監控中心解碼軟件。系統軟件結構如圖3所示,采集端包括信號采集子程序、圖像壓縮子程序、網絡傳輸子程序、心跳探測及參數配置子程序。監控中心包括網絡接收子程序、圖像解碼子程序、實時顯示子程序、心跳探測及參數配置子程序。

圖3 系統軟件結構圖

3.1視頻采集模塊設計

采集端基于Montavista公司Linux-2.6.10操作系統,采用V4L2進行視頻數據采集。TVP5158與DM6467間采用VPIF接口無縫傳輸。為了讓數據采集更加便捷,對V4L2驅動與 I2C驅動進行二次封裝。同時,為了提高數據傳輸效率,減少CPU開銷,將底層EDMA驅動也封裝在其中。面向應用層,3個接口被抽象為一個MCVIP接口[4-5]。MCVIP驅動框架如圖4所示。

圖4 MCVIP驅動框架

采用MCVIP驅動完成視頻信號采集流程如圖5所示。其步驟如下:

圖5 視頻采集流程圖

(1)打開設備。連接各模塊,開啟設備電源,通過open()函數依次打開 dev_i2c、video0和 video1 3個設備描述符。

(2)參數初始化。初始化主要包括對 TVP5158、圖像制式、通道數、內存區域等進行設置。

(3)圖像采集。MCVIP底層采用V4L2獲取圖像數據。采用如下方式可完成圖像數據的采集。

調用二次封裝后的V4L2函數接口 MCVIP_v4l2GetBuf(hndl,&v4l2Buf),抓取一幀圖像,并存放在v4l2Buf起始的內存區域中。

由于 TVP5158將多通道數據打包為 BT.656格式,需要MCVIP_demuxRun()函數對該格式進行解析,獲取各通道數據。

抓取處理完成后,通過 MCVIP_v4l2PutBuf()函數釋放本次讀取數據所用的緩沖區,以便循環利用。

3.2視頻壓縮模塊設計

視頻壓縮模塊采用一組壓縮線程來完成。系統為4個通道分別開辟一個壓縮線程,并采用達芬奇技術提供的DVSDK開發包完成H.264圖像壓縮。

Codec Engine(CE)是達芬奇技術的核心,負責完成ARM與DSP之間的通信及管理工作。在各個壓縮線程中,調用Engine_open()函數創建各自的CE。

創建圖像壓縮任務,通過 Venc1_create(hEngine, H264ENC_NAME,¶ms,&dynParams)函數告知DSP需要執行哪一段代碼。其中,params與dynParams結構體分別存儲有圖像的分辨率、圖像數據大小等參數。DSP Server收到指令后,對參數進行解析,并創建一個process()實現壓縮任務。

在壓縮任務創建完成后,即可從隊列中獲取一幀原始圖像數據,并進行色彩轉換,最終調用Venc1_process()函數完成一幀圖像的壓縮[6]。

壓縮后的圖像數據將送到壓縮線程與網絡發送線程之間的緩沖隊列中,供網絡模塊調用及數據發送[6]。壓縮線程處理流程如圖6所示。

圖6 壓縮線程處理流程圖

3.3傳輸模塊設計

數據傳輸主要在局域網中進行。為了提高傳輸效率,圖像數據采用面向無連接的UDP協議進行傳輸。心跳信息及控制信息采用TCP協議傳輸,保障了心跳及控制信息傳輸的可靠性。傳輸模塊流程圖如圖7所示。

圖7 傳輸模塊工作流程圖

基于 Linux和 Windows的網絡傳輸主要依靠 socket套接字完成。發送端通過 sendto()將圖像數據發送到監控中心,接收端對協商好的端口進行監聽,并調用recvfrom()函數接收網絡數據。

為了讓監控中心實時掌握采集端運行狀態,采集端設計心跳包,定時向監控中心報告呼吸狀態。若監控中心連續2 min沒有收到心跳信息,則斷定網絡出現故障或采集端發生異常,并報警告知用戶。

由于壓縮線程與傳輸線程之間需要訪問同一個緩沖隊列,為了線程安全,采用互斥量對該臨界區進行控制。壓縮線程需要將數據送入到隊列中時,使用pthread_mutex_lock函數對該臨界區加鎖,訪問完成后調用 pthread_mutex_unlock函數釋放該區域供傳輸模塊訪問[7]。傳輸模塊訪問該區域時處理流程同上。通過互斥量,使得同一時間只有一個線程在訪問該段內存空間,保障了內存訪問的安全性。

3.4顯示模塊設計

本系統中,顯示模塊采用的集成開發環境是Microsoft Visual C++6.0,實現4路視頻數據的接收和實時顯示。顯示模塊軟件由兩個子模塊組成:ActiveX控件模塊和實時播放模塊,ActiveX控件模塊作為軟件的核心部分,是集圖像解碼、圖像播放為一體的功能模塊。主程序調用 ActiveX控件提供的接口函數將視頻數據傳入控件中,控件使用 ffmpeg對視頻數據進行解碼,然后顯示。實時播放模塊由4個ActiveX控件和兩個按鈕組成,兩個按鈕的功能分別為開啟和停止。點擊開啟按鈕,準備接收數據,當網絡中有數據時,接收并解碼和顯示。顯示模塊的工作流程如圖8所示。

圖8 顯示模塊工作流程圖

4 系統測試

系統測試環境包括信號采集板、監控中心PC、4路安防攝像頭、電源、網線等。

將串口線、網線及電源等接口連接好,啟動開發板。運行監控中心顯示軟件,設定通道數、圖像制式等信息。參數配置完成后,點擊開始后采集端開始采集并傳輸視頻信號。

圖9 實時播放效果圖

圖9是監控中心實時解碼顯示效果圖。經過長時間測試,圖像時延約為 0.3~0.5秒,監控中心可實時播放1~4路視頻信號,圖像幀率最差為每通道22幀/s。測試表明,在多通道同時工作時,傳輸幀率和系統時延均滿足預期設計指標。

5 結束語

本文設計了一種基于達芬奇技術的視頻監控系統,實現了1~4通道實時視頻采集、壓縮、網絡傳輸及圖像解碼和顯示。經長時間和多次測試,系統運行穩定,能夠連續對多個區域進行監控。同時,可針對不同應用領域,稍加改進便可投入使用,具有一定的應用價值。

[1]信師國,劉慶磊,劉全賓.網絡視頻監控系統現狀和發展趨勢[J].信息技術與信息化,2010(1):23-25.

[2]陳宗成,鄧華秋.基于 ARM11的嵌入式視頻傳輸系統的實現[J].電視技術,2013,37(9):210-213.

[3]姚春蓮,郭克友,阮秋琦,等.基于 DM6467的視頻處理軟件設計與優化[J].北京交通大學學報:自然科學版,2013,37(5):162-167.

[4]盧俊.基于 Davinci平臺的視頻服務器軟件系統的設計與實現[D].武漢:華中科技大學,2013.

[5]文武,吳勇,張杰.基于 TMS320DM6467的視頻采集系統設計[J].電視技術,2011,35(17):39-41.

[6]施現偉.基于 ARM11的遠程視頻監控系統設計[D].哈爾濱:哈爾濱理工大學,2013.

[7]陳榮軍,余祥云,譚洪舟.基于S3C6410的遠程無線環境監測系統設計[J].電子技術應用,2014,40(5):143-146.

Design of video transmission system based on DaVinci technology

Deng Na,Tian Zengshan,Yuan Zhengwu
(Institute of Wireless Location and Space Measurement,Chongqing University of Posts and Telecommunications,Chongqing 400065,China)

Combined with practical application and development trends of multimedia technology,a set of multi-channel video surveillance system is designed with TMS320DM6467 and embedded Linux software.The system adopts TVP5158 to realize the video signal acquisition of 4 channels,through DaVinci technology to realize the 4 channels real-time video compression based on H.264.Then the data is sent to the monitoring center through a local network with UDP protocol.The user can monitor the region by controlling the monitoring center software.System is implemented on a single chip with low-cost and high-performance features, it can be used in transportation,factory security,smart home monitoring,video conferencing and so on.

DaVinci;H.264;video surveillance system;DM6467

TN762;P715.7

A

0258-7998(2015)01-0025-03

10.16157/j.cnki.0258-7998.2014090703263

重慶市基礎與前沿研究計劃項目(cstc2013jcyjA40041);重慶郵電大學博士啟動基金(A2012-33);重慶郵電大學青年科學研究項目(A2012-77)

2014-09-07)

鄧娜(1989-),女,碩士,主要研究方向:無線通信與定位。

田增山(1968-),男,博士,教授,主要研究方向:個人通信、衛星導航、無線定位、信號檢測與估計。

袁正午(1968-),男,博士,教授,主要研究方向:射線跟蹤、GIS系統。

猜你喜歡
達芬奇線程傳輸
輕松做完大手術——聊聊達芬奇手術機器人
基于C#線程實驗探究
混合型隨機微分方程的傳輸不等式
牽引8K超高清傳輸時代 FIBBR Pure38K
基于國產化環境的線程池模型研究與實現
關于無線電力傳輸的探究
達芬奇想飛
淺談linux多線程協作
支持長距離4K HDR傳輸 AudioQuest Pearl、 Forest、 Cinnamon HDMI線
手術室的“阿爾法狗”:達芬奇機器人
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合