libHOG: Energy-Efficient Histogram of Oriented Gradient Computation

Histogram of Oriented Gradients (HOG) features are the underlying representation in automotive computer vision applications such as collision avoidance and lane keeping. In these applications, we have observed that HOG feature computation is often a slow and energy-intensive component of the overall pipeline. In this paper, we focus on reducing both the time taken and the energy used for computing Felzenszwalb HOG features. We achieve our results though a combination of reduced precision, SIMD parallelism, algorithmic changes, and outer-loop parallelism. In particular, we address a bottleneck in histogram accumulation by phrasing the problem as a gather instead of the (traditional) scatter. Additionally, we explore the tradeoffs of using L1 instead of L2 norms to compute gradients, which enables smaller operands and more SIMD parallelism. Overall, we are able to compute multiresolution HOG pyramids at 70fps for 640×480 images on a multicore CPU. This is a 3.6x speedup over the best known HOG implementation and a 29× speedup over the popular voc-release5 HOG code. This is also a 3.6× - 22× reduction in energy per frame compared to previous HOG implementations. Our open-source implementation is available for download.

[1]  E. Stewart,et al.  Intel Integrated Performance Primitives: How to Optimize Software Applications Using Intel IPP , 2004 .

[2]  Bill Triggs,et al.  Histograms of oriented gradients for human detection , 2005, 2005 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'05).

[3]  Alex Zelinsky,et al.  Learning OpenCV---Computer Vision with the OpenCV Library (Bradski, G.R. et al.; 2008)[On the Shelf] , 2009, IEEE Robotics & Automation Magazine.

[4]  Luc Van Gool,et al.  The Pascal Visual Object Classes (VOC) Challenge , 2010, International Journal of Computer Vision.

[5]  David A. McAllester,et al.  Object Detection with Discriminatively Trained Part Based Models , 2010, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[6]  David A. McAllester,et al.  Cascade object detection with deformable part models , 2010, 2010 IEEE Computer Society Conference on Computer Vision and Pattern Recognition.

[7]  Ian Reid,et al.  fastHOG – a real-time GPU implementation of HOG , 2011 .

[8]  Dariu Gavrila,et al.  Active Pedestrian Safety by Automatic Braking and Evasive Steering , 2011, IEEE Transactions on Intelligent Transportation Systems.

[9]  Bernd Girod,et al.  Compressed Histogram of Gradients: A Low-Bitrate Descriptor , 2011, International Journal of Computer Vision.

[10]  Subhransu Maji,et al.  Describing people: A poselet-based approach to attribute classification , 2011, 2011 International Conference on Computer Vision.

[11]  Alexei A. Efros,et al.  Ensemble of exemplar-SVMs for object detection and beyond , 2011, 2011 International Conference on Computer Vision.

[12]  Bastian Leibe,et al.  Efficient Use of Geometric Constraints for Sliding-Window Object Detection in Video , 2011, ICVS.

[13]  Marco Reisert,et al.  Circular Fourier-HOG features for rotation invariant object detection in biomedical images , 2012, 2012 9th IEEE International Symposium on Biomedical Imaging (ISBI).

[14]  Geoffrey E. Hinton,et al.  ImageNet classification with deep convolutional neural networks , 2012, Commun. ACM.

[15]  Akihiro Takeuchi,et al.  On-Road Multivehicle Tracking Using Deformable Object Model and Particle Filter With Improved Likelihood Estimation , 2012, IEEE Transactions on Intelligent Transportation Systems.

[16]  Klaus C. J. Dietmayer,et al.  Early detection of the Pedestrian's intention to cross the street , 2012, 2012 15th International IEEE Conference on Intelligent Transportation Systems.

[17]  François Fleuret,et al.  Exact Acceleration of Linear Object Detectors , 2012, ECCV.

[18]  Shintaro Izumi,et al.  Architectural Study of HOG Feature Extraction Processor for Real-Time Object Detection , 2012, 2012 IEEE Workshop on Signal Processing Systems.

[19]  Aydin Kaya,et al.  On-Board Driver Assistance System for Lane Departure Warning and Vehicle Detection , 2013 .

[20]  Federico Tombari,et al.  A traffic sign detection pipeline based on interest region extraction , 2013, The 2013 International Joint Conference on Neural Networks (IJCNN).

[21]  Trevor Darrell,et al.  Rich Feature Hierarchies for Accurate Object Detection and Semantic Segmentation , 2013, 2014 IEEE Conference on Computer Vision and Pattern Recognition.

[22]  Mohan M. Trivedi,et al.  Where is the driver looking: Analysis of head, eye and iris for robust gaze zone estimation , 2014, 17th International IEEE Conference on Intelligent Transportation Systems (ITSC).

[23]  Forrest N. Iandola,et al.  DenseNet: Implementing Efficient ConvNet Descriptor Pyramids , 2014, ArXiv.

[24]  Iasonas Kokkinos,et al.  Deformable Part Models with CNN Features , 2014, ECCV 2014.

[25]  Jitendra Malik,et al.  Deformable part models are convolutional neural networks , 2014, 2015 IEEE Conference on Computer Vision and Pattern Recognition (CVPR).

[26]  Xiaogang Wang,et al.  DeepID-Net: Deformable deep convolutional neural networks for object detection , 2014, 2015 IEEE Conference on Computer Vision and Pattern Recognition (CVPR).