專利名稱:一種基于場景模型自適應(yīng)更新的視頻編解碼方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種基于場景模型自適應(yīng)更新的視頻編解碼方法,尤其涉及基于視頻序列的碼流大小信息,動態(tài)自適應(yīng)的更新場景圖像,進而使用更新場景圖像完成更高效的預測編解碼。屬于數(shù)字媒體處理技術(shù)領(lǐng)域中的視頻編解碼技術(shù)。
背景技術(shù):
視頻編碼技術(shù)是數(shù)字視頻處理的關(guān)鍵技術(shù),針對未壓縮或已壓縮視頻文件,通過高性能、快速的編碼算法,可以將較大的視頻文件壓縮為占用空間更小的二進制文件。目前,視頻編碼技術(shù)已經(jīng)在許多領(lǐng)域都得到了廣泛的應(yīng)用,并經(jīng)歷著日新月異的高速發(fā)展。視頻編解碼性能的評測由壓縮視頻的質(zhì)量和壓縮視頻的碼率決定。壓縮視頻的質(zhì) 量分為主觀評測和客觀評測,碼率客觀的決定了視頻壓縮后的大小,因此視頻編解碼的目的是在視頻質(zhì)量不降低的基礎(chǔ)上降低碼率,或是在碼率不升高的基礎(chǔ)上提高視頻質(zhì)量。因此在視頻編解碼領(lǐng)域,一般用率失真曲線表示編碼方法的編解碼性能。率失真優(yōu)化可以以圖像為單位進行,降低視頻中一些圖像的率失真代價,同時不影響其他圖像的編碼性能,可以提高整體的編碼性能。最近發(fā)展的視頻編碼技術(shù)證明,基于視頻內(nèi)容的場景建模編碼技術(shù),相比不利用視頻場景信息的一般的編碼算法,可以實現(xiàn)較大的性能增益。針對視頻場景特性,基于解碼重建圖像進行訓練得到場景圖像用于預測編碼(黃鐵軍,張賢國,梁路宏,黃倩,高文.一種基于場景建模的靜態(tài)攝像機視頻壓縮方法與系統(tǒng).專利申請?zhí)?01010034117. 3),該方法可以獲得較高的性能提升,相比一般的編轉(zhuǎn)碼方式可以節(jié)省一半以上的碼率。雖然基于視頻內(nèi)容的場景建模編轉(zhuǎn)碼技術(shù)可以獲得較高的性能提升,但是目前基于該方法的編碼方法均是采用固定幀數(shù)更新場景的方法。如果場景圖像更新得太頻繁,會導致場景圖像過多的編入碼流,從而會使編碼碼流變大;相反,如果場景圖像長期才更新一次,會降低場景幀的參考價值。因此,利用碼流大小關(guān)系,自適應(yīng)動態(tài)更新場景很好地解決了以上問題。
發(fā)明內(nèi)容
本發(fā)明提出了一種基于場景模型自適應(yīng)更新的視頻編解碼方法。該方法首先計算出場景圖像更新前若干幀,場景圖像更新后若干幀,以及場景圖像之間的碼流大小關(guān)系,并以此作為依據(jù)來判斷在當前位置上是否需要更新場景。然后,對于更新的場景,可以使用已編碼的場景圖像對其進行預測編碼,從而減小場景更新代價。以動態(tài)自適用更新的場景為基礎(chǔ),輸入的待編碼圖像可以選擇性適用若干場景圖像或普通參考圖像作為參考圖像進行預測編碼。對應(yīng)的,在解碼過程中,首先解碼場景更新標識,然后根據(jù)解碼出的場景更新標識對場景圖像進行解碼,再根據(jù)解碼出來的場景圖像,對視頻圖像進行解碼。以上述算法思想為基礎(chǔ),本發(fā)明提出了一種基于場景模型自適應(yīng)更新的視頻編解碼方法,其特征在于使用自適應(yīng)場景更新算法更新若干場景圖像,并使用這些場景圖像對視頻圖像進行編解碼。根據(jù)本發(fā)明的其中一發(fā)明目的,其中提供一種基于場景模型自適應(yīng)更新的視頻編解碼方法,包括如下步驟首先計算出場景圖像更新前若干幀,場景圖像更新后若干幀,以及場景圖像之間的碼流大小關(guān)系;依據(jù)上述條件來判斷在當前位置上是否需要更新場景;對于需要更新的場景,使用已編碼的場景圖像對其進行預測編碼,從而減小場景更新代價;以動態(tài)自適用更新的場景為基礎(chǔ),輸入的待編碼圖像可以選擇性適用若干場景圖 像或普通參考圖像作為參考圖像進行預測編碼;對應(yīng)的,在解碼過程中,首先解碼場景更新標識,然后根據(jù)解碼出的場景更新標識對場景圖像進行解碼,再根據(jù)解碼出來的場景圖像,對視頻圖像進行解碼。根據(jù)本發(fā)明的又一發(fā)明目的,其中提供一種基于場景模型自適應(yīng)更新的視頻編解碼方法,包括下列步驟場景圖像訓練步驟以若干已編碼的重建圖像為訓練集,使用場景模型生成算法獲得場景圖像;場景圖像編碼步驟采用傳統(tǒng)的圖像編碼技術(shù)對場景圖像進行編碼;場景更新決策步驟在場景圖像編碼之后,根據(jù)場景圖像更新前若干幀;更新后若干幀,以及場景圖像之間的碼流大小關(guān)系判定是否需要更新當前場景;視頻圖像編碼步驟在編碼更新之后的視頻圖像時,在最近更新的場景和之前的更新場景中選擇較好的圖像,和普通參考圖像一起作為當前編碼圖像的預測參考。根據(jù)本發(fā)明進一步的發(fā)明目的,其中還在于場景圖像編碼步驟中,場景圖像可以使用的編碼方式包括直接編碼采用傳統(tǒng)的幀內(nèi)預測編碼方法編碼該場景;或者場景圖像預測編碼使用已編碼場景圖像做預測參考,編碼該更新場景幀;如果編碼方式可選,則需要將所采用的編碼方式標志位編入碼流。根據(jù)本發(fā)明進一步的發(fā)明目的,其中還在于場景圖像預測編碼包括以下步驟宏塊類別劃分步驟利用前一幀場景圖像為參考,將當前需要更新的場景圖像劃分為不變宏塊和變化宏塊;基于分類宏塊的高效編碼對于已劃分類型的宏塊,采取不同的編碼方法,在保證編碼質(zhì)量的同時節(jié)省場景圖像碼率。根據(jù)本發(fā)明進一步的發(fā)明目的,其中還在于場景圖像編碼步驟中所包含的宏塊類別劃分步驟中,宏塊劃分方法包括基于像素點分布的劃分方法對于每個宏塊,比較該宏塊與前一場景圖像對應(yīng)位置的宏塊發(fā)生了像素值變化的像素點個數(shù)和分布,如果該個數(shù)大于設(shè)定閾值或者分布較為集中,則劃分該宏塊為變化宏塊,否則劃分該宏塊為不變宏塊;基于像素值差異的劃分方法對于每個宏塊,比較該宏塊與前一場景圖像對應(yīng)位置的宏塊發(fā)生的像素值差異的累積結(jié)果,如果累計結(jié)果大于閾值,則劃分該宏塊為變化宏塊,否則劃分該宏塊為不變宏塊。
根據(jù)本發(fā)明進一步的發(fā)明目的,其中還在于場景圖像編碼步驟中所包含的基于分類宏塊的高效編碼步驟中,對變化宏塊和不變宏塊采用不同的編碼方式對于變化宏塊,使用所有編碼模式;對于不變宏塊,只采用SKIP模式編碼。根據(jù)本發(fā)明進一步的發(fā)明目的,其中還在于場景更新決策步驟中,當插入一幀場景圖像之后,記錄該場景圖像的碼流大小,并從該圖像下一幀開始對碼流大小進行累加計,比較累加值與場景圖像的碼流大小的比值與閾值的大小關(guān)系,如果大于閾值,則更新場景圖像。根據(jù)本發(fā)明進一步的發(fā)明目的,其中還在于場景更新決策步驟中使用的閾值的計算方法包括基于碼流大小的更新根據(jù)場景圖像前N幀平均碼流大小、場景圖像后N幀平均碼 流大小和量化參數(shù)計算出閾值。根據(jù)本發(fā)明進一步的發(fā)明目的,其中還在于視頻圖像編碼步驟中,對不同的參考圖像進行擇優(yōu)選擇的方法包括場景擇優(yōu)選擇方法在編碼普通圖像時,要把更新之后的場景圖像與更新前的場景圖像、以及初始的場景圖像作比較,使用相對于該普通圖像具有最優(yōu)參考價值的圖像作為場景參考圖像完成場景預測;參考幀數(shù)增加方法增加若干場景圖像作為每一個普通圖像的預測單元可選的參考圖像,在編碼該普通圖像時,每個預測單元會根據(jù)預測殘差的代價函數(shù)決定選擇哪個參考圖像。根據(jù)本發(fā)明進一步的發(fā)明目的,其中還在于場景擇優(yōu)選擇方法中包括以下步驟計算與對應(yīng)宏塊的差別計算當前幀的每個宏塊與前一幀、初始場景幀和更新之后場景幀的對應(yīng)宏塊的像素值差值絕對值之和,分別記為dl、d2和d 3 ;計算與場景圖像的差別對于當前幀的每個宏塊,取dl與d2的較小值進行累加得到SAD1,按照同樣方法取dl與d3的較小值進行累加得到SAD2 ;比較并選擇更優(yōu)場景比較SADl與SAD2的值,若SADl值比較小則選擇初始場景圖像,反之則選擇更新之后的場景圖像。根據(jù)本發(fā)明進一步的發(fā)明目的,其中在于它的解碼過程主要包括以下步驟場景更新標識解碼解碼寫入碼流中的場景更新標識位,根據(jù)標志位判斷場景圖像使用的直接編碼方法還是場景圖像預測編碼;場景圖像解碼根據(jù)解碼的場景更新標識,對場景圖像進行解碼;視頻圖像解碼根據(jù)解碼出的場景圖像,對視頻圖像進行解碼。根據(jù)本發(fā)明進一步的發(fā)明目的,其中還在于它的場景解碼過程中,如果根據(jù)標識位得到該場景圖像是直接編碼的,則使用傳統(tǒng)的幀內(nèi)預測解碼方法解碼該場景圖像;如果根據(jù)標識位得到該場景圖像是場景圖像預測編碼的,則以前一幀場景圖像作為參考,解碼當前場景圖像。本局本發(fā)明的又一發(fā)明目的,其中還提供一種基于場景模型自適應(yīng)更新的視頻編解碼設(shè)備,包括下列步驟場景圖像訓練裝置以若干已編碼的重建圖像為訓練集,使用場景模型生成算法獲得場景圖像;場景圖像編碼裝置采用傳統(tǒng)的圖像編碼技術(shù)對場景圖像進行編碼;場景更新決策裝置在場景圖像編碼之后,根據(jù)場景圖像更新前若干幀;更新后若干幀,以及場景圖像之間的碼流大小關(guān)系判定是否需要更新當前場景;視頻圖像編碼裝置在編碼更新之后的視頻圖像時,在最近更新的場景和之前的更新場景中選擇較好的圖像,和普通參考圖像一起作為當前編碼圖像的預測參考。
圖1是本發(fā)明提出的自適應(yīng)場景更新方法的算法框架圖;圖2是本發(fā)明提出的編轉(zhuǎn)碼方法的實施步驟流程圖;·
圖3是本發(fā)明提出的場景更新決策步驟的實施流程圖;圖4是本發(fā)明提出的更新場景編碼步驟的實施流程 圖5是本發(fā)明的場景擇優(yōu)選擇模塊的具體實施方法概括的框架圖。
具體實施例方式為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖和具體實施方式
對本發(fā)明作進一步詳細的說明。本發(fā)明提出了一種基于碼流比值大小的自適應(yīng)場景更新方法,算法框架如圖1所示,參照圖1,它主要包括場景建模模塊、初始場景編碼模塊、更新場景編碼模塊、場景更新決策模塊,場景擇優(yōu)選擇模塊和幀編碼模塊等六個主要部分。其中,場景建模模塊的主要功能是利用解碼出來的視頻重建幀,使用低復雜度的場景建模算法生成場景圖像。初始場景編碼模塊的主要功能是編碼初始場景幀,由于初始場景幀會被后續(xù)的許多場景幀參考,因此為保證該場景幀的圖像質(zhì)量,該模塊采用傳統(tǒng)的I幀編碼方式進行編碼。場景更新決策模塊的主要功能是判定在當前幀位置是否需要插入一幀場景幀,傳統(tǒng)的場景更新方法都是間隔一定幀之后插入一幀場景,也就是說在編碼視頻文件之前就已經(jīng)確定在什么位置更新場景,例如如果采用900巾貞更新一次的機制,就可以確定場景中貞的更新位置為第900幀、第1800幀等。這種方法顯然是不好的,它沒有充分利用視頻自身的特點,對所有的視頻都是采用一樣的更新策略。如果視頻中場景的變化很頻繁,900幀更新一次顯然是不及時的,這樣會導致場景的參考效果不夠理想。相反,如果視頻的場景的變化很少,但依然采取900幀更新一次的機制就會使碼流總大小變得很大,因為這種情況下場景實際上是可以不用更新的。因此,該模塊的提出就是為了解決上述問題。場景擇優(yōu)選擇模塊的主要功能是在更新的場景和初始場景中選擇一個較好的場景幀為當前編碼幀提供編碼參考。一般情況下,根據(jù)視頻的時間相關(guān)性,越靠近編碼幀的場景參考效果越好,但是這是針對于大多數(shù)情況,并不能確保每一幀都是如此。因此為了在最大程度上提高編碼的性能,使用場景擇優(yōu)選擇模塊來解決這一問題,具體實施方案后面有詳細陳述。幀編碼模塊的主要功能就是采用傳統(tǒng)編碼器的編碼方法編碼每一幀。參照圖3,場景更新決策模塊中,包含碼流比值計算和閾值計算步驟,碼流的比值計算公式如下所示
權(quán)利要求
1.一種基于場景模型自適應(yīng)更新的視頻編解碼方法,包括如下步驟首先計算出場景圖像更新前若干幀,場景圖像更新后若干幀,以及場景圖像之間的碼流大小關(guān)系;依據(jù)上述條件來判斷在當前位置上是否需要更新場景;對于需要更新的場景,使用已編碼的場景圖像對其進行預測編碼,從而減小場景更新代價;以動態(tài)自適用更新的場景為基礎(chǔ),輸入的待編碼圖像可以選擇性適用若干場景圖像或普通參考圖像作為參考圖像進行預測編碼;對應(yīng)的,在解碼過程中,首先解碼場景更新標識,然后根據(jù)解碼出的場景更新標識對場景圖像進行解碼,再根據(jù)解碼出來的場景圖像,對視頻圖像進行解碼。
2.一種基于場景模型自適應(yīng)更新的視頻編解碼方法,包括下列步驟場景圖像訓練步驟以若干已編碼的重建圖像為訓練集,使用場景模型生成算法獲得場景圖像;場景圖像編碼步驟采用傳統(tǒng)的圖像編碼技術(shù)對場景圖像進行編碼;場景更新決策步驟在場景圖像編碼之后,根據(jù)場景圖像更新前若干幀;更新后若干幀,以及場景圖像之間的碼流大小關(guān)系判定是否需要更新當前場景;視頻圖像編碼步驟在編碼更新之后的視頻圖像時,在最近更新的場景和之前的更新場景中選擇較好的圖像,和普通參考圖像一起作為當前編碼圖像的預測參考。
3.如權(quán)利要求2所述的基于場景模型自適應(yīng)更新的視頻編解碼方法,其特征還在于場景圖像編碼步驟中,場景圖像可以使用的編碼方式包括直接編碼采用傳統(tǒng)的幀內(nèi)預測編碼方法編碼該場景;或者場景圖像預測編碼使用已編碼場景圖像做預測參考,編碼該更新場景幀;如果編碼方式可選,則需要將所采用的編碼方式標志位編入碼流。
4.如權(quán)利要求3所述的基于場景模型自適應(yīng)更新的視頻編解碼方法,其特征還在于場景圖像預測編碼包括以下步驟宏塊類別劃分步驟利用前一幀場景圖像為參考,將當前需要更新的場景圖像劃分為不變宏塊和變化宏塊;基于分類宏塊的高效編碼對于已劃分類型的宏塊,采取不同的編碼方法,在保證編碼質(zhì)量的同時節(jié)省場景圖像碼率。
5.如權(quán)利要求4所述的基于場景模型自適應(yīng)更新的視頻編解碼方法,其特征還在于場景圖像編碼步驟中所包含的宏塊類別劃分步驟中,宏塊劃分方法包括基于像素點分布的劃分方法對于每個宏塊,比較該宏塊與前一場景圖像對應(yīng)位置的宏塊發(fā)生了像素值變化的像素點個數(shù)和分布,如果該個數(shù)大于設(shè)定閾值或者分布較為集中,則劃分該宏塊為變化宏塊,否則劃分該宏塊為不變宏塊;基于像素值差異的劃分方法對于每個宏塊,比較該宏塊與前一場景圖像對應(yīng)位置的宏塊發(fā)生的像素值差異的累積結(jié)果,如果累計結(jié)果大于閾值,則劃分該宏塊為變化宏塊,否則劃分該宏塊為不變宏塊。
6.如權(quán)利要求4所述的基于場景模型自適應(yīng)更新的視頻編解碼方法,其特征還在于場景圖像編碼步驟中所包含的基于分類宏塊的高效編碼步驟中,對變化宏塊和不變宏塊采用不同的編碼方式對于變化宏塊,使用所有編碼模式;對于不變宏塊,只采用SKIP模式編碼。
7.如權(quán)利要求2所述的基于場景模型自適應(yīng)更新的視頻編解碼方法的編碼過程,其特征還在于場景更新決策步驟中,當插入一幀場景圖像之后,記錄該場景圖像的碼流大小,并從該圖像下一幀開始對碼流大小進行累加計,比較累加值與場景圖像的碼流大小的比值與閾值的大小關(guān)系,如果大于閾值,則更新場景圖像。
8.如權(quán)利要求2所述的基于場景模型自適應(yīng)更新的視頻編解碼方法的編碼過程,其特征還在于場景更新決策步驟中使用的閾值的計算方法包括基于碼流大小的更新根據(jù)場景圖像前N幀平均碼流大小、場景圖像后N幀平均碼流大小和量化參數(shù)計算出閾值。
9.如權(quán)利要求2所述的基于場景模型自適應(yīng)更新的視頻編解碼方法的編碼過程,其特征還在于視頻圖像編碼步驟中,對不同的參考圖像進行擇優(yōu)選擇的方法包括場景擇優(yōu)選擇方法在編碼普通圖像時,要把更新之后的場景圖像與更新前的場景圖像、以及初始的場景圖像作比較,使用相對于該普通圖像具有最優(yōu)參考價值的圖像作為場景參考圖像完成場景預測;參考幀數(shù)增加方法增加若干場景圖像作為每一個普通圖像的預測單元可選的參考圖像,在編碼該普通圖像時,每個預測單元會根據(jù)預測殘差的代價函數(shù)決定選擇哪個參考圖像。
10.如權(quán)利要求9所述的基于場景模型自適應(yīng)更新的視頻編解碼方法的編碼過程,其特征還在于場景擇優(yōu)選擇方法中包括以下步驟計算與對應(yīng)宏塊的差別計算當前幀的每個宏塊與前一幀、初始場景幀和更新之后場景幀的對應(yīng)宏塊的像素值差值絕對值之和,分別記為dl、d2和d3 ;計算與場景圖像的差別對于當前幀的每個宏塊,取dl與d2的較小值進行累加得到SAD1,按照同樣方法取dl與d3的較小值進行累加得到SAD2 ;比較并選擇更優(yōu)場景比較SADl與SAD2的值,若SADl值比較小則選擇初始場景圖像,反之則選擇更新之后的場景圖像。
11.如權(quán)利要求2所述的基于場景模型自適應(yīng)更新的視頻編解碼方法,其特征還在于它的解碼過程主要包括以下步驟場景更新標識解碼解碼寫入碼流中的場景更新標識位,根據(jù)標志位判斷場景圖像使用的直接編碼方法還是場景圖像預測編碼;場景圖像解碼根據(jù)解碼的場景更新標識,對場景圖像進行解碼;視頻圖像解碼根據(jù)解碼出的場景圖像,對視頻圖像進行解碼。
12.如權(quán)利要求2所述的基于場景模型自適應(yīng)更新的視頻編解碼方法,其特征還在于它的場景解碼過程中,如果根據(jù)標識位得到該場景圖像是直接編碼的,則使用傳統(tǒng)的幀內(nèi)預測解碼方法解碼該場景圖像;如果根據(jù)標識位得到該場景圖像是場景圖像預測編碼的,則以前一幀場景圖像作為參考,解碼當前場景圖像。
13.一種基于場景模型自適應(yīng)更新的視頻編解碼設(shè)備,包括下列步驟場景圖像訓練裝置以若干已編碼的重建圖像為訓練集,使用場景模型生成算法獲得場景圖像;場 景圖像編碼裝置采用傳統(tǒng)的圖像編碼技術(shù)對場景圖像進行編碼;場景更新決策裝置在場景圖像編碼之后,根據(jù)場景圖像更新前若干幀;更新后若干幀,以及場景圖像之間的碼流大小關(guān)系判定是否需要更新當前場景;視頻圖像編碼裝置在編碼更新之后的視頻圖像時,在最近更新的場景和之前的更新場景中選擇較好的圖像,和普通參考圖像一起作為當前編碼圖像的預測參考。
全文摘要
本發(fā)明提出了一種基于場景模型自適應(yīng)更新的視頻編解碼方法。該方法首先計算出場景圖像更新前若干幀,場景圖像更新后若干幀,以及場景圖像之間的碼流大小關(guān)系,并以此作為依據(jù)來判斷在當前位置上是否需要更新場景。然后,對于更新的場景,可以使用已編碼的場景圖像對其進行預測編碼,從而減小場景更新代價。以動態(tài)自適用更新的場景為基礎(chǔ),輸入的待編碼圖像可以選擇性適用若干場景圖像或普通參考圖像作為參考圖像進行預測編碼。對應(yīng)的,在解碼過程中,首先解碼場景更新標識,然后根據(jù)解碼出的場景更新標識對場景圖像進行解碼,再根據(jù)解碼出來的場景圖像,對視頻圖像進行解碼。
文檔編號H04N7/26GK103002284SQ20121047073
公開日2013年3月27日 申請日期2012年11月20日 優(yōu)先權(quán)日2012年11月20日
發(fā)明者黃鐵軍, 陳偉, 田永鴻, 賈惠柱, 高文 申請人:北京大學