專利名稱:一種圖像縮放的方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于圖像處理領(lǐng)域,尤其涉及一種圖像縮放的方法和裝置。
背景技術(shù):
在通過顯示屏顯示外部存儲(chǔ)器中的原始圖像時(shí),通常顯示屏的顯示區(qū)域大小與原始圖像的大小存在差異,因此一般需要對原始圖像進(jìn)行縮放處理后再顯示。在對原始圖像進(jìn)行縮放處理時(shí),為了保證顯示屏的實(shí)時(shí)性,一般均需要先將全部或者部分原始圖像數(shù)據(jù)從外部存儲(chǔ)器中讀取到輸入緩存,再對輸入緩存中的原始圖像數(shù)據(jù)進(jìn)行插值運(yùn)算,得到目標(biāo)圖像數(shù)據(jù)。當(dāng)需要從外部存儲(chǔ)器中讀取較多行的原始圖像數(shù)據(jù)進(jìn)行圖像縮放處理時(shí),不僅增大了數(shù)據(jù)傳輸量、增加了 DMA帶寬的占用,導(dǎo)致系統(tǒng)資源的浪費(fèi),而且由于圖像縮放處理時(shí)間長,導(dǎo)致需要大幅度增加輸出緩存的空間才能保證顯示屏的實(shí)時(shí)性需求,從而成本尚ο請參閱圖1,為現(xiàn)有技術(shù)提供的圖像縮放方法的一個(gè)示例圖,簡述如下當(dāng)進(jìn)行圖像縮放處理時(shí),通過直接內(nèi)存訪問(Direct Memory Access,DMA)方式將外部存儲(chǔ)器中存儲(chǔ)的原始圖像數(shù)據(jù)逐行依次讀取至輸入緩沖區(qū),對輸入緩沖區(qū)中的原始圖像數(shù)據(jù)進(jìn)行一定的插值處理,并將插值處理后的圖像數(shù)據(jù)傳輸至輸出緩沖區(qū),再通過一定的接口時(shí)序?qū)⑤敵鼍彌_區(qū)中的圖像數(shù)據(jù)傳輸至顯示屏進(jìn)行顯示。由于每往輸出緩沖區(qū)中寫一行圖像數(shù)據(jù),都需要經(jīng)過從外部存儲(chǔ)器讀取數(shù)據(jù)至輸入緩沖區(qū)、圖像插值等多個(gè)步驟,而現(xiàn)有技術(shù)的缺陷就在于無論原始行數(shù)據(jù)最終是否參與插值運(yùn)算,也無論這一行數(shù)據(jù)最終是否有用,都會(huì)把這一行數(shù)據(jù)讀入進(jìn)來,這樣勢必會(huì)加大數(shù)據(jù)傳輸量、增加圖像縮放處理時(shí)間,與此同時(shí)還很容易造成輸出緩沖區(qū)讀空從而導(dǎo)致顯示屏顯示異常。請參閱圖2,現(xiàn)有技術(shù)還提供了另一種圖像縮放的方法,該方法在對原始圖像進(jìn)行縮放處理前,先通過動(dòng)態(tài)預(yù)判斷電路,預(yù)先判斷出圖像縮放過程中需要參與插值運(yùn)算的有效數(shù)據(jù)行,如圖2中的L1、L3、L4、L6、L7、L9、L10、L11、L12。這種方法一定程度上減少了需要傳輸?shù)臄?shù)據(jù)量,降低了系統(tǒng)中DMA帶寬占用。但是由于需要額外增加動(dòng)態(tài)預(yù)判斷電路進(jìn)行判斷,增加了硬件資源,而且需要讀取的數(shù)據(jù)行也還是比較多,在縮小比例較大時(shí),為了保證顯示屏的實(shí)時(shí)性,還是需要較大的緩沖區(qū)空間。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例的目的在于提供一種圖像縮放的方法,旨在解決現(xiàn)有的圖像縮放方法數(shù)據(jù)傳輸量大、DMA帶寬和緩存空間浪費(fèi)嚴(yán)重的問題。本發(fā)明實(shí)施例是這樣實(shí)現(xiàn)的,一種圖像縮放的方法,所述方法包括下述步驟根據(jù)原始圖像與目標(biāo)圖像之間的垂直尺寸關(guān)系確定要讀取的數(shù)據(jù)行的間隔行數(shù);根據(jù)間隔行數(shù)確定要從原始圖像中讀取的數(shù)據(jù)行信息,并從原始圖像中讀取確定的要從原始圖像中讀取的數(shù)據(jù)行信息;
對讀取的數(shù)據(jù)行信息進(jìn)行插值運(yùn)算,并將插值運(yùn)算結(jié)果存儲(chǔ)至輸出緩存。本發(fā)明實(shí)施例的另一目的在于提供一種圖像縮放的裝置,所述裝置包括圖像讀取控制單元,用于根據(jù)原始圖像與目標(biāo)圖像之間的垂直尺寸關(guān)系確定要讀取的數(shù)據(jù)行的間隔行數(shù);直接內(nèi)存訪問控制單元,用于根據(jù)間隔行數(shù)確定要從原始圖像中讀取的數(shù)據(jù)行信息,并從原始圖像中讀取確定的要從原始圖像中讀取的數(shù)據(jù)行信息;輸入緩存,用于存儲(chǔ)所述直接內(nèi)存訪問控制單元讀取的原始圖像的數(shù)據(jù)行信息;圖像插值處理單元,用于對讀取的數(shù)據(jù)行信息進(jìn)行插值運(yùn)算;輸出緩存,用于存儲(chǔ)所述圖像插值處理單元的插值運(yùn)算結(jié)果。在本發(fā)明實(shí)施例中,通過根據(jù)原始圖像與目標(biāo)圖像之間的垂直尺寸關(guān)系確定縮放過程中需要的數(shù)據(jù)行信息,再從外部存儲(chǔ)器中讀取確定的數(shù)據(jù)行信息至輸入緩存,然后由圖像插值處理單元根據(jù)輸入緩存中的數(shù)據(jù)行信息對原始圖像進(jìn)行插值縮放,由于只讀取縮放過程中需要的數(shù)據(jù)行信息,從而最大限度的減少了數(shù)據(jù)傳輸量和圖像縮放處理時(shí)間,進(jìn)而減少了顯示屏控制器的輸出緩存,提高了顯示屏的實(shí)時(shí)性。
圖1是現(xiàn)有技術(shù)提供的圖像縮放的方法的示例圖;圖2是現(xiàn)有技術(shù)提供的另一圖像縮放的方法的示例圖;圖3是本發(fā)明實(shí)施例提供的圖像縮放的方法的實(shí)現(xiàn)流程圖;圖4是本發(fā)明實(shí)施例提供的圖像縮放的方法的示例圖;圖5是本發(fā)明實(shí)施例提供的圖像縮放的裝置的結(jié)構(gòu)框圖。
具體實(shí)施例方式為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。在本發(fā)明實(shí)施例中,在將輸入的原始圖像縮放處理成目標(biāo)圖像時(shí),先根據(jù)原始圖像與目標(biāo)圖像之間的垂直尺寸關(guān)系確定縮放過程中需要的數(shù)據(jù)行信息,再從外部存儲(chǔ)器中讀取確定的數(shù)據(jù)行信息至輸入緩存,然后由圖像插值處理單元根據(jù)輸入緩存中的數(shù)據(jù)行信息對原始圖像進(jìn)行插值縮放,由于只讀取縮放過程中需要的數(shù)據(jù)行信息,從而最大限度的減少了數(shù)據(jù)傳輸量和圖像縮放處理時(shí)間,進(jìn)而減少了顯示屏控制器的輸出緩存,提高了顯示屏的實(shí)時(shí)性。圖3示出了本發(fā)明實(shí)施例提供的圖像縮放的方法的實(shí)現(xiàn)流程,詳述如下在步驟SlOl中,根據(jù)原始圖像與目標(biāo)圖像之間的垂直尺寸關(guān)系確定要讀取的數(shù)據(jù)行的間隔行數(shù)。由于導(dǎo)致傳輸數(shù)據(jù)占用DMA帶寬過多、以及導(dǎo)致圖像縮放處理時(shí)間過長的主要因素是垂直方向的插值判斷和插值運(yùn)算,因此,本發(fā)明主要考慮原始圖像與目標(biāo)圖像之間的垂直方向的尺寸關(guān)系來確定要讀取的數(shù)據(jù)行的間隔行數(shù)。其中根據(jù)原始圖像與目標(biāo)圖像之間的垂直方向的尺寸關(guān)系確定要讀取的數(shù)據(jù)行
5的間隔行數(shù)的步驟具體如下A、獲取原始圖像垂直方向的尺寸Simgv和目標(biāo)圖像垂直方向的尺寸Dimgv。B、根據(jù)原始圖像垂直方向的尺寸Simgv和目標(biāo)圖像垂直方向的尺寸Dimgv的比值 M確定間隔行數(shù)N。其中間隔行數(shù)N是指從原始圖像中每隔N行選取一行。為了保證經(jīng)縮放處理后的目標(biāo)圖像的質(zhì)量,根據(jù)Simgv和Dimgv的比值M確定N 的具體方式如下若L<M彡L+1,則N = L,其中 L 為整數(shù),M = Simgv/Dimgv。在本發(fā)明實(shí)施例中,當(dāng)原始圖像的垂直尺寸大于目標(biāo)顯示的垂直尺寸,即M大于1 時(shí),對原始圖像進(jìn)行一定的抽取,只讀取縮放過程中需要的部分行數(shù)據(jù)信息;當(dāng)原始圖像的垂直尺寸小于或等于目標(biāo)顯示的垂直尺寸,即M小于或等于1 (N = 0)時(shí),此時(shí)需要作放大處理,則讀取原始圖像的每一行數(shù)據(jù),不做抽取。在步驟S102中,根據(jù)間隔行數(shù)確定要從原始圖像中讀取的數(shù)據(jù)行信息,并從原始圖像中讀取確定的要從原始圖像中讀取的數(shù)據(jù)行信息。其中根據(jù)間隔行數(shù)確定要從原始圖像中讀取的數(shù)據(jù)行信息的具體過程如下將原始圖像中的第一行圖像數(shù)據(jù)確定為要讀取的數(shù)據(jù)行;將原始圖像的第一行開始,每間隔間隔行數(shù)的數(shù)據(jù)行確定為要讀取的數(shù)據(jù)行。從原始圖像中讀取確定的要從原始圖像中讀取的數(shù)據(jù)行信息的步驟如下根據(jù)間隔行數(shù)N、原始圖像的各分量的起始地址計(jì)算要從原始圖像中讀取的各數(shù)據(jù)行的各分量地址,并根據(jù)各數(shù)據(jù)行的各分量地址從原始圖像中讀取要讀取的數(shù)據(jù)行信肩、ο在本發(fā)明實(shí)施例中,由于原始圖像一般存儲(chǔ)在外部存儲(chǔ)器中,且一般采用DMA方式從外部存儲(chǔ)器中讀取要讀取的數(shù)據(jù)行信息,因此,根據(jù)間隔行數(shù)N以及原始圖像的各分量的DMA起始地址計(jì)算縮放過程中要讀取的各數(shù)據(jù)行的各分量的DMA地址。當(dāng)原始圖像為YUV420格式時(shí),根據(jù)間隔行數(shù)N、原始圖像的各分量的起始地址計(jì)算要從原始圖像中讀取的各數(shù)據(jù)行的各分量地址的地址計(jì)算公式如下 Y_addr = Y_baddr+(N+1)氺Simgh氺Snum ;U_addr = U_baddr+P氺Simgh/4 ;V_addr = V_baddr+P氺Simgh/4 ;若(N+1)*Snum 為奇數(shù),則 P= (N+1) *Snum_l ;反之,則 P= (N+1) *Snum。當(dāng)原始圖像為YUV422格式時(shí),根據(jù)間隔行數(shù)N、原始圖像的各分量的起始地址計(jì)算要從原始圖像中讀取的各數(shù)據(jù)行的各分量地址的地址計(jì)算公式如下Y_addr = Y_baddr+(N+1)氺Simgh氺Snum ;U_addr = U_baddr+(N+1)氺Simgh氺Snum/2 ;V_addr = V_baddr+(N+1)氺Simgh氺Snum/2 ;當(dāng)原始圖像為YUV444格式時(shí),根據(jù)間隔行數(shù)N、原始圖像的各分量的起始地址計(jì)算要從原始圖像中讀取的各數(shù)據(jù)行的各分量地址的地址計(jì)算公式如下Y_addr = Y_baddr+(N+1)氺Simgh氺Snum ;
U_addr = U_baddr+(N+1)氺Simgh氺Snum ;
V_addr = V_baddr+(N+1)氺Simgh氺Snum ;
6
其中,Y_baddr、U_baddr、V_baddr分別為 Y、U、V 各分量的 DMA 起始地址;Y_addr、 U_addr、V_addr為相應(yīng)的每行數(shù)據(jù)各分量的DMA地址;Simgh為原始圖像的水平尺寸;Snum 為已經(jīng)讀取的行數(shù),該值由后續(xù)圖像插值處理單元進(jìn)行累計(jì)。由于已經(jīng)計(jì)算出要讀取的數(shù)據(jù)行的各分量的DMA地址,從而根據(jù)對應(yīng)數(shù)據(jù)行的各分量的DMA地址即可從用于存儲(chǔ)原始圖像的外部存儲(chǔ)器中讀取要讀取的數(shù)據(jù)行。在本發(fā)明實(shí)施例中,將從原始圖像中讀取的數(shù)據(jù)行存儲(chǔ)至輸入緩存中。在本發(fā)明實(shí)施例中,當(dāng)顯示屏的控制器需要提供多路輸出,對應(yīng)有多個(gè)通道時(shí),將從原始圖像中讀取的數(shù)據(jù)行存儲(chǔ)至相應(yīng)通道的輸入緩存中。在本發(fā)明實(shí)施例中,在根據(jù)要讀取的數(shù)據(jù)行的各分量地址從外部存儲(chǔ)器中存儲(chǔ)的原始圖像中讀取要讀取的數(shù)據(jù)行信息時(shí),由于每個(gè)通道只需要從外部存儲(chǔ)器中存儲(chǔ)的原始圖像中讀取圖像縮放過程中需要的數(shù)據(jù)行信息,從而極大的降低了各通道中數(shù)據(jù)的傳輸量,進(jìn)而節(jié)省了為保證顯示屏的實(shí)時(shí)性而額外增加的緩存空間。在步驟S103中,對讀取的數(shù)據(jù)行信息進(jìn)行插值運(yùn)算,并將插值運(yùn)算結(jié)果存儲(chǔ)至輸出緩存,以備輸出。其中對讀取的數(shù)據(jù)行信息進(jìn)行插值運(yùn)算的具體過程屬于現(xiàn)有技術(shù),故簡述如下在本發(fā)明實(shí)施例中,每從輸入緩存中讀取一行原始圖像數(shù)據(jù),先進(jìn)行指定的水平縮放操作,所得到的數(shù)據(jù)存入行數(shù)據(jù)緩沖區(qū),或者將進(jìn)行了指定的水平縮放操作所得到的數(shù)據(jù)與行數(shù)據(jù)緩沖區(qū)中已存儲(chǔ)的上一行數(shù)據(jù)進(jìn)行垂直方向的縮放操作,縮放產(chǎn)生的最終結(jié)果傳輸至輸出緩存區(qū),最后通過一定的接口時(shí)序傳輸至顯示屏進(jìn)行顯示。在本發(fā)明實(shí)施例中,輸出緩存采用先進(jìn)先出(First In First Out, FIFO)的輸出策略。在本發(fā)明實(shí)施例中,當(dāng)需要提供多路輸出,對應(yīng)有多個(gè)通道時(shí),分別對與各通道對應(yīng)的輸入緩存中的數(shù)據(jù)行信息進(jìn)行插值運(yùn)算,并將各個(gè)通道的插值運(yùn)算結(jié)果進(jìn)行混合,將混合后的數(shù)據(jù)存儲(chǔ)至輸出緩存中。為了進(jìn)一步理解本發(fā)明,以下以一個(gè)具體的示例對本發(fā)明實(shí)施例進(jìn)行說明請參閱圖4,為本發(fā)明實(shí)施例提供的圖像的縮放方法的示例圖。假設(shè)原始圖像垂直方向的尺寸Simgv為12,目標(biāo)圖像垂直方向的尺寸Dimgv為5, 原始圖像中共包含12行圖像數(shù)據(jù),行號分別為L1、L2、……、L12。則M = Simgv/Dimgv = 12/5 = 2. 4。由于 2 < M 彡 2+1,所以間隔行數(shù) N = 2,從而將原始圖像的第一行數(shù)據(jù)Ll確定為要讀取的數(shù)據(jù),并將原始圖像中從第一行Ll開始,每間隔2行的數(shù)據(jù)行L4、L7、L10確定為要讀取的數(shù)據(jù)。即要從原始圖像中讀取的數(shù)據(jù)行包括原始圖像中的第Li、L4、L7、LlO行的數(shù)據(jù)。根據(jù)計(jì)算得到的要讀取的數(shù)據(jù)行的各分量地址后,即可依次從原始圖像中讀取第 Li、L4、L7、LlO行的數(shù)據(jù)至輸入緩存中。依次讀取輸入緩存中的數(shù)據(jù)行進(jìn)行插值運(yùn)算,并將插值運(yùn)算的結(jié)果暫存于輸出緩存。即根據(jù)Li、L4、L7、LlO行的數(shù)據(jù)進(jìn)行插值運(yùn)算,得到目標(biāo)圖像的5行數(shù)據(jù)。舉例說明如下將Ll直接作為目標(biāo)圖像的第一行數(shù)據(jù)Dl ;將Ll和L4進(jìn)行雙線性插值運(yùn)算,得到目標(biāo)圖像的第二行數(shù)據(jù)D2 ;將L4和L7進(jìn)行雙線性插值運(yùn)算,得到目標(biāo)圖像的第三行數(shù)據(jù)D3 ;將L7和LlO進(jìn)行雙線性插值運(yùn)算,得到目標(biāo)圖像的第四行數(shù)據(jù)D4 ;同時(shí)將L7和LlO進(jìn)行雙線性插值運(yùn)算,得到目標(biāo)圖像的第五行數(shù)據(jù)D5。即本發(fā)明實(shí)施例提供的方法只需要從原始圖像中讀取L1、L4、L7、L10共四行數(shù)據(jù)即可將原始圖像縮放處理成目標(biāo)圖像。而圖1所示的現(xiàn)有技術(shù)的方法需要從原始圖像中讀取所有數(shù)據(jù)行共12行數(shù)據(jù)才能將原始圖像縮放處理成目標(biāo)圖像。而圖2所示的現(xiàn)有技術(shù)的方法需要從原始圖像中讀取Li、L3、L4、L6、L7、L9、L10、Lll、L12共9行數(shù)據(jù)才能將原始圖像縮放處理成目標(biāo)圖像。因此,相對于現(xiàn)有技術(shù),本發(fā)明實(shí)施例提供的方法可以最大限度的減少數(shù)據(jù)傳輸量和圖像縮放處理時(shí)間,進(jìn)而減少輸出緩存,提高顯示屏的實(shí)時(shí)性。圖5示出了本發(fā)明實(shí)施例提供的圖像縮放的裝置的結(jié)構(gòu),為了便于說明僅示出了與本發(fā)明實(shí)施例相關(guān)的部分。該裝置可以用于顯示屏控制器,例如移動(dòng)終端的顯示屏控制器、手持設(shè)備的顯示屏控制器等,可以是運(yùn)行于這些設(shè)備內(nèi)的軟件單元、硬件單元或者軟硬件相結(jié)合的單元,也可以作為獨(dú)立的掛件集成到這些設(shè)備中或者運(yùn)行于這些設(shè)備的應(yīng)用系統(tǒng)中,其中圖像讀取控制單元1根據(jù)原始圖像與目標(biāo)圖像之間的垂直尺寸關(guān)系確定要讀取的數(shù)據(jù)行的間隔行數(shù)。該圖像讀取控制單元1包括尺寸獲取模塊11和間隔行數(shù)計(jì)算模塊12。其中尺寸獲取模塊11獲取原始圖像垂直方向的尺寸Simgv和目標(biāo)圖像垂直方向的尺寸 Dimgv0間隔行數(shù)計(jì)算模塊12根據(jù)原始圖像垂直方向的尺寸Simgv和目標(biāo)圖像垂直方向的尺寸Dimgv的比值M確定間隔行數(shù)N。其中間隔行數(shù)N是指從原始圖像中每間隔N行選取一行。為了保證經(jīng)縮放處理后的目標(biāo)圖像的質(zhì)量,根據(jù)Simgv和Dimgv的比值M確定N 的具體方式如下若L<M彡L+1,則N = L,其中 L 為整數(shù),M = Simgv/Dimgv。在本發(fā)明實(shí)施例中,當(dāng)原始圖像的垂直尺寸大于目標(biāo)顯示的垂直尺寸,即M大于1 時(shí),對原始圖像進(jìn)行一定的抽取,只讀取縮放過程中需要的部分行數(shù)據(jù)信息;當(dāng)原始圖像的垂直尺寸小于或等于目標(biāo)顯示的垂直尺寸,即M小于或等于1 (N = 0)時(shí),此時(shí)需要作放大處理,則讀取原始圖像的每一行數(shù)據(jù),不做抽取。直接內(nèi)存訪問控制單元2根據(jù)間隔行數(shù)確定要從原始圖像中讀取的數(shù)據(jù)行信息, 并從原始圖像中讀取確定的要從原始圖像中讀取的數(shù)據(jù)行信息。該直接內(nèi)存訪問控制單元2將原始圖像中的第一行圖像數(shù)據(jù)確定為要讀取的數(shù)據(jù)行,并將原始圖像的第一行開始,每間隔間隔行數(shù)的數(shù)據(jù)行確定為要讀取的數(shù)據(jù)行。從原始圖像中讀取確定的要從原始圖像中讀取的數(shù)據(jù)行信息的步驟如下根據(jù)間隔行數(shù)N、原始圖像的各分量的起始地址計(jì)算要從原始圖像中讀取的各數(shù)據(jù)行的各分量地址,并根據(jù)各數(shù)據(jù)行的各分量地址從原始圖像中讀取要讀取的數(shù)據(jù)行信肩、ο在本發(fā)明實(shí)施例中,由于原始圖像一般存儲(chǔ)在外部存儲(chǔ)器中,且一般采用DMA方式從外部存儲(chǔ)器中讀取要讀取的數(shù)據(jù)行信息,因此,根據(jù)間隔行數(shù)N以及原始圖像的各分量的DMA起始地址計(jì)算縮放過程中要讀取的各數(shù)據(jù)行的各分量的DMA地址。
其中各種格式的原始圖像中,要讀取的各數(shù)據(jù)行的各分量的DMA地址計(jì)算公式如上所述,在此不再贅述。輸入緩存3存儲(chǔ)直接內(nèi)存訪問控制單元2讀取的原始圖像的數(shù)據(jù)行信息。在本發(fā)明另一實(shí)施例中,當(dāng)顯示屏控制器需要提供多路輸出,對應(yīng)有多個(gè)通道時(shí), 則輸入緩存3包括與每個(gè)通道對應(yīng)的輸入緩存,且與每個(gè)通道對應(yīng)的輸入緩存存儲(chǔ)直接內(nèi)存訪問控制單元2讀取的與該通道對應(yīng)的原始圖像的數(shù)據(jù)行信息。舉例說明如下當(dāng)顯示屏控制器提供3路輸出,分別對應(yīng)YUVl通道、YUV2通道和RGB通道時(shí),則輸入緩存3包括與YUVl通道對應(yīng)的YUVl輸入緩存、與YUV2通道對應(yīng)的YUV2輸入緩存以及與RGB通道對應(yīng)的RGB輸入緩存。圖像插值處理單元4對讀取的數(shù)據(jù)行信息進(jìn)行插值運(yùn)算,得到插值運(yùn)算后的圖像數(shù)據(jù)。該圖像插值處理單元4包括水平縮放處理模塊41、行數(shù)據(jù)緩沖區(qū)42和垂直縮放處理模塊43。其中水平縮放處理模塊41在輸入緩存3中每輸入一行原始圖像數(shù)據(jù)時(shí),對原始圖像數(shù)據(jù)進(jìn)行指定的水平縮放處理,得到水平縮放處理后的圖像數(shù)據(jù)。行數(shù)據(jù)緩沖區(qū)42存儲(chǔ)水平縮放處理后的圖像數(shù)據(jù)。垂直縮放處理模塊43將水平縮放處理模塊41處理后的圖像數(shù)據(jù)與行數(shù)據(jù)緩沖區(qū) 42中已存儲(chǔ)的上一行圖像數(shù)據(jù)進(jìn)行垂直方向的縮放處理。輸出緩存5存儲(chǔ)圖像插值處理單元4得到的插值運(yùn)算后的圖像數(shù)據(jù)。在本發(fā)明實(shí)施例中,輸出緩存5采用先進(jìn)先出(First In First Out, FIFO)的輸出策略。在本發(fā)明另一實(shí)施例中,當(dāng)顯示屏控制器需要提供多路輸出,對應(yīng)有多個(gè)通道時(shí), 圖像插值處理單元4包括與每個(gè)通道分別對應(yīng)的圖像插值處理單元,與每個(gè)通道分別對應(yīng)的圖像插值處理單元對與其對應(yīng)的輸入緩存中讀取的數(shù)據(jù)行信息進(jìn)行插值運(yùn)算。舉例說明如下當(dāng)顯示屏控制器提供3路輸出,分別對應(yīng)YUVl通道、YUV2通道和RGB通道時(shí),則輸入緩存3包括與YUVl通道對應(yīng)的YUVl輸入緩存、與YUV2通道對應(yīng)的YUV2輸入緩存以及與RGB通道對應(yīng)的RGB輸入緩存。圖像插值處理單元4包括與YUVl輸入緩存連接的YUVl 圖像插值處理單元、與YUV2輸入緩存連接的YUV2圖像插值處理單元、與RGB輸入緩存連接的RGB圖像插值處理單元。此時(shí),該裝置還包括圖像混合單元6。該圖像混合單元6對圖像插值處理單元4包括的與每個(gè)通道對應(yīng)的各圖像插值處理單元得到的插值運(yùn)算后的圖像數(shù)據(jù)進(jìn)行混合。此時(shí),輸出緩存存儲(chǔ)圖像混合單元6進(jìn)行混合處理后的圖像數(shù)據(jù)。本領(lǐng)域普通技術(shù)人員可以理解,實(shí)現(xiàn)上述實(shí)施例方法中的全部或部分步驟是可以通過程序來指令相關(guān)的硬件來完成,所述的程序可以在存儲(chǔ)于計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中, 所述的存儲(chǔ)介質(zhì),如ROM/RAM、磁盤、光盤等。在本發(fā)明實(shí)施例中,在將輸入的原始圖像縮放處理成目標(biāo)圖像時(shí),先根據(jù)原始圖像與目標(biāo)圖像之間的垂直尺寸關(guān)系確定縮放過程中需要的數(shù)據(jù)行信息,再從外部存儲(chǔ)器中讀取確定的數(shù)據(jù)行信息至輸入緩存,然后由圖像插值處理單元根據(jù)輸入緩存中的數(shù)據(jù)行信息對原始圖像進(jìn)行插值縮放,由于只讀取確定的數(shù)據(jù)行信息,從而最大限度的減少了數(shù)據(jù)傳輸量和圖像縮放處理時(shí)間,進(jìn)而減少了顯示屏控制器的輸出緩存,提高了顯示屏的實(shí)時(shí)性。 以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種圖像縮放的方法,其特征在于,所述方法包括下述步驟根據(jù)原始圖像與目標(biāo)圖像之間的垂直尺寸關(guān)系確定要讀取的數(shù)據(jù)行的間隔行數(shù); 根據(jù)間隔行數(shù)確定要從原始圖像中讀取的數(shù)據(jù)行信息,并從原始圖像中讀取確定的要從原始圖像中讀取的數(shù)據(jù)行信息;對讀取的數(shù)據(jù)行信息進(jìn)行插值運(yùn)算,并將插值運(yùn)算結(jié)果存儲(chǔ)至輸出緩存。
2.如權(quán)利要求1所述的方法,其特征在于,所述根據(jù)原始圖像與目標(biāo)圖像之間的垂直尺寸關(guān)系確定要讀取的數(shù)據(jù)行的間隔行數(shù)的步驟具體為獲取原始圖像垂直方向的尺寸Simgv和目標(biāo)圖像垂直方向的尺寸Dimgv ; 根據(jù)原始圖像垂直方向的尺寸Simgv和目標(biāo)圖像垂直方向的尺寸Dimgv的比值M確定間隔行數(shù)N。
3.如權(quán)利要求2所述的方法,其特征在于,所述根據(jù)原始圖像垂直方向的尺寸Simgv和目標(biāo)圖像垂直方向的尺寸Dimgv的比值M確定間隔行數(shù)N的步驟具體為若 L < M 彡 L+1,則 N = L,其中 L 為整數(shù),M = Simgv/Dimgv。
4.如權(quán)利要求1所述的方法,其特征在于,所述根據(jù)間隔行數(shù)確定要從原始圖像中讀取的數(shù)據(jù)行信息,并從原始圖像中讀取確定的要從原始圖像中讀取的數(shù)據(jù)行信息的步驟具體為將原始圖像中的第一行圖像數(shù)據(jù)確定為要讀取的數(shù)據(jù)行; 將原始圖像的第一行開始,每間隔間隔行數(shù)的數(shù)據(jù)行確定為要讀取的數(shù)據(jù)行。
5.如權(quán)利要求1所述的方法,其特征在于,當(dāng)顯示屏控制器需要提供多路輸出,對應(yīng)有多路通道時(shí),將從原始圖像中讀取的數(shù)據(jù)行存儲(chǔ)至相應(yīng)通道的輸入緩存中;此時(shí),所述對讀取的數(shù)據(jù)行信息進(jìn)行插值運(yùn)算,并將插值運(yùn)算結(jié)果存儲(chǔ)至輸出緩存的步驟具體為分別對與各通道對應(yīng)的輸入緩存中的數(shù)據(jù)行信息進(jìn)行插值運(yùn)算,并將各個(gè)通道的插值運(yùn)算結(jié)果進(jìn)行混合,將混合后的數(shù)據(jù)存儲(chǔ)至輸出緩存中。
6.一種圖像縮放的裝置,其特征在于,所述裝置包括圖像讀取控制單元,用于根據(jù)原始圖像與目標(biāo)圖像之間的垂直尺寸關(guān)系確定要讀取的數(shù)據(jù)行的間隔行數(shù);直接內(nèi)存訪問控制單元,用于根據(jù)間隔行數(shù)確定要從原始圖像中讀取的數(shù)據(jù)行信息, 并從原始圖像中讀取確定的要從原始圖像中讀取的數(shù)據(jù)行信息;輸入緩存,用于存儲(chǔ)所述直接內(nèi)存訪問控制單元讀取的原始圖像的數(shù)據(jù)行信息; 圖像插值處理單元,用于對讀取的數(shù)據(jù)行信息進(jìn)行插值運(yùn)算; 輸出緩存,用于存儲(chǔ)所述圖像插值處理單元的插值運(yùn)算結(jié)果。
7.如權(quán)利要求6所述的裝置,其特征在于,所述圖像讀取控制單元包括尺寸獲取模塊,用于獲取原始圖像垂直方向的尺寸Simgv和目標(biāo)圖像垂直方向的尺寸 Dimgv ;間隔行數(shù)計(jì)算模塊,用于根據(jù)所述原始圖像垂直方向的尺寸Simgv和目標(biāo)圖像垂直方向的尺寸Dimgv的比值M確定間隔行數(shù)N。
8.如權(quán)利要求7所述的裝置,其特征在于,所述間隔行數(shù)計(jì)算模塊在L< M < L+1時(shí), 確定N = L,其中L為整數(shù),M = Simgv/Dimgv。
9.如權(quán)利要求6所述的裝置,其特征在于,所述直接內(nèi)存訪問控制單元將原始圖像中的第一行圖像數(shù)據(jù)確定為要讀取的數(shù)據(jù)行,并將原始圖像的第一行開始,每間隔間隔行數(shù)的數(shù)據(jù)行確定為要讀取的數(shù)據(jù)行。
10.如權(quán)利要求6所述的裝置,其特征在于,當(dāng)顯示屏控制器需要提供多路輸出,對應(yīng)有多路通道時(shí),所述輸入緩存包括與每個(gè)通道對應(yīng)的輸入緩存,且與每個(gè)通道對應(yīng)的輸入緩存存儲(chǔ)所述直接內(nèi)存訪問控制單元讀取的與該通道對應(yīng)的原始圖像的數(shù)據(jù)行信息;所述圖像插值處理單元包括與每個(gè)通道分別對應(yīng)的插值處理單元,與每個(gè)通道分別對應(yīng)的插值處理單元對與其對應(yīng)的輸入緩存中讀取的數(shù)據(jù)行信息進(jìn)行插值運(yùn)算;所述裝置還包括圖像混合單元,用于對所述圖像插值處理單元包括的與每個(gè)通道對應(yīng)的各圖像插值處理單元得到的插值運(yùn)算后的圖像數(shù)據(jù)進(jìn)行混合,并將混合后的圖像數(shù)據(jù)傳輸至輸出緩存。
全文摘要
本發(fā)明適用于圖像處理領(lǐng)域,提供了圖像縮放的方法和裝置,所述方法包括下述步驟根據(jù)原始圖像與目標(biāo)圖像之間的垂直尺寸關(guān)系確定要讀取的數(shù)據(jù)行的間隔行數(shù);根據(jù)間隔行數(shù)確定要從原始圖像中讀取的數(shù)據(jù)行信息,并從原始圖像中讀取確定的要從原始圖像中讀取的數(shù)據(jù)行信息;對讀取的數(shù)據(jù)行信息進(jìn)行插值運(yùn)算,并將插值運(yùn)算結(jié)果存儲(chǔ)至輸出緩存。本發(fā)明實(shí)施例可以最大限度的減少數(shù)據(jù)傳輸量和圖像縮放處理時(shí)間,進(jìn)而減少顯示屏控制器的輸出緩存,提高顯示屏的實(shí)時(shí)性。
文檔編號G06T3/40GK102263880SQ20101018244
公開日2011年11月30日 申請日期2010年5月25日 優(yōu)先權(quán)日2010年5月25日
發(fā)明者李小明, 王強(qiáng), 胡勝發(fā), 許永永 申請人:安凱(廣州)微電子技術(shù)有限公司