2024年5月3日发(作者:)

(19)中华人民共和国国家知识产权局

(12)发明专利说明书

(21)申请号 CN2.0

(22)申请日 2013.07.19

(71)申请人 西安电子科技大学

地址 710071 陕西省西安市太白南路2号西安电子科技大学

(72)发明人 袁通 刘志镜 王韦桦 刘慧 邱龙滨 曹文涛 赵纬龙 赵宏伟 李雨楠 熊静 张小骏

王梓 曹志高

(74)专利代理机构 北京科亿知识产权代理事务所(普通合伙)

代理人 汤东凤

(51)

(10)申请公布号 CN 103336959 A

(43)申请公布日 2013.10.02

权利要求说明书 说明书 幅图

(54)发明名称

一种基于GPU多核并行加速的车

辆检测方法

(57)摘要

本发明公开了一种基于GPU多核

并行加速的车辆检测方法,其步骤包括计

算机视觉、特征提取、目标相似度检测以

及Map-Reduce并行计算框架。本发明有益

效果在于,通过Map-Reduce的GPU并行

计算提高了HOG特征提取算法效率,显著

缩短了车辆检测所需时间,可用于自动化

的智能交通和城市管理领域。

法律状态

法律状态公告日

2022-07-08

法律状态信息

未缴年费专利权终止IPC(主分

类):G06K 9/00专利

号:ZL2申请

日:20130719授权公告

日:20160928

法律状态

专利权的终止

权 利 要 求 说 明 书

1.一种基于GPU多核并行加速的车辆检测方法,其特征在于,

(1)由CPU获得待检测的图像并复制到GPU内存,其中,将

(2)利用硬件纹理单元对所述图像进行降采样,然后对所述降

(3)计算梯度值,其中,将一个检测窗口划分为若干个区块,

采样后的图像进行伽马校验;

分配的内存设置为不可换页可提高传输速度;

所述方法包括以下步骤:

在每个区块内,使用GPU并行计算技术,利用水平梯度卷积算子

[-1,0,1]与垂直梯度卷积算

-

10

1分别计算水平方向

梯度与和垂直方向

相位,按照相位值最

值,并记录;

(4)计算方向梯度直方图,其中,根据步骤(3)中得到的结果,

(5)归一化方向梯度直方图,其中,在Map函数阶段检测窗口

使用基于MapReduce模型,在Map函数阶段对检测窗口进行子胞

元划分,并使用二次线性插值求子胞元内的方向梯度直方图,在

梯度,进而计算幅值与相位,根据得到的幅值与

近的两个bin之间的相位差为权值分解幅

Reduce函数阶段对相同区块内的子胞元方向梯度直方图进行合并,

得出区块内的方向梯度直方图;

进行区块划分,对区块内方向直方图数组求一个归一化系数,并该数

组每个元素乘以这个系数,具体是归一化系数通过求数组内加权平方

和的开平方的倒数得到;

(6)线性SVM计算,其中,将归一化的结果交由CPU进行合

(7)判断是否遍历完全,如果遍历完,退出GPU运算模式,

有遍历完,转到步骤(2);

(8)根据步骤(6)计算出的SVM值与预设的阈值对比,如果

2.根据权利1所述的车辆检测方法,其特征在于,所述步骤(4)

(1)调度程序将显卡内存中的输入数据input数组分为n块,

小为

(2)每个线程执行MapCount函数,其中MapCount函数输出

Map函数产生的中间键的个数i、Map函数产生的M-keys

中计算子胞元的方向梯度直方图的步骤为:

并,并与实现训练好的SVM系数向量进行内积运算;

如果没

超过所述预设阈值,则说明当前检测窗口存在目标车辆,将坐标与尺

度信息输出。

每块大

三个值:

数组的

大小j字节、Map函数产生的M-values数组的大小k字节。

(3)通过j、k计算出每个线程中M-keys数组和M-values数组

(4)每个线程并行执行用户自定义的Map函数,将产生的结果

的大小和其起始位置;

写入该线程对应M-keys数组、M-values数组和M-directory index

数组中,M-directory index数组中的每条记录表示一条中间键记录;

(5)对中间键按照key值进行排序;

(6)按照key值将中间键进行分块,把相同key值的中间键数

(7)每个线程执行ReduceCount函数,其中ReduceCount函

三个值:Reduce函数产生的结果记录的个数i、Reduce函数

R-keys数组的大小j字节、Reduce函数产生的R-values数

小k字节;

(8)通过j、k计算出每个线程中R-keys数组和R-values数组

(9)每个线程并行执行Reduce函数,其中:

输入:M-keys数组、M-values数组、经过排序的M-directory

数组输出:results数组;

据交给一个GPU线程进行处理;

数输出

产生的

组的大

的大小和其起始位置;通过i计算出每个线程中R-directory index数

组的大小和其起始位置;

index

操作:M-directory index数组可以表示为<mid,res>,mid为区

将产生的结果写入该线程对应R-keys数组、R-values数组和

directory index数组中。这样就可以得到每个区块对应的总直方图

R-

块的编号;res表示该区块对应的直方图数组。将相同mid的res数

组中对应的相同位置上元素求和,得到rdata数组;

results数组<id,rdata>,其中id表示区块的编号,rdata表示对应

区块的总直方图数组。

3.根据权利1所述的车辆检测方法,其特征在于,所述步骤5

方向梯度直方图的归一化步骤为:

(1)调度程序将显卡内存中的输入数据input数组分为n块,

小为

(2)每个线程执行MapCount函数,其中MapCount函数输出

Map函数产生的中间键的个数i、Map函数产生的M-keys

区块的

每块大

三个值:

数组的

大小j字节、Map函数产生的M-values数组的大小k字节;

(3)通过j、k计算出每个线程中M-keys数组和M-values数组

(4)每个线程并行执行用户自定义的Map函数,计算每个区块

的大小和其起始位置;

的方向梯度直方图,将产生的结果写入该线程对应M-keys数组、

M-values数组和M-directory index数组中。得到results数组<id,

rdata>,id表示区块的编号,rdata表示该区块的方向梯度直方图。

说 明 书

技术领域

本发明涉及计算机视觉领域,具体涉及一种基于MapReduce的

并行计算应用于车辆检测的方法。

背景技术

随着智能交通系统在现代社会中重要性的不断提升,车辆监控技

了越来越广泛的应用。现有智能交通系统的问题主要是大量的

息难以得到有效的及时的处理。而如何通过计算机智能地实时

和提取有效的信息,以提升车辆监控与跟踪准确率,已经成为

视觉领域的一个热点研究问题。

基于视觉监控的智能分析技术是计算机视觉和智能交通领域的

难点问题,涉及到图像处理、机器学习、模式识别等课题。近

术界上进行了较多的相关研究。

国内外学者在基于视频序列的复杂场景下车辆检测技术上做了

工作。我国的道路交通情况比较复杂,存在车辆、行人公用一

的情况,行车道路上车辆的颜色、形状、速度都存在较大差异,

于像素级的目标检测方法,如帧间差法、背景差分法不能满足

际道路需要。现在基于视频序列的目标检测系统主要采用特征

测与机器学习算法相结合的方法对运动目标进行检测。目前,

用纹理信息作为特征点,常用的纹理特征有HOG(梯度方向

很多的

条道路

因此基

我国实

级的检

通常采

热点和

年来学

术得到

监控信

地分析

计算机

GPU

直方图),小波滤波器,类Haar特征滤波器等。现在运用比较广泛

的车辆检测的方法有:类Harr特征和自适应决策树结合算法,HOG

描述子与SVM结合算法,HOG描述子与随机森林结合算法等。类

Harr特征的检测算法在实际应用中,还存在一定数量的误检和漏检,

因此HOG是现阶段比较好的特征描述子。

然而这些研究和应用还存在一定的问题:虽然基于HOG特征的

跟踪算法能够达到比较理想的效果,但是在传统的计算架构

特征的提取、SVM训练的计算以及特征匹配的计算都

足实时性的要求。

MapReduce是由谷歌公司提出的并行算法,旨在帮助程序员轻

写分布式程序。程序员只需编写两个函数:Map函数和Reduce

其他有关并行的功能,包括:任务调度、容错、实时同步等都

时负责。Map函数负责处理输入数据并产生中间键key/value。

函数根据key值将中间键进行合并,并产生最终的结果。目

MapReduce的实现包括基于机群的Hadoop系统、基于CPU的

GPU英文全称为Graphic Processing Unit,中文翻译为“图形处

一种专门处理在个人电脑、工作站或游戏机上图像运算工

GPU与CPU相比有更多的处理器和更大的内存带宽,

计算能力,可以进行大量计算,如图3所述,为

GPU也有相应的缺点,主要包括:(1)

采用了SIMD(单指令多数据流)

Phoenix系统和基于GPU的Mars系统等。

检测和

下,对HOG

比较费时,远不能满

松的编

函数,

由运行

Reduce

理单元”,是

作的微处理器。

所以GPU有较好的

显卡的内部结构示意图。但

GPU最初的目的是加速图像处理,

模式,这种模

式不支持复杂的控制流;(2)GPU的线程是由硬件管

支持直接存取主机内存,需要进行主机内存和显

GPU没有统一的标准,往往由各厂家决定。为

公司和AMD公司分别提供了CUDA和

的操作GPU,完成通用计算功能。

理的;(3)GPU不

卡内存的调度;(4)

了解决上述问题,NVIDIA

Brook+类库,旨在让程序员更好

Bingsheng He、Wenbin Fang等人在《Mars:Accelerating

发明内容

鉴于现有技术的不足,本发明旨在于提供一种用基于

多核并行加速的车辆检测方法,具体用以分析

有效的降低了原有相应方法的时间复杂

同时在省时的基础上保障对车辆较

采集图像的复杂背景和噪声,本发

全监控水平。

为了实现上述目的,本发明采用的技术方案如下:

一种基于GPU多核并行加速的车辆检测方法,所述方法包括以

(1)由CPU获得待检测的图像并复制到GPU内存,其中,将

内存设置为不可换页可提高传输速度;

(2)利用硬件纹理单元对所述图像进行降采样,然后对所述降

(3)计算梯度值,其中,将一个检测窗口划分为若干个区块,

区块内,使用GPU并行计算技术,利用水平梯度卷积算子

在每个

采样后的图像进行伽马校验;

分配的

下步骤:

MapReduce的GPU

MapReduce with Graphics Processors》一文中提出一种基于

MapReduce的显卡多处理器并行计算模型。

和理解复杂场景下车辆行为,

度,为用户提供了较高的实时性,

高的识别准确率,能有效去除视频

明的应用有助于改善公共场所的安

[-1,0,1]与垂

直梯度卷积算子-

10

1分别计算水平方向

梯度与和垂直方

按照相位值

向梯度,进而计算幅值与相位,根据得到的幅值与相位,

最近的两个bin之间的相位差为权值分解幅值,并记录;

(4)计算方向梯度直方图,其中,根据步骤(3)中得到的结果, 使用基

于MapReduce模型,在映射函数阶段对检测窗口进行子胞元

二次线性插值求子胞元内的方向梯度直方图,具体是在

对相同区块内的子胞元方向梯度直方图进行合并,得出

梯度直方图;

(5)归一化方向梯度直方图,其中,在Map函数阶段检测窗口

块划分,对区块内方向直方图数组求一个归一化系数,并该数

元素乘以这个系数,具体是归一化系数通过求数组内加权平方

平方的倒数得到;

(6)线性SVM计算,其中,将归一化的结果交由CPU进行合

与实现训练好的SVM系数向量进行内积运算;

(7)判断是否遍历完全,如果遍历完,退出GPU运算模式,

完,转到步骤(2);

(8)根据步骤(6)计算出的SVM值与预设的阈值对比,如果

述预设阈值,则说明当前检测窗口存在目标车辆,将坐标与尺

度信息输出。

需要说明的是,所述步骤(4)中计算子胞元的方向梯度直方图

为:

划分,并使用

化简函数阶段

区块内的方向

进行区

组每个

和的开

并,并

如果没有遍历

超过所

的步骤

(1)调度程序将显卡内存中的输入数据input数组分为n块,

(2)每个线程执行MapCount函数,其中MapCount函数输出

函数产生的中间键的个数i、Map函数产生的M-keys

Map函数产生的M-values数组的大小k字节。

(3)通过j、k计算出每个线程中M-keys数组和M-values数组

和其起始位置;

(4)每个线程并行执行用户自定义的Map函数,将产生的结果

线程对应M-keys数组、M-values数组和M-directory index

directory index数组中的每条记录表示一条中间键记录;

(5)对中间键按照key值进行排序;

(6)按照key值将中间键进行分块,把相同key值的中间键数

一个GPU线程进行处理;

(7)每个线程执行ReduceCount函数,其中ReduceCount函

Reduce函数产生的结果记录的个数i、Reduce函数

的大小j字节、Reduce函数产生的R-values数

(8)通过j、k计算出每个线程中R-keys数组和R-values数组

和其起始位置;通过i计算出每个线程中R-directory index数

(9)每个线程并行执行Reduce函数,其中:

组的大小和其起始位置;

每块大小为;

三个值:Map

数组的大小j字节、

的大小

写入该

数组中,M-

据交给

数输出三个值:

产生的R-keys数组

组的大小k字节;

的大小

输入:M-keys数组、M-values数组、经过排序的M-directory

出:results数组;

index数组输

操作:M-directory index数组可以表示为<mid,res>,mid为区

号;res表示该区块对应的直方图数组。将相同mid的res数

同位置上元素求和,得到rdata数组;

将产生的结果写入该线程对应R-keys数组、R-values数组和

directory index数组中。这样就可以得到每个区块对应的总直方图

数组<id,rdata>,其中id表示区块的编号,rdata表示对应

总直方图数组。

需要说明的是,所述步骤5区块的方向梯度直方图的归一化步骤

(1)调度程序将显卡内存中的输入数据input数组分为n块,

(2)每个线程执行MapCount函数,其中MapCount函数输出

函数产生的中间键的个数i、Map函数产生的M-keys

Map函数产生的M-values数组的大小k字节;

(3)通过j、k计算出每个线程中M-keys数组和M-values数组

和其起始位置;

(4)每个线程并行执行用户自定义的Map函数,计算每个区块

梯度直方图,将产生的结果写入该线程对应M-keys数组、

R-

块的编

组中对应的相

results

区块的

为:

每块大小为;

三个值:Map

数组的大小j字节、

的大小

的方向

M-values数组和M-directory index数组中。得到results数组<id,

rdata>,id表示区块的编号,rdata表示该区块的方向梯度直方图。

较之传本发明有益效果在于,本发明将基于HOG特征的车辆检测算法

统架构的计算方法效率上提高30至50倍,将基于HOG特征

法应用于实时的交通视频处理中,将现有的实时车辆检

的车辆检测算

测命中率大大

提高。

附图说明

图1为本发明流程示意图;

图2为本发明中GPU多核并行计算流程图;

图3为显卡内部结构图。

具体实施方式

下面将结合附图对本发明作进一步的描述。

如图1、图2所示,本发明为一种基于GPU多核并行加速的车

方法,所述方法包括以下步骤:

(1)由CPU获得待检测的图像并复制到GPU内存,其中,将

内存设置为不可换页的可提高传输速度;

(2)利用硬件纹理单元对所述图像进行降采样,然后对降采样

像进行伽马校验;

(3)计算梯度值:将一个检测窗口划分为若干个区块,在每个

辆检测

分配的

后的图

区块内,

使用GPU并行计算技术,利用水平梯度卷积算子[-1,0,1]与

垂直梯度卷积算子

-

10

1分别计算水平方向

梯度与和垂直方向梯度,进

位,按照相位值最近的两个

录;

(4)计算方向梯度直方图,其中,每个区块有2×2个胞元,每

有8×8个像素,每个区块有一个方向梯度直方图,每个直方

每个像素点的角度范围是[0,180°],每个bin占20°,对

向梯度直方图的表示按照其bin所占角度从大到小排列

组,对一个区块内4个胞元的方向梯度直方图需

行归一化,那么一个区块内4个方向直方

式排列成一个大小为36的数组,

从左向右从上至下的方式

中的区块数目)。

进一步地说,具体计算时,一个区块内的4个胞元再分成2×2个

然后对一个检测窗口中所有的子胞元进行编号,一个区块内

从左向右从上至下的方式编号,不同区块内的子胞元也

从上至下的方式编号,因此假设子胞元的编号值是i,

区块号为对检测窗口进行划分,产生input

子胞元,

个胞元

而计算幅值与相位,根据得到的幅值与相

bin之间的相位差为权值分解幅值,并记

图有9个bin,

一个胞元的方

成一个大小为9的数

要二次线性插值,并最后进

图按照胞元从左向右从上至下的方

最后一个检测窗口的方向直方图按照区块

排列成一个大小为36×n的数组(n为检测窗口

的子胞元按照

按照从左向右

那么该子胞元所在的

数组,一个input数组是

号,data是子胞元内存储的

以及分解到相对应bin的幅

<id,data>组成,其中id是对应子胞元的编

是每个像素点对应的两个bin编号h0和h1

值a0和a1,然后将input数组交给GPU

并行计算出区块直方图。

需要说明的是,GPU并行计算的Map函数:

输入:input数组中的键值对,可以表示为<id,data>;

输出:M-directory index数组中的键值对,可以表示为<mid,

其中,mid为区块的编号;res表示该区块对应的直方图数组;

res>,

操作:根据事先建好的二维高斯表作为权值,用数组[ω0

ω1,ω2]表

胞元方向直方图贡献的权值,输出

sub=id%16得到子胞元在所

的方向直方图数组按照胞元

如果sub为0,则res[h0]为ω0×a0,res[h1]为ω0×a1;

如果sub为1或2,则res[h0]为ω1×a0,res[h1]为ω1×a1,

如果sub为3,则res[9+h0]为ω0×a0,res[9+h1]为ω0×a1;

如果sub是4或8,则res[h0]为ω1×a0,res[h1]为ω1×a1,

如果sub是5或6或9或10,则res[h0]为ω2×a0,res[h1]为

ω2×a1,res[9+h0]为ω2×a0,res[9+h1]为

ω2×a0,res[18+h1]为

res[18+h0]为ω1×a0,res[18+h1]为ω1×a1;

res[9+h0]为ω1×a0,res[9+h1]为ω1×a1;

示,分别代表对1个、2个和4个

的是<mid,res>的键值对,

在区块中的编号。,res的元素是4个胞元

从左往右从上往下排列而成,其中:

ω2×a1,res[18+h0]为

ω2×a1,res[27+h0]为ω2×a0,res[27+h1]为

如果sub是7或11,则res[9+h0]为ω1×a0,res[9+h1]为

ω1×a1,

ω1×a1;

如果sub是12,则res[18+h0]为ω0×a0,res[18+h1]为

ω0×a1;

如果sub是13或14,则res[18+h0]为ω1×a0,res[18+h1]为

ω1×a1,res[27+h0]为ω1×a0,res[27+h1]为

res[27+h0]为ω1×a0,res[27+h1]为

ω2×a1;

ω1×a1;

如果sub是15,则res[27+h0]为ω0×a0,res[27+h1]为

ω0×a1;

需要进一步说明的是,计算子胞元的方向梯度直方图为:

1)调度程序将显卡内存中的输入数据input数组分为n块,每

其中,m表示整个输入数据的大小,n表示GPU中进行计算的 线程个

表示子

块大小为

数,input数组由<id,data>组成,id表示子胞元的编号,data

胞元的像素数组;

2)每个线程执行MapCount函数。其中MapCount函数输出三

函数产生的中间键的个数i、Map函数产生的M-keys数

节、Map函数产生的M-values数组的大小k字节;

个值:Map

组的大小j字

其中,M-keys数组由mid组成,mid表示子胞元组成的区块编

M-values数组存放该区块对应的直方图数组;

3)通过j、k计算出每个线程中M-keys数组和M-values数组的

其起始位置;通过i计算出每个线程中M-directory index数组

始位置;

其中,M-keys数组由mid组成,mid表示子胞元组成的区块编

需要说明的是,M-values数组存放该区块对应的直方图数组

directory index数组由键值对<key offset,key size,value

4)每个线程并行执行用户自定义的Map函数,将产生的结果写

程对应M-keys数组、M-values数组和M-directory index数

directory index数组中的每条记录表示一条中间键记录;

5)对中间键按照key值进行排序;

6)按照key值将中间键进行分块,把相同key值的中间键数据

个GPU线程进行处理;

7)每个线程执行ReduceCount函数,其中ReduceCount函数

号;

大小和

的大小和其起

号;

res,M-

offset,value size>组成,key offset表示M-keys数组中每个key值

的偏移量,key size表示M-keys数组中每个key值的大小,value

offset表示M-values数组中每个Value值的偏移量,value size表示

M-values数组中每个Value值的大小。通过directory index数组可

以从M-keys数组和M-values数组中取得相应的key值和value值。

入该线

组中,M-

交给一

输出三个值:

Reduce函数产生的结果记录的个数i、Reduce函数产

大小j字节、Reduce函数产生的R-values数组

生的R-keys数组的

的大小k字节;

其中,R-keys数组存放每个区块编号,R-values数组存放区块

8)通过j、k计算出每个线程中R-keys数组和R-values数组的

其起始位置;

通过i计算出每个线程中R-directory index数组的大小和其起始

其中R-keys数组存放每个区块编号,R-values数组存放区块直

需要说明的是,R-directory index数组由键值对<key offset,key

9)每个线程并行执行Reduce函数,其中

Reduce函数:

输入:M-keys数组、M-values数组、经过排序的M-directory

方图的总和;

直方图的总和;

大小和

位置。

size,value offset,value size>组成,key offset表示R-keys数组中

每个key值的偏移量,key size表示R-keys数组中每个key值的大

小,value offset表示R-values数组中每个Value值的偏移量,value

size表示R-values数组中每个Value值的大小。通过R-directory

index数组可以从R-keys数组和R-values数组中取得相应的key值

和value值。

index数组;

输出:results数组;

操作:M-directory index数组可以表示为<mid,res>,mid为区

号,res表示该区块对应的直方图数组;

进一步地说,将相同mid的res数组中对应的相同位置上元素求

到rdata数组;将产生的结果写入该线程对应R-keys数组、

和R-directory index数组中。这样就可以得到每个区

和,得

块的编

R-values数组

块对应的总直方图

rdata表示对results数组<id,rdata>,其中id表示区块的编号,

应区块的总直方图数组。

(5)归一化方向梯度直方图,将一个区块中方向直方图数组内

素乘以一个归一化系数α,假设一个区块中方向直方图数组为

O|0|35|,则

所有元

α=1

>Σi=0.

mo>..35O[

o>i]×O[i<

mo>].交由GPU并行

计算。

需要说明的是,GPU并行计算的Map函数:

输入:input数组中的键值对,可以表示为<id,data>,id为区块

data为区块内方向直方图数组;

输出:result数组中的键值对,可以表示为<id,rdata>,id为区

rdata为区块内方向直方图数组;

块号,

号,

操作:rdata[i]=data[i]×α,1=0~35

需要进一步说明的是,区块的方向梯度直方图的归一化步骤为:

1)调度程序将显卡内存中的输入数据input数组分为n块,每

其中,m表示整个输入数据的大小,n表示GPU中进行计算的

数;input数组由<id,data>组成,id表示区块的编号,data

块的总直方图数组;

2)每个线程执行MapCount函数,其中MapCount函数输出三

函数产生的中间键的个数i、Map函数产生的M-keys数

节、Map函数产生的M-values数组的大小k字节。

其中,M-keys数组由id组成,id表示区块的编号;M-values

块对应的方向梯度直方图数组;

3)通过j、k计算出每个线程中M-keys数组和M-values数组的

其起始位置;

通过i计算出每个线程中M-directory index数组的大小和其起始

其中M-keys数组由id组成,id表示区块编号,M-values数

对应的方向梯度直方图数组res;

需要说明的是,M-directory index数组由键值对<key offset,key

size,value offset,value size>组成,key offset表示M-keys数组中

每个key值的偏移量,key size表示M-keys数组中每个key值的大

小,value offset表示M-values数组中每个Value值的偏移量,value

位置,

大小和

数组存放该区

个值:Map

组的大小j字

线程个

对应区

块大小为

组存放该区块

size表示M-values数组中每个Value值的大小。通过directory index

数组可以从M-keys数组和M-values数组中取得相应的key值和

value值。

4)每个线程并行执行用户自定义的Map函数,计算每个区块的

度直方图。将产生的结果写入该线程对应M-keys数组、

和M-directory index数组中。得到results数组<id,

块的编号,rdata表示该区块的归一化的方向梯度

(6)线性SVM计算,将步骤(5)中得到的result数组返回给

由CPU将result数组中键值对合并成数组,并与事先训练好

内积运算,计算出SVM权值,计算SVM权值的公式

权值,]为合并后的

(7)是否已经遍历完整,如果遍历完,退出GPU运算模式,

完,转到步骤(2);

(8)根据步骤(6)计算出的SVM值score与事先设定好的阈

对比,如果score≥T,则说明当前检测窗口存在目标车辆,将坐标

信息输出。

对于本领域的技术人员来说,可根据以上描述的技术方案以及构

出其它各种相应的改变以及变形,而所有的这些改变以及变形

属于本发明权利要求的保护范围之内。

方向梯

M-values数组

rdata>,id表示区

直方图。

CPU,

的支持向量作

为其中score为SVM

result数组,X|1|n|为事先训练好的支持向量数组;

如果没有遍历

值T

与尺度

思,做

都应该

本文发布于:2024-05-03,感谢您对本站的认可!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:检测数组车辆

发布评论

评论列表(有0条评论)
    编程教学|福州电脑网

    编程教学|福州电脑网

    编程教学