The present embodiments discussed herein are related to an information processing device, an information processing method, and an information processing program.
There is a technique for automatically generating an image processing program for executing desired image processing by genetic programming. The technique uses an input image and a target processing result (target image or the like) to optimize the image processing program by the genetic programming.
Related art is disclosed in International Publication Pamphlet No. WO 2017/068675.
According to an aspect of the embodiments, an information processing device includes: a memory; and a processor coupled to the memory and configured to: automatically generate an image classification program that classifies a first learning image group classified into two classes in advance into the two classes on a basis of the genetic programming; and generate a multi-class image classifier that gives a second learning image group classified into three or more classes in advance to the image classification program automatically and classifies the second learning image group into the three or more classes.
The object and advantages of the invention will be realized and attained by means of the elements and combinations particularly pointed out in the claims.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not restrictive of the invention.
Furthermore, as a type of automatic generation of the image processing program, a method has been proposed of automatically generating an image classification program that performs class classification of images (category classification). By using the image classification program, for example, objects imaged in the images can be classified into two classes, a non-defective product and a defective product.
As described above, it is useful if it is possible to classify the objects imaged in the images into multiple classes according to a degree of a non-defective product and a defective mode (type of defect) not only to classify the objects into two classes including the non-defective product and the defective product. A typical identifier that can perform the multi-class classification is, for example, a Support Vector Machine (SVM) identifier or the like.
However, in a case where the SVM identifier that classifies the objects into two classes is extended to multiple classes and an image classification program is automatically generated, a processing amount to create the SVM identifier increases in the order of the square of the number of classes, and an entire learning time greatly increases.
In one aspect, an information processing device, an information processing method, and an information processing program that can reduce a processing amount when a multi-class image classifier is generated may be provided.
Hereinafter, a first embodiment of an image classification device as an information processing device will be described in detail with reference to
The processor 101 controls the entire image classification device 100. The processor 101 may also be a multiprocessor. The processor 101 is, for example, a central processing unit (CPU), a micro processing unit (MPU), a digital signal processor (DSP), an application specific integrated circuit (ASIC), a programmable logic device (PLD), or the like. Furthermore, the processor 101 may be a combination of two or more elements of a CPU, an MPU, a DSP, an ASIC, and a PLD.
The RAM 102 is used as a main storage device of the image classification device 100. The RAM 102 temporarily stores at least a part of an operating system (OS) program or an application program to be executed by the processor 101. Furthermore, the RAM 102 stores various data required for processing by the processor 101.
The HDD 103 is used as an auxiliary storage device of the image classification device 100. The HDD 103 stores the OS program, the application program, and various data. Note that, the auxiliary storage device can be implemented by another type of nonvolatile storage device such as a solid state drive (SSD).
The graphic processing device 104 is connected to a display device 104a. The graphic processing device 104 displays an image on a screen of the display device 104a in accordance with a command from the processor 101. Examples of the display device include a liquid crystal display, an organic ElectroLuminescence (EL) display, or the like.
The input interface 105 is connected to an input device 105a. The input interface 105 transmits a signal output from the input device 105a to the processor 101. Examples of the input device 105a include a keyboard, a pointing device, and the like. Examples of the pointing device include a mouse, a touch panel, a tablet, a touch pad, a track ball, and the like.
A portable recording medium 106a is attached/detached to/from the reading device 106. The reading device 106 reads data recorded in the portable recording medium 106a and transmits the data to the processor 101. Examples of the portable recording medium 106a include an optical disk, a magneto-optical disk, a semiconductor memory, and the like.
The communication interface 107 transmits/receives data to/from a connected external device. In the first embodiment, a camera 107a, as an external device, is connected to the communication interface 107, and the communication interface 107 transmits image data transmitted from the camera 107a to the processor 101.
The network interface 108 transmits/receives data to/from another device via the network 108a.
The image classification device 100 automatically generates an image classification program that classifies an input image into one of two classes, by the genetic programming. The image classification processing based on the generated image classification program includes, for example, processing of determining whether a product or part imaged in the input image is a non-defective product or a defective product, processing of determining whether or not a face is imaged in the input image, and the like.
Processing implemented by the image classification program includes identifier generation processing of generating an identifier (quality determination identifier) that classifies the input image into two classes by learning using a learning image and preprocessing of generating feature information to be input to the quality determination identifier on the basis of the learning image. To implement high-accuracy image classification, both points are important of what kind of feature amount is extracted from the learning image and used, and what kind of quality determination identifier is generated on the basis of the obtained feature amount. The image classification device 100 searches for an optimal combination of a quality determination identifier generation algorithm and a preprocessing algorithm, by the genetic programming.
Furthermore, the image classification device 100 generates an identifier that can perform multi-class quality determination by using the generated image classification program. Note that details of the identifier that can perform multi-class quality determination will be described later.
(About Individual Handled in Genetic Programming)
Here, the image conversion processing, the image feature amount extraction processing, and the input data creation processing are associated with preprocessing of generating data to be input to the identifier. In the image conversion processing, an image conversion filter is used to convert the input image to be suitable for feature extraction. Note that, as the image conversion filter, it is possible to apply a Smooth filter, a Sobel filter, a Laplace filter, an And filter, a Sub filter, an Add filter, an Or filter, an Erode filter, a Dilate filter, a Threshold filter, and the like.
The image feature amount extraction processing is processing of extracting a feature amount from the image converted by the image conversion processing by using a feature extraction filter. As the feature extraction filter, it is possible to apply a filter that calculates an average luminance, a filter that calculates a luminance histogram, a filter that executes fast Fourier transformation (FFT), and the like. Furthermore, it is possible to apply a filter that extracts the same type of features having different control parameters such as the number of divided regions.
The input data creation processing is processing of generating input data (feature vector) to be input to the identifier on the basis of the feature amount extracted by the image feature amount extraction processing. As an input data generation module of generating the input data to be input to the identifier, it is possible to use, for example, a program module each having one or two inputs, and a program module that executes normalization of the input data, compression of the input data, and the like.
The SVM parameter setting processing includes, for example, processing of setting an absolute value of a learning parameter and processing of setting a relative value of the learning parameter. The set absolute value is increased or decreased by addition and subtraction, scaling, or the like using the set relative value, thereby the learning parameter (hereinafter, referred to as hyperparameter) of generating the identifier is determined.
The SVM identifier generation processing determines a kernel function and an operation mode to be used. As the kernel function, it is possible to apply, for example, a LINEAR kernel, a POLYNOMIAL kernel, a Radial Basis Function (RBF) kernel, a SIGMOID kernel, and the like. Furthermore, as the operation mode, a mode of learning the tree structure and the SVM identifier and a mode of determining the quality of the input image are determined.
In the learning performing mode, the fitness calculation processing executes classification processing of determining the quality of the learning image on the basis of the input data created by the input data creation processing in accordance with identifier information generated by the SVM identifier generation processing. Furthermore, the fitness calculation processing compares a classification result by the classification processing with quality indicated by a label attached to the learning image and determines whether the classification result is correct or incorrect. Then, the fitness calculation processing executes determination a plurality of times by using cross-validation or the like to calculate an accuracy rate for the learning image, and calculates a fitness of an individual on the basis of the calculated accuracy rate. Here, the fitness is an index indicating how much an output result of an automatically generated tree structure filter sequence matches a target image recognition result. In the first embodiment, a penalty term is also considered in calculation of the fitness of each individual in the fitness calculation processing. As the penalty term, it is possible to apply the number of feature dimensions of the identifier, the size of the tree structure (the number of nodes or the maximum number of levels of nodes included in the tree structure), the number of support vectors in a case where the SVM identifier is used, and the like. For example, in general, as the identifier becomes more complex in comparison with the obtained data, over-fitting is more likely to occur. Thus, for example, the fitness is calculated while correcting the accuracy rate to be smaller as the number of feature dimensions is larger, or the size of the tree structure is larger, or the number of support vectors is larger. Note that, the number of feature dimensions can be determined on the basis of the input data generation module set in the input data creation processing. By correcting the accuracy rate depending on the penalty term in this way, superiority or inferiority of a learning result can be accurately evaluated, and an image classification program having high classification accuracy with respect to an unknown image can be generated.
(Outline of Image Classification Program Generation Processing)
Next, an outline of image classification program generation processing by the genetic programming will be described with reference to
In the image classification program generation processing by the genetic programming, an individual (indicated by white circle in
The image classification program generation processing by the genetic programming is executed, for example, as follows.
First, in step S100, a plurality of initial individuals included in a population 11 is generated. In a node of each initial individual, an image processing filter that is randomly selected from among the plurality of image processing filters that has been prepared in advance is incorporated. Furthermore, a fitness of each generated initial individual is calculated. Note that, in a case where the maximum value of the calculated fitness is equal to or more than a predetermined threshold, an initial individual having the largest fitness is output as a final image classification program.
In a case where the maximum value of the fitness is less than the predetermined threshold, in step S102, a certain number of (for example, two in
Next, in step S106, a fitness of each generated child individual is calculated.
Here, in a case where the fitness of any one of the generated child individuals is equal to or more than a predetermined threshold, the individual is output as the final image classification program, and the program generation processing is terminated.
On the other hand, in a case where the fitness of all the child individuals is less than the predetermined threshold, in step S108, survival selection is performed from among an individual group 12 including the generated child individuals and the original two parent individuals. In the survival selection, an individual having the largest calculated fitness is selected from among the individual group 12. Furthermore, a single individual is selected from among the remaining individuals in the individual group 12 by a predetermined method. For example, an individual is selected from among the remaining individuals with a probability according to the fitness (roulette selection).
Two individuals selected by such survival selection are replaced with the two individuals selected as the parent individuals among the individuals included in the population 11 in step S110. With this operation, the individual included in the population 11 is changed to a next-generation individual. Then, similar processing is repeated until an individual of which a fitness is equal to or more than the predetermined threshold appears.
As an application of the image classification program generated by the procedure described above, for example, an application of executing image processing on an image obtained by imaging a product and obtaining a desired effect in the factory automation (FA) field is considered. For example, an application is considered that executes image processing on an image obtained by imaging an appearance of a product, extracts a defective part, and extracts a part to be aligned.
In such an application, there is a case where it is necessary to reconstruct the image classification program according to changes and improvements in the product to be a subject, changes in imaging environment according to the changes in the product, or the like. Therefore, it is required for the image classification program to be easily constructed. Furthermore, it is required to construct an image classification program with high robustness against the changes in the imaging environment such as a change in lighting conditions, a shape of a subject, or variations of positional posture.
By using the genetic programming, it is possible to easily generate the image classification program that can be used for such an application by only preparing the input image 21 and the classification correct data 22 corresponding to the input image 21 in advance. Furthermore, by preparing a plurality of pairs of input images 21 and the pieces of classification correct data 22 (learning data 20) in respectively different imaging environments, it is possible to automatically generate an image classification program with high robustness against the change in the imaging environment.
(Outline of Processing)
Next, an outline of processing according to the first embodiment will be described. In the first embodiment, an SVM identifier is generated that can perform multi-class quality determination by using the image classification program that can determine the quality (determination of OK image/NG image) generated by the image classification program generation processing illustrated in
(1) Input of Learning Correct Data
Learning correct data in which a correct class is written for each image file is input. At this time, for example, as illustrated in
(2) Automatic Generation of Quality Determination Program
The image classification program is automatically generated by using the correct data for quality determination automatic generation as described with reference to
(3) Generation of Defective-Mode-Included Quality Determination Identifier
The image conversion processing and the image feature amount extraction processing optimized for the determination of the quality are not necessarily limited to being optimized with accuracy of classifying the types of the NG image. However, it is expected that a very effective image feature amount is extracted. Furthermore, because the hyperparameter of the identifier is also optimized for creating the identifier that identifies two quality classes with the same image feature amount, it can be expected that the hyperparameter is a very effective parameter when a multi-class classifier is created.
According to the prediction, by directly applying multi-class learning correct data including the defective mode (
Here, generation processing of the defective-mode-included quality determination identifier will be described in detail with respect to
In the initial learning as illustrated in
By applying the learning correct data as illustrated in
(4) Defective Mode Classification Processing
At the time of performing the image classification, the quality determination program is applied to the input image to extract the image feature amount, and the feature amount is given to the defective-mode-included quality determination identifier to perform multi-class classification (defect classification). Note that the quality may be determined in parallel by using the quality determination program and the quality determination identifier thereof.
(About Processing Functions of Image Classification Device 100)
Processing of the image input unit 111, the correct data input unit 110, the image inspection processing unit 112, and the program generation unit 120 is implemented, for example, by execution of a predetermined program (including information processing program) by the processor 101 of the image classification device 100. The storage unit 150 is implemented as, for example, a storage area of the RAM 102 of the image classification device 100.
The image input unit 111 acquires data of an image captured by the camera 107a and outputs the data to the program generation unit 120 or the image inspection processing unit 112. The program generation unit 120 generates the image classification program for quality determination (quality determination program) by the genetic programming and saves data corresponding to the generated quality determination program (data of best individual) in the storage unit 150. Furthermore, the program generation unit 120 generates the defective-mode-included quality determination identifier by using the quality determination program and saves the generated identifier in the storage unit 150. Note that an internal configuration of the program generation unit 120 will be described later.
The correct data input unit 110 acquires learning correct data in a case where an input of data (learning correct data in
The image inspection processing unit 112 acquires the data of the image captured by the camera 107a via the image input unit 111. Furthermore, the image inspection processing unit 112 reads the data of the quality determination program (data of best individual) and the defective-mode-included quality determination identifier stored in the storage unit 150 and performs multi-class classification (defect classification) on the acquired image. The image inspection processing unit 112 displays a determination result on, for example, the display device 104a.
The storage unit 150 stores the data of the quality determination program (data of best individual) generated by the program generation unit 120 and the defective-mode-included quality determination identifier. As the learning image, the image can be used that is acquired by the image input unit 111 from the camera 107a.
Here, details of the program generation unit 120 will be further described. The program generation unit 120 includes a Genetic Programming (GP) learning control unit 121, a correct data creation unit 122 as a creation unit, an image conversion unit 123, an image feature amount extraction unit 124, an identifier input data creation unit 125, an identifier parameter setting unit 126, a quality determination identifier generation unit 127, a fitness calculation unit 129, a defective-mode-included identifier generation unit 128 as a second generation unit.
The GP learning control unit 121 controls execution of entire program generation processing by the genetic programming. For example, the GP learning control unit 121 executes processing such as generation of an initial individual or evolution process for the individual.
The correct data creation unit 122 creates correct data for quality determination automatic generation that is classified into the OK image (+1) and the NG image (−1) as illustrated in
The image conversion unit 123 executes image conversion processing on the input image in accordance with an image conversion filter set in the node of the image conversion processing in the tree structure of the individual.
The image feature amount extraction unit 124 executes feature amount extraction processing from the input image after the image conversion in accordance with a feature extraction filter set in the node of the image feature amount extraction processing in the tree structure of the individual.
The identifier input data creation unit 125 generates input data to be input to the identifier on the basis of the feature amount of the image in accordance with a program module set in the node of the input data creation processing in the tree structure of the individual.
The identifier parameter setting unit 126 executes processing of setting the learning parameter (hyperparameter) of the identifier in accordance with an absolute value and a relative value set in the node of the SVM parameter setting processing in the tree structure of the individual.
The quality determination identifier generation unit 127 executes processing of generating the quality determination identifier by learning using the learning parameter set by the identifier parameter setting unit 126 in accordance with a kernel function and an operation mode set in the node of the SVM identifier generation processing in the tree structure of the individual.
The fitness calculation unit 129 determines correct or wrong according to whether or not the result of determining the class of the learning image by using each individual coincides with the label attached to the learning image and calculates a fitness of each individual on the basis of the accuracy rate.
The defective-mode-included identifier generation unit 128 generates the defective-mode-included quality determination identifier by directly applying the learning correct data illustrated in
(Regarding Processing of Program Generation Unit 120)
Next, processing of the program generation unit 120 will be described with reference to the flowchart in
As a premise of the processing in
In
Next, in step S12, the correct data creation unit 122 acquires the learning correct data (
Next, in step S14, the correct data creation unit 122 creates correct data for quality determination automatic generation (
Next, in step S16, the GP learning control unit 121 generates a plurality of initial individuals and stores information indicating the generated initial individuals in the storage unit 150. Hereinafter, the individuals stored in the storage unit 150 are referred to as an “individual group”.
As a procedure of generating an initial individual, basically, a node is set for processing in each level of the tree structure of the individual, and an element of each node is selected and set from program modules corresponding to the processing to which the node belongs.
Next, in step S18, under the control of the GP learning control unit 121, the image conversion unit 123, the image feature amount extraction unit 124, the identifier input data creation unit 125, the identifier parameter setting unit 126, the quality determination identifier generation unit 127, and the fitness calculation unit 129 execute generation change processing of the quality determination program. In this step S18, the processing in steps S102, S104, S106, S108, and S110 described with reference to
Next, in step S20, the GP learning control unit 121 determines whether or not to terminate the learning. In this step S20, in a case where a fitness of any one of the child individuals generated in the processing in step S18 is equal to or more than a predetermined threshold, it is determined to terminate learning. When the determination in step S20 is negative, the processing in step S18 is repeatedly executed, and in a case where the determination in step S20 is positive, the procedure proceeds to step S22.
When the procedure proceeds to step S22, the defective-mode-included Identifier generation unit 128 sets a hyperparameter of the defective-mode-included quality determination identifier. In this case, the hyperparameter of the quality determination identifier that has been set when the quality determination program is generated is set as it is.
Next, in step S24, the defective-mode-included identifier generation unit 128 directly applies the learning correct data (
As described above, all the processing in
An outline of a result of the automatic generation of the quality determination program by using the learning images illustrated in
Furthermore, by giving a total of four classes of learning correct data including the OK image and the NG images (foreign matter, dents, and rust) by using the automatically generated quality determination program, the defective-mode-included quality determination identifier was generated. Then, when the multi-class classification was performed on the 100 evaluation images, parts indicated by hatching in
From
Note that, three OK images that have been exceedingly detected in the evaluation of the quality determination are continuously misclassified (OK image is determined as dent or rust) in the defective mode included quality determination. It is estimated this is because the image conversion processing and the image feature amount extraction processing of the quality determination program are used in common.
As can be found from the above description, in the present embodiment, a function as a first generation unit is implemented that includes the GP learning control unit 121, the image conversion unit 123, the image feature amount extraction unit 124, the identifier input data creation unit 125, the identifier parameter setting unit 126, the quality determination identifier generation unit 127, and the fitness calculation unit 129 and automatically generates the quality determination program based on the correct data for quality determination automatic generation on the basis of the genetic programming.
As described in detail above, according to the present embodiment, the program generation unit 120 automatically generates the image classification program (quality determination program) of classifying the learning images that have been classified into two classes in advance into two classes on the basis of the genetic programming. Then, the program generation unit 120 (defective-mode-included identifier generation unit 128) gives the learning images that have been classified into three or more classes in advance to the automatically generated quality determination program and generates the defective-mode-included quality determination identifier that classifies the learning images into three or more classes. As a result, the defective-mode-included quality determination identifier can be generated while adding nearly no processing to the automatic generation processing of the quality determination program. Therefore, it is possible to reduce a processing amount and shorten a processing time than a case where the defective-mode-included identifier generation unit is automatically generated by learning.
Furthermore, in the first embodiment, because the automatically generated quality determination program is used, it is possible to generate the defective-mode-included quality determination identifier while maintaining the quality determination accuracy.
Furthermore, in the first embodiment, the image classification device 100 includes the image inspection processing unit 112 that determines the quality of the inspection image by using the defective-mode-included quality determination identifier generated by the program generation unit 120. As a result, by inputting the inspection image to the image classification device 100, it is possible to accurately classify the inspection image into multiple classes and recognize the defective mode.
Furthermore, in the first embodiment, the correct data creation unit 122 generates the correct data (
Note that, in the above first embodiment, in the processing in
Note that, in the above first embodiment, a case where the NG images are classified into the plurality of classes has been described. However, the present invention is not limited to this. In other words, instead of or together with that the NG images are classified into the plurality of classes, the OK images may be classified into a plurality of classes. In a case where the OK images are classified into the plurality of classes, as illustrated in
Next, a second embodiment will be described with reference to
In the second embodiment, after a quality determination program as illustrated in
By using only the learning correct data of the NG image as a learning target in this way, it is possible to improve determination accuracy of a defective mode depending on features of the image.
In this case, when the image inspection processing unit 112 actually classifies the images, the image inspection processing unit 112 determines the quality indicating whether the image is an OK image or an NG image by using the quality determination identifier illustrated in
Next, a third embodiment will be described with reference to
After setting a hyperparameter of a defective-mode-included quality determination identifier as in the first embodiment in step S22, a defective-mode-included identifier generation unit 128 adjusts the hyperparameter by neighborhood grid search in step S23. Specifically, the defective-mode-included identifier generation unit 128 performs multi-class classification cross-validation on a learning image while performing grid search near the hyperparameter set in step S22 and searches for a parameter that increases an accuracy rate. Then, after setting the hyperparameter obtained as a result of search, the defective-mode-included identifier generation unit 128 generates a final defective-mode-included quality determination identifier in step S24.
In this way, when the defective-mode-included quality determination identifier is generated, it is possible to obtain a multi-class classification boundary with higher generalization by further adjusting the hyperparameter optimized for two-class classification (quality determination).
Next, a fourth embodiment will be described with reference to
Hereinafter, processing in
In the processing in
Next, in step S50, the GP learning control unit 121 selects one child individual from the generated child individual group. Next, in step S52, a fitness calculation unit 129 calculates a fitness of the child individual. Next, in step S54, the GP learning control unit 121 determines whether or not the fitness is larger than a predetermined threshold. In a case where the determination in step S54 is negative, the procedure proceeds to step S62. However, in a case where the determination in step S54 is positive, the procedure proceeds to step S56.
When the procedure proceeds to step S56, the GP learning control unit 121 directly sets a hyperparameter of the selected child individual as a hyperparameter of a defective-mode-included quality determination identifier as in step S22.
Next, in step S58, the GP learning control unit 121 performs cross-validation of the defective-mode-included quality determination identifier. Then, in step S60, the GP learning control unit 121 recalculates (correct) the fitness on the basis of an accuracy rate of a learning image obtained by the cross-validation of the defective-mode-included quality determination identifier. Various methods can be considered as a recalculation method of the fitness. For example, the following method can be adopted.
(Recalculation Method (1))
As indicated in the following formula (1), an average of an accuracy rate a of the cross-validation of the quality determination and an accuracy rate b of the cross-validation of the defective-mode-included quality determination identifier is used as a fitness.
Fitness=(a+b)/2 (1)
(Recalculation Method (2))
Generalization is performed as in the following formula (2) by using a weighting coefficient k (0≤k≤1), and a balance between the accuracy rates a and b is adjusted.
Fitness=k×a+(1−k)×b (2)
(Recalculation Method (3))
In addition to the accuracy rate, a penalty term that enhancing generalization is added, and the fitness is calculated as in the following formula (3).
Fitness=k×a+(1−k)×b−generalization penalty term (3)
Next, when the procedure proceeds to step S62, whether or not to finish the child individuals, that is, whether or not all the child individuals generated in step S48 have been selected is determined. If the determination in step S62 is negative, the processing returns to step S50. After returning to step S50, the processing and the determination in steps S50 to S62 are repeated, and when the determination in step S62 is positive, the procedure proceeds to step S64. When the procedure proceeds to step S64, the GP learning control unit 121 selects the best individual on the basis of the fitness of each individual obtained so far (survival selection) and replaces the selected individual with the individual included in the population. Thereafter, the procedure proceeds to step S20 in
As described above, according to the fourth embodiment, by considering the determination accuracy of the defective-mode-included quality determination identifier in the automatic generation process of the quality determination program, it is possible to improve accuracy of defective mode included quality determination.
Furthermore, in the fourth embodiment, only when the fitness obtained by automatically generating the quality determination program exceeds a predetermined threshold, the cross-validation of the defective-mode-included quality determination identifier is performed. This prevents an increase in a processing amount.
(Modification)
Note that, in above each embodiment, in addition to the determination of the quality of the image, the image inspection of classifying the type of the defect in a case of the NG image may be provided as a service.
The image classification system 200 in
A user creates a learning image and learning correct data at the time of learning by the user terminal 70 and transmits the created image and data to the server 10. As in the first embodiment, the server 10 automatically generates a quality determination program by using the learning image and the learning correct data and generates a defective-mode-included quality determination identifier by using the automatic generation result.
At the time of image inspection, the user terminal 70 transmits an inspection image to the server 10. The server 10 extracts an image feature amount from the inspection image and determines whether the image is an OK image or an NG image by inputting the feature amount to the defective-mode-included quality determination identifier and determines the type of the defect if the image is an NG image. Then, the server 10 transmits the determination result to the user terminal 70. In other words, the server 10 has a function similar to at least the program generation unit 120 and the image inspection processing unit 112 in
Note that, in the above description, an example in which the server executes the processing corresponding to the first embodiment has been described. However, the present invention is not limited to this, and the server may execute processing corresponding to the second to fourth embodiments.
Furthermore, by transmitting the quality determination program and the defective-mode-included quality determination Identifier generated by the server 10 to the user terminal 70, the user terminal 70 may determine the inspection image.
Note that the above processing functions can be implemented by a computer. In that case, a program is provided in which processing content of a function that a processing apparatus should have is written. The program is executed on the computer, whereby the above processing function is implemented on the computer. The program in which the processing content is written can be recorded in a computer-readable reading medium (except for carrier wave).
In a case of distributing the program, for example, the program is sold in a form of a portable recording medium such as a digital versatile disc (DVD) or a compact disc read only memory (CD-ROM) in which the program is recorded. Furthermore, it is possible to store the program in a storage device of a server computer and transfer the program from the server computer to another computer through a network.
The computer which executes the program stores, for example, the program recorded in the portable recording medium or the program transferred from the server computer in a storage device of the computer. Then, the computer reads the program from the storage device of the computer and executes processing according to the program. Note that, the computer can also read the program directly from the portable recording medium and execute processing according to the program. Furthermore, the computer also can sequentially execute processing according to the received program each time the program is transferred from the server computer.
The embodiments described above are preferred examples. However, the present embodiment is not limited to this, and a variety of modifications can be made without departing from the scope of the present embodiment.
All examples and conditional language provided herein are intended for the pedagogical purposes of aiding the reader in understanding the invention and the concepts contributed by the inventor to further the art, and are not to be construed as limitations to such specifically recited examples and conditions, nor does the organization of such examples in the specification relate to a showing of the superiority and inferiority of the invention. Although one or more embodiments of the present invention have been described in detail, it should be understood that the various changes, substitutions, and alterations could be made hereto without departing from the spirit and scope of the invention.
This application is a continuation application of International Application PCT/JP2018/025849 filed on Jul. 9, 2018 and designated the U.S., the entire contents of which are incorporated herein by reference.
Number | Date | Country | |
---|---|---|---|
Parent | PCT/JP2018/025849 | Jul 2018 | US |
Child | 17129985 | US |