Lookup Table Organization for Face Detection Cache Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Face detection in client computing devices, such as smartphones, is hindered by large lookup tables that often result in cache misses due to their size exceeding the cache memory, leading to slower performance.

Innovation Solution

An efficiently organized lookup table is generated and loaded into cache memory, where feature patterns are arranged based on relative connectivity, allowing for faster face detection by utilizing a scoring function to determine the likelihood of feature pattern sequences within the table.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If a large lookup table is used for face detection, then detection accuracy is improved, but cache memory capacity is exceeded causing frequent cache misses

Engineering Contradiction:
Improveface detection accuracyVSAvoidcache hit rate
Core Design Contradiction:
Measurement precisionVSReliability

Solution Approach 1:

The lookup table is segmented into multiple smaller sub-lookup tables, each storing a portion of the feature patterns. This segmentation allows the complete lookup table functionality to be distributed across multiple cache-friendly memory blocks, ensuring that frequently accessed patterns remain in cache while maintaining comprehensive face detection coverage.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a hierarchical dimension to the lookup table structure by organizing it into sub-lookup tables with different scopes (e.g., local feature patterns vs. global feature patterns). This dimensional organization allows the system to access patterns at appropriate granularity levels, reducing the memory footprint required in cache while preserving detection accuracy.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Measurement precision

If a large lookup table is loaded into cache memory, then face detection completeness is improved, but access speed decreases due to cache misses

Engineering Contradiction:
Improveface detection completenessVSAvoidface detection speed
Core Design Contradiction:
Measurement precisionVSSpeed

Solution Approach 1:

The lookup table is pre-organized into sub-lookup tables during system initialization, with patterns strategically distributed to maximize cache utilization. This preliminary organization ensures that during actual face detection operations, the required patterns are already positioned for optimal cache access, eliminating the need for slow main memory accesses during detection.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Different sub-lookup tables are optimized for different access patterns and detection scenarios. Local sub-lookup tables store frequently occurring feature patterns with high cache retention, while global sub-lookup tables provide comprehensive coverage. This local quality optimization ensures that the most frequently accessed patterns remain in cache, maximizing detection speed for common cases.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS9460338B2Face detection method and apparatus with lookup table
Publication Date: 2016.10.04 INTEL CORP
  • US9460338B2 patent drawing
  • US9460338B2 patent drawing
  • US9460338B2 patent drawing

AI summary

Apparatuses, methods and storage medium associated with face detection are disclosed. In embodiments, an apparatus may comprise one or more processors, cache memory, a lookup table of feature patterns, and a face detector. The lookup table is to be loaded into the cache memory, during operation, for use to detect whether a face is present in an image. The feature patterns within the lookup table are organized within the lookup table in accordance with relative connectivity of the feature patterns. The face detector to detect whether a face is present in an image, may use the lookup table of feature patterns loaded into the cache memory during detection for the face. Other embodiments may be described and/or claimed.