Object detection device, object detection method, and object detection program

The target object detection device achieves high accuracy and reduced processing by employing multiple specialized deep learning models for different image regions and optimizing computational resources, addressing the challenge of limited computational constraints in existing technologies.

JP7607610B2Active Publication Date: 2024-12-27MITSUBISHI HEAVY IND LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2022058515
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-03-31
Publication Date
2024-12-27
Estimated Expiration
2042-03-31

AI Technical Summary

Technical Problem

Existing object detection models using deep learning face challenges in achieving high accuracy while being constrained by limited computational resources, and simplifying these models can lead to reduced detection performance.

Method used

Implementing a target object detection device that utilizes multiple trained programs tailored to different image regions, performing parallel processing and specialized for specific object sizes or characteristics, and employing deep learning models with reduced bit widths and pruning techniques to optimize processing.

Benefits of technology

The solution enables accurate object detection with reduced processing overhead by leveraging specialized models for different image areas and optimizing computational load, maintaining detection accuracy with fewer resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007607610000001
    Figure 0007607610000001
  • Figure 0007607610000002
    Figure 0007607610000002
  • Figure 0007607610000003
    Figure 0007607610000003
Patent Text Reader

Abstract

To enable the detection of an object with high accuracy while suppressing a processing amount.SOLUTION: An object detection device includes a storage unit for storing a plurality of learned programs using a deep layer learning network, for detecting an object from an image, a camera unit for acquiring the image, and an object detection processing unit for executing parallel processing of the acquired image with the plurality of learned programs, and detecting an object from respective detection results. The learned programs have a different size of the object to be extracted from another learned program.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present disclosure relates to an object detection device, an object detection method, and an object detection program. [Background technology]

[0002] As a system for detecting an object from an acquired image, there is a system for detecting an object using a trained program that has been deep-learned with a large number of images. Patent Document 1 describes a learning device that acquires a first calculated captured image including an imaged object and a surrounding environment of the imaged object from a memory, the first calculated captured image has a plurality of first pixels, acquires an imaged image including an imaged object and a surrounding environment of the imaged object from a memory, the captured image has a plurality of second pixels, acquires an identification result of the imaged object and the surrounding environment of the imaged object included in the captured image, generates an identification model for identifying the first calculated captured image based on the identification result of the captured image by referring to the correspondence between the plurality of first pixels and the plurality of second pixels, and outputs the identification model to an image identification device that identifies the second calculated captured image. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] JP 2019-200769 A Summary of the Invention [Problem to be solved by the invention]

[0004] In models used in deep learning, the amount of calculation increases as the number of layers in the analysis model or the number of bits in the calculation increases. However, in actual devices, if the amount of calculation available is limited due to device constraints, the model cannot be applied. In addition, simply reducing the number of layers in the analysis model or the number of bits in the calculation may result in insufficient detection of the target. For these reasons, there is a demand for improving the accuracy of target detection while suppressing the amount of processing.

[0005] In order to solve the above problem, at least one embodiment of the present disclosure has an objective of providing an object detection device, an object detection method, and an object detection program that can detect objects with high accuracy while reducing the amount of processing. [Means for solving the problem]

[0006] The present disclosure also provides an object detection device that includes a memory unit that stores a plurality of trained programs using a deep learning network model to detect objects from images, a camera unit that acquires images, and an object detection processing unit that performs parallel processing of the acquired images with the plurality of trained programs and detects objects from each detection result, wherein the trained programs extract objects of different sizes than other trained programs.

[0007] The present disclosure also provides an object detection method including the steps of storing a plurality of trained programs using a deep learning network model for detecting an object from an image, acquiring an image, and performing parallel processing of the acquired image with the plurality of trained programs and detecting an object from each detection result, wherein the trained programs extract objects of different sizes from other trained programs.

[0008] The present disclosure also provides an object detection program that executes a process including the steps of storing a plurality of trained programs using a deep learning network model to detect an object from an image, acquiring an image, and executing parallel processing of the acquired image with the plurality of trained programs to detect an object from each detection result, wherein the trained programs extract objects of different sizes than other trained programs. Effect of the Invention

[0009] The above configuration has the effect of suppressing the amount of processing and detecting an object with high accuracy. [Brief description of the drawings]

[0010] [Figure 1] FIG. 1 is a block diagram showing an example of an object detection device. [Diagram 2] FIG. 2 is a flow chart illustrating an example of processing of an object. [Diagram 3] FIG. 3 is an explanatory diagram illustrating an example of an image. [Figure 4] FIG. 4 is an explanatory diagram illustrating an example of the detection process. [Diagram 5] FIG. 5 is an explanatory diagram illustrating an example of the detection process. [Figure 6] FIG. 6 is an explanatory diagram illustrating an example of an image in the detection process. [Figure 7] FIG. 7 is an explanatory diagram illustrating an example of a trained program. [Figure 8] FIG. 8 is an explanatory diagram illustrating an example of a learned program. [Figure 9] FIG. 9 is a block diagram showing an example of an object detection device. [Figure 10] FIG. 10 is a flowchart showing an example of a method for creating a trained program. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0011] Hereinafter, the embodiments of the present disclosure will be described in detail with reference to the drawings. Note that the present invention is not limited to these embodiments. In addition, the components in the following embodiments include those that are easily replaceable by those skilled in the art, or those that are substantially the same. Furthermore, the components described below can be appropriately combined, and when there are multiple embodiments, the respective embodiments can be combined.

[0012] <Object detection device> FIG. 1 is a block diagram showing an example of an object detection device. The object detection device 102 detects an object using a trained program capable of executing an object detection process that detects an object from an image using deep learning. The object detection device 102 is installed, for example, on a moving object such as a vehicle or an aircraft, or on a building. The object is not particularly limited, and may be various types of objects such as humans, machines, dogs, cats, vehicles, and plants. The object detection device 102 may output the detection result to a control device that controls the mechanism in which it is installed. As a result, for example, in the case of a moving object, when an object is detected, a process of stopping or a process of avoiding the object can be executed.

[0013] The object detection device 102 includes a camera unit 112, a sensor 113, a notification unit 115, a calculation unit 116, and a storage unit 118. The camera unit 112 acquires an image of the object field of view. The camera unit 112 may acquire images continuously at a predetermined frame rate, or may acquire images triggered by a predetermined operation. The sensor 113 acquires information about the surroundings including the area photographed by the camera unit 112. The sensor 113 may be an infrared sensor or a LIDAR.

[0014] The notification unit 114 notifies the operator. The notification unit 114 is a speaker, a light emitting device, a display, etc. The notification unit 114 executes processing in the calculation unit 116, and when an object included in the image is detected, the notification unit 114 notifies the operator that the object is present. When the object is a person, the person who is the subject of the detection may be notified.

[0015] The calculation unit 116 includes an integrated circuit (processor) such as a CPU (Central Processing Unit) or a GPU (Graphics Processing Unit), and a memory serving as a working area, and executes various programs using these hardware resources to perform various processes. Specifically, the calculation unit 116 reads out a program stored in the storage unit 118, expands it in the memory, and causes the processor to execute instructions included in the program expanded in the memory, thereby performing various processes. The calculation unit 116 executes a program stored in the storage unit 118, thereby performing a process of detecting an object from an image. The calculation unit 116 includes an object detection processing unit 130 and a notification processing unit 132. Each unit will be described after the description of the storage unit 118.

[0016] The storage unit 118 is made of a non-volatile storage device such as a magnetic storage device or a semiconductor storage device, and stores various programs and data. The storage unit 118 stores setting data 134, an object detection program 136, and learned programs 138 and 140. Although two learned programs are shown in FIG. 1, the number of learned programs is the same as the number of processes executed in parallel by the object detection program 136.

[0017] The data stored in the storage unit 18 also includes setting data 42. The setting data 42 includes various conditions for executing the object detection program, information on conditions for executing the learned program, and the like.

[0018] The programs stored in the storage unit 18 include an object detection program 136 and learned programs 138 and 140. The object detection program 136 is a program that executes an object detection process using a plurality of learned programs 138 and 140. The object detection program 136 is also set with an image acquisition process, a process for determining the presence or absence of an object, and a process for outputting the determination result. The object detection program 136 may also be set with a process for processing image data. The object detection program 136 executes the learned programs 138 and 140 in a calculation unit that performs image processing, thereby calculating a feature amount (score) that serves as a learned judgment criterion, and executes a process for detecting an object based on the feature amount.

[0019] The trained programs 138 and 140 are programs created by training a deep learning model that inputs image data and outputs the presence and position of an object. As the deep learning model, a deep learning model such as R-CNN (Regions with Convolutional Neural Networks), YOLO (You Only Look Once), SSD (Single Shot multibox Detector), etc., which detects whether an object is included in an image by setting a bounding box called an anchor for the image and processing the feature amount in the anchor based on the setting, can be used.

[0020] The memory unit 18 may install the object detection program 136 and the learned programs 138, 140 by reading the object detection program 136 and the learned programs 138, 140 recorded on a recording medium, or may install the object detection program 136 and the learned programs 138, 140 by reading the object detection program 136 and the learned programs 138, 140 provided over a network.

[0021] The function of each part of the calculation unit 116 will be described. Each part of the calculation unit 116 can be executed by executing a program stored in the storage unit 118. The object detection processing unit 130 processes the learned programs 138 and 140 using the object detection program 136, and executes a process of determining whether an object is included in an acquired image, that is, an object detection process. The notification processing unit 132 notifies the processing result of the object detection processing unit 130 using the notification unit 114.

[0022] <Object detection method> Next, an object detection method will be described with reference to Fig. 2. Fig. 2 is a flow chart showing an example of the operation of the object detection device. The object detection device 102 executes the processing of Fig. 2 by processing the object detection program 136 with the calculation unit 116. The calculation unit 116 performs calculations using learned programs 138, 140 when processing the object detection program 136. The processing of Fig. 5 will be described as processing executed by the object detection device 102, but image data may be supplied to the program creation device 10 and a similar processing may be executed by the object detection processing unit 36.

[0023] The object detection device 102 reads the trained program (step S30). The object detection device 102 acquires the trained program created by the program creation device 10. The object detection device 102 acquires image data (step S32). Specifically, the object detection device 102 acquires an image by the camera unit 112.

[0024] The object detection device 102 extracts each object based on each trained program (step S34). The object detection device 102 processes the acquired image in parallel using the multiple trained programs, and executes object extraction processing using each trained program.

[0025] The object detection device 102 identifies an object from the extraction results of each of the learned programs (step S36). When the object detection device 102 detects an object extracted by any of the learned programs, it identifies that an object is present at the detected position. Specifically, the object detection device 102 detects an object in an area set by each of the multiple learned programs. By detecting an object in an area set by each of the multiple learned programs, it detects an object over the entire screen. An area where an object is detected by a learned program may partially overlap an area where an object is detected by another learned program. When an object is not detected by any of the programs, the object detection device 102 determines that there is no object. The object detection device 102 notifies the identification result from the notification unit 114 (step S38).

[0026] Fig. 3 is an explanatory diagram for explaining an example of an image. Image 150 shown in Fig. 3 includes two objects 152 and 154. Objects 152 and 154 are placed at different positions on the same plane. Object 152 is displayed below object 154. In image 150, distant objects are shown on the upper side of the image, and nearby objects are displayed on the lower side of the image. Therefore, object 152 is displayed larger than object 154.

[0027] The object detection device 102 of this embodiment divides the image 150 into an upper region 160 and a lower region 162, and the learned programs 138 and 140 are specialized for detecting objects in each region. That is, the learned programs 138 and 140 differ in at least one of the size or position of the object to be detected. For example, the learned program 138 is specialized for detecting the upper region 160 including the object 154. The learned program 140 is specialized for detecting the lower region 162 including the object 152. Note that the method of dividing the image is not limited to this, and the image may be divided into three, divided left and right, or divided at different positions. The object detection device 102 classifies the image according to the position of the object, and has a learned program specialized for each region, and processes the image with the multiple learned programs. Here, the multiple learned programs can use various deep learning models. For example, a learned program that has learned a different deep learning model is created for each region, and objects in each region are detected. In addition, one trained program may be created, and a model of the trained program may be modified to reduce the amount of processing based on the characteristics to be detected, thereby creating a trained program of a different model.

[0028] In Fig. 3, different trained programs are provided according to the position of the object, but this is not limited to this. The object detection device 102 may perform image processing before inputting the image into the trained program as one of the trained programs, and mask the same determined area. Examples of mask processing include processing to exclude part of the image from processing, and extraction processing to cut out areas other than the masked area.

[0029] FIG. 4 is an explanatory diagram for explaining an example of an image. The image 200 shown in FIG. 4 includes an object 202. In the image 200, most of the image is a wall, and the object 202 is placed in a passage 206. In this case, when processing the corresponding trained program, the object detection device 102 cuts out the area 210, creates image data in which areas other than the area 210 are masked, and processes the image with the corresponding trained program to extract the object. This trained program can reduce the amount of processing compared to processing the image 200 as is. In this way, it is also possible to include a trained program specialized in extracting objects in an image in which many areas of the image are areas where the object 202 is not present due to the wall 204, etc., and the object 202 is present in the area 210. The object detection device 102 can extract the object in the area 210 with high accuracy by performing analysis with this trained program on an image in which only the area 210 is extracted.

[0030] The object detection device 102 may use, as one of a plurality of trained programs, a program including a process of setting an image area using the results of a sensor mounted on the object detection device 102.

[0031] FIG. 5 is an explanatory diagram for explaining an example of the detection process. FIG. 6 is an explanatory diagram for explaining an example of an image of the detection process. FIG. 5 is an explanatory diagram for explaining an example of an image. FIG. 6 is an explanatory diagram for explaining an example of a detection result of a sensor. As shown in FIG. 5, the object detection device 102 detects an object from a starting point 300 by the sensor 113. The object detection device 102 outputs a detection wave 302 from the starting point 300 by the sensor 113, and detects the direction and distance of the object 304. In this case, as shown in FIG. 6, the object detection device 102 becomes an image 320 acquired by the camera. The image 320 includes an object 328. The object 328 is placed in an area where the detection wave 322 is irradiated. The object detection device 102 includes, as one of the learned programs, a program for detecting an object using the detection result and the image of the sensor 113 as input. The object detection device 102 can detect that an image of the object 328 is displayed in the area 326 based on the information detected by the sensor 113.

[0032] The object detection device 102 can detect an object by identifying the area 326 using information from the sensor 113, extracting an image of only the area 326, and performing image processing only on the area 326. In this case, the object detection device 102 may perform processing using only a model corresponding to the area 326 among a plurality of trained models, or may input an image in which areas other than the area 326 are masked into a plurality of trained models and perform analysis.

[0033] As described above, the object detection device 102 is provided with a plurality of trained programs 138, 140 that are tailored to the characteristics of the objects in the image, and the image is input and processed in parallel by the trained programs 138, 140, thereby reducing the amount of processing while increasing the accuracy of object detection. Specifically, by having the plurality of trained programs specialize in detecting different characteristics, it is possible to detect an object with the target characteristics with a small amount of processing. As described above, trained programs that use partially masked images and trained programs that use sensor results can also reduce the load on each trained program.

[0034] In this way, a trained program specialized for each characteristic can output highly accurate results with less processing load than a trained program that analyzes the entire image. As a result, by using multiple models (compressed models with less calculation load) depending on the area of ​​the image, it is possible to obtain results equivalent to those of an uncompressed model while reducing the overall processing load compared to an uncompressed model. As a result, even if the object detection device 102 performs parallel processing using multiple trained programs, it is possible to maintain detection accuracy while reducing the overall processing load.

[0035] FIG. 7 is an explanatory diagram showing an example of the processing of a trained program. Specifically, the object detection device 102 can be a model obtained by pruning a deep learning network model, that is, a model obtained by deleting some of the options. The learning model 170 is composed of multiple layers of nodes 172 and weights 174 connecting the nodes 172 to each other. The learning unit 34 executes a learning process using the learning model 170 to calculate the coefficients of the weights 174 that move the nodes 172 in each layer. Based on the calculated values, the learning unit 34 deletes the nodes 172 and weights 174 that satisfy a criterion that can be determined to have little effect on the analysis (low degree of influence). As a result, a model 180 is created in which the nodes 172 and weights 174 are reduced from the learning model 170. The model 180 is a model in which the nodes 186 and weights 188 are deleted. By specializing the object detected by the trained program 1 to selected characteristics, the object detection device 102 can perform highly accurate detection using a pruned model 180, i.e., a model from which options with low influence have been removed.

[0036] Furthermore, the program creation device 10 may set the number of bits of the weight of the deep learning network model to 8 bits or less. FIG. 8 is an explanatory diagram showing an example of processing of a trained program. For example, memory data 190 shown in FIG. 8 is for a case where the weight is 32 bits. In contrast, memory data 192 is for a case where the weight is 8 bits. The amount of data of memory data 192 is about 1 / 4 of that of memory data 190. By providing a model with high object detection accuracy for each area of ​​an image, the object detection device 102 can detect objects with high accuracy even when the resolution of the data to be processed is reduced.

[0037] Next, the creation of a trained program used in the object detection device 102 will be described. FIG. 9 is a block diagram showing an example of a program creation device. The program creation device 10 includes an input unit 12, an output unit 14, a calculation unit 16, and a storage unit 18. The input unit 12 includes an input device such as a keyboard and mouse, a touch panel, or a microphone that collects the operator's speech, and outputs a signal corresponding to an operation performed by the operator on the input device to the calculation unit 16. The output unit 14 includes a display device such as a display, and displays a screen including various information such as a processing result or an image to be processed based on a display signal output from the calculation unit 16. The output unit 14 may also include a recording device that outputs data on a recording medium. The program creation device 10 may also include a communication unit that transmits data using a communication interface as the input unit 12 and the output unit 14. The communication unit communicates with an external device and sends the various data and programs acquired to the storage unit 18 and stores them. The communication unit may be connected to the external device via a wired communication line or a wireless communication line.

[0038] The calculation unit 16 includes an integrated circuit (processor) such as a CPU (Central Processing Unit) or a GPU (Graphics Processing Unit), and a memory serving as a working area, and executes various programs using these hardware resources to perform various processes. Specifically, the calculation unit 16 reads out a program stored in the storage unit 18, expands it in the memory, and causes the processor to execute instructions included in the program expanded in the memory, thereby performing various processes. The calculation unit 16 includes a teacher data creation unit 30, a setting processing unit 32, a learning unit 34, and an object detection processing unit 36. Before describing each unit of the calculation unit 16, the storage unit 18 will be described.

[0039] The storage unit 18 is made of a non-volatile storage device such as a magnetic storage device or a semiconductor storage device, and stores various programs and data. The storage unit 18 includes image data 40, setting data 42, a learning execution program 44, a learning condition setting program 46, an object detection program 48, and a learned program 50.

[0040] The data stored in the storage unit 18 includes image data 40 and setting data 42. The image data 40 includes teacher data used for learning. The teacher data is data in which image data and, if an object is included in the image, an area (bounding box) in which the object is displayed are associated with each other. The image of the teacher data may be divided into data used for learning and data for evaluating the accuracy of the program after learning. The image data may include image data in which an object needs to be detected. The setting data 42 includes information on conditions for classifying teacher data, conditions for processing teacher data, conditions for executing a learned program, and the like.

[0041] FIG. 3 is an explanatory diagram for explaining an example of an image of teacher data. Image 150 shown in FIG. 3 includes two objects 152 and 154. Objects 152 and 154 are placed at different positions on the same plane. Object 152 is placed at a position closer to the shooting position than object 154. Therefore, object 152 is displayed larger than object 154. Also, when image 150 is placed at positions at different distances from the shooting position on the same plane, a distant object is reflected on the upper side of the image, and a nearby object is displayed on the lower side of the image. Therefore, object 152 is displayed lower than object 154.

[0042] The teacher data in this embodiment is image data in which an area where an object is located corresponds to an image. The storage unit 18 may also add information classified according to the characteristics of the object to the image data. The image data can be classified according to the position where the object is located. The program creation device 10 in this embodiment creates a trained program specialized in detecting an object for a group of images in which an object is located in the upper area 160, and a trained program specialized in detecting an object for a group of images in which an object is located in the lower area 162. In this embodiment, the image 150 is divided into upper and lower halves, the upper area 160 and the lower area 162. Note that the method of dividing the image is not limited to this, and the image may be divided into three parts, divided left and right, or divided at different positions.

[0043] The programs stored in the memory unit 18 include a learning execution program 44, a learning condition setting program 46, an object detection program 48, and a learned program 50. The learning execution program 44 performs deep learning processing on the teacher data included in the image data 40 based on the settings of the setting data 42, and creates the learned program 50.

[0044] The learning condition setting program 46 sets various conditions when the learning execution program 44 executes image processing using a deep learning model. Specifically, it executes processing to set image processing conditions during detection processing and deep learning model change conditions. The learning condition setting program 46 sets classification conditions for the teacher model. The learning condition setting program 46 sets conditions for setting the detection characteristics of the object and conditions for pruning the deep learning model. The information set by the learning condition setting program 46 is stored in the setting data 42.

[0045] The object detection program 48 is a program that executes an object detection process using a plurality of trained programs 50. The trained program 50 is a program created by executing the learning execution program 44. Although only one is shown in FIG. 9, a plurality of trained programs with different models are stored. By executing the trained program 50 in a calculation unit that performs image processing, the object detection program 48 can calculate a feature amount (score) that serves as a learned judgment criterion, and executes a process to detect an object based on the feature amount.

[0046] The memory unit 18 may install the learning execution program 44, the learning condition setting program 46, and the object detection program 48 by reading the learning execution program 44, the learning condition setting program 46, and the object detection program 48 recorded on a recording medium, or may install the learning execution program 44, the learning condition setting program 46, and the object detection program 48 by reading the learning execution program 44, the learning condition setting program 46, and the object detection program 48 provided over a network.

[0047] The function of each part of the calculation unit 16 will be described. Each part of the calculation unit 16 can be executed by executing a program stored in the storage unit 18. When an object is present in the image data, the teacher data creation unit 30 associates frame information (bounding box) indicating the area of ​​the object. The frame to be set is rectangular. For example, the teacher data creation unit 30 sets frame information from an operation input to the input unit 12 while the image is displayed on the output unit 14. The operation input to the input unit 12 is an operation in which the operator inputs information on the position surrounding the frame position (object) while looking at the image. The teacher data creation unit 30 may also obtain the result of the image extraction process executed by the object detection processing unit 36. In this case, the operation of the operator to determine whether the position of the extracted frame is correct data for the teacher data may be detected, and data determined by the operator that the position of the frame is correct may be obtained as teacher data.

[0048] The setting processing unit 32 executes the processing of the learning condition setting program 46, and sets the processing conditions of the deep learning model executed by the learning unit 34. The setting processing unit 32 sets the teacher data to be processed. The setting processing unit 32 sets the conditions for processing the image data of the teacher data.

[0049] The learning unit 34 executes the processing of the learning execution program 44 using the conditions set by the setting processing unit 32, performs deep learning using the image data 40 as teacher data, and creates a learned program. The processing of the learning unit 34 will be described later.

[0050] The object detection processing unit 36 ​​uses the object detection program 48 to process the learned program 50 and executes a process of determining whether an object is included in the acquired image, that is, an object detection process.

[0051] In this embodiment, the program creation unit 10 is configured to include the teacher data creation unit 30 and the object detection processing unit 36, but the program creation device 10 does not have to include them. That is, the teacher data may be created by a different device. In this case, the device that realizes the function of the teacher data creation unit 30 becomes the teacher data creation device. Also, the object detection processing unit 36 ​​that executes the process of detecting an object from an image may be included only in the object detection device 102.

[0052] <How to create a trained program> Fig. 10 is a flowchart showing an example of processing of a learned program. The processing shown in Fig. 10 is executed by the teacher data creation unit 30 and the learning unit 34 performing arithmetic processing of the learning execution program. Fig. 10 will be described as a case where pruning processing is performed. The pruning processing may be performed by an operator.

[0053] The teacher data creation unit 30 creates teacher data (step S112). For example, the teacher data is created including image data in which an object is located in the upper region 160 and image data in which an object is located in the lower region 162. The teacher data includes image data having a plurality of units in which the image data and information on the position of the object are associated with each other.

[0054] The learning unit 34 processes the teacher data to create a trained program (step S114). The learning unit 34 performs deep learning of the learning model using the teacher data to create a trained program.

[0055] The learning unit 34 sets the detection characteristics of the object (step S116). For example, the learning unit 34 sets the detection characteristics to a case where the object is in the upper region 160. The learning unit 34 executes pruning on the model of the trained program (step S118). Based on the set detection characteristics of the object and the conditions set by the setting processing unit 32, the learning unit 34 deletes nodes and weights that are determined to be changed from the model of the trained program created in step S114 from among the options of the deep learning model based on the detection characteristics of the object. Based on the detection characteristics of the object, the learning unit 34 extracts nodes and weights that do not affect the detection of the object to be detected, and deletes the extracted nodes and weights to create a model specialized for the detection characteristics.

[0056] The learning unit 34 judges whether there is a detection characteristic to be set (step S120). When the learning unit 34 judges that there is a detection characteristic to be set (Yes in step S120), the process returns to step S116. As a result, a different detection characteristic, for example, a detection characteristic is set for a case where an object is present in the lower region 162, and a model is created by specializing the case where an object is present in the lower region 162 and pruning the model. Note that the detection characteristic is not limited to a case where an object is present in each of the upper region 160 and the lower region 162, and a model corresponding to the above-mentioned various characteristics can be created. When the learning unit 34 judges that there is no detection characteristic to be set (No in step S120), the learning unit 34 determines the learned program for each characteristic (step S122) and ends the process.

[0057] As described above, the learning unit 34 executes the deep learning process to create a trained program. The learning unit 34 then modifies the model based on the set detection characteristics to create a trained program using a model that corresponds to each detection characteristic and has a reduced amount of processing. In this way, by identifying the detection characteristics and reducing the amount of processing of the model according to each characteristic, it is possible to reduce the amount of processing of the model while leaving the part necessary for the object of the detection characteristics, so that it is possible to perform analysis with high accuracy using a model with a low amount of calculation. In addition, although the above embodiment has been described as a case in which pruning of the model is performed, a model in which the resolution of the data to be processed is reduced according to the detection characteristics may be used. For example, if the detection characteristics are to detect a large object in an image or to detect an object exhibiting contrast, detection can be performed with high accuracy even if a model in which the resolution (number of bits) of the image is reduced is used. [Explanation of symbols]

[0058] 10 Programming device 12 Input section 14 Output section 16, 116 Arithmetic section 18, 118 Memory section 30 Teacher Data Creation Department 32 Setting processing section 34 Learning Department 36 Object detection processing unit 40 Image data 42, 134 Setting data 44 Learning Execution Program 46 Learning Condition Setting Program 48, 136 Object detection program 50, 138, 140 Learned Programs 102 Object detection device 112 Camera Department 113 Sensors 114 Notification Department 130 Object detection processing unit 132 Notification processing unit

Claims

1. A storage unit that stores information about an area in which an object is displayed in an image and a plurality of trained programs that use the image; A camera unit for acquiring an image; An object detection processing unit that processes each of the plurality of trained programs in parallel according to an area of ​​the acquired image and detects an object from each detection result, An object detection device in which the trained program extracts objects of different sizes than other trained programs.

2. A memory unit that stores a plurality of trained programs using a deep learning network model for detecting an object from an image; A camera unit for acquiring an image; An object detection processing unit that executes parallel processing of the acquired image using a plurality of trained programs and detects an object from each detection result, The trained program is different from other trained programs in the size of the object to be extracted, The trained program has options with little impact deleted, and the deep learning network model of the trained program is different from that of other trained programs.

3. The object detection device according to claim 1 or 2, wherein the trained program uses a deep learning network model having a bit width of 8 bits or less.

4. One of the plurality of trained programs detects an object when the object is included above a dividing line of an image; The object detection device according to claim 1 , wherein one of the plurality of trained programs detects an object when the object is included below the dividing line of the image.

5. The object detection processing unit performs processing to mask a specified area before processing using one of the plurality of trained programs, and processes the image with the specified area masked using the trained program to detect the object. The object detection device described in any one of claims 1 to 4.

6. The object detection device according to any one of claims 1 to 5, wherein the object detection processing unit processes data in which the image is associated with positional information detected by a sensor at the time the image was captured, using one of the plurality of trained programs.

7. storing a plurality of trained programs using information about an area in which an object is displayed in an image and the image; acquiring an image; and an object detection step of processing the plurality of trained programs in parallel according to the regions of the acquired image and detecting an object from each detection result, An object detection method in which the trained program extracts objects with sizes different from those of other trained programs.

8. storing a plurality of trained programs using information about an area in which an object is displayed in an image and the image; acquiring an image; and an object detection step of processing the plurality of learned programs in parallel according to the regions of the acquired image and detecting an object from each detection result, The trained program extracts objects of different sizes from other trained programs. Object detection program.

Citation Information

Patent Citations

  • Attribute determining device, attribute determining method, computer program, and recording medium

    JP2018067149A

  • Learning device, method for learning, and program

    JP2019200769A

  • Data creation device, program creation device, object detection device, data creation method and object detection method

    JP2021163126A