说明书一种面向目标检测的图像矩阵列转换加速方法.docx
《说明书一种面向目标检测的图像矩阵列转换加速方法.docx》由会员分享,可在线阅读,更多相关《说明书一种面向目标检测的图像矩阵列转换加速方法.docx(14页珍藏版)》请在第一文库网上搜索。
1、说明书一种面向目标检测的图像矩阵列转换加速方法技术领域本发明涉及对目标检测中图像矩阵列转换进行加速的方法,尤指基于深度学习的目标检测中前向传播中图像矩阵列转换加速方法。背景技术目标检测是计算机视觉和数字图像处埋的一个热门方向,广泛应用于机曙人导航、智能视频监控、工业检测、航空航天等诸多领域,通过计算机视觉减少对人力资本的消耗,具有重要的现实意义。因此,目标检测也就成为了近年来理论和应用的研究热点,它是图像处理和计算机视觉学科的重要分支,也是智能监控系统的核心部分,同时目标检测也是泛身份识别领域的一个基础性的算法,对后续的人脸识别、步态识别、人群计数、实例分割等任务起着至关重要的作用。基于深度学
2、习的目标检测主要包括三步:前后处理、图像矩阵列转换(im2co1,imagetoco1umn,本文后面均简称为im2co1)和矩阵矩阵乘(gemm)。前后处理包括权重置0、归一化和激活等。im2co1主要将图像数据中每个卷积核窗口内含有的数据转为列向量,最后按列排成新的矩阵。gemm主要实现权重矩阵和im2co1转换后的矩阵的乘积。im2co1和gemm实际上进行的是权重矩阵和图像矩阵的卷积运算,在目标检测中,通过卷积操作,如ktride为2时,相当于把输入图像缩小了-半,一批注思森11:Stride是什么东西?从而待im2co1处理的图像会越来越小。与此同时,要进行几次、几十次、甚至数百次卷
3、积操作,每一次均需要用到im2co1.下面5个原因导致迫切需要加快图像矩阵列转换:(1) gemm有开源或者商业化的优化实现,如openbias和MK1等算法库,计算速度可以提高数倍到数十倍。gemm占用计算时间下降,而im2co1可能占用30%-的计算时间,导致im2co1的转换速度成为提高目标检测速度的个关键问题。(2)对于实时性要求较高的应用,如基于深度学习的实时目标追踪等,每秒处理的图片可能达到30帧。每一帧的处理时间需要限制在33受秒以内,此时图像矩阵列转换就可能成为实时性关键的限制因素。(3)由于输入的多通道图像直在变化,im2co1需要把变化的多通道图像转换成目标检测中gemm需
4、要的数据,所以不能把im2co1转换后的数据进行保存,因此im2co1是目标检测中不可或缺的一步。(4)传统的im2co1的实现方法均比较原始,效率低。(5)在低功耗目标检测平台上,在同样检测速度下,基于高速im2co1可以节省部分能耗,这对于低功耗目标检测平台尤为重要。卷积运算如图1所示。图1中I卷积核为元素个数为3*3的方阵|。方阵为矩阵种特一二批注|用*|:卷积核?殊情形。卷积核方阵第一行为1、0、2,第二行为5、4、2,第三行为3、4、5此时卷积核大小ksize为3,即为卷积核方阵的维度。权重方阵的第一行为-1、Os1,第二行为1、0、1,第三行为1、0、1。滑移步长Stride指把卷
5、积核方阵向右或者向下移动的距离。对于图1,假设卷积核向右边滑移1个位置,则新的卷积核为图2所示。023420456图2:滑移一个元素时的卷积核批注I思森3:为什么要有填充大小?Pad存在的意义是什么?慎充大小pad在输入的多通道图像四周加0的层次的数目C假设一张单通道图像一有25个元素,分别为1至25,如图3所示。Pad为0时,仍然为如图3所示的矩阵。Pad为1时,即在矩阵的周围加上一层0,如图4所示。12345678910111213141516171819202122232425图3图像示例。0000000012345006789100011121314150016171819200021
6、2223242500000000图4:填充大小Pad为1的示意图。假设图5中卷积核大小ksize为3,滑移步长stride为1,填充大小pad为00经过im2co1处理后得到的矩阵如图6所示。图5中第2个卷积核中的元素用粗体标出,值分别为2、3、4,7、8、9,12、13、14,与之对应的为图2中粗体标出的第2列。类似的图5中第1个卷积核中的元素值为1、2、3,6、7、8,11、12、13,对应的就是图6中的第1列。123456789IOI11213141516171819202122232425图5:图像卷积核示例123623473458678117891289101311121316121
7、31417131415187811128912139101314121316171314171814151819171821221819222319202324131415181920232425图6:im2co1处理后得到的矩阵示例。在目标检测中常用的卷积核大小ksize为I、3、5、7等奇数,这样可以保护位置信息和填充时保持对称。整个卷积计算量与ksize的4次方成正比,所以卷积核大小不能太大。滑移步长Stride一般为1、2。滑移步长必须大于1,否则卷积核不滑动,不能检测卷积核外的图像。填充大小Pad般为0、1。Pad为0即为原图像,为1时是为了检测边界特征。Pad太大就会在边界上带来误
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 说明书 一种 面向 目标 检测 图像 矩阵 转换 加速 方法