張春磊,熊麗婷
(1.成都理工大學 工程技術學院, 四川 樂山 614000;2.華東交通大學 理工學院, 南昌 330100)
動畫電影和卡通片是重要的娛樂來源,特別對兒童更是如此。此類視頻在設計時會考慮到兒童的心智水平,但卡通片中的某些內容也可能對兒童造成負面影響[1]。由于卡通片中的角色沒有能力限制,這可能會使其產生暴力和激進的行為。一些研究表明,卡通片中的暴力內容會造成兒童觀眾對疼痛的不敏感。這些兒童觀眾習慣了暴力內容,在現實生活中將暴力當成了正面元素,并從中得到享受。此外,一些研究認為卡通片中的暴力會增加兒童的攻擊性[2]。
目前暴力場景檢測技術在視頻監控領域得到了廣泛關注,并被用于電影的場景過濾中。過去提出了很多視頻中暴力內容的自動檢測方法,但大部分方法針對常規視頻開發,使用不同的低級和高級特征進行暴力檢測[3],或者基于視頻圖像進行一些異常行為的檢測[4]。目前已有方法大部分基于聲音和視覺特征,以及這兩種特征的結合進行視頻中的內容感知和暴力檢測。文獻[5]提出一種結合多種模態特征的暴力檢測技術,首先采用一種新的網絡模型分別對音頻和視頻進行暴力檢測,然后進行視覺和聽覺雙模態融合的暴力檢測,最后采用注意力機制和雙向網絡進行優化。實驗結果證明,該方法具有較高的準確率。文獻[6]提出了中等暴力程度的聚類技術,以進行視頻中的暴力檢測。其中使用了聲音-視覺特征和機器學習技術。使用多核學習對聲音和視覺模態進行測試。該系統在來自2013 Affect Task的數據集上進行訓練和測試,并通過MAP@100進行了評估。文獻[7]提出一種基于局部約束的稀疏分類模型和運動韋伯特征相結合的暴力檢測方法。利用高斯濾波對輸入視頻去除一些噪聲,提取出運動韋伯特征;利用改進的稀疏分類模型用于特定類字典的學習;利用相應的分類機制用于對視頻中的暴力行為進行分類。結果表明,提出的特征具有較強的判別性,且提出的基于局部約束的稀疏分類模型非常有效。文獻[8]利用ImageNet和MIT場景數據集中的數據,對每個視頻幀中的成分屬性進行檢測以進行對象識別。通過將該屬性與來自視覺和聲音模態的其他低級特征相結合,構建支持向量機(Supported Vector Machine, SVM)分類器[9]。
一部卡通中的場景對于某個兒童來說是暴力的,但其他兒童則可能認為其并非暴力場景。這種情況下的閾值等級是高度主觀的,且在不同觀眾、不同情況和不同文化背景下存在顯著差異[11]。本文提出了能夠對卡通視頻中的暴力內容進行自動檢測的框架。首先,基于低級特征將卡通視頻分割為不同片段;然后,并識別出不同對象,以找出令人高度反感的元素;最后,基于個體感知對卡通視頻進行映射。仿真實驗表明,本文方法在對象識別中具有較高準確率。
本文提出了用于卡通視頻的暴力檢測方法。首先,檢測并識別出場景中的物體和動畫角色,用于估計暴力概率。與現實視頻不同的是,大部分卡通角色具備獨有的特征,可用于預測場景的性質。同樣的,在存在暴力元素的情況下,場景中的動畫角色和不同物品也可用于估計場景的暴力性質[11]。例如,若視頻中存在暴力角色和刀劍、獻血等對象,則意味著該場景為暴力場景的概率較高。而非暴力角色例如桌椅、鮮花、樂器等普通物品則意味著該場景具有非暴力性質。本文使用貝葉斯概率模型來估計場景中的暴力概率。圖1給出了所提系統概覽。

圖1 暴力檢測系統
算法1給出了本文所提的暴力估計模型的處理流程。
算法1:卡通視頻暴力檢測算法。
輸入:M= 視頻(片段)
1 forn= 1 toNdo //長度為N的視頻,包含視頻幀1...n。
2Fn= Extract-Frame_RGB(M,n) //將視頻幀轉換為RGB格式
3Fgray= RGB-to-Gray(Fn) //灰度轉換
4Fr= Extract-Red-Channel(Fn) //RGB分離
5Fg= Extract-Green-Channel(Fn)
6Fb= Extract-Blue-Channel(Fn)
7FHSV= RGB-TO-HSV(Fn) //HSV分離
8Fh= Extract_Hue-channel(FHSV)
9Fs= Extract_saturation-channel(FHSV)
10Fv=Extract_Value_channel(FHSV)
11k= 1
12 for 每個Gray、RED、GREEN、BLUE、HUE、Value、Saturation通道 do
13 將特征加入特征向量FVn
14 ifn≠1 then
15M=TSS(Fn+1,Fn, mbSize,p)//利用TSS計算運動向量,mbSize= 20,p=5
16Δfn=|FVn+1-FVn|
17 ifΔfn>ththen
18k=k+1
19 將視頻幀n標記為鏡頭邊界k
20 SBF = 提取從第k-1幀到第k幀的鏡頭特征
21 Obj = 提取從第k-1幀到第k幀的關鍵幀中的對象
22 for 每個對象Obj do
23 OVF = Extract-Object-Visual-Feature//提取對象的視覺特征
24 if OVF在CKB中 then //將OVF與角色知識庫相比較
25 Violencefactor(Obj) = extract-average-offensive-factor(Obj)
26 else if OVF在OKB中 then //將OVF與物品知識庫相比較
27 Violencefactor(Obj)= extract-average-offensive-factor(Obj)
28 else
29 忽略對象Obj
30 Append_merge(Scene-Violence-factor, Violencefactor(Obj))//合并對象的暴力因子數值
31 Prob_of_SVF = Estimate-SVF(Scene-Violence-Factor)//估計卡通視頻場景的暴力概率
CKB:角色知識庫
OKB:物品知識庫
一般卡通視頻的低層次特征提取主要采用兩大類視覺信息:亮度和色度。亮度信息是最明亮的信息,它包含了視頻內容的大部分數據。在卡通漫畫中,這些信息在理解場景的內容中扮演著重要的角色。大部分視頻都是YPbPr格式,亮度信息由Y通道呈現。在本文研究中,視頻以RGB格式提取。在這里,亮度信息以灰度級的形式提取。
本文利用低級特征(RBG顏色、亮度、色調)開發連續函數,并用于識別場景中的鏡頭邊界。利用這些鏡頭邊界信息,確認子鏡頭。從每個子鏡頭中選出有代表性的視頻幀作為關鍵幀,并通過從子鏡頭中提取出的特征,利用關鍵幀進行對象提取。
本文利用運動信息,計算視頻幀中的運動。進行運動估計時,首先,將視頻幀分割為108個子塊,排列為9×12的陣列。在視頻序列的當前幀和上一個已處理幀之間執行塊匹配運動估計。將當前幀分割為非重疊的方形塊,像素大小為N×N,每個塊在上一幀中均有一個大小為(2W+N+1)×(2W+N+1)的對應搜索區域,其中,W為沿水平和垂直方向的最大像素位移。則對于每個當前塊,尋找搜索區域中與當前塊實現最優匹配的塊。將平均絕對差(MAD)作為匹配準則:
MAD(x,y)=
(1)
式中,Fc(·,·)和Fp(·,·)分別為當前幀和上一幀中的像素強度,(k,l)為當前塊的左上角像素坐標,(x,y)為與當前塊位置相關的像素位移。檢查搜索區域中的每個位置后,將運動向量定為具有MAD最小值(即最小誤差)的(x,y)。
然后,利用圖像塊匹配運動估計方法的搜索(TSS)算法[12],計算出二維運動向量。雖然TSS最初針對搜索窗口相對較小的低速率視頻應用而提出,即限制在W= 7,但可對TSS程序進行擴展,并用于W> 7的情況,其步數也將超過3步。
一般來說,給定W,則需要的步數計算為:
L=[log2(W+1)]
(2)
式中,[x]表示大于或等于x的最小整數。由此,第n步的步長(每步搜索中像素間距)計算為:
ss(n)=2L-n
(3)
從中可發現,TSS在每步中使用均勻分布的搜索模式,由此表現出簡單性和規則性。具體來說,第一步的檢查點數量為9,后續步的檢查點數量為8(排查上一步已檢查過的位置)。W= 7的情況下,TSS的總檢查點數量為25個。由此,與FS的225個檢查點相比,TSS的速度提升了8倍。
最后,將以笛卡爾坐標表示的運動,利用以下公式轉換為極坐標:
(4)
(5)
利用上述公式得到運動的幅度和角度,并用于理解場景的性質,如圖2所示。本文方法中,將該運動信息的復合效應作為特征。利用圖像塊數量、運動信息及圖像塊類型組成特征向量。

圖2 運動估計示例
為了進一步完善運動估計方法,本文算法使用公式(2)和(3)確定所需步數和使用的步長。其創新點在于,將每步分給為兩個階段:1)選擇1個搜索象限;2)在選定象限中找到最小誤差位置。以第n步為例。第一個階段,計算圖3(a)的A、B和C的MAD,其中,A為中心位置,B和C分別為水平方向和垂直方向上與A距離為ss(n)個像素的位置。要指出,從A至B和從A至C的方向與圖3(b)中的方向1和方向7相對應。此外,令MAD(X)表示位置X的MAD,并標注4個象限I,II,III和IV,如圖3(a)所示。確定搜索象限的規則描述如下:

圖3 不同的搜索模式
若MAD(A)≥MAD(B)且MAD(A)≥MAD(C),則選擇I;
若MAD(A)≥MAD(B)且MAD(A) 若MAD(A) 若MAD(A) 實際上,本文方法在每步中采用相同程序,因此保留了TSS所包含的規則性。 表1給出了不同W值下,3個搜索算法的計算復雜度和加速比。從中可發現,所提本文方法比TSS的速度進一步加快了約1倍。這證明了所提方法的有效性和優越性。 表1 搜索算法計算復雜度比較 為理解圖像或視頻中的對象,需要基于分割處理進行對象提取。視覺特征和視頻運動是圖像分割中非常重要的估計。本文使用空間信息和運動信息進行分割。 1.4.1 空間分割 該步驟中對有代表性的視頻幀進行分析,以進行空間分割。由于卡通視頻中包含的陰影較少,所以卡通視頻中的空間分割較為簡單。本文利用水線分割(water segmentation)技術進行空間分割。 1.4.2 時間分割 合并從空間分割和時間分割得到的結果,以提取具有相似的視覺和運動信息的對象。大部分卡通對象中包含不同的顏色區域,將其識別為單獨分割結果。運動特征中包含作為相同對象某一部分的最相似特征。圖4給出了輸入圖像,從中計算出運動向量。對于該視頻幀,利用之前的視頻幀和宏塊(36 * 48 = 1728)估計出運動向量。對于每個宏塊,計算出運動向量。運動向量中,將所有圖像塊的運動均值作為閾值,并將運動幅度超過閾值的宏塊選擇為移動圖像塊。 圖4 輸入圖像示例 圖像分割后,需要從中提取物品和角色。利用水線分割技術在彩色特征上執行基本分割,其后基于運動信息,將分割結果合并為物品和角色。由于基于彩色的分割能夠改善對象邊界,本文所提模型中使用彩色特征和運動特征以提高對象提取性能。 在對象提取后,需要進行物品和角色的識別。在對象識別中,使用歐氏距離方法,利用最小值進行識別[13]。若得到多個結果,則將所有匹配的對象/角色均用于暴力估計。歐氏距離方法的計算過程如下: d(O,F)= (6) 式中,d(O,F)為物品O和知識庫K中的元素之間的歐氏距離;Ofi為場景中物品O的第i個特征;Kfi為知識庫中物品的第i個特征,i= 1, 2,...,n。在與知識庫中的角色進行匹配后,得到3個不同的高級特征,即角色相關的暴力強度,視頻中角色的暴力頻率,以及角色的搞笑性質(用于確定場景中的幽默性)。暴力強度指的是對某個卡通角色可以預期的暴力類型和程度。例如,貓和老鼠中存在許多暴力場景,但大部分場景的暴力程度不高。但在惡魔獵人動畫片中則存在許多嚴重暴力場景[14]。 暴力頻率特征用于確定暴力場景數量。從知識庫中得到暴力頻率信息,利用貝葉斯概率模型,計算出當前場景提取出的信息中包含暴力的概率[15]: (7) 式中,P(x)為當前場景存在暴力元素的概率;P(y)為當前場景中提取出的特征集合在知識庫中的概率;P(y|x)為當前特征集合符合暴力場景的概率。 知識庫是所提系統的核心部件,以半自動的方式創建,其中包含所有常見物品、卡通角色及其視覺特征和行為特征的數據信息。該知識庫給出了物品和角色與暴力之間的關系。利用該信息,計算場景的暴力概率。將知識庫分為兩類,即角色數據庫和物品數據庫。 1.6.1 角色知識庫 知識庫的第一個部分是角色知識庫,包含卡通角色的形態和行為。不斷利用新的動畫角色對該知識庫進行更新。角色知識庫包含角色數據集,其中保存了每個角色的不同圖像。本文基于顏色(色調)直方圖特征,提取出角色(對象)的不同視覺和幾何特征。顏色直方圖是圖像中色彩分布的真實描述。所提方法中在提取色調直方圖特征時,首先從圖像中移除背景。將無背景的輸入圖像轉換為色調通道并計算其直方圖,用于特征提取分析。主要形式的圖像輸入如圖5所示。RGB通道直方圖是圖像檢索中最常用的視覺特征。該階段中,將輸入幀轉換為灰度圖像及其紅、綠、藍通道的直方圖。此外,在物品和角色識別中還有許多重要的基礎視覺特征,如紋理特征。由于使用過濾器提取問題特征,計算成本很高,所以本文使用快速傅立葉變換FFT進行問題特征的提取。 圖5 輸入圖像處理 1.6.2 物品知識庫 知識庫的第二個部分包含常用物品信息,例如玫瑰、槍械、刀具和車輛。該數據庫包含這些物品的視覺、形狀和運動信息物品知識庫包含物品數據集、特征提取、顏色直方圖、RGB通道直方圖、形狀特征和暴力/分暴力物品特征。 另一方面,爆炸性材料(例如炸彈)則更多用在暴力場景中,普通場景中則不多見。為完成場景的暴力分類,識別出場景內的所有物品和角色及其特征,并估計其暴力傾向。場景的暴力概率計算為: (8) 式中,VN表示暴力物品數量;NVN表示非暴力物品數量。 為檢驗所提算法,本文使用3個不同數據集。第一個數據集包含來自20個不同類別的200個物品。第二個數據集包含513個不同圖像幀中的23個不同卡通角色。第三個數據集為暴力和非暴力視頻片段的集合,其中共包含200個視頻片段,暴力視頻和非暴力視頻分別為100個。第三個數據集的數據分布如表2所示。 表2 暴力/非暴力視頻片段分布 大部分暴力場景會在場景的鏡頭和對象中出現高光時刻[16]。此外,“獻血”“爆炸”“火焰”等元素也會增加場景中的暴力概率。本文方法旨在將根據提取出的角色和物品的暴力概率,將場景分類為暴力場景和非暴力場景。使用最小二乘距離,通過提供知識庫提取出的特征(色調、紅綠藍、紋理)和3個主要特征(暴力強度、暴力頻率和搞笑程度)對角色的暴力水平進行評分,結果如圖6所示。 圖6 角色的暴力和非暴力分類 卡通視頻中,物品的暴力/非暴力分類比角色分類的難度要大得多。這是因為物品有著各種不同的形狀類型。為此,實驗首先將視覺特征與最小二乘距離相匹配;然后,將暴力元素與形狀和物品相關聯,即某個物品與特定類型的暴力相關。如刀或鋸條都屬于高暴力程度的物品,但也可用于各種非暴力場景中,如圖7所示。但當卡通圖像中附帶一些文字信息或其他確定性信息時,暴力/非暴力性的檢測會發生一些轉變。一些卡通示例如圖8所示,其中,左邊寫有“氫彈之父”字樣的漫畫,雖然有氫彈爆炸的元素,但可定義為積極且有意義的。右邊的潛艇406表示我國核潛艇的特殊舷號,具有國防教育意義。因此,卡通視頻中的一些確定性信息可以對檢測分類具有直接定性作用。 圖7 物品的暴力和非暴力分類 圖8 一些具有確定性信息的漫畫檢測分類 實驗通過構建混淆矩陣(列聯表)及馬修斯相關系數(MCC)評估所提算法性能,實驗結果如表3所示。 表3 本文方法對3個數據集中物品/角色識別結果 從表3可知,在數據集1和數據集2的物品識別中,根據混淆矩陣,準確率超過97%,取得了較好結果;使用高級測量MCC,結果為75.3%,性能較好。在數據集3的角色識別中,準確度為96%,MCC結果則為58.6%。該指標性能較低的原因是數據集中角色的背景影響。若從中移除背景,能夠顯著提高MCC性能。在第三個數據集中,本文方法的分類準確度為77%,該結果對于基于內容的視頻檢索系統是較為理想的。本文方法中,若概率超過閾值,則可將物品或角色識別為暴力元素,該閾值可根據觀眾的需求而設定。 由于動畫片中暴力類型的多樣性,卡通視頻中的暴力檢測任務難度很大。在卡通視頻和現實視頻中,對象的顏色和視覺特征存在顯著差異,所以現實視頻中有用的低級特征不適用于卡通視頻。但卡通視頻中,大部分情況下動畫角色有著特有的性格和情緒。且為展示一些特效,會使用一些公共特性,例如在戰斗場景中會使用烏云。本文方法利用了這一理念,通過識別出場景中的角色,以用于估計是否存在暴力。本文方法利用不同的角色和對象對暴力概率進行預測,在對象識別中取得了較高準確率,角色識別的準確率相對較低。這是原因是樣本數據集中的背景影響到的識別性能。
1.4 分割

1.5 物品/角色提取和識別
1.6 知識庫

2 實驗結果與分析





3 結束語