本發(fā)明涉及網(wǎng)絡技術,特別涉及視頻流處理方法、裝置和系統(tǒng)。
背景技術:
在視頻直播、鑒黃、視頻監(jiān)控等應用場景中,通常需要由服務器來對視頻流進行智能識別。
具體地,服務器獲取采集端采集、壓縮和上傳的視頻流,并進行解封裝、解碼等處理,其中,針對每幀原始圖像,分別對其解碼結果進行智能分析,以確定是否需要在該原始圖像對應的畫面上疊加處理效果,如果是,則將相應的處理效果疊加到該原始圖像對應的畫面上后,再經(jīng)過編碼等處理后發(fā)送給播放端。
比如,通過智能分析,確定出某一畫面中的某一位置出現(xiàn)了黃色暴力的內(nèi)容,那么則可認為需要在該畫面上疊加處理效果,如可以采用馬賽克來遮擋所述黃色暴力的內(nèi)容。
但是,上述方式在實際應用中會存在一定的問題,如:由于需要進行二次編碼,因此大大地降低了圖像質(zhì)量,而且,增加了服務器的負擔。
技術實現(xiàn)要素:
本發(fā)明提供了視頻流處理方法、裝置和系統(tǒng),能夠提升圖像質(zhì)量并減輕服務器的負擔。
具體技術方案如下:
一種視頻流處理方法,包括:
服務器獲取視頻流,針對其中的每幀原始圖像,若確定需要在所述原始圖像對應的畫面上疊加處理效果,則將所述原始圖像以及所述原始圖像的處理方式信息分別發(fā)送給播放端,以便所述播放端在播放所述原始圖像對應的畫面之前,按照所述處理方式信息在所述畫面上疊加處理效果,并將進行疊加之后的畫面進行播放。
一種視頻流處理方法,包括:
播放端獲取視頻流,在播放其中的每幀原始圖像對應的畫面之前,若確定已經(jīng)獲取到所述原始圖像對應的處理方式信息,則按照所述處理方式信息在所述原始圖像對應的畫面上疊加處理效果,并將進行疊加之后的畫面進行播放。
一種視頻流處理裝置,包括:分析單元以及發(fā)送單元;
所述分析單元,用于獲取視頻流,針對其中的每幀原始圖像,若確定需要在所述原始圖像對應的畫面上疊加處理效果,則將所述原始圖像以及所述原始圖像的處理方式信息分別發(fā)送給所述發(fā)送單元;
所述發(fā)送單元,用于將所述原始圖像以及所述原始圖像的處理方式信息分別發(fā)送給播放端,以便所述播放端在播放所述原始圖像對應的畫面之前,按照所述處理方式信息在所述畫面上疊加處理效果,并將進行疊加之后的畫面進行播放。
一種視頻流處理裝置,包括:處理單元和播放單元;
所述處理單元,用于獲取視頻流,在播放其中的每幀原始圖像對應的畫面之前,若確定已經(jīng)獲取到所述原始圖像對應的處理方式信息,則按照所述處理方式信息在所述原始圖像對應的畫面上疊加處理效果,并將進行疊加之后的畫面通過所述播放單元進行播放。
一種視頻流處理系統(tǒng),包括:如以上所述的兩種視頻流處理裝置。
基于上述介紹可以看出,采用本發(fā)明所述方案,服務器無需進行二次編碼,從而大大地提升了圖像質(zhì)量,而且,也相應地減輕了服務器的負擔。
【附圖說明】
圖1為本發(fā)明所述視頻流處理方法實施例的流程圖。
圖2為本發(fā)明所述服務器端的處理方法實施例的流程圖。
圖3為本發(fā)明所述播放端的處理方法實施例的流程圖。
圖4為本發(fā)明所述視頻流處理裝置第一實施例的組成結構示意圖。
圖5為本發(fā)明所述視頻流處理裝置第二實施例的組成結構示意圖。
【具體實施方式】
為了使本發(fā)明的技術方案更加清楚、明白,以下參照附圖并舉實施例,對本發(fā)明所述方案作進一步地詳細說明。
實施例一
圖1為本發(fā)明所述視頻流處理方法實施例的流程圖,如圖1所示,包括以下具體實現(xiàn)方式。
在11中,服務器獲取視頻流,針對其中的每幀原始圖像,若確定需要在該原始圖像對應的畫面上疊加處理效果,則將該原始圖像以及該原始圖像的處理方式信息分別發(fā)送給播放端。
在12中,播放端在播放該原始圖像對應的畫面之前,按照所述處理方式信息在畫面上疊加處理效果,并將進行疊加之后的畫面進行播放。
服務器可接收采集端采集、壓縮和上傳的視頻流,并可針對其中的每幀原始圖像,分別進行以下處理:
1)對該原始圖像進行拷貝,得到拷貝圖像;
比如,將該原始圖像拷貝到一個緩沖區(qū)(buffer)中;
2)對該拷貝圖像的解碼結果進行智能分析;
比如,可以采用現(xiàn)有的OpenCV深度學習方式或級聯(lián)分類器對解碼結果進行智能分析;
3)根據(jù)智能分析結果確定出是否需要在該原始圖像對應的畫面上疊加處理效果;
比如,當需要進行黃色暴力內(nèi)容查找時,若根據(jù)智能分析結果確定出該原始圖像對應的畫面中不存在黃色暴力內(nèi)容,則可認為不需要在該原始圖像對應的畫面上疊加處理效果,否則,則可認為需要在該原始圖像對應的畫面上疊加處理效果,疊加處理效果可以是指用馬賽克來遮擋所述黃色暴力內(nèi)容等。
對于每幀原始圖像來說,如果不需要在該原始圖像對應的畫面上疊加處理效果,那么服務器僅需要將該原始圖像發(fā)送給播放端,如果需要在該原始圖像對應的畫面上疊加處理效果,那么服務器則需要將該原始圖像以及該原始圖像對應的處理方式信息分別發(fā)送給播放端。
服務器將處理方式信息以何種格式發(fā)送給播放端不作限制,可根據(jù)實際需要而定。
對于播放端來說,其獲取來自服務器的視頻流,并在播放其中的每幀原始圖像對應的畫面之前,首先確定是否已經(jīng)從服務器獲取到該原始圖像對應的處理方式信息,如果是,則按照所述處理方式信息在該原始圖像對應的畫面上疊加處理效果,并將進行疊加之后的畫面進行播放,否則,對該原始圖像對應的畫面進行播放。
采用上述處理方式,服務器無需進行二次編碼,從而大大地提升了圖像質(zhì)量,而且,也相應地減輕了服務器的負擔。
另外,服務器發(fā)送給播放端的處理方式信息中可包括:疊加方式,以及,疊加位置,疊加位置即指在畫面中的哪個位置/區(qū)域疊加處理效果。
對于一幀原始圖像來說,可以只在其對應的畫面中的一個疊加位置處疊加處理效果,也可以同時在多個疊加位置處疊加處理效果,因此,該原始圖像對應的處理方式信息中可包括一個或多個疊加位置,每個疊加位置可分別對應一種疊加方式,或者,也可以至少有一個疊加位置對應M種疊加方式,M為大于一的正整數(shù),播放端可以從這M種疊加方式中選出一種進行疊加,如何進行選擇不作限制,比如可以隨機地進行選擇或者依據(jù)預先設定的規(guī)則進行選擇。
處理方式信息中包括的疊加方式具體為何種方式同樣不作限制,可根據(jù)實際場景需求等而定。
由于采用何種疊加方式可以由播放端來進行選擇,而不是由服務器寫死,因此對于同一畫面中的同一疊加位置,不同的播放端可以展示出不同的處理效果,從而提升了播放端對用戶個性化需求的響應能力。
比如,畫面中某一位置出現(xiàn)了黃色暴力的內(nèi)容,需要進行遮擋,服務器下發(fā)的處理方式信息中提供了兩種不同的遮擋方式可供選擇,那么對于兩個不同的播放端來說,其展示給用戶的畫面中就可以采用不同的遮擋方式。
實施例二
基于上述介紹,圖2為本發(fā)明所述服務器端的處理方法實施例的流程圖,如圖2所示,包括以下具體實現(xiàn)方式。
在21中,當每獲取到一幀原始圖像時,對該原始圖像進行拷貝,得到拷貝圖像。
在22中,對拷貝圖像進行解碼等處理,并對解碼結果進行智能分析。
在23中,根據(jù)智能分析結果確定是否需要在該原始圖像對應的畫面上疊加處理效果,如果是,則執(zhí)行24,否則,執(zhí)行25。
在24中,將該原始圖像和該原始圖像對應的處理方式信息分別發(fā)送給播放端,結束流程。
在25中,僅將該原始圖像發(fā)送給播放端,結束流程。
需要說明是,圖2所示流程僅為舉例說明,并不用于限制本發(fā)明的技術方案,比如,將該原始圖像發(fā)送給播放端的操作也可以不在24或25中執(zhí)行,而是在拷貝完成之后即執(zhí)行。
實施例三
圖3為本發(fā)明所述播放端的處理方法實施例的流程圖,如圖3所示,包括以下具體實現(xiàn)方式。
在31中,當需要播放每幀原始圖像對應的畫面時,確定是否已經(jīng)獲取到該原始圖像對應的處理方式信息,如果是,則執(zhí)行32,否則,執(zhí)行34。
在32中,按照該原始圖像對應的處理方式信息在該原始圖像對應的畫面上疊加處理效果。
在33中,將進行疊加之后的畫面進行播放,結束流程。
在34中,將該原始圖像對應的畫面進行播放,結束流程。
以上是關于方法實施例的介紹,以下通過裝置和系統(tǒng)實施例,對本發(fā)明所述方案進行進一步說明。
實施例四
圖4為本發(fā)明所述視頻流處理裝置第一實施例的組成結構示意圖,如圖4所示,包括:分析單元41以及發(fā)送單元42。
分析單元41,用于獲取視頻流,針對其中的每幀原始圖像,若確定需要在該原始圖像對應的畫面上疊加處理效果,則將該原始圖像以及該原始圖像的處理方式信息分別發(fā)送給發(fā)送單元42。
發(fā)送單元42,用于將該原始圖像以及該原始圖像的處理方式信息分別發(fā)送給播放端,以便播放端在播放該原始圖像對應的畫面之前,按照所述處理方式信息在畫面上疊加處理效果,并將進行疊加之后的畫面進行播放。
具體地,對于每幀原始圖像,分析單元41可對該原始圖像進行拷貝,得到拷貝圖像,并對拷貝圖像的解碼結果進行智能分析,根據(jù)智能分析結果確定出是否需要在該原始圖像對應的畫面上疊加處理效果。
比如,可以采用現(xiàn)有的OpenCV深度學習方式或級聯(lián)分類器對解碼結果進行智能分析。
若根據(jù)智能分析結果確定出需要在該原始圖像對應的畫面上疊加處理效果,那么分析單元41可將該原始圖像以及該原始圖像的處理方式信息分別通過發(fā)送單元42發(fā)送給播放端,如果根據(jù)智能分析結果確定出不需要在該原始圖像對應的畫面上疊加處理效果,那么分析單元41可僅將該原始圖像通過發(fā)送單元42發(fā)送給播放端。
其中,所述處理方式信息中可包括:疊加方式,以及,疊加位置;
每個疊加位置分別對應一種疊加方式;
或者,至少一個疊加位置對應M種疊加方式,M為大于一的正整數(shù),以便播放端從M種疊加方式中選出一種進行疊加。
實施例五
圖5為本發(fā)明所述視頻流處理裝置第二實施例的組成結構示意圖,如圖5所示,包括:處理單元51和播放單元52。
處理單元51,用于獲取視頻流,在播放其中的每幀原始圖像對應的畫面之前,若確定已經(jīng)獲取到該原始圖像對應的處理方式信息,則按照所述處理方式信息在該原始圖像對應的畫面上疊加處理效果,并將進行疊加之后的畫面通過播放單元52進行播放。
其中,所述處理方式信息中可包括:疊加方式,以及,疊加位置;
每個疊加位置分別對應一種疊加方式;
或者,至少一個疊加位置對應M種疊加方式,M為大于一的正整數(shù);
當一個疊加位置對應M種疊加方式時,處理單元51可從M種疊加方式中選出一種進行疊加。
實施例六
本實施例中公開了一種視頻流處理系統(tǒng),包括:
如實施例四中所述的視頻流處理裝置,以及,如實施例五中所述的視頻流處理裝置。
在實際應用中,實施例四中所述的視頻流處理裝置可為服務器,實施例五中所述的視頻流處理裝置可為播放端如播放器等。
實施例四、實施例五和實施例六中所述的裝置和系統(tǒng)實施例的具體工作流程請參照前述方法實施例中的相應說明,不再贅述。
在本發(fā)明所提供的幾個實施例中,應該理解到,所揭露的裝置和方法等,可以通過其它的方式實現(xiàn)。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式。
所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部單元來實現(xiàn)本實施例方案的目的。
另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現(xiàn),也可以采用硬件加軟件功能單元的形式實現(xiàn)。
上述以軟件功能單元的形式實現(xiàn)的集成的單元,可以存儲在一個計算機可讀取存儲介質(zhì)中。上述軟件功能單元存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網(wǎng)絡設備等)或處理器(processor)執(zhí)行本發(fā)明各個實施例所述方法的部分步驟。而前述的存儲介質(zhì)包括:U盤、移動硬盤、只讀存儲器(ROM,Read-Only Memory)、隨機存取存儲器(RAM,Random Access Memory)、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進等,均應包含在本發(fā)明保護的范圍之內(nèi)。