Related Experiment Video
Updated: Dec 6, 2025

Design and Optimization Strategies of a High-Performance Vented Box
Published on: June 9, 2023
A Novel Hardware-Software Co-Design and Implementation of the HOG Algorithm
Sina Ghaffari1, Parastoo Soleimani1, Kin Fun Li1
1Department of Electrical and Computer Engineering, University of Victoria, Victoria, BC V8W 2Y2, Canada.
Abstract:
The histogram of oriented gradients is a commonly used feature extraction algorithm in many applications. Hardware acceleration can boost the speed of this algorithm due to its large number of computations. We propose a hardware-software co-design of the histogram of oriented gradients and the subsequent support vector machine classifier, which can be used to process data from digital image sensors. Our main focus is to minimize the resource usage of the algorithm while maintaining its accuracy and speed. This design and implementation make four contributions. First, we allocate the computationally expensive steps of the algorithm, including gradient calculation, magnitude computation, bin assignment, normalization and classification, to hardware, and the less complex windowing step to software. Second, we introduce a logarithm-based bin assignment. Third, we use parallel computation and a time-sharing protocol to create a histogram in order to achieve the processing of one pixel per clock cycle after the initialization (setup time) of the pipeline, and produce valid results at each clock cycle afterwards. Finally, we use a simplified block normalization logic to reduce hardware resource usage while maintaining accuracy. Our design attains a frame rate of 115 frames per second on a Xilinx® Kintex® Ultrascale™ FPGA while using less hardware resources, and only losing accuracy marginally, in comparison with other existing work.
More Related Videos
Related Concept Videos
PD Controller: Design
Designing a continuous-data controller requires selecting and linking components like adders and integrators, which are fundamental in Proportional,...
Block Diagram Reduction
The first step in this process is the identification and relocation of a branch point. A branch point, where a...
Parallel Processing
Behavioral Genetics and Its Designs
The primary methodologies used in behavior genetics include family studies, twin studies, and adoption studies, each providing unique...
PI Controller: Design
Machines: Problem Solving II

