Hybrid Image Processing Pipeline for Parallel Tile Rendering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing image processing systems face limitations in handling large images due to performance penalties from intermediate results being written to disk and difficulties in concurrently processing smaller chunks, especially in push models, and added complexities in pull models for managing concurrency.

Innovation Solution

A hybrid image processing model that combines push and pull models by flattening the image processing chain, creating a token queue, and constructing a pipeline to enable parallel processing of tiles, allowing for efficient memory usage and concurrent processing while managing concurrency through a sink-centric approach.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a push model is used to process large images, then all source data can be pushed from source to sink, but intermediate results need to be written to disk incurring performance penalties and increased hard drive usage

Engineering Contradiction:
Improveimage processing throughputVSAvoidperformance time penalty
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent divides the image processing into independent tile segments that can be processed in parallel. Each tile is a self-contained unit that can be processed independently, allowing multiple tiles to be processed simultaneously without requiring sequential disk I/O operations, thus improving throughput while reducing performance penalties.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a spatial dimension to processing by dividing the image into a grid of tiles. This allows the system to process multiple regions of the image simultaneously in different processing pipelines, effectively adding parallelism across the spatial dimension rather than sequentially processing the entire image.

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

2Productivity

If sequential processing is used from source to sink, then the push model is simple to implement, but it is difficult to concurrently process smaller chunks to optimize performance

Engineering Contradiction:
Improveperformance optimizationVSAvoidconcurrency management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary tile cache that sits between the source and sink, managing the concurrency of tile processing. This intermediary structure handles the complexity of parallel processing, thread management, and data flow coordination, allowing the system to achieve performance optimization without requiring complex custom concurrency management code throughout the entire processing pipeline.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Quantity of substance

If a pull model is used to process image data in response to requests, then memory footprint is reduced by using smaller chunks, but additional complexities are added for managing concurrency

Engineering Contradiction:
Improvememory footprintVSAvoidconcurrency management complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent creates a universal tile processing framework that handles both memory efficiency and concurrency management through a single unified architecture. The tile-based approach with centralized cache management provides a multi-functional solution that simultaneously reduces memory footprint by processing smaller chunks and simplifies concurrency management through a standardized interface for all processing operations.

Inventive Principle:
Principle #6Universality (Multi-functionality)

4Ease of operation

If the push model is used, then all image data can be processed from source to sink, but it does not work well for interactive applications requiring responsive output

Engineering Contradiction:
Improveinteractive application responsivenessVSAvoidimage processing throughput
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent performs preliminary actions by pre-processing and caching tiles in advance before they are actually needed by the sink. This allows interactive applications to request and display tiles immediately without waiting for the entire image processing pipeline to complete, improving responsiveness while maintaining high throughput through parallel processing of remaining tiles.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9741087B2Parallel image processing method and system
Publication Date: 2017.08.22 HARRIS CORP
  • US9741087B2 patent drawing
  • US9741087B2 patent drawing
  • US9741087B2 patent drawing

AI summary

A hybrid processing-based image processing system performs image chain flattening, token queue creation and pipeline prior to image rendering in order to allow various portions of the image processing to be performed in parallel. Tokens are passed between the filters of the pipeline generated from the flattened image chain to allow order-preserving operations to be performed which result in the same image as would have been produced by the original image chain using sequential processing.