Parallel Image Processing via DAG Dependency Segmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing image processing technologies are inefficient in processing speed when executing partial processing for multiple objects connected in a directed acyclic graph (DAG) form, as they perform all updates sequentially rather than in parallel.
Innovation Solution
An image processing device that includes a processing unit for updating and imparting processing, which divides image data into partial regions and establishes dependency relationships between connected objects, allowing parallel execution of updating, imparting, and partial processing across multiple computation devices.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If sequential updating processing is performed for all objects in the DAG before partial processing, then dependency relationships are properly maintained, but processing speed deteriorates due to serial execution
Solution Approach 1:
The patent segments the updating processing into object-specific tasks that can be executed in parallel. Instead of sequentially updating all objects before partial processing, the system divides the updating work into independent units (one per object) that maintain their dependency relationships but can be processed concurrently across multiple computation devices.
Solution Approach 2:
The patent implements dynamic task management where the system adaptively determines which objects can be processed in parallel based on their dependency relationships. The processing flow is dynamically adjusted to allow parallel execution of independent object updates while maintaining proper sequencing for dependent objects, optimizing both reliability and speed.
2Productivity
If parallel execution of updating processing and partial processing is implemented, then processing speed improves, but system complexity increases due to coordination requirements
Solution Approach 1:
The patent introduces a task management unit as an intermediary that coordinates between the parallel execution of updating processing and partial processing. This mediator manages task queues, handles dependency resolution, and orchestrates the parallel execution across multiple computation devices, thereby enabling speed improvement while containing system complexity through a dedicated coordination layer.
Solution Approach 2:
The patent creates copies of processing tasks for different objects that can be executed in parallel on separate computation devices. Each object's updating and partial processing is replicated as an independent task instance, allowing simultaneous execution while the task management unit coordinates these copies to maintain overall system consistency.
3Reliability
If all objects are processed completely before dividing into partial regions, then object-level dependencies are maintained, but processing efficiency deteriorates due to inability to parallelize partial processing
Solution Approach 1:
The patent applies segmentation by dividing objects into multiple partial regions (partial processing units) while maintaining object-level dependency relationships. Each object can be split into independent partial regions that can be processed in parallel, yet the dependency structure between different objects is preserved through the task management system that coordinates partial processing across the DAG.
Solution Approach 2:
The patent introduces a new dimension of parallelization by enabling partial processing within objects. Instead of only processing complete objects sequentially, the system adds a spatial dimension (partial regions) to the processing workflow, allowing parallel execution both across different objects and within the same object's different regions.
Data Source
AI summary
An image processing device executes image processing by each object of an object group in which plural objects are connected to each other in a directed acyclic graph form. A processing unit performs updating processing and imparting processing, the updating processing for updating image processing which is executed by each object of the object group to partial processing which performs image processing on division image data representing a division image obtained by dividing an input image represented by input image data into plural partial regions, and the imparting processing for imparting a dependency relationship between pieces of the partial processing of the objects connected to each other. A controller performs control for causing plural computation devices to execute, in parallel, the updating processing and the imparting processing by the processing unit and the partial processing which becomes executable based on the dependency relationship.


