1 引言
隨著寬帶和無線網絡的普及和進一步發展、人們對視頻通信、視頻播放等數字媒體服務的要求越來越多,而網絡視頻監控就是在這樣的市場環境下應運而生。該系統整合了FPGA數字視頻信號處理技術、CDMA網絡和Internet網絡的優勢,無論您身在何處、任何時間,都可以迅速接入系統,隨時隨地的進行遠程監控管理。 CDMA無線網絡視頻監控系統可以和其他的有線/無線網絡多媒體視頻監控系統兼容,便于用戶在不同網絡環境下的使用。
2 系統整體構成
系統整體框圖如圖1所示。
圖1 系統整體框圖
本文實現的視頻監控系統主要分為兩部分:第一部分,利用硬件描述語言實現視頻采集,視頻VGA顯示,視頻壓縮,視頻緩沖存儲。第二部分,在FPGA中嵌入NiosⅡ軟核,通過Nios Ⅱ軟核控制,將緩沖區的壓縮好的視頻數據通過CDMA無線模塊傳輸到遠端服務器。
系統整體框圖各部分功能如下:
視頻采集部分;將攝像頭采集進來的模擬視頻數據轉換為數字視頻數據,并獲取相應視頻控制信號。視頻格式轉換部分;將采集模塊輸出的視頻數據轉換成需要的視頻格式。視頻緩存部分;將視頻數據暫存在FIFO中,然后由FIFO轉存在SDRAM中。CDMA模塊部分;將壓縮好的視頻數據通過CDMA傳輸到遠端服務器。VGA視頻顯示部分;將攝像頭采集進來的視頻通過VGA接口,在本地顯示器顯示。NiosⅡ控制部分;當監控系統發現異常現象時,Nios Ⅱ控制系統控制視頻壓縮、視頻緩存和CDMA模塊三部分協調工作,將壓縮好的視頻數據由CDMA傳輸給遠端服務器。遠端服務器將CDMA傳送回來的圖像數據在上位機上解壓以圖片方式顯示,并記錄事件發生時間。
用戶端將CDMA傳回的數據經由提供的解碼記錄軟件,在PC機顯示,并記錄事件發生時間。
3 系統設計與實現
本系統設計主要包括以下模塊:圖像采集模塊,圖像處理模塊,VGA顯示模塊,CDMA無線傳輸模塊,遠端服務器。
3.1 圖像采集模塊
采集模塊是整個系統非常重要的前端,采集質量的好壞將直接影響整個系統的識別效果,同時采集的速度也是整個系統設計速度的瓶頸所在。
本設計中采用了ADV7181來完成視頻處理。ADV7181對視頻信號進行采樣解碼后,得到與CCIR656標準兼容的YCrCb 4:2:2格式的輸出編碼。要對YCrCb 4:2:2格式的數字圖像數據進行后續處理。
彩色CCD攝像頭采集到的模擬視頻信號,經過ADV7181芯片的解碼得到數字視頻信號。ADV7181芯片通I2C總線控制,I2C控制模塊是由自定義外設實現的,SOPC提供的IP核只需對其參數進行配置便可加入到該系統中。圖像采集模塊如圖2所示。
圖2 圖像采集模塊
2C20通過I2C來控制ADV7181B對視頻信號的采樣。ADV7181B芯片產生的數字視頻信號、控制信號和狀態信號送入控制芯片FPGA中,即把場同步信號VREF、行同步信號HREF、奇偶場標志信號RTS0、片選信號CE、垂直同步信號VS、象素時鐘信號LLC2以及數字視頻信號VPO等管腳連接到FPGA芯片,以獲知各種采集信息。
由于攝像頭輸出模擬信號,需要經過視頻A/D轉化后,把模擬視頻信號轉化成數字視頻信號,輸入進FPGA芯片,FPGA根據狀態信號SRTS0把奇偶場圖像信號分別存儲在SDRAM(ODD)和SDRAM(EVEN)中。
3.2 圖像處理模塊
由圖3可以清楚的看出圖像處理過程,攝像頭采集信號經A/D轉換后送入ITU R656解碼器(Decoder),經解碼后分出的Y、Cr、Cb三種基色信號數據線,這三種基色信號、控制信號和時鐘信號進入緩沖器(Buffer)后共同作用輸出Y[7:0]、Cr[7:0]、Cb[7:0]三種基色信號線給RGB模塊,通過對三種基色的混合調制便可得到彩色的圖像畫面。
圖像傳輸過程中需要對圖像信息進行壓縮。由于通常無損壓縮的壓縮比不高,所以在很多情況下,經過無損壓縮后的數據量仍將超過實際應用所能忍受的負荷。所以實現有較高壓縮比的高保真的有損圖像壓縮就很重要。
圖3 圖像處理模塊
本算法的編碼器包括3個步驟:第1步是對原始圖像進行向量變換,第2步是動態位分配的向量量化VQ(Vector Quantization)編碼,第3步是進行一種熵編碼。相應的解碼器也包括3個步驟:解碼器由編碼器的3個步驟的逆過程按逆序組成。圖4所示為算法編碼器和解碼器的框架圖。
圖4 編碼器和解碼器的框架
圖像處理部分是整個系統的核心,需要對外圍的器件進行集中控制和處理。FPGA/CPLD對圖像信號的采集、控制、存儲數據到SRAM以及從SRAM讀取數據都在這里實現。選用CycloneII EP2C20F484C7芯片,利用Verilog HDL作為硬件描述語言,實現對各小模塊的連接控制。
3.3 VGA顯示模塊
如圖5 VGA顯示模塊所示,從攝像頭過來的信號經過視頻解碼后到視頻處理芯片,視頻處理芯片輸出三路的R、G、B數字信號到視頻DAC,然后輸出三路的模擬R、 G、B信號到顯示屏顯示。.這其中,視頻DAC的速度直接決定了輸出圖像的分辨率和刷新率,而其精度則決定了輸出圖像的質量。DAC的速度和分辨率的關系可以通過下面的關系式得到:
時鐘頻率=點速率=(水平分辨率)×(垂直分辨率)×(刷新率)/(回掃系數);
水平分辨率=行的像素數目;
垂直分辨率=幀的像素數目。
圖5 VGA顯示模塊
3.4 CDMA無線模塊
CDMA(Code-Division Multiple Access)技術是近年來在數字移動通信進程中出現的一種先進的無線擴頻通信技術,具有頻譜利用率高、話音質量好、保密性強、掉話率低、電磁輻射小、容量大、覆蓋廣等特點。
1)數據傳輸方式設計
模塊利用DE1的配置串口與CDMA模塊通信,當監視到有人走過時,NiosⅡ系統發出拍照指令,通過攝像頭記錄下圖像,同時NiosⅡ系統通過UART串口向CDMA發送信息,CDMA模塊向設定的手機發送報警信息,并向上位機發送圖像信息。
NiosⅡ與CDMA的通信是采用AT指令向CDMA模塊發送命令。當監視發現異常現象時, NiosⅡ系統接收到來自監控模塊產生的異常信號,馬上進行拍照命令,同時向CDMA發送AT指令,并利用UART的中斷接收CDMA返回的信號,一旦確認CDMA模塊接收到AT指令將向CDMA發送下一條指令,如果NiosⅡ系統沒有收到CDMA模塊返回來的OK信號,系統將不斷的向CDMA發送AT指令直到CDMA響應成功。其中NiosⅡ系統接收CDMA返回信號和向CDMA發送信號采用中斷方式。
2)CDMA響應過程
系統向CDMA模塊發送AT指令初始化CDMA模塊,然后調用建立PPP連接的函數,先用AT指令ATD#777接通CDMA,然后初始化PPP連接,當PPP連接完成后設置好相應的IP參數。
然后初始化WAP相關參數,建立WAP連接,調用信息發送函數將圖像信息發送到與上位機相連接的CDMA模塊中,完成數據的傳送后,斷開PPP連接。負責接收數據的CDMA模塊把數據通過串口傳送到上位機中。
3)TCP/IP協議
TCP/IP(傳輸控制協議/網間協議)是一種網絡通信協議,它規范了網絡上的所有通信設備。網絡傳輸的基本信息單元是數據包。當包經由 TCP/IP 協議棧時,每一層上的協議都會在基本頭中添加或刪除字段。
3.5 遠程服務上位機設計
該系統利用VB編寫程序,將CDMA接收回來的圖像數據以文本格式進行存儲,并將圖片在系統界面上顯示,同時記錄事件發生時間。遠端服務器監控顯示效果如圖6所示。
圖6 遠端服務器顯示
遠端服務器應用程序流程圖如圖7所示:
圖7 遠端服務器應用程序流程圖
3.6 系統軟件設計
本系統使用了Altera公司的Quartus II、SOPC Buil