Object Detection via Parallel NMS Penalty Vector

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current object detection and segmentation algorithms produce excessive redundancy in bounding boxes, leading to inefficient data processing and high computational requirements.

Innovation Solution

Adaptation of the Non-Max-Suppression (NMS) algorithm, including the use of a 2D relation matrix and mask matrix to calculate a penalty vector, which allows for parallel processing and reduces computation latency by eliminating the need for sorting based on confidence levels, thereby improving the efficiency of object detection and segmentation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If Non-Max-Suppression (NMS) algorithm is used to select high-confidence predictions and suppress overlapping bounding boxes, then object detection accuracy is improved, but computing resources (processing cycles and memory) are extensively consumed

Engineering Contradiction:
Improveobject detection accuracyVSAvoidcomputing resources
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent replaces the traditional iterative mechanical computation of NMS with a neural network model that directly predicts bounding boxes and confidence scores. This substitution eliminates the need for post-processing NMS steps, reducing computational complexity while maintaining detection accuracy. The neural network learns to directly output refined bounding box coordinates and confidence values during training, eliminating the runtime NMS computation burden.

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

2Measurement precision

If NMS algorithm processes each input image individually, then detection precision is maintained, but runtime scales linearly with the number of images, reducing processing throughput

Engineering Contradiction:
Improvedetection precisionVSAvoidprocessing throughput
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent merges multiple individual image processing operations into a single batch processing operation. The neural network model accepts multiple images simultaneously as input and processes them in parallel, producing detection results for all images in one computation pass. This batching approach maintains detection precision while achieving linear speedup with respect to the number of images processed, directly addressing the throughput limitation of sequential NMS processing.

Inventive Principle:
Principle #5Merging (Combining)

3Reliability

If traditional NMS algorithm performs iterative computation analyzing each bounding box against its peers, then overlapping suppression is achieved, but computation latency increases significantly

Engineering Contradiction:
Improveoverlapping suppressionVSAvoidcomputation latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs overlapping suppression during the training phase rather than at runtime. The neural network model is trained with loss functions that directly optimize bounding box quality and confidence scores, incorporating overlapping suppression logic into the training objective. This preliminary action embeds the suppression behavior into the model weights, eliminating the need for iterative NMS computation during inference and dramatically reducing computation latency.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12100175B2System and method of detecting at least one object depicted in an image
Publication Date: 2024.09.24 NVIDIA CORP
  • US12100175B2 patent drawing
  • US12100175B2 patent drawing
  • US12100175B2 patent drawing

AI summary

A method and system for detecting at least one object depicted in an image may include: receiving an input vector IN, comprising a plurality of location data elements, each representing a location of at least a portion of the at least one depicted object, calculating a 2-dimensional (2D) relation matrix REL_2D, where each entry represents a value of a relation operator, between location data elements i, and j; calculating a 2D mask matrix MASK_2D, where each entry is ‘1’ if the confidence of location data element i is greater than the confidence of location data element j, and ‘0’ otherwise; calculating a penalty vector PEN, based on REL_2D and MASK_2D; elementwise multiplying the confidence levels of vector IN and vector PEN, to produce a selection vector SEL; and selecting at least one location data element based on vector SEL as representing the location of the at least one depicted object.