问题
多核CPU最快的开源HOG提取代码是什么?
动机
我正在开发一个实时物体检测应用程序。具体地说,我已经开发了Deformable Parts Model cascades的一个变体,目标是30fps的对象检测。我已经达到了一个点,提取HOG功能的成本比我管道中的其他功能加起来还要昂贵。我正在使用[Felzenzwalb, Girshick, et al]参数来提取HOG。也就是说,HOG描述符的多分辨率金字塔,每个描述符总共有32个用于定向的框和一些其他线索。
Goals
我想在多核处理器上以60fps (16ms)对640x480图像进行多尺度HOG特征提取。
相关工作
我在6核Intel 3930k CPU上对一些现成的多尺度HOG实现进行了基准测试。对于640x480图像,我观察到以下性能数据:
我还用OpenCV HOG extraction code做过实验。OpenCV版本可以工作,但对于Dalal-Triggs的HOG设置似乎是硬编码的,并且OpenCV似乎不允许我使用与Felzenzwalb、Girshick等人相同的HOG参数(归一化方案、二进制位置特征等)。我不记得OpenCV猪的表演是什么样子了。
最终想法
发布于 2013-11-12 16:17:23
看一下下面的实现HoG SSE
它确实符合您的时间要求。它是用C语言编写的,使用128位长的SIMD指令。
代码还可以根据您需要的规范化策略和输出类型进行进一步定制。
我将很高兴听到您的反馈,并能够改进这段代码。
https://stackoverflow.com/questions/18474897
复制相似问题