IP Library Granted Patent US 8,773,446
Granted Patent B2
US 8,773,446 · App. 13/023,798 · Granted Jul 8, 2014

Synchronous parallel pixel processing for scalable color reproduction systems

Inventors: Shanmuga-Nathan Gnanasambandam (Victor, NY); Lalit Keshav Mestha (Fairport, NY)
Assignee: Xerox Corporation
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,773,446
App. No.
13/023,798
Granted
Jul 8, 2014
Kind
B2
Abstract

What is disclosed is a novel system and method for parallel processing of intra-image data in a distributed computing environment. A generic architecture and method are presented which collectively facilitate image segmentation and block sorting and merging operations with a certain level of synchronization in a parallel image processing environment which has been traditionally difficult to parallelize. The present system and method enables pixel-level processing at higher speeds thus making it a viable service for a print/copy job document reproduction environment. The teachings hereof have been simulated on a cloud-based computing environment with a demonstrable increase of ≈2× with nominal 8-way parallelism, and an increase of ≈20×-100× on a graphics processor. In addition to production and office scenarios where intra-image processing are likely to be performed, these teachings are applicable to other domains where high-speed video and audio processing are desirable.

Claims (46)

1. A method for parallel processing of intra-image data in a state-based imaging system, the method comprising:

receiving at least one customer expectation criteria with respect to a customer job intended to be processed by a state-based imaging system comprising w available resources, said customer criteria comprising at least a type of processing desired to be performed on said customer's job;

selecting a desired number d of said available resources in said state-based imaging system which at least meet said customer's expectation criteria;

using at least one segmentation resource to segment said image into k=min(w,d) image segments;

using k pixel-level processors to process said k image segments into batches of processed pixels, each pixel-level processor operating on a respective k th segment in parallel;

using at least one sorting resource to sort said batches of processed pixels into a plurality of ordered batches;

using at least one merging resource to hierarchically merge said ordered batches into a plurality of merged batches of processed pixels; and

concatenating said merged batches of processed pixels to obtain a processed image.

2. The method of claim 1 , wherein said state-based imaging system comprises any of: a plurality of processors, a plurality of multi-core processors, and a multi-threaded system.

3. The method of claim 1 , wherein any of said w available resources comprises a distributed code segment.

4. The method of claim 1 , wherein segmenting of said image is performed using a distributed segmentation algorithm that selects said k number of image segments.

5. The method of claim 1 , wherein said selection of said desired number of available resources is based upon any of: a prior run history of similar jobs, and a dynamic optimization strategy.

6. The method of claim 1 , wherein said customer expectation criteria comprises any of:

a desired price point for said customer job;

a desired timeframe in which said customer job is to be processed; and

a desired quality of said processed output image.

7. The method of claim 1 , further comprising billing said customer for said job according to a billing criteria comprising any of:

said desired number of resources d used to process said customer job;

said number of pixels in said received image;

said total number of pixels processed by each of said pixel-level processing resources;

said total number of sorted batches produced by said sorting resources;

said total number of batches merge by said merging resources; and

a size of said processed output image.

8. The method of claim 1 , wherein said selection of said desired number of available resources is based upon a prior run history of similar jobs.

9. A state-based imaging system for parallel processing of intra-image data, said state-based imaging system comprising:

at least one segmentation resource for segmenting an input image into k=min(w,d) image segments, where w is a number of available resources in said stage-based imaging system and d is a number of said available resources selected to at least meet a customer's expectation criteria comprising at least a type of processing desired to be performed on said customer's job;

a plurality of pixel-level processors for processing said k image segments into batches of processed pixels, each processor operating on a respective k th segment in parallel;

at least one sorting resource for sorting said batches of processed pixels into ordered batches of processed pixels;

at least one merging resource for hierarchically merging said ordered batches to produce a plurality of merged batches of processed pixels; and

a processor executing machine readable instructions for concatenating said plurality of merged batches of processed pixels to obtain a processed image.

10. The system of claim 9 , wherein said state-based imaging system comprises any of: a plurality of processors, a plurality of multi-core processors, and a multi-threaded system.

11. The system of claim 9 , wherein any of said w available resources comprises a distributed code segment.

12. The system of claim 9 , wherein segmenting of said image is performed using a distributed segmentation algorithm that selects said k number of image segments.

13. The system of claim 9 , wherein said selection of said desired number of available resources is based upon any of: a prior run history of similar jobs, and a dynamic optimization strategy.

14. The system of claim 9 , wherein said customer expectation criteria comprises any of:

a desired price point for said customer job;

a desired timeframe in which said customer job is to be processed; and

a desired quality of said processed output image.

15. The system of claim 9 , further comprising billing said customer for said job according to a billing criteria comprising any of:

said desired number of resources d used to process said customer job;

said number of pixels in said received image;

said total number of pixels processed by each of said pixel-level processing resources;

said total number of sorted batches produced by said sorting resources;

said total number of batches merge by said merging resources; and

a size of said processed output image.

16. The system of claim 9 , wherein said selection of said desired number of available resources is based upon a prior run history of similar jobs.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 9, 2011
From: GNANASAMBANDAM, SHANMUGA-NATHAN; MESTHA, LALIT KESHAV
To: XEROX CORPORATION
Reel/Frame 025776/0634 →
Continuity (1)
Related Publication 20120200580A1 · Aug 9, 2012