唐昱潤(rùn) 宮法明 李 昕
(中國(guó)石油大學(xué)(華東)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 青島 266580)
網(wǎng)絡(luò)中色情信息傳播迅速且易于訪問(wèn),從而激發(fā)了自動(dòng)檢測(cè)色情影像方法的發(fā)展。防止不良信息通過(guò)互聯(lián)網(wǎng)滲入青少年視野、毒蝕未成年的身心健康,達(dá)到凈化網(wǎng)絡(luò)、營(yíng)造安全綠色的網(wǎng)絡(luò)環(huán)境的目的。但是,由于色情的主觀性和不確定性,自動(dòng)識(shí)別色情信息任務(wù)比其他分類問(wèn)題面臨更大的挑戰(zhàn)。
色情檢測(cè)最初的工作是將色情與裸露聯(lián)系在一起,試圖通過(guò)識(shí)別出裸露或衣冠不整的人[1~7]以進(jìn)行色情的判定。在此類方法中,人體皮膚的檢測(cè)起了主要作用,其次是身體部位的識(shí)別。然而,通過(guò)皮膚的裸露來(lái)判別是否色情并不是一個(gè)有效的解決方案。非色情的情況下,仍可能存在大量暴露身體的情況。相反,有些色情場(chǎng)面僅涉及很少的裸露皮膚。且現(xiàn)如今的影視作品常常刻意避免出現(xiàn)大面積裸露的情況,取而代之的是出現(xiàn)在敏感部位的扭動(dòng)、撫摸等性暗示動(dòng)作,增加了色情檢測(cè)的難度。
針對(duì)視頻中并未出現(xiàn)膚色裸露但仍含有色情信息的問(wèn)題,本文提出一種基于人體關(guān)鍵點(diǎn)的色情信息檢測(cè)算法。首先通過(guò)人體姿態(tài)估計(jì)算法實(shí)現(xiàn)人體關(guān)鍵點(diǎn)的檢測(cè),再將坐標(biāo)轉(zhuǎn)化為以人為中心的坐標(biāo)系,從而消去因拍攝角度或距離及人體自身差異性產(chǎn)生的影響,然后為每個(gè)關(guān)鍵點(diǎn)所屬肢體構(gòu)建一個(gè)2D 矢量場(chǎng),將其兩個(gè)相關(guān)的身體部位連接在一起提取人體輪廓。再通過(guò)觀察色情幀中關(guān)鍵點(diǎn)的運(yùn)動(dòng)情況來(lái)獲取可能發(fā)生色情的敏感區(qū)域,最后為了有效利用視頻中的信息,本文設(shè)計(jì)了兩種附加時(shí)空姿勢(shì)特征進(jìn)一步提升色情信息檢測(cè)的準(zhǔn)確率。
現(xiàn)有文獻(xiàn)通常將色情檢測(cè)與皮膚特征緊密聯(lián)系[8~12]。然而膚色容易受光照影響,對(duì)于復(fù)雜紋理的色情圖像通過(guò)單純的膚色檢測(cè)很難有高準(zhǔn)確率,且對(duì)于含有大量膚色像素的非色情圖像容易出現(xiàn)誤判。將膚色作為色情圖像的判別標(biāo)準(zhǔn)單一且不可靠,具有一定的局限性。
因此出現(xiàn)了一些基于高層語(yǔ)義實(shí)現(xiàn)色情圖像識(shí)別的方法。Deselaers 等[13]首次提出將色情內(nèi)容檢測(cè)作為計(jì)算機(jī)視覺(jué)分類問(wèn)題,而不是皮膚檢測(cè)或分割問(wèn)題。2017 年凡阿杰提出級(jí)聯(lián)檢測(cè)思想,逐級(jí)檢測(cè)出人臉以及膚色區(qū)域算出膚色最大連通區(qū)域,結(jié)合女性敏感部位的紋理特征、膚色特征以及LBP 算子運(yùn)用AdaBoost 模型訓(xùn)練出敏感部位分類器。實(shí)驗(yàn)結(jié)果表明,他們的方法明顯優(yōu)于以前的方法,但仍舊存在基于皮膚檢測(cè)過(guò)濾器的缺點(diǎn)。
Moustaf 首次提出通過(guò)深度神經(jīng)網(wǎng)絡(luò)進(jìn)行色情檢測(cè)的方法。該方法需要微調(diào)兩個(gè)不同的ConvNet,直接在選定的幀上構(gòu)建結(jié)構(gòu),以將它們分類為色情或非色情內(nèi)容,并通過(guò)多數(shù)投票過(guò)程將視頻的最終結(jié)果整合在一起。
Jonatas 等[14]提出ACORDE 模型,使用卷積神經(jīng)網(wǎng)絡(luò)對(duì)NPDI 數(shù)據(jù)集關(guān)鍵幀圖像進(jìn)行特征提取,最后使用長(zhǎng)短期記憶網(wǎng)絡(luò)對(duì)提取的特征進(jìn)行分類。在這類方法中,依舊沒(méi)有探索視頻中提供的運(yùn)動(dòng)信息,色情檢測(cè)的準(zhǔn)確率并未出現(xiàn)顯著性的提升,也難以解決本文中提到的擬解決的并未出現(xiàn)膚色裸露但仍存在色情信息的問(wèn)題。
本章將介紹所提出的色情信息檢測(cè)框架,如圖1 所示。首先,使用2D 骨架模型來(lái)檢測(cè)人體關(guān)鍵點(diǎn)。然后,利用這些關(guān)鍵點(diǎn)信息追蹤同一關(guān)鍵點(diǎn)在每對(duì)連續(xù)幀之間的距離和角度的變化以提取每個(gè)關(guān)鍵點(diǎn)的運(yùn)動(dòng)軌跡。之后,利用關(guān)鍵點(diǎn)信息提取出人體輪廓并劃分出可能發(fā)生色情信息的敏感區(qū)域。最后,通過(guò)處理視頻中的運(yùn)動(dòng)特征從而實(shí)現(xiàn)色情信息檢測(cè)。
圖1 基于人體關(guān)鍵點(diǎn)的色情信息檢測(cè)框架
為了減少視頻背景、服裝以及膚色裸露等因素對(duì)視頻中色情信息檢測(cè)的影響。從人體本身出發(fā),通過(guò)引入姿勢(shì)特征密切關(guān)注人體關(guān)鍵點(diǎn)運(yùn)動(dòng)軌跡,從根源解決色情檢測(cè)問(wèn)題。
為了使本文提出的方法不受拍攝角度或距離及人體自身差異性影響。去噪后,將髖關(guān)節(jié)中心放在原點(diǎn)第一幀,然后把每個(gè)關(guān)節(jié)的3D 坐標(biāo)從世界坐標(biāo)系轉(zhuǎn)換為以人為中心的坐標(biāo)系。通過(guò)從動(dòng)作序列中每個(gè)關(guān)節(jié)坐標(biāo)中減去第一幀髖關(guān)節(jié)中心的坐標(biāo)實(shí)現(xiàn),如式(1)所示。
其中,fpose是單幀檢測(cè)到的17 個(gè)關(guān)鍵點(diǎn)的二維矩陣,p是1×2 向量,代表第一幀中髖關(guān)節(jié)中心的坐標(biāo),α是1×17 向量,B是2×2 矩陣,即17 個(gè)2×2 單位矩陣的水平級(jí)聯(lián)。
色情影像在背景、照明以及人物姿勢(shì)等方面存在著巨大的類內(nèi)差異,且色情內(nèi)容通常僅占據(jù)圖像較小的局部區(qū)域,而復(fù)雜混亂的背景會(huì)占據(jù)圖像的很大一部分,容易導(dǎo)致誤報(bào)且增加了計(jì)算量。為了使本文的方法能夠滿足時(shí)效性以及魯棒性,本文將摒棄對(duì)判定結(jié)果沒(méi)有正向反饋的視頻背景,將注意力集中在目標(biāo)人物上。因此,本文采取了人體輪廓提取以及區(qū)域標(biāo)記等方法,再以敏感區(qū)域是否存在頻繁動(dòng)作或是往復(fù)運(yùn)動(dòng)為依據(jù)實(shí)現(xiàn)色情信息檢測(cè)。
3.2.1 人體輪廓提取
通過(guò)人體關(guān)鍵點(diǎn)構(gòu)造人體輪廓,首先需要有效正確的將各個(gè)關(guān)鍵點(diǎn)連接起來(lái)形成人體骨架。因此需要對(duì)每對(duì)關(guān)鍵點(diǎn)都設(shè)有關(guān)聯(lián)性的置信度,記錄每個(gè)關(guān)鍵點(diǎn)所屬肢體區(qū)域位置和方向信息,對(duì)于屬于特定肢體的區(qū)域中的每個(gè)像素,一個(gè)2D 矢量編碼是肢體一個(gè)部位指向另一部位的方向。每種肢體都有一個(gè)對(duì)應(yīng)的親和力場(chǎng),將兩個(gè)相關(guān)的身體部位連接在一起。
計(jì)算機(jī)視覺(jué)[15~16]方面的最新研究表明,ResNet[17]能夠?yàn)橄袼仡A(yù)測(cè)任務(wù)提供更好的功能。因此,本文采用ResNet 來(lái)構(gòu)建分割網(wǎng)絡(luò)。將原始ResNet 的全連接層刪去,此外保留7*7卷積層和3*3池化層,進(jìn)而擴(kuò)大特征表示。然后是幾個(gè)標(biāo)準(zhǔn)殘差單元,以滿足感興趣區(qū)域的接受范圍。到目前為止,輸出特征圖僅是其原始輸入圖像的分辨率的1/32。為了獲得所需的全分辨率輸出,自適應(yīng)地將通道數(shù)壓縮到標(biāo)簽數(shù),利用升采樣操作將采樣升采樣回輸入圖像的空間分辨率。然后,使用另一個(gè)殘差單元以及1*1卷積層來(lái)預(yù)測(cè)最終結(jié)果。
3.2.2 敏感區(qū)域定義
為了有效利用提取的人體關(guān)鍵點(diǎn)在人體輪廓中的運(yùn)動(dòng)軌跡來(lái)判別視頻中是否含有色情內(nèi)容。本文將肖特[18]等提出的“任何旨在引起喚起性的明確性行為”這一定義用于本文工作。盡管仍是主觀的,但它建立了一套標(biāo)準(zhǔn)。通過(guò)在Pornography-2k數(shù)據(jù)集上進(jìn)行大量的實(shí)驗(yàn),得出了本文對(duì)色情的定義-凡是在敏感區(qū)域發(fā)生頻繁的動(dòng)作或往復(fù)運(yùn)動(dòng)都有可能是色情信息。通過(guò)觀察色情幀人體關(guān)鍵點(diǎn)的運(yùn)動(dòng)軌跡及產(chǎn)生色情信息時(shí)關(guān)鍵點(diǎn)所在區(qū)域,而不僅僅是關(guān)鍵點(diǎn)坐標(biāo)??紤]到人本身的差異性,本文通過(guò)計(jì)算可能發(fā)生色情信息的區(qū)域(如胸部)的面積與該目標(biāo)人體輪廓聯(lián)通區(qū)域占比,計(jì)算出所有實(shí)驗(yàn)的占比情況并對(duì)其求平均值、極值、標(biāo)準(zhǔn)差。為了更準(zhǔn)確描述敏感區(qū)域,本文還將計(jì)算每個(gè)敏感區(qū)域重心以及該位置與當(dāng)前距離最近的人體關(guān)鍵點(diǎn)之間距離、角度以及dx、dy 偏移量。通過(guò)描述可能發(fā)生色情信息的位置及范圍,有效定義了人體敏感區(qū)域,在接下來(lái)的工作中僅需要觀察所有人體敏感區(qū)域當(dāng)中發(fā)生的動(dòng)作方向、次數(shù)以及范圍,再通過(guò)加入先驗(yàn)知識(shí)的SVM 分類器實(shí)現(xiàn)色情信息的檢測(cè)。
本文旨在從人體骨骼序列運(yùn)動(dòng)特征出發(fā),忽略外部環(huán)境等影響從根源上解決色情內(nèi)容檢測(cè)問(wèn)題。因此,必須為視頻中的每個(gè)圖像中所出現(xiàn)的人物檢測(cè)關(guān)鍵點(diǎn),對(duì)于包含人的每個(gè)圖像將產(chǎn)生一組關(guān)鍵點(diǎn)。通過(guò)時(shí)空計(jì)算在視頻的每個(gè)時(shí)刻生成人體各個(gè)部分的所有位置。現(xiàn)在,可以使用關(guān)鍵點(diǎn)的運(yùn)動(dòng)特征來(lái)檢測(cè)人員是否發(fā)生了色情信息。為了有效利用視頻中的信息,本文設(shè)計(jì)了二種附加的時(shí)空姿勢(shì)特征:1)關(guān)節(jié)角度,某些關(guān)節(jié)的角度發(fā)生變化;2)肢體間距離,肢體間距離的變化;此外,可以結(jié)合使用這兩種方法來(lái)提高性能。本文為包含人物的每幅圖像檢測(cè)17 個(gè)關(guān)鍵點(diǎn)。因此定義一個(gè)尺寸為17*2 的矩陣來(lái)存儲(chǔ)關(guān)鍵點(diǎn)在圖像中的位置。另一方面,為了計(jì)算視頻中人物骨骼的變化,本文用能夠代表兩個(gè)連續(xù)圖像的矩陣(17*2)之間的距離當(dāng)作關(guān)鍵點(diǎn)之間的距離,如式(2)和式(3)所示。
其中Ii和Ii+1是關(guān)鍵點(diǎn)的兩個(gè)連續(xù)矩陣。
另一方面,本文還使用連續(xù)幀中相同關(guān)鍵點(diǎn)之間的角度變化來(lái)計(jì)算肢體的運(yùn)動(dòng)方向。在第一步中,為視頻中的每個(gè)幀計(jì)算骨架的關(guān)鍵點(diǎn),如式(4)和式(5)所示。
在計(jì)算兩個(gè)連續(xù)幀中每個(gè)關(guān)鍵點(diǎn)之間的距離和角度之后,得到兩個(gè)矩陣M1和M2。第一個(gè)代表距離,第二個(gè)代表角度。再通過(guò)相鄰幀之間矩陣差異體現(xiàn)關(guān)節(jié)運(yùn)動(dòng),如式(6)所示。
由于特征是逐幀提取的,并且是序列數(shù)據(jù),因此采用諸RNN[19]和LSTM[20]之類的序列數(shù)據(jù)方法是合理的,如圖2所示。
對(duì)于基于人體關(guān)鍵點(diǎn)序列運(yùn)動(dòng)特征是否出現(xiàn)在人體敏感區(qū)域來(lái)進(jìn)行色情內(nèi)容判別,至關(guān)重要的是減少類內(nèi)差異并擴(kuò)大類間差異。因此,采用多損失策略來(lái)優(yōu)化網(wǎng)絡(luò),如式(7)和式(8)所示。Softmax 損失可以將輸入分為不同的類別進(jìn)而擴(kuò)大類間差異。中心損失可以通過(guò)最小化類內(nèi)差異使不同類的特征分離。如式(9)所示,將兩個(gè)損失合并。
其中xi∈Rd是對(duì)應(yīng)于y 類的第i 個(gè)特征,d、W∈Rd×n和b∈Rd分別表示特征維,最后連接層和偏置項(xiàng),而Cyi∈Rd是yi類的中心深層特征。在本文實(shí)驗(yàn)中,λ為0.008時(shí)效果最佳。
本文通過(guò)計(jì)算每個(gè)部位的運(yùn)動(dòng)特征以及每?jī)蓚€(gè)連續(xù)關(guān)鍵點(diǎn)之間的距離和角度。之后將使用這些功能判別視頻中是否含有色情信息。在本節(jié)中將展示本文所提出方法的性能,還將介紹應(yīng)用于Pornography-2k數(shù)據(jù)集上的結(jié)果。
擬議方法的重點(diǎn)是將整個(gè)視頻分類為色情或非色情。視頻是幀的集合,將所有幀全部用于視頻分類需要大量的計(jì)算工作。但通過(guò)幀采樣可以使此實(shí)驗(yàn)更易于管理,并且對(duì)于所提出的不同方法之間的比較仍然保持一致的有效性。根據(jù)這一既定要求,本文選擇使用每秒一幀(1fps)的幀采樣率并提取其中的運(yùn)動(dòng)信息。
圖3 中展示了連續(xù)幀中相同關(guān)鍵點(diǎn)之間距離變化。本文選用的含有色情信息的視頻。然后,通過(guò)計(jì)算每個(gè)幀中人物的關(guān)鍵點(diǎn),并對(duì)敏感區(qū)域進(jìn)行提取。之后,計(jì)算兩個(gè)連續(xù)幀中相同敏感區(qū)域內(nèi)其他關(guān)鍵點(diǎn)與該敏感區(qū)域重心距離的變化。因此,生成一個(gè)包含每個(gè)關(guān)鍵點(diǎn)距離的矢量,例如,本文計(jì)算了13 個(gè)矢量。之后將這些向量顯示為圖表,以顯示距離的變化。另一方面,本文發(fā)現(xiàn),時(shí)間上的距離變化不是很大。圖4 展示了連續(xù)幀中兩個(gè)敏感區(qū)域(左胸部,右胸部)內(nèi)手部位置與敏感區(qū)域重心距離的變化。
圖3 關(guān)鍵點(diǎn)間距離矢量變化
圖4 關(guān)鍵點(diǎn)與敏感區(qū)域間距離矢量變化
為了減輕特征提取負(fù)擔(dān),并使特征具有更大的判別力,設(shè)計(jì)制作時(shí)空姿勢(shì)特征。為了證明制作特征的有效性以及本文方法的可行性,設(shè)計(jì)5 組實(shí)驗(yàn)與Pornography-2k 上現(xiàn)有的方法做比較并分別評(píng)估fpose、fAngle、fDistance和fmotion的有效性,如表1 所示。實(shí)驗(yàn)表明通過(guò)結(jié)合所有這些特征,可以明顯提高性能,且優(yōu)于其他三組對(duì)比實(shí)驗(yàn)。這意味著本文方法的可行性以及手工制作的特征可以明顯提高識(shí)別率。
表1 各方法在Pornography-2k中的準(zhǔn)確率%
本文針對(duì)視頻中并未出現(xiàn)膚色裸露但仍含有色情信息的問(wèn)題,利用人體關(guān)鍵點(diǎn)提取、人體分割和時(shí)空特征融合等技術(shù),提出了一種基于人體關(guān)鍵點(diǎn)的色情信息檢測(cè)方法。據(jù)調(diào)查,本文首次提出通過(guò)觀察敏感區(qū)域內(nèi)關(guān)鍵點(diǎn)運(yùn)動(dòng)特征實(shí)現(xiàn)色情檢測(cè)框架,并在Pornography-2k 色情數(shù)據(jù)集中進(jìn)行了多次實(shí)驗(yàn),以驗(yàn)證方法的可行性。
本文提出的方法旨在解決并未出現(xiàn)膚色裸露但仍含有色情信息的問(wèn)題,僅通人體關(guān)鍵點(diǎn)的時(shí)動(dòng)特征進(jìn)行研究,雖然可以有效地解決這一問(wèn)題。但是對(duì)于色情的另一特征-裸露并未開展有效的工作。作為未來(lái)的工作,打算結(jié)合人體膚色裸露情況展開研究,通過(guò)結(jié)合以上兩種不同的特征,進(jìn)一步提升色情信息的準(zhǔn)確度和適用性。