CN104657937A - 一种基于edma的图像放大的方法及装置 - Google Patents
一种基于edma的图像放大的方法及装置 Download PDFInfo
- Publication number
- CN104657937A CN104657937A CN201510099596.XA CN201510099596A CN104657937A CN 104657937 A CN104657937 A CN 104657937A CN 201510099596 A CN201510099596 A CN 201510099596A CN 104657937 A CN104657937 A CN 104657937A
- Authority
- CN
- China
- Prior art keywords
- image data
- data matrix
- edma
- raw image
- transposition
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 90
- 239000011159 matrix material Substances 0.000 claims abstract description 156
- 230000017105 transposition Effects 0.000 claims abstract description 48
- UJKWLAZYSLJTKA-UHFFFAOYSA-N edma Chemical compound O1CCOC2=CC(CC(C)NC)=CC=C21 UJKWLAZYSLJTKA-UHFFFAOYSA-N 0.000 claims description 118
- 230000008569 process Effects 0.000 claims description 63
- 230000003321 amplification Effects 0.000 claims description 29
- 238000003199 nucleic acid amplification method Methods 0.000 claims description 29
- 238000010586 diagram Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 7
- 230000002093 peripheral effect Effects 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4084—Scaling of whole images or parts thereof, e.g. expanding or contracting in the transform domain, e.g. fast Fourier transform [FFT] domain scaling
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
- Editing Of Facsimile Originals (AREA)
Abstract
本发明公开了一种基于EDMA的图像放大的方法及装置,涉及基于DSP平台的数字信息技术中的图像放大技术,所述方法包括:对获取到的待放大区域的图像边界坐标进行偏移和缩放,得到适配于EDMA数据搬移的待放大区域的原始图像数据矩阵;利用EDMA对所述原始图像数据矩阵以转置的格式向预设的第一图像数据缓存区搬移,并对转置后的原始图像数据矩阵进行水平放大,得到第一图像数据矩阵;利用EDMA对所述第一图像数据矩阵以转置的格式向预设的第二图像数据缓冲区搬移,并对转置后的第一图像数据矩阵进行水平放大,得到放大图像。本发明能够通过提供一种采用插值算法进行图像放大的方法,实现基于EDMA的插值算法的图像放大。
Description
技术领域
本发明涉及一种基于数字信号处理(DSP:Digital Signal Processing)平台的数字信息技术中的图像放大技术,特别涉及一种基于德州仪器(TI:Texas Instruments)公司DSP硬件平台上的增强型直接内存存取(EDMA:Enhanced Direct Memory Access)的协助,快速完成插值算法的图像放大的方法及装置。
背景技术
放大图像(或称为上采样upsampling,或称为图像插值interpolating)的主要目的是放大原图像,从而可以显示在更高分辨率的显示设备上。图像插值就是一个图像数据再生的过程,它由原始具有较低分辨率的图像数据再生出具有高分辨率的图像数据。若根据一幅较低分辨率的图像转化成另一幅高分辨率的图像,这种插值可看做“图像内的插值”。
这里采用的插值算法不经过计算,直接对现有图像数据进行复制来达到对图像放大的目的。若将原始图像数据阵列向水平和垂直方向各放大m和n倍,即放大后的图像是原始图像的m*n倍。对放大后的图像采用插值算法,即利用插值算法对原始图像放大m*n倍,得到放大后的图像数据阵列,其实就是将原始图像每行的水平方向复制m次,每列的垂直方向复制n次而得到的。在图像放大的过程中并没有带来更多关于该图像的信息,因此该图像的质量将不可避免地受到影响,容易出现马赛克和锯齿等明显走样的图像,但该插值算法的优点是速度快。因此,在对图像质量要求不是很高的情况下,大多采用该种插值算法。
此外,图像放大应用较为广泛,如对感兴趣区域进行提取并放大等抠图操作。但该功能在图像处理中数据拷贝量极大,若采用CPU直接进行图像放大,极大的降低了CPU的利用率,影响系统处理数据的实时性。
DSP是一种独特的微处理器,是以数字信号来处理大量信息的器件,具有高速的数据处理能力及可编程性,是数字化电子世界中日益重要的嵌入式处理芯片。DSP的强大数据处理能力和高运行速度不仅体现在内核处理能力上,更体现在其具有高集成度的外围硬件接口及协助处理器EDMA等,保证了DSP数据处理和外围设备控制的并行性。其中,EDMA是DSP中用于快速数据交换的重要技术,具有独立于中央处理器(CPU:Central Processing Unit)的后台批量数据传输的能力,能够满足实时图像处理中高速数据传输的要求。EDMA可以直接对外围设备如双倍速率同步动态随机存储器(DDR:Double Data Rate)进行数据读写操作,数据读写的连续性直接影响EDMA的数据搬移速度,数据连续性越强,搬移速度越快。采用EDMA进行数据拷贝时,需要具备两个条件,拷贝的数据源存储空间与目的存储空间要有规律性,其次,数据源起始地址与目的地址按32字节对齐。
发明内容
本发明的目的在于提供一种基于EDMA的图像放大的方法及装置,能够解决图像数据量大与CPU的低利用率,导致系统整体运行效率低的问题。
根据本发明的一个方面,提供了一种基于EDMA的图像放大的方法,包括:
对获取到的待放大区域的图像边界坐标进行偏移和缩放,得到适配于EDMA数据搬移的待放大区域的原始图像数据矩阵;
利用EDMA对所述原始图像数据矩阵以转置的格式向预设的第一图像数据缓存区搬移,并对转置后的原始图像数据矩阵进行水平放大,得到第一图像数据矩阵;
利用EDMA对所述第一图像数据矩阵以转置的格式向预设的第二图像数据缓冲区搬移,并对转置后的第一图像数据矩阵进行水平放大,得到放大图像。
优选地,所述的适配于EDMA数据搬移的待放大区域的原始图像数据矩阵是指,所述原始图像数据矩阵的起始地址满足32位地址对齐,且所述原始图像数据矩阵的长和宽是32的倍数。
优选地,所述的得到适配于EDMA数据搬移的待放大区域的原始图像数据矩阵的步骤之后还包括:
当接收到的图像放大指令后,根据所述图像放大指令中的图像放大倍数和待放大区域原始图像大小,设定适配于放大后的待放大区域原始图像大小的第一图像数据缓存区和第二图像数据缓存区。
优选地,对于部分满足起始地址字节对齐的原始图像数据矩阵,所述的利用EDMA对所述原始图像数据矩阵以转置的格式向预设的第一图像数据缓存区搬移,对转置后的原始图像数据矩阵进行水平放大,得到第一图像数据矩阵的步骤包括:
利用EDMA对所述原始图像数据矩阵进行第一转置处理,第一转置处理的对应关系为buffer1[j*m][i*n]=src[i][j];
利用EDMA对第一转置处理后的原始图像数据矩阵进行行复制,得到所述原始图像数据矩阵的水平方向放大图像;
其中,buffer1[j*m][i*n]表示为缓存在预设的第一图像数据缓存区的第一转置处理后的原始图像数据矩阵,src[i][j]表示为缓存在原始图像数据缓存区的原始图像数据矩阵,i,j为图像数据矩阵的行数和列数,m,n为第一转置处理后的原始图像数据矩阵水平与垂直方向的放大倍数,i,j,m,n为自然数。
优选地,所述的利用EDMA对第一转置处理后的原始图像数据矩阵进行行复制是指,将第一转置处理后的原始图像数据矩阵的行中满足i%m=0的行复制到其后的i+1行至i+m-1行,其中,m为原始图像数据矩阵的水平放大倍数,m为自然数。
优选地,所述的利用EDMA对所述第一图像数据矩阵以转置的格式向预设的第二图像数据缓冲区搬移,并对转置后的第一图像数据矩阵进行水平放大,得到放大图像的步骤包括:
利用EDMA对所述第一图像数据矩阵进行第二转置处理,第二转置处理的对应关系为buffer2[i][j] =buffer1[j][i];
利用EDMA对第二转置处理后的第一图像数据矩阵进行行复制,得到放大图像;
其中,buffer2[i][j]表示为缓存在预设的第二图像数据缓存区的第二转置处理后的第一图像数据矩阵,buffer1[j][i]表示为缓存在预设的第一图像数据缓存区的第一图像数据矩阵。
优选地,所述的利用EDMA对第二转置处理后的第一图像数据矩阵进行行复制是指,将第二转置处理后的图像数据矩阵的行中满足i%n=0的行复制到其后的i+1行至i+n-1行,以便在垂直方向上放大所述原始图像数据阵列。
根据本发明的另一方面,提供了一种基于EDMA的图像放大的装置,包括:
原始模块,用于对获取到的待放大区域的图像边界坐标进行偏移和缩放,得到适配于EDMA数据搬移的待放大区域的原始图像数据矩阵;
第一数据搬移模块,用于利用EDMA对所述原始图像数据矩阵以转置的格式向预设的第一图像数据缓存区搬移,并对转置后的原始图像数据矩阵进行水平放大,得到第一图像数据矩阵;
第二数据搬移模块,用于利用EDMA对所述第一图像数据矩阵以转置的格式向预设的第二图像数据缓冲区搬移,并对转置后的第一图像数据矩阵进行水平放大,得到放大图像。
优选地,所述第一数据搬移模块进一步包括:
第一转置子模块,用于利用EDMA对所述原始图像数据矩阵进行第一转置处理,第一转置处理的对应关系为buffer1[j*m][i*n]=src[i][j];
第一放大子模块,用于利用EDMA对第一转置处理后的原始图像数据矩阵进行行复制,得到所述原始图像数据矩阵的水平方向放大图像。
优选地,所述第二数据搬移模块进一步包括:
第二转置子模块,用于利用EDMA对所述第一图像数据矩阵进行第二转置处理,第二转置处理的对应关系为buffer2[i][j] =buffer1[j][i];
第二放大子模块,用于利用EDMA对第二转置处理后的第一图像数据矩阵进行行复制,得到放大图像。
与现有技术相比较,本发明的有益效果在于:能够通过提供一种采用插值算法进行图像放大的方法,根据插值算法的规律性,并结合DSP硬件设备EDMA的数据搬移及复制功能,对图像数据进行分析,设计基于EDMA的插值算法的实现过程,使其满足EDMA的搬移条件,实现图像的整数倍放大,提高操作系统整体运行效率。
附图说明
图1是本发明实施例提供的基于EDMA的图像放大的方法原理图;
图2是本发明实施例提供的基于EDMA的图像放大的装置结构图;
图3是本发明实施例提供的基于EDMA的图像放大的原始图像数据矩阵示意图;
图4是本发明实施例提供的基于EDMA的图像放大的放大图像数据矩阵示意图;
图5是本发明实施例提供的基于EDMA的图像放大的图像数据子矩阵示意图;
图6是本发明实施例提供的基于EDMA的图像放大的图像数据子矩阵的行复制示意图;
图7是本发明实施例提供的基于EDMA的图像放大的图像数据矩阵的缓存区转置示意图一;
图8是本发明实施例提供的图像放大的基于EDMA的图像数据矩阵的列复制示意图;
图9是本发明实施例提供的图像放大的基于EDMA的图像数据矩阵的缓存区转置示意图二。
具体实施方式
以下结合附图对本发明的优选实施例进行详细说明,应当理解,以下所说明的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
图1是本发明实施例提供的基于EDMA的图像放大的方法原理图,如图1所示,具体步骤如下:
步骤S1:对获取到的待放大区域的图像边界坐标进行偏移和缩放,得到适配于EDMA数据搬移的待放大区域的原始图像数据矩阵。
在步骤S1中,所述的适配于EDMA数据搬移的待放大区域的图像数据矩阵是指,所述图像数据矩阵的起始地址满足32位地址对齐,且所述图像数据矩阵的长和宽是32的倍数。
进一步地,所述的得到适配于EDMA数据搬移的待放大区域的原始图像数据矩阵的步骤之后还包括:
当接收到的图像放大指令后,根据所述图像放大指令中的图像放大倍数和待放大区域原始图像大小,设定适配于放大后的待放大区域原始图像大小的第一图像数据缓存区和第二图像数据缓存区。
步骤S2:利用EDMA对所述原始图像数据矩阵以转置的格式向预设的第一图像数据缓存区搬移,并对转置后的原始图像数据矩阵进行水平放大,得到第一图像数据矩阵。
在步骤S2中,对于部分满足起始地址字节对齐的原始图像数据矩阵,所述的利用EDMA对所述原始图像数据矩阵以转置的格式向预设的第一图像数据缓存区搬移,对转置后的原始图像数据矩阵进行水平放大,得到第一图像数据矩阵的步骤包括:
利用EDMA对所述原始图像数据矩阵进行第一转置处理,第一转置处理的对应关系为buffer1[j*m][i*n]=src[i][j];
利用EDMA对第一转置处理后的原始图像数据矩阵进行行复制,得到所述原始图像数据矩阵的水平方向放大图像;
其中,buffer1[j*m][i*n]表示为缓存在预设的第一图像数据缓存区的第一转置处理后的原始图像数据矩阵,src[i][j]表示为缓存在原始图像数据缓存区的原始图像数据矩阵,i,j为图像数据矩阵的行数和列数,m,n为第一转置处理后的原始图像数据矩阵水平与垂直方向的放大倍数,i,j,m,n为自然数。
进一步地,所述的利用EDMA对第一转置处理后的原始图像数据矩阵进行行复制是指,将第一转置处理后的原始图像数据矩阵的行中满足i%m=0的行复制到其后的i+1行至i+m-1行,其中,m为原始图像数据水平放大倍数,m为自然数。
步骤S3:利用EDMA对所述第一图像数据矩阵以转置的格式向预设的第二图像数据缓冲区搬移,并对转置后的第一图像数据矩阵进行水平放大,得到放大图像。
在步骤S3中,利用EDMA对所述第一图像数据矩阵进行第二转置处理,第二转置处理的对应关系为buffer2[i][j] =buffer1[j][i];
利用EDMA对第二转置处理后的第一图像数据矩阵进行行复制,得到放大图像;
其中,buffer2[i][j]表示为缓存在预设的第二图像数据缓存区的第二转置处理后的第一图像数据矩阵,buffer1[j][i]表示为缓存在预设的第一图像数据缓存区的第一图像数据矩阵。
进一步地,所述的利用EDMA对第二转置处理后的第一图像数据矩阵进行行复制是指,将第二转置处理后的图像数据矩阵的行中满足i%n=0的行复制到其后的i+1行至i+n-1行,以便在垂直方向上放大所述原始图像数据阵列。
其中,整个图像放大处理过程是基于DSP的嵌入式系统,即在DSP硬件上实现基于图像插值算法的图像放大,同时引入矩阵转置算法在图像放大过程中的应用,鉴于整个图像放大处理过程完全是由EDMA完成的,实现了与CPU的并行执行。
图2是本发明实施例提供的基于EDMA的图像放大的装置结构图,如图2所示,包括:原始模块、第一数据搬移模块和第二数据搬移模块。
所述原始模块用于对获取到的待放大区域的图像边界坐标进行偏移和缩放,得到适配于EDMA数据搬移的待放大区域的原始图像数据矩阵。
所述第一数据搬移模块用于利用EDMA对所述原始图像数据矩阵以转置的格式向预设的第一图像数据缓存区搬移,并对转置后的原始图像数据矩阵进行水平放大,得到第一图像数据矩阵。其中,所述第一数据搬移模块的第一转置子模块用于利用EDMA对所述原始图像数据矩阵进行第一转置处理,第一转置处理的对应关系为buffer1[j*m][i*n]=src[i][j]。所述第一数据搬移模块的第一放大子模块用于利用EDMA对第一转置处理后的原始图像数据矩阵进行行复制,得到所述原始图像数据矩阵的水平方向放大图像。
所述第二数据搬移模块用于利用EDMA对所述第一图像数据矩阵以转置的格式向预设的第二图像数据缓冲区搬移,并对转置后的第一图像数据矩阵进行水平放大,得到放大图像。其中,所述第二数据搬移模块的第二转置子模块用于利用EDMA对所述第一图像数据矩阵进行第二转置处理,第二转置处理的对应关系为buffer2[i][j] =buffer1[j][i]。所述第二数据搬移模块的第二放大子模块用于利用EDMA对第二转置处理后的第一图像数据矩阵进行行复制,得到放大图像。
图像的插值放大算法通常采用函数memcpy或者循环等进行数据拷贝,完成放大图像的数据组建,这种技术方案需要CPU参与,影响系统整体效率。在TI的DM816x系列处理器中,采用函数memcpy完成一幅2448*2048的YUV420图像拷贝,需要40ms,若采用循环方式,消耗时间更多。而采用EDMA完成同样大小的图像的数据搬移,仅需要3ms左右,因此,通过采用EDMA进行图像插值算法,与CPU并行执行的同时,提高插值算法的效率。虽然EDMA进行非连续数据的搬移比连续数据的搬移速度慢,但相对CPU来说,仍具有很大优势。
基于DSP平台的EDMA的数据搬移能力进行插值算法,在对图像进行放大的工作过程中,通过对图像的分析,查找到感兴趣的待放大区域,通过对待放大区域的边界设定,将其放大一定倍数,从而达到放大显示的目的。图像待放大区域的放大功能由EDMA完成,所以CPU主要负责对图像的分析,极大的提高了CPU的利用率及操作系统的实时性。
针对于多线程中图像放大线程的工作原理具体为:当获取到待放大区域的边界坐标后,基于EDMA的数据搬移需要满足数据源起始地址与目的地址32字节对齐的要求,对边界坐标进行适当偏移及缩放,确保待放大区域的起始地址与目的地址满足32字节对齐,且长和宽均是32的倍数,使EDMA能够实现在水平和垂直方向的数据搬移。这里设定被提取的待放大区域的原始图像数据存储区域src,图像宽高分别为W和H,采用插值算法将其水平方向放大m倍、垂直方向放大n倍后存储在缓存区dst中。
图3是本发明实施例提供的基于EDMA的图像放大的原始图像数据矩阵示意图,图4是本发明实施例提供的基于EDMA的图像放大的放大图像数据矩阵示意图,如图3、图4所示,为src与dst的图像数据阵列,dst与src的数据对应关系如下:
dst[i][j] = src[i/n][j/m]
根据公式的对应关系,可在dst区域提取m*n个子矩阵,每个矩阵都具与src同样的数据排列顺序,但每个矩阵与src的区别是:行相邻数据间距为n-1,列相邻数据间距为m-1。对于dst区域完全满足起始地址与目的地址字节对齐的要求的情形,利用EDMA搬移算法,进行m*n次搬移,实现从src区域到dst区域的搬移,即可完成图像的放大。
图5是本发明实施例提供的基于EDMA的图像放大的图像数据子矩阵示意图,如图5所示,为图像数据子矩阵在dst区域中有部分不满足起始地址与目的地址字节对齐的要求的情形,仅以src[0~n][0]为起始地址的子矩阵满足字节对齐的要求。通过EDMA先对满足要求的子矩阵进行搬移,在完成子矩阵搬移后,生成dst图像数据矩阵。
图6是本发明实施例提供的基于EDMA的图像放大的图像数据子矩阵的行复制示意图,如图6所示,完成图像的垂直方向放大,而水平方向的图像数据子矩阵在dst中存储的起始地址与目的地址不满足字节对齐,无法用EDMA进行数据搬移。
图7是本发明实施例提供的基于EDMA的图像放大的图像数据矩阵的缓存区转置示意图一,如图7所示,将原始图像数据子矩阵按转置方式拷贝到缓存区dst中,缓存区dst中的图像数据相对于src进行行列颠倒。根据图像数据矩阵的可转置性,对行复制后的图像数据子矩阵进行转置变换,生成转置的图像数据子矩阵,得到完成水平数据拷贝的图像数据子矩阵。
图8是本发明实施例提供的图像放大的基于EDMA的图像数据矩阵的列复制示意图,如图8所示,对dst中的图像数据进行行拷贝,即对dst中的图像数据进行垂直方向的数据拷贝,完成src中原始图像的水平放大。
图9是本发明实施例提供的图像放大的基于EDMA的图像数据矩阵的缓存区转置示意图二,如图9所示,对dst中的图像数据进行转置变换,恢复dst中图像数据相对src中的行列分布。根据图像数据矩阵的可转置性,对列复制后的图像数据子矩阵进行转置变换,生成转置的图像数据子矩阵,并再次通过对dst中的图像数据进行行复制,完成src中原始图像的垂直放大,完成待放大区域图像的放大操作。
基于DSP的EDMA对src图像数据矩阵进行插值放大m*n倍,并设定图像大小为W*H(要求W和H均是32的倍数)的工作流程的具体步骤如下:
(1)结合原始图像大小及其放大倍数,计算出放大后的图像大小。
(2)根据计算出的图像大小,申请两个图像数据缓存区buffer1和buffer2,根据计算出的原始图像数据矩阵在buffer1中的对应位置,配置EDMA将原始图像数据矩阵搬移到buffer1中的相应位置。其中buffer1为图像放大过程中的中间状态,其大小为(H*n)*(W*m),最终完成放大的图像数据存储在buffer2中,其大小为(W*m)*(H*n)。
(3)完成放大的图像数据缓存区buffer2与原始图像数据的对应关系为:buffer2[i][j] = src[i/m][j/n],i/m和j/n均取整数。从此公式可以看出,放大后的图像数据缓存在图像数据缓存区buffer2中,是将src中的每行数据复制n次,每列数据复制m次获得的。
(4)配置EDMA,将原始图像数据存储区域src中的图像数据以转置方式拷贝到buffer1中,完成图像数据拷贝后,buffer1中的图像数据与src中的图像数据对应关系为:buffer1[i][j]= src[j/n][i/m],其中,buffer1中的i和j对n取余为0的部分为有效数据。
(5)配置EDMA,将图像数据缓存区buffer1[i][]中i%m为零的行拷贝到其后i+1至i+m-1行,需要拷贝m-1次,相对于完成src中原始图像的水平方向复制,体现为在buffer1中垂直方向复制。完成buffer1中图像数据矩阵的垂直拉伸操作后,buffer1中的缓存图像数据完成原始图像的水平方向放大。
(6)配置EDMA,将buffer1中的图像数据矩阵以转置方式拷贝到buffer2中。
(7)配置EDMA,将buffer2[i][]中i%n为零的行拷贝到其后i+1至i+n-1行,需要拷贝n-1次,相对于完成src中原始图像的垂直方向复制,体现为在buffer2中水平方向复制,即完成buffer2中图像数据矩阵的垂直拉伸操作。同时,也完成了图像的整体放大。
可见,利用EDMA进行图像放大的插值算法,结合图像放大时图像数据矩阵的规律性,以及EDMA数据搬移的特点,对图像数据矩阵进行隔行拷贝操作,完成图像放大,从而有效地提高了效率。
以上对本发明所涉及的基于DSP的EDMA完成图像插值方法放大的技术方案进行了详细介绍,对本发明的原理及具体实施方式进行了阐述,以上的实施方式从总体上说明了整个算法设计的原理,有助于帮助理解本发明的方法及核心思想,同时,对于DSP开发的一般技术人员来说,可以依据本发明的思想,在实施方式及应用范围上,对其算法设计及硬件安排均会有一定的更改之处。
综上所述,本发明具有以下技术效果:能够通过提供一种采用插值算法进行图像放大的方法,根据插值算法的规律性,并结合DSP硬件设备EDMA的数据搬移及复制功能,对图像数据进行分析,设计基于EDMA的插值算法的实现过程,使其满足EDMA的搬移条件,实现图像的整数倍放大,提高操作系统整体运行效率。同时,避免DSP在处理大量数据时,CPU访问外部存储器慢的缺点。此外,在进行图像放大时,EDMA在数据搬移过程中,CPU可进行其它操作,且EDMA专职进行图像数据拷贝,对于大数据量而言,其拷贝图像数据速度快于CPU,从而实现DSP内部与CPU的并行操作。由于该基于EDMA的插值算法基本没有用到CPU运算及数据拷贝,提高了DSP对外围设备利用率和算法执行效率,也提高了CPU的利用率,节约了CPU资源。
尽管上文对本发明进行了详细说明,但是本发明不限于此,本技术领域技术人员可以根据本发明的原理进行各种修改。因此,凡按照本发明原理所作的修改,都应当理解为落入本发明的保护范围。
Claims (10)
1.一种基于EDMA的图像放大的方法,其特征在于,包括:
对获取到的待放大区域的图像边界坐标进行偏移和缩放,得到适配于EDMA数据搬移的待放大区域的原始图像数据矩阵;
利用EDMA对所述原始图像数据矩阵以转置的格式向预设的第一图像数据缓存区搬移,并对转置后的原始图像数据矩阵进行水平放大,得到第一图像数据矩阵;
利用EDMA对所述第一图像数据矩阵以转置的格式向预设的第二图像数据缓冲区搬移,并对转置后的第一图像数据矩阵进行水平放大,得到放大图像。
2.根据权利要求1所述的方法,其特征在于,所述的适配于EDMA数据搬移的待放大区域的原始图像数据矩阵是指,所述原始图像数据矩阵的起始地址满足32位地址对齐,且所述原始图像数据矩阵的长和宽是32的倍数。
3.根据权利要求1所述的方法,其特征在于,所述的得到适配于EDMA数据搬移的待放大区域的原始图像数据矩阵的步骤之后还包括:
当接收到的图像放大指令后,根据所述图像放大指令中的图像放大倍数和待放大区域原始图像大小,设定适配于放大后的待放大区域原始图像大小的第一图像数据缓存区和第二图像数据缓存区。
4.根据权利要求1或2所述的方法,其特征在于,对于部分满足起始地址字节对齐的原始图像数据矩阵,所述的利用EDMA对所述原始图像数据矩阵以转置的格式向预设的第一图像数据缓存区搬移,对转置后的原始图像数据矩阵进行水平放大,得到第一图像数据矩阵的步骤包括:
利用EDMA对所述原始图像数据矩阵进行第一转置处理,第一转置处理的对应关系为buffer1[j*m][i*n]=src[i][j];
利用EDMA对第一转置处理后的原始图像数据矩阵进行行复制,得到所述原始图像数据矩阵的水平方向放大图像;
其中,buffer1[j*m][i*n]表示为缓存在预设的第一图像数据缓存区的第一转置处理后的原始图像数据矩阵,src[i][j]表示为缓存在原始图像数据缓存区的原始图像数据矩阵,i,j为图像数据矩阵的行数和列数,m,n为第一转置处理后的原始图像数据矩阵水平与垂直方向的放大倍数,i,j,m,n为自然数。
5.根据权利要求4所述的方法,其特征在于,所述的利用EDMA对第一转置处理后的原始图像数据矩阵进行行复制是指,将第一转置处理后的原始图像数据矩阵的行中满足i%m=0的行复制到其后的i+1行至i+m-1行,其中,m为原始图像数据矩阵的水平放大倍数,m为自然数。
6.根据权利要求1所述的方法,其特征在于,所述的利用EDMA对所述第一图像数据矩阵以转置的格式向预设的第二图像数据缓冲区搬移,并对转置后的第一图像数据矩阵进行水平放大,得到放大图像的步骤包括:
利用EDMA对所述第一图像数据矩阵进行第二转置处理,第二转置处理的对应关系为buffer2[i][j] =buffer1[j][i];
利用EDMA对第二转置处理后的第一图像数据矩阵进行行复制,得到放大图像;
其中,buffer2[i][j]表示为缓存在预设的第二图像数据缓存区的第二转置处理后的第一图像数据矩阵,buffer1[j][i]表示为缓存在预设的第一图像数据缓存区的第一图像数据矩阵。
7.根据权利要求6所述的方法,其特征在于,所述的利用EDMA对第二转置处理后的第一图像数据矩阵进行行复制是指,将第二转置处理后的图像数据矩阵的行中满足i%n=0的行复制到其后的i+1行至i+n-1行,以便在垂直方向上放大所述原始图像数据阵列。
8.一种基于EDMA的图像放大的装置,其特征在于,包括:
原始模块,用于对获取到的待放大区域的图像边界坐标进行偏移和缩放,得到适配于EDMA数据搬移的待放大区域的原始图像数据矩阵;
第一数据搬移模块,用于利用EDMA对所述原始图像数据矩阵以转置的格式向预设的第一图像数据缓存区搬移,并对转置后的原始图像数据矩阵进行水平放大,得到第一图像数据矩阵;
第二数据搬移模块,用于利用EDMA对所述第一图像数据矩阵以转置的格式向预设的第二图像数据缓冲区搬移,并对转置后的第一图像数据矩阵进行水平放大,得到放大图像。
9.根据权利要求8所述的装置,其特征在于,所述第一数据搬移模块进一步包括:
第一转置子模块,用于利用EDMA对所述原始图像数据矩阵进行第一转置处理,第一转置处理的对应关系为buffer1[j*m][i*n]=src[i][j];
第一放大子模块,用于利用EDMA对第一转置处理后的原始图像数据矩阵进行行复制,得到所述原始图像数据矩阵的水平方向放大图像。
10.根据权利要求8所述的装置,其特征在于,所述第二数据搬移模块进一步包括:
第二转置子模块,用于利用EDMA对所述第一图像数据矩阵进行第二转置处理,第二转置处理的对应关系为buffer2[i][j] =buffer1[j][i];
第二放大子模块,用于利用EDMA对第二转置处理后的第一图像数据矩阵进行行复制,得到放大图像。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510099596.XA CN104657937B (zh) | 2015-03-06 | 2015-03-06 | 一种基于edma的图像放大的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510099596.XA CN104657937B (zh) | 2015-03-06 | 2015-03-06 | 一种基于edma的图像放大的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104657937A true CN104657937A (zh) | 2015-05-27 |
CN104657937B CN104657937B (zh) | 2018-03-30 |
Family
ID=53249016
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510099596.XA Active CN104657937B (zh) | 2015-03-06 | 2015-03-06 | 一种基于edma的图像放大的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104657937B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105739874A (zh) * | 2016-03-11 | 2016-07-06 | 沈阳聚德视频技术有限公司 | 一种基于dsp的edma在图像旋转中的实现方法 |
CN111209862A (zh) * | 2020-01-03 | 2020-05-29 | 深圳力维智联技术有限公司 | 一种人脸图像的聚类方法、装置及介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090276571A1 (en) * | 2008-04-30 | 2009-11-05 | Alan Frederic Benner | Enhanced Direct Memory Access |
CN103020892A (zh) * | 2012-11-16 | 2013-04-03 | 天津市天祥世联网络科技有限公司 | 基于达芬奇平台的图像帧处理优化方法 |
CN103544678A (zh) * | 2012-07-13 | 2014-01-29 | 浙江大华技术股份有限公司 | 一种视频图像处理装置及方法 |
-
2015
- 2015-03-06 CN CN201510099596.XA patent/CN104657937B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090276571A1 (en) * | 2008-04-30 | 2009-11-05 | Alan Frederic Benner | Enhanced Direct Memory Access |
CN103544678A (zh) * | 2012-07-13 | 2014-01-29 | 浙江大华技术股份有限公司 | 一种视频图像处理装置及方法 |
CN103020892A (zh) * | 2012-11-16 | 2013-04-03 | 天津市天祥世联网络科技有限公司 | 基于达芬奇平台的图像帧处理优化方法 |
Non-Patent Citations (3)
Title |
---|
AMINA KESSENTINI等: "DSP-Based Down-Sampling Process Using Lanczos Filter Bank", 《ATSIP,2014 1ST INTERNATIONAL CONFERENCE ON》 * |
徐后乐: "基于DSP和FPGA的图像采集和显示技术的研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
王跃宗等: "《TMS320DM642 DSP应用系统设计与开发》", 31 May 2009 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105739874A (zh) * | 2016-03-11 | 2016-07-06 | 沈阳聚德视频技术有限公司 | 一种基于dsp的edma在图像旋转中的实现方法 |
CN111209862A (zh) * | 2020-01-03 | 2020-05-29 | 深圳力维智联技术有限公司 | 一种人脸图像的聚类方法、装置及介质 |
CN111209862B (zh) * | 2020-01-03 | 2023-09-29 | 深圳力维智联技术有限公司 | 一种人脸图像的聚类方法、装置及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN104657937B (zh) | 2018-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102460503B (zh) | 显示源图像的变形版本的设备和方法 | |
JP6352546B2 (ja) | 非整列ブロック転送動作の処理 | |
KR20180102617A (ko) | 컴퓨팅 시스템에서 안티-에일리어싱 동작 수행 | |
DE102016100469A1 (de) | Skalierschaltung zum Erzeugen von Bildern verschiedener Auflösung aus einem einzelnen Bild und Vorrichtungen mit derselben | |
CN113556496A (zh) | 视频分辨率提升方法及装置、存储介质及电子设备 | |
CN104657937A (zh) | 一种基于edma的图像放大的方法及装置 | |
CN107657587A (zh) | 图像处理方法、装置及系统 | |
WO2016004667A1 (zh) | 增强视频图像光滑度及清晰度的超分辨率重构方法 | |
CN105427235A (zh) | 一种图像浏览方法及系统 | |
WO2016197393A1 (zh) | 并行多相位图像插值装置和方法 | |
US10387997B2 (en) | Information processing device, information processing method, and storage medium | |
CN116312412A (zh) | 一种基于fpga的双三次插值电路 | |
CN115205115A (zh) | 一种基于双线性插值算法的图像放大方法 | |
JP2017509961A (ja) | サブピクセルオフセットを有する電子ズーム方法 | |
Fahmy | Generalised parallel bilinear interpolation architecture for vision systems | |
CN112017112B (zh) | 图像处理方法、装置和系统以及计算机可读存储介质 | |
CN108833872B (zh) | 一种yuy2颜色空间快速缩放或放大的方法 | |
US20230022878A1 (en) | Cache-based warp engine | |
Sun et al. | PYNQ HelloWorld: Image Resizing | |
JPS60107181A (ja) | イメ−ジ処理装置 | |
CN117710201A (zh) | 图像缩放方法及装置、电子设备和计算机存储介质 | |
CN115880141A (zh) | 基于fpga仿射逆变换的数据处理系统 | |
JP3468580B2 (ja) | データ曲線描画装置 | |
JP2015069272A (ja) | 画像変形装置および画像変形方法 | |
Zhang et al. | Design of large-array CMOS real-time imaging system based on FPGA |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CB03 | Change of inventor or designer information |
Inventor after: Wang Yuzhou Inventor after: Dong Tiejun Inventor after: Yuan Gun Inventor after: Zhao Quanbang Inventor after: Yu Weishuang Inventor before: Wang Yuguo Inventor before: Dong Tiejun Inventor before: Yuan Gun Inventor before: Zhao Quanbang Inventor before: Yu Weishuang |
|
CB03 | Change of inventor or designer information |