Keypoint Descriptor Matching Hardware for Lower CPU Bandwidth

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing image processing systems consume significant CPU bandwidth and power due to software-based keypoint matching, which is inefficient and resource-intensive.

Innovation Solution

Implement a hardware-based image processing pipeline that reduces external memory access by using local memories with faster access speeds for keypoint descriptor storage and a header match circuit to determine matching keypoints.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If software-based keypoint matching is used on CPU, then keypoint matching can be performed, but CPU bandwidth consumption increases significantly

Engineering Contradiction:
Improvekeypoint matching capabilityVSAvoidCPU bandwidth consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent replaces software-based keypoint matching on CPU with a dedicated hardware circuit. The header match circuit is implemented in hardware to perform keypoint descriptor matching, substituting the mechanical/software execution model with an electronic hardware circuit that operates more efficiently with lower power consumption and higher throughput.

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

Solution Approach 2:

The patent introduces local memories as intermediary components between the external memory and the header match circuit. These local memories buffer keypoint descriptors, reducing direct access to external memory and thereby reducing CPU bandwidth consumption while enabling faster local processing.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If software-based keypoint matching is used on CPU, then keypoint matching can be performed, but power consumption increases

Engineering Contradiction:
Improvekeypoint matching capabilityVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by stationary object

Solution Approach 1:

The patent replaces software-based keypoint matching on CPU with a dedicated hardware circuit. The header match circuit is implemented in hardware to perform keypoint descriptor matching, substituting the mechanical/software execution model with an electronic hardware circuit that operates more efficiently with lower power consumption and higher throughput.

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

3Quantity of substance

If external memory is accessed for keypoint descriptors, then all keypoint data can be stored, but access speed decreases

Engineering Contradiction:
Improvekeypoint descriptor storage capacityVSAvoidmemory access speed
Core Design Contradiction:
Quantity of substanceVSSpeed

Solution Approach 1:

The patent segments the memory system into multiple levels: external memory for bulk storage and local memories for frequently accessed keypoint descriptors. This segmentation allows the system to maintain large storage capacity while providing fast access paths for active processing through the local memory hierarchy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary action by pre-loading keypoint descriptors from external memory into local memories before they are needed for matching operations. This advance preparation reduces access latency during actual keypoint matching, as the data is already positioned in faster local memory.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12400419B2Single read of keypoint descriptors of image from system memory for efficient header matching
Publication Date: 2025.08.26 APPLE INC
  • US12400419B2 patent drawing
  • US12400419B2 patent drawing
  • US12400419B2 patent drawing

AI summary

Embodiments of the present disclosure relate to sequentially loading keypoint descriptors of a previous image and comparing them with a plurality of keypoint descriptors of a current image. The keypoint descriptors of the previous image are stored and accessed from a system memory while the keypoint descriptors of the current image are stored and accessed from a local memory. Hence, the keypoint descriptors of the previous image are received only once at a descriptor match circuit while the keypoint descriptors of the current image are received multiple times for comparison against different keypoint descriptors of the previous image.