CN109948457B - 基于卷积神经网络和cuda加速的实时目标识别方法 - Google Patents
基于卷积神经网络和cuda加速的实时目标识别方法 Download PDFInfo
- Publication number
- CN109948457B CN109948457B CN201910142803.3A CN201910142803A CN109948457B CN 109948457 B CN109948457 B CN 109948457B CN 201910142803 A CN201910142803 A CN 201910142803A CN 109948457 B CN109948457 B CN 109948457B
- Authority
- CN
- China
- Prior art keywords
- detection
- network
- real
- target
- constructing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Image Analysis (AREA)
Abstract
本发明公开了一种基于卷积神经网络和CUDA加速的实时目标识别方法,首先构建卷积层用于卷积、激活和池化操作;然后构建感兴趣域猜测网络,生成目标检测框,初步定位目标区域;再进行感兴趣域池化;接着构建Sotfmax分类器,计算检测结果;然后构建CNN训练网络和检测网络,对特征映射和目标检测区域进行卷积运算;最后构建CUDA加速平台,实现样本训练加速和实时目标检测。本发明提高了运算速度和实时性功能,提高了检测率。
Description
技术领域
本发明属于计算机视觉领域,特别是一种基于卷积神经网络和CUDA加速的实时目标识别方法。
背景技术
卷积神经网络(Convolutional Neural Networks,CNN)在深度学习方面最先取得突破的领域是计算机视觉,也是应用最广泛的领域。在AlexNet网络结构出现之后,卷积神经网络被广泛应用,在目标检测、场景识别、图像语义分割等方面扮演着重要的角色。2012年至2015,VGGNet在AlexNet的基础上,探索了卷积神经网络的深度与其性能之间的关系,将单层网络替换为堆叠的3×3的卷积层和2×2的最大池化层,成功地构筑了11~19层深的卷积神经网络,减少卷积层参数的同时加深网络结构提高性能。现有技术由于滤波函数过多,导致进行反向传播时,中间的卷积层会占用很大的内存。
卷积神经网络作为深度学习的一种模型结构,是为识别二维形状而特殊设计的一种深度学习多层感知器,由于其权值共享以及局部感受等特点,使其相对于其他的深度学习模型例如深度信念网络等,具有更加高效提供特征的能力,减少了训练以及分类识别时所消耗的时间。同时,CNN通过卷积层和子采样层的相关运算来处理图像信息,对平移、缩放、倾斜和旋转等变形的敏感度低,更适用于无约束环境的视频目标识别。
CUDA是由英伟达公司在2007年推出的并行计算架构,应用此种加速架构的GPU能够同时运行上千条线程,这使得GPU十分适合处理数据密集型运算,例如深度学习模型算法。
发明内容
本发明的目的在于提供一种基于卷积神经网络和CUDA加速的实时目标识别方法,提高了计算精度,降低了计算时间,适用于监控环境。
实现本发明目的的技术解决方案为:一种基于卷积神经网络和CUDA加速的实时目标识别方法,包括以下步骤:
步骤1、构建卷积层;
步骤2、构建感兴趣域猜测网络结构,生成目标检测框;
步骤3、ROI池化;
步骤4、构建分类器,通过全连接层和Softmax分类计算检测结果;
步骤5、构建CNN网络;
步骤6、搭建CUDA平台,实现实时目标检测。
本发明与现有的技术相比,其显著的优点为:(1)提高了识别过程中对人的姿态、光照和角度变化的鲁棒性;(2)引入目标检测框,对于CNN网络检测起到修正的作用,提高了识别率;(3)更适用于实际的监控视频环境。
附图说明
图1是本发明的方法流程图。
图2是实施例卷积层的示意图。
图3是实施例目标检测框的示意图。
图4是实施例Softamax分类和边框回归的示意图。
图5是办发明采用ROI池化操作示意图。
图6是本发明CNN网络构建的示意图。
图7是本发明CUDA加速矩阵的结构示意图。
具体实施方式
下面结合附图对本发明做进一步详细说明。
一种基于卷积神经网络和CUDA加速的实时目标识别方法,包括以下步骤:
步骤1、卷积层构建。
步骤2、构建感兴趣域猜测网络结构,生成目标检测框。
步骤3、ROI(region of interest)池化,用来解决姿态,角度的问题。
步骤4、构建分类器,通过全连接层和Softmax分类计算检测结果。
步骤5、CNN网络构建。
步骤6、CUDA平台搭建实现实时目标检测。
进一步的,步骤1卷积层构建包括卷积、激活、池化操作,构建完整的卷积层。
进一步的,步骤2具体为:
步骤2.1采用多尺度方法构建锚点,生成9×4的矩阵,即9个矩形检测框,[x1,y1,x2,y2]分别代表矩形检测框四个顶点的坐标。9个矩形共3种形状。长宽比为[1:1,1:2,2:1]3种。
步骤2.2采用多输出竞争型分类器Softmax,进过1×1的卷积,提取出其中一个维度进行Softmax分类。得到的结果是多个项,将所有项进行归一化操作,使得所有输出项累加和为1,取输出最大的项(概率最高)为分类结果。最后通过矩阵进行尺寸的缩放回复原状。
步骤2.3检测边框回归。调整步骤2.1取得的检测框候选区域,使得其包含整个检测目标,采用矩阵变换对检测框进行调整。获得最小的损失函数。给定候选区域坐标A(Ax,Ay,Aw,Ah)(其中Ax,Ay,Aw,Ah分别表示矩形区域的四个顶点坐标,下同),图像中包含目标的实际坐标为G(Gx,Gy,Gw,Gh)寻找唯一映射f,使得f(Ax,Ay,Aw,Ah)≈(Gx,Gy,Gw,Gh),对应计算如下:
其中d为目标函数,w是要学习的参数,是给定坐标对应的特征向量,*表示x,y,w,h,每一个坐标系的变换对应一个目标函数。得到的损失函数:
其t是坐标的平移量。
步骤2.4综合步骤2.2、2.3所获得的检测框结果,计算出目标建议框,对所有的框进行前景分数排序,用算法根据设定好的阈值去除掉重叠的框,剩下的框进行索引排序,选择最终的框送入后续的ROI(region of interest)池化层。
进一步的,步骤3ROI池化,利用步骤2取得的特征映射对目标图像进行分割,每个被分割区域取最大值进行池化操作。
进一步的,步骤4构建分类器,通过全连接层和Softmax计算检测结果,使用SVM分类器输出目标检测概率,通过边框回归获得位置偏移量,回归得到更精准的目标检测框。在Softmax分类中引入Center Loss,减少目标分类的类内间距,提高不同目标的识别度。
进一步的,步骤5CNN网络构建,训练通过训练好的感兴趣域猜测网络收集回归边框;训练CNN网络,将所提取的特征映射作为rois传入网络,将感兴趣域猜测网络提取的目标检测框、检测概率和图像作为输入数据传入网络,获得分类结果和检测框的损失函数。CNN卷积层输入一张尺寸为M×N像素的图片,经过卷积层,图片输入大小变成(M/16)×(N/16),特征映射为(M/16)×(N/16)×512。ROI池化后特征映射为7×7×512。这两层特征映射作为全连接层的输入。优化全连接层的神经元个数将影响训练速度和拟合能力,通过多次实验,确定神经元数量和激活函数种类。
进一步的,步骤6CUDA平台搭建实现实时目标检测;输入视频序列,使用HaarAdaboost物体检测算法对每一帧的图像进行检测。主要利用了GPU的计算矩阵,提高了运算速度,实现了实时的监控环境。
下面结合实施例对本发明进行详细说明。
实施例
本发明采用了一种基于卷积神经网络和CUDA加速的目标检测识别方法,该模型构建了13层结构的CNN识别网络,在视频帧中通过Adaboost算法检测到目标输入所构建的CNN中进行识别,结合CUDA并行计算架构,对算法进行加速。该方法兼顾了目标检测识别的准确率和实时性。如图1所示,基于卷积神经网络和CUDA加速的目标检测识别方法,包括以下步骤:
第一步,卷积层的构建包括三个层:卷积、激活、池化。本发明的卷积部分采用13个卷积层、13个激活层和4个池化层。卷积层的示意图如图2所示。
第二步,构建感兴趣域猜测网络结构,生成目标检测框。采用多尺度方法构建anchors,生成9×4的矩阵,即9个矩形检测框,[x1,y1,x2,y2]分别代表矩形检测框四个顶点的坐标。9个矩形共3种形状。长宽比为[1:1,1:2,2:1]3种。如图3所示。
采用多输出竞争型分类器Softmax,经过1×1的卷积,提取出其中一个维度进行Softmax分类。得到的结果是多个项,将所有项进行归一化操作,使得所有输出项累加和为1,取输出最大的项(概率最高)为分类结果。最后通过矩阵进行尺寸的缩放回复原状。整个过程的流程如图4所示
检测边框回归。调整之前取得的检测框候选区域,使得其包含整个检测目标,采用矩阵变换对检测框进行调整。获得最小的损失函数。给定坐标A(Ax,Ay,Aw,Ah),目标检测区域坐标G(Gx,Gy,Gw,Gh)寻找唯一映射f,使得f(Ax,Ay,Aw,Ah)≈(Gx,Gy,Gw,Gh),对应计算如下:
得到的损失函数:
综合所获得的检测框结果,计算出目标建议框,对所有的框进行前景分数排序,用NMS算法根据设定好的阈值去除掉重叠的框,剩下的框进行索引排序,选择最终的框送入后续的ROI池化层。
第三步,ROI池化,用来解决姿态,角度的问题,匹配感兴趣域猜测网络输出与CNN网络的输入。首先输入固定大小的特征映射,接着对感兴趣域猜测网络输出得到的ROI进行分割,最后取得每个区域最大值作为池化结果。池化过程和池化结果如图5所示。
第四步,构建分类器,通过全连接层和Softmax计算检测结果,使用SVM分类器输出目标检测概率,通过边框回归获得位置偏移量,回归得到更精准的目标检测框。如图所示。在Softmax分类中引入Center Loss,减少目标分类的类内间距,提高不同目标的识别度。
第五步,CNN网络构建,如图6所示。
步骤1通过训练好的感兴趣域猜测网络收集回归边框;
步骤2训练CNN网络,将所提取的作特征映射为rois传入网络,将感兴趣域猜测网络提取的目标检测框、检测概率和图像作为数据传入网络,获得分类结果和检测框的损失函数。
CNN卷积层输入一张尺寸为M×N像素的图片,经过卷积层,图片输入大小变成(M/16)×(N/16),为60×40,特征映射为(M/16)×(N/16)×512。ROI池化后特征映射为7×7×512。这两层特征映射作为全连接层的输入。全连接层的神经元个数将影响训练速度和拟合能力,通过多次实验,确定前两层全连接层神经元数量为9216,后两层全连接层神经元数量为4096,激活函数使用修正线性单元,能得到较好的结果。
调整CNN网络的全连接层,在不降低识别率的情况下减少全连接的维数,从而减少整个网络的特征参数,优化网络。
第六步CUDA平台搭建实现实时目标检测,具体工作过程:
输入视频序列,使用Haar Adaboost物体检测算法对每一帧的图像进行检测。采用GPU结构并行的方式对目标检测算法进行加速。GPU相对于CPU有更多的计算矩阵,而CUDA技术通过对GPU的调度实现了快速的矩阵运算,包括矩阵乘法和矩阵转置,对于CNN这类采用了卷积算法的网络,有很大的加速作用。其中Thread为线程,多个Thread组成一个Block,多个Block组成一个Grid。在执行时将图像数据进行分组,每组中通过多个线程进行并行处理,最终输出结果。在网络训练和目标检测的过程中,均采用了CUDA加速方法,从而提高了运算速度,保证了其实时性。如图7所示
实验环境:CPU采用Intel i5 3350;GPU采用NVIDIA GeForce GTX 1050Ti;内存Kingston DDR4 2400 8G;操作系统Window10。
为了证明本发明网络的有效性,选用MIT交通数据集、CUHK广场数据集、PETS 2007数据集,采用随机梯度下降算法更新卷积神经网络的参数,学习上下文信息成功训练了CNN网络,主要针对监控场景的行人检测,对比UOLF、AAPD和ASVM网络的检测率,结果如表1。
表1对比不同行人检测方法在三个数据集上的检测率
在CUDA加速的情况下,每张图片的检测时间在0.2-0.3s之间,平均检测时间为0.2234s,因此对比检测率的提升和检测时间的缩短,本发明满足了目标检测效率的提升和实时性的要求。
Claims (4)
1.一种基于卷积神经网络和CUDA加速的实时目标识别方法,其特征在于,包括以下步骤:
步骤1、构建卷积层;
步骤2、构建感兴趣域猜测网络结构,生成目标检测框;具体为:
步骤2.1,采用多尺度方法构建锚点,生成9×4的矩阵,即9个矩形检测框,[x1,y1,x2,y2]分别代表矩形检测框四个顶点的坐标;
步骤2.2,采用多输出竞争型分类器Softmax,进过1×1的卷积,提取出其中一个维度进行Softmax分类;得到的结果是多个项,将所有项进行归一化操作,使得所有输出项累加和为1,取输出最大的项为分类结果;最后对分类取得对图像进行缩放,统一到固定大小;
步骤2.3,检测边框回归;调整步骤2.1取得的检测框候选区域,使得其包含整个检测目标,采用矩阵变换对检测框进行调整,获得最小的损失函数;给定候选区域坐标A(Ax,Ay,Aw,Ah),其中Ax,Ay,Aw,Ah分别表示矩形区域的四个顶点坐标,图像中包含目标的实际坐标为G(Gx,Gy,Gw,Gh)寻找唯一映射f,使得f(Ax,Ay,Aw,Ah)≈(Gx,Gy,Gw,Gh),对应计算如下:
其中d为目标函数,w是要学习的参数,是给定坐标对应的特征向量,*表示x,y,w,h,每一个坐标系的变换对应一个目标函数,得到的损失函数:
其中t是坐标的平移量;
步骤2.4,综合步骤2.2、步骤2.3所获得的检测框结果,计算出目标建议框,对所有的框进行前景分数排序,用NMS算法根据设定好的阈值去除掉重叠的框,剩下的框进行索引排序,选择最终的框送入后续的ROI池化层;
步骤3、ROI池化;
步骤4、构建分类器,通过全连接层和Softmax分类计算检测结果;
步骤5、构建CNN网络;具体为:
步骤5.1、通过训练好的感兴趣域猜测网络收集回归边框;
步骤5.2、训练CNN网络,将所提取的作特征映射为rois传入网络,将感兴趣域猜测网络提取的目标检测框、检测概率和图像作为数据传入网络,获得分类结果和检测框的损失函数;
CNN卷积层输入一张尺寸为M×N像素的图片,经过卷积层,图片输入大小变成(M/16)×(N/16),为60×40,特征映射为(M/16)×(N/16)×512;ROI池化后特征映射为7×7×512;这两层特征映射作为全连接层的输入;前两层全连接层神经元数量为9216,后两层全连接层神经元数量为4096,激活函数使用修正线性单元;
调整CNN网络的全连接层,在不降低识别率的情况下减少全连接的维数,从而减少整个网络的特征参数;
步骤6、搭建CUDA平台,实现实时目标检测;具体工作过程:
输入视频序列,使用Haar Adaboost物体检测算法对每一帧的图像进行检测;采用GPU结构并行的方式对目标检测算法进行加速;其中Thread为线程,多个Thread组成一个Block,多个Block组成一个Grid;在执行时将图像数据进行分组,每组中通过多个线程进行并行处理,最终输出结果;在网络训练和目标检测的过程中,均采用CUDA加速方法。
2.根据权利要求1所述的基于卷积神经网络和CUDA加速的实时目标识别方法,其特征在于,步骤1中卷积层构建包括卷积、激活、池化操作,构建完整的卷积层。
3.根据权利要求1所述的基于卷积神经网络和CUDA加速的实时目标识别方法,其特征在于,步骤3中ROI池化具体为:利用特征映射对目标图像进行分割,每个被分割区域取最大值进行池化操作。
4.根据权利要求1所述的基于卷积神经网络和CUDA加速的实时目标识别方法,其特征在于,步骤6采用CUDA技术进行平台搭建,实时监测目标数据;输入视频序列,使用HaarAdaboost物体检测算法对每一帧的图像进行检测。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910142803.3A CN109948457B (zh) | 2019-02-26 | 2019-02-26 | 基于卷积神经网络和cuda加速的实时目标识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910142803.3A CN109948457B (zh) | 2019-02-26 | 2019-02-26 | 基于卷积神经网络和cuda加速的实时目标识别方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109948457A CN109948457A (zh) | 2019-06-28 |
CN109948457B true CN109948457B (zh) | 2023-07-18 |
Family
ID=67006901
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910142803.3A Active CN109948457B (zh) | 2019-02-26 | 2019-02-26 | 基于卷积神经网络和cuda加速的实时目标识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109948457B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110930420B (zh) * | 2019-11-11 | 2022-09-30 | 中科智云科技有限公司 | 基于神经网络的稠密目标背景噪声抑制方法及设备 |
CN111160535B (zh) * | 2019-12-31 | 2024-01-30 | 北京计算机技术及应用研究所 | 基于Hadoop的DGCNN模型加速方法 |
CN112861715A (zh) * | 2021-02-05 | 2021-05-28 | 邵阳学院 | 一种图像识别方法和图像识别系统 |
CN112556682B (zh) * | 2021-02-07 | 2023-06-23 | 天津蓝鳍海洋工程有限公司 | 一种水下复合传感器目标自动检测算法 |
CN113065402B (zh) * | 2021-03-05 | 2022-12-09 | 四川翼飞视科技有限公司 | 一种基于变形注意力机制的人脸检测方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106682574A (zh) * | 2016-11-18 | 2017-05-17 | 哈尔滨工程大学 | 一维深度卷积网络的水下多目标识别方法 |
CN108416394A (zh) * | 2018-03-22 | 2018-08-17 | 河南工业大学 | 基于卷积神经网络的多目标检测模型构建方法 |
-
2019
- 2019-02-26 CN CN201910142803.3A patent/CN109948457B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106682574A (zh) * | 2016-11-18 | 2017-05-17 | 哈尔滨工程大学 | 一维深度卷积网络的水下多目标识别方法 |
CN108416394A (zh) * | 2018-03-22 | 2018-08-17 | 河南工业大学 | 基于卷积神经网络的多目标检测模型构建方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109948457A (zh) | 2019-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109948457B (zh) | 基于卷积神经网络和cuda加速的实时目标识别方法 | |
Lin et al. | Convolution in the cloud: Learning deformable kernels in 3d graph convolution networks for point cloud analysis | |
CN109741318B (zh) | 基于有效感受野的单阶段多尺度特定目标的实时检测方法 | |
WO2018052586A1 (en) | Method and system for multi-scale cell image segmentation using multiple parallel convolutional neural networks | |
CN111242208A (zh) | 一种点云分类方法、分割方法及相关设备 | |
Nguyen et al. | Yolo based real-time human detection for smart video surveillance at the edge | |
Li et al. | LPSNet: a novel log path signature feature based hand gesture recognition framework | |
CN111753682B (zh) | 一种基于目标检测算法的吊装区域动态监控方法 | |
CN110991444A (zh) | 面向复杂场景的车牌识别方法及装置 | |
CN111242122A (zh) | 一种轻量级深度神经网络旋转目标检测方法和系统 | |
Karim et al. | A brief review and challenges of object detection in optical remote sensing imagery | |
CN114419732A (zh) | 基于注意力机制优化的HRNet人体姿态识别方法 | |
Hu et al. | RGB-D image multi-target detection method based on 3D DSF R-CNN | |
Han et al. | A deep lightweight convolutional neural network method for real-time small object detection in optical remote sensing images | |
CN114782859A (zh) | 一种目标行为时空感知定位模型的建立方法及应用 | |
Ahmad et al. | Embedded deep vision in smart cameras for multi-view objects representation and retrieval | |
Chua et al. | Visual IoT: ultra-low-power processing architectures and implications | |
Sun et al. | An object detection network for embedded system | |
Gawande et al. | Scale invariant mask r-cnn for pedestrian detection | |
Li et al. | Research on hybrid information recognition algorithm and quality of golf swing | |
CN106846366B (zh) | 使用gpu硬件的tld视频运动目标跟踪方法 | |
Dalara et al. | Entity Recognition in Indian Sculpture using CLAHE and machine learning | |
CN114565753A (zh) | 一种基于改进YOLOv4网络的无人机小目标识别方法 | |
CN113420760A (zh) | 一种基于分割和形变lstm的手写体蒙古文检测和识别方法 | |
Zhou et al. | Design of lightweight convolutional neural network based on dimensionality reduction module |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB03 | Change of inventor or designer information | ||
CB03 | Change of inventor or designer information |
Inventor after: Kou Ge Inventor after: Luo Qi Inventor before: Luo Qi Inventor before: Kou Ge |
|
GR01 | Patent grant | ||
GR01 | Patent grant |