当前位置: 首页 > 专利查询>中山大学专利>正文

基于DSP芯片与量化模型的三维物体识别方法技术

技术编号:23766005 阅读:24 留言:0更新日期:2020-04-11 19:52
本发明专利技术涉及一种基于DSP芯片与量化模型的三维物体识别方法。包括三维数据采集器、三维数据特征提取器以及特征解码器,三维数据采集器为RGB‑D摄像头,拍摄后得到画面中物体的深度信息,最终合成为点云数据;将该点云数据输入到三维数据特征提取器中,特征提取器中的量化参数模型存储模块用于存量化模型的储参数,利用DSP并行计算加速模块加速特性,快速完成深度神经网络中卷积、池化、残差操作,得到输入数据的特征;特征解码器根据模型训练时对特征加密的方式反向解码,得到需要的特征格式。发明专利技术中的特征提取器可以提取三维数据的特征,并且可以通过数据结构优化和硬件加速的方法加速特征提取的速度。

3D object recognition method based on DSP chip and quantization model

【技术实现步骤摘要】
基于DSP芯片与量化模型的三维物体识别方法
本专利技术属于计算机视觉领域,更具体地,涉及一种基于DSP芯片与量化模型的三维物体识别方法。
技术介绍
将模型参数量化表示,称为量化模型,模型文件大小可以减少约3/4,同时可以将浮点运算转换为整型运算,理论上可以提高特征提取的速率。现有的基于DSP的特征提取器,利用DSP芯片可以并行计算的优势,相较于ARM架构的CPU,可以更快地完成深度网络中各种层的操作,包括卷积层、池化层、残差层等。使用点云数据进行物体识别,物体识别的方法有很多种,有使用二维数据的和使用三维点云数据的,该类专利技术或使用模式识别,或采用深度学习方法对对应的物体数据进行特征提取,最终完成识别任务。三维数据的特征提取器,该类专利技术的输入不是传统的图像数据(包含xy平面坐标,每个像素点的颜色),而是三维数据,如点云(包含xyz三维坐标,可能包含颜色和其他信息),不同于平面数据,点云数据是连续数据,若将其离散化,则非常稀疏,因此现有的高效方法常常是直接对原始点云信息进行操作,得到输入点云的特征值或特征向量。现有专利技术仅分别有上述部分,而未有将它们进行整合使用的,尽管这些技术的领域和方向不尽相同。现有的技术既没有量化的三维数据特征提取器,也没有基于DSP的三维数据特征提取器。之所以尚未有量化的三维数据特征提取器,是因为现有的网络量化结构多基于处理传统的二维图像设计,而要处理三维数据的网络结构的量化结构需要一些变体,如需要处理混合32位整形数和8位整形数、除了卷积外的一般运算的量化计算方式,现今尚未有统一的处理方式。之所以尚未有基于DSP的三维数据特征提取器,是尚未有通用的、成型的、开源的基于DSP芯片的深度学习框架,其开发门槛和难度较大,需要准确地把需要加速的内存数据写入到DSP缓存中,才能利用DSP并行运算的硬件加速的优势。
技术实现思路
本专利技术为克服上述现有技术中的缺陷,提供一种基于DSP芯片与量化模型的三维物体识别方法,使得专利技术中的特征提取器可以提取三维数据的特征,并且可以通过数据结构优化和硬件加速的方法加速特征提取的速度。为解决上述技术问题,本专利技术采用的技术方案是:一种基于DSP芯片与量化模型的三维物体识别方法,包括三维数据采集器、三维数据特征提取器以及特征解码器,所述的三维数据特征提取器包括量化参数模型存储模块和DSP并行计算加速模块;所述的三维数据采集器为RGB-D摄像头,拍摄后得到画面中物体的深度信息,最终合成为点云数据;将该点云数据输入到三维数据特征提取器中,特征提取器中的量化参数模型存储模块用于存量化模型的储参数,储存的参数为8bit整型参数;利用DSP并行计算加速模块加速特性,最高可以并行完成相较于x86框架下的32条指令,快速完成深度神经网络中卷积、池化、残差操作,最后得到输入数据的特征;特征解码器根据模型训练时对特征加密的方式反向解码,得到需要的特征格式,如识别任务是将特征解码,得到长度为K的特征向量,以及最大特征值的索引,对照索引-标签表即可得到该数据的标签。在本专利技术中,三维数据采集器获得三维数据后,输入到三维数据特征提取器中,得到特征,最后输入到特征解码器中,即可完成计算机视觉的任务,如识别、检测、分割。三维数据的特征提取器加入DSP并行计算的硬件加速特性,以及特征提取器模型量化的特性,可以加快特征提取的速率,同时参数模型文件也会缩小,使其能够在手机等移动终端上可以直接运行该特征提取器。使用三维点云数据的特征提取器的目的是,该方法输入和保存物体的三维数据,而不是二维像素数据,这样可以保护用户的隐私——二维的图像数据可以通过人类自身的阅历能力轻易地解读出一些可能带有隐私的内容,比如物体带有的纹理信息,以及背景中可能带有的隐私内容等,而三维的物体信息带有的细节相较于二维信息更少,且设定好采集范围的三维数据采集器不会采集到背景信息。7.进一步的,在使用量化参数模型存储模块存储参数时,需要获取量化模型,量化模型的获取方法包括训练时量化和训练后量化;当为训练时量化是的步骤包括:首先,在模型训练时调用Tensorflow的tf.contrib.quantize.create_training_graph接口并实现该接口未支持的在一般操作后加入伪量化节点的功能,之后所有的运算操作后都有一个伪量化节点,伪量化节点储存上一个节点的最大值和最小值,使用这两个值,利用映射公式:Q=R/scale+zero_pt,即可将参数由32位浮点数存储的方式转换成用8位整型数的存储方式,其中R代表32位浮点数,Q代表8位整型数,scale是映射缩放,scale=(Vmax-Vmin)/255,zero_pt是映射零点,zero_pt=-255*Vmin/(Vmax–Vmin)=-Vmin/scale,其中Vmax与Vmin从伪量化节点中获取,255为8位无符号整型数可表示的最大值;然后,在模型参数固定时,调用tf.contrib.quantize.create_eval_graph接口并实现该接口未支持的在一般操作后加入伪量化节点的功能。随后进行模型参数固定,参数固定后,调用tococonvert脚本,结合一般节点与其对应的伪量化节点的信息,得到量化模型;当为训练后量化时的步骤包括:首先,在模型训练阶段使用一般的训练方法;然后,在模型参数固定时,在权重、激活、矩阵乘法、加法等节点之后人工地加入伪量化节点,再向模型喂入部分训练数据以获得伪量化节点需要记录的关于上一节点的最大值和最小值;随后进行模型参数固定,参数固定后,调用tococonvert脚本,结合一般节点与其对应的伪量化节点的信息,得到量化模型。进一步的,所述的DSP并行计算加速模块中DSP并行加速的方法包括:使用DSP指令时,使用直接内存访问DMA技术,将需要运算的数据直接放入DSP芯片内存中,运算结束后再次使用DMA将数据从DSP内存提取到设备内存中,其中,使用ARM框架的CPU与DSP芯片同时工作,即在DSP计算时,CPU同时在DMA,提取上一次DSP运算的结果,并准备将下一次DSP需要使用的数据写入DSP内存中,一旦DSP芯片计算完毕,则立刻执行DMA写入,这样可以立刻开始下一次的计算,提高DSP芯片利用率。进一步的,基于DSP芯片与量化模型的三维物体识别方法,具体包括以下步骤:S1.采集训练数据,采集方法为使用三维数据采集器采集物体的深度信息,去除背景和噪声信息后得到物体的点云数据;S2.训练模型,使用可以端对端处理点云数据的深度学习网络结构对训练数据进行训练,得到模型;训练数据为步骤S1中采集的数据,网络结构为DGCNN的baseline变体;S3.量化模型,步骤S2中使用的是伪量化节点,其本质是浮点运算,即非量化模型,在步骤S3中会将伪量化节点的信息合并到上一节点,真正地量化模型,将模型参数的表示方法由32位浮点数变为8位整数,压缩模型大小的同时提高前向传播计算的效率;S4.建立索引-标签表,步骤S1中采集数据时同时标识该数据的类别,使用一个自然数本文档来自技高网
...

【技术保护点】
1.一种基于DSP芯片与量化模型的三维物体识别方法,其特征在于,包括三维数据采集器、三维数据特征提取器以及特征解码器,所述的三维数据特征提取器包括量化参数模型存储模块和DSP并行计算加速模块;所述的三维数据采集器为RGB-D摄像头,拍摄后得到画面中物体的深度信息,最终合成为点云数据;将该点云数据输入到三维数据特征提取器中,特征提取器中的量化参数模型存储模块用于存量化模型的储参数,利用DSP并行计算加速模块加速特性,快速完成深度神经网络中卷积、池化、残差操作,最后得到输入数据的特征;特征解码器根据模型训练时对特征加密的方式反向解码,得到需要的特征格式。/n

【技术特征摘要】
1.一种基于DSP芯片与量化模型的三维物体识别方法,其特征在于,包括三维数据采集器、三维数据特征提取器以及特征解码器,所述的三维数据特征提取器包括量化参数模型存储模块和DSP并行计算加速模块;所述的三维数据采集器为RGB-D摄像头,拍摄后得到画面中物体的深度信息,最终合成为点云数据;将该点云数据输入到三维数据特征提取器中,特征提取器中的量化参数模型存储模块用于存量化模型的储参数,利用DSP并行计算加速模块加速特性,快速完成深度神经网络中卷积、池化、残差操作,最后得到输入数据的特征;特征解码器根据模型训练时对特征加密的方式反向解码,得到需要的特征格式。


2.根据权利要求1所述的基于DSP芯片与量化模型的三维物体识别方法,其特征在于,在使用量化参数模型存储模块存储参数时,需要获取量化模型,量化模型的获取方法包括训练时量化和训练后量化;
当为训练时量化是的步骤包括:首先,在模型训练时调用Tensorflow的tf.contrib.quantize.create_training_graph接口并实现该接口未支持的在一般操作后加入伪量化节点的功能,之后所有的运算操作后都有一个伪量化节点,伪量化节点储存上一个节点的最大值和最小值,使用这两个值,利用映射公式:Q=R/scale+zero_pt,即可将参数由32位浮点数存储的方式转换成用8位整型数的存储方式,其中R代表32位浮点数,Q代表8位整型数,scale是映射缩放,scale=(Vmax-Vmin)/255,zero_pt是映射零点,zero_pt=-255*Vmin/(Vmax–Vmin)=-Vmin/scale,其中Vmax与Vmin从伪量化节点中获取,255为8位无符号整型数可表示的最大值;
然后,在模型参数固定时,调用tf.contrib.quantize.create_eval_graph接口并实现该接口未支持的在一般操作后加入伪量化节点的功能。随后进行模型参数固定,参数固定后,调用tococonvert脚本,结合一般节点与其对应的伪量化节点的信息,得到量化模型;
当为训练后量化时的步骤包括:首先,在模型训练阶段使用一般的训练方法;
然后,在模型参数固定时,在权重、激活、矩阵乘法、加法等节点之后人工地加入伪量化节点,再向模型喂入部分训练数据以获得伪量化节点需要记录的关于上一节点的最大值和最小值;随后进行模型参数固定,参数固定后,调用tococonvert脚本,结合一般节点与其对应的伪量化节点的信息,得到量化模型。


3.根据权利要求2所述的基于DSP芯片与量化模型的三维物体识别方法,其特征在于,所述的DSP并行计算加速模块中DSP并行加速的方法包括:使用DSP指令时,使用直接内存访问DMA技术,将需要运算的数据直接放入DSP芯片内存中,运算结束后再次使用DMA将数据从DSP内存提取到设备内存中,其中,使用ARM框架的CPU与DSP芯片同时工作,即在DSP计算时,CPU同时在DMA,提取上一次DSP运算的结果,并准备将下一次DSP需要使用的数据写入DSP内存中,一旦DSP芯片计算完毕,则立刻执行DMA写入。


4.根据权利要求3所述的基于DSP芯片与量化模型的三维物体识别方法,其特征在于,基于DSP芯片与量化模型的三维物体识别方法,具体包括以下步骤:
S1.采集训练数据,采集方法为使用三维数据采集器采集物体的深度信息,去除背景和噪声信息后得到物体的点云数据;
S2.训练模型,使用可以端对端...

【专利技术属性】
技术研发人员:王资朝红阳
申请(专利权)人:中山大学
类型:发明
国别省市:广东;44

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

1