IP Library › Granted Patent US 10,795,725
Granted Patent B2
US 10,795,725 · App. 16/061,075 · Granted Oct 6, 2020

Image processing device, image processing method, and non-transitory computer readable medium for image processing

Inventors: Takashi Nagao (Kanagawa, JP); Kazuyuki Itagaki (Kanagawa, JP); Kosei Takemoto (Kanagawa, JP)
Assignees: FUJI XEROX CO., LTD.; FUJIFILM Corporation
G06F9/4881G06F9/50
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 10,795,725
App. No.
16/061,075
Granted
Oct 6, 2020
Kind
B2
Abstract

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.

Claims (41)

1. An image processing device that executes image processing by each object of an object group in which a plurality of objects are connected to each other in a directed acyclic graph form, the image processing device comprising:

a memory storing instructions; and

at least one hardware processor configured to execute the instructions by implementing:

updating processing and imparting processing, the updating processing comprising 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 a plurality of partial regions, and the imparting processing comprising imparting a dependency relationship between pieces of the partial processing of the objects connected to each other; and

control comprising causing a plurality of 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.

2. The image processing device according to claim 1 , wherein the at least one hardware processor is further configured to execute the instructions by implementing a task comprising sequentially executing the updating processing and the imparting processing for each object of the object group in a task queue, sequentially storing the partial processing which becomes executable based on the dependency relationship in the task queue, and performing control such that the updating processing and the imparting processing and the partial processing are executed in parallel, and each of the plurality of computation devices sequentially reads and executes the stored task from the task queue.

3. The image processing device according to claim 2 ,

wherein the at least one hardware processor is further configured to execute the instructions by, in a case where the image processing is continuously performed on a plurality of pieces of input image data, implementing performance of priority imparting processing of imparting a higher priority to a first partial processing which comprises executing the image processing on the input image data which is previously input than a second partial processing which comprises executing the image processing on the input image data which is later input, and

wherein the at least one hardware processor is further configured to execute the instructions by, in a case where a plurality of pieces of partial processing become executable based on the dependency relationship, implementing control such that the plurality of pieces of partial processing are executed in descending order of the priority.

4. The image processing device according to claim 2 , wherein the dependency relationship is a relationship between the objects connected to each other, in which the partial processing of the object connected to a post-stage becomes executable in a case where the partial processing of the object connected to a pre-stage is completed.

5. The image processing device according to claim 1 ,

wherein the at least one hardware processor is further configured to execute the instructions by, in a case where the image processing is continuously performed on a plurality of pieces of input image data, implementing performance of priority imparting processing of imparting a higher priority to a first partial processing which comprises executing the image processing on the input image data which is previously input than a second partial processing which comprises executing the image processing on the input image data which is later input, and

wherein the at least one hardware processor is further configured to execute the instructions by, in a case where a plurality of pieces of partial processing become executable based on the dependency relationship, implementing control such that the plurality of pieces of partial processing are executed in descending order of the priority.

6. The image processing device according to claim 5 , wherein the dependency relationship is a relationship between the objects connected to each other, in which the partial processing of the object connected to a post-stage becomes executable in a case where the partial processing of the object connected to a pre-stage is completed.

7. The image processing device according to claim 1 , wherein the dependency relationship is a relationship between the objects connected to each other, in which the partial processing of the object connected to a post-stage becomes executable in a case where the partial processing of the object connected to a pre-stage is completed.

8. An image processing method for image processing by each object of an object group in which a plurality of objects are connected to each other in a directed acyclic graph form, the image processing method comprising:

implementing updating processing and imparting processing, the updating processing comprising 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 a plurality of partial regions, and the imparting processing comprising imparting a dependency relationship between pieces of the partial processing of the objects connected to each other; and

implementing controlling processing comprising causing a plurality of 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.

9. A non-transitory computer readable medium storing a program causing a computer to execute a process for image processing, the process comprising: processing and controlling in an image processing device according to the image processing method of claim 8 .

10. The image processing method according to claim 8 , further comprising implementing a task comprising sequentially executing the updating processing and the imparting processing for each object of the object group in a task queue, sequentially storing the partial processing which becomes executable based on the dependency relationship in the task queue, and performing control such that the updating processing and the imparting processing and the partial processing are executed in parallel, and each of the plurality of computation devices sequentially reads and executes the stored task from the task queue.

11. The image processing device according to claim 10 , wherein the dependency relationship is a relationship between the objects connected to each other, in which the partial processing of the object connected to a post-stage becomes executable in a case where the partial processing of the object connected to a pre-stage is completed.

12. The image processing method according to claim 8 , further comprising:

implementing, in a case where the image processing is continuously performed on a plurality of pieces of input image data, performance of priority imparting processing of imparting a higher priority to a first partial processing, which comprises executing the image processing on the input image data which is previously input, than a second partial processing which comprises executing the image processing on the input image data which is later input; and

implementing, in a case where a plurality of pieces of partial processing become executable based on the dependency relationship, control such that the plurality of pieces of partial processing are executed in descending order of the priority.

13. The image processing method according to claim 10 , further comprising:

implementing, in a case where the image processing is continuously performed on a plurality of pieces of input image data, performance of priority imparting processing of imparting a higher priority to a first partial processing, which comprises executing the image processing on the input image data which is previously input, than a second partial processing which comprises executing the image processing on the input image data which is later input; and

implementing, in a case where a plurality of pieces of partial processing become executable based on the dependency relationship, control such that the plurality of pieces of partial processing are executed in descending order of the priority.

14. The image processing device according to claim 12 , wherein the dependency relationship is a relationship between the objects connected to each other, in which the partial processing of the object connected to a post-stage becomes executable in a case where the partial processing of the object connected to a pre-stage is completed.

15. The image processing method according to claim 8 , wherein the dependency relationship is a relationship between the objects connected to each other, in which the partial processing of the object connected to a post-stage becomes executable in a case where the partial processing of the object connected to a pre-stage is completed.

16. A non-transitory computer readable medium storing a program causing a computer to execute image processing by each object of an object group in which a plurality of objects are connected to each other in a directed acyclic graph form, the image processing comprising:

implementing updating processing and imparting processing, the updating processing comprising 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 a plurality of partial regions, and the imparting processing comprising imparting a dependency relationship between pieces of the partial processing of the objects connected to each other; and

implementing controlling processing comprising causing a plurality of 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.

17. The non-transitory computer readable medium according to claim 16 , wherein the image processing further comprises implementing a task comprising sequentially executing the updating processing and the imparting processing for each object of the object group in a task queue, sequentially storing the partial processing which becomes executable based on the dependency relationship in the task queue, and performing control such that the updating processing and the imparting processing and the partial processing are executed in parallel, and each of the plurality of computation devices sequentially reads and executes the stored task from the task queue.

18. The non-transitory computer readable medium according to claim 17 , wherein the dependency relationship is a relationship between the objects connected to each other, in which the partial processing of the object connected to a post-stage becomes executable in a case where the partial processing of the object connected to a pre-stage is completed.

19. The non-transitory computer readable medium according to claim 16 , wherein the image processing further comprises:

implementing, in a case where the image processing is continuously performed on a plurality of pieces of input image data, performance of priority imparting processing of imparting a higher priority to a first partial processing, which comprises executing the image processing on the input image data which is previously input, than a second partial processing which comprises executing the image processing on the input image data which is later input; and

implementing, in a case where a plurality of pieces of partial processing become executable based on the dependency relationship, control such that the plurality of pieces of partial processing are executed in descending order of the priority.

20. The non-transitory computer readable medium according to claim 16 , wherein the image processing further comprises:

implementing, in a case where the image processing is continuously performed on a plurality of pieces of input image data, performance of priority imparting processing of imparting a higher priority to a first partial processing, which comprises executing the image processing on the input image data which is previously input, than a second partial processing which comprises executing the image processing on the input image data which is later input; and

implementing, in a case where a plurality of pieces of partial processing become executable based on the dependency relationship, control such that the plurality of pieces of partial processing are executed in descending order of the priority.

21. The non-transitory computer readable medium according to claim 16 , wherein the dependency relationship is a relationship between the objects connected to each other, in which the partial processing of the object connected to a post-stage becomes executable in a case where the partial processing of the object connected to a pre-stage is completed.

Assignments (2)
CHANGE OF NAME Recorded Aug 12, 2021
From: FUJI XEROX CO., LTD.
To: FUJIFILM BUSINESS INNOVATION CORP.
Reel/Frame 058287/0056 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 11, 2018
From: NAGAO, TAKASHI; ITAGAKI, KAZUYUKI; TAKEMOTO, KOSEI
To: FUJI XEROX CO., LTD.; FUJIFILM CORPORATION
Reel/Frame 046042/0649 →
Priority Claims (1)
JP 2016-060526 · Mar 24, 2016 · national
Continuity (1)
Related Publication 20180365059A1 · Dec 20, 2018
Cited By (2)
US 12,406,324 US 12,499,547