專利名稱:基于場景檢測的自適應(yīng)運動補償幀頻提升方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算視頻、數(shù)字電視后處理中的幀頻提升方法,具體涉及一種針對不 同類型的場景自適應(yīng)地采用相應(yīng)的幀頻提升技術(shù)進行處理的方法。
背景技術(shù):
與傳統(tǒng)CRT電視相比,IXD電視在分辨率、尺寸、重量以及功耗等方面具有明顯的 優(yōu)勢,因而已成為市場上的主流產(chǎn)品。隨著LCD電視屏幕尺寸的不斷增大和高清電視信號 的播出,消費者對LCD電視的畫質(zhì)提出了更高的要求。高端LCD電視需要提高顯示圖像的 幀頻來減輕IXD電視由于響應(yīng)速度慢而造成運動圖像的模糊現(xiàn)象。幀頻提升技術(shù)能夠顯著改善IXD顯示的運動圖像模糊現(xiàn)象,有效地提高顯示圖像 質(zhì)量。通常的幀頻提升處理主要采用運動補償幀頻提升方法,該方法通過在連續(xù)的前后視 頻幀間進行塊匹配的方法估計得到運動矢量,并根據(jù)運動矢量計算生成插值幀。運動補償 幀頻提升方法能夠利用連續(xù)幀間的運動信息生成待插幀,減輕運動圖像的模糊現(xiàn)象。但運 動補償幀頻提升方法易產(chǎn)生運動估計錯誤,產(chǎn)生錯誤的插值幀,造成明顯的圖像失真。特別 對于圖像中存在旋轉(zhuǎn)、非剛體形變和遮擋等復(fù)雜運動場景,運動補償幀頻提升會顯著降低 圖像的清晰度。為解決運動補償幀頻提升方法因運動估計錯誤造成圖像失真問題,已出現(xiàn)了利用 更多幀圖像信息進行運動估計與補償插值的方法,如申請?zhí)枮?00610071860. X的中國發(fā) 明專利申請和申請?zhí)枮?00510110112. 3的中國發(fā)明專利申請。其所公開的方法雖然增加 了運動估計的準(zhǔn)確性,但需要存儲多個圖像幀,運算量和資源消耗大,增加了硬件實現(xiàn)的復(fù) 雜度,不適于需要實時視頻處理的應(yīng)用場合。如何以較低的耗費代價實現(xiàn)幀頻提升,特別是 減少運動補償幀失真,已成為業(yè)界亟待解決的技術(shù)問題。
發(fā)明內(nèi)容
本發(fā)明的目的在于,提供一種運算和硬件成本低,但能顯著提高圖像主觀清晰度 的幀頻提升方法,有效解決運動圖像模糊現(xiàn)象,且能有效的降低硬件復(fù)雜度,從而廣泛應(yīng)用 于需要實時處理的消費類電子領(lǐng)域。為達到以上目的,本發(fā)明是采取如下技術(shù)方案予以實現(xiàn)的—種基于場景檢測的自適應(yīng)運動補償幀頻提升方法,包含以下步驟步驟1,靜止場景檢測,求相鄰的前后兩幀圖像亮度差值,并與設(shè)定的像素差異閾 值進行比較,統(tǒng)計大于像素差異閾值的像素個數(shù),將得到的像素個數(shù)與設(shè)定的像素個數(shù)閾 值比較,判斷該兩幀是否為靜止場景幀,如是靜止場景幀則轉(zhuǎn)到步驟4,如是非靜止場景幀, 則執(zhí)行下一步;步驟2,復(fù)雜運動場景檢測,對于非靜止場景的幀,計算相鄰兩幀運動估計得到的 SAD值及運動矢量,并與設(shè)定的差異閾值進行比較,判斷該兩幀是否為復(fù)雜運動場景幀,如 是復(fù)雜運動場景幀則轉(zhuǎn)到步驟4,如是非復(fù)雜運動場景幀,則執(zhí)行下一步;
步驟3,全局運動場景檢測,對非復(fù)雜運動場景幀,統(tǒng)計相鄰兩幀的各個子塊的運 動矢量的個數(shù),并與設(shè)定的個數(shù)閾值比較,判斷該兩幀是否為全局運動場景幀,如是全局運 動場景幀則轉(zhuǎn)到步驟5,如是非全局運動場景幀,則執(zhí)行步驟6 ;步驟4,靜止與復(fù)雜運動場景插值處理,對步驟1和步驟2中判定的靜止場景幀和 復(fù)雜運動場景幀,進行幀復(fù)制插值處理,生成待插幀;步驟5,全局運動場景插值處理,對步驟3中判定的全局運動場景幀,利用全局運 動矢量和前一幀亮度值進行全局運動補償插值處理,生成待插幀;步驟6,剛體平移運動補償插值處理,對步驟3中判定的非全局運動場景幀,看作 剛體平移運動場景幀,進行剛體平移運動補償插值,生成待插幀;步驟7,對步驟4,5和6中生成的待插幀插入到相鄰的前后兩幀圖像之間,并輸出。上述方案中,所述步驟2的具體操作為 步驟2. 1 對后一幀fn+1和前一幀fn_i進行塊匹配運動估計,得到相鄰兩幀中每個 子塊所對應(yīng)的SAD值&4/\+1和&4/\。;步驟2. 2 對相鄰兩幀中每個子塊對應(yīng)的SAD值&^/^和&^。求差Broken(x, y) =I SAD“ (x,y)~ SADfn i (x,y)\ (ι)步驟2. 3 對SAD差值Broken (χ,y)與設(shè)定的差異閾值Br0ken_th進行比較,如果 Broken (χ, y) > Broken_th,則判定該塊是差異塊,標(biāo)記 Broken_f lag (x,y) = 1,Broken_ flag (χ, y)為差異標(biāo)志位,然后對差異標(biāo)志位Br0ken_flag(x,y)進行個數(shù)統(tǒng)計,得出 Broken_flag (χ, y) = 1 的個數(shù) CountBroken ;步驟2. 4 設(shè)定差異閾值CountBraken th,比較CountBraken與CountBraken th的大小,如果 CountBroken > C0imtBrakm th,則認(rèn)為相鄰兩幀圖像差異過大,判定該兩幀為復(fù)雜運動場景幀; 如果CountBrakm < CountBrakm th,則判定該兩幀為非復(fù)雜運動場景幀。所述步驟3的具體操作為步驟3. 1 統(tǒng)計步驟2. 1中的塊匹配運動估計得到的每個子塊對應(yīng)的運動矢量的 個數(shù),即其水平分量MVx和垂直分量MVy的個數(shù)C0unt_Bl0Ckx和C0unt_Bl0Cky ;步驟3. 2 設(shè)定全局運動矢量的個數(shù)閾值Globle_bloCkth Globle_blockth = α XHXV(2)式中α——常數(shù);H——每列的運動估計塊數(shù);V——每行的運動估計塊數(shù);HXV——每幀圖像的運動估計塊數(shù);步驟3. 3 比較水平分量MVx和垂直分量MVy的個數(shù)Count_Blockx和Count_Blocky 與全局運動矢量個數(shù)閾值 Globle_blockth,如果 Count_Blockx > Globle_blockth 且 Count_ Blocky > Globle_blockth,則判定該兩幀為全局運動場景幀,且保存對應(yīng)的全局運動矢量 MVgloble (MVX, MVy),否則判定該兩幀為非全局運動場景幀。步驟6中,所述剛體平移運動補償插值是利用步驟2. 1中塊匹配運動估計得到的 各子塊的運動矢量MV(MVX,MVy)和前一幀的像素值f^U,y)進行內(nèi)插,生成中間幀fn,即 fn(x, y) = fn_! (x+MVx, y+MVy) 0
與現(xiàn)有數(shù)字電視后處理中的幀頻提升方法相比,本發(fā)明提出的方法基于不同的場景,有效地利用優(yōu)化的插幀方法完成幀頻提升處理。本發(fā)明中的幀頻提升方法針對不同場 景幀,自適應(yīng)地采用不同的插幀方法生成插值幀,從而達到以最優(yōu)化的運算量和硬件成本 顯著提高視頻圖像中主觀清晰度的效果。
圖1為本發(fā)明基于場景檢測的自適應(yīng)運動補償幀頻提升方法的流程框2為圖1框圖基礎(chǔ)上的具體實施流程圖。
具體實施例方式以下將結(jié)合附圖及具體實施例對本發(fā)明作進一步詳細描述。如圖1、圖2所示,本發(fā)明的基于場景檢測的自適應(yīng)運動補償幀頻提升方法的具體 實施步驟為步驟1 根據(jù)人眼視覺特性,對具有不同運動特性的場景,自適應(yīng)得進行相應(yīng)的幀 頻提升處理。對相鄰兩幀亮度值做差并與設(shè)定的閾值進行比較,檢測該兩幀是否為靜止場景幀。步驟1. 1 對后一幀fn+1和前一幀。做差,得到幀中每個像素的差值fdiff,即
fdiff (χ,y) = I fn+i (χ,y) -fn-i (χ,y) U步驟1. 2 將差值fdiff與設(shè)定的像素差異閾值fdiff th進行比較,并統(tǒng)計大于像素差 異閾值fdiff—th的像素個數(shù)Sumdiff。步驟1. 3 將步驟1. 2中得到的像素個數(shù)Sumdiff與設(shè)定的像素個數(shù)閾值Sumdiff th 進行比較,判斷該兩幀是否為靜止場景幀。如果Sumdiff < Sumdiff th,那么判定該兩幀為靜止 場景幀;如果Sumdiff > Sumdiff th,則判定該兩幀為非靜止場景幀。步驟2 對由步驟1檢測出的非靜止場景幀,進行復(fù)雜運動場景檢測。對于復(fù)雜運 動場景幀,運動估計無法準(zhǔn)確的估計出代表真實運動軌跡的運動矢量,其運動補償插值會 造成不可接受的塊效應(yīng)失真。因而本方法將檢測出復(fù)雜運動場景幀,并進行幀復(fù)制插值處理。步驟2. 1 對后一幀fn+1和前一幀fn_i進行塊匹配運動估計,得到相鄰兩幀中每個 子塊所對應(yīng)的絕對值誤差(SAD)。令^表示后一幀子塊的SAD ;^^^“表示前一幀子塊 的 SAD。步驟2. 2 對相鄰兩幀中每個子塊對應(yīng)的SAD值^(U)和^^V1 (U)求差Broken(x, y) =| SADf- (x,y)~ SADf“ (x,y)\ (ι)步驟2. 3 對SAD差值Broken (χ, y)與設(shè)定的差異閾值Br0ken_th進行比較,如果 Broken (χ, y) > Broken_th,則判定該塊是差異塊,標(biāo)記 Broken_f lag (x,y) = 1,Broken_ flag (χ, y)為差異標(biāo)志位。然后對差異標(biāo)志位Br0ken_flag(x,y)進行個數(shù)統(tǒng)計,得出 Broken_flag (χ, y) = 1 的個數(shù) CountBroken。步驟2. 4 設(shè)定差異閾值 CountBr。ken th,比較 CountBr。ken 與 CountBr。ken th 的大小。如 果CoimtBrakm > CoimtBrakm th,則認(rèn)為相鄰兩幀圖像差異過大,判定該兩幀為復(fù)雜運動場景 幀,使用幀重復(fù)插值進行幀頻提升;如果CoimtBrakm < CoimtBrakm th,則判定該兩幀為非復(fù)雜運動場景幀。步驟3 對由步驟2檢測出的非復(fù)雜運動場景幀,進行全局運動場景檢測。步驟3. 1 統(tǒng)計步驟2. 1中的塊匹配運動估計得到的每個子塊對應(yīng)的運動矢量的 個數(shù),即其水平分量MVx和垂直分量MVy的個數(shù)Count_Blockx和Count_Blocky。步驟3. 2 設(shè)定全局運動矢量的個數(shù)閾值Globle_bloCkth Globle_blockth = α XHXV(2)式中 α——常數(shù);H——每列的運動估計塊數(shù);V——每行的運動估計塊數(shù);HXV——每幀圖像的運動估計塊數(shù)。步驟3. 3 比較水平分量MVx和垂直分量MVy的個數(shù)Count_Blockx和Count_Blocky 與全局運動矢量個數(shù)閾值 Globle_blockth,如果 Count_Blockx > Globle_blockth 且 Count_ Blocky > Globle_blockth,則判定該兩幀為全局運動場景幀,且保存對應(yīng)的全局運動矢量 MVgloble (MVX, MVy),否則判定該兩幀為非全局運動場景幀。步驟4 對由步驟1檢測出的靜止場景幀和步驟2檢測出的復(fù)雜運動場景幀,進行 幀復(fù)制插值處理,得到中間待插幀fn,即fn(x, y) = fn-^x, y)。步驟5 對由步驟3判斷為全局運動場景的幀進行插幀。根據(jù)步驟3. 3得到的全 局運動矢量MVgl。bal (MVx global,MVy global)和前一幀的像素值fn_i (χ, y)進行全局運動場景補償 內(nèi)插,生成中間幀fn,即fn(x, y) = fn_! (x+MVx global, y+MVy global)。步驟6 對由步驟3判斷為非全局運動場景的幀,可認(rèn)為是剛體平移運動場景幀, 進行剛體平移運動補償幀頻提升處理。利用步驟2. 1中塊匹配運動估計得到的各子塊 的運動矢量MV(MVX,MVy)和前一幀的像素值fn_i進行內(nèi)插,生成中間幀4,即fn(x, y)= fn-! (x+MVx, y+MVy)。步驟7,對步驟4,5和6中生成的待插幀插入到相鄰的前后兩幀圖像之間,并輸出。
權(quán)利要求
一種基于場景檢測的自適應(yīng)運動補償幀頻提升方法,其特征在于,包含以下步驟步驟1,靜止場景檢測,求相鄰的前后兩幀圖像亮度差值,并與設(shè)定的像素差異閾值進行比較,統(tǒng)計大于像素差異閾值的像素個數(shù),將得到的像素個數(shù)與設(shè)定的像素個數(shù)閾值比較,判斷該兩幀是否為靜止場景幀,如是靜止場景幀則轉(zhuǎn)到步驟4,如是非靜止場景幀,則執(zhí)行下一步;步驟2,復(fù)雜運動場景檢測,對于非靜止場景的幀,計算相鄰兩幀運動估計得到的SAD值及運動矢量,并與設(shè)定的差異閾值進行比較,判斷該兩幀是否為復(fù)雜運動場景幀,如是復(fù)雜運動場景幀則轉(zhuǎn)到步驟4,如是非復(fù)雜運動場景幀,則執(zhí)行下一步;步驟3,全局運動場景檢測,對非復(fù)雜運動場景幀,統(tǒng)計相鄰兩幀的各個子塊的運動矢量的個數(shù),并與設(shè)定的個數(shù)閾值比較,判斷該兩幀是否為全局運動場景幀,如是全局運動場景幀則轉(zhuǎn)到步驟5,如是非全局運動場景幀,則執(zhí)行步驟6;步驟4,靜止與復(fù)雜運動場景插值處理,對步驟1和步驟2中判定的靜止場景幀和復(fù)雜運動場景幀,進行幀復(fù)制插值處理,生成待插幀;步驟5,全局運動場景插值處理,對步驟3中判定的全局運動場景幀,利用全局運動矢量和前一幀亮度值進行全局運動補償插值處理,生成待插幀;步驟6,剛體平移運動補償插值處理,對步驟3中判定的非全局運動場景幀,看做剛體平移運動場景幀,進行剛體平移運動補償插值,生成待插幀;步驟7,對步驟4,5和6中生成的待插幀插入到相鄰的前后兩幀圖像之間,并輸出。
2.如權(quán)利要求1所述的基于場景檢測的自適應(yīng)運動補償幀頻提升方法,其特征在于, 所述步驟2的具體操作為步驟2. 1 對后一幀fn+1和前一幀fn_i進行塊匹配運動估計,得到相鄰兩幀中每個子塊 所對應(yīng)的SAD值SADfn+1和SADflri ;步驟2. 2 對相鄰兩幀中每個子塊對應(yīng)的SAD值SADfn+1和SADflri求差 Broken (χ, y) = | SADfn+1 (χ, y) -SADflri (χ, y) |(1)步驟2. 3 對SAD差值BrokenU,y)與設(shè)定的差異閾值Br0ken_th進行比較,如果 Broken (χ, y) > Broken_th,則判定該塊是差異塊,標(biāo)記 Broken_f lag (x,y) = 1,Broken_ flag (χ, y)為差異標(biāo)志位,然后對差異標(biāo)志位Br0ken_flag(x,y)進行個數(shù)統(tǒng)計,得出 Broken_flag (χ, y) = 1 的個數(shù) CountBroken ;步驟2. 4 設(shè)定差異閾值CountBrakm th,比較CountBrakm與CountBrakm th的大小,如果 CountBroken > CoimtBrakm th,則認(rèn)為相鄰兩幀圖像差異過大,判定該兩幀為復(fù)雜運動場景幀; 如果CountBrakm < CountBrakm th,則判定該兩幀為非復(fù)雜運動場景幀。
3.如權(quán)利要求2所述的基于場景檢測的自適應(yīng)運動補償幀頻提升方法,其特征在于, 所述步驟3的具體操作為步驟3. 1 統(tǒng)計步驟2. 1中的塊匹配運動估計得到的每個子塊對應(yīng)的運動矢量的個數(shù), 即其水平分量MVx和垂直分量MVy的個數(shù)Count_Blockx和Count_Blocky ; 步驟3. 2 設(shè)定全局運動矢量的個數(shù)閾值Globle_bloCkth Globle_blockth = α XHXV(2)式中α-常數(shù);H——每列的運動估計塊數(shù); V——每行的運動估計塊數(shù); HXV——每幀圖像的運動估計塊數(shù);步驟3. 3 比較水平分量MVX和垂直分量MVy的個數(shù)Count_Blockx和Count_Blocky與 全局運動矢量個數(shù)閾值 Globle_blockth,如果 Count_Blockx > Globle_blockth 且 Count_ Block, > Globle_blockth,則判定該兩幀為全局運動場景幀,且保存對應(yīng)的全局運動矢量 MVgloble(MVx, MVy),否則判定該兩幀為非全局運動場景幀。
4.如權(quán)利要求2所述的基于場景檢測的自適應(yīng)運動補償幀頻提升方法,其特征在于, 步驟6中,所述剛體平移運動補償插值是利用步驟2. 1中塊匹配運動估計得到的各子塊 的運動矢量MV(MVX,MVy)和前一幀的像素值fn_i進行內(nèi)插,生成中間幀4,即fn(x,y)= fn-! (x+MVx, y+MVy)。
全文摘要
一種基于場景檢測的自適應(yīng)運動補償幀頻提升方法,包含以下步驟步驟1,靜止場景檢測,判斷該兩幀是否為靜止場景幀,如是靜止場景幀則轉(zhuǎn)到步驟4,如是非靜止場景幀,則執(zhí)行下一步;步驟2,復(fù)雜運動場景檢測,判斷該兩幀是否為復(fù)雜運動場景幀,如是復(fù)雜運動場景幀則轉(zhuǎn)到步驟4,如是非復(fù)雜運動場景幀,則執(zhí)行下一步;步驟3,全局運動場景檢測,判斷該兩幀是否為全局運動場景幀,如是全局運動場景幀則轉(zhuǎn)到步驟5,如是非全局運動場景幀,則執(zhí)行步驟6;步驟4,靜止與復(fù)雜運動場景插值處理;步驟5,全局運動場景插值處理;步驟6,剛體平移運動補償插值處理;步驟7,對步驟4,5和6中生成的待插幀插入到相鄰的前后兩幀圖像之間,并輸出。
文檔編號H04N7/01GK101867759SQ20101017686
公開日2010年10月20日 申請日期2010年5月19日 優(yōu)先權(quán)日2010年5月19日
發(fā)明者孫宏濱, 李寧, 羅亮, 鄭南寧 申請人:西安交通大學(xué)