伴隨著城市化進程的不斷加快和城市經濟的高速增長,以及人們安全意識的不斷提高,對視頻監控的需求越來越強烈,其應用場景和使用環境也越來越豐富。不同的場景需求對視頻監控技術提出了更高更復雜的要求,不僅僅要高清,更要智能。顯然已經從過去的“看得見”、“看得清”到如今的“更好看”、“更易看”。
“更好看”——對視頻圖像處理技術的更高要求
就像對手機拍照像素需求的與日俱增一樣,人們現今已經很難再接受分辨率低、噪聲大、動態范圍低的視頻圖像了。這不僅要求安防企業在光學部件的選擇上不斷追求更高的品質,在視頻圖像處理技術上更是不能落后。目前主流的視頻圖像處理技術都在與時俱進,以滿足用戶不斷變化的需求,這里介紹一下當今比較熱門、比較前沿的圖像處理技術的發展情況。

低照技術示意圖
一、低照技術
這只是一個很籠統的稱呼,對低照表現的要求是指在缺少光照的環境條件下仍然能展現出清晰明亮、色彩豐富、較低噪聲的視頻圖像,宇視星光級相機就是在這種需求下應運而生的。該技術不僅對傳感器、鏡頭的品質有很高的要求,還涵蓋了ISP(圖像信號處理)中的夜間圖像增強、2D 降噪、3D 降噪等技術, 同時如何權衡以上功能,以得到最優質的畫面表現,也是對ISP 調校技術的考驗。
二、寬動態技術
寬動態技術可以分為數字寬動態和多幀寬動態兩種。數字寬動態是指,對單幀圖像利用色調映射技術使得畫面的暗區和亮區同時能夠看清,即增大圖像動態范圍。而多幀寬動態則是通過對同一場景獲取多幀曝光程度不同的圖像,然后利用圖像融合和運動估計技術,將多幀畫面合成一幅,以達到同樣的目的。由于多幀寬動態獲得的信息較單幀多,因此通常情況下可以獲得更大的動態范圍,和更自然的視覺感觀。
![]() 數字寬動態處理前(左)和處理后對比 | ![]() 多幀寬動態處理前(左)和處理后對比 |
三、去模糊技術
品質再高清的相機,也可能由于人為拍攝的原因或者被拍攝物體本身的運動而導致模糊,分為失焦模糊和運動模糊兩種情況。模糊本身在數學上來說,是清晰圖像與擴散函數卷積的結果,因此去模糊就是一個逆卷積的過程,失焦模糊和運動模糊的主要差別是擴散函數形式上的差異。
![]() 失焦模糊處理前(左)和處理后對比 | ![]() 運動模糊處理前(左)和處理后對比 |
四、透霧增強技術
視頻圖像透霧增強技術,一般指將因霧氣、水氣和灰塵等導致畫面朦朧不清的因素去除,使畫面重新變得清晰通透,恢復原有的色調、飽和度,獲得了良好的圖像質量與視覺感受。宇視的透霧技術,已不再局限于簡單的對比度增強而已,而是通過對霧霾濃度建模,獲得大氣分布情況,進而有針對性的去除,保持畫面自然,并且不會丟失任何有用信息。

基于大氣模型的透霧技術與對比度增強技術對比示意圖
另外值得一提的是,與利用圖像處理算法進行透霧增強技術各有所長的,還有宇視的光學透霧技術。其原理主要是利用近紅外波段對大氣的穿透性要優于可見光波段,因而能在濃霧霾情況下,獲得可見光圖像所獲取不到的信息。

光學透霧處理前(左)和處理后對比
五、超分辨率重建技術
提高圖像分辨率最直接的辦法就是提高采集設備的傳感器密度,然而高密度的圖像傳感器價格相對昂貴,在一般的應用中難以承受,同時傳感器陣列密度目前也已接近極限。解決這一問題的有效途徑是采用基于信號處理的軟件方法對圖像的空間分辨率進行提高,超分辨率重建技術可以分為單幀超分辨率重建和多幀超分辨率重建。單幀超分辨率通常是利用學習的方法對低分辨率圖像進行恢復;多幀超分辨率的核心思想是用時間帶寬(獲取同一場景的多幀圖像序列)換取空間分辨率,實現時間分辨率向空間分辨率的轉換。
“更易看”——減少使用者的工作量,智能必不可少
近幾年來隨著監控行業的發展以及平安城市等大型工程的建設, 成千上萬的視頻圖像給廣大工作人員帶來無力管理和監看等問題。應用智能分析技術對視頻畫面中的海量數據進行高速分析, 過濾掉用戶不關心的信息, 僅僅為監控者提供有用的關鍵信息, 從而解決了視頻量大工作人員無力監管等問題, 因此受到越來越多的關注。
目前國內智能分析技術已經不再局限于檢測和識別,還逐漸發展為跟蹤預測、行為分析等眾多應用。檢測是指通過前景提取等方法對畫面中物體的移動進行檢測,通過設定規則來區分不同的行為,例如拌線、周界等;識別是指利用模式識別技術對畫面中所需要監控的物體進行針對性的建模,從而達到對視頻中的特定物體進行檢測、識別、分類等相關應用,例如智能檢測與識別、車型識別等;跟蹤是指對識別到的特定物體的運動軌跡進行跟蹤預測,在視頻圖像序列中表示感興趣的物體或者將不同時間序列中出現的物體濃縮進短短幾分鐘的畫面,例如視頻濃縮、摘要等;行為分析是指對運動物體的行為進行判斷,并在使用者設定的條件下進行自動告警與記錄,如離崗、徘徊、打架斗毆以及表情分析等。
智能處理的壓力通常集中在性能上,如何在有限的服務器資源上同時滿足更多路智能分析的需求,是除了算法效果以外開發者需要關注的另一個重要問題。目前越來越多的高速處理器得到普及,除了DSP 以外,GPU 和FPGA 的主流廠家如Intel、Nvidia、AMD、Altera 等紛紛推出基于OpenCL 平臺的通用計算開發,宇視也基于GPU 和FPGA 進行了一系列的智能分析算法的優化加速。
GPU 與CPU 的差別在于更少的邏輯控制單元和更多的算術運算單元。由于GPU在邏輯判斷方面的弱勢,導致其通常不會用作主控芯片,而是與CPU 配合使用,處理大量數據計算問題。而針對數據交互的瓶頸問題, 各大廠家也各自開發出unifymemor y 等解決方案,減少數據拷貝。

GPU 與CPU 資源對比
按應用類型可以分:
控制密集型(Control Int ensive),例如searching、parsing 等等,適合于CPU 的任務并行處理。數據密集型(Data Intensive),例如圖像處理、數據挖掘等等,適合于GPU 的數據并行處理。
計算密集型(Compute Int ensive),例如迭代操作、金融建模等等, 適合于FPGA 的流水線并行處理。
GPU 的單指令多數據并行(SIMDParallelism)工作方式和FPGA 的流水線并行(Pipeline Parallelism) 工作方式對比如下圖10 所示。GPU 是硬件固定的(fixed hardware), 同一個處理單元在每個時鐘周期可以加載不同的指令,但是在每個時鐘周期都是處理的同一條指令,并且無論處理何種指令,都必然占用一整個流處理器的資源(包括指令發射器、寄存器等);而FPGA 相當于是指令固定的(fixed instructions),每個時鐘周期數據流水似的經過不同的處理,這在運行過程中不會發生變化,而不同的操作會消耗不同的資源,這在關注Performance PerWatt 時可能會有更好的表現。
另外一個重要的差別是遇到分支時,盡管GPU 和FPGA 都不像CPU 那樣善于處理分支,它們會把分支都進行處理,但二者的做法也很不一樣。GPU 由于為單指令多數據操作,只能通過時間上的“堆疊”,一條分支一條分支的處理,這種情況下GPU 的效率明顯降低; 而FPGA 可以通過硬件的“堆疊”來同時處理多個分支,當然需要以犧牲資源為代價,如下圖11 所示。
![]() SIMD 并行與流水線并行對比 | ![]() SIMD 并行和流水線并行分支行為的對比 |
總結——展望:萬物聯網
視頻圖像處理技術未來的發展趨勢,絕對不僅僅是局限在技術本身而已。如何與其他技術結合、融合,來創造出更靈活、更人性化的應用,適應物聯網浪潮的發展,才是未來值得關注的方向。