Candidate Pruning for Patch Transforms in Image Editing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing image editing techniques are computationally complex and require accurate user input for tasks like image matting, composition, and manipulation, often resulting in high resource consumption and visual artifacts.

Innovation Solution

The use of patch transforms and inverse patch transforms to reconstruct images by dividing input images into patches, pre-computing compatible candidate patches based on local evidence, and employing belief propagation to minimize visual artifacts and reduce computational complexity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If pixel-level image matting and composition techniques are used to achieve accurate foreground extraction and placement, then image editing precision is improved, but computational complexity and resource consumption increase significantly

Engineering Contradiction:
Improveimage editing precisionVSAvoidcomputational complexity
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The image is divided into discrete patches that can be independently processed and recombined. This segmentation allows the complex pixel-level operations to be broken down into manageable patch-level operations, reducing computational complexity while maintaining editing precision through localized processing

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Candidate patches are pre-computed and stored in a database before the actual image editing operation. This preliminary action involves analyzing the source image, extracting potential patches, and organizing them by compatibility metrics, which significantly reduces the computational burden during the actual editing process

Inventive Principle:
Principle #10Preliminary action

2Manufacturing precision

If pixel-level image matting techniques are used to achieve accurate foreground extraction, then image composition quality is improved, but processing time increases significantly

Engineering Contradiction:
Improveimage composition qualityVSAvoidprocessing time
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The system performs preliminary analysis of the source image to pre-compute and store candidate patches in a database before the actual editing operation. This pre-processing step organizes patches by compatibility metrics and spatial relationships, enabling rapid retrieval and recombination during editing, thus reducing processing time while maintaining composition quality

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

By segmenting the image into patches rather than processing at the pixel level, the system reduces the computational scope of each operation. Patch-based processing maintains sufficient composition quality while dramatically reducing processing time compared to pixel-level operations

Inventive Principle:
Principle #1Segmentation

3Manufacturing precision

If pixel-level image matting techniques are used to achieve accurate foreground extraction, then image editing accuracy is improved, but resource consumption increases significantly

Engineering Contradiction:
Improveimage editing accuracyVSAvoidresource consumption
Core Design Contradiction:
Manufacturing precisionVSUse of energy by moving object

Solution Approach 1:

The image is divided into discrete patches that can be independently processed and recombined. This segmentation allows the complex pixel-level operations to be broken down into manageable patch-level operations, reducing computational complexity and resource consumption while maintaining editing precision through localized processing

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system creates a database of candidate patches that are copies of the original image regions. These patch copies can be retrieved and recombined without repeatedly accessing or processing the original full-resolution image, reducing memory access overhead and computational resource consumption

Inventive Principle:
Principle #26Copying

4Measurement precision

If shape-based jigsaw approaches are used to find valid neighbors by boundary shape, then neighbor matching accuracy is improved, but the overall problem remains NP-complete due to ordering complexity

Engineering Contradiction:
Improveneighbor matching accuracyVSAvoidalgorithmic complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system pre-computes compatibility metrics between patches and stores them in a database before the recombination phase. This preliminary computation of spatial relationships and compatibility scores eliminates the need for complex real-time calculations during neighbor matching, reducing algorithmic complexity while maintaining matching accuracy

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The problem is segmented into two phases: pre-computation of patch compatibility (offline) and recombination using stored information (online). This segmentation transforms the NP-complete ordering problem into a simpler search problem using pre-computed data, reducing the computational complexity of the actual editing operation

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS8340463B1Candidate pruning for patch transforms
Publication Date: 2012.12.25 ADOBE INC
  • US8340463B1 patent drawing
  • US8340463B1 patent drawing
  • US8340463B1 patent drawing

AI summary

Systems and methods for performing image editing operations may divide an input image into overlapping patches and assign those patches to locations in a reconstructed output image such that visual artifacts are minimized. The methods may use belief propagation to compute a joint probability for the assignment of active patch labels to output image nodes. The computation may include an exclusivity term, steering the solution such that each patch is preferably only used once in the output image. The methods may include a pre-computation of a pruned list of candidate patches for placing next to each patch in the output image, dependent on local evidence (e.g., color, intensity, or user-driven placement) for each patch. The pre-computation may include determining groupings of patches, each forming a highly compatible loop of neighboring patches for a given candidate patch. The methods may be implemented as program instructions executable by a CPU and/or GPU.