,所述第一數(shù)據(jù)搬移模塊進一步包括:
第一轉(zhuǎn)置子模塊,用于利用EDMA對所述原始圖像數(shù)據(jù)矩陣進行第一轉(zhuǎn)置處理,第一轉(zhuǎn)置處理的對應(yīng)關(guān)系為 bufferl [j*m] [i*n]=src[i] [j];
第一放大子模塊,用于利用EDMA對第一轉(zhuǎn)置處理后的原始圖像數(shù)據(jù)矩陣進行行復(fù)制,得到所述原始圖像數(shù)據(jù)矩陣的水平方向放大圖像。
[0016]優(yōu)選地,所述第二數(shù)據(jù)搬移模塊進一步包括:
第二轉(zhuǎn)置子模塊,用于利用EDMA對所述第一圖像數(shù)據(jù)矩陣進行第二轉(zhuǎn)置處理,第二轉(zhuǎn)置處理的對應(yīng)關(guān)系為 buffer2[i] [j] =bufferl [j] [i];
第二放大子模塊,用于利用EDMA對第二轉(zhuǎn)置處理后的第一圖像數(shù)據(jù)矩陣進行行復(fù)制,得到放大圖像。
[0017]與現(xiàn)有技術(shù)相比較,本發(fā)明的有益效果在于:能夠通過提供一種采用插值算法進行圖像放大的方法,根據(jù)插值算法的規(guī)律性,并結(jié)合DSP硬件設(shè)備EDMA的數(shù)據(jù)搬移及復(fù)制功能,對圖像數(shù)據(jù)進行分析,設(shè)計基于EDMA的插值算法的實現(xiàn)過程,使其滿足EDMA的搬移條件,實現(xiàn)圖像的整數(shù)倍放大,提高操作系統(tǒng)整體運行效率。
【附圖說明】
[0018]圖1是本發(fā)明實施例提供的基于EDMA的圖像放大的方法原理圖;
圖2是本發(fā)明實施例提供的基于EDMA的圖像放大的裝置結(jié)構(gòu)圖;
圖3是本發(fā)明實施例提供的基于EDMA的圖像放大的原始圖像數(shù)據(jù)矩陣示意圖;
圖4是本發(fā)明實施例提供的基于EDMA的圖像放大的放大圖像數(shù)據(jù)矩陣示意圖;
圖5是本發(fā)明實施例提供的基于EDMA的圖像放大的圖像數(shù)據(jù)子矩陣示意圖;
圖6是本發(fā)明實施例提供的基于EDMA的圖像放大的圖像數(shù)據(jù)子矩陣的行復(fù)制示意圖;
圖7是本發(fā)明實施例提供的基于EDMA的圖像放大的圖像數(shù)據(jù)矩陣的緩存區(qū)轉(zhuǎn)置示意圖一;
圖8是本發(fā)明實施例提供的圖像放大的基于EDMA的圖像數(shù)據(jù)矩陣的列復(fù)制示意圖; 圖9是本發(fā)明實施例提供的圖像放大的基于EDMA的圖像數(shù)據(jù)矩陣的緩存區(qū)轉(zhuǎn)置示意圖二。
【具體實施方式】
[0019]以下結(jié)合附圖對本發(fā)明的優(yōu)選實施例進行詳細說明,應(yīng)當(dāng)理解,以下所說明的優(yōu)選實施例僅用于說明和解釋本發(fā)明,并不用于限定本發(fā)明。
[0020]圖1是本發(fā)明實施例提供的基于EDMA的圖像放大的方法原理圖,如圖1所示,具體步驟如下:
步驟S1:對獲取到的待放大區(qū)域的圖像邊界坐標(biāo)進行偏移和縮放,得到適配于EDMA數(shù)據(jù)搬移的待放大區(qū)域的原始圖像數(shù)據(jù)矩陣。
[0021]在步驟SI中,所述的適配于EDMA數(shù)據(jù)搬移的待放大區(qū)域的圖像數(shù)據(jù)矩陣是指,所述圖像數(shù)據(jù)矩陣的起始地址滿足32位地址對齊,且所述圖像數(shù)據(jù)矩陣的長和寬是32的倍數(shù)。
[0022]進一步地,所述的得到適配于EDMA數(shù)據(jù)搬移的待放大區(qū)域的原始圖像數(shù)據(jù)矩陣的步驟之后還包括:
當(dāng)接收到的圖像放大指令后,根據(jù)所述圖像放大指令中的圖像放大倍數(shù)和待放大區(qū)域原始圖像大小,設(shè)定適配于放大后的待放大區(qū)域原始圖像大小的第一圖像數(shù)據(jù)緩存區(qū)和第二圖像數(shù)據(jù)緩存區(qū)。
[0023]步驟S2:利用EDMA對所述原始圖像數(shù)據(jù)矩陣以轉(zhuǎn)置的格式向預(yù)設(shè)的第一圖像數(shù)據(jù)緩存區(qū)搬移,并對轉(zhuǎn)置后的原始圖像數(shù)據(jù)矩陣進行水平放大,得到第一圖像數(shù)據(jù)矩陣。
[0024]在步驟S2中,對于部分滿足起始地址字節(jié)對齊的原始圖像數(shù)據(jù)矩陣,所述的利用EDMA對所述原始圖像數(shù)據(jù)矩陣以轉(zhuǎn)置的格式向預(yù)設(shè)的第一圖像數(shù)據(jù)緩存區(qū)搬移,對轉(zhuǎn)置后的原始圖像數(shù)據(jù)矩陣進行水平放大,得到第一圖像數(shù)據(jù)矩陣的步驟包括:
利用EDMA對所述原始圖像數(shù)據(jù)矩陣進行第一轉(zhuǎn)置處理,第一轉(zhuǎn)置處理的對應(yīng)關(guān)系為bufferI[j*m][i*n]=src[i][j];
利用EDMA對第一轉(zhuǎn)置處理后的原始圖像數(shù)據(jù)矩陣進行行復(fù)制,得到所述原始圖像數(shù)據(jù)矩陣的水平方向放大圖像;
其中,bufferl[j*m][i*n]表示為緩存在預(yù)設(shè)的第一圖像數(shù)據(jù)緩存區(qū)的第一轉(zhuǎn)置處理后的原始圖像數(shù)據(jù)矩陣,src[i][j]表示為緩存在原始圖像數(shù)據(jù)緩存區(qū)的原始圖像數(shù)據(jù)矩陣,i,j為圖像數(shù)據(jù)矩陣的行數(shù)和列數(shù),m,η為第一轉(zhuǎn)置處理后的原始圖像數(shù)據(jù)矩陣水平與垂直方向的放大倍數(shù),i,j,m,n為自然數(shù)。
[0025]進一步地,所述的利用EDMA對第一轉(zhuǎn)置處理后的原始圖像數(shù)據(jù)矩陣進行行復(fù)制是指,將第一轉(zhuǎn)置處理后的原始圖像數(shù)據(jù)矩陣的行中滿足i%m=0的行復(fù)制到其后的i+Ι行至i+m-1行,其中,m為原始圖像數(shù)據(jù)水平放大倍數(shù),m為自然數(shù)。
[0026]步驟S3:利用EDMA對所述第一圖像數(shù)據(jù)矩陣以轉(zhuǎn)置的格式向預(yù)設(shè)的第二圖像數(shù)據(jù)緩沖區(qū)搬移,并對轉(zhuǎn)置后的第一圖像數(shù)據(jù)矩陣進行水平放大,得到放大圖像。
[0027]在步驟S3中,利用EDMA對所述第一圖像數(shù)據(jù)矩陣進行第二轉(zhuǎn)置處理,第二轉(zhuǎn)置處理的對應(yīng)關(guān)系為 buffer2[i] [j] =bufferl [j] [i];
利用EDMA對第二轉(zhuǎn)置處理后的第一圖像數(shù)據(jù)矩陣進行行復(fù)制,得到放大圖像;
其中,buffer2[i][j]表示為緩存在預(yù)設(shè)的第二圖像數(shù)據(jù)緩存區(qū)的第二轉(zhuǎn)置處理后的第一圖像數(shù)據(jù)矩陣,bufferl[j][i]表示為緩存在預(yù)設(shè)的第一圖像數(shù)據(jù)緩存區(qū)的第一圖像數(shù)據(jù)矩陣。
[0028]進一步地,所述的利用EDMA對第二轉(zhuǎn)置處理后的第一圖像數(shù)據(jù)矩陣進行行復(fù)制是指,將第二轉(zhuǎn)置處理后的圖像數(shù)據(jù)矩陣的行中滿足i%n=0的行復(fù)制到其后的i+Ι行至i+n-1行,以便在垂直方向上放大所述原始圖像數(shù)據(jù)陣列。
[0029]其中,整個圖像放大處理過程是基于DSP的嵌入式系統(tǒng),即在DSP硬件上實現(xiàn)基于圖像插值算法的圖像放大,同時引入矩陣轉(zhuǎn)置算法在圖像放大過程中的應(yīng)用,鑒于整個圖像放大處理過程完全是由EDMA完成的,實現(xiàn)了與CPU的并行執(zhí)行。
[0030]圖2是本發(fā)明實施例提供的基于EDMA的圖像放大的裝置結(jié)構(gòu)圖,如圖2所示,包括:原始模塊、第一數(shù)據(jù)搬移模塊和第二數(shù)據(jù)搬移模塊。
[0031]所述原始模塊用于對獲取到的待放大區(qū)域的圖像邊界坐標(biāo)進行偏移和縮放,得到適配于EDMA數(shù)據(jù)搬移的待放大區(qū)域的原始圖像數(shù)據(jù)矩陣。
[0032]所述第一數(shù)據(jù)搬移模塊用于利用EDMA對所述原始圖像數(shù)據(jù)矩陣以轉(zhuǎn)置的格式向預(yù)設(shè)的第一圖像數(shù)據(jù)緩存區(qū)搬移,并對轉(zhuǎn)置后的原始圖像數(shù)據(jù)矩陣進行水平放大,得到第一圖像數(shù)據(jù)矩陣。其中,所述第一數(shù)據(jù)搬移模塊的第一轉(zhuǎn)置子模塊用于利用EDMA對所述原始圖像數(shù)據(jù)矩陣進行第一轉(zhuǎn)置處理,第一轉(zhuǎn)置處理的對應(yīng)關(guān)系為bufferl[j*m][i*n]=src[i] [j]。所述第一數(shù)據(jù)搬移模塊的第一放大子模塊用于利用EDMA對第一轉(zhuǎn)置處理后的原始圖像數(shù)據(jù)矩陣進行行復(fù)制,得到所述原始圖像數(shù)據(jù)矩陣的水平方向放大圖像。
[0033]所述第二數(shù)據(jù)搬移模塊用于利用EDMA對所述第一圖像數(shù)據(jù)矩陣以轉(zhuǎn)置的格式向預(yù)設(shè)的第二圖像數(shù)據(jù)緩沖區(qū)搬移,并對轉(zhuǎn)置后的第一圖像數(shù)據(jù)矩陣進行水平放大,得到放大圖像。其中,所述第二數(shù)據(jù)搬移模塊的第二轉(zhuǎn)置子模塊用于利用EDMA對所述第一圖像數(shù)據(jù)矩陣進行第二轉(zhuǎn)置處理,第二轉(zhuǎn)置處理的對應(yīng)關(guān)系為b