Video Frame Text Encoding via Gradient Histograms

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional video processing methods, such as those using the H.264/AVC standard, face inefficiencies in processing digital video frames, particularly in identifying and encoding text within frames, due to the high computational cost and resource allocation for gradient analysis and histogram computation.

Innovation Solution

A block processing pipeline that computes gradients in multiple directions, generates histograms representing gradient statistics, and uses these statistics to determine dominant gradient directions, allowing for adaptive encoding parameter selection to improve text encoding quality, by passing relevant information through stages of the pipeline.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If gradient analysis and histogram computation are performed for every block to improve text encoding quality, then encoding quality is improved, but computational cost and resource allocation increase significantly

Engineering Contradiction:
Improveencoding qualityVSAvoidcomputational cost
Core Design Contradiction:
Manufacturing precisionVSPower

Solution Approach 1:

The patent applies local quality by performing gradient analysis and histogram computation selectively only on blocks that contain text, rather than uniformly processing all blocks. Text detection mechanisms identify regions with text characteristics, and gradient operations are concentrated on these specific areas, thereby maintaining high encoding quality for text regions while avoiding unnecessary computational expenditure on non-text blocks.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent implements partial action by computing gradients and histograms for only a subset of blocks - specifically those identified as containing text - rather than performing these operations on all blocks in the video frame. This selective approach reduces overall computational load while ensuring that text regions receive the enhanced processing needed for high-quality encoding.

Inventive Principle:
Principle #16Partial or excessive action

2Measurement precision

If gradient analysis is performed on all blocks to improve text detection accuracy, then text detection accuracy is improved, but processing time increases

Engineering Contradiction:
Improvetext detection accuracyVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent applies preliminary action by performing text detection and block classification before conducting gradient analysis. By first identifying which blocks contain text using preliminary detection mechanisms, the system prepares a targeted list of blocks that require intensive gradient processing. This preliminary sorting prevents time-wasting gradient computations on blocks that do not contain text, thereby reducing overall processing time while maintaining detection accuracy.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent segments the video frame processing into distinct phases: initial text detection phase, block classification phase, and gradient analysis phase. By dividing the processing workflow into these segments, the system can apply gradient analysis only to relevant blocks identified in earlier segments, thus improving text detection accuracy where needed while reducing total processing time through efficient task segmentation.

Inventive Principle:
Principle #1Segmentation

3Adaptability or versatility

If histogram computation is performed for each block to enable adaptive encoding parameter selection, then encoding adaptability is improved, but device complexity increases

Engineering Contradiction:
Improveencoding adaptabilityVSAvoidpipeline complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements dynamics by making the gradient analysis and histogram computation process adaptive rather than static. The system dynamically determines which blocks require gradient processing based on real-time text detection results, and encoding parameters are adaptively selected based on histogram outcomes for text-containing blocks. This dynamic approach improves encoding adaptability while avoiding the complexity of uniformly processing all blocks through the entire pipeline.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent extracts the gradient analysis and histogram computation operations from the universal block processing pipeline, creating a separate selective processing path for text-containing blocks. By taking out these complex operations and applying them only where needed (in text blocks), the system achieves high encoding adaptability for text regions while reducing overall device complexity by avoiding the need for complex pipeline structures that would handle all blocks uniformly.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS9380312B2Encoding blocks in video frames containing text using histograms of gradients
Publication Date: 2016.06.28 APPLE INC
  • US9380312B2 patent drawing
  • US9380312B2 patent drawing
  • US9380312B2 patent drawing

AI summary

A block input component of a video encoding pipeline may, for a block of pixels in a video frame, compute gradients in multiple directions, and may accumulate counts of the computed gradients in one or more histograms. The block input component may analyze the histogram(s) to compute block-level statistics and determine whether a dominant gradient direction exists in the block, indicating the likelihood that it represents an image containing text. If text is likely, various encoding parameter values may be selected to improve the quality of encoding for the block (e.g., by lowering a quantization parameter value). The computed statistics or selected encoding parameter values may be passed to other stages of the pipeline, and used to bias or control selection of a prediction mode, an encoding mode, or a motion vector. Frame-level or slice-level parameter values may be generated from gradient histograms of multiple blocks.