一種基于視頻語義的目標(biāo)對象社交關(guān)系識別方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及一種社交關(guān)系識別方法,通過對視頻進行語義分析,識別其中隱含的 社交關(guān)系,屬于圖像處理、社交網(wǎng)絡(luò)、軟件技術(shù)的交叉技術(shù)領(lǐng)域。
【背景技術(shù)】
[0002] 社會媒體是指允許人們撰寫、分享、評價、討論、相互溝通的網(wǎng)站和技術(shù)。它是人們 彼此之間用來分享意見、見解、經(jīng)驗和觀點的工具和平臺,現(xiàn)階段主要包括社交網(wǎng)站、微博、 微信、博客等等。社會媒體是一種云服務(wù),云計算技術(shù)廣泛應(yīng)用與社會媒體本質(zhì)上都是一種 基于云計算的Web應(yīng)用。
[0003] 社交網(wǎng)絡(luò)即社交網(wǎng)絡(luò)服務(wù),隨著社交的悄悄演進一個人在網(wǎng)絡(luò)上的形象更加趨于 完整,這時候社交網(wǎng)絡(luò)出現(xiàn)了。國外主要代表產(chǎn)品有Facebook,Twitter,國內(nèi)主要的代表 有人人網(wǎng),開心網(wǎng),新浪微博等。當(dāng)下社交網(wǎng)絡(luò)的熱點技術(shù)是結(jié)合云計算,電子商務(wù)和情感 感知技術(shù)。社交關(guān)系是指社會交際中的人際關(guān)系,也指社交網(wǎng)絡(luò)中好友之間的關(guān)系。按用 戶之間聯(lián)系及互動頻率,社交關(guān)系分強關(guān)系和弱關(guān)系兩大類。
[0004] 視頻的結(jié)構(gòu)從高往低一般可以分為四個層次:視頻序列、場景、鏡頭、幀。一個視 頻序列一般是指一個單獨的視頻文件,或一個視頻片段。視頻序列由若干個場景組成。每 一個場景包含一個或多個語義相關(guān)的鏡頭,這些鏡頭可以是連續(xù)的或者有間隔的。每個鏡 頭包含若干連續(xù)的圖像幀。視頻語義提取可以分解為對視頻的鏡頭進行分割和對分割后的 鏡頭做圖像語義提取。基于塊的視頻鏡頭分割技術(shù),能夠?qū)?nèi)容相關(guān)的鏡頭分割在一起,然 后再選取關(guān)鏡頭中的鍵幀來代表該鏡頭;圖像語義提取技術(shù)是視頻語義提取的關(guān)鍵步驟之 一,主要包括對目標(biāo)對象的檢測和分類和目標(biāo)對象的語義提取。
[0005] SVM是一種支持向量機的學(xué)習(xí)模型,實質(zhì)上是一個分類器。它在解決小樣本、非線 性及高維模式識別中表現(xiàn)出許多特有的優(yōu)勢。SVM是一種支持向量機的有監(jiān)督的學(xué)習(xí)模型, 通常用來進行模式識別、分類、以及回歸分析。實質(zhì)上是一個分類器。它是針對線性可分割 情況進行分析,對于線性不可分的情況,通過使用非線性映射算法將低維輸入空間線性不 可分的樣本轉(zhuǎn)化為高維特征空間使其線性可分,從而使得高維特征空間采用線性算法對樣 本的非線性特征進行線性分析成為可能。
[0006] XML作為一種可擴展標(biāo)記語言,是一種重要的軟件技術(shù)。它能夠以一種靈活的方 式管理信息的結(jié)構(gòu),用不同的結(jié)點層次描述信息本身具有的結(jié)構(gòu)關(guān)系。dom4j是dom4j. org 出品的一個開源XML解析包,用戶可以運用dom4j技術(shù)來讀寫XML文件的各個結(jié)點內(nèi)容。
[0007] 本發(fā)明利用視頻處理、SVM、XML等技術(shù)解決目標(biāo)對象社交關(guān)系識別問題。
【發(fā)明內(nèi)容】
[0008] 技術(shù)問題:本發(fā)明的目的是提供一種基于視頻語義的目標(biāo)對象社交關(guān)系識別方 法,社會媒體資源蘊含著豐富的語義信息,其中視頻是獲得社交語義的重要來源,但當(dāng)前主 要依靠人來識別和標(biāo)識相關(guān)社交語義,缺乏有效的技術(shù)通過軟件分析語義信息來發(fā)掘視頻 中目標(biāo)對象所蘊含的社交關(guān)系,本發(fā)明的目的是解決這個問題。
[0009] 技術(shù)方案:本發(fā)明首先對視頻數(shù)據(jù)進行預(yù)處理,將視頻數(shù)據(jù)分割成一系列的鏡頭, 獲取鏡頭中目標(biāo)對象的語義集;然后,再按照鏡頭的內(nèi)容和時序關(guān)系將相關(guān)的鏡頭構(gòu)成語 義序列,形成特定的場景;最后,通過分析場景的語義信息來挖掘目標(biāo)對象之間的社交關(guān) 系。
[0010] 本發(fā)明提出的基于視頻語義的目標(biāo)對象社交關(guān)系識別方法包含以下步驟:
[0011] 步驟1)首先對用戶輸入的視頻數(shù)據(jù)進行預(yù)處理,具體處理流程如下:
[0012] 步驟1. 1)利用基于塊的比較方法對視頻數(shù)據(jù)進行分割,獲取該視頻數(shù)據(jù)的鏡頭, 所述基于塊的比較方法是將視頻數(shù)據(jù)每一幀的圖像劃分成用戶指定數(shù)量的區(qū)域塊,通過比 較連續(xù)幀之間的區(qū)域塊的相似性劃分出不同的鏡頭,其中幀是視頻數(shù)據(jù)的最小單位即一幀 圖像,鏡頭是視頻中一組連續(xù)的幀序列,所述區(qū)域塊的相似性的特征和具體標(biāo)準(zhǔn)由用戶指 定,同一個鏡頭的連續(xù)幀之間的區(qū)域塊具有相似性;
[0013] 步驟1. 2)依次從每一個鏡頭中提取處于該鏡頭幀序列中間位置的那一幀作為關(guān) 鍵幀,該關(guān)鍵幀在后續(xù)處理中代表該鏡頭;
[0014] 步驟2)提取所有關(guān)鍵幀中用戶指定的目標(biāo)對象的語義集,將語義集轉(zhuǎn)換成鍵值 對的形式保存到XML格式的文件中;所述目標(biāo)對象包含背景對象和前景對象兩類,前景對 象是人物對象,背景對象是人物所處的地點、時間信息;所述語義集是視頻中目標(biāo)對象提取 出來的語義信息的集合,包含背景、時間、對話、人物、顏色、形狀、紋理的語義;所述的XML 格式的文件包含3層嵌套結(jié)點,第一層是場景結(jié)點,用〈scene〉標(biāo)簽標(biāo)示,所述的場景是指 按照鏡頭的語義信息和鏡頭之間的時序關(guān)系組成的一組鏡頭序列;第二層是鏡頭結(jié)點,用 〈short〉標(biāo)簽標(biāo)示;第三層是具體語義結(jié)點,用〈key〉標(biāo)簽標(biāo)示;提取每一個關(guān)鍵幀中用戶 指定的目標(biāo)對象的語義集的具體處理流程如下:
[0015] 步驟2. 1)對關(guān)鍵幀進行目標(biāo)對象的檢測和分類,提取出該關(guān)鍵幀包含的所有目 標(biāo)對象,同時記錄該關(guān)鍵幀中人物之間的對話信息和該關(guān)鍵幀位于視頻中的播放的時間 占 .
[0016] 步驟2. 2)提取關(guān)鍵幀所有前景和背景對象的視覺特征,構(gòu)成相應(yīng)的特征向量,所 述背景對象的視覺特征包括顏色、紋理;前景對象的視覺特征包括顏色、紋理、形狀;
[0017] 步驟2. 3)用SVM對關(guān)鍵幀中目標(biāo)對象的特征向量進行學(xué)習(xí),提取出前景對象和背 景對象的語義信息;所述前景對象的語義信息是前景對象的視覺行為表現(xiàn)的語義信息,包 括顏色、形狀、紋理、人物、對話;所述背景對象取的語義信息是背景對象所處的環(huán)境語義信 息,包括背景、時間,所述SVM是一種有監(jiān)督的學(xué)習(xí)模型;
[0018] 步驟2. 4)將獲取的關(guān)鍵幀的前景對象和背景對象的語義信息,按照鍵值對的形 式保存到XML文件的鏡頭結(jié)點下;
[0019] 步驟3)解析步驟2)得到的每一個鏡頭的結(jié)點下時間和人物所對應(yīng)的語義結(jié)點, 把擁有相同的人物語義結(jié)點的鏡頭結(jié)點歸為一組鏡頭結(jié)點;所述的人物語義結(jié)點就是XML 文件中〈short〉結(jié)點下〈key〉結(jié)點中名稱屬性為人物的那一個鍵值對;
[0020] 步驟4)將已分類好的每組鏡頭結(jié)點的數(shù)據(jù)按照名稱為時間結(jié)點的結(jié)點值的遞增 順序保存到XML文件的場景結(jié)點下,依次構(gòu)造出鏡頭語義序列,代表一個個場景;
[0021] 步驟5)依次解析XML文件中每一個場景結(jié)點,分析其包含的所有的語義信息,得 到人物之間的關(guān)系和人物的語義信息,將每個場景的這些信息依次保存到一個個矩陣中, 這些矩陣的每一行或每一列的元素存儲一個人物與其他人物之間的關(guān)系以及該人物的語 義信息,每一個人物在一個矩陣中的行號或列號由用戶指定;所述的場景語義信息包括人 物之間的社交關(guān)系和人物的語義信息,其中將人物的社交關(guān)系和人物的語義信息保存到一 個矩陣的具體處理流程如下:
[0022] 步驟5. 1)抽取XML文件中場景結(jié)點下的所有鏡頭結(jié)點中的語義結(jié)點,得到該場景 所有的語義信息;
[0023] 步驟5. 2)從得到場景所有的語義信息中找出人物的語義信息,依此建立一個矩 陣,矩陣中除對角線元素以外,當(dāng)一行元素的行號與一列元素列號相同,這一行元素和一列 元素代表同一個人物的社交關(guān)系,對角線的元素保存該人物的語義信息;所述對角線的元 素的行號和列號相同;
[0024] 步驟5. 3)對場景對應(yīng)矩陣的元素進行賦值,從步驟5. 1)得到的所有的語義信息, 抽取人物之間的社交關(guān)系和人物的語義信息,再依次用集合HashMap保存人物的社交關(guān)系 和語義信息,將集合賦值給矩陣的對應(yīng)位置的元素;所述的集合HashMap是一個用來存放 鍵值對的數(shù)據(jù)集合;
[0025] 步驟6)根據(jù)所有代表場景語義的矩陣獲得一個代表視頻語義信息的矩陣;該矩 陣保存視頻中所有人物的語義信息和社交關(guān)系,矩陣的每一行或每一列的元素存儲一個人 物與其他人物之間的關(guān)系以及該人物的語義信息,每一個人物在一個矩陣中