Parallel Raster Image Segmentation for Memory Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing image processing technologies do not effectively utilize multiple renderers for parallel generation of raster data, leading to inefficiencies in rendering processing speed and memory requirements.

Innovation Solution

An image processing apparatus that segments a raster image into regions with a predetermined width and height, using multiple rendering units to generate raster images in parallel and then segmenting these into smaller regions, allowing for efficient parallel processing and reduced memory requirements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple renderers are used to generate raster data in parallel, then rendering processing speed is improved, but memory requirements increase due to the need to store generated raster data pieces until segmentation completes

Engineering Contradiction:
Improverendering processing speedVSAvoidmemory requirements
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent divides the raster data generation process into segments corresponding to tile heights, allowing each renderer to process and output data in manageable chunks that can be immediately segmented and processed, rather than generating complete large-scale raster data that must be stored in memory

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary segmentation of the rendering area into multiple regions corresponding to tile heights before rendering begins. This allows renderers to generate data in pre-defined segments that can be immediately processed by the tile segmenting unit, eliminating the need to store complete raster data sets in memory

Inventive Principle:
Principle #10Preliminary action

2Quantity of substance

If raster data of bands with height equal to tile height is generated by one renderer, then memory usage is reduced, but rendering processing speed decreases due to inability to utilize parallel processing

Engineering Contradiction:
Improvememory usageVSAvoidrendering processing speed
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent segments the total rendering area into multiple vertical regions, each with height equal to the tile height. Each renderer is assigned to process one or more of these segmented regions in parallel, allowing both parallel processing and controlled memory usage since each renderer only needs to store data for its assigned segment

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a vertical segmentation dimension to the rendering process, dividing the rendering area into multiple bands or regions along the vertical axis. This allows parallel processing across multiple renderers while keeping each renderer's memory requirements proportional to a single tile height rather than the entire image height

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

Data Source

PatentUS10089561B2Generating a raster image region by rendering in parallel plural regions of smaller height and segmenting the generated raster image region into plural regions of smaller width
Publication Date: 2018.10.02 CANON KK
  • US10089561B2 patent drawing
  • US10089561B2 patent drawing
  • US10089561B2 patent drawing

AI summary

An image processing apparatus which segments a raster image of a region having a predetermined width and a predetermined height includes an acquiring unit configured to acquire print data, a plurality of rendering units each configured to perform rendering in regions each having the predetermined width and a height smaller than the predetermined height based on the print data to generate a raster image of a region having the predetermined width and the predetermined height, the rendering being performed in parallel by the plurality of rendering units, and a segmenting unit configured to segment the generated raster image of the region having the predetermined width and the predetermined height into raster images of a plurality of segment regions each having a width smaller than the predetermined width and the predetermined height.