CN104301740A - 一种红外图像9/7小波变换硬件加速电路 - Google Patents
一种红外图像9/7小波变换硬件加速电路 Download PDFInfo
- Publication number
- CN104301740A CN104301740A CN201410585054.9A CN201410585054A CN104301740A CN 104301740 A CN104301740 A CN 104301740A CN 201410585054 A CN201410585054 A CN 201410585054A CN 104301740 A CN104301740 A CN 104301740A
- Authority
- CN
- China
- Prior art keywords
- small echo
- image
- pixel
- counting circuit
- pixels
- 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
Landscapes
- Complex Calculations (AREA)
- Image Processing (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Abstract
一种红外图像9/7小波变换硬件加速电路,读数据控制模块首先从图像RAM中按预设的顺序读取原始红外图像的像素值,并启动小波计算电路,小波计算电路从初始q位置开始读取九个像素值,每读取九个像素值,令q的取值等于q+2,启动小波计算电路重新从q位置读取九个像素值,直至按当前预设顺序全部读完;小波计算电路读取头九个像素值进行小波变换得到小波变换结果;写数据控制模块将小波变换结果按照转置后的位置存储在临时RAM中;读数据控制模块从临时RAM中按照相同的顺序读取像素值,并启动小波计算电路;写数据控制模块将小波计算电路得到的小波变换结果按照转置后的位置存储在图像RAM中。
Description
技术领域
本发明涉及一种红外图像9/7小波变换硬件加速方法及电路,属于专用算法硬件电路设计领域。
背景技术
基于图像匹配的信息处理技术在新一代航天型号中开始大量应用。为提高匹配精度,目前图像处理采用的是像素级匹配方法,这种方法匹配精度高但是运算量比较大。对于航天应用来说,一般目前要求在20ms以内完成全部算法的处理,对于信息处理的实时性要求也非常高。
要加快运算速度,就要减少像素位置和每个像素处的计算量。而小波变换作为一种多分辨率分析方法,能够对信号进行不同尺度的分解,从而获得目标图像不同层次的像素细节信息。利用小波变换的多分辨率特性,根据图像特点将图像进行多层分解,形成金字塔式图像数据。首先在分解后的小波图像全局进行匹配,然后在信息更为丰富较高层次小波图或者原图进行局部匹配,能够极大地提高处理效率。
发明内容
本发明的技术解决问题是:克服现有技术的不足,提供一种红外图像9/7小波变换硬件加速电路。
本发明的技术解决方案是:一种红外图像9/7小波变换硬件加速电路,包括读数据控制模块、小波计算电路和写数据控制模块;
读数据控制模块首先从图像RAM中按预设的顺序读取原始红外图像的像素值,并启动小波计算电路,小波计算电路从初始q位置开始读取九个像素值,每读取九个像素值,令q的取值等于q+2,启动小波计算电路重新从q位置读取九个像素值,直至按当前预设顺序全部读完;
小波计算电路从读数据控制模块中读取头九个像素值,并进行小波变换,得到小波变换结果;
写数据控制模块将小波计算电路得到的小波变换结果按照转置后的位置存储在临时RAM中;
读数据控制模块然后从临时RAM中按照相同的顺序读取像素值,并启动小波计算电路,小波计算电路从初始q位置开始读取九个像素值,每读取九个像素值,令q的取值等于q+2,启动小波计算电路重新从q位置读取九个像素值,直至临时RAM中像素值全部读完;
小波计算电路从读数据控制模块中读取头九个像素值,并进行小波变换,得到小波变换结果;
写数据控制模块将小波计算电路得到的小波变换结果按照转置后的位置存储在图像RAM中。
所述的读数据控制模块包括移位寄存器、算法状态机和读地址生成单元;
启动算法状态机,算法状态机从第一个像素开始,按照预设的行或者列顺序将像素坐标输入至读地址生成单元,算法状态机每输出一个像素坐标就判断移位寄存器是否存储满;若未满,则按照预设的行或者列顺序继续输出,否则停止输出;读地址生成单元依次将接收的像素坐标转换成图像RAM中的存储地址,并将该地址依次发送至图像RAM;图像RAM按照接收的地址将每行或者列的起始图像像素从移位寄存器的第五个像素位置开始存储,同时对移位寄存器的头四个像素位置设置初值,存储至该行或者列的最后一个图像像素时,继续在移位寄存器中向后设置四个像素位置的初值;算法状态机启动小波计算电路,小波计算电路从移位寄存器读取前九个像素位置的像素值;每次小波计算电路读完九个像素,算法状态机重新启动小波计算电路,移位寄存器将第p个像素位置的像素值移动两个位置到第p-2个像素位置;所述p≥3。
所述的小波计算电路包括5个乘法器和8个加法器;
小波计算电路从移位寄存器读出九个像素值依次分别记为A0-A8;除中间像素值A4外,滤波系数相同的两个像素值先通过加法器相加,然后通过乘法器与滤波系数相乘,A4通过一个乘法器乘以相应的滤波系数;共得到五组相乘后的结果,将五组结果通过四个加法器相加得到小波变换结果。
所述的写数据控制模块将小波计算电路得到的小波变换结果存储在临时RAM中,当按照行进行读取时,存储的地址为x/2×n+y;其中(x,y)为当前小波变换结果计算中第五个像素在原始红外图像中的坐标;n为原始红外图像的高度。
所述的头四个像素位置的初值以第五个像素位置为中心将第六至第九个像素位置值镜像得到。
移位寄存器中每行或者列的最后一个图像像素之后四个像素位置的初值以最后一个图像像素位置为中心,将其之前四个像素位置值通过镜像得到。
本发明与现有技术相比有益效果为:
(1)通过采用先完成一维行方向小波变换,再完成一维列方向小波变换的方法实现二维小波变换,在一维行方向小波变换过程中,通过变换结果的自动转置,保证了在列方向小波变换时数据访问地址的连续性,然后在列方向一维小波变换后,自动再将图像转置回来;为提高算法运算效率、简化硬件电路时序,完成了非对齐图像数据存储器访问接口设计,可以满足任意宽度图像的小波变换。
(2)本发明通过对红外图像匹配所采用的9/7小波变换图像算法进行分析,通过边界数据镜像、一维图像小波变换结果转置、非对齐地址访问等设计方法进行研究,完成了9/7小波算法硬件化方法研究及硬件算法IP核研制,,一次小波变换的时间为0.75×m×n(m×n为图像大小),在100MHz频率下,对于320*256的图像,一次小波变换的只需要614.40us。
附图说明
图1为本发明一维小波变换硬件工作原理(镜像模式起始位置);
图2为本发明一维小波变换硬件工作原理(镜像模式结束位置);
图3为本发明9/7小波变换电路总体架构;
图4为本发明读控制模块示意图;
图5a、5b分别为本发明9/7小波变换电路两种形式;
图6为本发明小波变换结果转置保存RAM示意图。
具体实施方式
为了更好的理解本发明,首先将图像二维小波变换实现过程进行介绍:
红外图像算法采用9/7浮点小波变换完成低通滤波和图像的压缩,小波变换的过程就是图像数据与小波基进行行列滤波(卷积)的过程,其中对于二维图像来说,设图像A(x,y)为m×n维(m为图像宽、n为图像高),卷积核w(x,y)为k×l维,且m≥k,n≥l,则卷积并下采样的结果B(x,y)表示为:
其中,m-1≥x≥0,n-1≥y≥0,且x=0,2,4…,y=0,2,4…或x=1,3,5…,y=1,3,5…
二维离散小波变换可以分解为两个一维小波变换,行滤波时,先输入图像A(x,y)各行,与l维卷积核w(x)进行卷积计算,其结果表示为N×M/2的矩形图像R(x,y)。列滤波时,将R(x,y)各列数据输入,与l维卷积核w(x)进行卷积计算,由此得到小波变换结果为M/2×N/2大小的图像B(x,y)。
对于红外图像,采用先完成行滤波,再完成列滤波的方式:
其中,小波变换行滤波公式如下:
其中,m-1≥x≥0,且x=0,2,4,8…,
n-1≥y≥0,且y=0,1,2,3…,
将完成行滤波的图像,进行列滤波,其公式如下:
其中,且x=0,1,2,3…,
n-1≥y≥0,且y=0,2,4,8…。
如图3所示,本发明红外图像9/7小波变换硬件加速电路,包括读数据控制模块、小波计算电路和写数据控制模块;
读数据控制模块首先从图像RAM中按预设的顺序(本例中按行读取)读取原始红外图像的像素,原始图像的宽度m和高度n。并启动小波计算电路,小波计算电路从初始q位置开始读取九个像素值,每读取九个像素值,令q的取值等于q+2,启动小波计算电路重新从q位置读取九个像素值,直至当前预设顺序全部读完。
如图4所示,读数据控制模块可以采用下述方式实现,包括移位寄存器、算法状态机和读地址生成单元;
启动算法状态机,算法状态机从原始红外图像的第一个像素开始,按行将像素坐标(x,y)输入至读地址生成单元,算法状态机每输出一个像素坐标就判断移位寄存器是否存储满;若未满,则按行继续输出,否则停止输出;
读地址生成单元依次将接收的像素坐标转换成图像RAM中的存储地址(地址为m×y+x),并将该地址依次发送至图像RAM;图像RAM按照接收的地址将对应图像像素从移位寄存器的第五个像素位置开始存储,同时对移位寄存器的头四个像素位置设置初值;每行中的头四个像素的初值可以粗略设置为0,也可以采用如图1所示的方式进行镜像处理,将前四个像素做镜像处理,补充到每一行的前面。当小波基移动到行的最后一列时,同样需要进行镜像处理(图2)或者设置为0。具体对于每一行的起始位置,自动将A7的值赋给A0、A6的值赋给A1、A5的值赋给A2、A4的值赋给A3,实现了镜像处理;对于每一行的结束位置,按照上述方法将A7的值赋给A8、A6的值赋给A9、A5的值赋给A10、A4的值赋给A11。
图4中所给示例采用的是32位的图像RAM、红外图像像素为8位,所以从图像RAM中每次读取4个像素值依次存储在移位寄存器中;
算法状态机启动小波计算电路,小波计算电路从移位寄存器读取前九个像素位置的像素值,进行小波变换,得到小波变换结果;小波计算电路可以采用如图5a所示的方式进行处理采用9个乘法器和8个加法器实现,得到小波变换结果B=A(0)×w(0)+A(1)×w(1)+A(2)×w(2)+A(3)×w(3)+A(4)×w(4)+A(5)×w(5)+A(6)×w(6)+A(7)×w(7)+A(8)×w(8);A为图像像素值,共8bit。小波基w(i)及其维数9,小波基9个滤波系数为:(0.02675,-0.01686,-0.07822,0.2669,0.6029,0.2669,-0.07822,-0.01686,0.02675)。
由于小波基的滤波系数是中心对称的,为减少乘法器的数量,所以可以将上述公式简化为:
B=(A(0)+A(8))×w(0)+(A(1)+A(7))×w(1)+(A(2)+A(6))×w(2)+(A(3)+A(5))×w(3)+A(4)×w(4);
同时,由于滤波系数有正数也有负数,为简化运算(避免补码出现),将正数部分合并运算,再将负数部分合并运算,上述公式变为:
B=temp1(正数)+temp2(负数)
其中,
temp1=(A(0)+A(8))×w(0)+(A(3)+A(5))×w(3)+A(4)×w(4);
temp2=(A(1)+A(7))×w(1)+(A(2)+A(6))×w(2);
如图5所示,通过上述优化,整个过程需要5个乘法器,8个加法器,乘法器数量减少4个,同时由于将正负数分别计算,全部计算都可以采用原码表示,避免了采用补码时的换算。
每次小波计算电路读完九个像素,移位寄存器将第p个像素位置的像素值移动两个位置到第p-2个像素位置;所述P≥3。也就是将A2的值赋给A0、A3的值赋给A1、A4的值赋给A2……,以此类推。得到新的A0-A8。
如图6所示,写数据控制模块将小波计算电路得到的小波变换结果按照转置后的位置存储在临时RAM中,存储的地址为x/2×n+y;当预设的顺序为按列读取时,其地址计算公式为y/2×m+x。
读数据控制模块然后从临时RAM中按照相同的顺序读取像素,并启动小波计算电路,按照与原始红外图像相同的处理方式进行处理,即小波计算电路从初始q位置开始读取九个像素,每读取九个像素,令q的取值等于q+2,启动小波计算电路重新从q位置读取九个像素,直至临时RAM中像素全部读完;小波计算电路从读数据控制模块中读取头九个像素值,并进行小波变换,得到小波变换结果;写数据控制模块将小波计算电路得到的小波变换结果按照转置后的位置存储图像RAM中,得到一层小波图像。
当需要得到二层小波图像时,将上述一层小波图像作为原始图像按照上述同样的方式进行处理即可,依次类推,可以得到多层小波图像。
Claims (6)
1.一种红外图像9/7小波变换硬件加速电路,其特征在于:包括读数据控制模块、小波计算电路和写数据控制模块;
读数据控制模块首先从图像RAM中按预设的顺序读取原始红外图像的像素值,并启动小波计算电路,小波计算电路从初始q位置开始读取九个像素值,每读取九个像素值,令q的取值等于q+2,启动小波计算电路重新从q位置读取九个像素值,直至按当前预设顺序全部读完;
小波计算电路从读数据控制模块中读取头九个像素值,并进行小波变换,得到小波变换结果;
写数据控制模块将小波计算电路得到的小波变换结果按照转置后的位置存储在临时RAM中;
读数据控制模块然后从临时RAM中按照相同的顺序读取像素值,并启动小波计算电路,小波计算电路从初始q位置开始读取九个像素值,每读取九个像素值,令q的取值等于q+2,启动小波计算电路重新从q位置读取九个像素值,直至临时RAM中像素值全部读完;
小波计算电路从读数据控制模块中读取头九个像素值,并进行小波变换,得到小波变换结果;
写数据控制模块将小波计算电路得到的小波变换结果按照转置后的位置存储在图像RAM中。
2.根据权利要求1一种红外图像9/7小波变换硬件加速电路,其特征在于:所述的读数据控制模块包括移位寄存器、算法状态机和读地址生成单元;
启动算法状态机,算法状态机从第一个像素开始,按照预设的行或者列顺序将像素坐标输入至读地址生成单元,算法状态机每输出一个像素坐标就判断移位寄存器是否存储满;若未满,则按照预设的行或者列顺序继续输出,否则停止输出;读地址生成单元依次将接收的像素坐标转换成图像RAM中的存储地址,并将该地址依次发送至图像RAM;图像RAM按照接收的地址将每行或者列的起始图像像素从移位寄存器的第五个像素位置开始存储,同时对移位寄存器的头四个像素位置设置初值,存储至该行或者列的最后一个图像像素时,继续在移位寄存器中向后设置四个像素位置的初值;算法状态机启动小波计算电路,小波计算电路从移位寄存器读取前九个像素位置的像素值;每次小波计算电路读完九个像素,算法状态机重新启动小波计算电路,移位寄存器将第p个像素位置的像素值移动两个位置到第p-2个像素位置;所述p≥3。
3.根据权利要求1一种红外图像9/7小波变换硬件加速电路,其特征在于:所述的小波计算电路包括5个乘法器和8个加法器;
小波计算电路从移位寄存器读出九个像素值依次分别记为A0-A8;除中间像素值A4外,滤波系数相同的两个像素值先通过加法器相加,然后通过乘法器与滤波系数相乘,A4通过一个乘法器乘以相应的滤波系数;共得到五组相乘后的结果,将五组结果通过四个加法器相加得到小波变换结果。
4.根据权利要求1一种红外图像9/7小波变换硬件加速电路,其特征在于:所述的写数据控制模块将小波计算电路得到的小波变换结果存储在临时RAM中,当按照行进行读取时,存储的地址为x/2×n+y;其中(x,y)为当前小波变换结果计算中第五个像素在原始红外图像中的坐标;n为原始红外图像的高度。
5.根据权利要求2一种红外图像9/7小波变换硬件加速电路,其特征在于:所述的头四个像素位置的初值以第五个像素位置为中心将第六至第九个像素位置值镜像得到。
6.根据权利要求2一种红外图像9/7小波变换硬件加速电路,其特征在于:移位寄存器中每行或者列的最后一个图像像素之后四个像素位置的初值以最后一个图像像素位置为中心,将其之前四个像素位置值通过镜像得到。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410585054.9A CN104301740B (zh) | 2014-10-27 | 2014-10-27 | 一种红外图像9/7小波变换硬件加速电路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410585054.9A CN104301740B (zh) | 2014-10-27 | 2014-10-27 | 一种红外图像9/7小波变换硬件加速电路 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104301740A true CN104301740A (zh) | 2015-01-21 |
CN104301740B CN104301740B (zh) | 2017-09-29 |
Family
ID=52321273
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410585054.9A Active CN104301740B (zh) | 2014-10-27 | 2014-10-27 | 一种红外图像9/7小波变换硬件加速电路 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104301740B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109582911A (zh) * | 2017-09-28 | 2019-04-05 | 三星电子株式会社 | 用于实行卷积的计算装置及实行卷积的计算方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1448848A (zh) * | 2003-04-07 | 2003-10-15 | 西安交通大学 | 提升小波快速算法vlsi实现的存储器控制方法 |
CN1477497A (zh) * | 2003-07-03 | 2004-02-25 | 复旦大学 | Jepg2000中小波变换算法的高效vlsi实现结构 |
CN101059866A (zh) * | 2007-05-23 | 2007-10-24 | 华中科技大学 | 一种并行提升9/7小波基的vlsi结构 |
CN101697150A (zh) * | 2009-02-20 | 2010-04-21 | 北京航空航天大学 | 一种基于提升格式的9/7小波变换优化实现方法 |
CN102300092A (zh) * | 2011-08-25 | 2011-12-28 | 北京航空航天大学 | 一种基于提升格式的9/7小波逆变换的图像解压缩方法 |
CN102685501A (zh) * | 2012-05-14 | 2012-09-19 | 西安电子科技大学 | 实现jpeg2000图像压缩的定点小波变换方法 |
-
2014
- 2014-10-27 CN CN201410585054.9A patent/CN104301740B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1448848A (zh) * | 2003-04-07 | 2003-10-15 | 西安交通大学 | 提升小波快速算法vlsi实现的存储器控制方法 |
CN1477497A (zh) * | 2003-07-03 | 2004-02-25 | 复旦大学 | Jepg2000中小波变换算法的高效vlsi实现结构 |
CN101059866A (zh) * | 2007-05-23 | 2007-10-24 | 华中科技大学 | 一种并行提升9/7小波基的vlsi结构 |
CN101697150A (zh) * | 2009-02-20 | 2010-04-21 | 北京航空航天大学 | 一种基于提升格式的9/7小波变换优化实现方法 |
CN102300092A (zh) * | 2011-08-25 | 2011-12-28 | 北京航空航天大学 | 一种基于提升格式的9/7小波逆变换的图像解压缩方法 |
CN102685501A (zh) * | 2012-05-14 | 2012-09-19 | 西安电子科技大学 | 实现jpeg2000图像压缩的定点小波变换方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109582911A (zh) * | 2017-09-28 | 2019-04-05 | 三星电子株式会社 | 用于实行卷积的计算装置及实行卷积的计算方法 |
CN109582911B (zh) * | 2017-09-28 | 2023-11-21 | 三星电子株式会社 | 用于实行卷积的计算装置及实行卷积的计算方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104301740B (zh) | 2017-09-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108229654B (zh) | 神经网络卷积运算装置及方法 | |
Gu et al. | Hplflownet: Hierarchical permutohedral lattice flownet for scene flow estimation on large-scale point clouds | |
CN108710830B (zh) | 一种结合密集连接注意力金字塔残差网络和等距限制的人体3d姿势估计方法 | |
Yepez et al. | Stride 2 1-D, 2-D, and 3-D Winograd for convolutional neural networks | |
CN111696148A (zh) | 基于卷积神经网络的端到端立体匹配方法 | |
CN103235949B (zh) | 图像兴趣点检测方法和装置 | |
Yee et al. | Fast deep stereo with 2D convolutional processing of cost signatures | |
Chang et al. | Vornet: Spatio-temporally consistent video inpainting for object removal | |
CN112819876B (zh) | 一种基于深度学习的单目视觉深度估计方法 | |
CN111160298A (zh) | 一种机器人及其位姿估计方法和装置 | |
CN110991526B (zh) | 一种非迭代式点云匹配方法、介质、终端和装置 | |
CN113962858A (zh) | 一种多视角深度获取方法 | |
Tomasi et al. | Real-time architecture for a robust multi-scale stereo engine on FPGA | |
WO2020169983A1 (en) | Facial shape representation and generation system and method | |
CN104809695A (zh) | 一种数据去噪的方法及装置 | |
WO2014114635A1 (en) | Method and apparatus for performing super-resolution of single images | |
CN111294614B (zh) | 用于数字图像、音频或视频数据处理的方法和设备 | |
CN115641285A (zh) | 一种基于密集多尺度信息融合的双目视觉立体匹配方法 | |
CN104301740A (zh) | 一种红外图像9/7小波变换硬件加速电路 | |
Lee et al. | Automatic 2d-to-3d conversion using multi-scale deep neural network | |
CN111899326A (zh) | 一种基于gpu并行加速的三维重建方法 | |
CN115546373A (zh) | 一种基于FPGA和多分辨率哈希编码算法的NeRF渲染器及渲染方法 | |
EP4318404A1 (en) | System and apparatus suitable for use with a hypernetwork in association with neural radiance fields (nerf) related processing, and a processing method in association thereto | |
CN115082295B (zh) | 一种基于自注意力机制的图像编辑方法及装置 | |
Zhang et al. | ParaNet: Deep regular representation for 3D point clouds |
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 |