Program generating apparatus and method therefor
US-10303447-B2 · May 28, 2019 · US
US10489710B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10489710-B2 |
| Application number | US-201715801842-A |
| Country | US |
| Kind code | B2 |
| Filing date | Nov 2, 2017 |
| Priority date | Jun 25, 2015 |
| Publication date | Nov 26, 2019 |
| Grant date | Nov 26, 2019 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
In a program generation apparatus, a processing unit selects a first program from among a plurality of image processing programs each generated by combining a plurality of partial programs; generates a second program by changing a part of the partial programs included in the first program; performs image processing on an input image, using the second program; determines whether to pass the second program to the next generation, based on a comparison between one or more intermediate output images that are output halfway through the image processing and a first target image; and replaces one of the image processing programs with the second program when the second program is determined to be passed to the next generation.
Opening claim text (preview).
What is claimed is: 1. A program generation apparatus that generates a program by using genetic programming, the program generation apparatus comprising: a memory configured to store learning data including an input image and a first target image, the first target image indicating an image that is output halfway through a process of converting the input image into a second target image; and a processor configured to perform a procedure including: selecting a first program from among a plurality of image processing programs each generated by combining a plurality of partial programs, generating a second program by changing a part of the partial programs included in the first program, performing image processing on the input image using the second program, determining whether to pass the second program to a next generation, based on a comparison between one or more intermediate output images and the first target image, the one or more intermediate output images being output halfway through the image processing, and replacing one of the plurality of image processing programs with the second program when the second program is determined to be passed to the next generation. 2. The program generation apparatus according to claim 1 , wherein: the performing includes executing non-final partial programs from among the partial programs included in the second program, the non-final partial programs being incorporated in positions other than a final stage, and outputting the intermediate output images for the respective non-final partial programs; and the determining includes calculating evaluation values for the respective non-final partial programs, based on a comparison between each of the intermediate output images that are output for the respective non-final partial programs and the first target image, and determining whether to pass the second program to the next generation, based on a maximum value among the evaluation values. 3. The program generation apparatus according to claim 1 , wherein: the procedure further includes performing processes on the input image using the respective image processing programs, and calculating a weight coefficient based on a comparison between each of images that are output halfway through the respective processes and the first target image; and the determining includes calculating a first evaluation value based on the comparison between the one or more intermediate output images and the first target image, calculating a second evaluation value based on a comparison between a final output image and the second target image, the final output image being output as a result of the image processing, and determining whether to pass the second program to the next generation, based on a third evaluation value obtained by synthesizing the first evaluation value and the second evaluation value at a ratio corresponding to the weight coefficient. 4. The program generation apparatus according to claim 1 , wherein: the procedure further includes calculating a weight coefficient, based on a number of times of generation change of a population that includes the plurality of image processing programs as individuals of a current generation; and the determining includes calculating a first evaluation value based on the comparison between the one or more intermediate output images and the first target image, calculating a second evaluation value based on a comparison between a final output image and the second target image, the final output image being output as a result of the image processing, and determining whether to pass the second program to the next generation, based on a third evaluation value obtained by synthesizing the first evaluation value and the second evaluation value at a ratio corresponding to the weight coefficient. 5. The program generation apparatus according to claim 1 , wherein: the first target image is an image obtained by distinguishing between a first image region on which specific processing is performed and a second image region other than the first image region in the input image; and the second target image is an image obtained by performing the specific processing on the first image region of the input image. 6. A program generation method for generating a program by using genetic programming, the program generation method comprising: selecting, by a processor, a first program from among a plurality of image processing programs each generated by combining a plurality of partial programs; generating, by the processor, a second program by changing a part of the partial programs included in the first program; performing, by the processor, image processing on an input image using the second program; determining, by the processor, whether to pass the second program to a next generation, based on a comparison between one or more intermediate output images and a first target image, the one or more intermediate output images being output halfway through the image processing, the first target image indicating an image that is output halfway through a process of converting the input image into a second target image; and replacing, by the processor, one of the plurality of image processing programs with the second program when the second program is determined to be passed to the next generation. 7. A non-transitory computer-readable storage medium storing a computer program for generating a program by using genetic programming, the computer program causing a computer to perform a procedure comprising: selecting a first program from among a plurality of image processing programs each generated by combining a plurality of partial programs; generating a second program by changing a part of the partial programs included in the first program; performing image processing on an input image using the second program; determining whether to pass the second program to a next generation, based on a comparison between one or more intermediate output images and a first target image, the one or more intermediate output images being output halfway through the image processing, the first target image indicating an image that is output halfway through a process of converting the input image into a second target image; and replacing one of the plurality of image processing programs with the second program when the second program is determined to be passed to the next generation.
Evolutionary algorithms, e.g. genetic algorithms or genetic programming · CPC title
Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting · CPC title
using genetic models · CPC title
Image analysis · CPC title
using local operators · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.