專利名稱:一種數(shù)字圖像的縮放處理系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及圖像處理領(lǐng)域,具體地說,是涉及一種用于數(shù)字圖像的縮放處理系統(tǒng)。
背景技術(shù):
隨著計算機(jī)、手機(jī)等多媒體領(lǐng)域應(yīng)用產(chǎn)品的迅速發(fā)展,人們對圖像顯示的要求越來越高,由于不同的顯示技術(shù)對圖像的尺寸有不同的要求,需要對圖像的尺寸進(jìn)行靈活的變化。例如,計算機(jī)的分辨率有VGA(640×480),SVGA(800×600),XVGA(1600×1200),但對手機(jī)來說,通常顯示屏的分辨率小于QVGA(320×240)。因此,怎樣實現(xiàn)圖像在不同的分辨率靈活轉(zhuǎn)變并保持較高的圖像質(zhì)量成為日益迫切的一個問題。
在計算機(jī)的圖像處理領(lǐng)域中,圖像縮放是通過軟件來實現(xiàn)的,通常是使用二次線性插值、三次線性插值等算法來處理。軟件處理需要占用非常多的CPU資源,對計算機(jī)處理器件的要求很高。但對于手機(jī)來說,CPU的功能不夠強(qiáng)大,對處理視頻的縮放來說遠(yuǎn)遠(yuǎn)不夠,因此通過軟件來實現(xiàn)視頻縮放是不可能的,這就需要用硬件來解決這個問題。
在一般的視頻卡、視頻采集卡中,通常使用二次線性插值來實現(xiàn)硬件的圖像縮放。這種算法能夠帶來較好的圖像質(zhì)量,但卻需要占用較多的硬件資源(例如乘法器和除法器等)。
發(fā)明內(nèi)容
本發(fā)明的目的是為了提供一種圖像縮放處理系統(tǒng),來提高芯片支持圖像和視頻實現(xiàn)的性能。
為達(dá)到上述目的,本發(fā)明提供方案如下一種數(shù)字圖像的縮放處理系統(tǒng),其接收上位機(jī)1發(fā)送來的指令和圖像預(yù)處理模塊2發(fā)送來的圖像數(shù)據(jù),根據(jù)上位機(jī)1發(fā)送來的指令對圖像數(shù)據(jù)進(jìn)行縮放處理,并將縮放處理的圖像送給圖像后處理模塊4,由圖像后處理模塊4對圖像進(jìn)行壓縮或者直接顯示。
本發(fā)明所述的圖像縮放處理系統(tǒng)包括前置濾波器模塊4、圖像橫向尺寸縮放模塊5、圖像縮放行緩沖器模塊6、命令發(fā)送模塊7、圖像縮放系數(shù)計算模塊8和圖像縱向尺寸縮放模塊9;由上位機(jī)1通過命令發(fā)送模塊7,將該圖像縮放處理系統(tǒng)激活并使之處于正常的工作狀態(tài),此時前置濾波器模塊4將圖像預(yù)處理模塊送過來的圖像進(jìn)行低通濾波,此低通濾波器的系數(shù)由上位機(jī)1根據(jù)圖像縮放比例進(jìn)行配置,通過命令發(fā)送模塊7發(fā)送給前置濾波器模塊4;圖像縮放系數(shù)計算模塊8根據(jù)上位機(jī)1發(fā)送給命令發(fā)送模塊7的命令,計算縮放的系數(shù)并送給圖像橫向尺寸縮放模塊5和圖像縱向尺寸縮放模塊9使用;圖像橫向尺寸縮放模塊5根據(jù)命令發(fā)送模塊7發(fā)送的指令和縮放系數(shù)對經(jīng)前置濾波的圖像在橫向進(jìn)行縮放處理,并將處理過的圖像儲存在圖像縮放行緩沖器模塊6中,然后圖像縱向尺寸縮放模塊9再對圖像縮放行緩沖器模塊6中的圖像進(jìn)行縱向尺度的變換。
本發(fā)明所述的前置濾波器模塊4包括橫向濾波器模塊41,濾波器行緩沖器模塊42和縱向濾波器模塊43;橫向濾波器模塊41首先在橫向尺度上對圖像進(jìn)行濾波,并把橫向濾波后的圖像儲存在濾波器行緩沖器模塊42中;由于所述系統(tǒng)采取七階濾波,濾波器行緩沖器模塊42儲存了6行的圖像數(shù)據(jù);縱向濾波器模塊43把圖像從濾波器行緩沖器模塊42取出,并對之進(jìn)行縱向濾波。
本發(fā)明所述的命令發(fā)送模塊7包括寄存器地址譯碼模塊71、寄存器讀寫模塊72、寄存器模塊73,寄存器地址譯碼模塊71將上位機(jī)1發(fā)送過來的寄存器地址進(jìn)行譯碼,找到要操作的寄存器單元;寄存器讀寫模塊72則完成對該寄存器的讀寫操作;而寄存器模塊73則包含了數(shù)量眾多的控制寄存器。
本發(fā)明所述的寄存器模塊73包括輸入圖像寬度寄存器731,輸入圖像高度寄存器732,輸出圖像寬度寄存器733,輸出圖像高度寄存器734,前置濾波器系數(shù)寄存器735,圖像放大倍數(shù)寄存器736和圖像縮小倍數(shù)寄存器737;在啟動圖像縮放之前,由上位機(jī)1配置好這些寄存器的值,以保證所述系統(tǒng)的正常工作。
與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點在于本發(fā)明所述的圖像縮放處理系統(tǒng)中,不需要較大的圖像緩沖區(qū),僅僅需要幾條行緩沖器,這樣大大節(jié)約了存儲器的使用;其次,由于該方法是實時操作,輸入幾行圖像數(shù)據(jù)就可以啟動縮放操作,因此延遲極小,僅有幾行,不像傳統(tǒng)方法需要有一幀的延遲;第三,由于該方法將二維濾波轉(zhuǎn)化為兩個一維濾波,將二位圖像的縮放轉(zhuǎn)化維兩個一位圖像縮放,大大減少了乘法器的使用,使芯片的成本大大降低;最后,由于該方法使用查表法代替除法器來計算圖像縮放器的系數(shù),使芯片成本進(jìn)一步降低,而我們都知道除法器不易實現(xiàn)。
本發(fā)明目的、特點及優(yōu)點將參照附圖結(jié)合實施例作進(jìn)一步的說明。
圖1是本發(fā)明的結(jié)構(gòu)框圖。
圖2是本發(fā)明所述前置濾波器模塊的結(jié)構(gòu)框圖。
圖3是本發(fā)明所述命令發(fā)送模塊的結(jié)構(gòu)框圖。
圖4是本發(fā)明所述寄存器模塊的結(jié)構(gòu)框圖。
圖5是本發(fā)明所述的寄存器的一個參考配置。
具體實施例方式
參照附圖1,是本發(fā)明的結(jié)構(gòu)框圖。
一種數(shù)字圖像的縮放處理系統(tǒng),其接收上位機(jī)發(fā)送來的指令和圖像預(yù)處理模塊發(fā)送來的圖像數(shù)據(jù),根據(jù)上位機(jī)發(fā)送來的指令對圖像數(shù)據(jù)進(jìn)行縮放處理,并將縮放處理的圖像送給圖像后處理模塊,由圖像后處理模塊對圖像進(jìn)行壓縮或者直接顯示。
本發(fā)明所述的圖像縮放處理系統(tǒng)包括前置濾波器模塊、圖像橫向尺寸縮放模塊、圖像縮放行緩沖器模塊、命令發(fā)送模塊、圖像縮放系數(shù)計算模塊和圖像縱向尺寸縮放模塊;由上位機(jī)通過命令發(fā)送模塊,將該圖像縮放處理系統(tǒng)激活并使之處于正常的工作狀態(tài),此時前置濾波器模塊將圖像預(yù)處理模塊送過來的圖像進(jìn)行低通濾波,此低通濾波器的系數(shù)由上位機(jī)根據(jù)圖像縮放比例進(jìn)行配置,通過命令發(fā)送模塊發(fā)送給前置濾波器模塊;圖像縮放系數(shù)計算模塊根據(jù)上位機(jī)發(fā)送給命令發(fā)送模塊的命令,計算縮放的系數(shù)并送給圖像橫向尺寸縮放模塊和圖像縱向尺寸縮放模塊使用;圖像橫向尺寸縮放模塊根據(jù)命令發(fā)送模塊發(fā)送的指令和縮放系數(shù)對經(jīng)前置濾波的圖像在橫向進(jìn)行縮放處理,并將處理過的圖像儲存在圖像縮放行緩沖器模塊中,然后圖像縱向尺寸縮放模塊再對圖像縮放行緩沖器模塊中的圖像進(jìn)行縱向尺度的變換。
參照附圖2,是本發(fā)明所述前置濾波器模塊的結(jié)構(gòu)框圖。本發(fā)明所述的前置濾波器模塊包括橫向濾波器模塊,濾波器行緩沖器模塊和縱向濾波器模塊;橫向濾波器模塊首先在橫向尺度上對圖像進(jìn)行濾波,并把橫向濾波后的圖像儲存在濾波器行緩沖器模塊中;由于所述系統(tǒng)采取七階濾波,濾波器行緩沖器模塊儲存了6行的圖像數(shù)據(jù);縱向濾波器模塊把圖像從濾波器行緩沖器模塊取出,并對之進(jìn)行縱向濾波。
參照附圖3,是本發(fā)明所述命令發(fā)送模塊的結(jié)構(gòu)框圖。本發(fā)明所述的命令發(fā)送模塊包括寄存器地址譯碼模塊、寄存器讀寫模塊、寄存器模塊,寄存器地址譯碼模塊將上位機(jī)發(fā)送過來的寄存器地址進(jìn)行譯碼,找到要操作的寄存器單元;寄存器讀寫模塊則完成對該寄存器的讀寫操作;而寄存器模塊則包含了數(shù)量眾多的控制寄存器。
參照附圖4是本發(fā)明所述寄存器模塊的結(jié)構(gòu)框圖。本發(fā)明所述的寄存器模塊包括輸入圖像寬度寄存器(IMG_WIDTH),輸入圖像高度寄存器(IMG_HEIGHT),輸出圖像寬度寄存器(OUT_WIDTH),輸出圖像高度寄存器(OUT_HEIGHT),前置濾波器系數(shù)寄存器(FIR_COEF),圖像放大倍數(shù)寄存器(UP_FACTOR)和圖像縮小倍數(shù)寄存器(DOWN_FACTOR);在啟動圖像縮放之前,由上位機(jī)配置好這些寄存器的值,以保證所述系統(tǒng)的正常工作。
在圖像縮放處理之前,上位機(jī)首先要完成相關(guān)寄存器的配置,以保證該系統(tǒng)能夠正常工作。例如,如果該系統(tǒng)輸入圖像大小為640×480,輸出圖像大小為352×288,濾波器的系數(shù)采取0、1/16、3/16、8/16、3/16、1/16、0,則這些寄存器的配置可以參照附圖5。當(dāng)圖像從圖像預(yù)處理模塊到來時,這些相關(guān)的配置已經(jīng)完成。
當(dāng)圖像輸入時,首先要由前置濾波器對之進(jìn)行濾波。該系統(tǒng)采取7×7的二維低通濾波,濾波器系數(shù)的選取要根據(jù)圖像縮放的比例來確定。濾波之后,圖像的高頻噪聲已經(jīng)被去除,但圖像的大小仍為640×480(以上述參考配置為例),這時首先要進(jìn)行橫向尺度的縮放;由于該系統(tǒng)采取雙線性差值,差值系數(shù)需要由圖像縮放系數(shù)計算模塊計算得到。做完橫向縮放后,每行的尺寸變?yōu)?52,但高都仍為480,圖像儲存在圖像縮放行緩沖器模塊,在該模塊中儲存有三條圖像的顏色數(shù)值。然后再由縱向圖像縮放模塊對之進(jìn)行縱向的縮放。這樣圖像尺寸就有640×480變?yōu)?52×288。
參照附圖2,對于圖像前置低通濾波,該系統(tǒng)采取7×7的線性差值,即濾波后的一個象素的顏色數(shù)值由周圍7×7個象素點經(jīng)過線性加權(quán)平均得到,這樣就需要49個乘法器。根據(jù)前述,該方法將二維運算轉(zhuǎn)化為兩個一維運算,并采取對稱的濾波器系數(shù),這樣對于每一個一維濾波器(橫向濾波和縱向濾波),僅僅需要4個乘法器。以橫向濾波為例,假設(shè)要計算的象素為Pn’,它與濾波前的Pn-3,Pn-2,Pn-1,Pn,Pn+1,Pn+2和Pn+3相關(guān),則Pn’的計算公式為Pn’=(Pn-3+Pn+3)*FIR_COEF0+(Pn-2+Pn+2)*FIR_COEF1+(Pn-1+Pn+1)*FIR_COEF2+Pn*FIR_COEF3上述公式中濾波器的系數(shù)由上位機(jī)來配置。此系數(shù)與圖像縮放的比例相關(guān),它應(yīng)保證在縮放之后圖像應(yīng)該沒有高頻噪聲,同時應(yīng)該具有較清晰的圖像質(zhì)量。
做完橫向濾波后,圖像存在濾波器行緩沖器模塊里。濾波器行緩沖器模塊包含了六條行緩沖器,可以儲存六行圖像的數(shù)據(jù)。對于七階縱向濾波需要有七行的圖像,緩沖器里存有六條,而第七行則實時的在輸入;第七行的數(shù)據(jù)輸入之后不僅提供給縱向濾波器使用,而且會覆蓋掉原先第一行數(shù)據(jù)所占用的緩沖器,所以六條緩沖器就能夠滿足使用。
對于縱向濾波,其算法通橫向濾波完全一樣,唯一區(qū)別是計算方向的差別。
做完濾波之后,就要對圖像進(jìn)行橫向尺度的縮放??s放比例由寄存器UP_FACTOR和DOWN_FACTOR決定,比如由640×480到352×288,其縮放比例是11/20,則UP_FACTOR=11,DOWN_FACTOR=20。圖像縮放涉及到兩步,首先根據(jù)UP_FACTOR將圖像的橫向尺寸變?yōu)镮MG_WIDTH*UP_FACTOR,即7040;然后再在這7040個象素里面每20個抽取一個作為輸出圖像的象素,這樣輸出圖像寬度就是352。但是,在具體實現(xiàn)的時候可以不儲存7040個象素的值,因為這里面絕大多數(shù)都是沒有用而且要丟掉的;我們只需要儲存那些出現(xiàn)在最后輸出圖像象素的值。在本系統(tǒng)的橫向縮放方法中,有兩個計數(shù)器,其中一個是用以統(tǒng)計輸入圖像中一行象素的個數(shù)(PIXEL_CNT),每到一個象素它自動會增加1;另一個計數(shù)器(UPSIZE_COUNT)用以計算每行需要抽取的象素的位置,當(dāng)新的一幀圖像到來或者該幀圖像某一行結(jié)束時,該計數(shù)器清零;以后每到來一個新的象素該計數(shù)器的值就加上UP_FACTOR。如果新的象素到來后發(fā)現(xiàn)UPSIZE_COUNT>=DOWN_FACTOR,在輸出圖像中有一個輸出象素,同時從UPSIZE_COUNT減取DOWN_FACTOR。由于新的象素必然出現(xiàn)在剛剛到達(dá)的兩個輸入象素的中間,它就由這兩個象素的加權(quán)平均計算得到。設(shè)剛剛到達(dá)的兩個象素為P1和P2,則新的象素顏色值可以通過以下公式計算得到Pnew=(1-a)*P1+a*P2其中系數(shù)a可以根據(jù)新的象素Pnew和P1的距離(即UPSIZE_COUNT)求出a=UPSIZE_COUNT/UP_FACTOR由于UP_FACTOR是一個六位二進(jìn)制數(shù),為避免除法器,在系統(tǒng)中存在一個表儲存64個1/UP_FACTOR。
這樣一個一個象素依照同樣的方法處理,就可以得到經(jīng)過橫向縮放的一行圖像,處理過的圖像儲存在圖像縮放行緩沖器模塊4中。三條圖像縮放行緩沖器可以儲存三行橫向縮放處理過的圖像,其工作方式是這樣的當(dāng)緩沖器里存有兩行圖像數(shù)據(jù)就可以進(jìn)行縱向縮放處理;但是由于在做縱向處理的時候輸入圖像還有可能繼續(xù)進(jìn)來,因此需要第三條緩沖器來儲存輸入的圖像??v向圖像縮放的處理方法與橫向幾乎一樣。這樣可以得到一幅完整的經(jīng)過縮放處理的圖像。
本發(fā)明所述的一種數(shù)字圖像的縮放處理系統(tǒng),并不僅僅限于說明書和實施方式中所列運用,它完全可以被適用于各種適合本發(fā)明之領(lǐng)域,對于熟悉本領(lǐng)域的人員而言可容易地實現(xiàn)另外的優(yōu)點和進(jìn)行修改,因此在不背離權(quán)利要求及等同范圍所限定的一般概念的精神和范圍的情況下,本發(fā)明并不限于特定的細(xì)節(jié)、代表性的設(shè)備和這里示出與描述的圖示示例。
權(quán)利要求
1.一種數(shù)字圖像的縮放處理系統(tǒng),其接收上位機(jī)(1)發(fā)送來的指令和圖像預(yù)處理模塊(2)發(fā)送來的圖像數(shù)據(jù),根據(jù)上位機(jī)(1)發(fā)送來的指令對圖像數(shù)據(jù)進(jìn)行縮放處理,并將縮放處理的圖像送給圖像后處理模塊(4),由圖像后處理模塊(4)對圖像進(jìn)行壓縮或者直接顯示;其特征在于所述的圖像縮放處理系統(tǒng)包括前置濾波器模塊(4)、圖像橫向尺寸縮放模塊(5)、圖像縮放行緩沖器模塊(6)、命令發(fā)送模塊(7)、圖像縮放系數(shù)計算模塊(8)和圖像縱向尺寸縮放模塊(9);由上位機(jī)(1)通過命令發(fā)送模塊(7),將該圖像縮放處理系統(tǒng)激活并使之處于正常的工作狀態(tài),此時前置濾波器模塊(4)將圖像預(yù)處理模塊送過來的圖像進(jìn)行低通濾波,此低通濾波器的系數(shù)由上位機(jī)(1)根據(jù)圖像縮放比例進(jìn)行配置,通過命令發(fā)送模塊(7)發(fā)送給前置濾波器模塊(4);圖像縮放系數(shù)計算模塊(8)根據(jù)上位機(jī)(1)發(fā)送給命令發(fā)送模塊(7)的命令,計算縮放的系數(shù)并送給圖像橫向尺寸縮放模塊(5)和圖像縱向尺寸縮放模塊(9)使用;圖像橫向尺寸縮放模塊(5)根據(jù)命令發(fā)送模塊(7)發(fā)送的指令和縮放系數(shù)對經(jīng)前置濾波的圖像在橫向進(jìn)行縮放處理,并將處理過的圖像儲存在圖像縮放行緩沖器模塊(6)中,然后圖像縱向尺寸縮放模塊(9)再對圖像縮放行緩沖器模塊(6)中的圖像進(jìn)行縱向尺度的變換。
2.根據(jù)權(quán)利要求1所述的圖像縮放處理系統(tǒng),其特征在于所述的前置濾波器模塊(4)包括橫向濾波器模塊(41),濾波器行緩沖器模塊(42)和縱向濾波器模塊(43);橫向濾波器模塊(41)首先在橫向尺度上對圖像進(jìn)行濾波,并把橫向濾波后的圖像儲存在濾波器行緩沖器模塊(42)中;由于所述系統(tǒng)采取七階濾波,濾波器行緩沖器模塊(42)儲存了6行的圖像數(shù)據(jù);縱向濾波器模塊(43)把圖像從濾波器行緩沖器模塊(42)取出,并對之進(jìn)行縱向濾波。
3.根據(jù)權(quán)利要求1所述的圖像縮放處理系統(tǒng),其特征在于所述的命令發(fā)送模塊(7)包括寄存器地址譯碼模塊(71)、寄存器讀寫模塊(72)、寄存器模塊(73),寄存器地址譯碼模塊(71)將上位機(jī)(1)發(fā)送過來的寄存器地址進(jìn)行譯碼,找到要操作的寄存器單元;寄存器讀寫模塊(72)則完成對該寄存器的讀寫操作;而寄存器模塊(73)則包含了數(shù)量眾多的控制寄存器。
4.根據(jù)權(quán)利要求3所述的圖像縮放處理系統(tǒng),其特征在于所述的寄存器模塊(73)包括輸入圖像寬度寄存器(731),輸入圖像高度寄存器(732),輸出圖像寬度寄存器(733),輸出圖像高度寄存器(734),前置濾波器系數(shù)寄存器(735),圖像放大倍數(shù)寄存器(736)和圖像縮小倍數(shù)寄存器(737);在啟動圖像縮放之前,由上位機(jī)(1)配置好這些寄存器的值,以保證所述系統(tǒng)的正常工作。
全文摘要
本發(fā)明涉及圖像處理領(lǐng)域,并具體的公開了一種用于數(shù)字圖像的縮放處理系統(tǒng)。本發(fā)明所述的圖像縮放處理系統(tǒng)包括前置濾波器模塊、圖像橫向尺寸縮放模塊、圖像縮放行緩沖器模塊、命令發(fā)送模塊、圖像縮放系數(shù)計算模塊和圖像縱向尺寸縮放模塊。按照本發(fā)明可以提高芯片支持圖像和視頻實現(xiàn)的性能。
文檔編號G06T1/00GK1719476SQ200410068819
公開日2006年1月11日 申請日期2004年7月8日 優(yōu)先權(quán)日2004年7月8日
發(fā)明者李國新, 周芬, 腰建勛, 高曉宇 申請人:北京中星微電子有限公司