Information processing device, identification system, setting method and storage medium

By combining storage, measurement, output, and selection components, the recognition accuracy and execution time in the recognition device can be flexibly adjusted, solving the problem that existing technologies cannot meet users' personalized needs and optimizing resource utilization.

CN109978817BActive Publication Date: 2025-01-14OMRON CORP
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
CN201811179930.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2017-12-14
Filing Date
2018-10-10
Publication Date
2025-01-14
Estimated Expiration
2038-10-10

AI Technical Summary

Technical Problem

Existing recognition devices are unable to flexibly adjust the trade-off between recognition accuracy and execution time according to user needs, and cannot meet the personalized needs of different users for recognition accuracy or execution time.

Method used

The storage unit stores multiple identifiers with different characteristics, the measurement unit measures the recognition accuracy and execution time, the output unit outputs the results, the selection unit selects the identifier that meets the conditions, and the setting unit sets the working mode on the recognition device to adjust the recognition accuracy and execution time.

Benefits of technology

It can select the appropriate recognizer according to user needs, optimize recognition accuracy and execution time, reduce the waste of CPU and memory resources, and provide recognition solutions that meet user needs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN109978817B_ABST
    Figure CN109978817B_ABST
Patent Text Reader

Abstract

The present invention provides an information processing device, a recognition system, a setting method and a storage medium, which can adjust both the recognition accuracy and the execution time required for recognition. Provided is an information processing device, which has: a storage unit, which stores a plurality of recognizers with different characteristics for recognizing an object; a measuring unit, which measures the recognition accuracy and execution time of each of the plurality of recognizers for a specific object for each recognizer; an output unit, which outputs the recognition accuracy and execution time of each of the plurality of recognizers; a selection unit, which selects a recognizer whose execution time satisfies a second condition from among the recognizers whose recognition accuracy measured by the measuring unit satisfies a first condition; and a setting unit, which performs settings for making the selected recognizer work on the recognition device.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to an information processing device, an identification system, a setting method and a storage medium. Background Art

[0002] It is known that when a classifier used to identify whether a detection target is included in image data is generated by machine learning, the recognition accuracy of the generated classifier and the execution time required for the recognition are generally in a trade-off relationship.

[0003] Here, Patent Document 1 describes a recognition device having a strong classifier including a plurality of weak classifiers with low recognition performance, and performing recognition of input data based on a linear sum of a judgment result of a feature quantity of each weak classifier and an integral value of a weight set by each weak classifier.

[0004] Patent Document 1: Japanese Patent Application Publication No. 2016-55188 Summary of the invention

[0005] However, it is considered that the recognition accuracy or the execution time required for recognition desired by the recognition device may vary depending on the needs of the user. For example, there are various user needs, such as users who value recognition accuracy even if it takes some execution time or users who value execution time more than recognition accuracy, so a structure that can adjust both recognition accuracy and execution time is desirable.

[0006] By adjusting both the recognition accuracy and the execution time, it is possible to suppress the detection error of the detection object by improving the recognition accuracy when, for example, the recognition accuracy is given more importance than the execution time. In addition, when the execution time is given more importance than the recognition accuracy, the time required for recognition can be shortened, so the CPU resources and memory resources of the recognition device can be suppressed. However, the recognition device described in Patent Document 1 is ultimately aimed at realizing high-speed detection processing, and does not consider the problem of being able to adjust both the recognition accuracy and the execution time.

[0007] Therefore, an object of the present invention is to provide a recognizer capable of adjusting both recognition accuracy and execution time required for recognition.

[0008] An information processing device according to one embodiment of the present invention comprises: a storage unit for storing a plurality of identifiers for identifying an object and having different characteristics; a measuring unit for measuring the recognition accuracy and execution time of each of the plurality of identifiers for a specific object for each identifier; an output unit for outputting the recognition accuracy and execution time of each of the plurality of identifiers; a selection unit for selecting an identifier whose execution time satisfies a second condition from among the identifiers whose recognition accuracy measured by the measuring unit satisfies a first condition; and a setting unit for making settings for causing the selected identifier to operate on the identification device.

[0009] According to this method, it is possible to select a recognizer whose measured recognition accuracy is included in a prescribed allowable range and whose execution time satisfies a prescribed condition from among a plurality of recognizers of the inspection object, and to cause the recognition device to execute the recognizer. Thus, it is possible to adjust both the recognition accuracy and the execution time required for recognition. In addition, it is possible to select a recognizer whose execution time required for recognition satisfies a prescribed condition, thereby suppressing waste of CPU resources and memory resources.

[0010] In the above-mentioned method, the storage unit may store a test image used to measure the recognition accuracy and execution time of each of the plurality of recognizers for a specific object, and the measuring unit may respectively make the plurality of recognizers recognize the test image, thereby measuring the recognition accuracy and execution time for each recognizer. In another method, the storage unit may store an image of the object, and the information processing device may include a generating unit, and the generating unit may receive input of processing conditions for the image from a user, and process the image of the object stored in the storage unit based on the processing conditions, thereby generating a test image. According to this method, the user can use the test image to measure the recognition accuracy and execution time of the recognizer without preparing an image actually photographed of the object.

[0011] In the above method, the generation unit may generate a test image by adding an image of the detection object specified by the user to the image of the object stored in the storage unit. According to this method, the user can create a test image that matches the environment in which the recognition device is used and can select the best recognizer for the user.

[0012] In the above-mentioned method, the generation unit may generate a test image by adding an image of the detection object generated based on the parameters specified by the user to the image of the object stored in the storage unit. According to this method, the user can use the test image automatically created according to the environment in which the recognition device is used, and can select the best recognizer for the user. In addition, according to this method, the burden of the user who generates the test image can be reduced.

[0013] In the above method, the test image may include a plurality of first test images that are correct for including the detection object, the recognition accuracy includes a first probability that is a probability that the recognizer recognizes the plurality of first test images as including the detection object, the measuring unit causes the plurality of recognizers to recognize the plurality of first test images, respectively, thereby measuring the first probability, and the selecting unit selects a recognizer whose execution time satisfies a second condition among the recognizers whose first probability measured by the measuring unit is included in the first condition. According to this method, the user can evaluate the recognition accuracy of the recognizer using the test image that is correct for including the detection object, so that the user can more specifically evaluate the recognition accuracy of the recognizer.

[0014] In the above-mentioned method, the test image may further include a plurality of second test images that are correct if they do not contain the detection object, the recognition accuracy may further include a second probability that is a probability that the recognizer mistakenly recognizes the plurality of second test images as containing the detection object, the measuring unit may further respectively cause the plurality of recognizers to recognize the plurality of second test images, thereby measuring the second probability, and the selecting unit may select a recognizer whose execution time satisfies the second condition among the recognizers under the first condition whose second probability measured by the measuring unit is included. According to this method, the user can evaluate the recognition accuracy of the recognizer using the test image that is correct if it does not contain the detection object, so the user can more specifically evaluate the recognition accuracy of the recognizer.

[0015] In the above aspect, the first condition may be a range of recognition accuracy specified by a user using the recognition device. According to this aspect, the user can arbitrarily adjust both the recognition accuracy and the execution time required for recognition.

[0016] In the above-mentioned embodiment, when there is no identifier whose recognition accuracy measured by the measuring unit is included in the first condition, the selecting unit may select the identifier with the highest recognition accuracy. According to this embodiment, even if there is no identifier that satisfies the specified recognition accuracy, it is possible to achieve high recognition accuracy and operate the recognition device.

[0017] In the above method, the plurality of identifiers may be designed by learning a combination of a category of a model and a threshold value for identifying a detection object. According to this method, there are identifiers with different recognition accuracies according to the number of combinations of the category of the model and the threshold value, so that the options of the identifiers available to the user are expanded. As a result, the user can select an appropriate identifier from a large number of identifiers.

[0018] In the above aspect, the identifier whose execution time satisfies the second condition may be the identifier with the shortest execution time. According to this aspect, the identifier with the shortest execution time can be selected from among the identifiers whose recognition accuracy satisfies the allowable range, thereby suppressing waste of CPU resources and memory resources.

[0019] In the above-mentioned method, a recognition system is provided, which includes: the information processing device described above; and a recognition device that communicates with the information processing device, the recognition device having: a receiving unit that receives an identifier selected by the information processing device from the information processing device and stores it in a storage unit; and a recognition unit that uses the identifier stored in the storage unit to recognize an object. According to this method, a recognition system that uses the identifier selected by the information processing device to recognize an object can be realized.

[0020] Another embodiment of the setting method of the present invention is a setting method executed by an information processing device, wherein a storage unit stores a plurality of identifiers for identifying an object and having different characteristics, and the setting method comprises: a step of measuring the recognition accuracy and execution time of each of the plurality of identifiers for a specific object for each identifier; a step of outputting the recognition accuracy and execution time of each of the plurality of identifiers; a step of selecting an identifier whose execution time satisfies a second condition from among the identifiers whose measured recognition accuracy satisfies a first condition; and a step of making settings for enabling the selected identifier to operate on the recognition device.

[0021] According to this method, it is possible to select a recognizer whose measured recognition accuracy is included in a prescribed allowable range and whose execution time satisfies a prescribed condition from among a plurality of recognizers inspecting an inspection object, and to cause the recognition device to execute the recognizer. Thus, it is possible to adjust both the recognition accuracy and the execution time required for recognition. In addition, it is possible to select a recognizer whose execution time required for recognition satisfies a prescribed condition, thereby suppressing waste of CPU resources and memory resources.

[0022] A storage medium in another aspect of the present invention stores a program, wherein the program enables a computer to function as the following units: a storage unit that stores a plurality of identifiers that have different characteristics for identifying an object; a measuring unit that measures, for each identifier, the recognition accuracy and execution time of each of the plurality of identifiers for a specific object; an output unit that outputs the recognition accuracy and execution time of each of the plurality of identifiers; a selection unit that selects, from among the identifiers whose recognition accuracy measured by the measuring unit satisfies a first condition, an identifier whose execution time satisfies a second condition; and a setting unit that makes settings for causing the selected identifier to operate on the identification device.

[0023] According to this method, it is possible to select a recognizer whose measured recognition accuracy is included in a prescribed allowable range and whose execution time satisfies a prescribed condition from among a plurality of recognizers inspecting an inspection object, and to cause the recognition device to execute the recognizer. Thus, it is possible to adjust both the recognition accuracy and the execution time required for recognition. In addition, it is possible to select a recognizer whose execution time required for recognition satisfies a prescribed condition, thereby suppressing waste of CPU resources and memory resources.

[0024] According to the present invention, it is possible to provide a recognizer capable of adjusting both recognition accuracy and execution time required for recognition. BRIEF DESCRIPTION OF THE DRAWINGS

[0025] Figure 1 An example of an application scenario of the image processing system of this embodiment is schematically illustrated.

[0026] Figure 2 An example of the hardware configuration of the management device according to the present embodiment is schematically illustrated.

[0027] Figure 3 An example of the hardware configuration of the image processing device according to the present embodiment is schematically illustrated.

[0028] Figure 4 An example of the functional configuration of the management device according to the present embodiment is schematically illustrated.

[0029] Figure 5 An example of the functional configuration of the image processing device according to the present embodiment is schematically illustrated.

[0030] Figure 6 An example of a neural network is shown below.

[0031] Figure 7 This is a flowchart illustrating an example of a processing procedure performed by the management device.

[0032] Figure 8 An example of the test image creation screen (manual) is shown below.

[0033] Fig. 9 An example of the test image creation screen (automatic) is shown below.

[0034] Fig.10 An example of the type of the learned model is shown below.

[0035] Fig.11 An example of a process procedure in which the management device selects an identifier is described.

[0036] Fig.12 A specific example of the results of measuring the defect recognition rate and the false alarm rate will be described.

[0037] Fig.13 A specific example of the results of measuring the defect recognition rate and the false alarm rate will be described.

[0038] Fig.14 A specific example of the result of measuring the execution time is shown below.

[0039] Fig.15 An example of a process procedure for measuring a defect detection rate by the management device is described.

[0040] Fig.16 An example of a processing procedure for measuring the false alarm rate by the management device is described.

[0041] Fig.17 An example of an inspection object recognized by the recognition device is shown below.

[0042] Description of Reference Numerals

[0043] 1...image processing system; 100...management device; 101...processor; 102...memory (storage unit or first storage unit); 103...storage device (storage unit or first storage unit); 103A...program; 104...network interface; 105...display unit; 106...operation unit; 107...memory card reader / writer; 107A...storage medium; 108...internal bus; 121A...CPU; 200...image processing device; 210...illumination unit; 211...illumination control unit; 212...illumination lens; 220...control device; 221... Processing unit; 222... storage device (storage unit or second storage unit); 222A... program (instruction code); 223... network communication unit; 230... shooting unit; 231... shooting lens; 232... shooting element; 500... identifier DB; 501... identifier; 510... generation unit; 511... image processing unit; 512... test image DB; 513... existing image DB; 520... measurement unit; 521... simulation unit; 522... parameter adjustment unit; 530... output unit; 540... selection unit; 550... setting unit; 551... setting file generation unit. DETAILED DESCRIPTION

[0044] Hereinafter, an embodiment of one aspect of the present invention (hereinafter also referred to as “the present embodiment”) will be described with reference to the drawings.

[0045] 1 Application Example

[0046] First, use Figure 1 An example of a scenario in which the present invention is applied will be described. Figure 1 An example of an application scenario of the image processing system 1 of the present embodiment is schematically illustrated. The image processing system 1 is typically assembled into a production line, etc. The image processing system 1 performs inspection of the workpiece based on an image obtained by photographing the workpiece conveyed on the production line. In addition, the image processing system 1 is an example of the "recognition system" of the present invention.

[0047] like Figure 1As shown, the image processing system 1 includes a management device 100 and one or more image processing devices 200 communicating with the management device 100 via a network 2. For example, a workpiece is transported in a predetermined direction by a conveying mechanism such as a belt conveyor, and each image processing device 200 is arranged at a predetermined position relative to the conveying path. The management device 100 is a device that has at least a plurality of identifiers with different characteristics as identifiers for inspecting the workpiece and selects an identifier to be executed by the image processing device 200 from these plurality of identifiers. "Multiple identifiers with different characteristics" means that each identifier can detect the same detection object, but due to different calculation accuracy or calculation amount when performing detection, the recognition accuracy of the detection object and the execution time required from the start of detection of the detection object to the output of the detection result (hereinafter referred to as "execution time") are different. Here, the workpiece is an example of the "inspection object" of the present invention. In addition, the management device 100 is an example of the "information processing device" of the present invention. In addition, the image processing device 200 is an example of the "recognition device" of the present invention.

[0048] First, the management device 100 generates a plurality of test images used to measure the recognition accuracy and execution time of each identifier for a specific inspection object. The specific inspection object may be, for example, a workpiece having specified attributes (such as the material of the workpiece, the surface shape, or the defect content contained in the workpiece) that the user asks the image processing device 200 to inspect. In addition, the test image may be an image of a workpiece without defects with suspected defects added. Here, defects include abnormalities of the inspection object, such as scratches, uneven color, dirt, dents, fragments, burrs, foreign matter, blurred printing, positional deviation of printing, etc. Next, the management device 100 causes a plurality of identifiers to recognize the created plurality of test images, thereby measuring the recognition accuracy and execution time for each identifier. The recognition accuracy can be represented by the probability that the identifier can correctly detect the presence or absence of defects contained in the image of the workpiece.

[0049] Next, the management device 100 selects a recognizer whose measured recognition accuracy is included in the range of recognition accuracy required by the user as the performance of the image processing device 200, that is, the prescribed allowable range, and whose execution time satisfies the prescribed condition as the recognizer for the image processing device 200 to execute. The prescribed condition may be, for example, the recognizer with the shortest execution time. The selected recognizer is assembled into the image processing device 200, and the image processing device 200 inputs the image of the workpiece conveyed on the production line into the recognizer, thereby inspecting the workpiece, etc. In addition, the prescribed allowable range is an example of the "first condition" of the present invention. The prescribed condition is an example of the "second condition" of the present invention.

[0050] According to this embodiment, before actually inspecting the workpiece on the production line, the management device 100 can select a recognizer whose execution time satisfies the specified conditions from the recognizers that exert the recognition accuracy within the specified allowable range, and pre-assemble the selected recognizer into the image processing device 200. Thus, in the image processing system 1, a recognizer with appropriate recognition accuracy and execution time can be selected from a plurality of recognizers, and a recognizer that meets the needs of the user can be provided.

[0051] Furthermore, according to the present embodiment, an appropriate identifier can be selected in advance using a test image, so an appropriate identifier can be selected without preparing a large number of images for actually inspecting workpieces on a production line.

[0052] 2. Example of configuration

[0053] [Hardware Configuration]

[0054] <Management device>

[0055] Next, use Figure 2 An example of the hardware configuration of the management device 100 according to the present embodiment will be described. Figure 2 An example of the hardware configuration of the management device 100 according to this embodiment is schematically illustrated. Figure 2 In the example of FIG. 1 , the management device 100 may include a processor 101, a memory 102, a storage device 103 such as a HDD (Hard Disk Drive), a network interface (I / F) 104, a display unit 105, an operation unit 106, and a memory card reader / writer 107. These units are connected via an internal bus 108 so as to be able to communicate with each other.

[0056] The processor 101 implements various functions of the management device 100 by developing a program (command code) 103A stored in the storage device 103 into the memory 102 and executing the program. The memory 102 and the storage device 103 store data in a volatile and non-volatile manner, respectively. The storage device 103 stores the program 103A in addition to the OS (Operating System).

[0057] The network interface 104 transmits and receives data to and from the image processing apparatus 200 via the network 2 .

[0058] The display unit 105 displays various screens and the like realized by the processor 101 executing the program 103A. The display unit 105 includes, for example, a display such as an LCD (Liquid Crystal Display).

[0059] The operation unit 106 receives a user operation and outputs an internal command indicating the received operation to the processor 101 etc. The operation unit 106 includes, for example, a keyboard, a mouse, a touch panel, a tablet computer, a voice recognition device, and the like.

[0060] The memory card reader / writer 107 reads data from and writes data to a storage medium 107A. The storage medium 107A is a medium that stores information such as a program by electrical, magnetic, optical, mechanical, or chemical action in order to read information such as a program recorded in a device or machine other than a computer. The management device 100 can obtain the program 103A from the storage medium 107A.

[0061] <Image processing device>

[0062] Next, use Figure 3 An example of the hardware configuration of the image processing device 200 according to the present embodiment will be described. Figure 3 An example of the hardware configuration of the image processing device 200 of this embodiment is schematically illustrated. Figure 3 In the example of , the image processing device 200 may include a lighting unit 210 , a control device 220 , and a photographing unit 230 .

[0063] The lighting unit 210 irradiates light required for photographing the workpiece. That is, the lighting unit 210 irradiates light within the photographing range of the photographing unit 230. More specifically, the lighting unit 210 includes a plurality of lighting control units 211 provided on a lighting substrate. These units are arranged on the lighting substrate. The lighting control units 211 each include a lighting lens 212 and an LED 213. The lighting control unit 211 irradiates light in accordance with an instruction from the control device 220. More specifically, the light generated by the LED 213 is irradiated toward the workpiece through the lighting lens 212.

[0064] The imaging unit 230 receives reflected light from the light irradiated by the illumination unit 210 and outputs an image signal. The image signal is sent to the control device 220. More specifically, the imaging unit 230 includes an optical system such as an imaging lens 231 and an imaging element 232 divided into a plurality of pixels such as a CCD (Coupled Charged Device) or a CMOS (Complementary Metal Oxide Semiconductor) image sensor.

[0065] The control device 220 controls the entire image processing device 200. That is, the control device 220 controls the lighting unit 210 and the imaging unit 230, and performs image processing based on an image signal from the imaging unit 230. More specifically, the control device 220 includes a processing unit 221, a storage device 222, and a network communication unit 223.

[0066] The processing unit 221 is composed of integrated circuits such as the CPU 121A and the FPGA 121B. Alternatively, the processing unit 221 may be composed of a DSP, a GPU, an ASIC (Application Specific Integrated Circuit), or other integrated circuits.

[0067] The storage device 222 includes a non-volatile storage device such as a ROM (Read Only Memory), a flash memory, a HDD, and a SSD (Solid State Drive), and / or a volatile memory such as a RAM (Random Access Memory). Typically, the processing unit 221 implements various image processing provided by the image processing device 200 by executing a program (command code) 222A stored in the storage device 222.

[0068] The network communication unit 223 is an interface for transmitting and receiving data with the management device 100 via the network 2. More specifically, the network communication unit 223 adopts a configuration conforming to Ethernet (registered trademark) or the like.

[0069] [Functional composition]

[0070] <Management device>

[0071] Next, use Figure 4 An example of the functional configuration of the management device 100 according to this embodiment will be described. Figure 4 An example of the functional configuration of the management device 100 according to the present embodiment is schematically illustrated.

[0072] The identifier DB (DataBase) 500 is a database that stores a plurality of identifiers with different characteristics, and can be realized by the memory 102 or the storage device 103. The memory 102 or the storage device 103 is an example of the "storage unit" of the present invention. Figure 4 In the example, the identifiers 5011 to 501 N In the following description, the identifiers 5011 to 501 N In this case, it is recorded as identifier 501.

[0073] Here, the recognizer 501 is generated by performing a learning process and an evaluation process on an arbitrary machine learning model. The machine learning model has a predetermined model structure and processing parameters that change through the learning process, and optimizes the processing parameters based on the experience obtained from the learning data to improve the accuracy of the recognition result. That is, more specifically, the recognizer 501 of this embodiment includes a so-called "learning completed model" as a combination of a predetermined model structure and optimized processing parameters. The algorithm of the machine learning model can use, for example, a support vector machine, logistic regression, a neural network, etc., but its type is not particularly limited.

[0074] The generating unit 510 generates the identifiers 5011 to 501 N A plurality of test images used for the respective recognition accuracy of a specific inspection object. The generation unit 510 can generate a test image by adding a defect image specified by a user to the image of the workpiece. The user can create (manually create) a test image in which the size or location of the defect added is arbitrarily specified. Here, the defect image includes, for example, an image indicating a scratch, an image indicating unevenness of color, etc., an image indicating dirt, an image indicating a dent, an image indicating a fragment, an image indicating a burr, an image indicating a foreign object, an image indicating blurred printing, or an image showing a position of erroneous printing, etc.

[0075] In addition, the generation unit 510 can automatically generate a test image by adding a defect image generated based on parameters specified by the user (processing conditions of the image received from the user) to the image of the workpiece. The parameters specified by the user are, for example, parameters indicating the maximum and minimum sizes of defects, parameters indicating the range of the place where the defect is to be added, etc. The generation unit 510 can randomly generate defect images within the range of these parameters and add the generated defect images to the image of the workpiece to automatically generate a plurality of test images.

[0076] In addition, more specifically, the generation unit 510 may include an image processing unit 511, a test image DB 512, and an existing image DB 513. The generated multiple test images may be stored in the test image DB 512, and the image of the workpiece may be stored in the existing image DB 513. The image processing unit 511 may obtain the image of the workpiece from the existing image DB 513, and perform processing on the obtained image by adding the defect image stored in the test image DB 512, thereby generating a test image. The test image DB 512 and the existing image DB 513 may be implemented by the memory 102 or the storage device 103.

[0077] The measuring unit 520 measures the identifiers 5011 to 501 for each identifier 501. NMore specifically, the measuring unit 520 uses the recognition devices 5011 to 501 N The test image is recognized and the recognition accuracy and execution time are measured for each recognizer 501 .

[0078] The selection unit 540 selects, from among the identifiers 501 whose recognition accuracy measured by the measurement unit 520 is within a predetermined allowable range and whose execution time satisfies a predetermined condition, as the identifier 501 to be executed by the image processing apparatus 200. When there is no identifier 501 whose recognition accuracy measured by the measurement unit 520 is within a predetermined allowable range, the selection unit 540 may select the identifier 501 with the highest recognition accuracy as the identifier 501 to be executed by the image processing apparatus 200.

[0079] The output unit 530 outputs the identifiers 5011 to 501 N The respective recognition accuracies and execution times are output to the display unit 105. The setting unit 550 performs settings for operating the recognizer 501 selected by the selection unit 540 on the image processing device 200. In addition, the setting unit 550 has a setting file generation unit 551. The setting file generation unit 551 generates a setting file for setting the recognizer 501 selected as the recognizer 501 to be executed by the image processing device 200 in the image processing device 200. The setting file may include, for example, a model structure and processing parameters of the selected recognizer 501. The setting file generated by the setting file generation unit 551 is sent to the image processing device 200 and executed by the processing unit 221 of the image processing device 200. As a result, the recognizer 501 selected by the selection unit 540 of the management device 100 operates in the image processing device 200. Alternatively, the recognizers 5011 to 501 stored in the recognizer DB 500 may be stored in the image processing device 200. N The same classifier is stored in advance in the image processing device 200 , and the setting file includes information specifying the classifier that operates in the image processing device 200 .

[0080] Here, the recognizer 501 of this embodiment may be a recognizer 501 that recognizes the presence or absence of defects in the inspection object by combining a learned model that outputs a numerical value (hereinafter referred to as "similarity") indicating the possibility that a defect is contained in an input image and a threshold indicating a boundary of similarity that is considered to contain a defect. N The learning completed model may include multiple types of learning completed models with different performances. N The identifier 501 may be configured to have different identification accuracies by learning a combination of a model category and a threshold value for identifying a defect.

[0081] For example, if the recognizer 501 having the learned model A and the threshold value set to 90% outputs a recognition result that the input image does not contain a defect when the learned model A of the input image outputs a similarity of 85%. Similarly, if the recognizer 501 having the learned model A and the threshold value set to 80% outputs a recognition result that the input image contains a defect when the learned model A of the input image outputs a similarity of 85%. Specific examples of the categories of the learned model will be described later.

[0082] More specifically, the measuring unit 520 may include a simulation unit 521 and a parameter adjustment unit 522. The simulation unit 521 obtains a recognition result (whether a defect is included in the test image) by inputting a test image to the recognition unit 501 to be measured, and measures the recognition accuracy of the recognition unit 501 based on the obtained recognition result. The parameter adjustment unit 522 instructs the simulation unit 521 on a threshold value to be set in the recognition unit 501.

[0083] In addition, the test image may include a plurality of images that should be identified as containing defects (hereinafter referred to as "defective test images") and a plurality of images that should not be identified as containing defects (hereinafter referred to as "qualified test images"). Defective test images mean test images generated by adding defect images having a size or shape that should be identified as defects to the image of the workpiece. Qualified test images mean test images generated by adding defect images having a size or shape that should not be identified as defects (i.e., cannot be said to be defects) to the image of the workpiece.

[0084] In this case, the recognition accuracy of the identifier 501 measured by the measuring unit 520 can include: the probability that the identifier correctly identifies multiple defective product test images as containing defects (hereinafter referred to as the "defect recognition rate"); and the probability that the identifier incorrectly identifies multiple qualified product test images as containing defects (hereinafter referred to as the "false alarm rate").

[0085] The measuring unit 520 can respectively make the identifiers 5011 to 501 N The defect recognition rate and the execution time are measured by recognizing a plurality of defective product test images, and the recognition devices 5011 to 501 N The plurality of qualified product test images are identified to measure the false alarm rate and the execution time. In addition, the selection unit 540 can select, from among the identifiers 501 whose defect recognition rate and false alarm rate measured by the measurement unit 520 are within a prescribed allowable range and whose execution time satisfies a prescribed condition, the identifier 501 to be executed by the image processing device 200.

[0086] Here, the defective product test image is an example of the "first test image" of the present invention. In addition, the qualified product test image is an example of the "second test image" of the present invention. In addition, the defect recognition rate is an example of the "first probability" of the present invention. In addition, the false alarm rate is an example of the "second probability" of the present invention.

[0087] <Image processing device>

[0088] Figure 5 An example of the functional configuration of the image processing device 200 of the present embodiment is schematically illustrated. The receiving unit 610 receives the identifier 501 additionally learned by the management device 100 from the management device 100, and stores it in the storage device 222 as the identifier 222B. The recognition unit 620 uses the identifier 222B stored in the storage device 222 to recognize the presence or absence of defects included in the workpiece photographed by the imaging unit 230. The storage device 222 is an example of the "storage unit" of the present invention.

[0089] <Other>

[0090] In this embodiment, an example is described in which each function of the management device 100 is implemented by the processor 101. However, part or all of the above functions may be implemented by one or more dedicated processors. In addition, regarding the functional configuration of each management device 100, the functions may be omitted, replaced, or added appropriately according to the embodiment.

[0091] 3 Action Examples

[0092] Next, an example of the operation of the management device 100 will be described. The processing steps described below are merely examples, and each process can be changed as much as possible. In addition, regarding the processing steps described below, steps can be omitted, replaced, or added as appropriate according to the embodiment.

[0093] In this operation example, the algorithm of the machine learning model used in the recognizer 501 is described on the premise of using a deep neural network (hereinafter referred to as "DNN") having three or more layers in a neural network. The DNN has an input layer, one or more connection layers (intermediate layers), and an output layer in order from the input, and the multiple neurons constituting each layer are connected to all the neurons constituting the adjacent layer.

[0094] Next, the identifier is described. Figure 6 As shown, the image processing device 200 of this embodiment uses a neural network 1000 as a recognizer that has learned the ability to output a numerical value indicating the possibility that a defect is included in an input image. The neural network 1000 is a multi-layered neural network used for so-called deep learning, and has an input layer 1001, an intermediate layer (hidden layer) 1002, and an output layer 1003 in order from the input.

[0095] exist Figure 6 In the figure, the neural network 1000 has multiple layers of intermediate layers 1002, the output of the input layer 1001 becomes the input of the intermediate layer 1002, and the output of the intermediate layer 1002 becomes the input of the output layer 1003. However, the number of intermediate layers 1002 is not limited to multiple layers, and the neural network 1000 may have only one intermediate layer 1002.

[0096] Each layer 1001 to 1003 has one or more neurons. For example, the number of neurons in the input layer 1001 can be set according to the number of pixels of each captured image input to the input layer 1001. The number of neurons in the intermediate layer 1002 can be appropriately set according to the embodiment. In addition, the output layer 1003 can be set according to the number of identification types of the inspection object set as the object.

[0097] Neurons in adjacent layers are appropriately connected to each other, and a weight (connection load) is set for each connection. Figure 6 In the example, each neuron is connected to all neurons in the adjacent layer, but the connection of neurons is not limited to this example and can be appropriately set according to the implementation method.

[0098] A threshold is set in each neuron, and the output of each neuron is basically determined based on whether the sum of the products of each input and each weight exceeds the threshold. The image processing device 200 inputs the above-mentioned captured images to the input layer 1001 of the neural network 1000 and recognizes the object based on the output value obtained from the output layer 1003.

[0099] In addition, the learned model includes information indicating the configuration of the neural network 1000 (e.g., the number of layers of the neural network 1000, the number of neurons in each layer, the connection relationship between neurons, and the transfer function of each neuron), the weight of the connection between each neuron, and the threshold value of each neuron. The image processing device 200 refers to the learned model to set the learned neural network 1000 used in the process of recognizing a desired object.

[0100] [Overall flow of processing steps]

[0101] Figure 7 This is a flowchart illustrating an example of the processing steps performed by the management device 100. First, the user takes a picture of a workpiece without defects in advance, and imports the image of the workpiece into the management device 100. The image of the workpiece imported is saved in the existing image DB 513 (S10). The workpiece can be photographed by, for example, the photographing unit 230 of the image processing device 200.

[0102] Next, the generation unit 510 of the management device 100 generates a defective product test image and a qualified product test image based on the user's instruction (S11). Specifically, the generation unit 510 displays a test image creation screen on the display unit 105, and adds the defect image indicated by the user to the image of the workpiece, thereby creating a defective product test image and a qualified product test image. The generation unit 510 saves the created defective product test image and qualified product test image to the test image DB 512.

[0103] Next, the measuring unit 520 of the management device 100 reads a plurality of defective product test images from the test image DB 512 and causes the identifiers 5011 to 501 N The measurement unit 520 measures the number of defective product test images for each of the identifiers 501: N The defect recognition rate in each; and the defect recognition rate in each; and the defect recognition rate in each; N Start to detect whether there are defects in the defective product test image until the identifier 5011~501 N The measuring unit 520 reads a plurality of qualified product test images from the test image DB 512 and respectively controls the recognition units 5011 to 501 N The measuring unit 520 measures the number of conforming product test images for each of the identifiers 501: N The respective false alarm rates; and the respective identifiers 5011 to 501 N Start to detect whether there are defects in the qualified product test image until the identifier 5011~501 N The execution time until the detection result is outputted respectively. The selection unit 540 selects the identifier 501 with the shortest execution time among the identifiers 501 whose measured recognition rate and false alarm rate are both included in the prescribed allowable range as the identifier 501 to be executed by the image processing device 200 (S12). In the case of the defect recognition rate, the prescribed allowable range is the lower limit of the defect recognition rate specified by the user of the image processing device 200 (for example, more than 90%), and in the case of the false alarm rate, the prescribed allowable range is the upper limit of the false alarm rate desired by the user of the image processing device 200 (for example, less than 5%).

[0104] [Test image creation]

[0105] Next, use Figure 8 to Figure 10 Specifically explain Figure 7 The processing step of step S11.

[0106] Figure 8An example of the test image creation screen (manual) is shown. The test image creation screen (manual) is a screen for the user to manually create a test image. The test image creation screen (manual) has: a defect basic setting area 1001A, which is used to input the size or position of the defect image to be added to the image of the workpiece; and a test image display area 1002A, which displays the image of the workpiece with the defect image added. The defect basic setting area 1001A includes a selection menu 1001a for selecting whether the created test image is a defective product test image or a qualified product test image.

[0107] In the test image creation screen (manual), the user can add a defect image to any location on the workpiece image by operating the mouse or the touch panel. Figure 8 In the example, the case where the user adds dents 1002a, dirt 1002b, and scratches 1002c to the image of the workpiece is shown. In addition, in the test image creation screen (manual), the user can also add a defect image to the image of the workpiece by entering a numerical value such as the size or position of the defect to be added in the defect basic setting area 1001A. When the user presses the creation completion button 1003, the generation unit 510 saves the image of the workpiece with the defect image attached, which is displayed in the test image display area 1002A, to the test image DB. More specifically, when "Defective product test image" is selected using the selection menu 1001a, the generation unit 510 saves the image of the workpiece with the defect image attached as a defective product test image to the test image DB. In addition, when "Qualified product test image" is selected using the selection menu 1001a, the generation unit 510 saves the image of the workpiece with the defect image attached as a qualified product test image to the test image DB.

[0108] Fig. 9 and Fig.10 An example of the test image creation screen (automatic) is shown. The test image creation screen (automatic) is a screen for the generation unit 510 to automatically generate a test image based on the parameters input by the user. The test image creation screen (automatic) has: a defect basic setting area 2001 for inputting the parameters of the defect image to be added to the image of the workpiece; and a test image display area 2002 for displaying the image of the workpiece to which the defect image is added. Fig. 9 This example shows the state where a defective product test image is being generated. Fig.10 The following illustrates a state in which both a defective product test image and a conforming product test image are being generated simultaneously.

[0109] exist Fig. 9In the example of , in the defect basic setting area 2001, as a parameter of a defect image added to the image of the workpiece in order to generate a defective product test image, at least scratches with a minimum depth of 10 μm or more and a minimum length of 1 mm are set. In addition, the number of defective product test images to be generated is set to 10. In addition, the location or tone of the scratches is set arbitrarily (auto). In this case, the generation unit 510 generates 10 defective product test images in which at least scratches of any tone with a minimum depth of 10 μm and a minimum length of 1 mm are added to any location.

[0110] In addition, Fig.10 In the example, in the defect basic setting area 2001, at least scratches with a minimum depth of 10 μm or more and a minimum length of 1 mm are set as parameters of defect images added to the image of the workpiece in order to generate a test image of a defective product. In addition, at least scratches with a maximum depth of 10 μm and a maximum length of 1 mm are set as parameters of defect images added to the image of the workpiece in order to generate a test image of a qualified product. In addition, the number of test images generated for defective products is set to 6, and the number of test images generated for qualified products is set to 4. In this case, the generation unit 510 generates 6 defective product test images in which at least scratches of any tone with a minimum depth of 10 μm and a minimum length of 1 mm are added to any place, and generates 4 qualified product test images in which at least scratches of any tone with a maximum depth of 10 μm and a maximum length of 1 mm are added to any place.

[0111] [Selection of Recognizer]

[0112] Next, the details Figure 7 Here, the types of learning completed models are specifically described. As described above, the identifiers 5011 to 501 N The identifier 501 may be designed by combining the category of the learning completion model and the threshold for identifying as defective.

[0113] exist Fig.11An example of the categories of learning completion models is illustrated in . The learning completion models of categories 1 to 3 are learning completion models that perform operations using binary types (2-byte integers). The learning completion models of categories 4 to 6 are learning completion models that perform operations using integer types (8-byte integers). The learning completion models of categories 7 to 9 are learning completion models that perform operations using floating point types (float). The learning completion models of categories 10 to 12 are learning completion models that perform operations using floating point types (double). In addition, the learning completion models of categories 2, 5, 8, and 11 are learning completion models in which, for example, less than 70% of the neurons in the full connection layer of the learning completion models of categories 1, 4, 7, and 10 are deleted. In addition, the learning completion models of categories 3, 6, 9, and 12 are learning completion models in which, for example, more than 70% of the neurons in the full connection layer of the learning completion models of categories 1, 4, 7, and 10 are deleted.

[0114] The lower the calculation accuracy, the lower the amount of calculation for the entire learning model, so the execution time becomes shorter and the recognition accuracy decreases. Similarly, the more neurons in the combined layer are deleted, the lower the amount of calculation for the entire learning model, so the execution time becomes shorter and the recognition accuracy decreases. In addition, it is desirable to set the deleted neurons to neurons with a low activation rate during learning.

[0115] In addition, not limited to Fig.11 In the example shown, for example, a learning completion model that performs operations using 4-byte integers can also be used. Generally, the minimum operation unit of a CPU is 8 bytes, but by using FPGA or ASIC, it is also possible to perform operations using 4 bytes or 2 bytes. In addition, a learning completion model that replaces the neurons of the full combination layer with an average filter can also be used. In addition, the type of learning completion model is not limited to the above-described embodiment, and can also be any learning completion model.

[0116] Fig.12 This is a flowchart illustrating an example of the processing steps of selecting an identifier by the management device 100. First, the measurement unit 520 selects the identifiers 5011 to 501 N The measuring unit 520 recognizes a plurality of defective product test images read from the test image DB 512 to measure the defect recognition rate and the execution time (S101). Next, the measuring unit 520 uses the recognition devices 5011 to 501 N A plurality of conforming product test images read out from the test image DB 512 are identified to measure the false alarm rate and the execution time ( S102 ).

[0117] Next, the selection unit 540 checks whether there is an identifier 501 whose measured defect recognition rate and false alarm rate are above the prescribed allowable range (S103). If there is an identifier 501 whose defect recognition rate and false alarm rate are above the prescribed allowable range, the process proceeds to S104, and if not, the process proceeds to S106.

[0118] Here, the prescribed allowable range is the lower limit of the defect recognition rate and the upper limit of the false alarm rate specified by the user who uses the image processing device 200. For example, when the user wants the defect recognition rate to be at least 90% when inspecting defects of workpieces conveyed on a production line, the allowable range related to the defect recognition rate is set to be at least 90%. Similarly, when the user wants the false alarm rate to be at least 10% when inspecting defects of workpieces conveyed on a production line, the allowable range related to the false alarm rate is set to be less than 10%.

[0119] Next, the selection unit 540 sorts the identifiers 501 whose defect recognition rates and false alarm rates are both above the predetermined allowable range in the order of short execution time (S104), and selects the identifier 501 with the shortest execution time as the identifier 501 to be executed by the image processing device 200 (S105). Alternatively, the selection unit 540 may set the average of the execution time measured in the processing step of step S101 and the execution time measured in the processing step of step S102 as the execution time used in the processing step of step S104.

[0120] If there is no identifier 501 whose defect recognition rate and false alarm rate are both above the predetermined allowable range, the selection unit 540 selects the identifier 501 with the highest defect recognition rate ( S106 ).

[0121] Fig.13 Specific examples of the results of measuring the defect recognition rate and the false alarm rate are illustrated. The vertical axis represents the defect recognition rate, and the horizontal axis represents the false alarm rate. P1, P2, and P3 represent examples of the defect recognition rate and the false alarm rate when the threshold values ​​of 84%, 87%, and 90% are set for the recognizer 501 having a floating-point learning model, respectively. P4, P5, and P6 represent examples of the defect recognition rate and the false alarm rate when the threshold values ​​of 84%, 87%, and 90% are set for the recognizer 501 having an integer learning model, respectively. P7, P8, and P9 represent examples of the defect recognition rate and the false alarm rate when the threshold values ​​of 81%, 84%, and 87% are set for the recognizer 501 having a binary learning model, respectively. In addition, the allowable range set by the user is that the defect recognition rate is greater than 97% and the false alarm rate is less than 8%. Fig.13 In the example, through Fig.12The processing step of step S103 is used to select the identifier 501 that meets P1, P2, P4, P5 and P8.

[0122] Fig.14 A specific example of the result of measuring the execution time is shown below. The vertical axis represents the defect recognition rate, and the horizontal axis represents the execution time. Fig.14 , the recognizer 501 that has the shortest execution time among the recognizers 501 that conform to P1, P2, P4, P5, and P8 is the recognizer 501 that conforms to P8 (recognizer 501 having a binary learning completion model with a threshold set to 84%). Fig.14 In the example, through Fig.12 The processing step of step S105 selects the classifier 501 having the binary type learning completed model with the threshold set to 84%.

[0123] [Selection of Identifier: Determination of Defect Identification Rate]

[0124] Fig.15 This is a flowchart illustrating an example of a process procedure for measuring a defect detection rate by the management device 100. Fig.15 Detailed description Fig.12 The processing step of step S101.

[0125] First, the measuring unit 520 obtains the N A category is selected from the categories of the learning model used in (S201). Next, the measuring unit 520 selects one defective product test image from a plurality of defective product test images stored in the test image DB 512 (S202). Next, the measuring unit 520 sets a threshold value for the recognizer 501 having the category of the learning model selected in the processing step of step S201, and inputs one defective product test image selected in the processing step of step S202 to measure the defect recognition rate and execution time. The execution time can be measured, for example, by calculating the difference between the time when the defective product test image is input to the recognizer 501 and the time when the recognition result is output.

[0126] In addition, the measuring unit 520 measures the defect recognition rate and execution time for all thresholds that can be set in the recognizer 501 by changing the threshold set in the recognizer 501 (S203). The threshold that can be set in the recognizer 501 can be predetermined with a minimum value, a maximum value, and an increase amount, for example, in increments of 3% between 75% and 97%.

[0127] Next, the measuring unit 520 repeatedly performs the processing steps from step S202 to step S203 for a plurality of defective product test images stored in the test image DB 512. When the measurement of the defect recognition rate and execution time for each threshold value is completed for all defective product test images, the process proceeds to step S205 (S204).

[0128] The measuring unit 520 calculates the average value of the defect recognition rate and execution time for each threshold value obtained by repeatedly performing the processing steps from step S202 to step S203 (S205). Thus, the defect recognition rate and execution time for each threshold value are obtained for the classifier 501 having the type of the learning model selected in the processing step of step S201.

[0129] Next, the measuring unit 520 measures the N The processing steps from step S201 to step S205 are repeated for each category of the multiple learning models used in the method, thereby measuring the defect recognition rate and execution time of each threshold for all categories of the learning models (S206). When the measurement of all categories of the learning models is completed, the processing is terminated. N The defect recognition rate and execution time can be obtained.

[0130] [Selection of Identifier: Determination of False Alarm Rate]

[0131] Fig.16 This is a flowchart illustrating an example of a processing procedure for measuring the false alarm rate by the management device 100. Fig.16 Detailed description Fig.12 The processing step of step S102.

[0132] First, the measuring unit 520 obtains the N The measuring unit 520 selects one category from the categories of multiple learning completed models used in the process (S301). Next, the measuring unit 520 selects one qualified product test image from the multiple qualified product test images stored in the test image DB 512 (S302). Next, the measuring unit 520 sets a threshold value for the recognizer 501 having the category of the learning completed model selected in the processing step of step S301, and inputs the qualified product test image selected in the processing step of step S302, thereby measuring the false alarm rate and the execution time. The execution time can be measured, for example, by calculating the difference between the time when the qualified product test image is input to the recognizer 501 and the time when the recognition result is output.

[0133] In addition, the measuring unit 520 measures the false alarm rate and the execution time for all thresholds that can be set in the recognizer 501 by changing the threshold set in the recognizer 501 (S303). The threshold that can be set in the recognizer 501 can be set in advance with a minimum value, a maximum value, and an increment such that the threshold increases by 1% between 0% and 10%.

[0134] Next, the measuring unit 520 repeatedly performs the processing steps from step S302 to step S303 for a plurality of conforming product test images stored in the test image DB 512. When the measurement of the false alarm rate and execution time for each threshold value is completed for all conforming product test images, the process proceeds to step S305 (S304).

[0135] The measuring unit 520 calculates the average value of the false alarm rate and the execution time for each threshold value obtained by repeatedly performing the processing steps from step S302 to step S303 (S305). Thus, the false alarm rate and the execution time for each threshold value are obtained for the classifier 501 having the type of the learned model selected in the processing step of step S301.

[0136] Next, the measuring unit 520 performs the measurement on the identifiers 5011 to 501 N The processing steps from step S301 to step S305 are repeated for each category of the multiple learning models used in the method, thereby measuring the false alarm rate and execution time of each threshold for the categories of all learning models (S306). When the measurement of the categories of all learning models is completed, the processing is terminated. Through the above processing steps, it is possible to measure the false alarm rate and execution time of each threshold for each classifier 5011 to 501 N Get the false positive rate and execution time.

[0137] 4 Modifications

[0138] Identifier 5011~501 N The identifier may be specific and dedicated to the same inspection object. Fig.17 An example of an inspection object recognized by a recognition device is shown. N This can be done by adding multiple attributes (in Fig.17 In the example of the present invention, the inspection object is determined by a combination of all or part of the material of the workpiece, the surface shape of the workpiece, the item of the defect to be inspected, and the size of the defect that can be inspected, etc., and is a specific identifier 501 dedicated to the same inspection object. Identifiers 5011 to 501 N It can be used in the identifier 5011~501 N In the design, different categories of learning completion models are used.

[0139] In addition, the identifiers 5011 to 501N It may also be a collection of identifiers dedicated to various inspection objects. Specifically, for example, "identifiers 5011 to 501 A :The workpiece to be inspected is metal, the surface shape of the workpiece is shiny, and the identifier is dedicated to and capable of identifying scratches with a depth of more than 100μm, "identifier 50 1A+1 ~501 B :The material of the workpiece to be inspected is metal, the surface shape of the workpiece is shiny, and the identifier is dedicated to dirt and has the ability to identify it, "identifier 501 B+1 ~501 N :The material of the workpiece to be inspected is metal, the surface shape of the workpiece is rough, and the identifier is dedicated to the dent and has the ability to identify the dent. The identifiers 5011 to 501 N It can be a collection of identifiers dedicated to various inspection items. A It can be used in the identifier 5011~501 A In the design, different types of learning completion models are used. Similarly, the recognizer 501 A+1 ~501 B In the identifier 501 A+1 ~501 B In the design, the classifier 501 is designed by different learning completion models. B+1 ~501 N It is also possible to use the identifier 501 B+1 ~501 N In the design, different categories of learning completion models are used.

[0140] The management device 100 may also select the best identifier 501 for each inspection item, and set the selected identifier 501 in different image processing devices 200. Thus, for example, a plurality of image processing devices 200 installed in a production line can perform operations for identifying different inspection items on workpieces transported on the production line, and an image processing system 1 with higher recognition accuracy can be constructed.

[0141] The above is an explanation of the present embodiment. According to the present embodiment, a recognizer whose measured recognition accuracy is included in the predetermined allowable range and whose execution time satisfies the predetermined conditions can be selected from the plurality of recognizers 501 for inspecting the workpiece, and the image processing device 200 can execute the recognizer. Thus, a recognizer whose recognition accuracy and execution time meet the needs of the user can be provided.

[0142] In addition, for example, a company that provides the image processing system 1 provides multiple identifiers 501 to users in a (preset) state pre-assembled into the image processing system 1. The user can also select the application of an identifier with recognition accuracy and processing time corresponding to his or her own needs by operating the management device 100.

[0143] Although the embodiments of the present invention have been described in detail above, the above description is merely illustrative of the present invention in all aspects and various improvements and modifications can be made without departing from the scope of the present invention.

[0144] (Note 1)

[0145] The information processing device has:

[0146] A storage unit for storing a plurality of identifiers having different characteristics for identifying an object;

[0147] a measuring unit for measuring recognition accuracy and execution time of each of the plurality of recognizers for a specific object for each recognizer;

[0148] An output unit, outputting the recognition accuracy and the execution time of each of the plurality of recognizers;

[0149] a selection unit, which selects a recognizer whose execution time satisfies a second condition among the recognizers whose recognition accuracy, measured by the measurement unit, satisfies a first condition; and

[0150] The setting unit performs setting for operating the selected identifier on the recognition device.

[0151] (Note 2)

[0152] In the information processing device described in Note 1,

[0153] The storage unit stores a test image used to measure the recognition accuracy and the execution time of each of the plurality of recognizers for the specific object.

[0154] The measuring unit causes each of the plurality of recognizers to recognize the test image, thereby measuring the recognition accuracy and the execution time for each recognizer.

[0155] (Note 3)

[0156] In the information processing device described in Remark 2,

[0157] The storage unit stores an image of the object.

[0158] The information processing device includes a generating unit that receives an input of processing conditions regarding an image from a user and processes the image of the object stored in the storage unit based on the processing conditions to generate the test image.

[0159] (Note 4)

[0160] In the information processing device described in Remark 3,

[0161] The generating unit generates the test image by adding an image of a detection target designated by a user to the image of the object stored in the storage unit.

[0162] (Note 5)

[0163] In the information processing device described in Remark 3,

[0164] The generating unit generates the test image by adding the image of the detection target generated based on the parameters designated by the user to the image of the object stored in the storage unit.

[0165] (Note 6)

[0166] In the information processing device described in any one of Notes 2 to 5,

[0167] The test image includes a plurality of first test images that are correct in including the detection object.

[0168] The recognition accuracy includes a first probability which is a probability that the identifier recognizes the plurality of first test images as containing the detection object.

[0169] The measuring unit causes the plurality of identifiers to respectively identify the plurality of first test images, thereby measuring the first probability.

[0170] The selection unit selects a classifier whose execution time satisfies the second condition among the classifiers satisfying the first condition and in which the first probability measured by the measurement unit is included.

[0171] (Note 7)

[0172] In the information processing device described in Remark 6,

[0173] The test image further includes a plurality of second test images that are correct if they do not contain the detection object.

[0174] The recognition accuracy further includes a second probability which is a probability that the recognizer mistakenly recognizes the plurality of second test images as containing the detection object.

[0175] The measuring unit further causes the plurality of identifiers to respectively identify the plurality of second test images, thereby measuring the second probability.

[0176] The selection unit selects a classifier whose execution time satisfies the second condition among the classifiers satisfying the first condition and in which the second probability measured by the measurement unit is included.

[0177] (Note 8)

[0178] In the information processing device according to any one of Notes 1 to 7,

[0179] The first condition is a range of recognition accuracy specified by a user using the recognition device.

[0180] (Note 9)

[0181] In the information processing device according to any one of Notes 1 to 8,

[0182] When there is no classifier whose recognition accuracy measured by the measurement unit is included in the first condition, the selection unit selects a classifier having the highest recognition accuracy.

[0183] (Note 10)

[0184] In the information processing device according to any one of Notes 1 to 9,

[0185] The above multiple identifiers are designed by learning the combination of the category of the model and the threshold value for identifying the detected object.

[0186] (Note 11)

[0187] In the information processing device according to any one of Notes 1 to 10,

[0188] The identifier whose execution time satisfies the second condition is the identifier with the shortest execution time.

[0189] (Note 12)

[0190] The identification system comprises an information processing device described in any one of Notes 1 to 11; and an identification device communicating with the information processing device,

[0191] The identification device has:

[0192] A receiving unit that receives the identifier selected by the information processing device from the information processing device and stores it in a storage unit; and

[0193] The recognition unit recognizes the object using the identifier stored in the storage unit.

[0194] (Note 13)

[0195] A setting method is a setting method executed by an information processing device having a storage unit, wherein the storage unit stores a plurality of identifiers for identifying an object and having different characteristics, and the setting method comprises:

[0196] The step of measuring the recognition accuracy and execution time of each of the plurality of recognizers for a specific object for each recognizer;

[0197] The step of outputting the recognition accuracy and the execution time of each of the plurality of recognizers;

[0198] A step of selecting a recognizer whose execution time satisfies a second condition from among the recognizers whose recognition accuracy satisfies the first condition; and

[0199] A step of setting the selected identifier to operate on the identification device is performed.

[0200] (Note 14)

[0201] A storage medium storing a program, wherein the program causes a computer to function as the following unit:

[0202] A storage unit for storing a plurality of identifiers having different characteristics for identifying an object;

[0203] a measuring unit for measuring recognition accuracy and execution time of each of the plurality of recognizers for a specific object for each recognizer;

[0204] An output unit, outputting the recognition accuracy and the execution time of each of the plurality of recognizers;

[0205] A selection unit, which selects a recognizer whose execution time satisfies a second condition from among the recognizers whose recognition accuracy satisfies a first condition as measured by the measurement unit; and

[0206] The setting unit performs setting for operating the selected identifier on the recognition device.

Claims

1. An information processing device, communicating with an identification device, having: A storage unit for storing a plurality of recognizers with different characteristics, wherein the recognizers include a learning model capable of recognizing an object, and each of the recognizers can detect the same object, but has different recognition accuracy for recognizing the object and execution time required from starting detection to outputting a detection result; a measuring unit for measuring recognition accuracy and execution time of each of the plurality of recognizers for a specific object, the specific object being an object having a predetermined attribute designated by a user; An output unit, outputting the recognition accuracy and the execution time of each of the plurality of recognizers; A selection unit, which selects a recognizer having the shortest execution time from the recognizers whose recognition accuracy measured by the measurement unit satisfies a first condition among the plurality of recognizers; and a setting unit for making settings for the selected identifier to operate on the recognition device, The first condition is a range of recognition accuracy specified by a user of the recognition device. When there is no identifier whose identification accuracy measured by the measuring unit is included in the first condition, the selecting unit selects the identifier with the highest identification accuracy, The storage unit stores an image of an object and a test image used to measure the recognition accuracy and the execution time of each of the plurality of recognizers for the specific object. The measuring unit causes each of the plurality of recognizers to recognize the test image, thereby measuring the recognition accuracy and the execution time for each recognizer. The information processing device further includes a generating unit that receives an input of processing conditions regarding an image from a user and processes the image of the object stored in the storage unit based on the processing conditions to generate the test image.

2. The information processing device according to claim 1, wherein: The generating unit generates the test image by adding an image of a detection target designated by a user to the image of the object stored in the storage unit.

3. The information processing device according to claim 1, wherein: The generating unit generates the test image by adding the image of the detection target generated based on the parameters designated by the user to the image of the object stored in the storage unit.

4. The information processing device according to any one of claims 1 to 3, wherein: The test image includes a plurality of first test images that are correct in including the detection object. The recognition accuracy includes a first probability which is a probability that the identifier recognizes the plurality of first test images as containing the detection object. The measuring unit causes the plurality of identifiers to respectively identify the plurality of first test images, thereby measuring the first probability. The selection unit selects a classifier having the shortest execution time among the classifiers for which the first probability measured by the measurement unit is included in the first condition.

5. The information processing device according to claim 4, wherein: The test image further includes a plurality of second test images that are correct if they do not contain the detection object. The recognition accuracy further includes a second probability which is a probability that the recognizer mistakenly recognizes the plurality of second test images as containing the detection object. The measuring unit further causes the plurality of identifiers to respectively identify the plurality of second test images, thereby measuring the second probability. The selection unit selects a classifier having the shortest execution time among the classifiers for which the second probability measured by the measurement unit is included in the first condition.

6. The information processing device according to any one of claims 1 to 3, wherein: The above-mentioned multiple identifiers are designed by learning the combination of the category of the completed model and the threshold value for identifying the detected object.

7. An identification system comprising the information processing device according to any one of claims 1 to 6 and an identification device communicating with the information processing device, The identification device has: A receiving unit that receives the identifier selected by the information processing device from the information processing device and stores it in a storage unit; and The recognition unit recognizes the object using the identifier stored in the storage unit.

8. A setting method, which is executed by an information processing device having a storage unit that communicates with a recognition device, the storage unit storing a plurality of recognizers with different characteristics, the recognizers including a learned model capable of recognizing an object, the objects that can be detected by each of the recognizers being the same, but the recognition accuracy of recognizing the object and the execution time required from the start of detection to the output of the detection result are different, the setting method comprising: The step of measuring, for each identifier, the recognition accuracy and execution time of each of the plurality of identifiers for a specific object, wherein the specific object is an object having a predetermined attribute indicated by a user; The step of outputting the recognition accuracy and the execution time of each of the plurality of recognizers; A step of selecting a recognizer with the shortest execution time from the recognizers whose recognition accuracy satisfies the first condition among the plurality of recognizers, and selecting a recognizer with the highest recognition accuracy when there is no recognizer whose recognition accuracy satisfies the first condition; and performing a step of setting the selected identifier to operate on the identification device, The first condition is a range of recognition accuracy specified by a user of the recognition device. The storage unit stores an image of an object and a test image used to measure the recognition accuracy and the execution time of each of the plurality of recognizers for the specific object. The setting method causes the plurality of recognizers to recognize the test image respectively, thereby measuring the recognition accuracy and the execution time for each recognizer. The test image is generated by receiving an input of processing conditions regarding an image from a user and processing the image of the object stored in the storage unit based on the processing conditions.

9. A storage medium storing a program for causing a computer communicating with a recognition device to function as the following means: A storage unit for storing a plurality of recognizers with different characteristics, wherein the recognizers include a learning model capable of recognizing an object, each of the recognizers being capable of detecting the same object but having different recognition accuracy and execution time required from starting detection to outputting a detection result; a measuring unit for measuring recognition accuracy and execution time of each of the plurality of recognizers for a specific object for each recognizer, wherein the specific object is an object having a predetermined attribute indicated by a user; An output unit, outputting the recognition accuracy and the execution time of each of the plurality of recognizers; A selection unit, which selects the identifier with the shortest execution time from among the plurality of identifiers whose recognition accuracy measured by the measurement unit satisfies the first condition; as well as a setting unit for making a setting for causing the selected identifier to operate on the identification device, The first condition is a range of recognition accuracy specified by a user of the recognition device. When there is no classifier whose recognition accuracy measured by the measuring unit is included in the first condition, the selecting unit selects the classifier with the highest recognition accuracy. The storage unit stores an image of an object and a test image used to measure the recognition accuracy and the execution time of each of the plurality of recognizers for the specific object. The measuring unit causes each of the plurality of recognizers to recognize the test image, thereby measuring the recognition accuracy and the execution time for each recognizer. The program further causes a computer communicating with the recognition device to function as a generating unit that receives input of image processing conditions from a user and processes the image of the object stored in the storage unit based on the processing conditions to generate the test image.

Citation Information

Patent Citations

  • Identification device and game device

    JP2016055188A

  • Image shadow detection method and device

    CN106447721A

  • Pereater detection

    CN106662538A

  • Test method and apparatus

    CN106779089A

  • Method and apparatus for selecting classifier

    KR1020110126791A