麻豆精品无码国产在线播放,国产亚洲精品成人AA片新蒲金,国模无码大尺度一区二区三区,神马免费午夜福利剧场

一種視頻圖象象素插值裝置的制作方法

文檔序號:7596408閱讀:228來源:國知局
專利名稱:一種視頻圖象象素插值裝置的制作方法
技術領域
本發明涉及圖像編解碼技術,具體地說,涉及圖象象素插值的裝置。
背景技術
二十世紀九十年代以來,國際標準化組織ISO、國際電工技術委員會IEC和國際電信聯盟ITU相繼制定了一系列多媒體編碼的標準和建議,典型的有MPEG系列國際標準、H.26x系列視頻壓縮標準和聯合視頻編碼標準JVT等。中國也正在制定數字音視頻編解碼標準AVS。
通常,視頻序列是通過對模擬輸入信號的采樣得到的,其中整象素點是視頻圖像的有效采樣點。在視頻編碼技術中普遍以宏塊為基本編碼單元,一個宏塊是一個16×16的象素方陣,宏塊可以被16×8、8×16、8×8、4×8、8×4、4×4象素塊劃分。亞象素點處在整象素點之間,是由整象素點插值得到的。現有的各項標準中其插值方法均有不同,但也存在共同點和相似之處。下面以AVS中的插值算法為例,介紹二分之一樣本和四分之一樣本的插值計算。
圖1是整數樣本、二分之一樣本和四分之一樣本的位置示意圖,其中大寫字母標記的是整數樣本的位置,小寫字母標記的是二分之一樣本和四分之一樣本的位置。二分之一樣本和四分之一樣本是通過濾波實現的,濾波器分別采用的是F1(-1,5,5,-1)和F2(1,7,7,1)。
二分之一樣本的插值計算過程如下對于二分之一樣本b首先用濾波器F1對水平方向上最近的4個整數樣本進行濾波,得到中間值b’=(-C+5D+5E-F);最終的預測值b=Clip1((b’+4)>>3)。
對于二分之一樣本h首先用濾波器F1對垂直方向上最近的4個整數樣本進行濾波,得到中間值h’=(-A+5D+5H-K);最終的預測值h=Clip1((h’+4)>>3)。
對于二分之一樣本j首先用濾波器F1在水平或垂直方向上對最近的4個二分之一樣本的中間值進行濾波,得到中間值j’=(-bb’+5h’+5m’-cc’),或者j’=(-aa’+5b’+5s’-dd’),其中aa’,dd’和s’是相應位置二分之一樣本的中間值(采用濾波器F1在水平方向濾波得到),bb’、cc’和m’是相應位置二分之一樣本的中間值(采用濾波器F1在垂直方向濾波得到);最終的預測值j=Clip1((j’+32)>>6)。采用水平方向或垂直方向濾波得到的二分之一樣本j的值相同。
四分之一樣本的插值計算過程如下對于四分之一樣本a用濾波器F2在水平方向上對ee’、D’、b’和E’四個值進行濾波,得到中間值a’=(ee’+7D’+7b’+E’),其中ee’和b’是相應位置二分之一樣本的中間值,D’和E’是相應位置整數樣本放大8倍的值;最終的預測值a=Clip1((a’+64)>>7)。
對于四分之一樣本d用濾波器F2在垂直方向上對ff’、D’、h’和H’四個值進行濾波,得到中間值d’=(ff’+7D’+7h’+H’),其中ff’和h’是相應位置二分之一樣本的中間值,D’和H’是相應位置整數樣本放大8倍的值;最終的預測值d=Clip1((d’+64)>>7)。
四分之一樣本n的插值過程與四分之一樣本d的插值過程相同。
對于四分之一樣本i用濾波器F2在水平方向上對gg’、h”、j’和m”四個值進行濾波,得到中間值I’=(gg’+7h”+7j’+m”),其中gg’和j’是相應位置二分之一樣本的中間值,h”和m”是相應位置二分之一樣本的中間值放大8倍的值;最終的預測值i=Clip1((I’+512)>>10)。
四分之一樣本k的插值過程與四分之一樣本i的插值過程相同。
對于四分之一樣本f用濾波器F2在垂直方向上對hh’、b”、j’和s”四個值進行濾波,得到中間值f’=(hh’+7b”+7j’+s”),其中hh’和j’是相應位置二分之一樣本的中間值,b”和s”是相應位置二分之一樣本的中間值放大8倍的值;最終的預測值f=Clip1((f’+512)>>10)。
四分之一樣本q的插值過程與四分之一樣本f的插值過程相同。
對于四分之一樣本e、g、p和r,有e=(D”+j’+64)>>7;g=(E”+j’+64)>>7;p=(H”+j’+64)>>7;r=(I”+j’+64)>>7,其中D”、E”、H”和I”是相應位置整數樣本放大64倍的值,j’是相應位置二分之一樣本的中間值。
公開號為1125030的中國專利“用于運動補償插值的方法與裝置”給出了一種插值的方法與裝置,主要是實現二分之一象素精度的插值運算,無法解決四分之一象素精度的插值。
公開號為1140958的中國專利“接收MPEG2的半象素運動補償控制器”也是只針對于MPEG-2的半象素插值,由于計算能力輸入數據帶寬的限制,無法滿足四分之一象素插值處理的要求。
目前的視頻圖象插值可實現二分之一象素插值、四分之一象素插值甚至八分之一象素插值,從象素插值算法的演變過程來看,其計算越來越復雜,計算量也越來越大。在數據的特殊相關性方面,一方面象素塊內被處理數據間的相互關聯、相互影響需要復雜的流水結構來提高處理速度,另一方面塊間數據不相關,對相鄰塊的處理之間需要數據準備時間,而在這個時間內通常的流水處理裝置是無法工作的,因此會影響處理效率。

發明內容
本發明所要解決的技術問題在于提供一種視頻圖象象素插值裝置,可適用于標清視頻和高清視頻的象素插值,有效地提高處理速度。
本發明所述視頻圖象象素插值裝置,包括輸入寄存器組、寄存器陣列和計算單元;所述輸入寄存器組包括M個寄存器,用于緩存輸入的數據,并將數據輸出到所述寄存器陣列;所述寄存器陣列包括N個列寄存器組,每個列寄存器組包括M個寄存器,所述列寄存器組用于保存計算一行或一列插值結果所需的所有數據;所述寄存器陣列中的N×N個寄存器構成寄存器窗口,用于保存計算一個插值結果所需的所有數據,寄存器窗口的行或列都可作為所述計算單元的輸入;所述計算單元,用于完成插值濾波運算;其中M的取值與象素數據塊的大小有關,N是濾波算法最長的濾波階數。
采用本發明裝置,可較好地實現現有的象素插值,如二分之一象素插值或四分之一象素插值等,可以有效地提高象素插值的處理速度和處理效率。


圖1是AVS插值運算中整數樣本、二分之一樣本、四分之一樣本的位置示意圖;圖2是本發明象素插值裝置的結構示意圖;圖3是象素插值裝置進行插值計算的流程圖;圖4是圖2中計算單元的結構示意圖;圖5是圖4中濾波器的結構示意圖。
具體實施例方式
下面結合附圖和實施例,對本發明的技術方案做進一步的詳細介紹。
圖1已在背景技術中描述過,此處不再贅述。
如圖2所示,本發明裝置包括由M個寄存器構成的輸入寄存器組、由N個列寄存器組構成的寄存器陣列和計算單元。在寄存器陣列中,每個列寄存器包含M個寄存器,選擇N×N個寄存器構成寄存器窗口,寄存器窗口的行和列作為計算單元的輸入。在所述裝置中,M的取值與該裝置可以處理的象素數據塊大小相關,可以是數據塊的長度,也可以是數據塊的寬度;N是插值運算中濾波器的最高階數。
象素數據通過輸入寄存器組經過N個周期后輸入到寄存器陣列中,即假設列寄存器組從右向左的編號為1,2,...N,則在第1個周期,輸入寄存器組中的M個數據輸入到列寄存器組1中;在第2個周期,列寄存器組1中的M個數據輸入到列寄存器組2中,并且執行與第1個周期相同的輸入操作;在第3個周期中,列寄存器組2中的M個數據輸入到列寄存器組3中,并且執行與第2個周期相同的輸入操作;以此類推,在第N-1個周期中,列寄存器組N-2中的M個數據輸入到列寄存器組N-1中,并且執行與第N-2個周期相同的輸入操作;在第N個周期,列寄存器組N-1中的M個數據輸入到列寄存組N中,并且執行與第N-1個周期相同的輸入操作。隨后,每計算完一行數據后,都要經過一個時鐘周期通過輸入寄存器組輸入一行象素數據。
為了使計算一個插值結果所需的所有象素數據在一個時鐘周期出現在寄存器窗口中,象素數據需要在寄存器陣列中進行傳遞,包括三種傳遞方式向左傳遞、循環向上傳遞和循環向下傳遞。向左傳遞是指寄存器陣列中的所有寄存器將自己保存的數據向其左邊緊鄰的寄存器傳遞。循環向上傳遞是指寄存器陣列中除最上面一行的所有寄存器將自己的數據向其緊鄰的上一行寄存器傳遞,而最上面一行的寄存器將自己的數據傳遞給其正下方最下面一行的寄存器。循環向下傳遞是指寄存器陣列中除最下面一行的所有寄存器將自己的數據向其緊鄰的下一行寄存器傳遞,而最下面一行的寄存器將自己的數據傳遞給其正上方最上面一行的寄存器。
象素插值裝置進行插值計算的流程如圖3所示。首先Q行象素數據中的N行經過N個時鐘周期的向左傳遞,輸入寄存器陣列中,然后開始對一行數據進行計算,計算一行數據需要(M-N+1)個時鐘周期。在計算單數行數據時,其中(M-N)個時鐘周期的每一個時鐘周期,寄存器陣列中的數據都循環向下傳遞,(M-N+1)個時鐘周期后的一個時鐘周期,寄存器陣列中的數據都向左傳遞,并向寄存器陣列輸入Q行數據中下一行未輸入的數據;在計算雙數行數據時,其中(M-N)個時鐘周期的每一個時鐘周期,寄存器陣列中的數據都循環向上傳遞,(M-N+1)個時鐘周期后的一個時鐘周期,寄存器陣列中的數據都向左傳遞,并向寄存器陣列輸入Q行數據中下一行未輸入的數據;直到將Q行的數據全部計算完畢。
下面給出一個實施例。如果待處理的象素數據塊最大為13×13的數據塊,而插值運算中的濾波器階數最多是6,則象素插值裝置有6個列寄存器組,每個列寄存器組有13個寄存器,因此共有78個寄存器,每個寄存器是8位。寄存器窗口是由6×6個寄存器構成,寄存器窗口內的數據將輸出到計算單元進行插值計算。其流程如下
首先,經過6個周期的向左傳遞,插值運算所需的13行數據中的6行數據輸入到寄存器陣列中;計算第一行數據,需要8個時鐘周期,其中7個時鐘周期的每一個時鐘,寄存器陣列中的數據都循環向下傳遞;8個時鐘周期后的一個時鐘周期,寄存器陣列中的數據向左傳遞;計算第二行數據,需要8個時鐘周期,其中7個時鐘周期的每一個時鐘,寄存器陣列中的數據都循環向上傳遞;8個時鐘周期后的一個時鐘周期,寄存器陣列中的數據向左傳遞;計算第三行數據,需要8個時鐘周期,其中7個時鐘周期的每一個時鐘,寄存器陣列中的數據都循環向下傳遞;8個時鐘周期后的一個時鐘周期,寄存器陣列中的數據向左傳遞;以此類推,直到計算第八行數據完畢。
圖4是本發明像素插值裝置中計算單元的示意圖,包括兩組濾波器、多路選擇器、多路選擇輸出器、第一延時寄存器組和第二延時寄存器組,每組濾波器可包括多個濾波器,具體的個數由具體的編解碼技術確定。第一濾波器組,用于接收寄存器窗口輸出的數據,進行濾波,并輸出到第二濾波器組和多路選擇器;第二濾波器組收到第一濾波器組輸出的結果后進行濾波,并輸出到多路選擇輸出器;第一延時寄存器組收到寄存器窗口輸出的數據后,進行延時,輸出到多路選擇器;第二延時寄存器組接收來自多路選擇器的輸出,經過延時后輸出到多路選擇輸出器;多路選擇器接收第一延時寄存器組和第一濾波器組的輸出,選擇輸出到多路選擇輸出器;多路選擇輸出器則對來自寄存器窗口、第二濾波器組、第二延時寄存器組和多路選擇器輸出的數據,選擇其中一個數據作為結果輸出。
濾波器的結構如圖5所示,包括7個加法器和9個延時寄存器。從寄存器窗口輸入的數據分別在加法器1、加法器2和加法器3中進行加法運算,結果分別輸出到延時寄存器1、延時寄存器2和延時寄存器3中,延時寄存器主要用于緩存一個時鐘周期的計算結果。延時寄存器1和延時寄存器3輸出的計算結果在加法器4中進行相加后輸出到延時寄存器4,而延時寄存器2和延時寄存器3輸出的計算結果則在加法器5中進行相加,然后輸出到延時寄存器5。加法器6對延時寄存器4和延時寄存器5的輸出進行相加,再輸出到延時寄存器6。延時寄存器2輸出的計算結果經過延時寄存器7和延時寄存器8的兩次延時,輸出到加法器7中,與延時寄存器6輸出的計算結果進行相加,最后通過延時寄存器9輸出。
上述濾波器的結構屬于流水結構,流水線長度是四個時鐘周期,當流水線充分被利用時,該濾波器可以每個時鐘周期產生一個結果。雖然是濾波器結構,但并沒有乘法單元,所有計算通過加法樹實現。
最后所應說明的是,以上實施例僅用以說明本發明的技術方案而非限制,盡管參照較佳實施例對本發明進行了詳細說明,本領域的普通技術人員應當理解,可以對本發明的技術方案進行修改或者等同替換,而不脫離本發明技術方案的精神和范圍,其均應涵蓋在本發明的權利要求范圍當中。
權利要求
1.一種視頻圖象象素插值裝置,其特征在于,包括輸入寄存器組、寄存器陣列和計算單元;所述輸入寄存器組包括M個寄存器,用于緩存輸入的數據,并將數據輸出到所述寄存器陣列;所述寄存器陣列包括N個列寄存器組,每個列寄存器組包括M個寄存器,所述列寄存器組用于保存計算一行或一列插值結果所需的所有數據;所述寄存器陣列中的N×N個寄存器構成寄存器窗口,用于保存計算一個插值結果所需的所有數據,所述寄存器窗口的行或列都可作為所述計算單元的輸入;所述計算單元,用于完成插值濾波運算;其中M的取值與象素數據塊的大小有關,N是濾波算法最長的濾波階數。
2.根據權利要求1所述的視頻圖象象素插值裝置,其特征在于,所述M是象素數據塊的長度或者是象素數據塊的寬度。
3.根據權利要求1所述的視頻圖象象素插值裝置,其特征在于,初始化時所述輸入寄存器組將輸入的象素數據經過N個周期后輸出到寄存器陣列,具體是假設寄存器陣列的列寄存器組從右向左編號為1,2,...N,則在第1個周期,輸入寄存器組中的M個數據輸入到列寄存器組1中;在第2個周期,列寄存器組1中的M個數據輸入到列寄存器組2中,并且執行與第1個周期相同的輸入操作;在第3個周期中,列寄存器組2中的M個數據輸入到列寄存器組3中,并且執行與第2個周期相同的輸入操作;以此類推,在第N-1個周期中,列寄存器組N-2中的M個數據輸入到列寄存器組N-1中,并且執行與第N-2個周期相同的輸入操作;在第N個周期,列寄存器組N-1中的M個數據輸入到列寄存組N中,并且執行與第N-1個周期相同的輸入操作。
4.根據權利要求1所述的視頻圖象象素插值裝置,其特征在于,當計算插值結果時,象素數據需在寄存器陣列中傳遞,其傳遞方式包括向左傳遞、循環向上傳遞和循環向下傳遞;所述向左傳遞是指寄存器陣列中的所有寄存器將自己保存的數據向其左邊緊鄰的寄存器傳遞;所述循環向上傳遞是指寄存器陣列中除最上面一行的所有寄存器將自己的數據向其緊鄰的上一行寄存器傳遞,而最上面一行的寄存器將自己的數據傳遞給其正下方最下面一行的寄存器;所述循環向下傳遞是指寄存器陣列中除最下面一行的所有寄存器將自己的數據向其緊鄰的下一行寄存器傳遞,而最下面一行的寄存器將自己的數據傳遞給其正上方最上面一行的寄存器。
5.根據權利要求1所述的視頻圖象象素插值裝置,其特征在于,在進行插值計算時,是對每行數據進行計算;計算每行數據需要(M-N+1)個時鐘周期;在計算單數行數據時,其中(M-N)個時鐘周期的每一個時鐘周期,寄存器陣列中的數據都循環向下傳遞,(M-N+1)個時鐘周期后的一個時鐘周期,寄存器陣列中的數據都向左傳遞;在計算雙數行數據時,其中(M-N)個時鐘周期的每一個時鐘周期,寄存器陣列中的數據都循環向上傳遞,(M-N+1)個周期后的一個時鐘周期,寄存器陣列中的數據都向左傳遞。
6.根據權利要求1所述的視頻圖象象素插值裝置,其特征在于,所述計算單元包括兩組濾波器、多路選擇器、多路選擇輸出器、第一延時寄存器組和第二延時寄存器組,每組濾波器可包括多個濾波器,具體的個數由具體的編解碼技術確定;所述第一濾波器組,用于接收寄存器窗口輸出的數據,進行濾波,并輸出到所述第二濾波器組和所述多路選擇器;所述第二濾波器組收到所述第一濾波器組輸出的結果后進行濾波,并輸出到所述多路選擇輸出器;所述第一延時寄存器組收到寄存器窗口輸出的數據后,進行延時,輸出到所述多路選擇器;所述第二延時寄存器組接收來自所述多路選擇器的輸出,經過延時后輸出到所述多路選擇輸出器;所述多路選擇器接收所述第一延時寄存器組和所述第一濾波器組的輸出,選擇輸出到所述多路選擇輸出器;所述多路選擇輸出器則對來自寄存器窗口、所述第二濾波器組、所述第二延時寄存器組和所述多路選擇器輸出的數據,選擇其中一個數據作為結果輸出。
7.根據權利要求1所述的視頻圖象象素插值裝置,其特征在于,所述濾波器包括7個加法器和9個延時寄存器;所述延時寄存器用于緩存一個時鐘周期的計算結果;從寄存器窗口輸入的數據分別在加法器1、加法器2和加法器3中進行加法運算,結果分別輸出到延時寄存器1、延時寄存器2和延時寄存器3中;延時寄存器1和延時寄存器3輸出的計算結果在加法器4中進行相加后輸出到延時寄存器4;而延時寄存器2和延時寄存器3輸出的計算結果則在加法器5中進行相加,然后輸出到延時寄存器5;加法器6對延時寄存器4和延時寄存器5的輸出進行相加,再輸出到延時寄存器6;延時寄存器2輸出的計算結果經過延時寄存器7和延時寄存器8的兩次延時,輸出到加法器7中,與延時寄存器6輸出的計算結果進行相加,通過延時寄存器9輸出。
全文摘要
一種視頻圖象象素插值裝置,包括輸入寄存器組、寄存器陣列和計算單元;所述輸入寄存器組包括M個寄存器,用于緩存輸入的數據,并將數據輸出到所述寄存器陣列;所述寄存器陣列包括N個列寄存器組,每個列寄存器組包括M個寄存器,所述列寄存器組用于保存計算一行或一列插值結果所需的所有數據;所述寄存器陣列中的N×N個寄存器構成寄存器窗口,用于保存計算一個插值結果所需的所有數據,所述寄存器窗口的行或列都可作為所述計算單元的輸入;所述計算單元,用于完成插值濾波運算。采用本發明裝置,可較好地實現現有的象素插值,如二分之一象素插值或四分之一象素插值等,可以有效地提高象素插值的處理速度和處理效率。
文檔編號H04N7/12GK1589005SQ20041007028
公開日2005年3月2日 申請日期2004年8月4日 優先權日2004年8月4日
發明者解曉東, 吳迪, 賈惠柱, 生濱, 鄭俊浩, 張鵬, 鄧磊, 張力, 張幀睿, 王忠立, 高文 申請人:聯合信源數字音視頻技術(北京)有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
主站蜘蛛池模板: 邯郸市| 黔江区| 沧州市| 土默特右旗| 阳春市| 大姚县| 庆云县| 二连浩特市| 台山市| 开鲁县| 陇川县| 东明县| 涞源县| 张家川| 平顺县| 石景山区| 尖扎县| 仁化县| 宣化县| 上杭县| 北宁市| 重庆市| 宝兴县| 北安市| 贵阳市| 南康市| 和政县| 昌邑市| 竹北市| 郧西县| 青海省| 台东市| 昭平县| 当雄县| 体育| 潼南县| 青海省| 新源县| 临江市| 张家界市| 岳阳市|