System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于图像处理相关,更具体地,涉及一种基于神经网络特征提取的硬件加速方法及系统。
技术介绍
1、superpoint算法是一种基于神经网络特征提取算法,可以解决两幅图像因发生平移、旋转、仿射变换等情况带来的匹配问题。superpoint算法可以将一幅图片转换为一个具有大量局部特征向量(描述符)的集合。相较于现有的特征提取算法如lift、sift和orb,superpoint拥有最高的最近邻平均精度、最高的匹配分数以及综合最优的单应性指标,展现出了强大的图像特征提取效果。该算法在图像发生仿射变化、3d视角变化、比例缩放、曝光度变化和噪声等条件下仍然能够获得较为可靠的匹配结果。因此,superpoint算法被广泛应用于智能自主移动机器人及自动驾驶的建图定位、匹配重建、运动分割跟踪、图像全景融合等需要图像识别匹配的场景。
2、现有实现superpoint算法的硬件加速系统能效低、资源开销大。2020年,清华大学的zhilin xu等人使用xilinx通用ai加速ip核dpu(deep learning processing unit)实现superpoint网络的卷积运算,随后重点对卷积后处理运算进行了减少运算量的处理。2022年,电子科技大学的ye liu等人同样使用dpu实现卷积运算,但对卷积网络进行了缩减与调整,使两个并行模块中的特征点检测模块先于描述符产生模块完成运算。上述的两个实现superpoint特征提取算法的硬件加速系统设计,相比于原算法的软件实现方案均加快了处理速度,但上述已有的硬件加速系统设计仍
3、现有的superpoint硬件加速系统不仅需要嵌入cpu来处理频繁的dpu ip卷积指令和层间卷积操作所引起的频繁的片外存储器访问,还需要通过cpu进行后处理操作,这导致了硬件加速系统能耗高、能效低。
4、现有的superpoint硬件加速系统存在冗余的后处理运算,nms模块中相邻像素点间的数据比较存在冗余的重复比较,进一步限制了能效的提升。
技术实现思路
1、针对现有技术的以上缺陷或改进需求,本专利技术提供了一种基于神经网络特征提取的硬件加速方法及系统,其目的在于提高特征提取的能效。
2、为实现上述目的,按照本专利技术的一个方面,提供了一种基于神经网络特征提取的硬件加速系统,其包括按流水线方式运行的编码卷积处理器、特征点卷积处理器、softmax&nms模块、特征图像素点选择器、选择性描述符卷积处理器、插值和归一化模块:
3、所述编码卷积处理器用于对输入图像进行特征提取得到共享特征图;
4、所述特征点卷积处理器用于对所述共享特征图进行卷积得到置信度特征图;
5、所述softmax&nms模块用于从所述置信度特征图中提取候选特征点;
6、所述特征图像素点选择器用于根据当前有效的特征点位置信息选择性地生成特征点所处的像素区域;
7、所述选择性描述符卷积处理器用于从所述共享特征图中读取位于所述像素区域的特征数据并进行描述符卷积,生成所述有效特征点的描述符;
8、所述插值与归一化结构用于对所述有效特征点的描述符进行插值和总体归一化,得到描述符特征图;
9、其中,所述编码卷积处理器、所述特征点卷积处理器和所述softmax&nms模块均在m个周期内完成对应的流水线任务,所述选择性描述符卷积处理器在n*m个周期内完成一个有效特征点描述符的生成,n>1。
10、在其中一些实施例中,所述编码卷积处理器计算得到一个输出像素特征所需的时间为m个周期,所述流水线方式包括:
11、所述编码卷积处理器在每m个周期内依次得到输出像素特征;
12、所述特征点卷积处理器在每m个周期内完成对一个输出像素特征的计算,得到第一计算结果;
13、所述softmax&nms模块在每m个周期内完成对一个第一计算结果的计算,得到第二计算结果;
14、所述选择性描述符卷积处理器在每n*m个周期内完成对一个第二计算结果的计算,得到对应特征点的描述符;
15、其中,n等于或近似于所有特征点区域面积之和与整体共享特征图的总面积之比。
16、在其中一些实施例中,所述编码卷积处理器包含按流水线运行的中间缓存存储器、卷积模块和最大池化模块,每个所述卷积模块包含数据选择器、乒乓窗口寄存器、权重存储器和偏置寄存器、乘法器、乘积寄存器、加法数、解复用器和累积寄存器;
17、所述权重存储器用于存储各乘法器进行乘法运算的权重;
18、所述偏置寄存器用于存储加法树进行累加的偏置;
19、所述数据选择器用于获取所述共享特征图中待计算的特征点并存入乒乓窗口寄存器;
20、所述多路选择器用于从所述乒乓窗口寄存器中提取待计算的特征点并行输入多个乘法器;
21、每个乘法器用于从所述权重存储器获取权重并与待计算的特征点进行乘积运算,乘积结果存入所述乘积寄存器;
22、所述加法树用于从所述乘积寄存器中获取乘积结果以及从所述偏置寄存器中获取偏置并进行累加;
23、所述解复用器用于将部分累加结果存入所述累积寄存器、将部分累加结果送回所述加法树进行下一轮的加法运算;
24、所述累积寄存器的结果存入后面所连接的中间缓存存储器。
25、在其中一些实施例中,所述特征图像素点选择器生成特征点所处的像素区域的过程包括:
26、确定当前有效特征点在所述置信度特征图中的坐标(i,j);
27、对坐标(i,j)分别除以k,得到坐标(x,y),k为置信度特征图边长与共享特征图边长之比;
28、对除法结果取整,得到中心像素点(x1,y1),根据除法结果的余数确定3个插值像素点:
29、若i÷k有余数,且j÷k有余数,则3个插值像素点分别为(x1,y1-1)、(x1-1,y1)和(x1-1,y1-1);
30、若i÷k有余数,且j÷k为整数,则3个插值像素点分别为(x1,y1+1)、(x1-1,y1)和(x1-1,y1+1);
31、若i÷k为整数,且j÷k有余数,则3个插值像素点分别为(x1,y1-1)、(x1+1,y1)和(x1+1,y1-1);
32、若i÷k为整数,且j÷k为整数,则3个插值像素点分别为(x1,y1+1)、(x1+1,y1)和(x1+1,y1+1);
33、确定当前有效特征点的像素区域,所述中心像素点和三个插值像素点位于所述像素区域的中心区域。
34、在其中一些实施例中,所述硬件加速系统还包含共享特征图缓存,用于存储所述共享特征图;
35、所述特征图像素点选择器包括fifo模块、重排序模块、插值模块、首地址产生模块、间隔产生模块以及特征点地址合成模块;
36、所述fifo模块用于缓存有效特征本文档来自技高网...
【技术保护点】
1.一种基于神经网络特征提取的硬件加速系统,其特征在于,包括按流水线方式运行的编码卷积处理器、特征点卷积处理器、SoftMax&NMS模块、特征图像素点选择器、选择性描述符卷积处理器、插值和归一化模块:
2.如权利要求1所述的硬件加速系统,其特征在于,所述编码卷积处理器计算得到一个输出像素特征所需的时间为M个周期,所述流水线方式包括:
3.如权利要求1所述的硬件加速系统,其特征在于,所述编码卷积处理器包含按流水线运行的中间缓存存储器、卷积模块和最大池化模块,每个所述卷积模块包含数据选择器、乒乓窗口寄存器、权重存储器和偏置寄存器、乘法器、乘积寄存器、加法数、解复用器和累积寄存器;
4.如权利要求1所述的硬件加速系统,其特征在于,所述特征图像素点选择器生成特征点所处的像素区域的过程包括:
5.如权利要求4所述的硬件加速系统,其特征在于,所述硬件加速系统还包含共享特征图缓存,用于存储所述共享特征图;
6.如权利要求1所述的硬件加速系统,其特征在于,所述SoftMax&NMS模块包括:
7.如权利要求
8.如权利要求6所述的硬件加速系统,其特征在于,所述NMS子模块包含第一选择器、第二选择器、第二比较与控制器;
9.如权利要求6至8任一项所述的硬件加速系统,其特征在于,所述设定范围为以当前中心区域有效值所处位置为中心的矩形窗口所覆盖的区域范围,所述矩形窗口的长宽尺寸均大于子区域的长宽尺寸且均小于子区域的长宽尺寸的2倍。
10.一种基于权利要求1至9任一项所述的硬件加速系统的硬件加速方法,其特征在于,包括:
...【技术特征摘要】
1.一种基于神经网络特征提取的硬件加速系统,其特征在于,包括按流水线方式运行的编码卷积处理器、特征点卷积处理器、softmax&nms模块、特征图像素点选择器、选择性描述符卷积处理器、插值和归一化模块:
2.如权利要求1所述的硬件加速系统,其特征在于,所述编码卷积处理器计算得到一个输出像素特征所需的时间为m个周期,所述流水线方式包括:
3.如权利要求1所述的硬件加速系统,其特征在于,所述编码卷积处理器包含按流水线运行的中间缓存存储器、卷积模块和最大池化模块,每个所述卷积模块包含数据选择器、乒乓窗口寄存器、权重存储器和偏置寄存器、乘法器、乘积寄存器、加法数、解复用器和累积寄存器;
4.如权利要求1所述的硬件加速系统,其特征在于,所述特征图像素点选择器生成特征点所处的像素区域的过程包括:
5.如权利要求4所述的硬件加速系统,其特征在于,所述硬件加速系统还包含共...
【专利技术属性】
技术研发人员:王超,银泽华,刘炳强,段子昂,王继鹏,沈梓煊,肖健,
申请(专利权)人:华中科技大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。