Genetic Programming for Adaptive Image Processing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Visual inspection systems in industrial settings face challenges in maintaining robust image processing due to environmental changes, such as variations in noise, shade, and brightness, requiring frequent reconstruction of image processing programs.
Innovation Solution
An information processing apparatus utilizing genetic programming to automatically generate and update image processing programs, allowing for quicker relearning and adaptation to changes in the image capturing environment by using new learning data and incorporating previously determined image processing programs as initial individuals.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If image processing programs are manually reconstructed when inspection environments change, then the visual inspection apparatus can adapt to new conditions, but the time and complexity required for reconstruction increases
Solution Approach 1:
The system performs automatic reconstruction of image processing programs through genetic programming, eliminating the need for manual intervention. The apparatus autonomously generates optimized processing programs by evaluating candidate programs against learning data and automatically selecting the best performers, thereby reducing reconstruction time while maintaining adaptability to environmental changes
Solution Approach 2:
The system prepares multiple candidate image processing programs in advance through genetic programming before actual inspection begins. These candidate programs are pre-evaluated using learning data, so when environmental changes occur, the system can quickly switch to or further optimize appropriate candidates without time-consuming manual reconstruction
2Loss of time
If genetic programming is used to automatically generate image processing programs, then reconstruction time is reduced, but the computational complexity and processing time during generation increases
Solution Approach 1:
The genetic programming process is divided into distinct phases: initialization of candidate programs, evaluation against learning data, selection of high-performing candidates, and generation of improved programs. This segmentation allows the system to manage computational complexity by processing programs in discrete generations rather than attempting simultaneous optimization of all parameters
Solution Approach 2:
The system adjusts population size, generation count, and selection criteria based on the specific inspection task and available computational resources. By dynamically changing these parameters, the system balances computational complexity with reconstruction time requirements, using fewer generations for simple tasks and more generations for complex inspection scenarios
3Reliability
If multiple candidate programs are generated and evaluated, then the quality and robustness of the selected program improves, but the processing time and computational resources required increases
Solution Approach 1:
The system applies different evaluation criteria and processing approaches to different candidate programs based on their specific characteristics. High-performing candidates are evaluated more rigorously while lower-performing ones are eliminated earlier, allowing the system to maintain high robustness for selected programs while reducing overall processing time through differential evaluation strategies
Solution Approach 2:
The system generates a sufficient number of candidate programs to ensure high-quality selection without exhaustively evaluating every possible program. By using fitness functions that provide good-enough evaluations rather than perfect optimizations, the system achieves robust program selection with reduced computational overhead, accepting near-optimal solutions that meet inspection requirements
Data Source
AI summary
An information processing apparatus includes a memory; and a processor configured to determine a plurality of initial image processing programs and to add the initial image processing programs to an image processing program group, extract at least two image processing programs from the image processing program group, generate a candidate of a next-generation image processing program from the extracted image processing programs, based on genetic programming, calculate a fitness of the candidate of the next-generation image processing program, using a learning data item including an input image and a target processing result, and determine the next-generation image processing program or update the image processing program group based on the calculated fitness, wherein the processor is configured to determine, as some of the initial image processing programs, at least some of first image processing programs included in the image processing program group upon previous determination of a next-generation image processing program.


