專利名稱:一種編碼方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及視頻編碼領(lǐng)域,尤其涉及一種編碼方法及裝置。
背景技術(shù):
低功耗設(shè)計(jì)是視頻編碼器的一大挑戰(zhàn)之一。經(jīng)過(guò)分析,運(yùn)動(dòng)估計(jì)、分?jǐn)?shù)像素插值、幀內(nèi)預(yù)測(cè)、變換量化、環(huán)路濾波是影響編碼器功耗的主要因素。現(xiàn)有技術(shù)中,通常采用關(guān)閉某些編碼工具的方式來(lái)降低功耗,如快速幀內(nèi)預(yù)測(cè)技術(shù),通過(guò)對(duì)圖像紋理的信息的分析,來(lái)選擇是否關(guān)閉幀內(nèi)預(yù)測(cè)或者關(guān)閉某些預(yù)測(cè)模式。如果
檢測(cè)到紋理平坦的區(qū)域,則這些區(qū)域采用較大塊的預(yù)測(cè)模式,如H. 264中的幀內(nèi)16x16預(yù)測(cè),并且關(guān)閉幀內(nèi)4x4預(yù)測(cè);反之,如果檢測(cè)到的是紋理復(fù)雜的區(qū)域,則采用較小塊的預(yù)測(cè)模式,如札264中的幀內(nèi)4x4預(yù)測(cè),并且關(guān)閉幀內(nèi)16x16預(yù)測(cè)。通過(guò)這樣的方法,可大幅減少預(yù)測(cè)模式的種類,從而達(dá)到降低功耗的目的。但是,這樣需要增加額外的電路來(lái)判斷紋理的復(fù)雜程度,設(shè)計(jì)較復(fù)雜,且增加新的電路,同樣也會(huì)帶來(lái)功耗的增加。另外,通過(guò)分析可知,分?jǐn)?shù)像素運(yùn)動(dòng)估計(jì)需要大量的濾波邏輯,如果在視頻編碼中,關(guān)閉分?jǐn)?shù)像素濾波模塊,也可以起到大幅降低編碼器動(dòng)態(tài)功耗的效果。但是關(guān)閉分?jǐn)?shù)像素運(yùn)動(dòng)估計(jì),只使用整像素運(yùn)動(dòng)估計(jì),會(huì)帶來(lái)壓縮效率的下降,尤其在大范圍復(fù)雜運(yùn)動(dòng)的情況下顯得尤為明顯。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例所要解決的技術(shù)問(wèn)題在于,提供一種編碼方法及裝置。可在保證編碼壓縮效率的前提下,大幅度降低視頻編碼過(guò)程中的動(dòng)態(tài)功耗。為了解決上述技術(shù)問(wèn)題,本發(fā)明實(shí)施例提供了一種編碼方法,包括采集編碼過(guò)程中產(chǎn)生的宏塊的特征信息,其中,所述特征信息包括所述宏塊整像素運(yùn)動(dòng)估計(jì)后的運(yùn)動(dòng)矢量、幀間復(fù)雜度及幀內(nèi)復(fù)雜度;根據(jù)所述宏塊整像素運(yùn)動(dòng)估計(jì)后的運(yùn)動(dòng)矢量和與所述宏塊位置相鄰的相鄰塊運(yùn)動(dòng)矢量,判斷所述宏塊的運(yùn)動(dòng)類型;根據(jù)所述宏塊的運(yùn)動(dòng)類型打開(kāi)或關(guān)閉編碼過(guò)程中的部分工作流程。其中,所述相鄰塊包括左相鄰塊、上相鄰塊、左上相鄰塊、右上相鄰塊。其中,所述宏塊的運(yùn)動(dòng)類型包括靜止、真實(shí)運(yùn)動(dòng)及嚴(yán)格真實(shí)運(yùn)動(dòng)。其中,所述根據(jù)所述宏塊整像素運(yùn)動(dòng)估計(jì)后的運(yùn)動(dòng)矢量和與所述宏塊位置相鄰的相鄰塊運(yùn)動(dòng)矢量,判斷所述宏塊的運(yùn)動(dòng)類型的步驟包括計(jì)算max (I mvx_mvxn I)及 max (| mvy_mvyn |)的值,其中,(mvx, mvy)為所述宏塊整像素運(yùn)動(dòng)估計(jì)后的運(yùn)動(dòng)矢量,(mvxn, mvyn)為與所述宏塊位置相鄰的相鄰塊運(yùn)動(dòng)矢量;判斷所述宏塊的運(yùn)動(dòng)矢量值mvx及mvy是否均等于0,且所述宏塊的幀間復(fù)雜度小
于第一閾值;若是,則所述宏塊的運(yùn)動(dòng)類型為靜止;判斷max (| mvx_mvxn |)及max (| mvy-mvyn |)的值是否均小于第二閾值;
若是,則所述宏塊的運(yùn)動(dòng)類型為嚴(yán)格真實(shí)運(yùn)動(dòng);判斷max (| mvx_mvxn |)及max (| mvy-mvyn |)的值是否均小于第三閾值;若是,則所述宏塊的運(yùn)動(dòng)類型為真實(shí)運(yùn)動(dòng),其中,所述第二閾值小于所述第三閾值。其中,所述根據(jù)所述宏塊的運(yùn)動(dòng)類型打開(kāi)或關(guān)閉編碼過(guò)程中的部分工作流程的步驟包括判斷所述宏塊的運(yùn)動(dòng)類型是否為靜止或真實(shí)運(yùn)動(dòng); 若是,則關(guān)閉對(duì)所述宏塊的幀內(nèi)預(yù)測(cè)。
其中,所述根據(jù)所述宏塊的運(yùn)動(dòng)類型打開(kāi)或關(guān)閉編碼過(guò)程中的部分工作流程的步驟還包括判斷所述宏塊的運(yùn)動(dòng)類型是否為靜止或嚴(yán)格真實(shí)運(yùn)動(dòng),且所述宏塊的幀內(nèi)復(fù)雜度小于第四閾值;若是,則在關(guān)閉對(duì)所述宏塊幀內(nèi)預(yù)測(cè)的基礎(chǔ)上再關(guān)閉對(duì)所述宏塊的分?jǐn)?shù)像素運(yùn)動(dòng)估計(jì)。其中,所述根據(jù)所述宏塊的運(yùn)動(dòng)類型打開(kāi)或關(guān)閉編碼過(guò)程中的部分工作流程的開(kāi)關(guān)模式為自適應(yīng)開(kāi)關(guān)模式。相應(yīng)地,本發(fā)明實(shí)施例還提供了一種編碼裝置,包括采集模塊,用于采集編碼過(guò)程中產(chǎn)生的宏塊的特征信息,其中,所述特征信息包括所述宏塊整像素運(yùn)動(dòng)估計(jì)后的運(yùn)動(dòng)矢量、幀間復(fù)雜度及幀內(nèi)復(fù)雜度;判斷模塊,用于根據(jù)所述宏塊整像素運(yùn)動(dòng)估計(jì)后的運(yùn)動(dòng)矢量和與所述宏塊位置相鄰的相鄰塊運(yùn)動(dòng)矢量,判斷所述宏塊的運(yùn)動(dòng)類型;開(kāi)關(guān)模塊,用于根據(jù)所述宏塊的運(yùn)動(dòng)類型打開(kāi)或關(guān)閉編碼過(guò)程中的部分工作流程。其中,所述相鄰塊包括左相鄰塊、上相鄰塊、左上相鄰塊、右上相鄰塊。其中,所述判斷模塊進(jìn)一步用于計(jì)算max (I mvx_mvxn I)及 max (| mvy_mvyn |)的值,其中,(mvx, mvy)為所述宏塊整像素運(yùn)動(dòng)估計(jì)后的運(yùn)動(dòng)矢量,(mvxn, mvyn)為與所述宏塊位置相鄰的相鄰塊運(yùn)動(dòng)矢量;判斷所述宏塊的運(yùn)動(dòng)矢量值mvx及mvy是否均等于0,且所述宏塊的幀間復(fù)雜度小于第一閾值,若是,則所述宏塊的運(yùn)動(dòng)類型為靜止;判斷max (| mvx_mvxn |)及max (| mvy-mvyn |)的值是否均小于第二閾值,若是,則所述宏塊的運(yùn)動(dòng)類型為嚴(yán)格真實(shí)運(yùn)動(dòng);以及判斷max (| mvx_mvxn |)及max (| mvy-mvyn |)的值是否均小于第三閾值,若是,則所述宏塊的運(yùn)動(dòng)類型為真實(shí)運(yùn)動(dòng),其中,所述第二閾值小于所述第三閾值。其中,所述開(kāi)關(guān)模塊進(jìn)一步用于判斷所述宏塊的運(yùn)動(dòng)類型是否為靜止或真實(shí)運(yùn)動(dòng),若是,則關(guān)閉對(duì)所述宏塊的幀內(nèi)預(yù)測(cè);以及判斷所述宏塊的運(yùn)動(dòng)類型是否為靜止或嚴(yán)格真實(shí)運(yùn)動(dòng),且所述宏塊的幀內(nèi)復(fù)雜度小于第四閾值,若是,則在關(guān)閉對(duì)所述宏塊幀內(nèi)預(yù)測(cè)的基礎(chǔ)上再關(guān)閉對(duì)所述宏塊的分?jǐn)?shù)像素運(yùn)動(dòng)估計(jì)。
其中,所述開(kāi)關(guān)模塊的開(kāi)關(guān)模式為自適應(yīng)開(kāi)關(guān)模式。實(shí)施本發(fā)明實(shí)施例,具有如下有益效果只需要對(duì)編碼過(guò)程中產(chǎn)生的宏塊的特征信息進(jìn)行計(jì)算分析,并根據(jù)計(jì)算的結(jié)果對(duì)編碼過(guò)程中的幀內(nèi)預(yù)測(cè)及分?jǐn)?shù)像素運(yùn)動(dòng)估計(jì)進(jìn)行自適應(yīng)打開(kāi)和關(guān)閉,就可以在保證編碼壓縮效率的前提下,大幅度降低視頻編碼過(guò)程中的動(dòng)態(tài)功耗,實(shí)現(xiàn)綠色節(jié)能的效果;其中,根據(jù)處理結(jié)果開(kāi)關(guān)幀內(nèi)預(yù)測(cè)及分?jǐn)?shù)像素運(yùn)動(dòng)估計(jì)的開(kāi)關(guān)模式為自適應(yīng)開(kāi)關(guān)模式,這樣無(wú)需人工操作,使用方便。
為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖I是本發(fā)明編碼方法的第一實(shí)施例的流程示意圖;圖2是本發(fā)明編碼方法的第二實(shí)施例的流程示意圖;圖3是本發(fā)明編碼裝置實(shí)施例的組成示意圖。
具體實(shí)施例方式下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。參照?qǐng)D1,為本發(fā)明降低功耗的方法的第一實(shí)施例的流程示意圖,本實(shí)施例中所述降低功耗的方法包括以下步驟S101,采集編碼過(guò)程中產(chǎn)生的宏塊的特征信息。其中,所述特征信息包括所述宏塊整像素運(yùn)動(dòng)的運(yùn)動(dòng)矢量、所述宏塊的幀間復(fù)雜度及所述宏塊的幀內(nèi)復(fù)雜度。具體地,所述幀間復(fù)雜度即所述宏塊與前一幀最佳匹配位置的參考?jí)K的絕對(duì)差值和,所述幀內(nèi)復(fù)雜度即所述宏塊各像素與所述宏塊亮度平均值的絕對(duì)殘差和。S102,根據(jù)所述宏塊整像素運(yùn)動(dòng)估計(jì)后的運(yùn)動(dòng)矢量和與所述宏塊位置相鄰的相鄰塊運(yùn)動(dòng)矢量,判斷所述宏塊的運(yùn)動(dòng)類型。具體地,所述相鄰塊包括左相鄰塊、上相鄰塊、左上相鄰塊、右上相鄰塊,所述運(yùn)動(dòng)類型包括靜止、真實(shí)運(yùn)動(dòng)及嚴(yán)格真實(shí)運(yùn)動(dòng),判斷所述宏塊的運(yùn)動(dòng)類型的具體步驟包括計(jì)算max (I mvx-mvxn|)及max (| mvy_mvyn|)的值。其中,(mvx, mvy)為所述宏塊整像素運(yùn)動(dòng)估計(jì)后的運(yùn)動(dòng)矢量,(mVXn,mVyn)為與所述宏塊位置相鄰的相鄰塊運(yùn)動(dòng)矢量。當(dāng)所述宏塊的運(yùn)動(dòng)矢量值mvx及mvy均等于0,且所述宏塊的幀間復(fù)雜度小于第一閾值時(shí),則所述宏塊的運(yùn)動(dòng)類型為靜止;當(dāng)max (I mvx-mvxn I)及max (| mvy_mvyn |)的值均小于第二閾值時(shí),則所述宏塊的運(yùn)動(dòng)類型為嚴(yán)格真實(shí)運(yùn)動(dòng);當(dāng)max (I mvx-mvxn I)及max (| mvy_mvyn |)的值均小于第三閾值時(shí),則所述宏塊的運(yùn)動(dòng)類型為真實(shí)運(yùn)動(dòng),其中,所述第二閾值小于所述第三閾值。
S103,根據(jù)所述宏塊的運(yùn)動(dòng)類型打開(kāi)或關(guān)閉編碼過(guò)程中的部分工作流程。其中,根據(jù)所述宏塊的運(yùn)動(dòng)類型打開(kāi)或關(guān)閉編碼過(guò)程中的部分工作流程的開(kāi)關(guān)模式為自適應(yīng)開(kāi)關(guān)模式。這樣無(wú)需人工操作,使用方便。在本實(shí)施例中,通過(guò)對(duì)編碼過(guò)程中產(chǎn)生的宏塊的特征信息進(jìn)行計(jì)算分析,并根據(jù)計(jì)算的結(jié)果及特征信息對(duì)編碼過(guò)程中的部分工作流程進(jìn)行自適應(yīng)打開(kāi)和關(guān)閉,這樣可以在保證編碼壓縮效率的前提下,大幅度降低視頻編碼過(guò)程中的動(dòng)態(tài)功耗。參照?qǐng)D2,為本發(fā)明降低功耗的方法的第二實(shí)施例的流程示意圖,本實(shí)施例中所述編碼方法包括以下步驟S201,采集編碼過(guò)程中產(chǎn)生的宏塊的特征信息。其中,所述特征信息包括所述宏塊整像素運(yùn)動(dòng)的運(yùn)動(dòng)矢量、所述宏塊的幀間復(fù)雜度及所述宏塊的幀內(nèi)復(fù)雜度。 具體地,所述幀間復(fù)雜度即所述宏塊與前一幀最佳匹配位置的參考?jí)K的絕對(duì)差值和,所述幀內(nèi)復(fù)雜度即所述宏塊各像素與所述宏塊亮度平均值的絕對(duì)殘差和。3202,計(jì)算11^(|11^1^11|)及 max (I mvy_mvyn I)的值。其中,(mvx,mvy)為所述宏塊整像素運(yùn)動(dòng)估計(jì)后的運(yùn)動(dòng)矢量,(mvxn, mvyn)為與所述宏塊位置相鄰的相鄰塊運(yùn)動(dòng)矢量。具體地,所述相鄰塊包括左相鄰塊、上相鄰塊、左上相鄰塊、右上相鄰塊。S203,根據(jù)計(jì)算得到的值及所述宏塊的特征信息判斷所述宏塊的運(yùn)動(dòng)類型。其中,所述運(yùn)動(dòng)類型包括靜止、真實(shí)運(yùn)動(dòng)及嚴(yán)格真實(shí)運(yùn)動(dòng);當(dāng)所述宏塊的運(yùn)動(dòng)矢量值mvx及mvy均等于0,且所述宏塊的幀間復(fù)雜度小于第一閾值時(shí),則所述宏塊的運(yùn)動(dòng)類型為靜止;當(dāng)max (I mvx-mvxn I)及max (| mvy_mvyn |)的值均小于第二閾值時(shí),則所述宏塊的運(yùn)動(dòng)類型為嚴(yán)格真實(shí)運(yùn)動(dòng);當(dāng)max (I mvx-mvxn I)及max (| mvy_mvyn |)的值均小于第三閾值時(shí),則所述宏塊的運(yùn)動(dòng)類型為真實(shí)運(yùn)動(dòng),其中,所述第二閾值小于所述第三閾值。S204,判斷所述宏塊的運(yùn)動(dòng)類型是否為靜止或真實(shí)運(yùn)動(dòng),若是,則執(zhí)行步驟S205 ;否則返回步驟S201,不關(guān)閉任何工作流程,繼續(xù)采集編碼過(guò)程中產(chǎn)生的特征信息。S205,關(guān)閉對(duì)所述宏塊的幀內(nèi)預(yù)測(cè)。S206,判斷所述宏塊的運(yùn)動(dòng)類型是否為靜止或嚴(yán)格真實(shí)運(yùn)動(dòng),且所述宏塊的幀內(nèi)復(fù)雜度小于第四閾值,若是,則關(guān)閉對(duì)所述宏塊的分?jǐn)?shù)像素運(yùn)動(dòng)估計(jì);否則返回步驟S201,繼續(xù)采集編碼過(guò)程中產(chǎn)生的特征信息。此處,當(dāng)所述宏塊的運(yùn)動(dòng)類型為靜止或嚴(yán)格真實(shí)運(yùn)動(dòng),且所述宏塊的幀內(nèi)復(fù)雜度小于第四閾值時(shí),關(guān)閉對(duì)所述宏塊的分?jǐn)?shù)像素運(yùn)動(dòng)估計(jì)建立在關(guān)閉對(duì)所述宏塊幀內(nèi)預(yù)測(cè)的基礎(chǔ)上。當(dāng)計(jì)算得到的值及所述運(yùn)動(dòng)類型不滿足上述任一情況時(shí),則不作任何關(guān)閉處理。若處理當(dāng)前宏塊時(shí)關(guān)閉了某些工作流程,在處理下一個(gè)宏塊的特征信息時(shí),計(jì)算得到的結(jié)果與特征信息不滿足上述任一關(guān)閉部分工作流程的條件,則自動(dòng)打開(kāi)相應(yīng)的工作流程。其中,根據(jù)所述宏塊的運(yùn)動(dòng)類型打開(kāi)或關(guān)閉編碼過(guò)程中的部分工作流程的開(kāi)關(guān)模式為自適應(yīng)開(kāi)關(guān)模式。參照?qǐng)D3,為本發(fā)明編碼裝置實(shí)施例的組成示意圖。本實(shí)施例中所述降低功耗的裝置包括采集模塊100、判斷模塊200及開(kāi)關(guān)模塊300。所述采集模塊100用于采集編碼過(guò)程中產(chǎn)生的宏塊的特征信息。其中,所述特征信息包括所述宏塊整像素運(yùn)動(dòng)估計(jì)后的運(yùn)動(dòng)矢量、幀間復(fù)雜度及幀內(nèi)復(fù)雜度。
具體地,所述幀間復(fù)雜度即所述宏塊與前一幀最佳匹配位置的參考?jí)K的絕對(duì)差值和,所述幀內(nèi)復(fù)雜度即所述宏塊各像素與所述宏塊亮度平均值的絕對(duì)殘差和。所述判斷模塊200,用于根據(jù)所述宏塊整像素運(yùn)動(dòng)估計(jì)后的運(yùn)動(dòng)矢量和與所述宏塊位置相鄰的相鄰塊運(yùn)動(dòng)矢量,判斷所述宏塊的運(yùn)動(dòng)類型。具體地,所述相鄰塊包括左相鄰塊、上相鄰塊、左上相鄰塊、右上相鄰塊。所述判斷模塊200進(jìn)一步用于計(jì)算max (I mvx_mvxn I)及 max (| mvy_mvyn |)的值,其中,(mvx, mvy)為所述宏塊整像素運(yùn)動(dòng)估計(jì)后的運(yùn)動(dòng)矢量,(mvxn,mvyn)為與所述宏塊位置相鄰的相鄰塊運(yùn)動(dòng)矢量。判斷所述宏塊的運(yùn)動(dòng)矢量值mvx及mvy是否均等于0,且所述宏塊的幀間復(fù)雜度小于第一閾值,若是,貝1J表明所述宏塊的運(yùn)動(dòng)類型為靜止;判斷max (I mvx-mvxn |)及max (| mvy-mvyn |)的值是否均小于第二閾值,若是,則表明所述宏塊的運(yùn)動(dòng)類型為嚴(yán)格真實(shí)運(yùn)動(dòng);以及判斷max (I mvx-mvxn |)及max (| mvy-mvyn I)的值是否均小于第三閾值,若是,則表明所述宏塊的運(yùn)動(dòng)類型為真實(shí)運(yùn)動(dòng)。其中,所述第二閾值小于所述第三閾值。所述開(kāi)關(guān)模塊300用于根據(jù)所述宏塊的運(yùn)動(dòng)類型打開(kāi)或關(guān)閉編碼過(guò)程中的部分
工作流程。具體地,所述開(kāi)關(guān)模塊300進(jìn)一步用于判斷所述宏塊的運(yùn)動(dòng)類型是否為靜止或真實(shí)運(yùn)動(dòng),若是,則關(guān)閉對(duì)所述宏塊的幀內(nèi)預(yù)測(cè);以及判斷所述宏塊的運(yùn)動(dòng)類型是否為靜止或嚴(yán)格真實(shí)運(yùn)動(dòng),且所述宏塊的幀內(nèi)復(fù)雜度小于第四閾值,若是,則在關(guān)閉對(duì)所述宏塊幀內(nèi)預(yù)測(cè)的基礎(chǔ)上再關(guān)閉對(duì)所述宏塊的分?jǐn)?shù)像素運(yùn)動(dòng)估計(jì)。其中,所述開(kāi)關(guān)模塊300的開(kāi)關(guān)模式為自適應(yīng)開(kāi)關(guān)模式。這樣無(wú)需人工操作,使用方便。在本實(shí)施例中,通過(guò)所述采集模塊100采集編碼過(guò)程中產(chǎn)生的宏塊的特征信息,然后通過(guò)所述判斷模塊200對(duì)所述特征信息進(jìn)行計(jì)算分析,最后所述開(kāi)關(guān)模塊300根據(jù)計(jì)算的結(jié)果及所述特征信息對(duì)編碼過(guò)程中的幀內(nèi)預(yù)測(cè)及分?jǐn)?shù)像素運(yùn)動(dòng)估計(jì)進(jìn)行自適應(yīng)打開(kāi)和關(guān)閉,這樣可以在保證編碼壓縮效率的前提下,大幅度降低視頻編碼過(guò)程中的動(dòng)態(tài)功耗。一般情況下,幀內(nèi)預(yù)測(cè)中屬于極劇烈運(yùn)動(dòng)、快速切換等場(chǎng)景的宏塊約為20% -35%,一般場(chǎng)景約為50% -60%,靜止場(chǎng)景超過(guò)95%,因此,可關(guān)閉幀內(nèi)預(yù)測(cè)的宏塊比例約為11% -97% ;分?jǐn)?shù)像素運(yùn)動(dòng)估計(jì)中,屬于極劇烈運(yùn)動(dòng)、快速切換等場(chǎng)景的宏塊約為5% -15%,一般場(chǎng)景約為30% -40%,靜止場(chǎng)景超過(guò)95%,因此,可關(guān)閉分?jǐn)?shù)像素運(yùn)動(dòng)估計(jì)的宏塊比例約為5% -96%。因此,在實(shí)際編碼過(guò)程中,可關(guān)閉幀內(nèi)預(yù)測(cè)與分?jǐn)?shù)像素運(yùn)動(dòng)估計(jì)的宏塊比例較高,采用本發(fā)明實(shí)施例所述編碼方法及裝置,可大幅度降低視頻編碼過(guò)程中的動(dòng)態(tài)功耗。通過(guò)上述實(shí)施例的描述,本發(fā)明具有以下優(yōu)點(diǎn)只需要對(duì)編碼過(guò)程中產(chǎn)生的宏塊的特征信息進(jìn)行計(jì)算分析,并根據(jù)計(jì)算的結(jié)果對(duì)編碼過(guò)程中的幀內(nèi)預(yù)測(cè)及分?jǐn)?shù)像素運(yùn)動(dòng)估計(jì)進(jìn)行自適應(yīng)打開(kāi)和關(guān)閉,就可以在保證編碼壓縮效率的前提下,大幅度降低視頻編碼過(guò)程中的動(dòng)態(tài)功耗,實(shí)現(xiàn)綠色節(jié)能的效果;其中,根據(jù)處理結(jié)果開(kāi)關(guān)幀內(nèi)預(yù)測(cè)及分?jǐn)?shù)像素運(yùn)動(dòng)估計(jì)的開(kāi)關(guān)模式為自適應(yīng)開(kāi)關(guān)模式,這樣無(wú)需人工操作,使用方便。、
本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法中的全部或部分流程,是可以通過(guò)計(jì)算機(jī)程序來(lái)指令相關(guān)的硬件來(lái)完成,所述的程序可存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),可包括如上述各方法的實(shí)施例的流程。其中,所述的存儲(chǔ)介質(zhì)可為磁碟、光盤、只讀存儲(chǔ)記憶體(Read-Only Memory, ROM)或隨機(jī)存儲(chǔ)記憶體(Random AccessMemory, RAM)等。
以上所揭露的僅為本發(fā)明較佳實(shí)施例而已,當(dāng)然不能以此來(lái)限定本發(fā)明之權(quán)利范圍,因此依本發(fā)明權(quán)利要求所作的等同變化,仍屬本發(fā)明所涵蓋的范圍。
權(quán)利要求
1.一種編碼方法,其特征在于,包括 采集編碼過(guò)程中產(chǎn)生的宏塊的特征信息,其中,所述特征信息包括所述宏塊整像素運(yùn)動(dòng)估計(jì)后的運(yùn)動(dòng)矢量、幀間復(fù)雜度及幀內(nèi)復(fù)雜度; 根據(jù)所述宏塊整像素運(yùn)動(dòng)估計(jì)后的運(yùn)動(dòng)矢量和與所述宏塊位置相鄰的相鄰塊運(yùn)動(dòng)矢量,判斷所述宏塊的運(yùn)動(dòng)類型; 根據(jù)所述宏塊的運(yùn)動(dòng)類型打開(kāi)或關(guān)閉編碼過(guò)程中的部分工作流程。
2.如權(quán)利要求I所述的編碼方法,其特征在于,所述相鄰塊包括左相鄰塊、上相鄰塊、左上相鄰塊、右上相鄰塊。
3.如權(quán)利要求I所述的編碼方法,其特征在于,所述宏塊的運(yùn)動(dòng)類型包括靜止、真實(shí)運(yùn)動(dòng)及嚴(yán)格真實(shí)運(yùn)動(dòng)。
4.如權(quán)利要求I所述的編碼方法,其特征在于,所述根據(jù)所述宏塊整像素運(yùn)動(dòng)估計(jì)后的運(yùn)動(dòng)矢量和與所述宏塊位置相鄰的相鄰塊運(yùn)動(dòng)矢量,判斷所述宏塊的運(yùn)動(dòng)類型的步驟包括 計(jì)算max (I mvx-mvxnI)及max (| mvy_mvyn |)的值,其中,(mvx, mvy)為所述宏塊整像素運(yùn)動(dòng)估計(jì)后的運(yùn)動(dòng)矢量,(mvxn, mvyn)為與所述宏塊位置相鄰的相鄰塊運(yùn)動(dòng)矢量; 判斷所述宏塊的運(yùn)動(dòng)矢量值mvx及mvy是否均等于O,且所述宏塊的巾貞間復(fù)雜度小于第一閾值; 若是,則所述宏塊的運(yùn)動(dòng)類型為靜止; 判斷max (I mvx-mvxn|)及max (| mvy-mvyn |)的值是否均小于第二閾值; 若是,則所述宏塊的運(yùn)動(dòng)類型為嚴(yán)格真實(shí)運(yùn)動(dòng); 判斷max (I mvx-mvxn |)及max (| mvy-mvyn |)的值是否均小于第三閾值; 若是,則所述宏塊的運(yùn)動(dòng)類型為真實(shí)運(yùn)動(dòng),其中,所述第二閾值小于所述第三閾值。
5.如權(quán)利要求I所述的編碼方法,其特征在于,所述根據(jù)所述宏塊的運(yùn)動(dòng)類型打開(kāi)或關(guān)閉編碼過(guò)程中的部分工作流程的步驟包括 判斷所述宏塊的運(yùn)動(dòng)類型是否為靜止或真實(shí)運(yùn)動(dòng); 若是,則關(guān)閉對(duì)所述宏塊的幀內(nèi)預(yù)測(cè)。
6.如權(quán)利要求5所述的編碼方法,其特征在于,所述根據(jù)所述宏塊的運(yùn)動(dòng)類型打開(kāi)或關(guān)閉編碼過(guò)程中的部分工作流程的步驟還包括 判斷所述宏塊的運(yùn)動(dòng)類型是否為靜止或嚴(yán)格真實(shí)運(yùn)動(dòng),且所述宏塊的幀內(nèi)復(fù)雜度小于第四閾值; 若是,則在關(guān)閉對(duì)所述宏塊幀內(nèi)預(yù)測(cè)的基礎(chǔ)上再關(guān)閉對(duì)所述宏塊的分?jǐn)?shù)像素運(yùn)動(dòng)估計(jì)。
7.如權(quán)利要求1-6任一項(xiàng)所述的編碼方法,其特征在于,所述根據(jù)所述宏塊的運(yùn)動(dòng)類型打開(kāi)或關(guān)閉編碼過(guò)程中的部分工作流程的開(kāi)關(guān)模式為自適應(yīng)開(kāi)關(guān)模式。
8.一種編碼裝置,其特征在于,包括 采集模塊,用于采集編碼過(guò)程中產(chǎn)生的宏塊的特征信息,其中,所述特征信息包括所述宏塊整像素運(yùn)動(dòng)估計(jì)后的運(yùn)動(dòng)矢量、幀間復(fù)雜度及幀內(nèi)復(fù)雜度; 判斷模塊,用于根據(jù)所述宏塊整像素運(yùn)動(dòng)估計(jì)后的運(yùn)動(dòng)矢量和與所述宏塊位置相鄰的相鄰塊運(yùn)動(dòng)矢量,判斷所述宏塊的運(yùn)動(dòng)類型;開(kāi)關(guān)模塊,用于根據(jù)所述宏塊的運(yùn)動(dòng)類型打開(kāi)或關(guān)閉編碼過(guò)程中的部分工作流程。
9.如權(quán)利要求8所述的編碼裝置,其特征在于,所述相鄰塊包括左相鄰塊、上相鄰塊、左上相鄰塊、右上相鄰塊。
10.如權(quán)利要求8所述的編碼裝置,其特征在于,所述判斷模塊進(jìn)一步用于 計(jì)算max (I mvx-mvxnI)及max (| mvy_mvyn |)的值,其中,(mvx, mvy)為所述宏塊整像素運(yùn)動(dòng)估計(jì)后的運(yùn)動(dòng)矢量,(mvxn, mvyn)為與所述宏塊位置相鄰的相鄰塊運(yùn)動(dòng)矢量; 判斷所述宏塊的運(yùn)動(dòng)矢量值mvx及mvy是否均等于O,且所述宏塊的巾貞間復(fù)雜度小于第一閾值,若是,則所述宏塊的運(yùn)動(dòng)類型為靜止; 判斷max (I mvx-mvxn |)及max (| mvy-mvyn |)的值是否均小于第二閾值,若是,則所述宏塊的運(yùn)動(dòng)類型為嚴(yán)格真實(shí)運(yùn)動(dòng);以及判斷max (I mvx-mvxn |)及max (| mvy-mvyn |)的值是否均小于第三閾值,若是,則所述宏塊的運(yùn)動(dòng)類型為真實(shí)運(yùn)動(dòng),其中,所述第二閾值小于所述第三閾值。
11.如權(quán)利要求8所述的編碼裝置,其特征在于,所述開(kāi)關(guān)模塊進(jìn)一步用于 判斷所述宏塊的運(yùn)動(dòng)類型是否為靜止或真實(shí)運(yùn)動(dòng),若是,則關(guān)閉對(duì)所述宏塊的幀內(nèi)預(yù)測(cè);以及 判斷所述宏塊的運(yùn)動(dòng)類型是否為靜止或嚴(yán)格真實(shí)運(yùn)動(dòng),且所述宏塊的幀內(nèi)復(fù)雜度小于第四閾值,若是,則在關(guān)閉對(duì)所述宏塊幀內(nèi)預(yù)測(cè)的基礎(chǔ)上再關(guān)閉對(duì)所述宏塊的分?jǐn)?shù)像素運(yùn)動(dòng)估計(jì)。
12.如權(quán)利要求8-11任一項(xiàng)所述的編碼裝置,其特征在于,所述開(kāi)關(guān)模塊的開(kāi)關(guān)模式為自適應(yīng)開(kāi)關(guān)模式。
全文摘要
本發(fā)明實(shí)施例公開(kāi)了一種編碼方法,包括采集編碼過(guò)程中產(chǎn)生的宏塊的特征信息,其中,所述特征信息包括所述宏塊整像素運(yùn)動(dòng)估計(jì)后的運(yùn)動(dòng)矢量、幀間復(fù)雜度及幀內(nèi)復(fù)雜度;根據(jù)所述宏塊整像素運(yùn)動(dòng)估計(jì)后的運(yùn)動(dòng)矢量和與所述宏塊位置相鄰的相鄰塊運(yùn)動(dòng)矢量,判斷所述宏塊的運(yùn)動(dòng)類型;根據(jù)所述宏塊的運(yùn)動(dòng)類型打開(kāi)或關(guān)閉編碼過(guò)程中的部分工作流程。本發(fā)明實(shí)施例還公開(kāi)了一種編碼裝置。采用本發(fā)明,可在保證編碼壓縮效率的前提下,大幅度降低視頻編碼過(guò)程中的動(dòng)態(tài)功耗。
文檔編號(hào)H04N7/26GK102740073SQ20121017255
公開(kāi)日2012年10月17日 申請(qǐng)日期2012年5月30日 優(yōu)先權(quán)日2012年5月30日
發(fā)明者李明 申請(qǐng)人:華為技術(shù)有限公司