本發(fā)明涉及視頻編碼技術(shù)領(lǐng)域,具體涉及一種視頻編碼架構(gòu)及方法。
背景技術(shù):
隨著數(shù)字化時(shí)代的到來,智能監(jiān)控系統(tǒng)已廣泛應(yīng)用于商場(chǎng)、銀行、醫(yī)院、賓館、住宅區(qū)等場(chǎng)所,實(shí)現(xiàn)了對(duì)視頻畫面的實(shí)時(shí)智能監(jiān)控。在視頻監(jiān)控應(yīng)用中,用戶可以在系統(tǒng)中設(shè)置智能分析裝置,通過其對(duì)采集的被監(jiān)控區(qū)域的視頻源進(jìn)行智能視頻分析,來完成一些異常事件、運(yùn)動(dòng)目標(biāo)或者特殊目標(biāo)等檢測(cè)(如逆行檢測(cè)、入侵檢測(cè)、徘徊檢測(cè)、非法停車檢測(cè)、人臉識(shí)別、遺棄物檢測(cè)等)并及時(shí)報(bào)警。
視頻源由視頻圖像序列構(gòu)成,視頻序列被劃分為不同的GOP(視頻圖像組),在GOP中,可以由I幀、P幀和B幀三種不同的視頻圖像幀構(gòu)成,其中,I幀為幀內(nèi)編碼幀,它不需要參考其他幀,其視頻圖像通過本幀內(nèi)的圖像信息進(jìn)行壓縮編碼,所占數(shù)據(jù)的信息量比較大;P幀和B幀均為幀間預(yù)測(cè)幀,其中,P幀為前向預(yù)測(cè)編碼幀,它采用運(yùn)動(dòng)補(bǔ)償方法,參考前面最靠近它的I幀或P幀進(jìn)行預(yù)測(cè)編碼,其壓縮比較高,B幀為雙向預(yù)測(cè)編碼幀,參考前面的I幀或P幀和后面的P幀進(jìn)行預(yù)測(cè)編碼,其壓縮比最高。
幀間預(yù)測(cè)通過運(yùn)動(dòng)補(bǔ)償技術(shù)對(duì)視頻源進(jìn)行壓縮編碼,其關(guān)鍵就在于如何通過運(yùn)動(dòng)搜索尋找匹配塊,即在參考幀一定區(qū)域內(nèi)進(jìn)行搜索,為當(dāng)前幀中的宏塊尋找與之最匹配的宏塊進(jìn)行預(yù)測(cè),則當(dāng)前幀中的宏塊位置與參考幀中的宏塊位置差為運(yùn)動(dòng)向量,這個(gè)運(yùn)動(dòng)向量是智能分析的重要數(shù)據(jù)來源?,F(xiàn)有技術(shù)中的智能分析處理器與運(yùn)動(dòng)搜索裝置相互獨(dú)立,運(yùn)動(dòng)搜索裝置通過運(yùn)動(dòng)搜索獲得的運(yùn)動(dòng)向量數(shù)據(jù)僅供編碼器使用不做其他用途,智能分析處理器如需運(yùn)動(dòng)向量數(shù)據(jù)只能在其內(nèi)部重新計(jì)算,而通過運(yùn)動(dòng)搜索獲得運(yùn)動(dòng)向量需耗費(fèi)大量運(yùn)算。
技術(shù)實(shí)現(xiàn)要素:
有鑒于此,本發(fā)明實(shí)施例提供了一種面向智能分析的視頻編碼架構(gòu),其運(yùn)動(dòng)搜索裝置捕捉到的運(yùn)動(dòng)向量數(shù)據(jù)可供智能分析處理器使用,使智能分析處理器無需進(jìn)行運(yùn)動(dòng)搜索計(jì)算即可獲得運(yùn)動(dòng)向量;本發(fā)明實(shí)施例還提供了一種面向智能分析的視頻編碼方法,避免了智能分析處理器為獲得運(yùn)動(dòng)向量重新進(jìn)行運(yùn)動(dòng)搜索計(jì)算,解決了其資源耗費(fèi)巨大的技術(shù)問題。
本發(fā)明一實(shí)施例提供的一種面向智能分析的視頻編碼架構(gòu),包括:運(yùn)動(dòng)搜索裝置,用于運(yùn)動(dòng)搜索并捕捉相鄰幀間的運(yùn)動(dòng)向量數(shù)據(jù),并進(jìn)行輸出;智能分析處理器,用于獲取相鄰幀間的運(yùn)動(dòng)向量數(shù)據(jù),完成視頻內(nèi)容的智能分析工作;
其中,所述面向智能分析的視頻編碼架構(gòu),進(jìn)一步包括視頻編碼器,用于對(duì)源視頻進(jìn)行視頻編碼,計(jì)算相鄰幀間的運(yùn)動(dòng)向量數(shù)據(jù);
其中,所述運(yùn)動(dòng)向量數(shù)據(jù)包括P幀和/或B幀各宏塊的初始運(yùn)動(dòng)向量;
其中,所述初始運(yùn)動(dòng)向量為運(yùn)動(dòng)搜索裝置捕捉到的當(dāng)前幀中的宏塊與其在參考幀中最相似宏塊之間的位移矢量;
其中,所述宏塊的劃分模式包括運(yùn)動(dòng)搜索中使用的劃分模式;
其中,所述運(yùn)動(dòng)搜索中使用的劃分模式為動(dòng)態(tài)劃分模式;
其中,所述智能分析處理器的功能通過神經(jīng)網(wǎng)絡(luò)處理、圖像分析或者機(jī)器視覺實(shí)現(xiàn)。
本發(fā)明一實(shí)施例提供的一種面向智能分析的視頻編碼方法,包括:運(yùn)動(dòng)搜索并捕捉相鄰幀間的運(yùn)動(dòng)向量數(shù)據(jù),并進(jìn)行輸出;獲取相鄰幀間的運(yùn)動(dòng)向量數(shù)據(jù),完成視頻內(nèi)容的智能分析工作;
其中,所述面向智能分析的視頻編碼方法,進(jìn)一步包括:
對(duì)源視頻進(jìn)行視頻編碼,計(jì)算相鄰幀間的運(yùn)動(dòng)向量數(shù)據(jù)。
本發(fā)明實(shí)施例提供的面向智能分析的視頻編碼架構(gòu),其運(yùn)動(dòng)搜索裝置獲得的運(yùn)動(dòng)向量數(shù)據(jù)傳輸給智能分析處理器,使智能分析處理器在此基礎(chǔ)上即可完成智能分析工作;本發(fā)明實(shí)施例提供的面向智能分析的視頻編碼方法,使得智能分析處理器無需進(jìn)行運(yùn)動(dòng)搜索即可獲得運(yùn)動(dòng)向量,節(jié)省了大量運(yùn)算。
附圖說明
圖1所示為本發(fā)明一實(shí)施例提供的一種面向智能分析的視頻編碼架構(gòu)的結(jié)構(gòu)示意圖。
圖2所示為本發(fā)明一實(shí)施例提供的一種面向智能分析的視頻編碼方法的流程圖。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。圖紙中的步驟編號(hào)僅用于作為該步驟的附圖標(biāo)記,不表示執(zhí)行順序。
圖1所示為本發(fā)明一實(shí)施例提供的一種面向智能分析的視頻編碼架構(gòu)的結(jié)構(gòu)示意圖。如圖1所示,該面向智能分析的視頻編碼架構(gòu),包括:
運(yùn)動(dòng)搜索裝置1,用于運(yùn)動(dòng)搜索并捕捉相鄰幀間的運(yùn)動(dòng)向量數(shù)據(jù),并進(jìn)行輸出;
智能分析處理器2,用于獲取相鄰幀間的運(yùn)動(dòng)向量數(shù)據(jù),完成視頻內(nèi)容的智能分析工作。即:智能分析處理器2無需重新計(jì)算或者運(yùn)動(dòng)搜索即可通過運(yùn)動(dòng)搜索裝置1獲得運(yùn)動(dòng)向量數(shù)據(jù),并根據(jù)此數(shù)據(jù)完成如前景區(qū)域、背景區(qū)域等信息的分析、分離以及分析結(jié)果的輸出,相關(guān)的視頻編碼/解碼設(shè)備再根據(jù)輸出結(jié)果的不同可能采取不同策略進(jìn)行圖像壓縮、圖像重建等后續(xù)編碼或解碼程序,其中視頻的前景區(qū)域是相對(duì)于視頻的背景區(qū)域而言的,它根據(jù)用戶的不同需求而做不同設(shè)定,例如,如果用戶感興趣的對(duì)象是運(yùn)動(dòng)的物體,則在視頻畫面中運(yùn)動(dòng)的物體即為前景區(qū)域。
在本發(fā)明一實(shí)施例中,智能分析處理器2的功能可通過神經(jīng)網(wǎng)絡(luò)處理、圖像分析或者機(jī)器視覺實(shí)現(xiàn),本發(fā)明對(duì)此不做具體限定。
本發(fā)明另一實(shí)施例提供的一種面向智能分析的視頻編碼架構(gòu),進(jìn)一步包括視頻編碼器,用于對(duì)源視頻進(jìn)行視頻編碼,計(jì)算相鄰幀間的運(yùn)動(dòng)向量數(shù)據(jù)。
因?yàn)橹悄芊治鎏幚砥?以幀間預(yù)測(cè)幀的信息為基礎(chǔ)進(jìn)行智能分析工作,而視頻編碼器對(duì)參考幀以宏塊為單位進(jìn)行編碼,則相鄰幀間宏塊的運(yùn)動(dòng)向量是智能分析的重要數(shù)據(jù)來源。幀間預(yù)測(cè)幀包括P幀和B幀兩種,在本發(fā)明一實(shí)施例中,運(yùn)動(dòng)搜索裝置1傳輸給智能分析處理器2的運(yùn)動(dòng)向量數(shù)據(jù)包括P幀和/或B幀各宏塊的初始運(yùn)動(dòng)向量。
在本發(fā)明一實(shí)施例中,初始運(yùn)動(dòng)向量為運(yùn)動(dòng)搜索裝置1捕捉到的當(dāng)前幀中的宏塊與其在參考幀中最相似宏塊之間的位移矢量,而不是視頻編碼器最終采用的經(jīng)RDO(碼率與失真度優(yōu)化函數(shù))計(jì)算后的運(yùn)動(dòng)矢量。運(yùn)動(dòng)搜索裝置1在參考幀內(nèi)可以搜索捕捉到與當(dāng)前宏塊最匹配的宏塊(稱為預(yù)測(cè)宏塊),預(yù)測(cè)宏塊與當(dāng)前宏塊間的位移為運(yùn)動(dòng)向量,它們之間的像素差值為殘差,則當(dāng)前幀中的宏塊可以用一個(gè)殘差和一對(duì)運(yùn)動(dòng)向量來表示。我們可以理解,殘差值越小,失真度越小,而運(yùn)動(dòng)向量越小,需要的壓縮編碼的比特?cái)?shù)越小,即與當(dāng)前宏塊最匹配的預(yù)測(cè)宏塊可能處于相對(duì)較遠(yuǎn)的位置,也就是其對(duì)應(yīng)的運(yùn)動(dòng)向量可能相對(duì)較大,需要較大的比特?cái)?shù)進(jìn)行編碼處理及存儲(chǔ)工作,在后續(xù)實(shí)際的編碼工作中我們往往會(huì)綜合考慮運(yùn)動(dòng)向量和殘差值對(duì)當(dāng)前幀的影響,通過RDO計(jì)算選取RDO最小的搜索數(shù)據(jù)進(jìn)行編碼利用,這通常是以圖像的失真度為代價(jià)的。而本發(fā)明中運(yùn)動(dòng)搜索裝置1提供給智能分析處理器2的運(yùn)動(dòng)向量數(shù)據(jù)主要供智能分析處理器2進(jìn)行智能分析利用,選取初始運(yùn)動(dòng)向量進(jìn)行傳輸更利于智能分析處理器2進(jìn)行客觀分析,進(jìn)而輸出更為精確的分析結(jié)果。
在本發(fā)明一實(shí)施例中,運(yùn)動(dòng)搜索的模式可以選擇精確度最高的全局搜索模式,可以選擇典型的三步法、新三步法、非對(duì)稱六邊形搜索模式,也可以選擇菱形搜索模式、矩形搜索模式、十字搜索模式、迭代搜索模式中的一種或多種方法組合的搜索模式,用戶可根據(jù)自己的不同需求而選定,本發(fā)明對(duì)此不做具體限定。
在本發(fā)明一實(shí)施例中,宏塊的劃分模式包括其運(yùn)動(dòng)搜索過程中使用的各種劃分模式。本領(lǐng)域的技術(shù)人員可以理解,運(yùn)動(dòng)搜索中需要將圖像以宏塊或者編碼樹為單位劃分成多種子塊進(jìn)行子塊匹配預(yù)測(cè),而宏塊/編碼樹的劃分包括多種模式,例如,可劃分為64*64、16*16、8*8或者4*4等平方形式的子塊,也可利用四叉樹結(jié)構(gòu)劃分為64*32、32*16、16*8、8*4等非平方形式的子塊。總之,宏塊/編碼樹被劃分成的子塊越小,運(yùn)動(dòng)搜索能夠匹配到參考幀中的圖像越精確,而運(yùn)動(dòng)搜索裝置1傳輸給智能分析處理器2的運(yùn)動(dòng)向量包括各種劃分模式下的運(yùn)動(dòng)向量。
在本發(fā)明一實(shí)施例中,運(yùn)動(dòng)搜索中使用的劃分模式為動(dòng)態(tài)劃分模式,即:在運(yùn)動(dòng)搜索中,各個(gè)宏塊/編碼樹的劃分模式是動(dòng)態(tài)適配劃分的,既可能被劃分為64*64、16*16、8*8、4*4等模式,也可能被劃分為64*32、32*16、16*8、8*4等模式,還可能被劃分為未來編碼標(biāo)準(zhǔn)所列的其他模式,本發(fā)明對(duì)此不做具體限定。
本發(fā)明實(shí)施例還提供了一種面向智能分析的視頻編碼方法,包括:
步驟101:運(yùn)動(dòng)搜索并捕捉相鄰幀間的運(yùn)動(dòng)向量數(shù)據(jù),并進(jìn)行輸出;
步驟102:獲取相鄰幀間的運(yùn)動(dòng)向量數(shù)據(jù),完成視頻內(nèi)容的智能分析工作。
本發(fā)明另一實(shí)施例提供的一種面向智能分析的視頻編碼方法,進(jìn)一步包括:
步驟103:對(duì)源視頻進(jìn)行視頻編碼,計(jì)算相鄰幀間的運(yùn)動(dòng)向量數(shù)據(jù)。
在本發(fā)明一實(shí)施例中,運(yùn)動(dòng)向量數(shù)據(jù)包括P幀和/或B幀各宏塊的初始運(yùn)動(dòng)向量,該初始運(yùn)動(dòng)向量為運(yùn)動(dòng)搜索捕捉到的當(dāng)前幀中的宏塊與其在參考幀中最相似宏塊之間的位移矢量。
本發(fā)明實(shí)施例提供的面向智能分析的視頻編碼架構(gòu),其運(yùn)動(dòng)搜索裝置獲得的運(yùn)動(dòng)向量數(shù)據(jù)傳輸給智能分析處理器,使智能分析處理器在此基礎(chǔ)上即可完成智能分析工作;本發(fā)明實(shí)施例提供的面向智能分析的視頻編碼方法,使得智能分析處理器無需進(jìn)行運(yùn)動(dòng)搜索即可獲得運(yùn)動(dòng)向量,節(jié)省了大量運(yùn)算。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。