Object detection method and apparatus

The object detection method efficiently detects and counts objects in densely packed environments by using machine learning models to generate and select valid objects based on confidence and similarity scores, addressing the challenges of existing technologies in labeling and re-learning.

JP2026076139APending Publication Date: 2026-05-11NEUROCLE INC
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
NEUROCLE INC
Filing Date
2025-10-23
Publication Date
2026-05-11

AI Technical Summary

Technical Problem

Existing object counting technologies face challenges in accurately distinguishing and counting individual objects in densely packed environments, requiring significant time and cost for labeling and re-learning when applied to new environments or objects.

Method used

An object detection method utilizing machine learning models to generate characteristic information from object candidates and reference objects, calculating similarity scores, and selecting valid objects based on confidence and similarity scores, allowing for efficient detection and counting without labeling all objects.

Benefits of technology

Enables accurate and rapid object detection in densely packed environments, reducing labeling time and cost, and enabling flexible adaptation to new environments and objects.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026076139000001_ABST
    Figure 2026076139000001_ABST
Patent Text Reader

Abstract

To provide a method for detecting an object. [Solution] The method includes the steps of: detecting at least one object candidate from a target image and generating object candidate information including the location information and confidence score of the object candidate; generating first characteristic information from the object candidate; calculating a similarity score between the first characteristic information and the second characteristic information of a reference object; and selecting a valid object from among the object candidates based on the confidence score and the similarity score, wherein the reference object includes a positive reference object or a negative reference object.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to an object detection method and apparatus.

Background Art

[0002] Object counting technology is a technology that utilizes computer vision and artificial intelligence to automatically count the number of objects in images or videos, and is widely used in quality control, inventory management, and productivity improvement in various industries such as manufacturing, agriculture, and retail.

[0003] However, since existing object counting technologies must accurately label all objects, a large amount of time and cost are required for object labeling in images containing a large number of objects. Also, when objects are dense, it is difficult for existing object detection models to accurately distinguish and count individual objects, which becomes a problem in manufacturing lines or crop cultivation environments where objects overlap or are located close to each other. Additionally, a large amount of learning data and time are required to apply the model to new environments or new objects. Since existing models are optimized for specific environments, additional data collection and model re-learning are required to apply them to other environments.

Summary of the Invention

Problems to be Solved by the Invention

[0004] An object of this application is to provide an object detection method and apparatus.

Means for Solving the Problems

[0005] An embodiment of this application provides an object detection method. The method includes the steps of: detecting at least one object candidate from a target image and generating object candidate information including location information and confidence score of the object candidate; generating first characteristic information from the object candidate; calculating a similarity score between the first characteristic information and second characteristic information of a reference object; and selecting a valid object from the object candidates based on the confidence score and the similarity score, wherein the reference object may include a positive reference object or a negative reference object.

[0006] Furthermore, the step of detecting the object candidate is performed by inputting the target image into the first machine learning model and outputting the object candidate information, and the first machine learning model can be trained to output object candidate information from the input image.

[0007] Furthermore, the method comprises the steps of: generating the first characteristic information; inputting the target image into a second machine learning model to output first overall characteristic information; and extracting the first characteristic information corresponding to the object candidate from the first overall characteristic information.

[0008] The process further includes a step of generating the second characteristic information, the step of generating the second characteristic information may include a step of inputting a reference image containing the reference object into a third machine learning model to output second overall characteristic information; and a step of extracting the second characteristic information corresponding to the reference object from the second overall characteristic information.

[0009] Furthermore, the third machine learning model may be trained to highlight the differences between the positive reference object and the negative reference object.

[0010] Furthermore, the step of selecting effective objects may include the steps of: calculating the number of detection points from the confidence score and the similarity score; selecting effective detection points by comparing the number of detection points with a predetermined detection critical value; and determining the effective objects based on the number of effective detection points.

[0011] Furthermore, the step of determining the effective object can be carried out based on a comparison between the number of effective detection points obtained by each candidate object using a positive reference object and the number of effective detection points obtained by a negative reference object.

[0012] Furthermore, the step of determining the effective object can be carried out by excluding from the effective object candidates those that have an effective detection score from the negative reference object.

[0013] Furthermore, the step of determining the effective object can be carried out by selecting an object candidate from among the object candidates that has an effective detection score by a positive reference object as the effective object.

[0014] Furthermore, the process may further include adjusting the confidence critical value or the detection critical value for selecting the object candidate from the confidence score.

[0015] The process may further include the steps of specifying the reference object from the target image and generating the second characteristic information for the specified reference object.

[0016] The method may further include a step of counting the effective objects.

[0017] An embodiment of this application provides a computer program for object detection. The computer program may be stored on a recording medium to execute the object detection method according to the embodiment of this application.

[0018] An object detection device is provided by an embodiment of the present application. The device includes a memory in which a program for object detection is stored; and a processor that, by executing the program, detects at least one object candidate from a target image, generates object candidate information including the location information and confidence score of the object candidate, generates first characteristic information from the object candidate, calculates a similarity score between the first characteristic information and second characteristic information of a reference object, and selects a valid object from the object candidates based on the confidence score and the similarity score, wherein the reference object may include a positive reference object or a negative reference object. [Effects of the Invention]

[0019] According to the embodiments of this application, it is possible to detect specific objects even in images containing a large number of objects, and to count the objects quickly and accurately. This is particularly useful in environments where objects are densely packed, such as manufacturing lines and agricultural cultivation.

[0020] Furthermore, according to the embodiment of this application, since the entire set of objects can be detected by labeling only some of them without labeling all of them, the time and cost required for labeling work can be significantly reduced.

[0021] Furthermore, according to the embodiments of this application, a non-learning-based approach can be introduced to generate and apply models immediately in the field. In particular, because it can quickly respond to new environments and objects, it can flexibly address the rapidly changing demands of industrial sites.

[0022] Furthermore, according to the embodiments of this application, the reference object can be changed during the application of the present invention to improve performance and address exceptional situations.

[0023] The effects that can be obtained from the embodiments of the present application are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those with ordinary knowledge in the technical field to which the present application belongs from the following description.

Brief Description of Drawings

[0024] [Figure 1] It is a flowchart of an object detection method according to an embodiment of the present application. [Figure 2] It is a flowchart for explaining an embodiment of step S130 in FIG. 1. [Figure 3] It is a block diagram of an object detection device according to an embodiment of the present application. [Figure 4] It is a drawing for explaining an object detection process according to an embodiment of the present application. [Figure 5] It is a drawing for explaining an object detection process according to an embodiment of the present application.

Modes for Carrying Out the Invention

[0025] Brief descriptions of each drawing are provided to more fully understand the drawings cited from the present application. Since the technical idea of the present application can be subjected to various changes and can have various embodiments, specific embodiments are illustrated in the drawings and will be described in detail. However, this is not intended to limit the technical idea of the present application to specific embodiments, and includes all changes, equivalents, and alternatives included within the scope of the technical idea of the present application.

[0026] When it is determined that a specific description of related known technologies may make the gist of the present application needlessly ambiguous in explaining the technical idea of the present application, the detailed description thereof will be omitted.

[0027] The terms used herein are for illustrative purposes only and are not intended to limit and / or restrict this application. Singular expressions include plural expressions unless the context clearly indicates otherwise. Furthermore, numbers used herein (e.g., 1st, 2nd, etc.) are merely identifiers to distinguish one component from another.

[0028] In this specification, when a part is said to be connected to another part, this includes not only direct connections but also indirect connections through other components in between. Furthermore, when a part is said to contain some component, this does not mean excluding other components, but rather that it may further contain other components, unless otherwise stated.

[0029] Furthermore, in this application, the term “or” is intended to mean an implicational “or” rather than an exclusive “or.” That is, where not distinctly specified or not clearly defined in context, “X utilizes A or B” is intended to mean one of the natural implicational substitutions. That is, if X utilizes A; X utilizes B; or X utilizes both A and B, “X utilizes A or B” can apply to any of the aforementioned cases. Also, the term “and / or” as used herein refers to and includes all possible combinations of one or more of the related configurations listed.

[0030] Furthermore, terms such as "~part," "~device," "~child," and "~module" described in this application refer to a unit that processes at least one function or operation, which can be embodied in hardware, software, or a combination of hardware and software, such as a processor, microprocessor, microcontroller, CPU (Central Processing Unit), GPU (Graphics Processing Unit), APU (Accelerate Processor Unit), DSP (Digital Signal Processor), ASIC (Application Specific Integrated Circuit), and FPGA (Field Programmable Gate Array).

[0031] Furthermore, we aim to clarify that the classification of configurations in this application is merely a classification based on the main function that each configuration is responsible for. That is, two or more configurations described below may be integrated into a single configuration, or a single configuration may be divided into two or more configurations based on more subdivided functions. Moreover, each configuration described below may additionally perform some or all of the functions that other configurations are responsible for, in addition to the main function that it is responsible for, and of course, some of the main functions that each configuration is responsible for may be exclusively performed by other configurations.

[0032] In this specification, the term "artificial intelligence learning model" may be used in the same sense as "artificial intelligence model," "computational model," or "machine learning model." Artificial intelligence learning models can be trained using a variety of algorithms, such as decision trees, random forests, Gaussian naive Bayes, k-nearest neighbors, Ada Boost, support vector machines, voting, bagging, neural networks, and deep learning. However, they are not limited to these.

[0033] Artificial intelligence learning models can be trained using at least one of the following methods: supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning. Learning an artificial intelligence model can be a process in which the model applies knowledge necessary for it to perform a specific action.

[0034] When algorithms such as neural networks and deep learning are applied to an artificial intelligence learning model, the AI ​​learning model can be referred to as a network function. The term "network function" can be used interchangeably with "neural network." A neural network can consist of a set of interconnected computational units, which can generally be referred to as nodes. Such nodes may also be referred to as neurons. A neural network consists of at least one node, and nodes can be interconnected by one or more links.

[0035] Neural networks can include, but are not limited to, deep neural networks (DNNs). Deep neural networks can include, but are not limited to, convolutional neural networks (CNNs), recurrent neural networks (RNNs), autoencoders, restricted Boltzmann machines (RBMs), deep belief networks (DBNs), Q networks, U networks, Siam networks, and generative adversarial networks (GANs).

[0036] The embodiments of this application will be described in detail below.

[0037] Figure 1 is a flowchart of an object detection method according to an embodiment of this application.

[0038] At stage S110, at least one object candidate can be detected from the target image, and object candidate information can be generated. The object candidate information may include the object candidate's location and confidence score.

[0039] Here, the positional information of the object candidate can mean the coordinate information of the object candidate within the target image. For example, the positional information of the object candidate may be the coordinate information of the bounding box. The coordinate information of the bounding box may include the coordinate information of a reference point (e.g., the upper left corner, the upper right corner, etc.) or the center point, size information (width and height), etc., but is not limited to these.

[0040] The confidence score can represent the probability that a candidate object exists. For example, the confidence score could represent the probability that an object exists within the bounding box, or that it belongs to a specific class or type of object within the bounding box. For example, it can be a value between 0 and 1, but is not limited to this.

[0041] In the embodiment, the candidate object information may further include object label information. The label information may be used to identify the class, type, etc., of the object.

[0042] In the embodiment, step S110 can be performed by inputting a target image into a first machine learning model and outputting object candidate information. Here, the first machine learning model can be trained to output object candidate information from the input image.

[0043] In the embodiment, the first machine learning model may be a class-agnostic model. That is, the first machine learning model does not classify the class or type of an object, but only recognizes the object and outputs candidate object information. In this way, even when using a machine learning model that does not classify classes or types, it is possible to classify only objects of a specific class or type by using a reference object, as explained below.

[0044] In the embodiment, the first machine learning model may be a class-aware model. That is, the first machine learning model can detect candidate objects belonging to a specific class or type.

[0045] At the S120 stage, first characteristic information can be generated from the object candidate.

[0046] In the embodiment, step S120 can be performed by extracting first characteristic information corresponding to the object candidate from characteristic information for the entire target image, similar to step S130, which will be described in detail below. Specifically, step S120 may include the step of inputting the target image into a second machine learning model to output first overall characteristic information and the step of extracting first characteristic information corresponding to the object candidate from the first overall characteristic information. Here, the second machine learning model may be trained to output characteristic information from the input image.

[0047] Furthermore, the extraction of first characteristic information can be performed based on the positional relationship of the object candidates to the target image. That is, the entire target image can be input into the second machine learning model to output characteristic information for the entire target image (i.e., first overall characteristic information), and then only the characteristic information of the object candidates (i.e., first characteristic information) can be extracted from the characteristic information. Through this, when the target image contains multiple object candidates, the overall characteristic information can be output at once, and the characteristic information of each object candidate can be extracted from it, making it efficient. In addition, more consistent characteristic information can be obtained compared to extracting object candidates from the target image and inputting the extracted object candidates into the second machine learning model.

[0048] At step S130, the second characteristic information of the reference object can be generated.

[0049] In the embodiment, the reference object may include a positive reference object or a negative reference object. Here, the positive reference object may indicate the object to be detected, and the negative reference object may indicate an object that is not a positive reference object.

[0050] In the embodiment, step S130 can be generated by inputting a reference image containing the reference object into a third machine learning model and outputting second overall characteristic information (S131), as shown in Figure 2, and extracting second characteristic information corresponding to the reference object from the second overall characteristic information (S132). At this time, the extraction of second characteristic information can be performed based on the positional relationship of the reference object with respect to the reference image. That is, after inputting the entire reference image into the third machine learning model and outputting characteristic information for the entire reference image (i.e., second overall characteristic information), only the characteristic information due to the reference object (i.e., second characteristic information) can be extracted from the overall characteristic information.

[0051] This method is efficient because, when a reference image contains multiple reference objects, it outputs overall characteristic information at once and then extracts characteristic information for each reference object from it. Furthermore, it allows for obtaining more consistent characteristic information compared to extracting reference objects from a reference image and then inputting the extracted reference objects into a third machine learning model.

[0052] In the embodiment, the third machine learning model may be the same model as the second machine learning model used to generate the first characteristic of the object candidate in step S120.

[0053] In the embodiment, the third machine learning model may be trained to highlight the differences between the positive and negative reference objects. For example, the third machine learning model may be generated by comparative learning.

[0054] In the embodiment, the second characteristic information may be a value that has been generated and stored in advance, or it may be generated before, after, or during method 100.

[0055] In the embodiment, the reference image may be a different image from the target image, or it may be the target image itself. In the latter case, the reference object may be specified by the user from the target image.

[0056] In the embodiment, the reference object may be specified by the user or detected by a predetermined algorithm.

[0057] In the embodiment, the reference objects may be modified. For example, at least some of the reference objects may be excluded, or new reference objects may be added. Also, a positive reference object may be changed to a negative reference object, or a negative reference object may be changed to a positive reference object.

[0058] At the S140 stage, a similarity score can be calculated between the first characteristic information of the object candidate and the second characteristic information of the reference object. The similarity score indicates the degree of agreement between the object candidate and the reference object. For example, the similarity score may be a value between 0 and 1. A similarity score can be calculated for each object candidate. In addition, a number of similarity scores corresponding to the number of reference objects can be calculated for each individual candidate.

[0059] In the examples, similarity scores can be calculated using a variety of methods. For example, similarity scores can be calculated using k-NN clustering, cosine similarity, Pearson similarity, Euclidean distance, and other methods. However, the methods are not limited to these.

[0060] In the embodiment, step S140 may include a step of normalizing the similarity scores. Normalization is the process of converting different similarity scores to the same scale, and various normalization methods can be applied, such as Min-Max normalization, Z-score normalization, and logarithmic transformation.

[0061] At the S150 stage, valid objects can be selected from among the candidate objects based on confidence scores and similarity scores.

[0062] In the embodiment, step S150 may be performed based on a number of detection points calculated from confidence scores and similarity scores. For example, the number of detection points may be calculated by the sum, product, weighted sum, or weighted product of the confidence scores and similarity scores, but is not limited to these.

[0063] In the embodiment, step S150 may be performed by comparing the number of detection points with a predetermined critical value. For example, if the number of detection points generated from a positive reference object is greater than or equal to the critical value, the candidate object can be selected as a valid object. For example, if the number of detection points generated from a positive reference object is less than the predetermined critical value, the candidate object can be excluded from the valid objects. For example, if the number of detection points generated from a negative reference object is greater than or equal to the critical value, the candidate object can be excluded from the valid objects. For example, if the number of detection points generated from a negative reference object is less than the predetermined critical value, the candidate object can be selected as a valid object. However, it is not limited to these examples.

[0064] In the embodiment, step S150 may include a step of calculating the number of detection points; a step of selecting effective detection points by comparing the number of detection points with a predetermined detection critical value; and a step of determining effective objects based on the number of effective detection points.

[0065] For example, if the number of detection points is equal to or greater than the detection critical value, those detection points can be selected as valid detection points. For example, if the number of detection points is less than a predetermined critical value, those detection points can be excluded from the valid detection points. However, this is not the only way to do so.

[0066] In the embodiment, the step of determining the effective object in step S150 may be performed based on a comparison of the number of effective detection points for each candidate object using a positive reference object and the number of effective detection points using a negative reference object.

[0067] For example, if the number of effective detection points from a positive reference object is greater than the number of effective detection points from a negative reference object, the candidate object can be selected as an effective object. In this case, the criteria for comparing the number of effective objects can vary depending on the implementation. For example, if the number of effective detection points from a positive reference object is 100%, 150%, 300%, or more than the number of effective detection points from a negative reference object, the candidate object can be selected as an effective object. Conversely, if the criteria for comparing the number are not met, the candidate object can be excluded from being an effective object.

[0068] In the embodiment, the step of determining the effective object in step S150 can be performed by removing from the candidate objects that have an effective detection score using a negative reference object. The candidate objects that remain after the exclusion can become effective objects. Additionally / alternatively, the step of determining the effective object in step S140 can be performed by selecting as effective objects the candidate objects that have an effective detection score using a positive reference object.

[0069] In the embodiment, method 100 may further include a step of counting effective objects. This step allows for determining the final number of objects detected.

[0070] In the embodiment, method 100 may further include a step of adjusting critical values. Here, critical values ​​may include confidence critical values ​​or detection critical values. A confidence critical value is a reference value for confidence scores, for example, in step S110, only objects having confidence scores equal to or greater than the confidence critical value may be selected as object candidates. A detection critical value is a reference value for detection points, for example, in step S140, only detection points equal to or greater than the detection critical value may be selected as effective detection points. The adjustment of critical values ​​may be performed before, after, or during method 100.

[0071] In the embodiment, method 100 may further include the steps of specifying a reference object from a target image and generating second characteristic information for the specified reference object. The second characteristic information thus generated can be used in method 100.

[0072] In the embodiment, the target image or reference image may be received from an external database server or obtained from another device connected to the device via wired or wireless communication, but is not limited to this.

[0073] The method illustrated in Figure 1 is illustrative, and various configurations can be applied according to the embodiments of this application.

[0074] Figure 3 is a block diagram of an object detection device according to an embodiment of this application.

[0075] Referring to Figure 3, the defect detection device 300 may include a communication unit 310, an input unit 320, a memory 330, and a processor 340.

[0076] The communication unit 310 can receive or transmit data from internal and external sources. The communication unit 310 may include a wired / wireless communication unit. If the communication unit 310 includes a wired communication unit, it may include one or more components that enable communication through a local area network (LAN), wide area network (WAN), value-added network (VAN), mobile radio communication network, satellite communication network, and combinations thereof. If the communication unit 310 includes a wireless communication unit, it can send and receive data or signals wirelessly using cellular communication, wireless LAN (e.g., Wi-Fi), etc. In this embodiment, the communication unit 310 can send and receive data or signals with an external device or external server under the control of the processor 340.

[0077] The input unit 320 can receive various user commands through external operations. For this purpose, the input unit 320 can include or be connected to one or more input devices. For example, the input unit 320 can be connected to various input interfaces such as a keypad or mouse to receive user commands. For this purpose, the input unit 320 may include interfaces such as a Thunderbolt in addition to a USB port. Furthermore, the input unit 320 can include or be connected to various input devices such as a touchscreen or buttons to receive external user commands.

[0078] Memory 330 can store programs and / or program instructions for the operation of the processor 340, and can temporarily or permanently store input / output data. Memory 330 may include at least one type of storage medium from among flash memory, hard disk, multimedia card micro, card type memory (e.g., SD or XD memory), RAM, SRAM, ROM, EEPROM, PROM, magnetic memory, magnetic disk, and optical disk.

[0079] Furthermore, the memory 330 can store a variety of network functions and algorithms, as well as various data, programs (one or more of which are instructions), applications, software, instructions, and code for driving and controlling the device 300.

[0080] The processor 340 can control the overall operation of the device 300. The processor 340 can execute one or more programs or software stored in the memory 330. The processor 340 may mean a central processing unit (CPU), a graphics processing unit (GPU), or a dedicated processor 340 on which the method according to the embodiment of this application is performed.

[0081] In this embodiment, the processor 340 can detect at least one object candidate from a target image, generate object candidate information including the location information and confidence score of the object candidate, generate first characteristic information from the object candidate, calculate a similarity score between the first characteristic information and the second characteristic information of a reference object, and select a valid object from among the object candidates based on the confidence score and the similarity score. Here, the reference object may include a positive reference object or a negative reference object.

[0082] In this embodiment, the processor 340 can detect potential objects by inputting a target image into a first machine learning model and outputting candidate object information. Here, the first machine learning model can be trained to output candidate object information from the input image.

[0083] In this embodiment, the processor 340 inputs the target image to a second machine learning model to output first overall characteristic information, and can extract first characteristic information corresponding to the object candidate from the first overall characteristic information.

[0084] In the embodiment, the processor 340 can generate second characteristic information. Specifically, the processor 340 can input a reference image containing the reference object into a third machine learning model to output second overall characteristic information, and can extract second characteristic information corresponding to the reference object from the second overall characteristic information.

[0085] In the embodiment, the processor 340 can calculate the number of detection points from the confidence score and the similarity score, select the number of effective detection points by comparing the number of detection points with a predetermined detection critical value, and determine the effective objects based on the number of effective detection points.

[0086] In the embodiment, the processor 340 can determine effective objects based on a comparison between the number of effective detection points obtained by a positive reference object and the number of effective detection points obtained by a negative reference object for each candidate object.

[0087] In the embodiment, the processor 340 can exclude from the valid objects any object candidates that have a valid number of detection points from a negative reference object.

[0088] In the embodiment, the processor 340 can select as effective objects candidates that have an effective number of detection points from a positive reference object among the object candidates.

[0089] In the embodiment, the processor 340 may further include the step of adjusting a confidence critical value or detection critical value for selecting an object candidate from the confidence score.

[0090] In this embodiment, the processor 340 can specify a reference object from the target image and generate second characteristic information for the specified reference object.

[0091] In this embodiment, the processor 340 can count the valid objects.

[0092] The apparatus shown in Figure 2 is illustrative, and various configurations can be applied according to the embodiments of this application.

[0093] Figures 4 and 5 are diagrams illustrating the object detection process according to an embodiment of this application.

[0094] Referring to Figure 4, the process of labeling the reference objects 420 and 430 in the target image 410 is illustrated, and referring to Figure 5, the result of detecting objects in the target image 410 is illustrated.

[0095] As illustrated, the target image 410 contains a large number of objects clustered together, making it difficult to accurately and quickly detect them using conventional object detection techniques.

[0096] The present invention was carried out by specifying only a small number of reference objects (i.e., three positive reference objects 420 and three negative reference objects 430) without further training or improvement of the machine learning model for object detection, nor by proceeding with labeling all or a significant portion of the objects. As a result, through the reference objects, it was possible to select object candidates that had a high similarity to the positive reference object 420 and a low similarity to the negative reference object 430 among the object candidates as valid objects, and it can be confirmed that all objects in the target image 410 were accurately detected, as shown in the figure.

[0097] Figures 4 and 5 are illustrative examples, and various configurations can be applied according to the embodiments of this application.

[0098] The methods according to embodiments of this application can be embodied in a program instruction form that can be executed through various computer means and recorded on a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc., individually or in combination. The program instructions recorded on the medium may be specifically designed and configured for this application or may be publicly known and available to those skilled in the art of computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes; optical media such as CD-ROMs and DVDs; magneto-optical media such as floptical disks; and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, and flash memory. Examples of program instructions include not only machine code produced by compilers, but also high-level language code that can be executed by a computer using an interpreter or the like.

[0099] Furthermore, the methods relating to the disclosed embodiments may be provided as part of a computer program product. The computer program product may be traded as a commodity between sellers and buyers.

[0100] A computer program product may include a software program (S / W program) and a storage medium readable by the computer on which the S / W program is stored. For example, a computer program product may include a product in the form of a software program (e.g., the Taulrodbull app) that is distributed electronically through an electronic device manufacturer or an electronic marketplace (e.g., Google Play Store, App Store). For electronic distribution, at least a portion of the S / W program may be stored on or temporarily generated on a storage medium. In this case, the storage medium may be the manufacturer's server, the electronic marketplace's server, or a relay server temporarily storing the S / W program.

[0101] A computer program product may include the storage medium for the server or the client device in a system consisting of a server and client devices. Alternatively, if a third device (e.g., a smartphone) is connected to the server or client device via communication, the computer program product may include the storage medium for the third device. Alternatively, the computer program product may include the software program itself that is transmitted from the server to the client device or the third device, or from the third device to the client device.

[0102] In this case, one of the server, client device, and third device can execute the computer program product to carry out the method according to the disclosed embodiment. Alternatively, two or more of the server, client device, and third device can execute the computer program product to carry out the method according to the disclosed embodiment in a distributed manner.

[0103] For example, a server (such as a cloud server or an artificial intelligence server) can execute a computer program product stored on the server and control a client device connected to the server in communication to perform the method according to the disclosed embodiment.

[0104] Although the embodiments have been described in detail above, the scope of the rights of this application is not limited thereto. Various modifications and improvements made by persons skilled in the art, utilizing the basic concepts of this application as defined in the following claims, also fall within the scope of the rights of this application.

Claims

1. A method for detecting an object, A step of detecting at least one object candidate from the target image and generating object candidate information including the location information and confidence score of the object candidate; A step of generating first characteristic information from the aforementioned candidate object; A step of calculating the similarity score between the first characteristic information and the second characteristic information of the reference object; and, This includes a step of selecting a valid object from among the candidate objects based on the confidence score and the similarity score, The reference object includes a positive reference object or a negative reference object. A method characterized by the following:

2. The step of detecting the aforementioned candidate object is performed by inputting the target image into the first machine learning model and outputting the candidate object information. The first machine learning model is trained to output object candidate information from an input image. The method according to claim 1.

3. The step of generating the first characteristic information is: The process includes: inputting the target image into a second machine learning model to output first overall characteristic information; and extracting the first characteristic information corresponding to the object candidate from the first overall characteristic information. The method according to claim 1.

4. The process further includes the step of generating the second characteristic information, The step of generating the second characteristic information is: The process includes: inputting a reference image containing the aforementioned reference object into a third machine learning model to output second overall characteristic information; and extracting the second characteristic information corresponding to the aforementioned reference object from the second overall characteristic information. The method according to claim 3.

5. The third machine learning model is trained to highlight the differences between the positive reference object and the negative reference object. The method according to claim 3.

6. The step of selecting the effective object is, The steps include: calculating the number of detection points from the confidence score and the similarity score; selecting the number of effective detection points by comparing the number of detection points with a predetermined detection critical value; and determining the effective object based on the number of effective detection points. The method according to claim 1.

7. The step of determining the effective object is performed based on a comparison between the number of effective detection points from a positive reference object and the number of effective detection points from a negative reference object that each candidate object possesses. The method according to claim 6.

8. The step of determining the effective objects is carried out by excluding from the effective objects candidates that have an effective detection score from the negative reference object. The method according to claim 6.

9. The step of determining the effective object is performed by selecting an object candidate from among the object candidates that has an effective detection score from a positive reference object as the effective object. The method according to claim 8.

10. The step further includes adjusting the confidence critical value or the detection critical value for selecting the object candidate from the confidence score. The method according to claim 6.

11. The step of specifying the reference object from the target image; and, The step of generating the second characteristic information for the specified reference object; further comprising: The method according to claim 1.

12. The step further includes counting the effective objects. The method according to claim 1.

13. A recording medium is used to perform the method described in any one of claims 1 to 12. A computer program characterized by the following features.

14. Object detection device, Memory in which the program for object detection is stored; and, A processor that, by executing the program, detects at least one object candidate from a target image, generates object candidate information including the location information and confidence score of the object candidate, generates first characteristic information from the object candidate, calculates a similarity score between the first characteristic information and the second characteristic information of a reference object, and selects a valid object from the object candidates based on the confidence score and the similarity score; wherein the reference object includes a positive reference object or a negative reference object. A device characterized by the following features.