梁 磊
(江蘇無線電廠有限公司,江蘇 南京 210012)
基于DSP的遠程視頻監控系統研究
梁 磊
(江蘇無線電廠有限公司,江蘇 南京 210012)
文章首先對DSP技術進行了概括性介紹,在此基礎上,從硬件設計和軟件程序設計兩個方面入手,對基于DSP的遠程視頻監控系統的設計進行論述,希望能夠對遠程視頻監控系統設計效率和水平的提升有所幫助。
DSP;遠程視頻;監控系統
數字信號處理(Digital Signal Processing,DSP),主要包括DSP算法、硬件技術、應用背景技術等,其中DSP算法是DSP技術的核心。當前,DSP技術已經被廣泛應用于醫學、通信、石油勘測、音頻視頻處理等領域中。DSP技術的實質是通過變換信號獲取有用信息,將信息予以直觀表達,即利用數字形式采集、變換、壓縮、增強、濾波信號,在處理完信號后獲取所需的信息形式。DSP技術以數字信號處理理論為基礎,該理論在推動數字應用方面起到了重要作用。同時,DSP技術又吸收了其他科學理論,在不斷完善自身理論的同時,使自己發展成為了新興學科的理論基礎。
2.1 硬件設計
(1)圖像傳感器。在MOS技術日臻成熟的背景下,CCD,CID,SSPD 3種固體圖像傳感技術得到了快速發展,其中以CCD的應用最為廣泛。本系統采用WV-CP460彩色攝像機,與普通攝像機相比,該攝像機由于采用了CCD彩色圖像傳感器,并且具備超級動態Ⅱ功能,所以可擴展動態范圍,保證圖像傳輸的靈敏度。WV-CP460彩色攝像機進行了耐用設計,十分適用于監控所在的外部環境,且視頻輸信號為PAL制復合視頻信號。
(2)數字信號處理器。DSP芯片具備穩定性強、可大規模集成、易于實現自適應處理等優勢,在一定程度上促進了DSP技術的快速發展。隨著DSP芯片功能的逐步強大,使得DSP技術關鍵點落在了DSP算法上。DSP芯片根據數據支持類型的不同,可分為定點DSP和浮點DSP,前者在算術操作時使用小數點位置固定數,后者在算術操作時小數點位置可根據數據的不同變化進行浮動[1]。本系統的數字信號處理器要滿足大運算量的要求,采用TMS320C6416的DSP,工作時鐘為600 MHz,考慮到視頻FIFO對系統的影響,將外接口時鐘選定為100 MHz。
(3)開發板的選擇。國內某公司開發的DAM6416P是一種用于音視頻采集、壓縮、播放的評估開發板,該開發板上可集成DSP,FPGA、視頻解碼芯片等器件,主要包括以下構成部分:A/V接口、DSP處理器、PCI總線接口、LED、擴展同步接口、通信接口以及電源。CCD攝像頭采集模擬視頻,將模擬視頻輸入到ADC,再由ADC將其轉為數字信號。數字信號經FPGA傳入視頻FIFO,以便DSP在DMA中進行數據讀取。
2.2 系統軟件設計
(1)軟件開發環境。CCS是集成性DSP軟件開發工具,可提供統一的開發環境,根據源程序類型調動適當的代碼產生工具,并具備調試和實時分析功能[2]。在開放式插件結構中,CCS可集成C編譯器、匯編器、優化器、軟件模擬器、實時基礎軟件、數據交換軟件、實時分析、數據可視化等軟件工具,如圖1所示。開發者可利用CCS編輯、編譯、調試軟件,并對軟件進行性能測試和項目管理。由于CCS實現了數據可視化和數據分析實時化,所以可大幅度降低DSP系統的開發難度,節省開發者的時間和精力。

圖1 DSP的開發環境
(2)DSP/BIOS。DSP/BIOS是DSP的靜態內核程序,可提供基本系統服務,包括線程管理、定時、通訊、資源控制等功能。開發者利用DSP/BIOS只需通過靜態配置,就可有效管理復雜的多任務機制,大幅度降低多任務機制的協作難度,有利于提高系統資源管理效率[3]。DSP/BIOS由以下3個部分構成:
①實時內核。該部分由3個部分構成:a線程調度,包括軟硬件中斷、進程、系統后臺線程;b同步,包括郵箱、原子量、隊列、信號旗;c通訊,包括數據流線、主機接口、數據管道。
②實時分析。用戶可在實時分析部分提供的Statistics和Log模塊中,獲取目標系統的運行數據。
③靜態配置工具。該工具為圖形化的配置工具,可進行屬性設置。
DSP/BIOS按照應用程序模塊的功能定位,將代碼設定為500~6 500字之間,通過多模塊的API實現對DSP/BIOS的使用。API的調用形式為C語言,在C語言的程序內,API也可通過匯編代碼進行調用。
2.3 C語言對算法的實現
DSP系統的算法仿真需要移植到CCS上予以實現,所以選擇具備較強可移植性的C語言進行算法實現。在整個程序中,具體劃分為圖像獲取、圖像處理、圖像顯示、通信模塊4個模塊,為了保證各模塊在修改過程中能夠協調、匹配和移植,必須在各模塊之間留下接口。
(1)圖像獲取模塊。在該模塊的運行中,采用了視頻模擬方法,即預先錄制一段視頻,而后依次讀取視頻中的每一幀,最后將其輸入處理模塊。
(2)圖像處理模塊。該模塊是整個程序的核心模塊,也是移植到DSP的主要部分,需要完成以下工作:選擇區域、提取目標、提取重心、生成運動軌跡、壓縮圖像等。
(3)圖像顯示模塊。該模塊具備顯示功能,以及解壓縮、圖像融合兩種算法,在DSP算法移植中不包括這種兩種算法。
(4)通信模塊。該模塊是算法移植的輔助模塊,能夠建立起PC與DSP系統的通信連接,方便傳輸數據。
2.4 程序移植
(1)代碼移植。DAM6416P為DSP代碼移植提供了豐富的軟件資源和庫函數,并且可優化處理代碼。
(2)數據處理。在IEKLIB庫支持板上進行應用程序開發,能夠快速處理多媒體和通信數據。在本系統中,攝像頭提供的標準PAL制式模擬視頻數據需要通過視頻輸入端口進行采集,將采集后的模擬視頻數據轉換為RGB信號,對RGB信號進行處理,輸送至VGA視頻輸出端口進行輸出,以便在顯示器上進行觀看。
(3)視頻轉換。受系統視頻數據轉換的限制,只能將PAL制式轉化為Y∶U∶V=4∶2∶2存放格式,具體如表1所示。在模擬視頻數據轉換后,VGA所呈現的圖像只是一種數字信號,并非為真彩色,這會降低圖像色彩數,影響算法識別精度,但從整體上來看并不影響程序移植效果。

表1 Y∶U∶V的存放格式
(4)初始化。DSP/BIOS需要進行初始化,由于API根據不同應用程序配置不同的模塊,所以在本系統中使用CSL和TSK模塊,在執行程序之前先進行CSL模塊初始化,再進行開發板初始化。
2.5 代碼優化
(1)編譯優化。代碼優化選用C6000編譯器,該編譯器包括性能優化和代碼尺寸優化選項,可達到最高程度的優化效果。C6000編譯器能夠執行各種優化循環方法,如移除未使用過的函數,移除重復表達式等,這種優化方法可實現對代碼尺寸的優化控制,提高優化選項的性能。
(2)其他優化。除了利用編譯器進行代碼優化外,還可采取以下方法:①將C語言程序替換為內聯函數intrinsics,該內聯函數屬于在線函數,能夠與C6000匯編指令映射;②將寬長度的存儲器應用于短字長數據中,如將兩個32位數據放在一個64位寄存器的高位和低位,對短字長數據進行打包處理。這樣一來,可使Load指令對多個數據進行同時訪問,大幅度縮減訪問所占用的內存空間。
綜上所述,本文基于DSP技術,設計了一款遠程視頻監控系統,文章從硬件和軟件兩個方面對系統的設計過程進行了分析。該系統除了能夠實現目標的有效識別之外,還能具備圖像壓縮傳輸、圖像融合及顯示等強大的功能,從而使該系統可在智能小區、連鎖超市、金融機構等場所的監視中進行應用,給各個場所相關業務開展的安全性提供了有效保障。
[1]宋從超.基于DSP和H.265的視頻監控系統研制[D].淮南:安徽理工大學,2015.
[2]邱光能.基于嵌入式的遠程視頻監控系統的設計與實現[D].長沙:湖南大學,2013.
[3]劉麗娜.基于DSP的智能視頻監控系統的設計[D].淮南:安徽理工大學,2013.
Research on remote video surveillance system based on DSP
Liang Lei
(Jiangsu Radio Power Plant Co., Ltd., Nanjing 210012, China)
This paper first makes a brief introduction to the DSP technology, on this basis, starting from the hardware design and software design two aspects, the design of remote video monitoring system based on DSP are discussed. Hope that through this study can help to improve the design efficiency and level of the remote video monitoring system.
DSP; remote video; monitoring system
梁磊(1986— ),男,江蘇連云港,專科,助理工程師;研究方向:電子產品生產管理。