張香玉,金 暉,王 丹
(1.廣州軟件學院,廣東廣州 510990;2.廣州大學,廣東廣州 510006)
視頻對象分割是指依據(jù)一定標準分割的視頻序列內(nèi)所需區(qū)域。所需要的區(qū)域即前景,也叫目標對象[1],不需要的區(qū)域為背景。視頻對象分割具有很高的實用價值,可應用于視頻壓縮、視頻會議、視頻關鍵幀提取、視頻事件檢測與智能交通等領域[2]。在視頻壓縮領域,利用視頻對象分割方法可以對目標對象與背景區(qū)別編碼,提升壓縮編碼的效率,避免有效信息丟失,增強視覺效果;在智能交通領域,利用視頻對象分割方法可有效分割車載攝像頭采集的實時視頻,幫助駕駛員了解障礙物的具體信息,降低危險狀況發(fā)生的概率[3]。
近年來,視頻對象分割方法成為視頻處理的熱點與難點問題。目前,提出了很多視頻對象分割方法,并取得了一定成果。文獻[4]提出了動態(tài)雙邊網(wǎng)格實現(xiàn)的視頻前景分割算法。該方法通過構(gòu)建一個高維的視頻數(shù)據(jù)映射空間,按照標簽數(shù)據(jù)計算各空間內(nèi)各節(jié)點對應的分割值,通過圖割算法分割高維特征空間,并降維至相應的視頻幀內(nèi),完成視頻前景分割。該方法在高維空間內(nèi)對視頻分割對象進行分割,分割的效果較好,但在分割過程中操作過程較為復雜,易導致分割的結(jié)果存在一定誤差。文獻[5]提出了一種基于交替凸優(yōu)化的視頻對象分割算法.該方法將視頻對象分割問題轉(zhuǎn)換成馬爾科夫能量、時空能量與對抗能量混合能量最小化的非凸優(yōu)化問題,通過交替凸優(yōu)化方法分解最小化的非凸優(yōu)化問題,分解成兩個二次規(guī)劃問題,根據(jù)前向-反向傳遞方法,提升視頻對象分割的可靠性,但該方法在分割時采用的方法較多,易導致分割對象分割耗時較長。
基于上述方法中存在的不足,提出動態(tài)場景下基于VR技術的短視頻實時分割方法。VR屬于一種綜合多種技術的技術,可應用于三維計算機圖形、人機交互、廣角立體顯示等領域[6]。三維重建屬于VR技術內(nèi)不可缺少的重要環(huán)節(jié)。本文將其應用到動態(tài)場景下,完成對短視頻的分割。與傳統(tǒng)方法相比具有一定優(yōu)勢。
為了提升短視頻實時分割的精度,首先對短視頻進行三維重建。利用VR技術對動態(tài)場景下短視頻實施三維重建,將多個視頻幀包含單一信息的二維短視頻經(jīng)過VR技術處理,形成包含復雜體數(shù)據(jù)的三維短視頻[7],豐富短時頻目標對象的細節(jié)信息,為后續(xù)分割操作提供精準數(shù)據(jù)。VR技術常用三維重建技術是體繪制算法,體繪制算法的實現(xiàn)步驟如下:
步驟1:對動態(tài)場景下短視頻的三維空間體數(shù)據(jù)預處理,預處理操作包含轉(zhuǎn)換數(shù)據(jù)格式與去掉多余數(shù)據(jù);
步驟2:為每種數(shù)據(jù)類型賦予數(shù)據(jù)點合理的顏色值與透明度值;
步驟3:依據(jù)指定方向從屏幕的每個像素點發(fā)射,穿過視頻幀體數(shù)據(jù)的射線,按照統(tǒng)一間距在射線上實施采樣,獲取多個采樣點,通過與某個采樣點鄰近的8個像素點顏色值與不透明度值,利用線性插值法獲取該采樣點的顏色值與不透明度值;
步驟4:獲取射線上全部采樣點顏色值與透明度值后,按照特定方式合成全部采樣點獲取最終的三維短視頻。
由于體繪制算法需要繪制短視頻內(nèi)全部對象的內(nèi)部結(jié)構(gòu),故需要為算法賦予顏色值與不透明度。在不透明度為1的情況下,說明這個對象屬于不透明物體,則該對象后面對象會被其遮擋;在不透明度為0的情況下,說明該對象屬于透明物體,則該對象為不可見對象。
一個對象內(nèi)包含很多物質(zhì),各個對象背景顏色均不相同。因此,由對象內(nèi)包含的多種物質(zhì)共同決定該對象顏色。假設某個物質(zhì)在對象中所占的比例為pλ,這個物質(zhì)的顏色為Qλ=(αλRλ,αλGλ,αλBλ,αλλ),其中R、G、B表示構(gòu)建動態(tài)場景下短視頻序列各幀圖像三維灰度信息的三個分量,則該對象的顏色值為
(1)
式中,采樣點數(shù)量為n。
通過由前向后圖像合成法實施短視頻合成,該方法將視點處作為射線的初始位置,從視點處開始往最遠處投射,合成沿著視點到投射最遠處方向的射線中全部像素點顏色值與透明度值,達到最遠投射處為止。
假設已知采樣點的顏色值為Qλ,不透明度值為αλ,該采樣點前一個采樣點顏色值為Qj,不透明度值為αj,該采樣點下一個采樣點的顏色值為Qk,不透明度值為αk,對應的三維短視頻合成公式如下
Qkαk=Qjαj+Qλαλ(1-αj)αk=αj+αk(1-αj)
(2)
利用時空聯(lián)合的視頻幀對象分割方法實施三維重建后動態(tài)場景下短視頻實時分割。時空聯(lián)合的視頻幀對象分割方法具體步驟如下:
步驟1:利用最大幀差分量方法提取三維重建后動態(tài)場景下短視頻的視頻幀和該視頻幀相鄰幀的幀差信息,通過線性掃描法實施填充,獲取三維重建后動態(tài)場景下短視頻幀差模板;
步驟2:通過融合模糊C均值聚類算法與運動窗技術,剔除三維重建后動態(tài)場景下短視頻幀差模板內(nèi)冗余背景,獲取對象模板;
步驟3:通過融合區(qū)域生長與邊緣檢測方法,填補三維重建后動態(tài)場景下短視頻對象模板內(nèi)缺少的對象部分,獲取完整三維重建后動態(tài)場景下短視頻的視頻幀對象;
步驟4:對完整三維重建后動態(tài)場景下短視頻的視頻幀對象實施輪廓修正,獲取精準的三維重建后動態(tài)場景下短視頻幀對象,完成動態(tài)場景下短視頻實時分割[8]。
利用最大幀差分量方法提取三維重建后的動態(tài)場景下短視頻序列的幀差信息,計算公式為
difmax(x,y)=max{difR(x,y),difG(x,y),difB(x,y)}
(3)
式中,點(x,y)處幀差值為difmax(x,y);點(x,y)在R分量處的幀差值為difR(x,y);點(x,y)在G分量處的幀差值為difG(x,y);點(x,y)在B分量處的幀差值為difB(x,y);為最大限度提取三維重建后動態(tài)場景下短視頻幀差信息,需選擇三個分量內(nèi)最大值當作點(x,y)的幀差值。
完成幀差信息提取后,通過閾值處理方法剔除三維重建后動態(tài)場景下短視頻序列內(nèi)的噪聲,即
(4)
由于三維重建后動態(tài)場景下短視頻序列內(nèi)具有背景噪聲。因此,公式(4)內(nèi)閾值T的大小至關重要;選擇較小值作為閾值T的值,會增加噪聲的引入量;選擇較大值作為閾值T的值,會減少提取的幀差信息,文中選擇0.1為閾值T的值。
通過融合模糊C均值聚類算法與運動窗技術,剔除三維重建后動態(tài)場景下短視頻幀差模板內(nèi)冗余背景,按照三維重建后動態(tài)場景下短視頻的幀差信息生成運動窗;計算三維重建后動態(tài)場景下短視頻幀差模板中每個點相應的像素和每個聚類中心的顏色歐式距離,若某像素和每個聚類中心的隨機距離超過某個閾值,那么將該像素當作背景像素,并剔除該像素,獲取三維重建后的動態(tài)場景下短視頻對象模板[9]。
設三維重建后動態(tài)場景下短視頻幀差模板區(qū)域為M,M的外接矩形為REC,中心點為(x0,y0),外接矩形高度為H,外接矩形的寬度為W。設三維重建后動態(tài)場景下短視頻視頻幀運動窗為WD,那么WD要大于REC,獲取足夠的三維重建后的動態(tài)場景下短視頻背景樣本。WD的表達為
(5)
式中,比例系數(shù)為K,文中取值1.2。
在WD中剔除M,剩下部分屬于無對象的背景區(qū)域,利用模糊C均值聚類算法對該區(qū)域?qū)嵤┚垲?。步驟如下
步驟1:設置分類數(shù)為c(2≤c≤l),樣本數(shù)量為l;設定模糊性加權指數(shù)m的值;隨機生成0-1的數(shù),組建初始模糊分類矩陣,設定迭代控制參數(shù)ε,迭代次數(shù)t為1;
步驟2:輸入全部樣本Z={z1,z2,…,zl};
步驟3:獲取c個類別的聚類中心oi(t),即
(6)
式中,第b個樣本屬于第a個分類的隸屬度為uab;
步驟4:更正模糊分類矩陣uab(t+1),即
(7)
通過融合區(qū)域生長與邊緣檢測方法填補剔除背景后三維重建后動態(tài)場景下短視頻對象模板內(nèi)缺少對象部分,其實現(xiàn)方法是對三維重建后的動態(tài)場景下短視頻的視頻幀圖像實施邊緣檢測,計算三維重建后動態(tài)場景下短視頻對象模板中每個鄰近像素間在HSI彩色空間的顏色相似度,通過像素間相似度與邊緣信息獲取區(qū)域生長種子,利用基于顏色與空間信息對每個種子實施區(qū)域生長,完成對象填補。
將RGB空間轉(zhuǎn)換成HSI彩色空間,其中H(Hue,色調(diào))、S(Saturation,飽和度)、I(Intensity,亮度)。隨機3個在[0,1]區(qū)間中的R、G、B在值均在HSI模型內(nèi)有相應的H、S、I分量,即
(8)
通過像素間相似度與邊緣信息選擇區(qū)域生長種子,選取3×3鄰域,計算像素v和與該像素鄰近像素vi=(i=1,2,…,8)間相對歐式距離,其中,鄰近像素有8個,即
(9)
式中,vi的三個彩色分量為(hi,si,ii);v的三個彩色分量為(h,s,i)。
某個像素和該像素的鄰近像素間顏色最大距離公式為
(10)
歸一化dmax
d=dmax/max(dmax)
(11)
那么像素和該像素鄰近像素間的相似度表達公式為
H=1-d
(12)
H值表示某個像素和該像素附近像素的相似程度,依據(jù)H值從高至低的順序放入種子隊列內(nèi),去除種子隊列內(nèi)H值最高的像素,若該像素符合不在邊緣上與未被標記的條件,則將其作為區(qū)域成長的種子[10]。
區(qū)域生長算法的具體步驟如下:
步驟1:標記獲取的種子點;
步驟2:將種子點鄰近的既不在邊緣上又沒有被標記的4個像素列入數(shù)據(jù)組N內(nèi);
步驟3:如果N不為空,那么在N內(nèi)拿出距離種子點區(qū)域最近的像素g,同時查看g點的4個鄰近像素是否符合4個鄰近像素內(nèi)具有與種子標記一致的標記像素,且數(shù)量超過3個條件;如果不符合這個條件,需計算g和種子點區(qū)域均值相對歐式距離,該相對歐式距離需低于閾值T;符合任意條件,將g點標記成種子點區(qū)域的標記,更新種子點區(qū)域均值,在N內(nèi)去除g點,將g點既不在邊緣上又沒有被標記的4個像素列入數(shù)據(jù)組N內(nèi);如果不符合上述條件,在N內(nèi)去除g點,重復步驟3,該種子相應的區(qū)域生長結(jié)束;
步驟4:轉(zhuǎn)至步驟1,實施下一個種子點區(qū)域的生長,以種子隊列為空為止。
在區(qū)域算法中考慮了邊緣信息,在生長過程中,若遇到邊緣,便結(jié)束在該方向上的生長,阻止鄰近區(qū)域間的錯誤合并,提升區(qū)域生長的準確性。
為驗證本文方法的有效性,在網(wǎng)頁中隨機選取10個不同時長的動態(tài)場景下短視頻,10個短視頻的時長分別為15 s、30 s、45 s、75 s、93 s、117 s、130 s、149 s、162 s與186 s。利用本文方法對10個動態(tài)場景下短視頻圖像進行實時分割,驗證本文方法的分割的有效性、精準性與分割效率。其中,分割的樣本圖像如圖1 所示。
圖1 原始圖像
4.2.1 分割效果分析
為了驗證本文方法的有效性,以短視頻內(nèi)一個動作圖像為例,利用本文方法實施分割,本文方法的分割效果如圖2 所示。
圖2 本文方法分割效果分析
分析圖2可知,本文方法對樣本視頻中的一個圖像分割的效果較好,實驗中,采用本文方法經(jīng)過填充獲取幀差模板,有效去除圖像中背景,獲取對象模板,通過填補獲取完成對象,成功將人物對象從背景中分割出來。驗證了本文方法能夠有效分割動態(tài)場景下的短視頻。
4.2.2 分割準確度分析
為進一步驗證本文方法的有效性,采用對比本文方法、動態(tài)雙邊網(wǎng)格實現(xiàn)的視頻前景分割算法以及基于交替凸優(yōu)化的視頻對象分割算法,對比三種方法在對樣本分割的準確度,實驗結(jié)果如圖3 所示。
圖3 不同方法分割準確度對比
分析圖3 可以看出,采用三種方法對樣本視頻圖像進行分割的準確度存在一定差距。其中,所提方法的分割準確度最高約為98%,而其它兩種方法分割的準確度始終低于本文方法,驗證了本文方法的有效性。
4.2.3 分割效率分析
利用本文方法與動態(tài)雙邊網(wǎng)格實現(xiàn)的視頻前景分割算法以及基于交替凸優(yōu)化的視頻對象分割算法對隨機選取的10個動態(tài)場景下的短視頻實施分割,三種方法分割耗時測試結(jié)果如表1所示。
表1 不同方法分割耗時分析
根據(jù)表1可知,隨著動態(tài)場景下短視頻時長的不斷增加,即短視頻幀數(shù)不斷增加,三種方法的分割時間均隨之提升,本文方法在不同時長動態(tài)場景下的短視頻分割時間均明顯少于其余兩種方法,且隨著短視頻時長的增加其分割時間的提升幅度較?。槐疚姆椒ǖ钠骄指顣r間為2.10 s,動態(tài)雙邊網(wǎng)格實現(xiàn)的視頻前景分割的平均分割時間是7.85 s,交替凸優(yōu)化的視頻對象分割的平均分割時間是9.79 s。說明隨著動態(tài)場景下短視頻時長的不斷增加,本文方法的分割時間較短,分割效率較高。
視頻對象分割屬一門實用性強、理論和算法并重的技術,可用于很多領域。目前,很多視頻對象分割方法,但并不適用于動態(tài)場景下的視頻分割,且分割精度較低。因此,提出動態(tài)場景下基于VR技術的短視頻實時分割方法,通過對短視頻的分割,提升分割方法的性能。與傳統(tǒng)方法相比本文方法分割的效果較好,分割準確度最高可達98%,且分割的耗時較短,具有一定可行性。