專利名稱:在嵌入式系統(tǒng)中按比例縮放數(shù)字圖像的方法
技術(shù)領(lǐng)域:
本發(fā)明通常涉及按比例縮放數(shù)字圖像的方法,并且特別涉及按比例縮放數(shù)字圖像,即,用于縮小或放大數(shù)字圖像,以在嵌入式系統(tǒng)中顯示的方法。
背景技術(shù):
隨著數(shù)字圖像的產(chǎn)生,數(shù)字圖像裝置的各種各樣大小和形狀的數(shù)字圖像已經(jīng)被商業(yè)化并且被引入。諸如數(shù)字TV、HDTV(高清晰度電視)、PDA(個(gè)人數(shù)字助理)、IMT-2000(國際移動(dòng)電信-2000)終端等的數(shù)字圖像裝置提供了傳統(tǒng)的模擬圖像裝置所不能提供的清晰的圖像,并且還提供各種各樣的圖像處理功能,例如,劃分、放大、縮小、圖像平滑、等等,這些功能可能只能通過數(shù)字圖像處理來進(jìn)行。
需要許多的系統(tǒng)資源來實(shí)現(xiàn)上述的各種數(shù)字圖像處理功能。因此,在數(shù)字TV、DVD(數(shù)字化視頻光盤)播放器等能量供應(yīng)充足并且裝置的尺寸大到足以實(shí)現(xiàn)數(shù)字圖像處理功能的裝置中,可以毫不困難地實(shí)現(xiàn)各種的數(shù)字圖像處理功能。但是,由于諸如IMT-2000的便攜式通信終端站、PDA、數(shù)字可攜式攝像機(jī)等通常具有小的尺寸、有限的能量供應(yīng)、小的存儲(chǔ)器容量并且其處理器的處理速度較慢,所以嵌入式系統(tǒng)在其功能中實(shí)現(xiàn)數(shù)字圖像中有許多困難和限制。
用于放大/縮小圖像的圖像按比例縮放技術(shù)作為一種數(shù)字圖像處理功能被廣泛地用于從攝像機(jī)輸入的圖像或用于實(shí)現(xiàn)部分放大功能或在數(shù)字圖像輸出裝置中的PIP(畫中畫)功能。但是,由于彩色/活動(dòng)圖片便攜式通信終端最近非常的普遍了,所以圖像按比例縮放成為了在解決標(biāo)準(zhǔn)視頻信號(hào)CODEC(編碼器/解碼器)和各種尺寸的LCD(液晶顯示器)裝置之間的界面問題中的一項(xiàng)最重要的技術(shù)。標(biāo)準(zhǔn)的視頻信號(hào)CODEC被設(shè)計(jì)用于支持176×144的QCIF(正交通用界面格式(quadrature common interface format))尺寸。相反,LCD裝置根據(jù)終端的尺寸或它們的制造成本被制造成為各種用于圖像顯示的尺寸,并且因此,它可以被生產(chǎn)成為各種尺寸中的一種,從例如128×192的小尺寸到240×240的大尺寸。因此,LCD裝置需要放大或縮小圖像以顯示從LCD的圖像顯示上的標(biāo)準(zhǔn)的視頻信號(hào)CODEC輸出的圖像。
上述的放大或縮小圖像的圖像按比例縮放技術(shù),是多樣化并且非常復(fù)雜的,而且有許多方法是已知的。這些各種各樣的方法導(dǎo)致了這樣的事實(shí),即用于通過放大/縮小來保持源圖像的特性的方法在圖像的尺寸改變的時(shí)候是非常的不同的。但是,適用于諸如嵌入式系統(tǒng)的具有小系統(tǒng)能量的系統(tǒng)的圖像按比例縮放技術(shù)卻不是眾所周知的。這是由于一種共識(shí),即圖像按比例縮放技術(shù)由于圖像按比例縮放技術(shù)的實(shí)現(xiàn)需要許多操作過程而不適用于嵌入式系統(tǒng)。在像素單元的處理中,由于圖像是以每秒10幀速度輸出的,所以在實(shí)時(shí)的活動(dòng)圖片顯示中需要大量的處理過程。因此,用于嵌入式系統(tǒng)的圖像按比例縮放技術(shù)相對于硬件而受到了忽視,因?yàn)榛谥两褚阎募夹g(shù),需要復(fù)雜的硬件結(jié)構(gòu)和高能的系統(tǒng)來實(shí)現(xiàn)圖像修正功能。
此外,當(dāng)通過硬件實(shí)現(xiàn)圖像修正功能的時(shí)候,因?yàn)橥ㄟ^硬件的實(shí)現(xiàn)只允許少數(shù)的結(jié)構(gòu)類型,所以相對于軟件,很難獲得應(yīng)用的靈活的界面。與軟件不同,如果通過軟件來實(shí)現(xiàn)圖像修正功能,可以允許各種的應(yīng)用,例如,在輸入/輸出中的像素單元中的控制就可能了,并且在用于LCD輸出的應(yīng)用軟件的結(jié)構(gòu)設(shè)計(jì)中沒有限制。此外,采用軟件的圖像按比例縮放為各種的視頻信號(hào)CODEC和LCD輸入/輸出界面提供了靈活的界面。但是,由于大量的處理過程,所以在嵌入式系統(tǒng)中不能實(shí)現(xiàn)活動(dòng)圖片,即使那些具有高性能的芯片的裝置。
當(dāng)考慮到上述的問題后,優(yōu)選地通過軟件來在嵌入式系統(tǒng)上實(shí)現(xiàn)圖像修正功能,但是為了實(shí)現(xiàn)而進(jìn)行的大量的處理過程應(yīng)該足夠的少而不對軟件產(chǎn)生麻煩。實(shí)現(xiàn)圖像修正功能的最簡單的方法是根據(jù)按比例縮放的比率通過下采樣(down-sampling)源圖像的像素來縮小圖像并且減少像素的數(shù)量,或者功過簡單地復(fù)制源圖像的像素來放大圖像并且增加像素的數(shù)量。上述的技術(shù)可以參照圖1來進(jìn)行說明,圖1示出了作為向上按比例放大(up-scaling)的放大圖像的示例。
在圖1中,為了從3個(gè)源像素生成9個(gè)放大的圖像像素,即從源像素P1~P3生成目標(biāo)像素P1′~P9′,目標(biāo)像素P1′~P3′可以通過復(fù)制源圖像P1來生成,并且目標(biāo)像素P4′~P6′可以通過復(fù)制源圖像P2來生成,并且目標(biāo)像素P7′~P9′可以通過復(fù)制源圖像P3來生成。因此,不用處理,圖像尺寸就可以增加,但是放大的圖像的圖像的質(zhì)量嚴(yán)重地下降,因?yàn)槭峭ㄟ^簡單地復(fù)制源圖像來生成的。
為了提高放大的圖像的質(zhì)量,提出了插值(interpolation)的DDA(數(shù)字微分分析器)運(yùn)算,這種處理是通過向源圖像提供與目標(biāo)圖形的圖像尺寸成比例的縮放比率差不多的加權(quán)值(weight value)來進(jìn)行的。下面將參照圖1來說明根據(jù)DDA運(yùn)算放大圖像的向上按比例縮放的例子。如圖1所示,為了從3個(gè)源像素P1~P3生成9個(gè)目標(biāo)像素P1′~P9′,目標(biāo)像素P1′~P9′的像素值如下面的表1所示。
即,目標(biāo)像素P1′~P9′可以通過將一個(gè)或兩個(gè)相鄰的源像素值乘以斜率(=1/3)來生成,該傾斜度有賴于放大的圖像尺寸與源圖像尺寸的按比例縮放比率和對應(yīng)于與相鄰的源像素的距離的目標(biāo)像素的加權(quán)值,并隨后將相乘的值相加。因此,由于通過插值方法的對應(yīng)的源像素的相鄰的源像素值在目標(biāo)像素值上的反映,放大的圖像的質(zhì)量相對于源圖像的復(fù)制有了很大的改進(jìn),但是由于簡單地乘以根據(jù)源像素值的按比例縮放比率的斜率和加權(quán)值,所以仍舊不能期待高質(zhì)量的放大的目標(biāo)圖像。此外,由于處理過程包括劃分處理過程和乘法處理過程,所以仍舊需要大量的處理過程。
如上所述,用于嵌入式系統(tǒng)的圖像按比例縮放功能優(yōu)選地應(yīng)該通過軟件來實(shí)現(xiàn),并且處理過程的數(shù)量應(yīng)該足夠的小以便通過軟件來實(shí)現(xiàn)。但是,通過少量的處理過程的圖像按比例縮放技術(shù)由于縮放的圖像的質(zhì)量下降而仍舊存在許多問題,并且即使考慮到了圖像質(zhì)量的下降,它就需要大量的處理過程。因此,應(yīng)該最小化圖像質(zhì)量的下降并且應(yīng)該減少在嵌入式系統(tǒng)中的處理過程的數(shù)量。
發(fā)明內(nèi)容
因此,本發(fā)明的設(shè)計(jì)旨在解決上述的現(xiàn)有技術(shù)中的問題,本發(fā)明的目的是提供一種用于嵌入式系統(tǒng)的數(shù)字圖像按比例縮放的方法。
本發(fā)明的另一個(gè)目的是提供一種按比例縮放圖像的方法,同時(shí)減少處理過程的數(shù)量并最小化圖像質(zhì)量的下降。
為了實(shí)現(xiàn)上述的和其他的目的,提供了一種在嵌入式系統(tǒng)中的圖像的比例縮放方法,用于通過按比例縮放數(shù)字源圖像來生成數(shù)字目標(biāo)圖像,包括步驟確定源圖像和目標(biāo)圖像的各個(gè)最小處理單元的尺寸以便根據(jù)源圖像尺寸到目標(biāo)圖像尺寸的縮放比率將源圖像和目標(biāo)圖像在各自的橫向和縱向方向上劃分成為相同數(shù)量的最小處理單元;獲得整數(shù)加權(quán)值,每個(gè)加權(quán)值對應(yīng)于在兩個(gè)相鄰的像素之間均勻劃分的成為在0-2n(n為自然數(shù))之間的值的每個(gè)點(diǎn),并且兩個(gè)相鄰的像素之間的加權(quán)值的和為2n;以及通過使用在對應(yīng)的目標(biāo)像素值上反映的源像素值和對應(yīng)于到源像素的距離的加權(quán)值來獲得對應(yīng)于源圖像的最小處理單元的目標(biāo)圖像的每個(gè)最小處理單元的目標(biāo)像素值來生成目標(biāo)圖像。
根據(jù)本發(fā)明的另一個(gè)方面,圖像按比例縮放的方法包括步驟確定源圖像和目標(biāo)圖像的各個(gè)最小處理單元的尺寸以便根據(jù)源圖像尺寸到目標(biāo)圖像尺寸的縮放比率將源圖像和目標(biāo)圖像在各自的橫向和縱向方向上劃分成為相同數(shù)量的最小處理單元;獲得整數(shù)加權(quán)值,每個(gè)加權(quán)值對應(yīng)于在兩個(gè)相鄰的像素之間均勻劃分的成為在0-2n(n為自然數(shù))之間的值的每個(gè)點(diǎn),并且兩個(gè)相鄰的像素之間的加權(quán)值的和為2n;以及通過采用在對應(yīng)的目標(biāo)像素值上反映的源像素值,和對應(yīng)于到源像素的距離的加權(quán)值獲得的最小處理塊的每個(gè)最小處理單元的像素值來生成目標(biāo)圖像,其中通過將目標(biāo)圖像的最小處理單元乘以最小處理單元形成的每個(gè)最小處理塊,與通過源圖像的一個(gè)最小處理單元的每一邊的長度的平方形成的每個(gè)最小處理塊相對應(yīng)。
根據(jù)本發(fā)明的另一個(gè)方面,圖像按比例縮放的方法包括步驟確定源圖像和目標(biāo)圖像的最小處理單元的尺寸以便根據(jù)源圖像尺寸到目標(biāo)圖像尺寸的縮放比率將源圖像和目標(biāo)圖像在各自的橫向和縱向方向上劃分成為相同數(shù)量的最小處理單元;通過獲得整數(shù)加權(quán)值,每個(gè)加權(quán)值對應(yīng)于在兩個(gè)相鄰的像素之間均勻劃分的成為在0-2n(n為自然數(shù))之間的值的每個(gè)點(diǎn),并且兩個(gè)相鄰的像素之間的加權(quán)值的和為2n,并且通過將每個(gè)加權(quán)值和每個(gè)像素值相乘來產(chǎn)生查詢表;以及,通過參照為了得到在對應(yīng)的目標(biāo)像素值上反映的源圖像像素的距離的查詢表的處理獲得的,對應(yīng)于源圖像的最小處理單元的目標(biāo)圖像的每個(gè)最小處理單元的目標(biāo)像素值,來生成目標(biāo)圖像。
根據(jù)本發(fā)明的另一個(gè)方面,確定源圖像和目標(biāo)圖像的最小處理單元的尺寸以便根據(jù)源圖像尺寸到目標(biāo)圖像尺寸的縮放比率將源圖像和目標(biāo)圖像在各自的橫向和縱向方向上劃分成為相同數(shù)量的最小處理單元;通過獲得整數(shù)加權(quán)值,每個(gè)加權(quán)值對應(yīng)于在兩個(gè)相鄰的像素之間均勻劃分的成為在0-2n(n為自然數(shù))之間的值的每個(gè)點(diǎn),并且兩個(gè)相鄰的像素之間的加權(quán)值的和為2n,并且通過將每個(gè)加權(quán)值和每個(gè)像素值相乘來產(chǎn)生查詢表;以及通過參照為了得到在對應(yīng)的目標(biāo)像素值上反映的源圖像像素的距離的查詢表的處理獲得的,對應(yīng)于源圖像的最小處理單元的目標(biāo)圖像的每個(gè)最小處理單元的目標(biāo)像素值,其中通過將目標(biāo)圖像的最小處理單元乘以最小處理單元形成的每個(gè)最小處理塊,與通過作為源圖像的一個(gè)最小處理單元的長度的每一邊的平方形成的每個(gè)最小處理塊相對應(yīng)。
本發(fā)明的上述的和其他的目的、特點(diǎn)和優(yōu)點(diǎn)將通過下面參照附圖的說明而變的更加的明了,其中
圖1示出了傳統(tǒng)圖像向上按比例縮放的示例;
圖2(a)和2(b)示出了根據(jù)本發(fā)明的將源圖像和目標(biāo)圖像通過最小處理單元和最小處理塊來劃分的示例圖3a示出了根據(jù)本發(fā)明的在將兩個(gè)相鄰的像素之間的間隔除以8時(shí)的加權(quán)值的示例圖3b示出了根據(jù)本發(fā)明的來自源圖像的目標(biāo)圖像的像素值的產(chǎn)生的示例圖4示出了根據(jù)本發(fā)明的圖像按比例縮放裝置的塊圖5示出了根據(jù)本發(fā)明的第一實(shí)施例的圖像按比例縮放的流程圖
圖6示出了根據(jù)本發(fā)明的確定最小處理單元的流程圖7示出了根據(jù)本發(fā)明的加權(quán)值處理過程的流程圖8示出了生成圖5的目標(biāo)圖像的最小處理單元的流程圖9示出了生成圖5的目標(biāo)圖像的示例圖10示出了根據(jù)本發(fā)明的第二實(shí)施例的圖像按比例縮放的流程圖11示出了生成圖10的目標(biāo)圖像的最小處理單元的流程圖12示出了生成圖11的目標(biāo)圖像的示例圖13示出了根據(jù)本發(fā)明的另一個(gè)圖像按比例縮放裝置的塊圖14示出了根據(jù)本發(fā)明的第三實(shí)施例的圖像按比例縮放的流程圖15示出了根據(jù)本發(fā)明的生成查詢表的流程圖16示出了生成圖15的目標(biāo)圖像的最小處理單元的流程圖17示出了根據(jù)本發(fā)明的第四實(shí)施例的圖像按比例縮放的流程圖18示出了生成圖17的目標(biāo)圖像的最小處理單元的流程圖。
具體實(shí)施例方式
下面將參照附圖詳細(xì)說明本發(fā)明的優(yōu)選實(shí)施例,在下面的說明中,為了簡明說明本發(fā)明,省略了對于公知的功能和配置的說明。
本發(fā)明提供了一種圖像按比例縮放的方法,用于放大或縮小圖像,如圖2所示,其中源圖像和目標(biāo)圖像根據(jù)縮放比例在橫向和縱向上被劃分為用于每一邊的相同數(shù)量的單元,并且在劃分的單元上一個(gè)一個(gè)地連續(xù)地進(jìn)行縮放處理。在本發(fā)明中劃分的單元被稱為“最小處理單元”,并且用每個(gè)邊為源圖像的一個(gè)最小處理單元的長度的正方形定義的塊稱為“最小處理塊”。最小處理單元的尺寸是通過在每個(gè)橫向和縱向中的源圖像和目標(biāo)圖像的最大公約數(shù)確定的。
圖2示出了向下按比例縮放的例子,即,將如圖2(a)所示的尺寸為242×198的圖像縮小到如圖2(b)所示的尺寸為176×144的圖像。因?yàn)?42和176的最大公約數(shù)是22,所以圖2(a)的源圖像和圖2(b)目標(biāo)圖像的橫向邊被劃分為22個(gè)最小處理單元。因?yàn)?98和144的最大公約數(shù)是18,所以圖2(a)的源圖像和圖2(b)目標(biāo)圖像的縱向邊被劃分為18個(gè)最小處理單元。源圖像的最小處理單元包括11個(gè)像素,并且目標(biāo)圖像的最小處理單元包括8個(gè)像素。源圖像的最小處理塊的尺寸為11×11,并且目標(biāo)圖像的最小處理塊的尺寸為8×8。因此,源圖像和目標(biāo)圖像被劃分成為相同數(shù)量的最小處理塊,即22×18,盡管兩個(gè)圖像的每個(gè)最小處理塊的尺寸彼此不相同。較小的最小處理塊的尺寸比較好,并且尺寸可以根據(jù)縮放比例而不同。最好的情況是,2×2,并且最糟糕的情況是有著與目標(biāo)圖像一樣的尺寸。在最好的情況下,縮放比例是2或0.5倍,而最壞的情況意味著不能找到源圖像和目標(biāo)圖像的最大公約數(shù)。
在本發(fā)明中,加權(quán)值是由對應(yīng)于在兩個(gè)相鄰的源圖像的像素之間的被均勻劃分的點(diǎn)的整數(shù)定義的,并且是在0-2n范圍中的值,并且兩個(gè)像素的加權(quán)值的和是2n。這里,n是自然數(shù),并且在下面的說明中也是同樣的。加權(quán)值是源圖像值乘以的值,對應(yīng)于在源圖像像素和目標(biāo)像素之間的距離,反映在從源圖像生成的目標(biāo)圖像的像素值中。如果將兩個(gè)相鄰的像素之間的間隔分為最多的點(diǎn),則加權(quán)值可以被再分成最大的值,根據(jù)圖像按比例縮放的處理過程可以更加精確地執(zhí)行,并且目標(biāo)圖像的圖像質(zhì)量可以提高,但是處理過程的數(shù)量會(huì)減少。此外,n值越高,加權(quán)值能夠被再分成越大的值,根據(jù)圖像按比例縮放的處理過程可以更加精確地執(zhí)行,并且目標(biāo)圖像的圖像質(zhì)量可以提高,但是處理過程的數(shù)量會(huì)減少。因此,n值可以根據(jù)采用本發(fā)明的圖像按比例縮放技術(shù)的嵌入式系統(tǒng)所要求的圖像的精確度,即目標(biāo)圖像要求的圖像質(zhì)量來確定。在本發(fā)明的發(fā)明人的實(shí)驗(yàn)結(jié)果中,10是適合IMT-2000終端、PDA和類似裝置中的n值,并且8是適合PC(個(gè)人計(jì)算機(jī))中的n值。
圖3示出了一個(gè)示例,其中兩個(gè)像素Pa和Pb之間的間隔被8除,10被選定為n值,并且加權(quán)值對應(yīng)于到作為兩個(gè)像素Pa和Pb的標(biāo)準(zhǔn)像素的Pa的距離。這里,因?yàn)?10=1024,所以像素Pa的1/8點(diǎn)的加權(quán)值是128(=1024×1/8),2/8點(diǎn)的加權(quán)值是256(=1024×2/8),等等,并且8/8點(diǎn)的加權(quán)值是1024(=1024×8/8)。即使像素Pa的1/8點(diǎn)的加權(quán)值是128,7/8的加權(quán)值是896。在兩個(gè)像素Pa和Pb之間的其他點(diǎn)可以通過上述的同樣的方法獲得,并且在兩個(gè)像素Pa和Pb之間的加權(quán)值的和是1024。
加權(quán)值可以通過下面的等式獲得,并且本發(fā)明說明了圖3a中示出的將兩個(gè)相鄰的像素之間的間隔劃分成為8個(gè)的情況的示例。
Vw[i]=(integer cast)({Rs×i-(integer cast)(Rs×i)})<<n
在等式1中,i是加權(quán)值參數(shù),并且i在上述的情況中是1-8,其中兩個(gè)相鄰的像素之間的間隔被分成8份。Vw[i]是加權(quán)值的存儲(chǔ)順序(storage alignment)。Rs是源圖像尺寸/目標(biāo)圖像尺寸的比例值。<<n指出了向著最高位的n位移位,并且n-位移位是通過用Rs×i-(integercast)(Rs×i)乘以2n獲得的。
例如,當(dāng)選n為10的時(shí)候,在兩個(gè)相鄰的像素之間的加權(quán)值的和是210=1024。加權(quán)值被選成為在0到1024之間的整數(shù),以便目標(biāo)圖像像素對應(yīng)于作為生成目標(biāo)圖像像素的處理標(biāo)準(zhǔn)的源圖像像素的距離。
圖3b示出了當(dāng)源圖像的最小處理單元的尺寸是11,并且目標(biāo)圖像的最小處理單元的尺寸是8的時(shí)候,因此,從源圖像的11個(gè)源圖像像素P1-P11生成了目標(biāo)圖像的8個(gè)目標(biāo)像素P1′-P8′。此時(shí),目標(biāo)像素P1′-P7′是通過根據(jù)對應(yīng)的目的像素的距離反映兩個(gè)源像素的像素值來生成的,這兩個(gè)源像素的像素值被反映到對應(yīng)的目標(biāo)像素的相鄰的像素的像素值上,并且P8′是通過直接移動(dòng)源像素P11生成的。與上面的情況不同,目標(biāo)像素P1′-P8′還可以以這樣的方式生成,即P1′是通過直接移動(dòng)源像素P1生成,并且目標(biāo)像素P2′-P8′是通過根據(jù)對應(yīng)的目的像素的距離反映兩個(gè)源像素的像素值來生成,這兩個(gè)源像素的像素值被反映到對應(yīng)的目標(biāo)像素的相鄰的像素的像素值上。目標(biāo)像素的像素值,圖3b中的P1′-P7′可以通過將相鄰的兩個(gè)源像素的每個(gè)像素值乘以加權(quán)值,其中加權(quán)值代表對應(yīng)于每個(gè)源像素和對應(yīng)的目標(biāo)像素之間的距離的值、將兩個(gè)上述的結(jié)果值求和、并向著最低位移位n-位來生成。
如果數(shù)字圖像中的一個(gè)像素值包括8-位數(shù)據(jù),則像素值是0-255范圍中的一個(gè)值,并且目標(biāo)圖像的最小處理單元的尺寸是8,根據(jù)等式1的加權(quán)值示于表2中,它與圖3a和3b一樣。但是,Vw[8]是在像素Pb為標(biāo)準(zhǔn)的情況,并且在這種情況下,加權(quán)值是0,而不是1024。
下面將說明圖3b中的示例。目標(biāo)像素值,P1′從兩個(gè)源像素P1和P2生成,并且目標(biāo)像素P1′=(P1×640)+P2×384>>10。這里,>>10指10位向著最低位移位,它試圖將(P1×640)+(P2×384)的結(jié)果返回到像素具有的值,通過將(P1×640)+(P2×384)的結(jié)果除以1024,因?yàn)閬碜缘仁?的加權(quán)值是個(gè)向著最高位的10位移位的值,它是乘以1024的結(jié)果。生成目標(biāo)像素P1′可以通過乘以整數(shù)加權(quán)值、求和、以及移動(dòng)來實(shí)現(xiàn),并且其他的目標(biāo)像素P2′-P7′可以以相同的方式獲得。目標(biāo)像素P8′是通過直接移動(dòng)源像素P11獲得的。
因此,根據(jù)本發(fā)明,目標(biāo)像素值可以通過使用整數(shù)加權(quán)值來生成,其中加權(quán)值對應(yīng)于在目標(biāo)像素值上反映的源像素的距離,并且兩個(gè)像素之間的加權(quán)值的和是2n,以便在嵌入式系統(tǒng)中要求的圖像的質(zhì)量被顯著提高。此外,與傳統(tǒng)的情況不同,本發(fā)明的處理過程只包括乘以整數(shù)而沒有除,并且乘以n或除以n的處理過程可以只通過位移位來進(jìn)行,能夠顯著地減少處理過程的數(shù)量。
圖4示出了本發(fā)明的實(shí)施例的圖像按比例縮放的裝置的塊圖,并且圖像按比例縮放裝置包括處理器100,用于處理圖像縮放,以及,第一和第二幀存儲(chǔ)器102和104,用于存儲(chǔ)圖像數(shù)據(jù),即像素?cái)?shù)據(jù)。處理器100可以使用采用本發(fā)明的嵌入式系統(tǒng)的主處理器或可以包括單獨(dú)的處理器。第一幀存儲(chǔ)器102用于存儲(chǔ)第一幀的源圖像數(shù)據(jù)和從源圖像數(shù)據(jù)生成的目標(biāo)圖像數(shù)據(jù),并且第二幀存儲(chǔ)器104用于存儲(chǔ)在按比例縮放處理過程中需要的圖像數(shù)據(jù)。
參照圖5,它示出了根據(jù)本發(fā)明的第一實(shí)施例的處理器100的圖像按比例縮放的流程圖,其中第一幀的源圖像數(shù)據(jù)存儲(chǔ)在第一幀存儲(chǔ)器102中,在步驟200,處理器100根據(jù)源圖像尺寸與目標(biāo)圖像尺寸的縮放比例確定最小處理單元的尺寸。如上所述,源圖像和目標(biāo)圖像的最小處理單元的數(shù)量被確定為在源圖像和目標(biāo)圖像的橫向和縱向上是相同的。
參照圖6可以更詳細(xì)地說明處理器100確定最小單元的處理過程。圖6示出了在步驟300-306將圖2(a)的尺寸為242×198的源圖像縮小為圖2(b)的尺寸為176×144的圖像。首先,在步驟300,處理器100將源圖像的尺寸Src初始化為242、目標(biāo)圖像尺寸Des為176、Src/Des的比例Rs、以及計(jì)數(shù)值Count為0。然后,在步驟302-304,技術(shù)值Count以1增加,直到Rs乘以Count(Rs×Count)是整數(shù)。從而,獲得了比例Rs的整數(shù)倍,并且獲得了整數(shù)Rs×Count的最小值。如果比例Rs是242/176=1.375,則整數(shù)Rs×Count的最小值是11,并且計(jì)數(shù)值Count是8。如果獲得的整數(shù)Rs×Count的最小值是11,則11被確定為源圖像的最小處理單元的尺寸,并且在步驟306,計(jì)數(shù)值Count為確定為目標(biāo)圖像的最小處理單元的尺寸。因此,源圖像和目標(biāo)圖像的最小處理單元的尺寸被確定為如圖2所示。
在處理器100在步驟200確定了源圖像和目標(biāo)圖像的最小處理單元的尺寸后,在步驟202根據(jù)等式1獲得加權(quán)值?,F(xiàn)在,將參照圖7更詳細(xì)地說明處理器100獲得加權(quán)值的處理過程,圖7示出了步驟400-408將圖2(a)的尺寸為242×198的源圖像縮小為圖2(b)的尺寸為176×144的目標(biāo)圖像。
在圖7中,在步驟400,處理器100初始化參數(shù)i為1,并且以1遞增知道參數(shù)i等于目標(biāo)圖像的最小處理單元的尺寸,在步驟402-408,以獲得根據(jù)等式1的加權(quán)值并獲得源像素參數(shù),該源像素參數(shù)用于指定將作為處理過程標(biāo)準(zhǔn)的源像素,該處理過程標(biāo)準(zhǔn)用于如下所述根據(jù)index[i]=(integer case)(Rs×i)生成每個(gè)目標(biāo)像素。這里index[i]是源像素參數(shù)的存儲(chǔ)順序。獲得的加權(quán)值如表2所示,并且獲得源像素加權(quán)值如表3所示。同時(shí),步驟402中示出的等式省略了{(lán)Rs×i-(integer cast)(Rs×i)})<<n的結(jié)果的整數(shù)的選擇,與基于{Rs×i-(integercast)(Rs×i)})<<n的結(jié)果的等式1不同,在將圖2(a)的尺寸為242×198的源圖像縮小為圖2(b)的尺寸為176×144的目標(biāo)圖像時(shí),始終是整數(shù)。
在處理器100在步驟202獲得加權(quán)值并在步驟204根據(jù)下面的等式2獲得對應(yīng)于在源圖像的像素行的橫向上的源圖像的最小處理單元的目標(biāo)圖像的每個(gè)最小處理單元的目標(biāo)像素值之后,處理器100在橫向上生成按比例縮放的圖像。如果源圖像如圖9(a)所示,則源圖像的每個(gè)像素行的最小處理單元在橫行上被按比例縮放,如圖9(b)所示,通過上述的步驟204,以生成目標(biāo)圖像的最小處理單元,并且生成橫向按比例縮放的圖像。該橫向按比例縮放的圖像被存儲(chǔ)在第二幀存儲(chǔ)器104中。
Des[i]={(2n-Vw[i])×Src[Index[i]]+Vw[i]×Src[Index[i+1]]}>>n
在等式2中,i、Vw[i]與等式1中相同,并且Index[i]是(integer cast)(Rs×i),作為源像素參數(shù)的存儲(chǔ)順序,Des[i]是目標(biāo)圖像的最小處理單元的存儲(chǔ)順序,并且Src[Index[i]是源圖像的最小處理單元的存儲(chǔ)順序。>>n是向著最低位的n位移位,而且該n位移位提供與將{(2n-Vw[i])×Src[Index[i]]+Vw[i]×Src[Index[i+1]]除以2n相同的結(jié)果。
為了生成上述的橫向按比例縮放的圖像,處理器100生成對應(yīng)于一個(gè)源圖像的最小處理單元的一個(gè)目標(biāo)圖像的最小處理單元的處理過程將參照圖8詳細(xì)說明。
圖8示出了在步驟500-506將圖2(a)的尺寸為242×198的源圖像縮小為圖2(b)的尺寸為176×144的目標(biāo)圖像。首先,在處理器100初始化參數(shù)i為1,并且以1遞增直到參數(shù)i等于目標(biāo)圖像的最小處理單元的尺寸,并且獲得根據(jù)等式2的目標(biāo)圖像的最小處理單元的目標(biāo)像素值。因此,在表4中,示出了8個(gè)目標(biāo)圖像的最小處理單元的目標(biāo)像素值。
這里,Src[1]-Src[11]指出了圖3B中的源圖像的一個(gè)最小處理單元的像素P1-P11中的每一個(gè)的像素值。例如,在參照圖3b說明前述的示例時(shí),如果說明參照表3從兩個(gè)源像素P1,P2生成目標(biāo)像素P1′的情況時(shí),目標(biāo)像素P1′的像素值,Des[11]=(640×Src[1]+384×Src[2])>>10,這里>>10表示向著最高位的10位移位,它試圖將(P1×640+P2×384)的結(jié)果返回到像素,通過將(P1×640+P2×384)的結(jié)果除以1024,,因?yàn)楫?dāng)在上述的步驟402從等式1獲得加權(quán)值時(shí),等式1算出的加權(quán)值是一個(gè)向著最高位移位了10位的值。目標(biāo)像素P8′的像素值Des[8]是0,因?yàn)樵磮D像的最小處理單元沒有Src[12],并且因此,通過將源像素P11乘以1024并且向著最低為移動(dòng)10位來獲得Des[8],這與直接移動(dòng)源像素P11的值獲得的結(jié)果一樣。
通過為源圖像的每個(gè)像素行的橫行上的所有的最小處理單元一個(gè)一個(gè)地連續(xù)地重復(fù)在步驟502-506進(jìn)行的生成對應(yīng)于源圖像的一個(gè)最小處理單元的目標(biāo)圖像的一個(gè)最小處理單元的過程,從而從圖9(a)的源圖像生成了圖9(b)所示的橫行上按比例縮放的圖像。
當(dāng)在步驟204,在處理器100生成橫行上的按比例縮放的圖像后,處理器100通過從等式2為在橫向上按比例縮放了的圖像的每個(gè)像素行獲得對應(yīng)于在縱向上的源圖像的最小處理單元的源圖像的每個(gè)最小處理單元的目標(biāo)像素值來生成目標(biāo)圖像。生成對應(yīng)于源圖像的最小處理單元的目標(biāo)圖像的一個(gè)最小處理單元的處理過程可以通過上述的步驟500-506來進(jìn)行,與步驟204的方法相同。因此,在步驟206圖9(b)中的橫行上按比例縮放的圖像如圖9(c)所示在縱向上被按比例縮放,以便圖9(c)所示的圖像成為了在橫向上和縱向上都被向下按比例縮小了的目標(biāo)圖像。如上所述生成的目標(biāo)圖像代替源圖像數(shù)據(jù)被存儲(chǔ)在了第一幀存儲(chǔ)器102中。
因此,上述的說明是關(guān)于在步驟404生成源像素參數(shù)index[i]的,但是,它們還可以在步驟502中獲得。但是,步驟502的生成增加了處理過程,因?yàn)樘幚磉^程需要在步驟502中每次都處理最小處理單元,以便獲得源像素參數(shù),并且因此,步驟404更加方便。即,在步驟404生成源像素參數(shù)index[i]只要求一個(gè)用于一個(gè)源圖像的處理過程,而不許要很多的在每次處理最小處理單元時(shí)的重復(fù)的處理過程。
當(dāng)如上所述按比例縮放圖像的時(shí)候,第二幀存儲(chǔ)器104存儲(chǔ)如圖6圖9(b)所示的在橫行上按比例縮放的圖像的數(shù)據(jù),這需要與上述相同的存儲(chǔ)能力。通常,因?yàn)樯鲜龅那度胧较到y(tǒng)缺少存儲(chǔ)能力,優(yōu)選地減少第二幀存儲(chǔ)器104的存儲(chǔ)容量。如果通過最小處理塊的單元從源圖像生成目標(biāo)圖像以替代通過首先在橫向上按比例縮放所有源圖像,然后在縱向上進(jìn)行,則第二幀存儲(chǔ)器104只需要具有目標(biāo)圖像的最小處理塊的存儲(chǔ)容量。即當(dāng)縮小時(shí),處理器100開始從源圖像的起點(diǎn)以最小處理塊為單元存儲(chǔ)目標(biāo)圖像。在生成源圖像的一個(gè)最小處理塊的同時(shí),在第二幀存儲(chǔ)器104中存儲(chǔ)像素的圖像數(shù)據(jù),并且如果完成了最小處理塊的生成,則在第一幀存儲(chǔ)器102中存儲(chǔ)生成的目標(biāo)圖像的最小處理塊的圖像數(shù)據(jù)。對于存儲(chǔ)在用于在第一幀存儲(chǔ)器102中存儲(chǔ)目標(biāo)圖像的最小處理塊的圖像數(shù)據(jù)的存儲(chǔ)單元中的源圖像,因?yàn)樵谕瓿赡繕?biāo)圖像的生成后就不需要了,所以目標(biāo)圖像的最小處理塊的圖像數(shù)據(jù)可以代替上述的源圖像數(shù)據(jù)存儲(chǔ)。但是,在用于放大源圖像的向上按比例放大的情況下,不能使用上述的方法,因?yàn)槟繕?biāo)圖像的最小處理塊的尺寸大于源圖像的最小處理塊的尺寸,因此,如果使用上述的方法,則在目標(biāo)圖像生成之前源圖像的數(shù)據(jù)就消失了??紤]到這個(gè)問題,處理器100從存儲(chǔ)在第一幀存儲(chǔ)器102中的源圖像的末端開始以最小處理塊為單位生成目標(biāo)圖像。在生成目標(biāo)圖像的一個(gè)最小處理塊的同時(shí),在第二幀存儲(chǔ)器104中存儲(chǔ)像素的圖像數(shù)據(jù),并且如果一個(gè)對應(yīng)于最小處理塊的生成完成了,則生成的最小處理塊從第一幀存儲(chǔ)器102的存儲(chǔ)單元的末端存儲(chǔ)。
對于上述的處理過程,第一幀存儲(chǔ)器需要具有至少與放大的目標(biāo)圖像的尺寸一樣的存儲(chǔ)容量。當(dāng)源圖像的一幀在放大之前存儲(chǔ)時(shí),第一幀存儲(chǔ)器102在其末端具有與源圖像尺寸和目標(biāo)圖像尺寸的差相同的存儲(chǔ)能量。如上所述,目標(biāo)圖像是從源圖像的末端以最小處理塊為單位開始生成的,并且如果生成的最小處理塊從第一幀存儲(chǔ)器102的空閑的末端開始生成,則源圖像數(shù)據(jù)就不會(huì)在目標(biāo)圖像數(shù)據(jù)生成之前消失了。
圖10示出了根據(jù)本發(fā)明的第二實(shí)施例在最小處理塊單元中生成目標(biāo)圖像的的圖像按比例縮放的方法。處理器100在步驟600根據(jù)縮放比例源圖像和目標(biāo)圖像的最小處理單元,并且在步驟602從等式1獲得加權(quán)值。由于步驟600和602與圖5中的步驟200和202相同,在此省略了說明。然后,處理器100在步驟604從等式2為源圖像的最小處理塊的每個(gè)像素行獲得對應(yīng)于源圖像的最小處理單元的目標(biāo)圖像的每個(gè)最小處理單元的目標(biāo)像素值以便生成在橫向上按比例縮放的最小處理塊。掃描的最小處理塊從源圖像的起點(diǎn)在橫向上開始生成。當(dāng)圖12(a)示出了源圖像時(shí),在步驟604,如圖12(b)所示,源圖像的最小處理塊在橫向上被按比例縮放,并且生成了在橫行上的按比例縮放的最小處理塊。在橫向上按比例縮放的最小處理塊的數(shù)據(jù)被存儲(chǔ)在第二幀存儲(chǔ)器104中。
圖11示出了處理器100的處理過程,用于從源圖像的一個(gè)最小處理單元生成在橫向上按比例縮放的一個(gè)最小處理塊,通過將圖2(a)的尺寸為242×198的源圖像縮小為圖2(b)的尺寸為176×144的目標(biāo)圖像這個(gè)例子來說明,以在上述的步驟604生成在橫向上按比例縮放的最小處理塊。步驟700-712是關(guān)于通過重復(fù)圖8中的用于生成一個(gè)上述的圖像數(shù)據(jù)的最小處理單元的步驟500-506,來生成在橫向上按比例縮放的一個(gè)與源圖像的一個(gè)最小處理塊具有數(shù)量相同的最小處理單元的最小處理塊。由于一個(gè)最小處理塊的最小處理單元的數(shù)量是11,與像素行的數(shù)量相同,在圖11的步驟700到712生成在橫向上按比例縮放的一個(gè)最小處理塊。
在圖11中,處理器100在步驟700將計(jì)數(shù)值Count初始化為0,并且在步驟702選擇‘目標(biāo)圖像的最小處理單元的尺寸×Count’作為參數(shù)i。然后在步驟704-708,處理器100以1遞增參數(shù)i直到參數(shù)i等于目標(biāo)圖像的最小處理單元的尺寸,與圖8的步驟502-506相同,以便根據(jù)等式2為目標(biāo)圖像的最小處理單元獲得目標(biāo)像素值。如果參數(shù)i與目標(biāo)圖像的最小處理單元的尺寸相同了,即,如果完成了一個(gè)最小處理單元的處理過程,則處理器100在步驟710將計(jì)數(shù)值Count增加1,并且隨后在步驟712檢測是否計(jì)數(shù)值Count等于了源圖像的最小處理單元的尺寸。如果計(jì)數(shù)值Count不等于源圖像的最小處理單元的尺寸,則處理過程進(jìn)行步驟702以重復(fù)狹義個(gè)最小處理單元的處理。如果計(jì)數(shù)值Count等于了源圖像的最小處理單元的尺寸,則完成了在橫向上按比例縮放源圖像的一個(gè)最小處理塊的所有最小處理單元的處理過程。
如上所述,如果生成了在橫向上按比例縮放的一個(gè)最小處理塊,則處理器100從等式2在步驟700-712中為在步驟606被在橫行上按比例縮放了的最小處理塊的每個(gè)像素行獲得對應(yīng)于源圖像的最小處理單元的目標(biāo)圖像的最小處理單元的目標(biāo)像素值,與步驟604相同,以生成在橫行上和縱向上按比例縮放的最小處理塊。如果在橫向上按比例縮放的最小處理塊與圖12(b)中的相同,則在橫行上和縱向上按比例縮放的最小處理塊,即,在步驟606如圖12(c)所示生成一個(gè)目標(biāo)圖像的最小處理塊。上述的在橫向上按比例縮放的最小處理塊的數(shù)據(jù)被存儲(chǔ)在上述的第一幀存儲(chǔ)器102中。然后,處理器100檢測是否在步驟608生成了目標(biāo)圖像的所有的最小處理塊,并且如果生成還沒有完成,則進(jìn)行步驟604,并生成下一個(gè)最小處理塊。
因此,如果第二幀存儲(chǔ)器104能夠存儲(chǔ)在從源圖像的一個(gè)最小處理塊,即,只在橫向上按比例縮放了的一個(gè)最小處理塊,生成目標(biāo)圖像的一個(gè)最小處理塊的過程中需要的圖像數(shù)據(jù),則它需要具有至少等于在橫向上按比例縮放的一個(gè)最小處理塊的存儲(chǔ)容量。因此,相對于本發(fā)明的第一實(shí)施例,減少了需要的存儲(chǔ)器容量。
根據(jù)本發(fā)明的第一和第二實(shí)施例,嵌入式系統(tǒng)需要的圖像質(zhì)量能夠被滿足并且它們的處理過程只包括乘以整數(shù),與傳統(tǒng)的情況不同,傳統(tǒng)的情況包括除以的處理過程,并且乘以n或者除以n的處理過程被n位的移動(dòng)所代替,以便顯著地減少處理過程。但是,第一和第二實(shí)施例包括通過等式2為每次生成目標(biāo)圖像的目標(biāo)像素而處理兩次,即,一次是當(dāng)在橫向上按比例縮放的時(shí)候,并且然后,另一次是在縱向上按比例縮放的時(shí)候。從上述的本發(fā)明的第一和第二實(shí)施例的圖中看出,根據(jù)如圖3b所示的最小處理單元從源圖像生成目標(biāo)圖像的處理過程在橫向和縱向上重復(fù)。即,重復(fù)等式2的從11個(gè)源象P1-P11生成8個(gè)目標(biāo)像素P1′-P8′,因?yàn)槿缟纤鰯?shù)字圖像的像素值是0-255中的一個(gè)值,只有整合到處理過程中的值是不同的。通過上面的考慮,可以通過實(shí)現(xiàn)準(zhǔn)備一個(gè)查詢表而省略當(dāng)生成每個(gè)目標(biāo)像素值的時(shí)候?qū)⒃聪袼爻艘约訖?quán)值的處理過程,查詢表是通過將加權(quán)值乘以源像素可能具有的例如在0-255的范圍的像素值形成的。
圖13示出了根據(jù)本發(fā)明的另一個(gè)實(shí)施例的圖像按比例縮放裝置的塊圖,它是一種使用上述的查詢表生成目標(biāo)圖像的裝置,并且該圖像按比例縮放裝置是通過將查詢表存儲(chǔ)器106加到圖4的圖像按比例縮放裝置來構(gòu)造的,以在其中存儲(chǔ)查詢表。處理器100生成查詢表,并且如下所述,在執(zhí)行從源圖像生成目標(biāo)圖像之前,存儲(chǔ)在查詢表存儲(chǔ)器106中。
圖14示出了根據(jù)本發(fā)明的第三實(shí)施例通過處理器100的圖像按比例縮放處理過程的流程圖,它采用查詢表。首先,處理器100在步驟800根據(jù)縮放比例確定源圖像和目標(biāo)圖像的最小處理單元。步驟800與上述的圖5的步驟200相同,在此省略了其說明。處理器100在步驟802從等式1獲得加權(quán)值,并且通過將每個(gè)加權(quán)值乘以每個(gè)像素值生成查詢表,其中每個(gè)像素可以通過等式3獲得。
Lookup_Table[i][Table_Index]=(Vw[i]×Table_Index)>>n
在等式3中,i是目標(biāo)圖像的最小處理單元的目標(biāo)像素的參數(shù),Vw[i]是目標(biāo)圖像的最小處理單元的目標(biāo)像素的加權(quán)值的存儲(chǔ)順序,并且Lookup_Table[i][Table_Index]是包括參數(shù)i和每個(gè)像素都有的像素值的參數(shù)Table_Index的查詢表存儲(chǔ)順序。
參照圖15,它示出了根據(jù)上述的步驟802由處理器100處理查詢表的詳細(xì)的流程圖,處理器100在步驟900將參數(shù)i初始化為1,并且在步驟902從等式1獲得加權(quán)值。然后,在步驟906-901,當(dāng)在步驟902將表參數(shù)Table_Index初始化為0之后,將表參數(shù)Table_Index以1遞增,直至表參數(shù)Table_Index超過255,并且從等式3為對應(yīng)于一個(gè)參數(shù)值i的一個(gè)加權(quán)值獲得查詢表。最后,如果為對應(yīng)于一個(gè)參數(shù)值i的一個(gè)加權(quán)值獲得了包括值1-255的查詢表,則在與圖7的步驟404相同的步驟912獲得源圖像參數(shù)。然后,在步驟914通過檢測是否參數(shù)i等于目標(biāo)圖像的最小處理單元的尺寸,當(dāng)參數(shù)i還不等于目標(biāo)圖像的最小處理單元的尺寸的時(shí)候,在步驟916將參數(shù)i增加1,并且上述的處理過程從步驟902開始重復(fù)。直到參數(shù)i等于目標(biāo)圖像的最小處理單元的尺寸,步驟902-906被重復(fù)以生成表5的查詢表Lookup_Table[i][Table_Index],并且生成表3的參數(shù)順序,并且它們被存儲(chǔ)在查詢表存儲(chǔ)器106中。
這里,表5中的Vw[1]-Vw[8]與表3中的那些一樣,Vw[1]×1>>10,Vw[1]×2>>10、Vw[1]×3>>10,......等是通過在查詢表中生成進(jìn)行了乘和移動(dòng)的值而獲得的,并且存儲(chǔ)它們,但是在表中僅僅為了方便而表示為等式。
在生成了查詢表并且在查詢表存儲(chǔ)器106中存儲(chǔ)之后,處理器100從等式4通過參照表5的查詢表為每個(gè)對應(yīng)于在橫向上的源圖像的每個(gè)像素行的源圖像的最小處理單元的目標(biāo)圖像的每個(gè)最小處理單元獲得目標(biāo)像素值,以便生成在橫向上按比例縮放的圖像。Des[i]=Lookup_Table[i+Const][Src[Index[i]]]+Lookup_Table[i][Src[Index[i]+1]]
這里,在等式4中,i是目標(biāo)圖像的最小處理單元的目標(biāo)像素的參數(shù),Lookup_Table[i][Table_Index]是查詢表存儲(chǔ)順序,包括參數(shù)的i順序和一個(gè)像素具有的像素值的參數(shù)Table_Index;Des[i]是目標(biāo)圖像的最小處理單元的存儲(chǔ)順序;Index[i]是作為標(biāo)準(zhǔn)的用于生成目標(biāo)像素的源像素參數(shù)的存儲(chǔ)順序,并且它等于(integer cast)(Rs×i);并且Const被初始化為1/2如下所述的目標(biāo)圖像的最小處理單元的尺寸,并且如果參數(shù)i大于1/2的目標(biāo)圖像的最小處理單元的尺寸,則改變標(biāo)號(hào)。
為了如上所述通過使用上述的查詢表生成橫向按比例縮放的圖像,處理器100的生成對應(yīng)于源圖像的最小處理單元的目標(biāo)圖像的最小處理單元的處理過程將參照圖16來更加詳細(xì)的說明,圖16示出了在步驟1000~1010,將圖2(a)的尺寸為242×198的源圖像縮小為圖2(b)的尺寸為176×144的目標(biāo)圖像。
在圖16中,在處理器100將參數(shù)i初始化為1,并且將Const值選定為目標(biāo)圖像的最小處理單元的尺寸的1/2,即4,它將參數(shù)i以1遞增直到參數(shù)i等于目標(biāo)圖像的最小處理單元的尺寸,并且根據(jù)等式4獲得目標(biāo)圖像的最小處理單元的目標(biāo)像素值。如果參數(shù)i大于目標(biāo)圖像的最小處理單元的尺寸的1/2,則在步驟1010改變Const值的標(biāo)號(hào)。因此,獲得了如表4所示的目標(biāo)圖像的最小處理單元的8個(gè)目標(biāo)像素值。但是,由于當(dāng)生成如上所述的查詢表的時(shí)候,已經(jīng)進(jìn)行了源像素值和加權(quán)值的乘法以及移位,只要通過將在表5中示出的Lookup_Table[i+Const][Src[Index[i]]的值和Lookup_Table[i][Src[Index[i]+1]]的值相加就可以獲得每個(gè)目標(biāo)像素值。
通過為源圖像的每個(gè)像素行的橫行上的所有的最小處理單元一個(gè)一個(gè)地連續(xù)地重復(fù)在步驟1000~1010進(jìn)行的生成對應(yīng)于源圖像的一個(gè)最小處理單元的目標(biāo)圖像的一個(gè)最小處理單元的過程,從而從圖9(a)的源圖像生成了圖9(b)所示的橫行上按比例縮放的圖像。
在處理器100從上述的步驟804生成橫向按比例縮放的圖像后,它在步驟806通過從等式4為橫向按比例縮放的每個(gè)像素行獲得對應(yīng)于在縱向上的每個(gè)源圖像的最小處理單元的目標(biāo)像素值,并且通過參照表5的查詢表進(jìn)行的處理來生成目標(biāo)圖像。正象在步驟804中,對應(yīng)于一個(gè)源圖像的最小處理單元的一個(gè)目標(biāo)圖像的最小處理單元的生成是在步驟1000~1010中執(zhí)行的。因此,在步驟806,如圖9(b)所示的橫向按比例縮放的的圖像被在縱向上按比例縮放,如圖9(c)所示。如上所述產(chǎn)生的目標(biāo)圖像的數(shù)據(jù)存儲(chǔ)替代源圖像的數(shù)據(jù)而存儲(chǔ)在了第一幀存儲(chǔ)器102中。
因此,處理器100可以減少處理過程的數(shù)量并且其按比例縮放的處理速度可以提高,因?yàn)?,在生成每個(gè)目標(biāo)像素時(shí),使用了查詢表,該查詢表是事先通過將像素值乘以加權(quán)值生成的,以便可以從等式2省略相乘的處理過程。
源圖像的尺寸和目標(biāo)圖像的尺寸通常在嵌入式系統(tǒng)中確定,即使尺寸可以通過用戶的選擇來改變,它也不能每一幀地改變。一旦生成了查詢表,只要嵌入式系統(tǒng)的電源“打開”,或者源圖像和目標(biāo)圖像的尺寸被改變,預(yù)先設(shè)置的查詢表就能夠使用。即使在最壞的情形下,它也可以至少用于一幀。如果采用本發(fā)明的嵌入式系統(tǒng)是這樣的,其中源圖像和目標(biāo)圖像的尺寸是固定的,即它根據(jù)LCD的圖像尺寸來顯示從標(biāo)準(zhǔn)的視頻信號(hào)CODEC輸出的圖像,也不必改變上述的查詢表,以便如果制造商在非易失性的存儲(chǔ)器中存儲(chǔ)查詢表,則可以省略上述的查詢表的生成處理過程。
采用上述的查詢表的用于按比例縮放圖像的本發(fā)明可以與圖10中的本發(fā)明的第二實(shí)施例結(jié)合起來執(zhí)行,以生成以最小處理塊為單位的目標(biāo)圖像。
圖17示出了根據(jù)本發(fā)明的第四實(shí)施例用處理器100按比例縮放圖像的流程圖。在圖17中,處理器100在步驟1100根據(jù)縮放比例確定源圖像和目標(biāo)圖像的最小處理單元,并且當(dāng)在步驟1102從等式1獲得了加權(quán)值之后從等式3生成表5中的查詢表。因?yàn)椴襟E1100和1101與步驟800和802相同,所以在此省略了其說明。然后,處理器100在步驟1104通過參照表5中的查詢表進(jìn)行處理,從等式4為源圖像的最小處理塊的每個(gè)像素行獲得對應(yīng)于源圖像的最小處理單元的目標(biāo)圖像的每個(gè)最小處理單元的目標(biāo)像素值,以便生成在橫向上按比例縮放了的最小處理塊。處理器100從源圖像的起點(diǎn)開始生成在橫向上按比例縮放的最小處理單元,如果源圖像與圖12(a)中的相同,則在步驟1104,源圖像的最小處理單元在橫向上被按比例縮放,如圖12(b)所示,以便生成橫向上按比例縮放的最小處理塊。如上所述在橫向上進(jìn)行了按比例縮放的最小處理塊存儲(chǔ)在第二幀存儲(chǔ)器104中。
圖18示出了在步驟1200到1216,由處理器100進(jìn)行的,用于從源圖像的一個(gè)最小處理塊生成一個(gè)相對應(yīng)的在橫向上按比例縮放了的最小處理塊的處理過程,該過程是通過采用將圖2(a)中的尺寸為242×198的圖像縮小為圖2(b)中的尺寸為176×144的圖像來示例說明的,以在上述的步驟804生成在橫向上按比例縮放的最小處理單元。
步驟1200~1216示出了通過重復(fù)參照查詢表生成最小處理單元的圖像數(shù)據(jù)的步驟1000~1010來生成在橫向上被按比例縮放了的一個(gè)最小處理塊的步驟,它與源圖像的一個(gè)最小處理塊的最小處理單元的數(shù)量相同。
由于一個(gè)最小處理塊的最小處理單元的數(shù)量是11,與像素行的數(shù)量相同,所以在圖18的步驟1200~1216生成在橫向上按比例縮放的一個(gè)最小處理塊,并且將Const值選定為目標(biāo)圖像的最小處理單元的尺寸的1/2,即4。
在圖18中,處理器100在步驟1200將計(jì)數(shù)值Count初始化為0,并且在步驟1202將參數(shù)i的值選定為‘目標(biāo)圖像的最小處理單元的尺寸×Count’。然后,正如圖16中的步驟1002~1010,在步驟1204~1212,處理器100以1遞增參數(shù)i,直到參數(shù)i等于目標(biāo)圖像的最小處理單元的尺寸,以便根據(jù)等式4通過參照表5的查詢表的處理過程獲得目標(biāo)圖像的最小處理單元的目標(biāo)像素值。如果參數(shù)i變?yōu)榕c目標(biāo)圖像的最小處理單元的尺寸相同,即,如果完成了一個(gè)最小處理單元的處理過程,則處理器100在步驟1214將計(jì)數(shù)值Count遞增1,并且隨后在步驟1216檢測是否計(jì)數(shù)值Count等于源圖像的最小處理單元的尺寸。如果計(jì)數(shù)值Count不等于源圖像的最小處理單元的尺寸,則處理過程回到步驟1202以處理下一個(gè)最小處理單元。如果計(jì)數(shù)值Count等于源圖像的最小處理單元的尺寸,則完成了對于源圖像的一個(gè)最小處理塊的所有最小處理單元在橫向上的按比例縮放。
在處理器100生成了在橫向上按比例縮放的圖像之后,在步驟1106,它在與步驟1104相同的步驟1200~1216中,通過參照查詢表的處理過程,從等式4為在橫向上按比例縮放了的最小處理塊的每個(gè)像素行獲得對應(yīng)于源圖像的最小處理單元的目標(biāo)圖像的最小處理單元的目標(biāo)像素值來生成在橫向上和在縱向上按比例縮放了的最小處理塊。如果橫向按比例縮放的最小處理塊與圖12(b)中的相同,則在步驟1106生成圖12(c)中的在橫向上和縱向上被按比例縮放了的最小處理塊,即目標(biāo)圖像的一個(gè)最小處理塊。橫向上按比例縮放了的一個(gè)最小處理塊被存儲(chǔ)在第一幀存儲(chǔ)器104中。然后,在步驟1108,處理器100檢測是否生成了所有目標(biāo)圖像的最小處理塊,并且,如果生成還沒有完成,則進(jìn)行步驟1104,并生成下一個(gè)最小處理塊。如果完成了目標(biāo)圖像的所有最小處理塊,則流程圖的處理過程結(jié)束。
因此,使用查詢表可以減少處理器100的負(fù)擔(dān),并且按比例縮放的速度增加了。此外,第二幀存儲(chǔ)器104的存儲(chǔ)容量可以被減少到等于在橫向上按比例縮放了的一個(gè)最小處理塊的尺寸。
此外,將在下面采用將圖2(a)中的尺寸為242×198的圖像縮小為圖2(b)中的尺寸為176×144的圖像來示例說明采用查詢表通過使用ANSI(美國國家標(biāo)準(zhǔn)化組織)-C語言來在橫向上縮小圖像的程序。與圖3b不同,下面的程序是一個(gè)通過使用用于目標(biāo)像素值P1′的源像素值P1,以及在其余的目標(biāo)像素P2′~P8′的像素值上反映的兩個(gè)相鄰的源像素的像素值生成的示例
for(i=0;i<198;i++)for(j=0;j<22;j++){scr Index=i*242+j*11);des Index=i*176+j*8);des[des Index]=src[src Index];des[des Index+1]=tb375src[src Index+2]+tb625[src[src Index+1]];des[des Index+2]=tb750src[src Index+3]+tb250[src[src Index+2]];<!-- SIPO <DP n="24"> --><dp n="d24"/>des[des Index+3]=tb125src[src Index+5]+tb875[src[src Index+4]];des[des Index+4]=(src[src Index+5]+src[src Index+6])>>1;des[des Index+5]=tb125src[src Index+6]+tb875[src[src Index+7]];des[des Index+6]=tb750src[src Index+8]+tb250[src[src Index+9]];des[des Index+7]=tb375src[src Index+9]+tb625[src[src Index+10]];}
即,通過處理整個(gè)像素的像素行,生成了242個(gè)像素中的176個(gè)像素,并且通過重復(fù)地處理最小處理單元22次,完成處理過程。如果通過移位和OR將4個(gè)像素值存儲(chǔ)為32位,則如上所述,當(dāng)在橫向上進(jìn)行上述處理過程時(shí),作為處理結(jié)果的像素值是橫向相鄰的像素的像素值,可以提高效率。
如上所述,下面將用ANSI-C語言說明使用查詢表在縱向上縮小在橫向上被按比例縮放了的圖像的程序。
for(i=0;i<18;i++)for(j=0;j<176;j++){scr Index=i*11*176+j;des Index=i*8*176+j;des[des Index]=src[src Index];des[desIndex+1*176]=tb375src[srcIndex+2*176]+tb625[src[src Index+1*176]];des[des Index+2*176]=tb750src[src Index+3*176]+tb250[src[src Index+2*176]];des[des Index+3*176]=tb125src[src Index+5*176]+tb875[sre[src Index+4*176]];des[des Index+4*176]=(src[src Index+5*176]+src[src Index+6*176])>>1;des[des Index+5*176]=tb125src[src Index+6*176]+tb875[src[src Index+7*176]];des[des Index+6*176]=tb750src[src Index+8*176]+tb250[src[src Index+9*176]];des[des Index+7*176]=tb375src[src Index+9*176]+tb625[src[src Index+10*176]];}
即,通過處理整個(gè)像素的像素列,生成了198個(gè)像素中的144個(gè)像素,并且通過重復(fù)地處理最小處理單元18次,完成處理過程。
如上所述,在用于在橫向上縮小源圖像的程序和在縱向上縮小源圖像的程序中,tb125[]~tb[]是在下面的表6中示出的查詢表。
在表6中,tb125[i]、tb250[i]、tb375[i]、tb625[i]、tb750[i]、tb875[i]表示對于提供的未標(biāo)記的(unsigned)像素值0~255像素在上述圖3a中的到像素Pa的1/8、2/8、3/8、5/8、7/8點(diǎn)的加權(quán)值的查詢表。例如,在表2中,當(dāng)加權(quán)值是Vw[1]=384,則Lookup_Table[1][1]、Lookup_Table[1][2],......Lookup_Table[1][255]對應(yīng)于tb375[i]。因此表6的查詢表實(shí)質(zhì)上與表5的查詢表一樣。但是,在表6中,與表5不同,沒有對應(yīng)于512加權(quán)值的查詢表,即,tb500[i],因?yàn)閐es[desIndex+4]是通過將兩個(gè)源像素值相加、src[srcIndex+5]和src[srcIndex+6]、以及向著最低位移動(dòng)一位生成的,并且des[desIndex+4*176]是通過將兩個(gè)源像素值相加、src[srcIndex+5*176]和src[srcIndex+6*176]、以及向著最低位移動(dòng)一位生成的,如上面的程序所示,以便不需要另外的查詢表。
通過本發(fā)明的發(fā)明者的實(shí)驗(yàn)結(jié)果,本發(fā)明提供了在最小處理塊的尺寸為8×8的情況下,通過CIF標(biāo)準(zhǔn)將圖像按比例縮放50~200%的比例而圖像質(zhì)量不下降的可能。此外,在通過將兩個(gè)相鄰的像素分成8個(gè)點(diǎn)來處理加權(quán)值并且采用表5和6中示出的查詢表的情況下可以通過8個(gè)步驟來縮小,通過4個(gè)步驟來放大。此外,當(dāng)通過將相鄰的兩個(gè)像素分成16個(gè)點(diǎn)來處理加權(quán)值時(shí),可以通過采用表7和表6中示出的查詢表來通過16個(gè)步驟來縮小,通過8個(gè)步驟來放大。
如果將兩個(gè)相鄰的像素的間隔均勻地分成更多的點(diǎn),因?yàn)榧訖?quán)值可以再分成更多的值,并且處理過程可以更精確地執(zhí)行,所以目標(biāo)圖像的質(zhì)量可以提高,但是處理過程也增加了數(shù)量。因此,優(yōu)選地生成用于具有預(yù)定的步驟的放大或縮小的查詢表,和包括當(dāng)對應(yīng)的比例與上面的放大或縮小不適合時(shí)的與近似值有關(guān)的處理的另外的查詢表。
如上所述,當(dāng)實(shí)現(xiàn)數(shù)字圖像的按比例縮放后,本發(fā)明提供了最小化圖像質(zhì)量的下降的效果,并且減少了處理過程的數(shù)量,因?yàn)槟繕?biāo)像素是通過包括整數(shù)的乘法和加法以及移位,通過整數(shù)加權(quán)值的處理過程獲得的,其中兩個(gè)像素之間的加權(quán)值的和為2n,并且因此,圖像的按比例縮放可以容易地以各種方法在嵌入式系統(tǒng)中實(shí)現(xiàn)。
盡管參照本發(fā)明的某些優(yōu)選實(shí)施例示出并說明了本發(fā)明,本領(lǐng)域中的普通技術(shù)人員可以理解在不脫離本發(fā)明的精神和范圍內(nèi)的各種改變和修改。特別是,在本發(fā)明的特定實(shí)施例中,提出了一個(gè)將242×198大小的圖像縮小為176×144大小的圖像,但是本發(fā)明可以相同的方式用于源圖像和目標(biāo)圖像的尺寸發(fā)生了改變的情況。此外,本發(fā)明可以用于對于圖像按比例縮放的要求與嵌入式系統(tǒng)相同的其他的系統(tǒng)中。因此,本發(fā)明的精神和范圍不是由上述的實(shí)施例來限定的,而是由所附的權(quán)利要求及其等同物來限定的。
權(quán)利要求
1.一種用于在嵌入式系統(tǒng)中通過按比例縮放數(shù)字源圖像來生成數(shù)字目標(biāo)圖像的圖像按比例縮放的方法,該方法包括步驟
a) 確定源圖像和目標(biāo)圖像的各個(gè)最小處理單元的尺寸以便根據(jù)源圖像尺寸到目標(biāo)圖像尺寸的縮放比率將源圖像和目標(biāo)圖像在各自的橫向和縱向方向上劃分成為相同數(shù)量的最小處理單元;
b)獲得整數(shù)加權(quán)值,每個(gè)加權(quán)值對應(yīng)于在兩個(gè)相鄰的像素之間均勻劃分的每個(gè)點(diǎn),是在0-2n范圍內(nèi)的值,其中n是自然數(shù),并且兩個(gè)相鄰的像素之間的加權(quán)值的和為2n;以及
c)通過使用在對應(yīng)的目標(biāo)像素值上反映的源像素值和對應(yīng)于到源像素的距離的加權(quán)值來獲得對應(yīng)于源圖像的最小處理單元的目標(biāo)圖像的每個(gè)最小處理單元的目標(biāo)像素值來生成目標(biāo)圖像。
2.根據(jù)權(quán)利要求1所述的圖像按比例縮放方法,其中加權(quán)值是通過Vw[i]=(integer cast)({Rs×i-(integer cast)(Rs×i)}<<n)獲得的,并且目標(biāo)圖像的每個(gè)最小處理單元的目標(biāo)像素值是通過Des[i]={(2n-Vw[i])×Src[Index[i]]+Vw[i]×Src[Index[i+1]]}>>n獲得的;
其中,i是目標(biāo)圖像的最小處理單元的目標(biāo)像素的參數(shù),Vw[i]是加權(quán)值的存儲(chǔ)順序,Rs是源圖像尺寸/目標(biāo)圖像尺寸的比例值,n是自然數(shù),Des[i]是目標(biāo)圖像的最小處理單元的存儲(chǔ)順序,Src[Index[i]]是源圖像的最小處理單元的存儲(chǔ)順序,Index[i]是作為生成目標(biāo)像素的處理標(biāo)準(zhǔn)的源像素參數(shù)的存儲(chǔ)順序,并且等于(integer cast)(Rsxi),<<n表示向著最高位的n位移位,并且>>n是向著最低位的n位移位。
3.根據(jù)權(quán)利要求2所述的圖像按比例縮放方法,其中生成目標(biāo)圖像包括步驟
c1)用通過Des[i]={(2n-Vw[i])×Src[Index[i]]+Vw[i]×Src[Index[i+1]]}>>n為源圖像的每個(gè)像素行獲得的對應(yīng)于在橫向上的源圖像的最小處理單元的目標(biāo)圖像的每個(gè)最小處理單元的目標(biāo)像素值來生成在橫向上按比例縮放了的圖像;以及
c2)用通過Des[i]={(2n-Vw[i])×Src[Index[i]]+Vw[i]×Src[Index[i+1]]}>>n為在橫向上按比例縮放了的最小處理塊的每個(gè)像素列獲得的對應(yīng)于在縱向上的源圖像的最小處理單元的目標(biāo)圖像的每個(gè)最小處理單元的目標(biāo)像素值來生成目標(biāo)圖像。
4.根據(jù)權(quán)利要求3所述的圖像按比例縮放的方法,其中獲得加權(quán)值的步驟包括獲得Index[i]的步驟。
5.根據(jù)權(quán)利要求4所述的圖像按比例縮放的方法,其中n是從8、9、和10中選出的一個(gè)。
6.一種用于在嵌入式系統(tǒng)中通過按比例縮放數(shù)字源圖像來生成數(shù)字目標(biāo)圖像的圖像按比例縮放的方法,該方法包括步驟
a)確定源圖像和目標(biāo)圖像的各個(gè)最小處理單元的尺寸以便根據(jù)源圖像尺寸到目標(biāo)圖像尺寸的縮放比率將源圖像和目標(biāo)圖像在各自的橫向和縱向方向上劃分成為相同數(shù)量的最小處理單元;
b)獲得整數(shù)加權(quán)值,每個(gè)加權(quán)值對應(yīng)于在兩個(gè)相鄰的像素之間均勻劃分的每個(gè)點(diǎn),是在0-2n范圍內(nèi)的值,其中n為自然數(shù),并且兩個(gè)相鄰的像素之間的加權(quán)值的和為2n;以及
c)通過采用在對應(yīng)的目標(biāo)像素值上反映的源像素值,和對應(yīng)于到源像素的距離的加權(quán)值獲得的最小處理塊的每個(gè)最小處理單元的像素值來生成目標(biāo)圖像,其中通過將目標(biāo)圖像的最小處理單元乘以最小處理單元形成的每個(gè)最小處理塊,與通過源圖像的一個(gè)最小處理單元的每一邊的長度的平方形成的每個(gè)最小處理塊相對應(yīng)。
7.根據(jù)權(quán)利要求6所述的圖像按比例縮放的方法,其中加權(quán)值是通過Vw[i]=(integer cast)({Rs×i-(integer cast)(Rs×i)}<<n)獲得的,并且目標(biāo)圖像的每個(gè)最小處理單元的目標(biāo)像素值是通過Des[i]={(2n-Vw[i])×Src[Index[i]]+Vw[i]×Src[Index[i+1]]}>>n獲得的;
其中,i是目標(biāo)圖像的最小處理單元的目標(biāo)像素的參數(shù),Vw[i]是加權(quán)值的存儲(chǔ)順序,Rs是源圖像尺寸/目標(biāo)圖像尺寸的比例值,n是自然數(shù),Des[i]是目標(biāo)圖像的最小處理單元的存儲(chǔ)順序,Src[Index[i]]是源圖像的最小處理單元的存儲(chǔ)順序,Index[i]是作為生成目標(biāo)像素的處理標(biāo)準(zhǔn)的源像素參數(shù)的存儲(chǔ)順序,并且等于(integer cast)(Rs×i),<<n表示向著最高位的n位移位,并且>>n是向著最低位的n位移位。
8.根據(jù)權(quán)利要求7所述的圖形按比例縮放方法,其中生成目標(biāo)圖像的步驟包括步驟
c1)用通過Des[i]={(2n-Vw[i])×Src[Index[i]]+Vw[i]×Src[Index[i+1]]}>>n為源圖像的最小處理塊的每個(gè)像素行獲得的對應(yīng)于源圖像的最小處理單元的目標(biāo)圖像的每個(gè)最小處理單元的目標(biāo)像素值來生成在橫向上按比例縮放了的圖像;以及
c2)用通過Des[i]={(2n-Vw[i])×Src[Index[i]]+Vw[i]×Src[Index[i+1]]}>>n為在橫向上按比例縮放了的最小處理塊的每個(gè)像素列獲得的對應(yīng)于源圖像的最小處理單元的目標(biāo)圖像的每個(gè)最小處理單元的目標(biāo)像素值來生成目標(biāo)圖像的最小處理塊。
9.根據(jù)權(quán)利要求8所述的圖像按比例縮放的方法,其中生成目標(biāo)圖像的步驟包括步驟
在縮小源圖像時(shí),從源圖像的起點(diǎn)開始生成目標(biāo)圖像的最小處理塊;以及
在放大源圖像時(shí),從源圖像的末端開始生成目標(biāo)圖像的最小處理塊。
10.根據(jù)權(quán)利要求9所述的圖像按比例縮放的方法,其中獲得加權(quán)值的步驟包括獲得Index[i]的步驟。
11.根據(jù)權(quán)利要求10所述的圖像按比例縮放的方法,其中n是從8、9、和10中選出的一個(gè)。
12.一種用于在嵌入式系統(tǒng)中通過按比例縮放數(shù)字源圖像來生成數(shù)字目標(biāo)圖像的圖像按比例縮放的方法,該方法包括步驟
a)確定源圖像和目標(biāo)圖像的最小處理單元的尺寸以便根據(jù)源圖像尺寸到目標(biāo)圖像尺寸的縮放比率將源圖像和目標(biāo)圖像在各自的橫向和縱向方向上劃分成為相同數(shù)量的最小處理單元;
b)通過獲得整數(shù)加權(quán)值,每個(gè)加權(quán)值對應(yīng)于在兩個(gè)相鄰的像素之間均勻劃分的每個(gè)點(diǎn),為0-2n之間的值,其中n為自然數(shù),并且兩個(gè)相鄰的像素之間的加權(quán)值的和為2n,并且通過將每個(gè)加權(quán)值和每個(gè)像素值相乘來產(chǎn)生查詢表;以及
c)通過參照為了得到在對應(yīng)的目標(biāo)像素值上反映的源圖像像素的距離的查詢表的處理獲得的,對應(yīng)于源圖像的最小處理單元的目標(biāo)圖像的每個(gè)最小處理單元的目標(biāo)像素值,來生成目標(biāo)圖像。
13.根據(jù)權(quán)利要求12所述的圖像按比例縮放的方法,其中加權(quán)值是通過Vw[i]=(integer cast)({Rs×i-(integer cast)(Rs×i)}<<n)獲得的,查詢表是通過Lookup_Table[i][Table_Index]=(Vw[i]×Table_Index)>>n獲得的,并且目標(biāo)圖像的每個(gè)最小處理單元的目標(biāo)像素值是通過Des[i]=Lookup_Table[i+Const][Src[Index[i]]]+Lookup_Table[i][Src[Index[i]+1]]獲得的;
其中,i是目標(biāo)圖像的最小處理單元的目標(biāo)像素的參數(shù),Vw[i]是加權(quán)值的存儲(chǔ)順序,Rs是源圖像尺寸/目標(biāo)圖像尺寸的比值,n是自然數(shù),Lookup_Table[i][Table_Index]是包括參數(shù)i和一個(gè)像素所具有的像素值的參數(shù)Table_Index的查詢表存儲(chǔ)順序,Des[i]是目標(biāo)圖像的最小處理單元的存儲(chǔ)順序,Src[Index[i]]是源圖像的最小處理單元的存儲(chǔ)順序,Index[i]是作為生成目標(biāo)像素的處理標(biāo)準(zhǔn)的源像素參數(shù)的存儲(chǔ)順序,并且等于(integer cast)(Rs×i),Const被選定為目標(biāo)圖像的最小處理單元的尺寸的1/2,如果參數(shù)i大于目標(biāo)圖像的最小處理單元的尺寸的1/2,則改變標(biāo)號(hào),<<n表示向著最高位的n位移位,并且>>n是向著最低位的n位移位。
14.根據(jù)權(quán)利要求13所述的圖像按比例縮放的方法,其中生成目標(biāo)圖像的步驟包括步驟
c1)通過參照查詢表的處理過程由Des[i]=Lookup_Table[i+Const][Src[Index[i]]]+Lookup_Table[i][Src[Index[i]+1]]為源圖像的每個(gè)像素行獲得對應(yīng)于源圖像在橫向上的最小處理單元的目標(biāo)圖像的每個(gè)最小處理單元的目標(biāo)像素值來生成在橫向上按比例縮放了的圖像;以及
c2)通過參照查詢表的處理過程從Des[i]=Lookup_Table[i+Const][Src[Index[i]]]+Lookup_Table[i][Src[Index[i]+1]]獲得對應(yīng)于源圖像在縱向上的最小處理單元的目標(biāo)圖像的每個(gè)最小處理單元的目標(biāo)像素值,來為在橫向上按比例縮放了的最小處理塊的每個(gè)像素列生成目標(biāo)圖像的最小處理塊。
15.根據(jù)權(quán)利要求13所述的圖像按比例縮放的方法,其中獲得加權(quán)值的步驟包括獲得Index[i]的步驟。
16.根據(jù)權(quán)利要求15所述的圖像按比例縮放的方法,其中n是從8、9、和10中選出的一個(gè)。
17.一種用于在嵌入式系統(tǒng)中通過按比例縮放數(shù)字源圖像來生成數(shù)字目標(biāo)圖像的的圖像按比例縮放的方法,該方法包括步驟
a)確定各個(gè)源圖像和目標(biāo)圖像的最小處理單元的尺寸以便根據(jù)源圖像尺寸到目標(biāo)圖像尺寸的縮放比率將源圖像和目標(biāo)圖像在各自的橫向和縱向方向上劃分成為相同數(shù)量的最小處理單元;
b)通過獲得整數(shù)加權(quán)值,每個(gè)加權(quán)值對應(yīng)于在源圖像的兩個(gè)相鄰的像素之間均勻劃分的每個(gè)點(diǎn),成為在0-2n范圍內(nèi)的值,其中n為自然數(shù),兩個(gè)相鄰的像素之間的加權(quán)值的和為2n,并且通過將每個(gè)加權(quán)值和每個(gè)像素值相乘來產(chǎn)生查詢表;以及
c)通過參照為了得到在對應(yīng)的目標(biāo)像素值上反映的源圖像像素的距離的查詢表的處理獲得的,對應(yīng)于源圖像的最小處理單元的目標(biāo)圖像的每個(gè)最小處理單元的目標(biāo)像素值,其中通過將目標(biāo)圖像的最小處理單元乘以最小處理單元形成的每個(gè)最小處理塊,與通過源圖像的一個(gè)最小處理單元的每一邊的長度的平方形成的每個(gè)最小處理塊相對應(yīng)。
18.根據(jù)權(quán)利要求17所述的圖像按比例縮放的方法,其中加權(quán)值是通過Vw[i]=(integer cast)({Rs×i-(integer cast)(Rs×i)}<<n)獲得的,查詢表是通過Lookup_Table[i][Table_Index]=(Vw[i]×Table_Index)>>n獲得的,并且目標(biāo)圖像的每個(gè)最小處理單元的目標(biāo)像素值是通過Des[i]=Lookup_Table[i+Const][Src[Index[i]]]+Lookup_Table[i][Src[Index[i]+1]]獲得的;
其中,i是目標(biāo)圖像的最小處理單元的目標(biāo)像素的參數(shù),Vw[i]是加權(quán)值的存儲(chǔ)順序,Rs是源圖像尺寸/目標(biāo)圖像尺寸的比值,n是自然數(shù),Lookup_Table[i][Table_Index]是包括參數(shù)i和一個(gè)像素具有的像素值的參數(shù)Table_Index的查詢表存儲(chǔ)順序,Des[i]是目標(biāo)圖像的最小處理單元的存儲(chǔ)順序,Src[Index[i]]是源圖像的最小處理單元的存儲(chǔ)順序,Index[i]是作為生成目標(biāo)像素的處理標(biāo)準(zhǔn)的源像素參數(shù)的存儲(chǔ)順序,并且等于(integer cast)(Rs×i),Const被選定為目標(biāo)圖像的最小處理單元的尺寸的1/2,如果參數(shù)i大于目標(biāo)圖像的最小處理單元的尺寸的1/2,則改變符號(hào),<<n表示向著最高位的n位移位,并且>>n是向著最低位的n位移位。
19.根據(jù)權(quán)利要求18所述的圖像按比例縮放的方法,其中生成目標(biāo)圖像的步驟包括步驟
c1)通過參照查詢表的處理過程從Des[i]=Lookup_Table[i+Const][Src[Index[i]]]+Lookup_Table[i][Src[Index[i]+1]]為源圖像的每個(gè)像素行獲得的對應(yīng)于源圖像的最小處理單元的目標(biāo)圖像的每個(gè)最小處理單元的目標(biāo)像素值,來生成在橫向上按比例縮放了的圖像;以及
c2)通過參照查詢表的處理過程從Des[i]=Lookup_Table[i+Const][Src[Index[i]]]+Lookup_Table[i][Src[Index[i]+1]]為在橫向上按比例縮放了的最小處理塊的每個(gè)像素列獲得的對應(yīng)于源圖像的最小處理單元的目標(biāo)圖像的每個(gè)最小處理單元的目標(biāo)像素值,來生成目標(biāo)圖像的最小處理塊。
20.根據(jù)權(quán)利要求19所述的圖像按比例縮放的方法,其中生成目標(biāo)圖像的步驟包括
在縮小源圖像時(shí),從源圖像的起點(diǎn)開始生成目標(biāo)圖像的最小處理塊;以及
在放大源圖像時(shí),從源圖像的末端開始生成目標(biāo)圖像的最小處理塊;以及
21.根據(jù)權(quán)利要求20所述的圖像按比例縮放的方法,其中獲得加權(quán)值的步驟包括獲得Index[i]的步驟。
22.根據(jù)權(quán)利要求21所述的圖像按比例縮放的方法,其中n是從8、9、和10中選出的一個(gè)。
全文摘要
一種適用于嵌入式系統(tǒng)的數(shù)字圖像按比例縮放方法。該圖像按比例縮放的方法是這樣進(jìn)行的確定源圖像和目標(biāo)圖像的各個(gè)最小處理單元的尺寸以便根據(jù)源圖像尺寸到目標(biāo)圖像尺寸的縮放比率將源圖像和目標(biāo)圖像在各自的橫向和縱向方向上劃分成為相同數(shù)量的最小處理單元;獲得整數(shù)加權(quán)值,每個(gè)加權(quán)值對應(yīng)于在兩個(gè)相鄰的像素之間均勻劃分的每個(gè)點(diǎn),是在0-2n(n是自然數(shù))范圍內(nèi)的值,并且兩個(gè)相鄰的像素之間的加權(quán)值的和為2n;以及通過使用在對應(yīng)的目標(biāo)像素值上反映的源像素值和對應(yīng)于到源像素的距離的加權(quán)值來獲得對應(yīng)于源圖像的最小處理單元的目標(biāo)圖像的每個(gè)最小處理單元的目標(biāo)像素值來生成目標(biāo)圖像。
文檔編號(hào)H04N1/393GK1484434SQ0312419
公開日2004年3月24日 申請日期2003年4月29日 優(yōu)先權(quán)日2002年9月17日
發(fā)明者李和純, 李承徹 申請人:三星電子株式會(huì)社