本申請涉及互聯(lián)網(wǎng)技術(shù)領(lǐng)域,特別涉及一種彈幕內(nèi)容的發(fā)送方法及客戶端。
背景技術(shù):
隨著彈幕(barrage)技術(shù)的不斷發(fā)展,越來越多的視頻中都加入了發(fā)表彈幕的功能。當(dāng)前,用戶在發(fā)表彈幕時,通常會在彈幕輸入框內(nèi)輸入相應(yīng)的彈幕內(nèi)容,然后可以點(diǎn)擊“發(fā)表”按鍵。這樣,用戶客戶端便會將彈幕內(nèi)容發(fā)送至播放視頻的服務(wù)器。服務(wù)器在接收到該彈幕內(nèi)容時,可以將該彈幕內(nèi)容與該用戶當(dāng)前觀看的視頻進(jìn)行關(guān)聯(lián),從而可以向觀看該視頻的用戶推送對應(yīng)的彈幕內(nèi)容。
由上可見,當(dāng)前在發(fā)表彈幕內(nèi)容時,通常需要用戶手動輸入相關(guān)信息。如果輸入的信息較長,當(dāng)用戶點(diǎn)擊發(fā)表彈幕內(nèi)容時,有時候會使得彈幕內(nèi)容與當(dāng)前視頻的播放內(nèi)容不相符。因此,當(dāng)前需要一種更加便捷的彈幕內(nèi)容發(fā)送方法。
技術(shù)實(shí)現(xiàn)要素:
本申請實(shí)施方式的目的是提供一種彈幕內(nèi)容的發(fā)送方法及客戶端,能夠提高發(fā)送彈幕內(nèi)容的效率。
為實(shí)現(xiàn)上述目的,本申請實(shí)施方式提供一種彈幕內(nèi)容的發(fā)送方法,所述方法包括:獲取針對指定多媒體資源的目標(biāo)圖像,所述目標(biāo)圖像用于表征用戶在觀看所述指定多媒體資源時的面部表情;基于所述目標(biāo)圖像,確定與所述目標(biāo)圖像相匹配的彈幕圖標(biāo);將包含所述彈幕圖標(biāo)的彈幕內(nèi)容發(fā)送至服務(wù)器,以使得所述服務(wù)器向當(dāng)前播放所述指定多媒體資源的用戶客戶端推送所述彈幕圖標(biāo)。
為實(shí)現(xiàn)上述目的,本申請實(shí)施方式還提供一種客戶端,所述客戶端包括:目標(biāo)圖像獲取單元,用于獲取針對指定多媒體資源的目標(biāo)圖像,所述目標(biāo)圖像用于表征用戶在觀看所述指定多媒體資源時的面部表情;彈幕圖標(biāo)匹配單元,用于基于所述目標(biāo)圖像,確定與所述目標(biāo)圖像相匹配的彈幕圖標(biāo);彈幕內(nèi)容發(fā)送單元,用于將包含所述彈幕圖標(biāo)的彈幕內(nèi)容發(fā)送至服務(wù)器,以使得所述服務(wù)器向當(dāng)前播放所述指定多媒體資源的用戶客戶端推送所述彈幕圖標(biāo)。
為實(shí)現(xiàn)上述目的,本申請實(shí)施方式還提供一種彈幕內(nèi)容的發(fā)送方法,所述方法包括:獲取針對指定多媒體資源的目標(biāo)圖像,所述目標(biāo)圖像用于表征用戶在觀看所述指定多媒體資源時的面部表情;基于所述目標(biāo)圖像,生成包含所述目標(biāo)圖像的圖像集合;將包含所述圖像集合的彈幕內(nèi)容發(fā)送至服務(wù)器,以使得所述服務(wù)器向當(dāng)前播放所述指定多媒體資源的用戶客戶端推送所述圖像集合。
為實(shí)現(xiàn)上述目的,本申請實(shí)施方式還提供一種客戶端,所述客戶端包括:目標(biāo)圖像獲取單元,用于獲取針對指定多媒體資源的目標(biāo)圖像,所述目標(biāo)圖像用于表征用戶在觀看所述指定多媒體資源時的面部表情;圖像集合生成單元,用于基于所述目標(biāo)圖像,生成包含所述目標(biāo)圖像的圖像集合;彈幕內(nèi)容發(fā)送單元,用于將包含所述圖像集合的彈幕內(nèi)容發(fā)送至服務(wù)器,以使得所述服務(wù)器向當(dāng)前播放所述指定多媒體資源的用戶客戶端推送所述圖像集合。
以上可見,本申請?zhí)峁┑募夹g(shù)方案,可以檢測用戶在觀看多媒體資源時的面部表情,并且可以基于用戶的面部表情,自動生成對應(yīng)的彈幕圖標(biāo)或者圖像集合,所述彈幕圖標(biāo)和圖像集合均可以作為用于表征用戶當(dāng)前面部表情的彈幕內(nèi)容。在生成與用戶的面部表情相符的彈幕內(nèi)容時,用戶客戶端便可以將該彈幕內(nèi)容發(fā)送至服務(wù)器,以使得在當(dāng)前播放該多媒體資源的用戶客戶端上可以展示該彈幕內(nèi)容。因此,本申請?zhí)峁┑募夹g(shù)方案,能夠在無需用戶手動輸入信息的情況下,自動發(fā)送與用戶的面部表情相符的彈幕內(nèi)容,不僅能夠提高發(fā)送彈幕內(nèi)容的效率,還能更加準(zhǔn)確地表達(dá)用戶此時的心情。
附圖說明
為了更清楚地說明本申請實(shí)施方式或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施方式或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請中記載的一些實(shí)施方式,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本申請實(shí)施方式中彈幕內(nèi)容的發(fā)送方法流程圖;
圖2為本申請實(shí)施方式中目標(biāo)圖像的確定示意圖;
圖3為實(shí)際應(yīng)用場景中彈幕圖標(biāo)的生成示意圖;
圖4為本申請實(shí)施方式中客戶端的結(jié)構(gòu)示意圖;
圖5為本申請實(shí)施方式中彈幕內(nèi)容的發(fā)送方法流程圖;
圖6為本申請實(shí)施方式中圖像集合的構(gòu)成示意圖;
圖7為本申請實(shí)施方式中圖像集合的生成示意圖;
圖8為本申請實(shí)施方式中客戶端的結(jié)構(gòu)示意圖。
具體實(shí)施方式
為了使本技術(shù)領(lǐng)域的人員更好地理解本申請中的技術(shù)方案,下面將結(jié)合本申請實(shí)施方式中的附圖,對本申請實(shí)施方式中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施方式僅僅是本申請一部分實(shí)施方式,而不是全部的實(shí)施方式。基于本申請中的實(shí)施方式,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施方式,都應(yīng)當(dāng)屬于本申請保護(hù)的范圍。
本申請實(shí)施方式提供一種彈幕內(nèi)容的發(fā)送方法,所述彈幕內(nèi)容的發(fā)送方法可以應(yīng)用于服務(wù)器和客戶端的系統(tǒng)架構(gòu)中。所述服務(wù)器可以是能夠提供視頻服務(wù)的網(wǎng)站的服務(wù)器。所述網(wǎng)站例如可以是愛奇藝、搜狐視頻、acfun等視頻點(diǎn)播網(wǎng)站,還可以是例如斗魚、戰(zhàn)旗、虎牙等視頻直播網(wǎng)站。在本實(shí)施方式中,所述服務(wù)器可以為一個具有數(shù)據(jù)運(yùn)算、存儲功能以及網(wǎng)絡(luò)交互功能的電子設(shè)備;也可以為運(yùn)行于該電子設(shè)備中,為數(shù)據(jù)處理、存儲和網(wǎng)絡(luò)交互提供支持的軟件。在本實(shí)施方式中并不具體限定所述服務(wù)器的數(shù)量。所述服務(wù)器可以為一個服務(wù)器,還可以為幾個服務(wù)器,或者,若干服務(wù)器形成的服務(wù)器集群。
在本實(shí)施方式中,所述客戶端可以是具備視頻播放功能和圖像檢測功能的電子設(shè)備。具體地,所述客戶端例如可以是帶有攝像功能的臺式電腦、平板電腦、筆記本電腦、智能手機(jī)、數(shù)字助理、智能可穿戴設(shè)備、導(dǎo)購終端、智能電視機(jī)等。或者,所述客戶端也可以為能夠運(yùn)行于上述電子設(shè)備中的軟件。具體的,所述客戶端可以是視頻網(wǎng)站平臺提供的在智能終端中運(yùn)行的應(yīng)用。所述應(yīng)用例如可以是手機(jī)愛奇藝、手機(jī)搜狐視頻、手機(jī)acfun、手機(jī)虎牙、手機(jī)斗魚等。
本申請實(shí)施方式提供一種彈幕內(nèi)容的發(fā)送方法,所述方法的執(zhí)行主體可以是客戶端。請參閱圖1,所述方法可以包括以下步驟。
s11:獲取針對指定多媒體資源的目標(biāo)圖像,所述目標(biāo)圖像用于表征用戶在觀看所述指定多媒體資源時的面部表情。
在本實(shí)施方式中,所述指定多媒體資源可以是用戶通過客戶端當(dāng)前正在觀賞的視頻、圖像、音頻等資源,還可以是用戶通過客戶端當(dāng)前正在玩的游戲的畫面。
在本實(shí)施方式中,客戶端在播放所述指定多媒體資源時,可以通過攝像設(shè)備檢測用戶的面部表情。當(dāng)用戶的面部表情變化較大時,便可以獲取用于表征用戶面部表情的目標(biāo)圖像。具體地,獲取所述目標(biāo)圖像的方法可以包括通過攝像設(shè)備拍攝用戶當(dāng)前的面部表情,并將包含該面部表情的圖像作為所述目標(biāo)圖像。此外,獲取所述目標(biāo)圖像的方法還可以包括從錄制的視頻流中,將用戶的面部表情變化較大的圖像截取出來,以作為所述目標(biāo)圖像。
在本實(shí)施方式中,所述目標(biāo)圖像是在用戶觀看指定多媒體資源時獲取的,因此,所述目標(biāo)圖像便可以是針對所述指定多媒體資源獲取的。其中,針對指定多媒體資源可以指,所述目標(biāo)圖像在生成時,或者后續(xù)根據(jù)該目標(biāo)圖像處理得到彈幕內(nèi)容時,該目標(biāo)圖像或者彈幕內(nèi)容均攜帶所述指定多媒體資源的標(biāo)識,從而可以將該目標(biāo)圖像或者彈幕內(nèi)容與所述指定多媒體資源進(jìn)行關(guān)聯(lián)。
在本申請一個實(shí)施方式中,在獲取所述目標(biāo)圖像時,可以通過逐幀比對的方式從用戶表情的視頻流中確定該目標(biāo)圖像。具體地,客戶端的攝像設(shè)備可以錄制用戶的面部表情,從而生成用于表征用戶面部表情的視頻流。客戶端可以對該視頻流中的各幀圖像進(jìn)行分析,從而確定出用戶面部表情變化較大的圖像。在實(shí)際應(yīng)用中,客戶端可以預(yù)先在所述視頻流中確定基準(zhǔn)幀圖像,然后可以依次計算所述基準(zhǔn)幀圖像之后的各個幀圖像與所述基準(zhǔn)幀圖像之間的相似度。
在本實(shí)施方式中,所述基準(zhǔn)幀圖像可以在一定范圍內(nèi)隨機(jī)指定的一幀圖像。例如,所述基準(zhǔn)幀圖像可以是在所述視頻流的開篇10秒鐘內(nèi)隨機(jī)選取的一幀圖像。當(dāng)然,為了不遺漏所述視頻流中的用戶面部表情變化較大的圖像,可以將所述視頻流的第一幀圖像作為所述基準(zhǔn)幀圖像。
在本實(shí)施方式中,當(dāng)確定了所述基準(zhǔn)幀圖像之后,可以從所述基準(zhǔn)幀圖像開始,將所述視頻流中位于所述基準(zhǔn)幀圖像之后的目標(biāo)幀圖像與所述基準(zhǔn)幀圖像進(jìn)行對比。在進(jìn)行對比時,可以計算后續(xù)的各個目標(biāo)幀圖像與所述基準(zhǔn)幀圖像之間的相似度。具體地,在計算各個目標(biāo)幀圖像與所述基準(zhǔn)幀圖像之間的相似度時,可以分別提取所述基準(zhǔn)幀圖像和當(dāng)前幀圖像的第一特征向量和第二特征向量。
在本實(shí)施方式中,所述第一特征向量和所述第二特征向量可以具備多種形式。其中,可以基于每幀畫面中像素點(diǎn)的像素值構(gòu)建該幀畫面的特征向量。每幀畫面通常都是由若干的像素點(diǎn)按照一定的順序排列而成的,像素點(diǎn)對應(yīng)各自的像素值,從而可以構(gòu)成色彩斑斕的畫面。所述像素值可以是處于指定區(qū)間內(nèi)的數(shù)值。例如,所述像素值可以是0至255中的任意一個數(shù)值。數(shù)值的大小可以表示色彩的深淺。在本實(shí)施方式中,可以獲取每幀畫面中各個像素點(diǎn)的像素值,并通過獲取的像素值構(gòu)成該幀畫面的特征向量。例如,對于具備9*9=81個像素點(diǎn)的當(dāng)前幀而言,可以依次獲取其中像素點(diǎn)的像素值,然后根據(jù)從左向右從上至下的順序,將獲取的像素值依次排列,從而構(gòu)成81維的向量。該81維的向量便可以作為所述當(dāng)前幀的特征向量。
在本實(shí)施方式中,所述特征向量還可以是每幀畫面的cnn(convolutionalneuralnetwork,卷積神經(jīng)網(wǎng)絡(luò))特征。具體地,可以將所述基準(zhǔn)幀圖像以及所述基準(zhǔn)幀圖像之后的目標(biāo)幀圖像分別輸入卷積神經(jīng)網(wǎng)絡(luò)中,然后該卷積神經(jīng)網(wǎng)絡(luò)便可以輸出所述基準(zhǔn)幀圖像以及所述目標(biāo)幀圖像對應(yīng)的特征向量。
在本實(shí)施方式中,在確定了所述第一特征向量和所述第二特征向量之后,可以計算所述第一特征向量和所述第二特征向量之間的相似度。具體地,所述相似度在向量空間中可以表示為兩個向量之間的距離。距離越近,表示兩個向量越相似,因此相似度越高。距離越遠(yuǎn),表示兩個向量差別越大,因此相似度越低。因此,在計算所述基準(zhǔn)幀圖像和所述目標(biāo)幀圖像之間的相似度時,可以計算所述第一特征向量和所述第二特征向量之間的空間距離,并將所述空間距離的倒數(shù)作為所述基準(zhǔn)幀圖像與所述目標(biāo)幀圖像之間的相似度。這樣,空間距離越小,其對應(yīng)的相似度越大,表明所述基準(zhǔn)幀圖像和所述目標(biāo)幀圖像之間越相似。相反地,空間距離越大,其對應(yīng)的相似度越小,表明所述基準(zhǔn)幀圖像和所述目標(biāo)幀圖像之間越不相似。
在本實(shí)施方式中,按照上述方式可以依次計算所述基準(zhǔn)幀圖像之后的各個幀圖像與所述基準(zhǔn)幀圖像之間的相似度。相似度較高的兩幀畫面中所展示的內(nèi)容也通常是比較相似的,而當(dāng)前需要獲取能夠表征用戶面部表情變化的圖像,例如可以獲取用戶大笑、驚訝、害怕的表情。因此,在本實(shí)施方式中,當(dāng)所述基準(zhǔn)幀圖像與目標(biāo)幀圖像之間的相似度小于或者等于指定閾值時,可以將所述目標(biāo)幀圖像作為所述針對指定多媒體資源的一個目標(biāo)圖像。其中,所述指定閾值可以是預(yù)先設(shè)定的一個數(shù)值,該數(shù)值根據(jù)實(shí)際情況可以靈活地進(jìn)行調(diào)整。在本實(shí)施方式中,相似度小于或者等于指定閾值,可以表示兩幀畫面中的內(nèi)容已經(jīng)具備明顯的不同,因此可以認(rèn)為目標(biāo)幀圖像所展示的面部表情,與所述基準(zhǔn)幀圖像所展示的面部表情發(fā)生了較大的改變。此時,所述目標(biāo)幀圖像便可以作為用于表征用戶面部表情變化的一幀圖像。
請參閱圖2,通過上述的與基準(zhǔn)幀圖像進(jìn)行對比的方法,在用戶觀看指定多媒體資源的過程中,可以獲取多個目標(biāo)圖像。在圖2中,第一個斜線填充的矩形可以作為所述基準(zhǔn)幀圖像,其它斜線填充的矩形則可以表征獲取的目標(biāo)圖像,空白的矩形則可以表示面部表情變化不大的幀圖像。
s13:基于所述目標(biāo)圖像,確定與所述目標(biāo)圖像相匹配的彈幕圖標(biāo)。
在本實(shí)施方式中,在獲取了能夠表征用戶面部表情的所述目標(biāo)圖像后,可以基于該目標(biāo)圖像,確定相匹配的彈幕圖標(biāo)。
在本實(shí)施方式中,所述彈幕圖標(biāo)可以是視頻播放網(wǎng)站預(yù)先制作的圖標(biāo)。該彈幕圖標(biāo)可以存儲于視頻播放網(wǎng)站的服務(wù)器中。所述彈幕圖標(biāo)還可以在客戶端加載指定多媒體資源時,由客戶端一并加載至客戶端本地。因此,所述彈幕圖標(biāo)可以存儲于服務(wù)器或者客戶端中。
在本實(shí)施方式中,可以根據(jù)所述目標(biāo)圖像中展示的用戶的面部表情,從彈幕圖標(biāo)中確定與該面部表情相適配的圖標(biāo)。例如,所述目標(biāo)圖像中展示的是用戶大笑的表情,那么便可以相應(yīng)地從彈幕圖標(biāo)中確定大笑的圖標(biāo)。具體地,在確定相匹配的彈幕圖標(biāo)時,可以提取所述目標(biāo)圖像的目標(biāo)特征信息。所述目標(biāo)特征信息可以是基于所述目標(biāo)圖像中像素點(diǎn)的像素值構(gòu)建的特征向量。所述像素值可以是處于指定區(qū)間內(nèi)的數(shù)值。例如,所述像素值可以是0至255中的任意一個數(shù)值。數(shù)值的大小可以表示色彩的深淺。在本實(shí)施方式中,可以獲取目標(biāo)圖像中各個像素點(diǎn)的像素值,并通過獲取的像素值構(gòu)成該目標(biāo)圖像的特征向量。例如,對于具備9*9=81個像素點(diǎn)的目標(biāo)圖像而言,可以依次獲取其中像素點(diǎn)的像素值,然后根據(jù)從左向右從上至下的順序,將獲取的像素值依次排列,從而構(gòu)成81維的向量。該81維的向量便可以作為所述目標(biāo)圖像的目標(biāo)特征信息。
在本實(shí)施方式中,所述目標(biāo)特征信息還可以是目標(biāo)圖像的cnn(convolutionalneuralnetwork,卷積神經(jīng)網(wǎng)絡(luò))特征。具體地,可以將所述目標(biāo)圖像輸入卷積神經(jīng)網(wǎng)絡(luò)中,然后該卷積神經(jīng)網(wǎng)絡(luò)便可以輸出所述目標(biāo)圖像對應(yīng)的目標(biāo)特征信息。
在本實(shí)施方式中,彈幕圖標(biāo)可以位于彈幕圖標(biāo)庫中,所述彈幕圖標(biāo)庫中的彈幕圖標(biāo)也可以具備自身的特征信息。所述特征信息也可以具備上述的形式。這樣,可以將所述目標(biāo)特征信息與本地彈幕圖標(biāo)庫中彈幕圖標(biāo)的特征信息進(jìn)行比對。具體的比對方法可以是計算所述目標(biāo)特征信息與彈幕圖標(biāo)的特征信息之間的相似度。在計算所述相似度時,可以計算所述目標(biāo)特征信息與彈幕圖標(biāo)的特征信息之間的空間距離,并將所述空間距離的倒數(shù)作為所述相似度。這樣,空間距離越小,其對應(yīng)的相似度越大,表明所述目標(biāo)圖像與彈幕圖標(biāo)之間越相似。相反地,空間距離越大,其對應(yīng)的相似度越小,表明所述目標(biāo)圖像和彈幕圖標(biāo)之間越不相似。這樣,可以將與所述目標(biāo)特征信息的相似度大于或者等于指定閾值的特征信息對應(yīng)的彈幕圖標(biāo)作為與所述目標(biāo)圖像相匹配的彈幕圖標(biāo)。例如,對于表征用戶大笑的目標(biāo)圖像,其與彈幕圖標(biāo)庫中表征大笑的圖標(biāo)之間的相似度為0.95,所述指定閾值為0.8,那么該表征大笑的圖標(biāo)便可以作為表征用戶大笑的目標(biāo)圖像的彈幕圖標(biāo)。
在實(shí)際應(yīng)用過程中,基于所述指定閾值篩選出的彈幕圖標(biāo)的數(shù)量可能不止一個,也就是說,與所述目標(biāo)圖像相匹配的彈幕圖標(biāo)的數(shù)量為至少兩個。在這種情況下,客戶端可以將這些彈幕圖標(biāo)均顯示于當(dāng)前的畫面中,以供用戶進(jìn)行選擇。這樣,在用戶進(jìn)行選擇之后,客戶端可以接收用戶輸入的選擇指令,并將所述選擇指令指定的彈幕圖標(biāo)作為用戶想要發(fā)表的彈幕內(nèi)容。這樣,客戶端后續(xù)可以將用戶想要發(fā)表的彈幕內(nèi)容發(fā)送至視頻播放網(wǎng)站的服務(wù)器。請參閱圖3,在實(shí)際應(yīng)用場景中,客戶端采集的用戶當(dāng)前的面部表情為大笑,那么便可以匹配得到大笑的彈幕圖標(biāo),從而在客戶端中展示該大笑的彈幕圖標(biāo)。
在本申請一個實(shí)施方式中,為了減輕客戶端的運(yùn)算壓力,可以將一部分涉及運(yùn)算的任務(wù)交由視頻播放網(wǎng)站的服務(wù)器來處理。具體地,客戶端可以按照上述方式提取所述目標(biāo)圖像的目標(biāo)特征信息。在提取所述目標(biāo)特征信息后,可以將所述目標(biāo)特征信息發(fā)送至服務(wù)器,以使得所述服務(wù)器將所述目標(biāo)特征信息與所述服務(wù)器本地彈幕圖標(biāo)庫中彈幕圖標(biāo)的特征信息進(jìn)行比對。在本實(shí)施方式中,彈幕圖標(biāo)可以存儲于服務(wù)器的本地彈幕圖標(biāo)庫中,并且所述彈幕圖標(biāo)庫中的彈幕圖標(biāo)可以與特征信息相關(guān)聯(lián)。這樣,服務(wù)器在接收到客戶端提供的目標(biāo)特征信息后,便可以按照上述的方式將目標(biāo)特征信息與彈幕圖標(biāo)的特征信息進(jìn)行比對,從而確定出與所述目標(biāo)特征信息的相似度大于或者等于指定閾值的特征信息對應(yīng)的彈幕圖標(biāo)。這樣,確定出與用戶面部表情相匹配的彈幕圖標(biāo)之后,服務(wù)器一方面可以直接將該彈幕圖標(biāo)與指定多媒體資源進(jìn)行關(guān)聯(lián),也就是視為客戶端發(fā)送了包含該彈幕圖標(biāo)的彈幕內(nèi)容。另一方面,為了讓用戶確認(rèn)服務(wù)器確定出的彈幕圖標(biāo)是否正確,服務(wù)器可以將該彈幕圖標(biāo)反饋至客戶端。這樣,客戶端可以接收所述服務(wù)器反饋的彈幕圖標(biāo),并將所述反饋的彈幕圖標(biāo)作為與所述目標(biāo)圖像相匹配的彈幕圖標(biāo);其中,所述反饋的彈幕圖標(biāo)的特征信息與所述目標(biāo)特征信息之間的相似度大于或者等于指定閾值。
在本申請一個實(shí)施方式中,可以進(jìn)一步減輕客戶端的數(shù)據(jù)處理壓力??蛻舳嗽讷@取了所述目標(biāo)圖像之后,可以直接將該目標(biāo)圖像發(fā)送至服務(wù)器,后續(xù)的對該目標(biāo)圖像的處理過程,均可以在服務(wù)器中完成。具體地,可以使得所述服務(wù)器提取所述目標(biāo)圖像的目標(biāo)特征信息,并使得所述服務(wù)器將所述目標(biāo)特征信息與所述服務(wù)器本地彈幕圖標(biāo)庫中彈幕圖標(biāo)的特征信息進(jìn)行比對。同樣地,服務(wù)器在確定出與用戶面部表情相匹配的彈幕圖標(biāo)之后,一方面可以直接將該彈幕圖標(biāo)與指定多媒體資源進(jìn)行關(guān)聯(lián),也就是視為客戶端發(fā)送了包含該彈幕圖標(biāo)的彈幕內(nèi)容。另一方面,為了讓用戶確認(rèn)服務(wù)器確定出的彈幕圖標(biāo)是否正確,服務(wù)器可以將該彈幕圖標(biāo)反饋至客戶端。這樣,客戶端可以接收所述服務(wù)器反饋的彈幕圖標(biāo),并將所述反饋的彈幕圖標(biāo)作為與所述目標(biāo)圖像相匹配的彈幕圖標(biāo);其中,所述反饋的彈幕圖標(biāo)的特征信息與所述目標(biāo)特征信息之間的相似度大于或者等于指定閾值
在本申請一個實(shí)施方式中,在客戶端或者服務(wù)器中存儲的彈幕圖標(biāo)可以具備各自的表情標(biāo)識。所述表情標(biāo)識可以是用于表示彈幕圖標(biāo)的字符串。例如,表示大笑的彈幕圖標(biāo)對應(yīng)的表情標(biāo)識可以是01或者“/laugh”,表示哭泣的彈幕圖標(biāo)對應(yīng)的表情標(biāo)識可以是02或者“/cry”。這樣,在客戶端或者服務(wù)器中可以具備表情標(biāo)識庫,在表情標(biāo)識庫中可以存儲各個表情標(biāo)識,并且所述表情標(biāo)識可以與彈幕圖標(biāo)相關(guān)聯(lián)。
在本實(shí)施方式中,由于人臉的圖像通常比較規(guī)范,包括眼睛、鼻子、嘴等器官,因此可以指定用于表征面部表情的各種模板。這些模板例如可以包括笑容、哭泣、害怕、驚訝等。在一些表情模板中,還可以具備人的肢體動作。例如,在表示驚訝的表情模板中,可以展現(xiàn)人的手捂著嘴的動作。在本實(shí)施方式中,每個表情模板可以與表情標(biāo)識相關(guān)聯(lián)。這樣,客戶端在獲取了目標(biāo)圖像后,可以提取所述目標(biāo)圖像的目標(biāo)特征信息。然后可以將該目標(biāo)特征信息與表情模板的特征信息進(jìn)行相似度的計算,從而確定出該目標(biāo)圖像對應(yīng)的表情模板,從而可以確定該目標(biāo)圖像對應(yīng)的目標(biāo)表情標(biāo)識。這樣,在表情標(biāo)識庫中查詢所述目標(biāo)特征信息對應(yīng)的目標(biāo)表情標(biāo)識后,客戶端可以將所述目標(biāo)表情標(biāo)識關(guān)聯(lián)的彈幕圖標(biāo)作為與所述目標(biāo)圖像相匹配的彈幕圖標(biāo)。
s15:將包含所述彈幕圖標(biāo)的彈幕內(nèi)容發(fā)送至服務(wù)器,以使得所述服務(wù)器向當(dāng)前播放所述指定多媒體資源的用戶客戶端推送所述彈幕圖標(biāo)。
在本實(shí)施方式中,客戶端在確定了與目標(biāo)圖像相匹配的彈幕圖標(biāo)后,可以自動將包含該彈幕圖標(biāo)的彈幕內(nèi)容發(fā)送至服務(wù)器。在實(shí)際應(yīng)用中,所述彈幕內(nèi)容中除了包括所述彈幕圖標(biāo),還可以包括用于描述該彈幕圖標(biāo)的其它信息。所述其它信息例如可以包括所述客戶端上登陸的用戶賬號,從而可以確定該彈幕內(nèi)容是哪個用戶發(fā)送的。此外,所述其他信息還可以包括發(fā)送該彈幕內(nèi)容時對應(yīng)的指定多媒體資源的播放進(jìn)度。該播放進(jìn)度可以通過該指定多媒體資源的時間節(jié)點(diǎn)來表示。例如,用戶是在視頻播放至23分09秒發(fā)送該彈幕內(nèi)容的,因此23分09秒便可以包含在所述彈幕內(nèi)容中,以確定該彈幕圖標(biāo)應(yīng)當(dāng)在何時展現(xiàn)于指定多媒體資源的播放頁面中。當(dāng)然,所述其它信息還可以包括該指定多媒體資源的標(biāo)識,從而讓服務(wù)器知曉該彈幕內(nèi)容是針對哪個多媒體資源發(fā)送的。
在本實(shí)施方式中,服務(wù)器可以具備兩種彈幕內(nèi)容推送方法。其中一種是,當(dāng)服務(wù)器為視頻直播網(wǎng)站的服務(wù)器時,服務(wù)器在接收到客戶端發(fā)來的彈幕內(nèi)容時,會直接將該彈幕內(nèi)容中攜帶的彈幕圖標(biāo)推送至當(dāng)前播放所述指定多媒體資源的用戶客戶端處,從而實(shí)時地在各個用戶客戶端中展示該彈幕圖標(biāo)。另一種是,當(dāng)服務(wù)器作為視頻點(diǎn)播網(wǎng)站的服務(wù)器時,服務(wù)器可以根據(jù)客戶端發(fā)來的該彈幕內(nèi)容,將該彈幕圖標(biāo)與所述指定多媒體資源進(jìn)行關(guān)聯(lián),并設(shè)定該彈幕圖標(biāo)對應(yīng)的多媒體資源播放進(jìn)度。這樣,當(dāng)有用戶客戶端請求該指定多媒體資源時,服務(wù)器可以將該彈幕圖標(biāo)的數(shù)據(jù)一并提供給該用戶客戶端,這樣,當(dāng)用戶客戶端播放該指定多媒體資源達(dá)到設(shè)定的播放進(jìn)度時,便可以展示該彈幕圖標(biāo)。
請參閱圖4,本申請還提供一種客戶端,所述客戶端包括:
目標(biāo)圖像獲取單元100,用于獲取針對指定多媒體資源的目標(biāo)圖像,所述目標(biāo)圖像用于表征用戶在觀看所述指定多媒體資源時的面部表情;
彈幕圖標(biāo)匹配單元200,用于基于所述目標(biāo)圖像,確定與所述目標(biāo)圖像相匹配的彈幕圖標(biāo);
彈幕內(nèi)容發(fā)送單元300,用于將包含所述彈幕圖標(biāo)的彈幕內(nèi)容發(fā)送至服務(wù)器,以使得所述服務(wù)器向當(dāng)前播放所述指定多媒體資源的用戶客戶端推送所述彈幕圖標(biāo)。
在本申請一個實(shí)施方式中,所述彈幕圖標(biāo)匹配單元200包括:
特征信息比對模塊,用于提取所述目標(biāo)圖像的目標(biāo)特征信息,并將所述目標(biāo)特征信息與本地彈幕圖標(biāo)庫中彈幕圖標(biāo)的特征信息進(jìn)行比對;
特征信息判定模塊,用于將與所述目標(biāo)特征信息的相似度大于或者等于指定閾值的特征信息對應(yīng)的彈幕圖標(biāo)作為與所述目標(biāo)圖像相匹配的彈幕圖標(biāo)。
在本申請另一個實(shí)施方式中,所述彈幕圖標(biāo)匹配單元200包括:
表情標(biāo)識比對模塊,用于提取所述目標(biāo)圖像的目標(biāo)特征信息,并在表情標(biāo)識庫中查詢所述目標(biāo)特征信息對應(yīng)的目標(biāo)表情標(biāo)識;其中,所述表情標(biāo)識庫中的表情標(biāo)識與彈幕圖標(biāo)相關(guān)聯(lián);
表情標(biāo)識判定模塊,用于將所述目標(biāo)表情標(biāo)識關(guān)聯(lián)的彈幕圖標(biāo)作為與所述目標(biāo)圖像相匹配的彈幕圖標(biāo)。
在本申請一個實(shí)施方式中,所述目標(biāo)圖像獲取單元100包括:
基準(zhǔn)幀圖像確定模塊,用于檢測用于表征用戶面部表情的視頻流,并在所述視頻流中確定基準(zhǔn)幀圖像;
圖像對比模塊,用于將所述視頻流中位于所述基準(zhǔn)幀圖像之后的目標(biāo)幀圖像與所述基準(zhǔn)幀圖像進(jìn)行對比,若所述目標(biāo)幀圖像與所述基準(zhǔn)幀圖像之間的相似度小于或者等于指定閾值時,將所述目標(biāo)幀圖像作為所述針對指定多媒體資源的目標(biāo)圖像。
上述實(shí)施方式公開的客戶端,其實(shí)現(xiàn)的具體功能,可以與本申請中上述的彈幕內(nèi)容的發(fā)送方法的實(shí)施方式相對照解釋,可以實(shí)現(xiàn)本申請的彈幕內(nèi)容的發(fā)送方法的實(shí)施方式并達(dá)到方法實(shí)施方式的技術(shù)效果。
請參閱圖5,本申請還提供一種彈幕內(nèi)容的發(fā)送方法,所述方法可以應(yīng)用于所述客戶端中,所述方法可以包括以下步驟。
s21:獲取針對指定多媒體資源的目標(biāo)圖像,所述目標(biāo)圖像用于表征用戶在觀看所述指定多媒體資源時的面部表情。
s23:基于所述目標(biāo)圖像,生成包含所述目標(biāo)圖像的圖像集合。
s25:將包含所述圖像集合的彈幕內(nèi)容發(fā)送至服務(wù)器,以使得所述服務(wù)器向當(dāng)前播放所述指定多媒體資源的用戶客戶端推送所述圖像集合。
在本實(shí)施方式中,當(dāng)客戶端獲取了所述目標(biāo)圖像之后,可以生成用于表征用戶表情的動態(tài)圖。所述動態(tài)圖可以是由多幀圖像構(gòu)成的圖像集合。例如,所述動態(tài)圖可以是gif(graphicsinterchangeformat,圖像互換格式)圖像。
在本實(shí)施方式中,可以按照前述實(shí)施方式中描述的方式來獲取所述目標(biāo)圖像。由于所述目標(biāo)圖像可以表征用戶面部發(fā)生較大變化的表情,因此在生成的所述圖像集合中,可以包含所述目標(biāo)圖像。在本實(shí)施方式中,客戶端的攝像設(shè)備可以錄制用戶面部表情的視頻流,這樣,所述目標(biāo)圖像也可以是從所述視頻流中獲取的。在生成包含所述目標(biāo)圖像的圖像集合時,可以在所述視頻流中截取連續(xù)的指定數(shù)量幀圖像,為了保證截取的指定數(shù)量幀圖像能夠反映用戶變化較大的面部表情,在所述指定數(shù)量幀圖像中可以包括所述目標(biāo)圖像。例如,如圖6所示,可以以所述目標(biāo)圖像為中心,在所述目標(biāo)圖像之前和之后各取多幀圖像。這樣,將截取的所述指定數(shù)量幀圖像按照在所述視頻流中的排列順序,便可以組合為圖像集合。例如,圖6中虛線框中的8幀圖像便可以構(gòu)成所述圖像集合。所述圖像集合中的圖像在按照順序進(jìn)行播放時,便可以展示用戶動態(tài)變化的面部表情,從而更加真實(shí)和準(zhǔn)確地反映用戶當(dāng)前的狀態(tài)。請參閱圖7,攝像頭在捕捉到用戶變態(tài)的面部表情之后,可以生成與該面部表情相對應(yīng)的8幀圖像,并且可以在播放設(shè)備的當(dāng)前頁面中展示該8幀圖像。
在本實(shí)施方式中,所述目標(biāo)圖像可以是按照前述的通過逐幀對比的方式獲取的。具體地,客戶端可以檢測用于表征用戶面部表情的視頻流,并在所述視頻流中確定基準(zhǔn)幀圖像。然后,可以將所述視頻流中位于所述基準(zhǔn)幀圖像之后的目標(biāo)幀圖像與所述基準(zhǔn)幀圖像進(jìn)行對比,若所述目標(biāo)幀圖像與所述基準(zhǔn)幀圖像之間的相似度小于或者等于指定閾值時,將所述目標(biāo)幀圖像作為所述針對指定多媒體資源的目標(biāo)圖像。其中,各個步驟的具體描述過程請參見前述實(shí)施方式,這里便不再贅述。
在本實(shí)施方式中,由于生成所述圖像集合的過程比較復(fù)雜,在實(shí)際應(yīng)用場景中,在獲取到所述目標(biāo)圖像之后,可以優(yōu)先判斷是否存在與所述目標(biāo)圖像相匹配的彈幕圖標(biāo)。具體的判斷過程可以為:提取所述目標(biāo)圖像的目標(biāo)特征信息,并將所述目標(biāo)特征信息與本地彈幕圖標(biāo)庫中彈幕圖標(biāo)的特征信息進(jìn)行比對,然后判斷是否存在與所述目標(biāo)特征信息的相似度大于或者等于指定閾值的特征信息對應(yīng)的彈幕圖標(biāo)。如果存在,則表明存在與所述目標(biāo)圖像相匹配的彈幕圖標(biāo);如果不存在,則表明不存在與所述目標(biāo)圖像相匹配的彈幕圖標(biāo)。其中,關(guān)于提取目標(biāo)特征信息以及將目標(biāo)特征信息和彈幕圖標(biāo)的特征信息進(jìn)行對比的過程,可以參見前述實(shí)施方式中的描述,這里便不再贅述。這樣,若存在與所述目標(biāo)圖像相匹配的彈幕圖標(biāo),則可以按照步驟s15的步驟,將包含所述彈幕圖標(biāo)的彈幕內(nèi)容發(fā)送至服務(wù)器,以使得所述服務(wù)器向當(dāng)前播放所述指定多媒體資源的用戶客戶端推送所述彈幕圖標(biāo)。若不存在與所述目標(biāo)圖像相匹配的彈幕圖標(biāo),那么才基于所述目標(biāo)圖像,生成包含所述目標(biāo)圖像的圖像集合。
請參閱圖8,本申請還提供一種客戶端,所述客戶端包括:
目標(biāo)圖像獲取單元110,用于獲取針對指定多媒體資源的目標(biāo)圖像,所述目標(biāo)圖像用于表征用戶在觀看所述指定多媒體資源時的面部表情;
圖像集合生成單元210,用于基于所述目標(biāo)圖像,生成包含所述目標(biāo)圖像的圖像集合;
彈幕內(nèi)容發(fā)送單元310,用于將包含所述圖像集合的彈幕內(nèi)容發(fā)送至服務(wù)器,以使得所述服務(wù)器向當(dāng)前播放所述指定多媒體資源的用戶客戶端推送所述圖像集合。
在本實(shí)施方式中,所述目標(biāo)圖像位于用于表征用戶面部表情的視頻流中;相應(yīng)地,所述圖像集合生成單元210包括:
圖像截取模塊,用于在所述視頻流中截取連續(xù)的指定數(shù)量幀圖像,所述指定數(shù)量幀圖像中包括所述目標(biāo)圖像;
圖像組合模塊,用于將截取的所述指定數(shù)量幀圖像按照在所述視頻流中的排列順序,組合為圖像集合。
以上可見,本申請?zhí)峁┑募夹g(shù)方案,可以檢測用戶在觀看多媒體資源時的面部表情,并且可以基于用戶的面部表情,自動生成對應(yīng)的彈幕圖標(biāo)或者圖像集合,所述彈幕圖標(biāo)和圖像集合均可以作為用于表征用戶當(dāng)前面部表情的彈幕內(nèi)容。在生成與用戶的面部表情相符的彈幕內(nèi)容時,用戶客戶端便可以將該彈幕內(nèi)容發(fā)送至服務(wù)器,以使得在當(dāng)前播放該多媒體資源的用戶客戶端上可以展示該彈幕內(nèi)容。因此,本申請?zhí)峁┑募夹g(shù)方案,能夠在無需用戶手動輸入信息的情況下,自動發(fā)送與用戶的面部表情相符的彈幕內(nèi)容,不僅能夠提高發(fā)送彈幕內(nèi)容的效率,還能更加準(zhǔn)確地表達(dá)用戶此時的心情。
在20世紀(jì)90年代,對于一個技術(shù)的改進(jìn)可以很明顯地區(qū)分是硬件上的改進(jìn)(例如,對二極管、晶體管、開關(guān)等電路結(jié)構(gòu)的改進(jìn))還是軟件上的改進(jìn)(對于方法流程的改進(jìn))。然而,隨著技術(shù)的發(fā)展,當(dāng)今的很多方法流程的改進(jìn)已經(jīng)可以視為硬件電路結(jié)構(gòu)的直接改進(jìn)。設(shè)計人員幾乎都通過將改進(jìn)的方法流程編程到硬件電路中來得到相應(yīng)的硬件電路結(jié)構(gòu)。因此,不能說一個方法流程的改進(jìn)就不能用硬件實(shí)體模塊來實(shí)現(xiàn)。例如,可編程邏輯器件(programmablelogicdevice,pld)(例如現(xiàn)場可編程門陣列(fieldprogrammablegatearray,fpga))就是這樣一種集成電路,其邏輯功能由用戶對器件編程來確定。由設(shè)計人員自行編程來把一個數(shù)字系統(tǒng)“集成”在一片pld上,而不需要請芯片制造廠商來設(shè)計和制作專用的集成電路芯片2。而且,如今,取代手工地制作集成電路芯片,這種編程也多半改用“邏輯編譯器(logiccompiler)”軟件來實(shí)現(xiàn),它與程序開發(fā)撰寫時所用的軟件編譯器相類似,而要編譯之前的原始代碼也得用特定的編程語言來撰寫,此稱之為硬件描述語言(hardwaredescriptionlanguage,hdl),而hdl也并非僅有一種,而是有許多種,如abel(advancedbooleanexpressionlanguage)、ahdl(alterahardwaredescriptionlanguage)、confluence、cupl(cornelluniversityprogramminglanguage)、hdcal、jhdl(javahardwaredescriptionlanguage)、lava、lola、myhdl、palasm、rhdl(rubyhardwaredescriptionlanguage)等,目前最普遍使用的是vhdl(very-high-speedintegratedcircuithardwaredescriptionlanguage)與verilog2。本領(lǐng)域技術(shù)人員也應(yīng)該清楚,只需要將方法流程用上述幾種硬件描述語言稍作邏輯編程并編程到集成電路中,就可以很容易得到實(shí)現(xiàn)該邏輯方法流程的硬件電路。
本領(lǐng)域技術(shù)人員也知道,除了以純計算機(jī)可讀程序代碼方式實(shí)現(xiàn)客戶端、服務(wù)器以外,完全可以通過將方法步驟進(jìn)行邏輯編程來使得客戶端、服務(wù)器以邏輯門、開關(guān)、專用集成電路、可編程邏輯控制器和嵌入微控制器等的形式來實(shí)現(xiàn)相同功能。因此這種客戶端、服務(wù)器可以被認(rèn)為是一種硬件部件,而對其內(nèi)包括的用于實(shí)現(xiàn)各種功能的裝置也可以視為硬件部件內(nèi)的結(jié)構(gòu)?;蛘呱踔粒梢詫⒂糜趯?shí)現(xiàn)各種功能的裝置視為既可以是實(shí)現(xiàn)方法的軟件模塊又可以是硬件部件內(nèi)的結(jié)構(gòu)。
通過以上的實(shí)施方式的描述可知,本領(lǐng)域的技術(shù)人員可以清楚地了解到本申請可借助軟件加必需的通用硬件平臺的方式來實(shí)現(xiàn)?;谶@樣的理解,本申請的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機(jī)軟件產(chǎn)品可以存儲在存儲介質(zhì)中,如rom/ram、磁碟、光盤等,包括若干指令用以使得一臺計算機(jī)設(shè)備(可以是個人計算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本申請各個實(shí)施方式或者實(shí)施方式的某些部分所述的方法。
本說明書中的各個實(shí)施方式均采用遞進(jìn)的方式描述,各個實(shí)施方式之間相同相似的部分互相參見即可,每個實(shí)施方式重點(diǎn)說明的都是與其他實(shí)施方式的不同之處。尤其,針對客戶端的實(shí)施方式來說,均可以參照前述方法的實(shí)施方式的介紹對照解釋。
本申請可以在由計算機(jī)執(zhí)行的計算機(jī)可執(zhí)行指令的一般上下文中描述,例如程序模塊。一般地,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對象、組件、數(shù)據(jù)結(jié)構(gòu)等等。也可以在分布式計算環(huán)境中實(shí)踐本申請,在這些分布式計算環(huán)境中,由通過通信網(wǎng)絡(luò)而被連接的遠(yuǎn)程處理設(shè)備來執(zhí)行任務(wù)。在分布式計算環(huán)境中,程序模塊可以位于包括存儲設(shè)備在內(nèi)的本地和遠(yuǎn)程計算機(jī)存儲介質(zhì)中。
雖然通過實(shí)施方式描繪了本申請,本領(lǐng)域普通技術(shù)人員知道,本申請有許多變形和變化而不脫離本申請的精神,希望所附的權(quán)利要求包括這些變形和變化而不脫離本申請的精神。