HOG Calculation Using Bit-Shift and Binary Mask Logic

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for producing Histograms of Oriented Gradients (HOG) in image processing require complex calculations involving multipliers and the arc tangent function, making them inefficient for hardware implementation in devices with limited processing capability, such as hand-held cameras or smartphones.

Innovation Solution

A method that calculates the orientation of gradients by using a binary mask and bit-shift operations to determine the sector of gradient directions, eliminating the need for multipliers and arc tangent functions, and allowing for a fast hardware implementation with a small footprint, using adders and comparators.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If conventional HOG calculation methods using multipliers and arc tangent functions are employed, then calculation accuracy is maintained, but hardware implementation complexity and processing time increase significantly

Engineering Contradiction:
Improvegradient orientation calculation accuracyVSAvoidhardware implementation complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent replaces expensive computational operations (multipliers and arc tangent functions) with cheaper alternatives (bit-shift operations and binary mask comparisons). The bit-shift operations provide sufficient accuracy for gradient orientation calculation without requiring complex hardware multipliers, and the binary mask method eliminates the need for computationally intensive arc tangent functions, making the system suitable for resource-constrained devices

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

Solution Approach 2:

The patent substitutes mathematical computation mechanisms with logical operation mechanisms. Instead of using multipliers for magnitude calculation and arc tangent functions for orientation calculation, the system uses bit-shift operations and binary mask comparisons. This substitution transforms the computational approach from continuous mathematical operations to discrete logical operations, significantly reducing hardware complexity

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Measurement precision

If conventional HOG calculation methods are used, then accurate gradient descriptors are produced, but processing speed decreases due to complex calculations

Engineering Contradiction:
ImproveHOG descriptor accuracyVSAvoidprocessing speed
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent employs bit-shift operations instead of multipliers and uses binary mask comparisons instead of arc tangent functions. These cheaper operations execute much faster on digital hardware, significantly improving processing speed while maintaining sufficient accuracy for the application. The bit-shift operations can be performed in parallel and require minimal computational resources

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

Solution Approach 2:

The patent divides the gradient orientation space into discrete sectors using binary masks. Each mask corresponds to a specific orientation sector, allowing the system to determine gradient direction through simple binary comparisons rather than continuous mathematical functions. This segmentation enables parallel processing of multiple gradient vectors simultaneously, improving overall processing throughput

Inventive Principle:
Principle #1Segmentation

3Measurement precision

If multipliers and arc tangent functions are used for HOG calculation, then accurate gradient magnitude and orientation are obtained, but the hardware footprint increases

Engineering Contradiction:
Improvegradient magnitude and orientation accuracyVSAvoidhardware footprint
Core Design Contradiction:
Measurement precisionVSArea of stationary object

Solution Approach 1:

The patent replaces the mechanical/computational mechanisms of multipliers and arc tangent function units with logical operation circuits. The bit-shift operations require only simple wiring and logic gates, and the binary mask comparison mechanism uses basic comparator circuits. This substitution dramatically reduces the silicon area required for implementation while maintaining functional equivalence for the intended application

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The patent uses binary mask representations to copy and store orientation sector definitions. Instead of implementing complex arc tangent calculation logic, the system pre-computes and stores binary mask patterns that represent different orientation sectors. During operation, these masks are simply compared against gradient components, eliminating the need for large computational units and reducing hardware footprint

Inventive Principle:
Principle #26Copying

Data Source

PatentEP3459010B1A method and system for calculating a histogram of oriented gradients
Publication Date: 2023.08.23 FOTONATION LIMITED
  • EP3459010B1 patent drawingFigure 1
  • EP3459010B1 patent drawingFigure 2
  • EP3459010B1 patent drawingFigure 3

AI summary

A method for producing a histogram of oriented gradients (HOG) for at least a portion of an image comprises dividing the image portion into cells, each cell comprising a plurality of image pixels. Then, for each image pixel of a cell, obtaining a horizontal gradient component, gx, and a vertical gradient component, gy, based on differences in pixel values along at least a row of the image and a column of the image respectively including the pixel; and allocating a gradient to one of a plurality of sectors, where n is a sector index, each sector extending through a range of orientation angles and at least some of the sectors being divided from adjacent sectors according to the inequalities: b*16<a*(n+l) where 0≤n≤5, b=gy and a = gx; and b*16<a*(13-n) where 7≤n≤12, a = gx + gy and b = gx − gy. At least one sector is associated with a bin; and each instance of a pixel gradient of a cell associated with a bin is accumulated to provide a HOG for the cell.