?
圖像處理一般指數字圖像處理。數字圖像是指用數字攝像機、掃描儀等設備經過采樣和數字化得到的一個大的二維數組,該數組的元素稱為像素,其值為一整數,稱為灰度值。圖像處理技術的主要內容包括圖像壓縮,增強和復原,匹配、描述和識別3個部分。
隨著人們對生活質量要求的提高和全球反恐的大勢所需,以及數字化技術本身的不斷進步,依托指紋識別、虹膜識別、人臉識別等技術的生物識別方案和視頻監控方案等正逐步成為提高個人、家庭、企業和社會安全性的重要手段。生物識別方案主要包括四個步驟:圖像采集、圖像預處理,特征取樣,匹配分析;而視頻監控方案則主要包括圖像采集、圖像預處理、圖像處理與傳輸、圖像顯示及圖像管理等。不難看出,無論是生物識別還是視頻監控,圖像預處理都是必需的。事實上,圖像預處理算法的靈活度、復雜度、對圖像處理芯片資源的占用度,以及處理時間的長度將直接對整個系統運行產生舉足輕重的影響。因此,圖像預處理對于整個安防方案來說都是一項艱巨而又關鍵的任務,直接決定了后續圖像處理與分析的準確性和便捷性。
圖像分析
從圖像中抽取某些有用的度量、數據或信息。目的是得到某種數值結果,而不是產生另一個圖像。圖像分析的內容和模式識別、人工智能的研究領域有交叉,但圖像分析與典型的模式識別有所區別。圖像分析不限于把圖像中的特定區域按固定數目的類別加以分類,它主要是提供關于被分析圖像的一種描述。為此,既要利用模式識別技術,又要利用關于圖像內容的知識庫,即人工智能中關于知識表達方面的內容。圖像分析需要用圖像分割方法抽取出圖像的特征,然后對圖像進行符號化的描述。這種描述不僅能對圖像中是否存在某一特定對象作出回答,還能對圖像內容作出詳細描述。
圖像處理的各個內容是互相有聯系的。一個實用的圖像處理系統往往結合應用幾種圖像處理技術才能得到所需要的結果。圖像數字化是將一個圖像變換為適合計算機處理的形式的第一步。圖像編碼技術可用以傳輸和存儲圖像。圖像增強和復原可以是圖像處理的最后目的,也可以是為進一步的處理作準備。通過圖像分割得出的圖像特征可以作為最后結果,也可以作為下一步圖像分析的基礎。
圖像匹配、描述和識別 對圖像進行比較和配準,通過分制提取圖像的特征及相互關系,得到圖像符號化的描述,再把它同模型比較,以確定其分類。圖像匹配試圖建立兩張圖片之間的幾何對應關系,度量其類似或不同的程度。匹配用于圖片之間或圖片與地圖之間的配準,例如檢測不同時間所拍圖片之間景物的變化,找出運動物體的軌跡。
從圖像中抽取某些有用的度量、數據或信息稱為圖像分析。圖像分析的基本步驟是把圖像分割成一些互不重疊的區域,每一區域是像素的一個連續集,度量它們的性質和關系,最后把得到的圖像關系結構和描述景物分類的模型進行比較,以確定其類型。識別或分類的基礎是圖像的相似度。一種簡單的相似度可用區域特征空間中的距離來定義。另一種基于像素值的相似度量是圖像函數的相關性。最后一種定義在關系結構上的相似度稱為結構相似度。
以圖片分析和理解為目的的分割、描述和識別將用于各種自動化的系統,如字符和圖形識別、用機器人進行產品的裝配和檢驗、自動軍事目標識別和跟蹤、指紋識別、X光照片和血樣的自動處理等。在這類應用中,往往需綜合應用模式識別和計算機視覺等技術,圖像處理更多的是作為前置處理而出現的。 多媒體應用的掀起,對圖像壓縮技術的應用起了很大的推動作用。圖像,包括錄像帶一類動態圖像將轉為數字圖像,并和文字、聲音、圖形一起存儲在計算機內,顯示在計算機的屏幕上。它的應用將擴展到教育、培訓和娛樂等新的領域。
圖像預處理分析
根據目的的不同,圖像預處理可分為對采集圖像進行清晰化處理,對圖像進行識別前的預處理,以及對圖像進行壓縮前的預處理等。其中,對采集圖像進行清晰化處理主要包括對CMOS或CCD圖像傳感器感光單元的不一致進行后續糾正,對實際環境與傳感器采集的圖像進行差異補償(如背光),以及對采集到的原始圖像進行去噪處理等。雖然這種預處理算法本身的難度不大,但隨著實時性需求的普及,尤其是在像素較大時,這種算法還是對DSP的處理能力提出了很高的要求。
而對圖像進行識別前的預處理則目的性很強,可能需要破壞原來的像素和分布,以便后續進行特征提取。這種預處理算法的難度視識別場合的不同而不同。要綜合后面的識別算法部分,選擇適當的DSP.圖像壓縮前的預處理主要是指將YUV422變為YUV420、將RGB變為YUV等。這類處理往往有實時性要求,如果采用軟件實現,會對處理性能有較高的要求;如果采用硬件實現,則雖然在處理性能上有保證,但硬件成本會有所上升。
同時,根據應用不同,圖像預處理又可分為生物識別應用中的圖像預處理和視頻監控應用中的圖像預處理。對于生物識別應用,以指紋識別為例,其預處理主要包括指紋圖像增強、指紋圖像二值化、指紋圖像細化、指紋圖像細化后處理。而視頻監控應用中的圖像預處理主要是指對圖像傳感器輸出的連續圖像進行分析,獲取足夠的信息,并通過自動白平衡、伽馬(Gamma)校正、自動聚焦、自動曝光、背光補償等來提高圖像的實際效果。
圖像預處理的挑戰
無論是生物識別還是視頻監控,其圖像預處理正面臨以下挑戰:
⑴ 用戶對圖像質量的要求越來越高,圖像預處理的算法越來越復雜,從而對圖像預處理主芯片處理能力及存儲空間提出了更加苛刻的要求。
⑵ 用戶對圖像的實時性處理和傳輸要求越來越高,一方面要求圖像預處理算法盡量優化、精簡,另一方面也對圖像預處理主芯片的內核處理能力、內部總線架構、數據傳輸能力、外圍接口,以及硬件整體架構和指令集對預處理算法的支持提出了更高要求。
⑶ 不同于圖像和視頻編解碼算法具有業界統一的算法標準和清晰的演進路線圖,圖像預處理算法不僅沒有統一的標準和清晰的發展方向,甚至在很大程度上,方案提供商正是通過這些"秘密"的個性化算法來作為市場競爭的法寶。此外,隨著應用領域的不同、需求的提高和技術本身的演進,原有算法會不斷升級,新的算法會不斷涌現,這些都要求圖像預處理芯片具有更高的靈活性和適應能力。
⑷ 對于方案提供商來說,不僅其體現競爭力的核心算法需要防止被非法讀取或拷貝,而且無論是生物識別還是視頻監控,其圖像數據往往都會涉及隱私,因此也需要提供可以信任的安全保證。以上兩方面,都要求圖像處理芯片必須提供一個可靠、完全的處理平臺。
除了以上挑戰,從系統設計的角度來講,還面臨以下幾方面的需求:
⑴ 雖然圖像預處理和圖像處理工作巨大,但是工程師并不希望采用多個芯片來處理這件事情。因為信號處理和控制系統分別運行于不同處理器的傳統DSP架構已經讓工程師非常頭疼,如果再把圖像預處理和圖像處理分開,則更加大了工程師進行系統開發、系統聯調、系統維護的難度。因此,對于系統設計中的主芯片DSP來說,還面臨集成度的要求--有沒有可能在單芯片上實現圖像預處理、圖像處理,甚至包括系統控制等功能。
⑵ 隨著包括預處理在內的整個圖像處理算法復雜性的不斷增加,作為主處理器的DSP,除了需要提供足夠的硬件處理能力之外,還應該在軟件上提供針對該處理器專門優化的指令集,從而幫助工程師降低對處理器物理架構的熟悉難度,最大限度的駕馭、發揮處理器的特性,盡快開發出精簡、優化的圖像處理算法。
⑶ 除了上面提到的專門優化的指令集以外,面對日益復雜的圖像處理和產品上市時間的壓力,工程師還期望處理器供應商能夠分擔一些他們的工作--比如,提供專門針對該處理器優化、僅占極少量時鐘周期的底層圖像處理軟件模塊,以幫助他們縮短圖像處理算法開發流程,并加速軟件移植。
另外,功能強大、界面友好、簡單易學的開發工具也是系統開發中工程師要求的重點,而且隨著系統復雜度和模塊復用性需求的增加,對開發工具的兼容性也提出了更高的要求。
硬件特性
Blackfin系列處理器的硬件架構專門針對圖像處理進行優化,多個DMA通道和可靈活配置的Cache能很好地解決大運算量、高數據吞吐率的圖像處理應用要求。在圖像處理應用中,雖然對圖像數據進行的傳輸也可由軟件實現,但是這樣會消耗掉大量的CPU時鐘周期,從而使DSP的高速數據處理能力難以發揮。如果由DMA獨立負責數據傳輸,那么在系統內核對DMA進行初始設置并啟動后,DMA控制器就可在無需內核參與的情況下直接把圖像數據從PPI接口傳輸至SDRAM存儲器進行存儲。另外,通過二維DMA還能簡化宏塊進出外部存儲器的傳送,從而允許數據控制成為數據實際傳送的一部分,這對色彩空間元素的交叉和解交叉來說非常方便也非常重要。
針對圖像處理應用,Blackfin系列DSP還在不斷強化硬件功能模塊的支持,比如,ADSP-BF54x系列Blackfin處理器的最新版本中增加了一個用于處理疊加圖像的硬件加速器和一個擴展視頻接口,它使得色彩空間變換、縮放和圖像疊加等任務可以在無需處理器參與計算的情況下完成,從而減輕了內核的處理壓力,為進行更高性能、更高速度的圖像處理提供了更多空間。
軟件特性
在指令集方面,Blackfin系列DSP針對圖像處理提供了豐富的向量指令和視頻指令。其中向量指令可以實現對16位數的操作(大多指令可以并行完成兩個16位數的操作)。由于圖像處理運算中大多是針對16位數的操作,因此,通過合理使用這些向量指令來優化圖像運算非常重要。不僅Blackfin指令集中的大多數算術指令和移位指令都有對應的向量指令,而且,向量指令中還有根據符號相加、32位數轉16位數等特殊指令。在對圖像預處理的匯編優化中合理的應用這些向量指令,可以提高算法的并行度,并大大加快運算速度。
視頻像素指令主要包括BYTEOP16P 、BYTEOP3P 、BYTEOPIP、SAA 、BYTEAPCK,以及BYTEUNAPCK等。一條視頻像素操作指令可以在一個周期內完成4對視頻數據分量的加、減、加減混合、取平均值,或者相減并求絕對值等11種視頻像素運算。由于視頻像素值一般都是按照8位存放的,所以使用視頻像素指令可以大大提高包括求SAD、像素插值、8位數和16位數直接轉換等在內的各種視頻圖像運算的速度。
安全特性
在安全性方面,ADI公司的Blackfin Lockbox Secure Technology通過提供一次可編程(OTP)存儲器與安全處理模式(Blackfin安全模式),將軟件與硬件保護相結合,為開發人員提供實現以上安全措施的手段,其中,在OTP存儲器的公共、非安全、用戶可編程區域開發人員可以用來存儲公共密鑰,這樣可以通過可控制與可配置的方式來鑒別系統。而在OTP存儲器的私有、安全、用戶可編程區域,開發人員則可以設置私人密鑰等私有器件資產,并保持這些器件資產的機密性與完整性。
軟件模塊庫支持
ADI公司提供多種針對圖像處理的軟件模塊,包括H.264 Baseline Profile Decoder模塊、能夠按比例縮放具有不同輸入及輸出尺寸圖像的增強視頻后處理(eVPP)模塊、JPEG編碼器模塊MPEG-2 Decoder Simple & Main Profile Decoder庫、MPEG-4 Simple Profile & Advanced Simple Profile Decoder庫,以及MPEG-4 Simple Profile & Advanced Simple Profile Video Encoder模塊等,它們都專門針對Blackfin處理器而優化,并經過業界嚴格驗證。
ADI公司還專門針對圖像處理應用推出了"Image Tool Box"軟件包,該軟件包由一系列專用模塊組成,并針對圖像處理算法的一些常用和基本函數進行了專門優化,可以進行圖像變換、圖像分析與圖像增強、二值圖像操作以及形態學處理等圖像處理操作。這款軟件包有利于降低工程師的開發難度,加速上層算法的實現和優化。
開發環境的支持
用于Blackfin系列DSP處理器開發應用和工程管理的VisualDSP++開發環境主要包括集成了ViusalDSP++內核的集成編譯和調試環境(DIDE);帶實時運行庫的CC/++優化編譯器;匯編器和鏈接器,以及仿真軟件和程序例程等。其中,編譯器允許程序開發人員用C或C++語言編寫信號處理和控制代碼,從而方便了系統的開發和維護。圖形化的友好用戶信息交換界面使工程師能夠在窗口中進行工程管理、編輯、編譯和調試程序,并在其間快速輕松地切換。此外,VisualDSP++開發工具還與Green Hills軟件公司的MULTI環境、NI公司的LabVIEW軟件,以及MathWorks公司的MATLAB和Simulink軟件相兼容,為系統開發和模塊復用提供了一個更加便捷、寬松的環境。
評論
查看更多