來源:發(fā)布時(shí)間:2023-05-04
安防監(jiān)控正在步入高清化、智能化時(shí)代,海思推出的Hi3516正是針對高清IPCamera的一款專業(yè)高端SOC芯片,除了[email protected]多碼流編碼、優(yōu)異的ISP和編碼視頻質(zhì)量優(yōu)勢外,其高性能的智能視頻分析加速引擎和基于此的智能視頻分析集成應(yīng)用更是該產(chǎn)品的一大亮點(diǎn)。
從下圖中我們可以看到Hi3516在圖像處理系統(tǒng)中增加了IVS ENGINE,即智能視頻加速引擎,簡稱IVE。
海思Hi3516智能分析引擎應(yīng)用介紹
Hi3516功能框圖
這個(gè)加速引擎的主要作用就是將智能視頻分析算法運(yùn)算中頻繁調(diào)用且消耗資源較大的主要算子實(shí)現(xiàn)硬化,以減少底層運(yùn)算對CPU資源的消耗,節(jié)省CPU資源來做更多的智能分析應(yīng)用。
基于硬化的IVE以及強(qiáng)大的CPU,Hi3516芯片可根據(jù)用戶需要,開發(fā)各種智能視頻分析應(yīng)用,包括通用類功能,如周界防范、視頻質(zhì)量診斷、人臉檢測,也可以開發(fā)行業(yè)專用類功能,如自助銀行專用功能“ATM異物加裝檢測”等。
本文將對智能視頻加速引擎及其應(yīng)用進(jìn)行介紹。
首先介紹最常見的智能視頻分析功能--周界防范與加速引擎的關(guān)系。周界防范功能屬于智能視頻行為分析,其核心模塊包括:運(yùn)動目標(biāo)檢測、運(yùn)動目標(biāo)跟蹤、運(yùn)動目標(biāo)分類、安全規(guī)則判別。其中運(yùn)動目標(biāo)檢測與跟蹤模塊是整個(gè)處理流程的基礎(chǔ),這兩個(gè)模塊互為反饋,關(guān)聯(lián)性強(qiáng)。
運(yùn)動目標(biāo)檢測的目的是將視頻場景中的運(yùn)動目標(biāo)從背景中分割出來。由于光照的變化、背景混亂運(yùn)動的干擾、運(yùn)動目標(biāo)的影子、攝像機(jī)的抖動以及運(yùn)動目標(biāo)的自遮擋和互遮擋現(xiàn)象的存在等等,都給運(yùn)動目標(biāo)的正確檢測帶來極大的挑戰(zhàn)。而運(yùn)動目標(biāo)的檢測影響著后期的跟蹤和分類,是智能視頻監(jiān)控技術(shù)中的關(guān)鍵。
運(yùn)動目標(biāo)跟蹤是在運(yùn)動目標(biāo)檢測的基礎(chǔ)上,利用目標(biāo)的有效特征,使用適當(dāng)?shù)钠ヅ渌惴ǎ谛蛄袌D像中尋找與目標(biāo)模板最相似的圖像位置,對目標(biāo)進(jìn)行定位。在實(shí)際應(yīng)用中,運(yùn)動目標(biāo)跟蹤不僅可以提供目標(biāo)的運(yùn)動軌跡和準(zhǔn)確定位目標(biāo),為下一步的目標(biāo)行為分析與理解提供了可靠的數(shù)據(jù)來源,而且也可以為運(yùn)動目標(biāo)檢測提供有效反饋,對目標(biāo)檢測進(jìn)行修正更新,從而形成一個(gè)良性循環(huán),因此運(yùn)動目標(biāo)檢測和運(yùn)動目標(biāo)跟蹤算法是密不可分的,相輔相成。
運(yùn)動目標(biāo)分類是在運(yùn)動目標(biāo)檢測和跟蹤的基礎(chǔ)上,通過對運(yùn)動目標(biāo)進(jìn)行有效特征提取,分類器訓(xùn)練,對視頻圖像中的人、車、動物進(jìn)行準(zhǔn)確分類。其中,特征提取用于提取目標(biāo)的空間特征和時(shí)間特征;分類器的訓(xùn)練通過細(xì)化分類采用多特征的樹型分類器,逐層細(xì)化分類,提高分類器的準(zhǔn)確性。
安全規(guī)則判別是在運(yùn)動目標(biāo)檢測、跟蹤、分類的基礎(chǔ)上,得到準(zhǔn)確的目標(biāo)信息,通過判斷當(dāng)前時(shí)刻目標(biāo)的行為特征是否違反了用戶自定義的安全規(guī)則,從而觸發(fā)報(bào)警。其中安全規(guī)則判別也就是最終形成了用戶應(yīng)用功能,如周界入侵(進(jìn)入、離開、出現(xiàn)、消失)、單警戒線、多警戒線、逆行、徘徊、異常速度、非法停車、計(jì)數(shù)、PTZ跟蹤等等。
下圖為智能視頻行為分析處理流程圖。
智能視頻行為分析處理流程圖
根據(jù)長期的實(shí)際工作測試,智能視頻行為分析算法最大的資源消耗部分就在于檢測模塊,基本占用全部消耗的80%以上。
以一個(gè)檢測分辨率CIF格式、時(shí)長3分30秒、光照度間歇變化、人車目標(biāo)持續(xù)出現(xiàn)的典型的視頻序列為例,在Hi3520芯片上應(yīng)用周界檢測、絆線、逆行、徘徊功能進(jìn)行測試,各模塊消耗的資源如下表所示:
海思Hi3516智能分析引擎應(yīng)用介紹
表:各模塊資源消耗數(shù)據(jù)表
各模塊消耗資源分布圖如下圖所示:
各模塊消耗資源分布圖
從Hi3516提供的硬化算子來看,其選取了與運(yùn)動目標(biāo)檢測模塊關(guān)聯(lián)性強(qiáng)且本身消耗資源大的部分的主要算子進(jìn)行了硬化,涉及圖像下采樣、色彩空間轉(zhuǎn)換、濾波器、形態(tài)學(xué)處理、梯度與邊緣處理、圖像運(yùn)算操作、塊統(tǒng)計(jì)等多個(gè)方面。
該類硬化算子稱為智能視頻引擎IVE。IVE是硬件方式實(shí)現(xiàn)了智能視頻分析算法中的圖像處理基礎(chǔ)算子,大大提高了基礎(chǔ)算子的運(yùn)算效率,為智能視頻分析技術(shù)的實(shí)時(shí)性以及多算法的并行性提供了技術(shù)手段。
IVE提供的圖像以幀級運(yùn)算為主,主要包括圖像操作算子(兩幅圖像減操作、兩幅圖像閾值化操作、兩幅圖像與操作、兩幅圖像或操作)、高斯濾波算子、數(shù)學(xué)形態(tài)學(xué)算子(腐蝕、膨脹)、sobel邊緣算子、圖像比較算子、積分圖算子、直方圖統(tǒng)計(jì)算子。IVE所提供的基礎(chǔ)算子是智能視頻分析中使用頻率較高的算子,這樣可以最大限度提升智能分析算法的效率。IVE的硬化算子會頻繁應(yīng)用于檢測器模塊,包括幀間差分(圖像操作算子)、背景差分(圖像操作算子)、圖像平滑(高斯濾波算子)、邊緣檢測(sobel邊緣算子)、閾值分割(圖像比較算子)、噪聲過濾(數(shù)學(xué)形態(tài)學(xué)算子)等等。
經(jīng)測試,IVE對運(yùn)動目標(biāo)檢測算法性能的提高可達(dá)40%左右。
接下來介紹基于Hi3516 IVE的另一項(xiàng)重要的智能視頻分析應(yīng)用--視頻質(zhì)量診斷。該應(yīng)用以計(jì)算機(jī)視覺原理為基礎(chǔ),針對視頻圖像出現(xiàn)的雪花、滾屏、模糊、偏色、畫面凍結(jié)、增益失衡和云臺失控等常見攝像頭故障做出準(zhǔn)確判斷,并發(fā)出報(bào)警信息,及時(shí)有效地報(bào)告因硬件導(dǎo)致的圖像質(zhì)量問題從而避免所帶來的不必要損失,同時(shí)檢測破壞監(jiān)控設(shè)備的行為,保證監(jiān)控系統(tǒng)的正常工作。
該應(yīng)用的主要功能包括:
1.視頻信號亮度異常檢測
自動檢測視頻中由于攝像頭故障、增益控制紊亂、照明條件異常或人為惡意遮擋等原因引起的畫面過暗、過亮或黑屏。
2.視頻信號清晰度異常檢測
自動檢測視頻中由于聚焦不當(dāng)、鏡頭損壞或異物遮蔽引起的視野主體部分的圖像模糊。自動檢測鏡頭對準(zhǔn)無意義物體的情況。
3.視頻信號噪聲檢測
自動檢測視頻圖像中混有雜亂的“橫道”、“波紋”或一陣陣雜亂的飛點(diǎn)、刺、線狀干擾導(dǎo)致的圖像模糊、扭曲、雪花、抖動或滾屏等噪聲現(xiàn)象。
4.視頻信號偏色檢測
自動檢測由于線路接觸不良、外部干擾或攝像頭故障等原因造成的視頻中的畫面偏色現(xiàn)象,主要包括全屏單一偏色或多種顏色混雜的帶狀偏色。
5.視頻信號缺失檢測
自動檢測因前端云臺、攝像機(jī)工作異常、損壞、人為惡意破壞或視頻傳輸環(huán)節(jié)故障而引發(fā)的間發(fā)性或持續(xù)性的視頻缺失現(xiàn)象。
6.畫面凍結(jié)檢測
自動檢測由于視頻傳輸調(diào)度系統(tǒng)故障一起的視頻畫面凍結(jié),避免遺漏真實(shí)的現(xiàn)場視頻圖像。
7.PTZ失控檢測
自動檢測前端云臺和鏡頭是否出現(xiàn)旋轉(zhuǎn)失控狀態(tài)。
8.人為干擾檢測
自動檢測由于人為惡意行為引起的畫面遮擋等現(xiàn)象。
在這個(gè)應(yīng)用系統(tǒng)中可分為三部分:塔基、塔身、塔頂。塔基負(fù)責(zé)收集數(shù)據(jù)和初步加工數(shù)據(jù);塔身部分負(fù)責(zé)根據(jù)初步數(shù)據(jù)得出9種特征的評價(jià)結(jié)果;而負(fù)責(zé)觸發(fā)告警的塔頂部分,用戶在此可調(diào)節(jié)的高級參數(shù),并且根據(jù)自身應(yīng)用需要變化報(bào)警策略。
自下而上的數(shù)據(jù)金字塔
在塔基和塔身部分主要完成以下三個(gè)處理過程:
1.數(shù)據(jù)源
根據(jù)技術(shù)樹(圖5)表示,所有功能由9個(gè)特征完成。而9個(gè)特征的提取源于3類數(shù)據(jù)源,分別是:RGB圖、梯度圖、亮度圖。因此在這3個(gè)數(shù)據(jù)源的數(shù)據(jù)加工中存在著公用數(shù)據(jù)或結(jié)論,可以大幅減少相同數(shù)據(jù)的重復(fù)運(yùn)算,正是硬件加速引擎的主要方面;另一方面是規(guī)格化的加工手段,通過盡可能相同的流水線處理來規(guī)格化特征的提取,使不同的特征提取過程使用盡可能多的相同的處理子模塊,從而達(dá)到資源的最大化利用。
技術(shù)樹和9種特征圖
1.指標(biāo)統(tǒng)計(jì)
統(tǒng)計(jì)方法使用:直方圖,均值和方差,F(xiàn)FT變換。其中首先把CIF圖像(352×288)進(jìn)行橫縱4×4等間隔劃分成16塊(88×72)(見圖6),然后分別對每個(gè)區(qū)域進(jìn)行直方圖、均值和方差分別統(tǒng)計(jì),這樣不僅在塊區(qū)域分析時(shí)可以使用數(shù)據(jù)結(jié)果,而且在整幅數(shù)據(jù)統(tǒng)計(jì)時(shí),僅需要簡單把各個(gè)塊信息進(jìn)行簡單對應(yīng)相加即可。這不僅可以用于亮度圖、RGB圖的處理,還可以用于梯度圖。對于FFT變換,則直接對彩色圖進(jìn)行運(yùn)算。詳情見表二。
將圖像劃分為16塊區(qū)域
表二:數(shù)據(jù)源與統(tǒng)計(jì)方法
1.指標(biāo)差異分析
差異分析主要使用:時(shí)域幀差、空域求比、頻域求比等手段。
時(shí)域幀差:用于統(tǒng)計(jì)t時(shí)刻圖像與t+k(k根據(jù)需要可以取1,2,…63)時(shí)刻圖像的差異,若正常視頻應(yīng)該始終在各個(gè)特征保持在一個(gè)恒定水平,時(shí)域幀差可以使圖像在時(shí)間域上的變化得以顯現(xiàn)并統(tǒng)計(jì)。
空域求比:對于16個(gè)塊的統(tǒng)計(jì),可以為每個(gè)塊在每個(gè)數(shù)據(jù)源上做出一個(gè)二值判定以表征此塊是否處于異常,再通過對異常塊占全部塊(16塊)的比例來判定整個(gè)圖像是否處于異常。
頻域求比:用于統(tǒng)計(jì)某一頻段內(nèi)像素出現(xiàn)次數(shù)占總頻段次數(shù)的百分比,來評估像素的分布特性。例如可以通過大于200亮度值的像素?cái)?shù)與總圖像素的比例來判斷整圖是否亮度過亮。
塔頂部分報(bào)警觸發(fā)是用戶最終需要的產(chǎn)品功能。此功能可根據(jù)不同場景和目標(biāo)以及用戶個(gè)性需求表現(xiàn)出不同的靈敏性和傾向性。為了達(dá)到這一目的,報(bào)警策略設(shè)置完全開放給用戶。用戶可以根據(jù)需要設(shè)定閾值門限、增強(qiáng)或減弱所希望的特征(甚至屏蔽掉無效特征),以達(dá)到準(zhǔn)確檢測的目的。
基于Hi3516 IVE提供的硬化算子,配合上層的算法處理和規(guī)則判斷,可以用較少的資源來實(shí)現(xiàn)視頻質(zhì)量診斷的應(yīng)用。
Hi3516獨(dú)有的智能視頻加速引擎IVE,為智能視頻的深入應(yīng)用提供了優(yōu)秀的平臺。而且內(nèi)核采用了ARM CortexA9處理器,并帶有256K的二級緩存,其優(yōu)異的媒體處理引擎(MPE)、浮點(diǎn)運(yùn)算單元(FPU)、單指令多數(shù)據(jù)流(SIMD)等技術(shù)更是為智能視頻分析技術(shù)應(yīng)用提供了無限的優(yōu)化空間。