欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種解碼端后處理方法和系統(tǒng)與流程

文檔序號:12378904閱讀:225來源:國知局
一種解碼端后處理方法和系統(tǒng)與流程

本發(fā)明涉及視頻編解碼領(lǐng)域,尤其涉及一種解碼端后處理方法及系統(tǒng)。



背景技術(shù):

視頻序列中,當(dāng)前一幀圖像為質(zhì)量很差P幀或者B幀,而緊接其后一幀為圖像質(zhì)量很好同一場景的I幀,此時就會產(chǎn)生圖像質(zhì)量的跳變、閃爍。在對運動復(fù)雜多場景切換序列,采用小的I幀間隔進行低碼率編碼時,上述問題將最大化凸顯。



技術(shù)實現(xiàn)要素:

本發(fā)明的目的在于提出一種解碼端后處理方法及系統(tǒng),旨在解決現(xiàn)有技術(shù)當(dāng)前一幀圖像為質(zhì)量很差P幀或者B幀,而緊接其后一幀為圖像質(zhì)量很好同一場景的I時,產(chǎn)生圖像質(zhì)量的跳變、閃爍的問題。

本發(fā)明的技術(shù)方案是這樣實現(xiàn)的,

一種解碼端后處理方法,包括以下步驟:

Step0:對第一個解碼幀進行解碼,然后進入Step5;

Step1:如果則進入Step5;否則,進入Step2;

其中,表示的預(yù)解碼標(biāo)識符;表示當(dāng)前幀,也稱為第t個播放幀其中下角標(biāo)表示當(dāng)前幀的播放序號,上角標(biāo)表示當(dāng)前幀對應(yīng)的解碼序號;

Step2:如果為I幀且“與有相同的最大解碼單元尺寸或者相同的最小解碼單元尺寸”,則進入Step3;否則,對當(dāng)前幀進行解碼,然后進入Step5;

其中,表示第t+1個播放幀其中下角標(biāo)表示當(dāng)前幀的播放序號,上角標(biāo)表示當(dāng)前幀對應(yīng)的解碼序號;

Step3:如果則,先對當(dāng)前幀進行解碼,然后進入Step4;否則,對當(dāng)前幀進行解碼,然后進入Step5;

<mrow> <mi>dbq</mi> <msubsup> <mi>p</mi> <mi>t</mi> <mrow> <mi>decode</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> </msubsup> <mo>=</mo> <mi>max</mi> <mrow> <mo>(</mo> <msubsup> <mi>bqp</mi> <mrow> <mi>t</mi> <mo>,</mo> <mi>k</mi> </mrow> <mrow> <mi>decode</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> </msubsup> <mo>|</mo> <mn>1</mn> <mo>&le;</mo> <mi>k</mi> <mo>&le;</mo> <msub> <mi>num</mi> <mi>t</mi> </msub> <mo>)</mo> </mrow> <mo>+</mo> <mi>min</mi> <mrow> <mo>(</mo> <msubsup> <mi>bqp</mi> <mrow> <mi>t</mi> <mo>,</mo> <mi>k</mi> </mrow> <mrow> <mi>decode</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> </msubsup> <mo>|</mo> <mn>1</mn> <mo>&le;</mo> <mi>k</mi> <mo>&le;</mo> <msub> <mi>num</mi> <mi>t</mi> </msub> <mo>)</mo> </mrow> </mrow>

<mrow> <mi>dbq</mi> <msubsup> <mi>p</mi> <mrow> <mi>t</mi> <mo>+</mo> <mn>1</mn> </mrow> <mrow> <mi>decode</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>+</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow> </msubsup> <mo>=</mo> <mi>max</mi> <mrow> <mo>(</mo> <msubsup> <mi>bqp</mi> <mrow> <mi>t</mi> <mo>+</mo> <mn>1</mn> <mo>,</mo> <mi>k</mi> <mn>1</mn> </mrow> <mrow> <mi>decode</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>+</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow> </msubsup> <mo>|</mo> <mn>1</mn> <mo>&le;</mo> <mi>k</mi> <mo>&le;</mo> <msub> <mi>num</mi> <mrow> <mi>t</mi> <mo>+</mo> <mn>1</mn> </mrow> </msub> <mo>)</mo> </mrow> <mo>+</mo> <mi>min</mi> <mrow> <mo>(</mo> <msubsup> <mi>bqp</mi> <mrow> <mi>t</mi> <mo>+</mo> <mn>1</mn> <mo>,</mo> <mi>k</mi> <mn>1</mn> </mrow> <mrow> <mi>decode</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>+</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow> </msubsup> <mo>|</mo> <mn>1</mn> <mo>&le;</mo> <mi>k</mi> <mn>1</mn> <mo>&le;</mo> <msub> <mi>num</mi> <mrow> <mi>t</mi> <mo>+</mo> <mn>1</mn> </mrow> </msub> <mo>)</mo> </mrow> </mrow>

其中,Thres1為第一門限閾值,Thres1>12;分別表示的量化參數(shù)輔助變量;表示第k個解碼塊的量化參數(shù);表示第k1個解碼塊的量化參數(shù),k、k1分別表示解碼塊在上述對應(yīng)幀中的位置序號;numt表示包含的解碼塊個數(shù),numt+1表示包含的解碼塊個數(shù);max(變量|條件)、min(變量|條件)分別表示求滿足條件變量的最大值、最小值;

Step4:進行解碼端圖像質(zhì)量后處理;

Step5:如果下一個解碼幀存在,則將當(dāng)前幀的下一個解碼幀設(shè)置為當(dāng)前幀,然后進入Step1;否則,結(jié)束。

優(yōu)選地,所述進行解碼端圖像質(zhì)量后處理包括以下步驟:

Step41:判斷是否屬于平移場景,如果是,則設(shè)置 否則,則設(shè)置其中,表示的場景平移標(biāo)識符;

Step42:如果則進入Step43;否則,解碼并設(shè)置然后進入Step43;

Step43:判斷與是否屬于同一場景,如果與屬于同一場景,則進入Step44;否則,進入所述步驟Step5;

Step44:進入同場景解碼端圖像質(zhì)量校正。

進一步優(yōu)選,所述進入同場景解碼端圖像質(zhì)量校正包括以下步驟:

Step441:用的解碼圖像校正的解碼圖像;

Step442:如果的下一個解碼幀不是則用 的解碼圖像校正所有在與之間的解碼圖像,然后進入Step443;否則,進入所述步驟Step5;

Step443:設(shè)置當(dāng)前幀為然后進入所述步驟Step5。

進一步優(yōu)選,所述用的解碼圖像校正所有在與 之間的解碼圖像具體為:

將與之間的解碼圖像中,所有參考幀為 且編碼模式為Skip的塊替換為相同位置的塊;

其中,表示解碼校正過的圖像。

進一步優(yōu)選,所述“用的解碼圖像校正的解碼圖像”包括以下步驟:

Step4411:如果則進入Step4412;否則,進入Step4414;

Step4412:求取平移補償運動矢量;

Step4413:用mvx、mvy對已解碼的圖像,進行運動補償;

Step4414:對的解碼圖像進行校正。

進一步優(yōu)選,所述求取平移補償運動矢量具體為:

mvx=mean(mvx,km|puk,m∈cuk且puk,m為幀間預(yù)測非Skip塊),

mvy=mean(mvyk,m|puk,m∈cuk且puk,m為幀間預(yù)測非Skip塊),

其中,mvx、mvy分別為平移運動矢量的x軸分量、y軸分量;cuk表示當(dāng)前幀的第k個解碼塊,k表示解碼塊的位置序號;pukm表示cuk的第m個預(yù)測塊,m表示puk,m在cuk中的位置序號;mvx,km、mvy,km分別為puk,m運動矢量的x軸分量、y軸分量;mean(變量|條件)表示求滿足條件變量的均值;

所述對的解碼圖像進行校正的方法中,亮度校正法具體如下:

其中,

求取條件1:cuk為Skip塊且

求取條件2:cuk為Skip塊且

其中,y(i,j)、y1(i,j)、m_y(i,j)、m_y1(i,j)分別表示當(dāng)前幀解碼圖像、當(dāng)前幀的下一解碼幀解碼圖像、當(dāng)前幀解碼校正過圖像、當(dāng)前幀的下一解碼幀的解碼運動補償圖像的亮度信息第i行第j列的像素值;cuk、cu1k、cu2k分 別表示當(dāng)前幀、當(dāng)前幀的下一解碼幀的第k個解碼塊、當(dāng)前幀的下一解碼幀運動補償過的第k個解碼塊;k表示解碼塊的位置序號;vark表示第k個解碼

塊的復(fù)雜度參數(shù);fast表示加速變量;Thres2表示第二門限閾值,Thres2=8*(1+24/fps);fps表示片源采樣幀率。

一種解碼端后處理系統(tǒng),包括初始解碼模塊、第一下一個解碼幀判斷處理模塊、第一判斷處理模塊、第二判斷處理模塊、第三判斷處理模塊和圖像質(zhì)量后處理裝置;

初始解碼模塊,用于對第一個解碼幀進行解碼,然后進入第一下一個解碼幀判斷處理模塊;

第一下一個解碼幀判斷處理模塊,用于判斷下一個解碼幀是否存在,若否,則結(jié)束,若是則進入第一判斷處理模塊;

第一判斷處理模塊,用于判斷是否若是則進入第一下一個解碼幀判斷處理模塊;否則,進入第二判斷處理模塊;

其中,表示的預(yù)解碼標(biāo)識符;表示當(dāng)前幀,也稱為第t個播放幀,也稱為第decode(t)個解碼幀,其中下角標(biāo)表示當(dāng)前幀的播放序號,上角標(biāo)表示當(dāng)前幀對應(yīng)的解碼序號;

第二判斷處理模塊,用于判斷是否滿足為I幀且“與 有相同的最大解碼單元尺寸或者相同的最小解碼單元尺寸”,若是則進入第三判斷處理模塊,否則對當(dāng)前幀進行解碼,然后進入第一下一個解碼幀判斷處理模塊;

其中,表示第t+1個播放幀,也稱為第decode(t+1)個解碼幀,其中下角標(biāo)表示當(dāng)前幀的播放序號,上角標(biāo)表示當(dāng)前幀對應(yīng)的解碼序號。

第三判斷處理模塊,用于判斷是否滿足若是則,先對當(dāng)前幀進行解碼,然后進入圖像質(zhì)量后處理裝置;否則,對當(dāng)前幀進行解碼,然后進入第一下一個解碼幀判斷處理模塊;

<mrow> <mi>dbq</mi> <msubsup> <mi>p</mi> <mi>t</mi> <mrow> <mi>decode</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> </msubsup> <mo>=</mo> <mi>max</mi> <mrow> <mo>(</mo> <msubsup> <mi>bqp</mi> <mrow> <mi>t</mi> <mo>,</mo> <mi>k</mi> </mrow> <mrow> <mi>decode</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> </msubsup> <mo>|</mo> <mn>1</mn> <mo>&le;</mo> <mi>k</mi> <mo>&le;</mo> <msub> <mi>num</mi> <mi>t</mi> </msub> <mo>)</mo> </mrow> <mo>+</mo> <mi>min</mi> <mrow> <mo>(</mo> <msubsup> <mi>bqp</mi> <mrow> <mi>t</mi> <mo>,</mo> <mi>k</mi> </mrow> <mrow> <mi>decode</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> </msubsup> <mo>|</mo> <mn>1</mn> <mo>&le;</mo> <mi>k</mi> <mo>&le;</mo> <msub> <mi>num</mi> <mi>t</mi> </msub> <mo>)</mo> </mrow> </mrow>

<mrow> <mi>dbq</mi> <msubsup> <mi>p</mi> <mrow> <mi>t</mi> <mo>+</mo> <mn>1</mn> </mrow> <mrow> <mi>decode</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>+</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow> </msubsup> <mo>=</mo> <mi>max</mi> <mrow> <mo>(</mo> <msubsup> <mi>bqp</mi> <mrow> <mi>t</mi> <mo>+</mo> <mn>1</mn> <mo>,</mo> <mi>k</mi> <mn>1</mn> </mrow> <mrow> <mi>decode</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>+</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow> </msubsup> <mo>|</mo> <mn>1</mn> <mo>&le;</mo> <mi>k</mi> <mo>&le;</mo> <msub> <mi>num</mi> <mrow> <mi>t</mi> <mo>+</mo> <mn>1</mn> </mrow> </msub> <mo>)</mo> </mrow> <mo>+</mo> <mi>min</mi> <mrow> <mo>(</mo> <msubsup> <mi>bqp</mi> <mrow> <mi>t</mi> <mo>+</mo> <mn>1</mn> <mo>,</mo> <mi>k</mi> <mn>1</mn> </mrow> <mrow> <mi>decode</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>+</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow> </msubsup> <mo>|</mo> <mn>1</mn> <mo>&le;</mo> <mi>k</mi> <mo>&le;</mo> <msub> <mi>num</mi> <mrow> <mi>t</mi> <mo>+</mo> <mn>1</mn> </mrow> </msub> <mo>)</mo> </mrow> </mrow>

其中,Thres1為第一門限閾值,Thres1>12;分別表示的量化參數(shù)輔助變量;表示第k 個解碼塊的量化參數(shù);表示第k1個解碼塊的量化參數(shù),k、k1分別表示解碼塊在上述對應(yīng)幀中的位置序號;numt表示包含的解碼塊個數(shù),numt+1表示包含的解碼塊個數(shù);max(變量|條件)、min(變量|條件)分別表示求滿足條件變量的最大值、最小值;

圖像質(zhì)量后處理裝置,用于進行解碼端圖像質(zhì)量后處理。

優(yōu)選地,所述圖像質(zhì)量后處理裝置還包括:

平移場景判斷處理模塊,用于用于判斷是否屬于平移場景,如果是,則設(shè)置否則,則設(shè)置然后進入第四判斷處理模塊;其中,表示的場景平移標(biāo)識符;

第四判斷處理模塊,用于判斷如果則直接進入同場景判斷模塊;否則,解碼并設(shè)置然后進入同場景判斷模塊;

同場景判斷模塊,用于判斷與是否屬于同一場景,如果與屬于同一場景,則進入同場景解碼端圖像質(zhì)量校正裝置;否則,進入第一下一個解碼幀判斷處理模塊;

同場景解碼端圖像質(zhì)量校正裝置,用于進行同場景解碼端圖像質(zhì)量校正。

進一步優(yōu)選,所述同場景解碼端圖像質(zhì)量校正裝置還包括:

解碼圖像校正裝置,用于用的解碼圖像校正的解碼圖像;

第二下一個解碼幀判斷處理模塊,用于判斷如果的下一個解碼幀不是則進入第一解碼圖像校正模塊,否則進入第一下一個解碼幀判斷處理模塊;

第一解碼圖像校正模塊,用于用的解碼圖像校正所有在 與之間的解碼圖像,然后進入當(dāng)前幀設(shè)置模塊;

當(dāng)前幀設(shè)置模塊,用于設(shè)置當(dāng)前幀為然后進入第一下一個解碼幀判斷處理模塊。

進一步優(yōu)選,所述解碼圖像校正裝置還包括:

第五判斷處理模塊,用于判斷是否若是則進入平移補償運動矢量求取模塊;否則,進入第二解碼圖像校正模塊;表示 的場景平移標(biāo)識符;

平移補償運動矢量求取模塊,用于求取平移補償運動矢量;

運動補償模塊,用于用mvx、mvy對已解碼的圖像,進行運動補償;其中,mvx、mvy分別為平移運動矢量的x軸分量、y軸分量;

第二解碼圖像校正模塊,用于對的解碼圖像進行校正。

本發(fā)明的有益效果

本發(fā)明提出一種解碼端后處理方法和系統(tǒng)。本發(fā)明方法首先根據(jù)對解碼信息的分析,檢測出可能產(chǎn)生圖像質(zhì)量跳變的視頻幀;然后針對圖像區(qū)域不同特征,選擇相應(yīng)的解碼端后處理方法;從而達到在解碼端消除圖像質(zhì)量閃爍的不舒適感,提升編碼主、客觀性能。

附圖說明

圖1是本發(fā)明優(yōu)選實施例一種解碼端后處理方法流程圖;

圖2是圖1中Step4中進行解碼端圖像質(zhì)量后處理的方法流程圖;

圖3是圖2中Step44中進入同場景解碼端圖像質(zhì)量校正的方法流程圖;

圖4是圖3方法中Step441所包含的方法流程圖;

圖5是本發(fā)明優(yōu)選實施例一種解碼端后處理系統(tǒng)結(jié)構(gòu)圖;

圖6是圖5中圖像質(zhì)量后處理裝置結(jié)構(gòu)圖;

圖7是圖6中同場景解碼端圖像質(zhì)量校正裝置結(jié)構(gòu)圖;

圖8是圖7中解碼圖像校正裝置結(jié)構(gòu)圖。

具體實施方式

為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖和實施例,對本發(fā)明進行進一步詳細說明,為了便于說明,僅示出了與本發(fā)明實施例相關(guān)的部分。應(yīng)當(dāng)理解,此處所描寫的具體實施例,僅僅用于解釋本發(fā)明,并不用以限制本發(fā)明。

本發(fā)明實施例提出一種解碼端后處理方法和系統(tǒng)。本發(fā)明實施例方法首 先根據(jù)對解碼信息的分析,檢測出可能產(chǎn)生圖像質(zhì)量跳變的視頻幀;然后針對圖像區(qū)域不同特征,選擇相應(yīng)的解碼端后處理方法;從而達到在解碼端消除圖像質(zhì)量閃爍的不舒適感,提升編碼主、客觀性能。

實施例一

圖1是本發(fā)明優(yōu)選實施例一種解碼端后處理方法流程圖;所述方法包括以下步驟:

Step0:對第一個解碼幀進行解碼,然后進入Step5。

Step1:如果則進入Step5;否則,進入Step2。

其中,表示的預(yù)解碼標(biāo)識符;表示當(dāng)前幀,也稱為第t個播放幀,也稱為第decode(t)個解碼幀,其中下角標(biāo)表示當(dāng)前幀的播放序號,上角標(biāo)表示當(dāng)前幀對應(yīng)的解碼序號。

Step2:如果為I幀且(與有相同的最大解碼單元尺寸或者相同的最小解碼單元尺寸),則進入Step3;否則,對當(dāng)前幀進行解碼,然后進入Step5。

其中,表示第t+1個播放幀,也稱為第decode(t+1)個解碼幀,其中下角標(biāo)表示當(dāng)前幀的播放序號,上角標(biāo)表示當(dāng)前幀對應(yīng)的解碼序號。

Step3:如果則,先對當(dāng)前幀進行解碼,然后進入Step4;否則,對當(dāng)前幀進行解碼,然后進入Step5。

<mrow> <mi>dbq</mi> <msubsup> <mi>p</mi> <mi>t</mi> <mrow> <mi>decode</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> </msubsup> <mo>=</mo> <mi>max</mi> <mrow> <mo>(</mo> <msubsup> <mi>bqp</mi> <mrow> <mi>t</mi> <mo>,</mo> <mi>k</mi> </mrow> <mrow> <mi>decode</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> </msubsup> <mo>|</mo> <mn>1</mn> <mo>&le;</mo> <mi>k</mi> <mo>&le;</mo> <msub> <mi>num</mi> <mi>t</mi> </msub> <mo>)</mo> </mrow> <mo>+</mo> <mi>min</mi> <mrow> <mo>(</mo> <msubsup> <mi>bqp</mi> <mrow> <mi>t</mi> <mo>,</mo> <mi>k</mi> </mrow> <mrow> <mi>decode</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> </msubsup> <mo>|</mo> <mn>1</mn> <mo>&le;</mo> <mi>k</mi> <mo>&le;</mo> <msub> <mi>num</mi> <mi>t</mi> </msub> <mo>)</mo> </mrow> </mrow>

<mrow> <mi>dbq</mi> <msubsup> <mi>p</mi> <mrow> <mi>t</mi> <mo>+</mo> <mn>1</mn> </mrow> <mrow> <mi>decode</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>+</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow> </msubsup> <mo>=</mo> <mi>max</mi> <mrow> <mo>(</mo> <msubsup> <mi>bqp</mi> <mrow> <mi>t</mi> <mo>+</mo> <mn>1</mn> <mo>,</mo> <mi>k</mi> <mn>1</mn> </mrow> <mrow> <mi>decode</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>+</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow> </msubsup> <mo>|</mo> <mn>1</mn> <mo>&le;</mo> <mi>k</mi> <mo>&le;</mo> <msub> <mi>num</mi> <mrow> <mi>t</mi> <mo>+</mo> <mn>1</mn> </mrow> </msub> <mo>)</mo> </mrow> <mo>+</mo> <mi>min</mi> <mrow> <mo>(</mo> <msubsup> <mi>bqp</mi> <mrow> <mi>t</mi> <mo>+</mo> <mn>1</mn> <mo>,</mo> <mi>k</mi> <mn>1</mn> </mrow> <mrow> <mi>decode</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>+</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow> </msubsup> <mo>|</mo> <mn>1</mn> <mo>&le;</mo> <mi>k</mi> <mo>&le;</mo> <msub> <mi>num</mi> <mrow> <mi>t</mi> <mo>+</mo> <mn>1</mn> </mrow> </msub> <mo>)</mo> </mrow> </mrow>

其中,Thres1為第一門限閾值,一般Thres1>12;分別表示的量化參數(shù)輔助變量;表示第k個解碼塊的量化參數(shù);表示第k1個解碼塊的量化參數(shù),k、k1分別表示解碼塊在上述對應(yīng)幀中的位置序號;numt表示包含的解碼塊個數(shù),numt+1表示包含的解碼塊個數(shù);max(變量|條件)、min(變量|條件)分別表示求滿足條件變量的最大值、最小值。

Step4:進行解碼端圖像質(zhì)量后處理。

圖2是圖1中Step4中進行解碼端圖像質(zhì)量后處理的方法流程圖;

所述進行解碼端圖像質(zhì)量后處理包括以下步驟(Step41-44):

Step41:判斷是否屬于平移場景,如果是,則設(shè)置否則,則設(shè)置

其中,平移場景判斷可用業(yè)內(nèi)公開的任何一種方法;表示的場景平移標(biāo)識符。

Step42:如果則進入Step43;否則,解碼并設(shè)置然后進入Step43;

Step43:判斷與是否屬于同一場景,如果與屬于同一場景,則進入Step44;否則,進入Step5。

其中,與是否屬于同一場景的判斷可用業(yè)內(nèi)公開的任何一種方法。

Step44:進入同場景解碼端圖像質(zhì)量校正。

圖3是圖2中Step44中進入同場景解碼端圖像質(zhì)量校正的方法流程圖;所述進入同場景解碼端圖像質(zhì)量校正包括以下步驟(Step441-443):

Step441:用的解碼圖像校正的解碼圖像。

圖4是圖3方法中Step441所包含的方法流程圖;具體實現(xiàn)方法如下,包括以下步驟(Step4411-4414):

Step4411:如果則進入Step4412;否則,進入Step4414。

Step4412:求取平移補償運動矢量。

mvx=mean(mvx,k,m|puk,m∈cuk且puk,m為幀間預(yù)測非Skip塊),

mvy=mean(mvy,k,m|puk,m∈cuk且pukm為幀間預(yù)測非Skip塊)

其中,mvx、mvy分別為平移運動矢量的x軸分量、y軸分量;cuk表示當(dāng)前幀的第k個解碼塊,k表示解碼塊的位置序號;puk,m表示cuk的第m個預(yù)測塊,m表示puk,m在cuk中的位置序號;mvx,km、mvy,km分別為puk,m運動矢量的x軸分量、y軸分量;mean(變量|條件)分別表示求滿足條件變量的均值。

Step4413:用mvx、mvy對已解碼的圖像,進行運動補償。

Step4414:對的解碼圖像進行校正。

亮度校正法具體如下:(色度的校正法只要將下述公式的y直接替換為相應(yīng)的u、v色度即可;或者為了減少計算量,直接跳過 色度處理,僅進行亮度校正)

其中,

求取條件1:cuk為Skip塊且

求取條件2:cuk為Skip塊且

其中,y(i,j)、y1(i,j)、m_y(i,j)、m_y1(i,j)分別表示當(dāng)前幀解碼圖像、當(dāng)前幀的下一解碼幀解碼圖像、當(dāng)前幀解碼校正過圖像、當(dāng)前幀的下一解碼幀的解碼運動補償圖像的亮度信息第i行第j列的像素值;cuk、cu1k、cu2k分別表示當(dāng)前幀、當(dāng)前幀的下一解碼幀的第k個解碼塊、當(dāng)前幀的下一解碼幀運動補償過的第k個解碼塊;k表示解碼塊的位置序號;vark表示第k個解碼塊的復(fù)雜度參數(shù);fast表示加速變量,由解碼用戶確定,使用該參數(shù)可以控制算法的計算量;Thres2表示第二門限閾值,一般Thres2=8*(1+24/fps);fps表示片源采樣幀率。

Step442:如果的下一個解碼幀不是則用 的解碼圖像校正所有在與之間的解碼圖像,然后進入Step443;否則,進入Step5。

具體方法如下:將與之間的解碼圖像中,所有參考幀為且編碼模式為Skip的塊替換為相同位置的塊。

其中,表示解碼校正過的圖像。

Step443:設(shè)置當(dāng)前幀為然后進入Step5。

Step5:如果下一個解碼幀存在,則將當(dāng)前幀的下一個解碼幀設(shè)置為當(dāng)前幀,然后進入Step1;否則,結(jié)束。

實施例二

圖5是本發(fā)明優(yōu)選實施例一種解碼端后處理系統(tǒng)結(jié)構(gòu)圖;該系統(tǒng)包括初始解碼模塊、第一下一個解碼幀判斷處理模塊、第一判斷處理模塊、第二判斷處理模塊、第三判斷處理模塊和圖像質(zhì)量后處理裝置。

初始解碼模塊,用于對第一個解碼幀進行解碼,然后進入第一下一個解碼幀判斷處理模塊;

第一下一個解碼幀判斷處理模塊,用于判斷下一個解碼幀是否存在,若否,則結(jié)束,若是則進入第一判斷處理模塊;

第一判斷處理模塊,用于判斷是否若是則進入第一下一個解碼幀判斷處理模塊;否則,進入第二判斷處理模塊;

其中,表示的預(yù)解碼標(biāo)識符;表示當(dāng)前幀,也稱為第t個播放幀,也稱為第decode(t)個解碼幀,其中下角標(biāo)表示當(dāng)前幀的播放序號,上角標(biāo)表示當(dāng)前幀對應(yīng)的解碼序號。

第二判斷處理模塊,用于判斷是否滿足為I幀且“與 有相同的最大解碼單元尺寸或者相同的最小解碼單元尺寸”,若是則進入第三判斷處理模塊,否則對當(dāng)前幀進行解碼,然后進入第一下一個解碼幀判斷處理模塊;

其中,表示第t+1個播放幀,也稱為第decode(t+1)個解碼幀,其中下角標(biāo)表示當(dāng)前幀的播放序號,上角標(biāo)表示當(dāng)前幀對應(yīng)的解碼序號。

第三判斷處理模塊,用于判斷是否滿足若是則,先對當(dāng)前幀進行解碼,然后進入圖像質(zhì)量后處理裝置;否則,對當(dāng)前幀進行解碼,然后進入第一下一個解碼幀判斷處理模塊。

<mrow> <mi>dbq</mi> <msubsup> <mi>p</mi> <mi>t</mi> <mrow> <mi>decode</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> </msubsup> <mo>=</mo> <mi>max</mi> <mrow> <mo>(</mo> <msubsup> <mi>bqp</mi> <mrow> <mi>t</mi> <mo>,</mo> <mi>k</mi> </mrow> <mrow> <mi>decode</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> </msubsup> <mo>|</mo> <mn>1</mn> <mo>&le;</mo> <mi>k</mi> <mo>&le;</mo> <msub> <mi>num</mi> <mi>t</mi> </msub> <mo>)</mo> </mrow> <mo>+</mo> <mi>min</mi> <mrow> <mo>(</mo> <msubsup> <mi>bqp</mi> <mrow> <mi>t</mi> <mo>,</mo> <mi>k</mi> </mrow> <mrow> <mi>decode</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> </msubsup> <mo>|</mo> <mn>1</mn> <mo>&le;</mo> <mi>k</mi> <mo>&le;</mo> <msub> <mi>num</mi> <mi>t</mi> </msub> <mo>)</mo> </mrow> </mrow>

<mrow> <mi>dbq</mi> <msubsup> <mi>p</mi> <mrow> <mi>t</mi> <mo>+</mo> <mn>1</mn> </mrow> <mrow> <mi>decode</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>+</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow> </msubsup> <mo>=</mo> <mi>max</mi> <mrow> <mo>(</mo> <msubsup> <mi>bqp</mi> <mrow> <mi>t</mi> <mo>+</mo> <mn>1</mn> <mo>,</mo> <mi>k</mi> <mn>1</mn> </mrow> <mrow> <mi>decode</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>+</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow> </msubsup> <mo>|</mo> <mn>1</mn> <mo>&le;</mo> <mi>k</mi> <mo>&le;</mo> <msub> <mi>num</mi> <mrow> <mi>t</mi> <mo>+</mo> <mn>1</mn> </mrow> </msub> <mo>)</mo> </mrow> <mo>+</mo> <mi>min</mi> <mrow> <mo>(</mo> <msubsup> <mi>bqp</mi> <mrow> <mi>t</mi> <mo>+</mo> <mn>1</mn> <mo>,</mo> <mi>k</mi> <mn>1</mn> </mrow> <mrow> <mi>decode</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>+</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow> </msubsup> <mo>|</mo> <mn>1</mn> <mo>&le;</mo> <mi>k</mi> <mo>&le;</mo> <msub> <mi>num</mi> <mrow> <mi>t</mi> <mo>+</mo> <mn>1</mn> </mrow> </msub> <mo>)</mo> </mrow> </mrow>

其中,Thres1為第一門限閾值,一般Thres1>12;分別表示的量化參數(shù)輔助變量;表示第k個解碼塊的量化參數(shù);表示第k1個解碼塊的量化參數(shù),k、k1分別表示解碼塊在上述對應(yīng)幀中的位置序號;numt表示包 含的解碼塊個數(shù),numt+1表示包含的解碼塊個數(shù);max(變量|條件)、min(變量|條件)分別表示求滿足條件變量的最大值、最小值。

圖像質(zhì)量后處理裝置,用于進行解碼端圖像質(zhì)量后處理;

進一步地,圖6是圖5中圖像質(zhì)量后處理裝置結(jié)構(gòu)圖;所述圖像質(zhì)量后處理裝置還包括

平移場景判斷處理模塊,用于用于判斷是否屬于平移場景,如果是,則設(shè)置否則,則設(shè)置然后進入第四判斷處理模塊;

其中,平移場景判斷可用業(yè)內(nèi)公開的任何一種方法;表示 的場景平移標(biāo)識符。

第四判斷處理模塊,用于判斷如果則直接進入同場景判斷模塊;否則,解碼并設(shè)置然后進入同場景判斷模塊;

同場景判斷模塊,用于判斷與是否屬于同一場景,如果與屬于同一場景,則進入同場景解碼端圖像質(zhì)量校正裝置;否則,進入第一下一個解碼幀判斷處理模塊。

同場景解碼端圖像質(zhì)量校正裝置,用于進行同場景解碼端圖像質(zhì)量校正;

進一步地,圖7是圖6中同場景解碼端圖像質(zhì)量校正裝置結(jié)構(gòu)圖;

所述同場景解碼端圖像質(zhì)量校正裝置還包括:

解碼圖像校正裝置,用于用的解碼圖像校正的解碼圖像。

第二下一個解碼幀判斷處理模塊,用于判斷如果的下一個解碼幀不是則進入第一解碼圖像校正模塊,否則進入第一下一個解碼幀判斷處理模塊;

第一解碼圖像校正模塊,用于用的解碼圖像校正所有在 與之間的解碼圖像,然后進入當(dāng)前幀設(shè)置模塊;

具體方法如下:將與之間的解碼圖像中,所有參考幀為且編碼模式為Skip的塊替換為相同位置的塊。

其中,表示解碼校正過的圖像。

當(dāng)前幀設(shè)置模塊,用于設(shè)置當(dāng)前幀為然后進入第一下一個解碼幀判斷處理模塊。

進一步地,圖8是圖7中解碼圖像校正裝置結(jié)構(gòu)圖,所述解碼圖像校正裝置還包括:

第五判斷處理模塊,用于判斷是否若是則進入平移補償運動矢量求取模塊;否則,進入第二解碼圖像校正模塊。

平移補償運動矢量求取模塊,用于求取平移補償運動矢量。

mvx=mean(mvx,k,m|puk,m∈cuk且puk,m為幀間預(yù)測非Skip塊),

mvy=mean(mvy,k,m|puk,m∈cuk且puk,m為幀間預(yù)測非Skip塊)

其中,mvx、mvy分別為平移運動矢量的x軸分量、y軸分量;cuk表示當(dāng)前幀的第k個解碼塊,k表示解碼塊的位置序號;pukm表示cuk的第m個預(yù)測塊,m表示puk,m在cuk中的位置序號;mvx,k,m、mvy,k,m分別為pukm運動矢量的x軸分量、y軸分量;mean(變量|條件)表示求滿足條件變量的均值。

運動補償模塊,用于用mvx、mvy對已解碼的圖像,進行運動補償。

第二解碼圖像校正模塊,用于對的解碼圖像進行校正。

亮度校正法具體如下:(色度的校正法只要將下述公式的y直接替換為相應(yīng)的u、v色度即可;或者為了減少計算量,直接跳過色度處理,僅進行亮度校正)

其中,

求取條件1:cuk為Skip塊且

求取條件2:cuk為Skip塊且

其中,y(i,j)、y1(i,j)、m_y(i,j)、m_y1(i,j)分別表示當(dāng)前幀解碼圖像、當(dāng)前幀的下一解碼幀解碼圖像、當(dāng)前幀解碼校正過圖像、當(dāng)前幀的下一解碼幀的解碼運動補償圖像的亮度信息第i行第j列的像素值;cuk、cu1k、cu2k分別表示當(dāng)前幀、當(dāng)前幀的下一解碼幀的第k個解碼塊、當(dāng)前幀的下一解碼幀運動補償過的第k個解碼塊;k表示解碼塊的位置序號;vark表示第k個解碼塊的復(fù)雜度參數(shù);fast表示加速變量,由解碼用戶確定,使用該參數(shù)可以控制算法的計算量;Thres2表示第二門限閾值,一般Thres2=8*(1+24/fps);fps表示片源采樣幀率。

本領(lǐng)域的普通技術(shù)人員可以理解,實現(xiàn)上述實施例方法中的全部或部分步驟是可以通過程序指令相關(guān)硬件來完成的,所述的程序可以存儲于一計算機可讀取存儲介質(zhì)中,所述的存儲介質(zhì)可以為ROM、RAM、磁盤、光盤等。

以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
库车县| 台南县| 雷波县| 龙泉市| 东阳市| 湟源县| 宜城市| 长丰县| 烟台市| 西乡县| 长海县| 砚山县| 镇平县| 潜江市| 堆龙德庆县| 永和县| 巨鹿县| 罗田县| 淮安市| 高雄市| 乡宁县| 克山县| 庆云县| 韶关市| 深州市| 象山县| 布拖县| 屯留县| 廊坊市| 西贡区| 安康市| 班玛县| 雷山县| 怀化市| 渑池县| 巨野县| 仁寿县| 庄浪县| 正宁县| 英德市| 桐城市|