摘要
近日,华中科技大学光学与电子信息学院博士生刘炳强、硕士生银泽华等同学在光学与电子信息学院集成电路工程系王超研究员的指导下,在智能机器人视觉识别芯片研究领域取得重要进展,设计了一款高帧率、高鲁棒性的特征提取硬件加速芯片。该项研究提出了快慢双时钟域策略、部分和复用策略、动态padding策略以及一系列的并行化设计方法,打破了国际学术界相关特征提取加速器的处理帧率以及计算效率记录,并大幅度地减小了硬件开销并提高了鲁棒性。相关成果发表在影响因子为4.14的国际电路与系统顶级期刊IEEE Transactions on Circuits and Systems I: Regular Papers(IEEE TCAS-I)上,论文题目为“An Energy-Efficient SIFT Based Feature Extraction Accelerator for High Frame-Rate Video Applications”。华中科技大学为论文第一和通讯作者单位,王超老师为论文通讯作者,合作者包括南洋理工大学集成电路中心主任郑元谨教授及其射频集成电路、微波/激光雷达芯片团队。
背景
在信息时代,机器视觉在实现智能社会方面发挥着重要作用。视觉特征提取是机器视觉的一项关键技术,该技术可以提取图像中具有鲜明特征的信息,诸如边缘、角点、圆以及图像形状等特征,这些特征是标定机器视觉系统模型参数和运用机器视觉技术进行实际应用的前提和基础。视觉特征提取技术广泛应用于自主移动智能机器人、无人驾驶和无人机等场景,这些应用场景对视觉特征提取算法的鲁棒性和帧率提出了巨大挑战。
具体来说,视觉特征提取算法包括SIFT(Scale-Invariant Feature Transform,尺度不变特征转换算法)、SURF(Speeded-Up Robust Features,加速稳健特征)、ORB(Oriented FAST and Rotated BRIEF,快速特征点提取描述)、HOG(Histogram of Oriented Gradient,方向梯度直方图)、LBP(Local Binary Patterns,局部二值模式)等。在SURF、ORB、HOG、LBP这些经典的特征提取算法中,SURF的鲁棒性相对较高,但是过于依赖主方向的选取,使得其方向变化鲁棒性不足。SIFT算法可以从图像中提取具有不变性的鲁棒局部特征,对方向变化、光照变化、噪声、杂物场景及遮挡影响等方面的鲁棒性最强,满足无人驾驶技术的需求。SIFT算法的运算量大从而导致的系统帧率低、功耗高的问题可以通过设计具有高并行度的专用硬件加速器芯片来解决。
图1 特征提取技术及算法的典型应用场景及领域
图2 基于SIFT算法的图像匹配示意图及不同特征提取算法的比较示意图
SIFT算法由关键点产生和描述符产生两个部分组成。其中,关键点产生部分包括高斯金字塔构建及关键点检测,描述符产生部分包括主方向计算及描述符生成。
图3 SIFT算法流程示意图
现状及挑战
国内外已有多个SIFT硬件加速器设计发表,总体的研究方向朝着更高性能、更高帧率、更高匹配精度以及更低功耗、更低运算量、更低硬件开销的方向发展。但是对于高性能SIFT硬件加速器的设计仍存在三个共性问题和设计挑战。第一个共性问题和设计挑战为SIFT运算量大,需全并行、全流水架构进行加速,但并行高斯金字塔构建带来了大量的硬件开销;第二个共性问题和设计挑战为高斯金字塔构建中部分特征点的丢失,使得加速器提取的特征鲁棒性变差;第三个共性问题和设计挑战为关键点检测和描述符生成部分的内部串行执行,两个部分交互执行使得加速器处理速度存在瓶颈,造成系统帧率受限。
图4 高性能SIFT硬件加速器的设计存在的三个共性问题和设计挑战
解决方案及设计实现
针对上述问题,王超研究员课题组提出了一系列新方法和新策略,实现了全并行的高能效SIFT硬件加速器芯片硬件架构。针对高斯金字塔构建硬件开销大的问题,提出了快慢双时钟域策略和部分和复用策略;针对高斯金字塔构建过程中的特征点丢失问题,提出了动态padding设计策略;针对交互执行及串行计算限制加速性能的问题,提出了一系列并行化的设计方法,即基于乒乓缓存实现了关键点检测和描述符生成部分的并行处理、基于像素梯度预计算实现了关键点检测和梯度幅值辅角的并行计算、以及创新性地提出了一种基于圆形关键点邻域的描述符生成算法,实现了主方向和描述符产生的高校并行计算。
图5 高性能SIFT硬件加速器的设计存在的三个共性问题和对应的设计策略以及设计实现
图6 提出的基于圆形关键点邻域的描述符生成算法,可以实现主方向计算和描述符产生过程的并行化计算
结果比较与讨论
王超研究员课题组所提全并行高能效SIFT硬件加速器芯片已在Xilinx Virtex UltraScale+评估板中实现。基于Mikolajczyk and Schmid标准数据集对提出的SIFT设计进行验证,基于RANSAC (RANdom SAmple Consensus)算法检查匹配点的正确性。所提SIFT设计的匹配结果优于相关工作,这主要得益于子区域重叠及padding增加鲁棒性,及优化的参数选择(如高斯卷积核尺寸、关键点邻域大小等)。与文献中相关FPGA及ASIC工作的硬件开销对比显示:该设计的硬件开销总体和现有水平相当,但通过实现了动态padding提高了鲁棒性,同时实现了100MHz时钟下 162fps@VGA的最高帧率和49.766 Mpixels/s的最高计算效率。该SIFT硬件加速器在基于180 nmCMOS工艺下实现了2.25mJ/frame的能量效率。
图7 基于所提SIFT算法的关键点提取与匹配结果图,基于标准数据集的匹配结果与相关工作的比较图
图8 SIFT硬件加速器处理性能比较表:该设计取得了国际SIFT硬件加速器芯片设计中最高帧率的学术记录、最高计算效率和能量效率,并采用了动态padding技术提高了鲁棒性。
图9 基于所提出的全并行高能效SIFT硬件加速器芯片的SoC验证平台
研究成果
自2019年回国后,王超研究员所组建的低功耗与智能集成电路研究室团队,将智能机器人技术与集成电路芯片技术相结合,开拓了新型智能机器人芯片关键技术研究的交叉学科新方向,和哈尔滨工业大学机器人国家重点实验室、苏州智能机器人研究院、南洋理工大学集成电路研究中心等国内外一流团队合作,取得了一系列的重要研究进展,初步解决了机器人芯片智能化低、能量消耗大、鲁棒性不好等痛点问题。近三年来,其研究成果在TCAS-I、JETCAS、CAS-M、A-SSCC等集成电路领域国际核心期刊和国际会议上发表智能机器人芯片相关学术论文10余篇,申请国家/国际发明专利7项。其中,其课题组相关研究成果连续2年(2020/2021)在IEEE固态电路学会旗舰会议A-SSCC发表了会议文章2篇,指导本科生参加依托相关项目连续2年(2021/2022)在全国大学生集成电路创新创业大赛获得国家一等奖1次、国家二等奖4次,指导研究生依托相关项目连续3年(2020/2021/2022)在全国研究生集成电路“创芯”大赛获得国家一等奖3次、国家二等奖1次。基于其初步研究成果,课题组已与黑芝麻科技等自动驾驶头部企业合作, 联合承担了武汉市重大项目,研究高鲁棒性、高能效视觉目标识别引擎电路技术,进行车规级高性能自动驾驶芯片设计关键技术的科技攻关。该领域的研究工作得到了国家重点研发计划项目(2019YFB1310000)、自主创新研究基金科研启动项目(2019kfyXJJS049)和武汉市科技重大专项“卡脖子”技术攻关项目(2022010402020045)的资助。
延伸阅读:
《新兴图像传感器技术、应用及市场-2021版》
《激光雷达(LiDAR)技术及市场-2022版》
《汽车激光雷达(LiDAR)专利全景分析-2022版》
《光谱成像市场和趋势-2022版》
《小型、微型和芯片级光谱仪技术及市场-2020版》