基于相关性扫描匹配算法的硬件加速电路、芯片及机器人制造技术

技术编号:37305234 阅读:23 留言:0更新日期:2023-04-21 22:50
本发明专利技术公开基于相关性扫描匹配算法的硬件加速电路、芯片及机器人,所述硬件电路包括存储器模块、点云处理模块、栅格索引模块、状态机模块和互连总线;点云处理模块,还用于在状态机模块的控制下,从存储器模块读取当前存储的点云,再控制读取到的点云执行旋转变换;点云处理模块,用于在状态机模块的控制下,读取当前一次旋转变换的结果,再控制当前一次旋转变换的结果执行离散化,获得离散点云,然后将离散点云通过所述互连总线存储到存储器模块内;栅格索引模块,用于在状态机模块的控制下,从所述存储器模块内获取离散点云,再按照预设坐标偏移值和搜索步长,计算出离散点云映射到地图存储空间的索引值,并将索引值设置为栅格点的占用概率的读取地址。点的占用概率的读取地址。点的占用概率的读取地址。

【技术实现步骤摘要】
基于相关性扫描匹配算法的硬件加速电路、芯片及机器人


[0001]本专利技术涉及计算机加速器的
,尤其涉及基于相关性扫描匹配算法的硬件加速电路、芯片及机器人。

技术介绍

[0002]目前,基于激光雷达的移动机器人SLAM算法中,一般使用相关性扫描匹配算法将激光雷达采集的点云数据转换匹配到栅格地图上,相关性扫描匹配算法是一种基于概率的点云帧间匹配算法,能够在当前处理出的栅格地图中,设定的窗口作为一定尺寸的搜索模板,从预测位姿开始搜索,遍历所有可能存在的栅格位姿,通过变换矩阵将点云从扫描帧坐标系(激光坐标系)变换到当前处理出的栅格地图的坐标系下,并进行可能的栅格位置的占用概率的计算以获得该栅格位置的得分值,再基于得分值的计算结果完成机器人精确的定位。
[0003]相关性扫描匹配(CSM)算法是目前应用最广泛的扫描匹配算法之一,但是实时扫描匹配算法涉及到大量的循环计算,其产生的计算复杂度极高,很难将其部署于算力受限的嵌入式计算平台,成为机器人定位的实时性的瓶颈。

技术实现思路

[0004]针对机器人的激光雷达扫描生成的点云集合在软件层面执行前述相关性扫描匹配算法时,需要计算量较大的变换过程,本专利技术采用硬件加速的方式来加快计算获得相应栅格位置的概率值,具体的技术方案如下:
[0005]一种基于相关性扫描匹配算法的硬件加速电路,所述硬件加速电路与激光雷达存在电性连接关系;所述硬件加速电路包括存储器模块、点云处理模块、栅格索引模块、状态机模块和互连总线;存储器模块、点云处理模块、栅格索引模块和状态机模块都通过所述互连总线建立数据传输关系;点云处理模块,还用于在状态机模块的控制下,从存储器模块读取当前存储的点云,再控制读取到的点云执行旋转变换;点云处理模块,用于在状态机模块的控制下,读取当前一次旋转变换的结果,再控制当前一次旋转变换的结果执行离散化,再将离散化的结果设置为离散点云,然后将离散点云通过所述互连总线存储到存储器模块内;栅格索引模块,用于在状态机模块的控制下,从所述存储器模块内获取离散点云,再按照预设坐标偏移值和搜索步长,计算出离散点云映射到地图存储空间的索引值,并将索引值设置为相应栅格点的占用概率的读取地址;存储器模块,设置有地图存储空间,用于存储所述总线接口传输过来的待搜索栅格地图;存储器模块,用于存储激光雷达采集的一圈点云和预先设置出的三角函数值;所述当前存储的点云是激光雷达采集的一圈点云;其中,相应栅格点的占用概率是点云经过所述点云处理模块处理后,在待搜索栅格地图内相匹配的栅格点的概率值;在所述待搜索栅格地图内,栅格点的占用概率存在一个相匹配的索引值。
[0006]本技术方案利用状态机控制的硬件加速电路实现前述相关性扫描匹配算法,具体将栅格点的占用概率在所述待搜索栅格地图内的索引值计算拆分为先对读取到的点云旋
转变换,再对旋转变换的结果进行离散化处理,实现完成当前帧点云和待搜索栅格地图的扫描匹配,从而能够让离散点云坐标转化为在待搜索栅格地图内相匹配的栅格点的概率值的索引值,并成为所述待搜索栅格地图的栅格的概率值所在的地图存储空间内的索引值,便于CPU根据索引值读取该地图存储空间内中的对应栅格点的占用概率,成为SLAM算法的必需参数,提高机器人定位的效率和精度。
[0007]另一方面,当所述点云处理模块是设计为用于坐标系变换的流水线结构,所述栅格索引模块是设计为用于索引占用概率的流水线结构时,状态机能够在特定的时钟周期下调度所述点云处理模块读取最新旋转变换出的点云的过程和所述点云处理模块对原来的点云执行离散化的过程并行执行,或调度点云的横坐标和纵坐标同时变换且获得横坐标的离散结果和纵坐标的离散结果,还保证索引出的占用概率实时共享到所述互连总线上以便于CPU读取。
[0008]作为一种技术方案,所述点云处理模块包括点云旋转子模块;所述点云旋转子模块包括第一寄存器、第二寄存器、第一流水线结构和第二流水线结构;第一寄存器和第二寄存器都与第一流水线结构相连接,第一流水线结构用于在状态机模块的控制下,从存储器模块读取当前存储的点云的横坐标,再控制读取到的点云的横坐标执行旋转变换;第一寄存器和第二寄存器都与第二流水线结构相连接,第二流水线结构用于在状态机模块的控制下,从存储器模块读取当前存储的点云的纵坐标,再控制读取到的点云的纵坐标执行旋转变换;其中,所述互连总线将点云的横坐标传输给第一寄存器;所述互连总线传输给所述第一寄存器的点云的横坐标是来源于所述当前存储的点云的横坐标;其中,所述互连总线将点云的纵坐标缓存到第二寄存器;所述互连总线传输给所述第二寄存器的点云的纵坐标是来源于所述当前存储的点云的纵坐标;其中,第一流水线结构和第二流水线结构是并行的流水线结构。
[0009]进一步地,所述第一流水线结构包括第一点云乘法器、第二点云乘法器和点云减法器;第一点云乘法器和第二点云乘法器都属于乘法器,点云减法器属于减法器;第一点云乘法器的第一输入端与第一寄存器的输出端连接;第一点云乘法器的第二输入端,用于接收当前一次旋转变换所达到的旋转角度对应的余弦函数值,其中,当前一次旋转变换所达到的旋转角度是角度搜索步长与上一次旋转变换所达到的旋转角度的和值;第二点云乘法器的第一输入端与第二寄存器的输出端连接;第二点云乘法器的第二输入端,用于接收当前一次旋转变换所达到的旋转角度对应的正弦函数值;点云减法器的第一输入端与第一点云乘法器的输出端连接,点云减法器的第二输入端与第二点云乘法器的输出端连接;点云减法器用于将输出的差值传输给所述点云离散化子模块,并将点云减法器输出的差值设置为所述第一流水线结构输出的当前一次旋转变换出的横坐标结果。
[0010]进一步地,所述第二流水线结构包括第三点云乘法器、第四点云乘法器和点云加法器;第三点云乘法器和第四点云乘法器都属于乘法器,点云加法器属于加法器;第三点云乘法器的第一输入端与所述第一寄存器的输出端连接;第三点云乘法器的第二输入端,用于接收所述当前一次旋转变换所达到的旋转角度对应的正弦函数值;其中,当前一次旋转变换所达到的旋转角度是角度搜索步长与上一次旋转变换所达到的旋转角度的和值;第四点云乘法器的第一输入端与所述第二寄存器的输出端连接;第四点云乘法器的第二输入端,用于接收所述当前一次旋转变换所达到的旋转角度对应的余弦函数值;点云加法器的
第一输入端与第三点云乘法器的输出端连接,点云加法器的第二输入端与第四点云乘法器的输出端连接;点云加法器用于将输出的和值传输给所述点云离散化子模块,并将点云加法器输出的和值设置为所述第二流水线结构输出的当前一次旋转变换出的纵坐标结果。
[0011]前述两个技术方案以旋转矩阵为基本运算架构,仅使用加法器、减法器和乘法器构建出点云的横坐标和点云的纵坐标同时旋转变换的并行流水线结构,用于接收并处理软件预先计算出的步进旋转角度对应的三角函数值,不仅省去三角函数硬件计算模块,而且是遵循步进旋转的基础上控制点云旋转子模块迭代执行所述旋转变换,获得旋转变换后的横坐标和纵坐标,同时提供给所述点云离散化子模块以加快进行离散化操作。<本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于相关性扫描匹配算法的硬件加速电路,其特征在于,所述硬件电路与激光雷达存在电性连接关系;所述硬件电路包括存储器模块、点云处理模块、栅格索引模块、状态机模块和互连总线;存储器模块、点云处理模块、栅格索引模块和状态机模块都通过所述互连总线建立数据传输关系;点云处理模块,还用于在状态机模块的控制下,从存储器模块读取当前存储的点云,再控制读取到的点云执行旋转变换;点云处理模块,用于在状态机模块的控制下,读取当前一次旋转变换的结果,再控制当前一次旋转变换的结果执行离散化,再将离散化的结果设置为离散点云,然后将离散点云通过所述互连总线存储到存储器模块内;栅格索引模块,用于在状态机模块的控制下,从所述存储器模块内获取离散点云,再按照预设坐标偏移值和搜索步长,计算出离散点云映射到地图存储空间的索引值,并将索引值设置为相应栅格点的占用概率的读取地址;存储器模块,设置有地图存储空间,用于存储所述总线接口传输过来的待搜索栅格地图;存储器模块,用于存储激光雷达采集的一圈点云和预先设置出的三角函数值;所述当前存储的点云是激光雷达采集的一圈点云;其中,相应栅格点的占用概率是点云经过所述点云处理模块处理后,在待搜索栅格地图内相匹配的栅格点的概率值;在所述待搜索栅格地图内,栅格点的占用概率存在一个相匹配的索引值。2.根据权利要求1所述硬件加速电路,其特征在于,所述点云处理模块包括点云旋转子模块;所述点云旋转子模块包括第一寄存器、第二寄存器、第一流水线结构和第二流水线结构;第一寄存器和第二寄存器都与第一流水线结构相连接,第一流水线结构用于在状态机模块的控制下,从存储器模块读取当前存储的点云的横坐标,再控制读取到的点云的横坐标执行旋转变换;第一寄存器和第二寄存器都与第二流水线结构相连接,第二流水线结构用于在状态机模块的控制下,从存储器模块读取当前存储的点云的纵坐标,再控制读取到的点云的纵坐标执行旋转变换;其中,所述互连总线将点云的横坐标传输给第一寄存器;所述互连总线传输给所述第一寄存器的点云的横坐标是来源于所述当前存储的点云的横坐标;其中,所述互连总线将点云的纵坐标缓存到第二寄存器;所述互连总线传输给所述第二寄存器的点云的纵坐标是来源于所述当前存储的点云的纵坐标;其中,第一流水线结构和第二流水线结构是并行的流水线结构。3.根据权利要求2所述硬件加速电路,其特征在于,所述第一流水线结构包括第一点云乘法器、第二点云乘法器和点云减法器;第一点云乘法器和第二点云乘法器都属于乘法器,点云减法器属于减法器;第一点云乘法器的第一输入端与第一寄存器的输出端连接;第一点云乘法器的第二输入端,用于接收当前一次旋转变换所达到的旋转角度对应的
余弦函数值,其中,当前一次旋转变换所达到的旋转角度是角度搜索步长与上一次旋转变换所达到的旋转角度的和值;第二点云乘法器的第一输入端与第二寄存器的输出端连接;第二点云乘法器的第二输入端,用于接收当前一次旋转变换所达到的旋转角度对应的正弦函数值;点云减法器的第一输入端与第一点云乘法器的输出端连接,点云减法器的第二输入端与第二点云乘法器的输出端连接;点云减法器用于将输出的差值传输给所述点云离散化子模块,并将点云减法器输出的差值设置为所述第一流水线结构输出的当前一次旋转变换出的横坐标结果。4.根据权利要求2所述硬件加速电路,其特征在于,所述第二流水线结构包括第三点云乘法器、第四点云乘法器和点云加法器;第三点云乘法器和第四点云乘法器都属于乘法器,点云加法器属于加法器;第三点云乘法器的第一输入端与所述第一寄存器的输出端连接;第三点云乘法器的第二输入端,用于接收所述当前一次旋转变换所达到的旋转角度对应的正弦函数值;其中,当前一次旋转变换所达到的旋转角度是角度搜索步长与上一次旋转变换所达到的旋转角度的和值;第四点云乘法器的第一输入端与所述第二寄存器的输出端连接;第四点云乘法器的第二输入端,用于接收所述当前一次旋转变换所达到的旋转角度对应的余弦函数值;点云加法器的第一输入端与第三点云乘法器的输出端连接,点云加法器的第二输入端与第四点云乘法器的输出端连接;点云加法器用于将输出的和值传输给所述点云离散化子模块,并将点云加法器输出的和值设置为所述第二流水线结构输出的当前一次旋转变换出的纵坐标结果。5.根据权利要求3所述硬件加速电路,其特征在于,所述点云处理模块还包括点云离散子模块;所述点云离散化子模块包括第三流水线结构;第三流水线结构,用于在所述状态机模块的控制下,读取所述第一流水线结构输出的当前一次旋转变换出的横坐标结果,再控制所述当前一次旋转变换出的横坐标结果执行离散化,再将离散化的结果设置为离散点云的横坐标值,然后将离散点云的横坐标值通过所述互连总线存储到存储器模块内。6.根据权利要求5所述硬件加速电路,其特征在于,所述第三流水线结构包括第一离散加法器、第一离散减法器和第一离散乘法器;第一离散加法器属于加法器,第一离散减法器属于减法器,第一离散乘法器属于乘法器;第一离散加法器的第一输入端与所述第一流水线结构中的所述点云减法器的输出端连接,第一离散加法器的第一输入端用于接收所述当前一次旋转变换出的横坐标结果;第一离散加法器的第二输入端,用于接收所述互连总线传输过来的机器人位置的横坐标,其中,机器人位置的横坐标是预先计算出的机器人在世界坐标系下的横轴坐标值;第一离散加法器,用于控制所述当前一次旋转变换出的横坐标结果与机器人位置的横坐标相加,再将相加得到的和值输出,使得该和值成为点云转换到世界坐标系下的横轴坐标值;第一离散减法器的第一输入端与第一离散加法器的输出端连接;第一离散减法器的第
二输入端,用于接收所述互连总线传输过来的地图最大横坐标值;第一离散乘法器的第一输入端与第一离散减法器的输出端连接;第一离散乘法器的第二输入端,用于接收所述互连总线传输过来的地图分辨率的倒数;第一离散乘法器,用于通过所述互连总线将相乘得到的积值输出至所述存储器模块;第一离散乘法器输出的积值被配置为所述离散点云的横坐标值,确定完成横坐标的离散化,实现将当前存储的点云的横坐标值对齐到所述待搜索栅格地图的坐标系内,同时将第一离散乘法器输出的积值设置为所述第三流水线结构输出的离散化的结果。7.根据权利要求4所述硬件加速电路,其特征在于,所述点云离散化子模块还包括第四流水线结构;第四流水线结构,用于在所述状态机模块的控制下,读取所述第二流水线结构输出的当前一次旋转变换出的纵坐标结果,再控制所述当前一次旋转变换出的纵坐标结果执行离散化,再将离散化的结果设置为离散点云的纵坐标值,然后将离散点云的纵坐标值通过所述互连总线存储到存储器模块内。8.根据权利要求...

【专利技术属性】
技术研发人员:王珂肖刚军包敏杰马宝腾周和文许登科孙明
申请(专利权)人:哈尔滨工业大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1