Information processing device

The information processing device employs a robust verification model to detect false positives in object detection systems, addressing the complexity of multiple false positive causes and enhancing detection accuracy.

JP7756753B2Active Publication Date: 2025-10-20NOMURA RESEARCH INSTITUTE
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2024084230
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2023-05-26
Filing Date
2024-05-23
Publication Date
2025-10-20
Estimated Expiration
2044-05-23

AI Technical Summary

Technical Problem

Existing machine learning models for object detection are prone to false positives due to various factors, complicating implementation as the number of causes of false positives increases.

Method used

An information processing device uses a first machine learning model for object detection and a second, more robust model for verification, determining false detections based on differences in their results, with the second model being capable of detecting adversarial samples.

Benefits of technology

This approach allows for the detection of false positives using a general-purpose mechanism, simplifying the process and improving the reliability of object detection systems.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007756753000001
    Figure 0007756753000001
  • Figure 0007756753000002
    Figure 0007756753000002
  • Figure 0007756753000003
    Figure 0007756753000003
Patent Text Reader

Abstract

To achieve a technology capable of discovering an erroneous detection a machine learning model with a general purpose mechanism.SOLUTION: An information processing device outputs a first detection result showing an area in which an object is detected among areas in an image by using a first machine learning model for detecting the object in the image. Also, the information processing device outputs a second detection result showing an area in which the object is detected among the areas in an image by using a second machine learning model whose prescribed characteristic about the detection of the object is different from that of the first machine learning model. Further, the information processing device notifies an external device or the like of the existence of an erroneous detection about the detection of the object by the first machine learning mode in the case that difference between the first detection result and the second detection result satisfies a prescribed condition.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to an information processing device that detects an object in an image. [Background technology]

[0002] In recent years, a technology has become known that uses models trained by machine learning such as deep learning (machine learning models) to detect objects in images. While the accuracy of object detection using machine learning models can be practical in some cases, false detections can occur depending on the circumstances when the image was taken (such as the weather) or if the image has been intentionally manipulated.

[0003] Patent Document 1 proposes a technology that, when a machine learning model is used to detect areas that appear to be people in an image taken by a surveillance camera, determines whether the machine learning model has mistakenly detected an area where an insect is flying as a likely human area by checking whether there is any overexposure. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] Japanese Patent Publication No. 2022-131761 Summary of the Invention [Problem to be solved by the invention]

[0005] False positives by machine learning models can occur due to various factors, such as changes in the situation when capturing an image. Patent Document 1 proposes a technology for detecting false positives by machine learning models due to insect flight, but when implementing the technology according to the individual causes of false positives, there is a problem that the implementation becomes more complicated as the number of causes of false positives increases.

[0006] The present invention has been made in view of the above-mentioned problems, and its purpose is to realize a technology that can detect false positives in machine learning models using a general-purpose mechanism. [Means for solving the problem]

[0007] In order to solve this problem, for example, the information processing device of the present invention comprises: An information processing device for detecting an object in an image, one or more processors; and a memory storing one or more instructions, the one or more instructions, when executed by the one or more processors, causing the information processing device to: using a first machine learning model to detect an object in an image, outputting a first detection result indicating an area in the image where the object has been detected; outputting a second detection result indicating an area within the image in which an object has been detected, using a second machine learning model that has a predetermined characteristic related to object detection different from that of the first machine learning model; and and notifying the presence of a false detection in the detection of the object by the first machine learning model when a difference between the first detection result and the second detection result satisfies a predetermined condition. 、 The second machine learning model has a predetermined property related to object detection that is more robust than the first machine learning model, and the predetermined property related to object detection is a property that can detect an object in an image that includes an attack by an adversarial sample. do. [Effects of the Invention]

[0008] According to the present invention, it is possible to discover false positives in machine learning models using a general-purpose mechanism. [Brief explanation of the drawings]

[0009] [Figure 1] FIG. 1 is a diagram illustrating an overview of an information processing system according to an embodiment of the present invention. [Figure 2] FIG. 1 is a block diagram showing an example of the hardware configuration of an information processing device according to an embodiment of the present invention. [Figure 3] FIG. 1 is a block diagram showing an example of the functional configuration of an information processing device according to an embodiment of the present invention; [Figure 4] FIG. 10 is a diagram illustrating a case where it is determined that a false detection occurs due to a detection model in this embodiment. [Figure 5] FIG. 10 is a diagram illustrating a case where it is determined that there is no false detection by the detection model in this embodiment. [Figure 6] FIG. 10 is a diagram illustrating a case where the erroneous detection determination process according to the present embodiment is applied to a moving image. [Figure 7] FIG. 10 is a diagram illustrating a case where the false detection determination process (using multiple verification models) according to the present embodiment is applied to a moving image. [Figure 8] A flowchart illustrating a series of operations for notifying an erroneous detection according to the present embodiment. [Figure 9] FIG. 10 is a diagram showing an example of the data configuration of notification information of an erroneous detection according to the present embodiment; DETAILED DESCRIPTION OF THE INVENTION

[0010] Hereinafter, the embodiments will be described in detail with reference to the accompanying drawings. Note that the following embodiments do not limit the scope of the invention as claimed, and not all combinations of features described in the embodiments are necessarily essential to the invention. Two or more of the features described in the embodiments may be combined in any desired manner. Furthermore, the same reference numerals are used to designate identical or similar components, and redundant descriptions will be omitted.

[0011] <Outline of the information processing system> An example of an information processing system according to this embodiment will be described with reference to FIG. 1. The information processing system 10 includes, for example, an information processing device 100 and a communication device 104 that transmits captured images and receives object detection results. The device that transmits the captured images and the device that receives the object detection results may be separate devices. For example, they may be configured separately, such as an image transmitting device (e.g., a surveillance camera 102-1) that transmits captured images and a result receiving device (user terminal 102-2) that receives the object detection results. The information processing system 10 may also include a service provider terminal 106. The information processing device 100 can communicate with the communication device 104 (or the image transmitting device or the result receiving device) and the service provider terminal 106 via a network. Note that, in this embodiment, the information processing system 10 includes the information processing device 100 and the communication device 104 that transmits captured images and receives object detection results. However, the information processing system 100 may also be configured to operate on a user's device.

[0012] For example, the information processing device 100 performs a predetermined service including object detection by detecting an object in a captured image using a machine learning model and transmitting the object detection result. In the following embodiment, a machine learning model executed to detect an object is referred to as a detection model. The detection model may be any model that includes an object detection function. In this embodiment, the object may include, for example, a person, an animal, a plant, a vehicle, a building, daily necessities, or food. Therefore, the detection model may include, for example, a model that detects a person in an image, a model that detects an animal in an image, a model that detects a specific item in an image (e.g., a vehicle or daily necessities), or a model that detects multiple types of objects. The detection model may also be a model that detects an object with specific characteristics (e.g., a person performing a specific action, a person wearing a specific item, or a person of a specific gender). The object detection result may include information indicating the detected object (e.g., a frame indicating the area of ​​the detected object, a color or text indicating the name of the object, or a numerical value such as a score for the object at the time of detection).

[0013] The predetermined service may include, for example, a service that detects and annotates at least one of people, animals, plants, vehicles, buildings, daily necessities, and foodstuffs from captured still images or videos, provides information related to the detected objects, or provides navigation. It may also include a service that provides information for analyzing still images or videos transmitted from a fixed device such as a surveillance camera by detecting the above-mentioned objects from the still images or videos. Depending on the implementation of the service, the information processing device 100 may acquire captured images from an image transmitting device (e.g., surveillance camera 102-1) and transmit object detection results to a result receiving device (e.g., user terminal 102-2 installed to monitor surveillance camera images).

[0014] In addition to detecting objects in images using a detection model, the information processing device 100 also performs a false detection determination process, which will be described later. The false detection determination process is a process for determining whether a false detection exists in the object detection result obtained by the object detection model, and, if a false detection exists, notifying the user of the false detection. In the false detection determination process, the information processing device 100 uses, for example, a machine learning model (also simply referred to as a verification model) whose predetermined characteristics related to object detection are more robust than those of the object detection model. For example, the verification model can detect one or more characteristics, such as a person, a vehicle, or a specific feature, more robustly than the detection model. Therefore, if an object is detected by the verification model but not by the detection model, it is possible that a false detection exists in the detection result obtained by the detection model (due to some influence in the image). Furthermore, a model that can robustly detect objects in images containing attacks by adversarial samples can be used as the verification model. If the detection model fails to detect the target object in an image containing adversarial samples, but the verification model can detect the target object (or part of it), it can be determined that a false detection exists in the detection result obtained by the detection model. In this way, in this embodiment, instead of adding individual implementations depending on the cause of the false detection, it is possible to detect false detections in machine learning models using a general-purpose mechanism.

[0015] When the information processing device 100 determines that a false detection has occurred through the false detection determination process, it notifies the service provider of the false detection. In the example shown in FIG. 1 , the false detection notification is transmitted to, for example, the service provider terminal 106. For example, the service provider terminal 106 is a terminal managed by the service provider, and the service provider provides an object detection service that detects objects in images captured by the surveillance camera 102-1. The service provider terminal 106 can perform, for example, setting hyperparameters of the detection model, learning and deploying the detection model, and checking the operation status of the detection model. By transmitting the false detection notification from the information processing device 100 to the service provider terminal 106, the service provider can determine whether a false detection has occurred in the detection model they are using. Depending on the nature of the false detection, the service provider can prepare the necessary training data to retrain the detection model or replace it with another machine learning model with better required characteristics. In this embodiment, the information processing device 100 sends a notification of a false detection to the service provider terminal 106 as an example, but depending on the content of the service, the information processing device 100 may also send a notification of a false detection to the user terminal 102-2 or the communication device 104.

[0016] The information processing device 100 is, for example, a server device. The information processing device 100 may be, for example, a server device that realizes a cloud service platform, and the above-described object detection process and erroneous detection determination process may be realized on the cloud service platform. However, the information processing device 100 may also be an edge node placed on a network, or a node constituting a P2P network. Alternatively, the information processing device 100 may be a virtual machine configured on the cloud service platform.

[0017] In this embodiment, an example will be described in which the object detection process using the detection model and the erroneous detection determination process using the verification model are executed on the information processing device 100, which is a server device. However, this embodiment is also applicable to cases in which the processes are executed by multiple server devices that realize a cloud service platform. This embodiment is also applicable to cases in which the object detection process and the erroneous detection determination process are executed in the communication device 104 shown in FIG. 1, or in the surveillance camera 102-1 or the user terminal 102-2.

[0018] The communication device 104 is, for example, a tablet device or a smartphone, but may also be a personal computer, etc. Furthermore, the service provider terminal 106 is, for example, a personal computer, but may also be a tablet device or a smartphone.

[0019] <Example of hardware configuration of information processing device> 2, an example of the hardware configuration of the information processing device 100 will be described. The information processing device 100 includes a memory 202, a processor 204, a communication interface 206, a storage 208, an input interface 210, and a power supply 212. These elements are each connected to a bus 214 and communicate with each other via the bus 214.

[0020] The memory 202 is a volatile storage medium such as a DRAM, which temporarily stores data and programs. The storage 208 is a non-volatile storage medium that permanently stores data and programs. The stored programs include one or more instructions that can be executed by a processor. The storage 208 may be, for example, a semiconductor memory or a hard disk. The storage 208 can store various types of data, such as training data for training a neural network, test data for testing a trained neural network, captured images received from the surveillance camera 102-1 or the communication device 104, and notification data of false detections, which will be described later.

[0021] The processor 204 includes, for example, an arithmetic circuit such as a central processing unit (CPU). The processor 204 may be configured with one or more processors. The processor 204 may further include an arithmetic circuit (for example, a GPU) or dedicated hardware for faster execution of statistical processing such as machine learning, and may also include an internal memory. The processor 204 implements various functions of the information processing device 100 by loading programs stored in the storage 208 into the memory 202 and executing them.

[0022] The communication interface 206 is an interface for transmitting and receiving data between the information processing device 100 and an external device. The communication interface 206 may include a communication circuit capable of communicating using a communication method conforming to various standards. The communication interface 206 is connected to a network and exchanges data with the communication device 104 shown in FIG. 1 and the like via the network. The input interface 210 is a device for accepting input from, for example, an administrator of the information processing device 100, but may be absent.

[0023] The power supply 212 is a circuit or module for providing power for operating each unit of the information processing device 100. The power supply 212 may be configured to include a battery.

[0024] <Example of functional configuration of information processing device> Next, an example of the functional configuration of the information processing device 100 will be described with reference to Fig. 3. The example of the functional configuration shown in Fig. 3 can be realized, for example, by the processor 204 expanding a program stored in the storage 208 into the memory 202 and executing it. Note that each of the functional blocks described in this embodiment may be integrated or separated, and the described functions may be realized by different blocks. Furthermore, what is described as hardware may be realized by software, and vice versa.

[0025] The data acquisition unit 310 acquires captured images from, for example, an external device. The captured images may be included in multiple frames constituting a video. For example, the data acquisition unit 310 may acquire a video composed of multiple consecutive frame images from the surveillance camera 102-1 or the communication device 104. The data acquisition unit 310 may also acquire captured images received from the communication device 104 or the like and temporarily or permanently stored in the storage 208. Furthermore, the data acquisition unit 310 may acquire captured images stored in a storage external to the information processing device 100.

[0026] The detection model processing unit 312 includes a detection model execution unit 314 and a detection result output unit 316, and executes object detection processing using these functional components.

[0027] The detection model execution unit 314 inputs the image (captured image) acquired by the data acquisition unit 310 and executes the trained detection model to detect objects in the captured image. As described above, the detection model may be any model as long as it includes an object detection function. For example, a detection model capable of detecting multiple types of objects can be used as the detection model. The detection model execution unit 314 can use, as the detection model, well-known models such as YOLO and Faster R-CNN. The detection model outputs, for example, a frame indicating the area of ​​the detected object, a color or text indicating the name of the detected object, and a numerical value indicating the probability of detection.

[0028] The detection result output unit 316 outputs information about the object detected by the detection model (i.e., the object detection result). Using the output from the detection model execution unit 314, the detection result output unit 316 superimposes a frame indicating the object area on the captured image to generate the object detection result. The detection result output unit 316 can transmit the generated object detection result to, for example, the communication device 104 or the user terminal 102-2.

[0029] The verification model processing unit 318 includes a verification setting unit 320, a verification model execution unit 322, an erroneous detection determination unit 324, and a notification unit 326, and the verification model processing unit 318 executes the erroneous detection determination process using these functional components.

[0030] The verification setting unit 320 sets a verification model to be used in the false detection determination process, for example, in accordance with instruction information from the service provider terminal 106. The instruction information includes information regarding the specification of the verification model and the mode of use. The instruction information includes, for example, identification information, version information, and execution frequency information of the verification model used for verification. The identification information of the verification model is, for example, information for identifying a trained model stored in the model data 330. Multiple pieces of identification information may be specified to enable the specification of multiple verification models.

[0031] For example, the verification setting unit 320 uses the identification information of the verification model to set a verification model specialized for detecting a specific object that can detect the specific object more robustly (than the detection model). When detection models capable of detecting multiple types of objects are used, the identification information of multiple verification models may be specified. In this case, a model capable of detecting people more robustly (than the verification model) and a model capable of detecting vehicles more robustly can be specified. Alternatively, when a single detection model capable of detecting multiple types of objects is used, the verification setting unit 320 can use the identification information of the verification model to set a single verification model that can detect multiple types of objects similar to the detection model but can detect each object more robustly. In this way, in this embodiment, a desired verification model can be set depending on the detection model used in the object detection process. In other words, it is possible to detect erroneous detections of machine learning models that may occur due to various factors using a more versatile mechanism.

[0032] The version information in the instruction information indicates the version of the verification model, and can specify, for example, the verification model after re-learning using the added training data.

[0033] The execution frequency in the instruction information specifies, for example, how many frames out of multiple consecutive frames in a video the verification model is to be executed on. While the verification model can detect objects more robustly than the detection model, it may have a slower execution speed than the detection model. Therefore, when the detection model is executed on multiple consecutive frames, the verification model can be set to be executed less frequently. For example, the detection model outputs detection results for a first number of images per second out of the multiple frame images, and the verification model outputs detection results for a second number of images (a number smaller than the first number) out of the multiple frame images. The execution frequency may be expressed, for example, as the ratio of the number of executions of the detection model to the number of executions of the verification model. In this way, the information processing device 100 can reduce the processing load of the information processing device 100 and speed up the operation of the information processing device 100. Furthermore, a detection model that operates faster can be used to realize a high-speed detection service while simultaneously detecting false detections by the detection model.

[0034] The verification model execution unit 322 inputs the image (photographed image) acquired by the data acquisition unit 310 and executes the above-mentioned verification model in accordance with the settings made by the verification setting unit 320. The verification model outputs, for example, a frame indicating the area of ​​the detected object. However, this embodiment is not limited to a frame indicating the area of ​​the object, and other forms such as information indicating the shape of the area of ​​the object may also be used. The verification model may also output information indicating the name of the detected object corresponding to the frame.

[0035] The erroneous detection determination unit 324 determines whether or not the detection result based on the detection model contains an erroneous detection, based on the detection result based on the detection model and the detection result based on the verification model. For example, if the difference between the detection result based on the detection model and the detection result based on the verification model is large enough to satisfy a certain condition, the erroneous detection determination unit 324 determines that the detection result based on the detection model contains an erroneous detection.

[0036] Here, with reference to Fig. 4, a case where it is determined that a false detection by the detection model exists will be described. A captured image 400 is a captured image acquired by the data acquisition unit 310. The captured image 400 is input to a detection model 402 and a verification model 404. The detection model 402 and the verification model 404 each detect objects in the captured image 400. In this example, the verification model 404 is a model that detects people more robustly than the detection model 402.

[0037] Detection result 406 schematically shows an example of an object detected by detection model 402. Frames 408 and 410 each indicate the area of ​​the object detected by detection model 402. For ease of understanding, detection result 406 has frames 408 and 410 superimposed on captured image 400. In this example, detection model 402 has detected a person included in the area of ​​frame 408 and a bicycle included in the area of ​​frame 410. Detection area 420 schematically shows only object areas 422 and 424 detected by detection model 402.

[0038] Meanwhile, the detection result 412 schematically shows an example of an object detected by the verification model 404. Frames 414 and 416 each indicate the area of ​​the object detected by the verification model 404. For ease of understanding, the detection result 412 has the frames 414 and 416 superimposed on the captured image 400. In this example, the verification model 404 has detected a person included in the area of ​​frame 414 and a person included in the area of ​​frame 416. The map image 426 is a binary image in which the numerical value "1" is assigned to areas 428 and 430 of the object detected by the verification model 404, and the numerical value "0" is assigned to other areas.

[0039] The false detection determination unit 324 extracts the difference between the map image 426 and the detection region 420. For example, a difference map image 432 is generated by assigning "1" to regions (non-overlapping regions) where there is a difference between the object region in the map image 426 and the object regions 422 and 424. In the difference map image 432, a cluster of regions (difference region 434) is generated due to the difference between the object region detected by the detection model 402 and the object region detected by the verification model 404. For example, if the false detection determination unit 324 determines that the difference region 434 is equal to or larger than a predetermined threshold, it determines that a false detection exists in the detection result of the detection model 402. In this embodiment, a method of generating a difference map and determining the existence of a false detection is used. However, other methods may also be used, such as a method of comparing only the number of detected objects in the target image, a method of comparing the number of detected objects in the target image with their respective coordinate positions (e.g., the coordinates of the center of gravity of each object), or a method of comparing the number of detected objects in the target image with their respective coordinate positions and areas.

[0040] Next, with reference to Fig. 5, a case where it is determined that there is no erroneous detection by the detection model will be described. The captured image 500 is a captured image acquired by the data acquisition unit 310, and is the same as the captured image 400 shown in Fig. 4. The captured image 500 is input to both a detection model 502 and a verification model 504. The detection model 502 and the verification model 504 each detect objects in the captured image 500. For example, the detection model 502 is a model that detects people in an image, while the verification model 504 is a model that detects people more robustly than the detection model 502.

[0041] A detection result 506 schematically shows an example of an object detected by the detection model 502. Frames 508 and 510 respectively indicate the areas of the objects detected by the detection model 502. For ease of understanding, the detection result 506 has frames 508 and 510 superimposed on the captured image 500. In this example, the detection model 502 has detected a person included in the area of ​​frame 508 and a person included in the area of ​​frame 510. A detection area 520 schematically shows only areas 522 and 524 of the objects detected by the detection model 502 extracted.

[0042] Meanwhile, detection result 512 schematically shows an example of an object detected by verification model 504. Frames 514 and 516 respectively indicate the areas of the objects detected by verification model 504. For ease of understanding, detection result 512 has frames 514 and 516 superimposed on captured image 500. In this example, verification model 504 has detected a person included in the area of ​​frame 514 and a person included in the area of ​​frame 516. Map image 526 is a binary image in which regions 528 and 530 of the objects detected by verification model 504 are assigned a numerical value of "1" and other regions are assigned a numerical value of "0."

[0043] False detection determination unit 324 extracts the difference between map image 526 and detection region 520. For example, difference map image 532 is generated by assigning "1" to regions (non-overlapping regions) where there is a difference between the object region in map image 526 and object regions 522 and 524. In difference map image 532, there is no difference between the object region detected by detection model 502 and the object region detected by verification model 504. For this reason, false detection determination unit 324 determines that there is no false detection in the detection result of detection model 502, for example, because there is no difference region whose size is equal to or larger than a predetermined threshold. In other words, it is determined that there is a false detection when an object of a region equal to or larger than a predetermined size is detected in the detection result of the detection model in a region where no object is detected in the detection result of the detection model.

[0044] The determination by the erroneous detection determination unit 324 described above can also be applied when multiple verification models are used. For example, the erroneous detection determination unit 324 generates a map image by combining (ORing regions of "1") map images 526 from a first verification model that detects people more robustly than the detection model and a second verification model that detects vehicles more robustly than the detection model. Then, a difference map image is generated between the combined map image and object regions 422, 522, etc. That is, if an object of a predetermined size or larger is detected in at least one of the detection results of the first verification model and the second verification model in an area where no object is detected in the detection results of the detection model, it can be determined that a erroneous detection exists. This makes it possible to determine erroneous detections related to multiple characteristics using a simple mechanism. That is, it is less likely to introduce complex implementations for individual causes of erroneous detection, simplifying the operation of the information processing device and making it easier to stabilize its operation. In addition, as a method of using the first verification model and the second verification model in combination, in addition to the above, a configuration in which the second verification model is also used based on the detection results of the first verification model may also be used.For example, if the detection reliability of each object, which is the detection result of the first verification model, is below or equal to a predetermined threshold, object detection is also performed using the second verification model, and the respective detection results are combined as described above.

[0045] 3 again. When the erroneous detection determination unit 324 determines that an erroneous detection has occurred, the notification unit 326 transmits a notification of the erroneous detection to an external device (e.g., the service provider terminal 106). The notification unit 326 may transmit a notification of the erroneous detection every time an erroneous detection occurs. Alternatively, the notification unit 326 may create notification information that records information related to the erroneous detection notification, and transmit the created notification information to the external device at predetermined time intervals.

[0046] The notification information may be, for example, a data structure 900 shown in Fig. 9. The data structure 900 may be configured, for example, with a frame number, details of the false detection, identification information of the detection model, identification information of the verification model, and identification information of the video.

[0047] The frame number is the number of a frame in the video in which it is determined that a false detection exists. This frame is the frame number of the video identified by the "video identification information" in the data structure 900. The content of the false detection is, for example, information indicating what characteristics the false detection occurred in. The notification unit 326 may describe the characteristics based on the detection result of the verification model when the false detection occurred. For example, the notification unit 326 may use the detection result of the verification model (the name of the object related to the frame 416, in this case, a person) corresponding to the region in which it is determined that a false detection exists (the difference region 434) to determine the content of the false detection as "missing detection of a person." The identification information of the detection model and the identification information of the verification model are the identification information of the models used when it was determined that a false detection exists.

[0048] By receiving the notification information generated by the notification unit 326 at the service provider terminal 106, the service provider can easily understand what kind of erroneous detection has occurred in the detection model being operated and in what kind of image the erroneous detection has occurred. Therefore, by viewing the notification information, the service provider can easily improve the quality of services that use detection models by identifying and supplementing the learning data to be used when retraining the detection model or by replacing the detection model.

[0049] The model data 330 is a database that stores data on the detection model and the verification model, and includes information such as hyperparameters and learned parameters of each model.

[0050] The verification setting data 332 stores the various information set by the verification setting unit 320, such as identification information for the verification model used for verification, version information for the verification model, and information on the execution frequency for executing the verification model.

[0051] Next, a series of operations for notifying a false detection in the information processing device 100 will be described with reference to FIG. 8. This processing is realized by the processor 204 executing a computer program recorded in the storage 208. Note that in the following description, an example is given in which the detection model and the verification model are executed at the same frequency (i.e., for all frames), but as described above, the verification model may be executed less frequently than the detection model. That is, as shown in FIG. 6, the detection model 600 may be executed for each frame (e.g., frame 610) in a video, while the verification model 602 may be executed less frequently (i.e., for frames 610, 614, and 616).

[0052] In S801, the data acquisition unit 310 acquires an image (captured image) from the storage 208 or an external device. In S802, the detection model processing unit 312 executes object detection processing. For example, the detection model execution unit 314 executes a detection model on the acquired image to detect an object in the image.

[0053] Next, the verification model processing unit 318 executes an erroneous detection determination process. Specifically, in S803, the verification model execution unit 322 executes the verification model on the acquired image to detect an object in the image. Then, in S804, the erroneous detection determination unit 324 generates a map image (e.g., map image 426) indicating the area of ​​the object detected by the verification model. In S805, the erroneous detection determination unit 324 excludes the area detected by the detection model from the area of ​​the object in the map image (i.e., performs difference extraction as described in FIG. 4 to generate the difference map image 432). In S806, the erroneous detection determination unit 324 calculates the area of ​​the cluster of the remaining area in the map image (difference area 434), and determines whether the area is equal to or greater than a threshold. If the erroneous detection determination unit 324 determines that the area is equal to or greater than the threshold, the process proceeds to S808; otherwise, the process returns to S801.

[0054] In S808, the notification unit 326 generates notification information regarding the false detection, and notifies an external device of the existence of the false detection in real time or at a predetermined timing. In S809, the detection model processing unit 312 determines whether all images related to the video have been processed, and if it is determined that all images have been processed, ends this processing, otherwise returns to S801.

[0055] The above-described operation can also be applied to the case where multiple verification models are used. For example, as shown in FIG. 7 , among the multiple verification models, a first verification model 702 and a second verification model 704 may be operated alternately. For example, the first verification model 702 is executed for frames 610 and 616, and the second verification model 704 is executed for frame 614. In this case, the combined execution frequency of the first verification model 702 and the second verification model 704 is lower than the execution frequency of the detection model 600.

[0056] As described above, in this embodiment, the detection model execution unit 314 uses a detection model that detects an object in an image to output a first detection result indicating a region in the image where the object has been detected. Then, the verification model execution unit 322 uses a verification model whose object detection characteristics differ from those of the detection model to output a second detection result indicating a region in the image where the object has been detected. Furthermore, the erroneous detection determination unit 324 determines whether the difference between the two detection results is large enough to satisfy a predetermined condition, and if the difference is large enough to satisfy the condition, determines that an erroneous detection has occurred in the object detection by the detection model. Furthermore, if an erroneous detection by the detection model has occurred, the notification unit 326 transmits notification information to, for example, the service provider terminal 106. In this manner, this embodiment makes it possible to detect erroneous detections by machine learning models using a general-purpose mechanism without requiring additional implementation depending on the cause of the erroneous detection.

[0057] The invention is not limited to the above-described embodiment, and various modifications and variations are possible within the scope of the gist of the invention. [Explanation of symbols]

[0058] 100...information processing device, 102-1...monitoring camera, 102-2...user terminal, 104...communication device, 106...service provider terminal

Claims

1. An information processing device for detecting an object in an image, one or more processors; and a memory storing one or more instructions, the one or more instructions, when executed by the one or more processors, causing the information processing device to: using a first machine learning model to detect an object in an image, outputting a first detection result indicating an area in the image in which the object has been detected; outputting a second detection result indicating an area within the image in which an object has been detected, using a second machine learning model that has a predetermined property related to object detection different from that of the first machine learning model; and notifying the presence of a false detection in the detection of the object by the first machine learning model when a difference between the first detection result and the second detection result satisfies a predetermined condition; An information processing device, wherein the second machine learning model has a predetermined property related to object detection that is more robust than the first machine learning model, and the predetermined property related to object detection is a property that can detect objects in images that include attacks by adversarial samples.

2. 2. The information processing device according to claim 1, wherein the notifying includes determining that the predetermined condition is satisfied when an object of a region equal to or larger than a predetermined size is detected in the second detection result in an area in which no object is detected in the first detection result.

3. The one or more instructions may further include: Acquire a series of frames of images, the first machine learning model outputs the first detection result for a first number of images per second among the plurality of frame images; The information processing device according to claim 1 , wherein the second machine learning model outputs the second detection result for a second number of images per second among the plurality of frame images, the second number being less than the first number.

4. The one or more instructions may further include: outputting a third detection result indicating an area within the image in which an object has been detected, using a third machine learning model having a second predetermined property related to object detection that is more robust than the first machine learning model; and 3. The information processing device according to claim 2, wherein the notifying includes notifying of the presence of a false positive in the detection of an object by the first machine learning model when an object of an area equal to or larger than the predetermined size is detected in at least one of the second detection result and the third detection result in an area where no object is detected in the first detection result.

5. The information processing device according to claim 4 , wherein the notification includes notifying information about an object related to an erroneous detection.

Citation Information

Patent Citations

  • Model training method and device, electronic equipment, storage medium and product

    CN114445682A

  • Attribute recognition system, learning server, and attribute recognition program

    JP2021009645A

  • Erroneous detection determination device, method, and program

    JP2022131761A