WO2024071347A1 - 物体検出装置、物体検出方法、及びプログラム - Google Patents

物体検出装置、物体検出方法、及びプログラム Download PDF

Info

Publication number
WO2024071347A1
WO2024071347A1 PCT/JP2023/035544 JP2023035544W WO2024071347A1 WO 2024071347 A1 WO2024071347 A1 WO 2024071347A1 JP 2023035544 W JP2023035544 W JP 2023035544W WO 2024071347 A1 WO2024071347 A1 WO 2024071347A1
Authority
WO
WIPO (PCT)
Prior art keywords
frame
detection
image
information
model
Prior art date
Application number
PCT/JP2023/035544
Other languages
English (en)
French (fr)
Inventor
洋一 小倉
晋也 松山
健志 緑川
直大 岩橋
肇 片山
Original Assignee
ヌヴォトンテクノロジージャパン株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ヌヴォトンテクノロジージャパン株式会社 filed Critical ヌヴォトンテクノロジージャパン株式会社
Publication of WO2024071347A1 publication Critical patent/WO2024071347A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning

Definitions

  • the present invention relates to an object detection device, an object detection method, and a program for improving the inference accuracy of a model that uses images to detect objects and the ability to track target objects.
  • AI artificial intelligence
  • a model of the neurons in the human brain and a wide range of models have been developed that can detect objects from images.
  • a method has also been proposed that improves detection performance by detecting blurred areas in captured images caused by camera shake or the like, by calculating motion vectors from results detected by a neural network or the like, and then selecting and learning images from a group of learning images that correspond to motion vectors close to the captured image, and having them learn the images (see Patent Document 3).
  • the present invention has been made in consideration of the above problems, and provides an object detection device, object detection method, and program that can remedy the decrease in inference accuracy due to fluctuations in the position and size of the detection object that depend on the structure of the model that detects objects in an image itself, thereby improving object detection capability, class identification capability, and tracking capability.
  • An object detection device comprises an image processing means for acquiring an image and creating a reference image for performing object detection from the image, a model preprocessing means for generating a first position-shifted image by shifting the reference image horizontally by M pixels (M is any decimal number) and vertically by N pixels (N is any decimal number) in accordance with the position shift amount of the frame control information, and inputting the reference image and the first position-shifted image to an object detection model for each frame, an object detection model including a model learning dictionary for inferring object position, class identification, and likelihood for the reference image and the first position-shifted image for each frame output from the model preprocessing means, and a preprocessing means for preprocessing the first position-shifted image.
  • the system includes a model post-processing means having an image selection means for comparing position information including the detection frame of the reference image and likelihood information of the reference image for each detected object, which are the inference results of the object detection model, with position information including the detection frame of the first position shift image and likelihood information of the first position shift image, and selecting the maximum input image and the inference result for each frame, and a detection frame correction means for outputting position information including the detection frame that has been shifted in the opposite direction to the generation by the model pre-processing means in accordance with the position shift amount of the frame control information when the model post-processing means selects the inference result of the first position shift image by the image selection means.
  • an object detection method includes an image processing step of acquiring an image and creating a reference image for object detection from the image, a model preprocessing step of generating a first position-shifted image by shifting the reference image by M pixels (M is any decimal number) in the horizontal direction and N pixels (N is any decimal number) in the vertical direction in accordance with the position shift amount of frame control information, and inputting the reference image and the first position-shifted image to the object detection model for each frame, an object detection model including a model learning dictionary that infers object position, class identification, and likelihood for the reference image and the first position-shifted image for each frame output from the model preprocessing step, and a preprocessing step of inputting the first position-shifted image to the object detection model for each frame.
  • the model post-processing step includes an image selection step for comparing position information including the detection frame of the reference image and likelihood information of the reference image for each detected object, which are the inference results of the object detection model, with position information including the detection frame of the first position shift image and likelihood information of the first position shift image, and selecting the maximum input image and the inference result for each frame, and outputting the inference result. If the model post-processing step selects the inference result of the first position shift image by the image selection step, the model post-processing step includes a detection frame correction step for outputting position information including a detection frame that has been shifted in position in the opposite direction to when it was generated in the model pre-processing step in accordance with the position shift amount of the frame control information.
  • a program according to one aspect of the present invention is a program for causing a computer to execute the object detection method described above.
  • the present invention provides an object detection device, an object detection method, and a program that can improve object detection capabilities, class identification capabilities, and tracking capabilities by resolving the decline in inference accuracy caused by fluctuations in the position and size of the object to be detected, which is dependent on the structure of the model itself that detects objects in an image.
  • FIG. 1 is a diagram showing a configuration of an object detection device according to a first embodiment of the present invention.
  • FIG. 1 is a diagram illustrating a configuration of an artificial neuron model.
  • FIG. 1 illustrates the configuration of the YOLO model according to an embodiment.
  • FIG. 1 illustrates the working principle of the YOLO model according to an embodiment.
  • FIG. 1 is a diagram illustrating a concept of calculating an IOU value in object detection.
  • FIG. 1 is a diagram illustrating a concept of calculating an IOU value in object detection.
  • FIG. 13 shows a flow chart of the individual identification means of the model post-processing means according to an embodiment of the present invention.
  • FIG. 1 shows a flow chart of the individual identification means of the model post-processing means according to an embodiment of the present invention.
  • FIG. 13 is a diagram illustrating the operation of an individual identification means of a model post-processing means according to an embodiment of the present invention.
  • FIG. 13 shows a flow chart of the individual identification means of the model post-processing means according to an embodiment of the present invention.
  • FIG. 13 is a diagram illustrating the operation of an individual identification means of a model post-processing means according to an embodiment of the present invention.
  • FIG. 1 is a first diagram illustrating a problem with a conventional object detection device.
  • FIG. 2 is a second diagram illustrating a problem with the conventional object detection device.
  • FIG. 13 illustrates the operation of the position shifting function of the model pre-processing means for a still image according to an embodiment of the present invention.
  • FIG. 13 illustrates the operation of a resize function of a model preprocessor according to an embodiment of the present invention.
  • FIG. 11 is a diagram illustrating the operation of a probability statistics calculation means of the robustness verification means for a still image according to the embodiment of the present invention.
  • FIG. 11 is a diagram illustrating the operation of a probability statistics calculation means of the robustness verification means for a still image according to the embodiment of the present invention.
  • FIG. 11 is a diagram illustrating the operation of a probability statistics calculation means of the robustness verification means for a still image according to the embodiment of the present invention.
  • FIG. 2 is a diagram showing the likelihood distribution of a likelihood rescue method using a model pre-processing means and a model post-processing means according to the first embodiment of the present invention.
  • FIG. 2 is a diagram illustrating the operation of a likelihood rescue method using a model pre-processing means and a model post-processing means according to embodiment 1 of the present invention.
  • FIG. 2 is a diagram showing the time series operation of a likelihood rescue method using a model pre-processing means and a model post-processing means according to embodiment 1 of the present invention.
  • FIG. 2 is a diagram showing the likelihood distribution of a likelihood rescue method using a model pre-processing means and a model post-processing means according to embodiment 1 of the present invention.
  • FIG. 2 is a diagram illustrating the operation of a likelihood rescue method using a model pre-processing means and a model post-processing means according to embodiment 1 of the present invention.
  • FIG. 2 is a diagram showing the time series operation of a likelihood recovery method using a model pre-processing means and a model post-processing means according to embodiment 1 of the present invention.
  • FIG. 2 is a diagram showing the likelihood distribution of a likelihood rescue method using a model pre-processing means and a model post-processing means according to embodiment 1 of the present invention.
  • FIG. 2 is a diagram illustrating the operation of a likelihood rescue method using a model pre-processing means and a model post-processing means according to embodiment 1 of the present invention.
  • FIG. 2 is a diagram showing the time series operation of a likelihood rescue method using a model pre-processing means and a model post-processing means according to embodiment 1 of the present invention.
  • FIG. 13 is a diagram illustrating the operation of a tone conversion function of a model pre-processing means according to an embodiment of the present invention.
  • FIG. 13 illustrates the operation of an aspect ratio alteration function of a model pre-processing means according to an embodiment of the present invention.
  • FIG. 13 illustrates the operation of a rotation function of a model pre-processor according to an embodiment of the present invention.
  • FIG. 2 is a diagram showing configurations of a frame information holding unit and a frame information interpolation unit according to the embodiment of the present invention.
  • FIG. 2 illustrates the operation principle of Newton backward interpolation of the frame information interpolator according to an embodiment of the present invention
  • 4 is a diagram showing operations of a distance factor calculation means, a motion vector amount calculation means, and a motion vector prediction calculation means according to the embodiment of the present invention.
  • FIG. 4 is a diagram illustrating operations of an abnormality detection information removal means, a detection information restoration means, an abnormality detection information prediction removal means, and a detection information prediction restoration means according to the embodiment of the present invention.
  • FIG. FIG. 4 illustrates the operation of a state machine control means according to an embodiment of the present invention.
  • FIG. 11 is a diagram showing a configuration of an object detection device according to a second embodiment of the present invention.
  • FIG. 11 is a diagram illustrating the operation of a likelihood rescue method using a model pre-processing means and a model post-processing means according to embodiment 2 of the present invention.
  • FIG. 11 is a diagram showing the time series operation of a likelihood recovery method using a model pre-processing means and a model post-processing means according to embodiment 2 of the present invention.
  • FIG. 1 is a diagram showing a configuration of a conventional object detection device.
  • FIG. 1 is a diagram showing a summary of an object detection device of the present invention.
  • AI artificial intelligence
  • images eye information
  • class discrimination to discriminate which class the object belongs to, such as a person or a vehicle.
  • CNNs Convolutional Neural Networks
  • ground truth BBox which is class discrimination and answer frame information
  • binary cross entropy is used as the error function
  • groundtruth BBox is used as the error function.
  • L1 norm absolute value error
  • model learning dictionary As models for object position detection and class identification, FasterR-CNN, EfficientDet, SSD, and YOLO (You Only Look Once) (see, for example, Non-Patent Document 1) are increasingly being used.
  • one index showing the reliability of the detection of a target object is the reliability score shown in the following (Equation 1) (see, for example, Non-Patent Document 1).
  • the reliability score is also generally referred to as the likelihood.
  • Object) indicates the class probability of which class the Object (target object) belongs to, and the sum of all class probabilities is "1".
  • Pr(Object) indicates the probability that the Object is included in the Bounding Box (hereafter referred to as BBox).
  • IOUtruth pred is an index showing the degree of overlap between the two frame areas of the ground truth BBox, which is the correct frame information, and the BBox predicted (inferred) by a model such as YOLO, and is calculated using the IOU (Intersection Over Union) value shown in the following (Equation 2).
  • Area of Union is the area of the union of the two frame areas being compared.
  • Area of Intersection is the area of the intersection of the two frame areas being compared.
  • the likelihood (confidence score).
  • This likelihood can be used to index the detection accuracy and detection performance for the detection target in an image captured by a camera, for example.
  • teacher data for the captured image with the groundtruth BBox, which is the correct answer frame it becomes possible to calculate the original confidence score (likelihood) and IOU value, so it is possible to index the detection accuracy and detection performance of the object detection model, including the model learning dictionary, for the detection target in the image.
  • mAP meanAverage Precision
  • AP Average Precision
  • the mAP and AP for object detection are calculated as follows:
  • Validation data is prepared with a groundtruth BBox, which is a correct answer frame, added to the detected objects that are the subject of multiple image data, and the IOU value is calculated by comparing it with the PredictedBBox (predicted BBox) calculated as a result of inference (prediction) using the object detection model.
  • PredictedBBox Predicted BBox
  • precision which indicates the percentage of all validation data prediction results that were correctly predicted with an IOU equal to or above an arbitrary threshold
  • Recall which indicates the percentage of actual correct answers that were predicted to have an IOU equal to or above an arbitrary threshold and a BBox close to the correct answer
  • the AP is calculated as the sum of the areas of the two-dimensional graphs of Precision and Recall for the validation data from the minimum probability of the aforementioned Object being included in the BBox for each classification class, "0", to the maximum probability of "1", and the AP calculated for all classification classes is further averaged to calculate mAP.
  • the average detection accuracy and detection performance of an object detection model including a model learning dictionary for detection targets in an image, it is often used as a performance index for various robustness characteristics, although this depends on the method of selecting validation data.
  • FIG. 26 is a block diagram showing a conventional object detection device that detects the position and class of objects in an image, analyzes the robustness and reinforcement policy of the object detection model, and performs reinforcement learning of a model learning dictionary.
  • the image processing means 100 that acquires and appropriately processes images has a lens 101 (e.g., standard zoom, wide-angle zoom, fisheye), an image sensor 102 that is a device that receives light emitted from an object through the lens 101 and converts the brightness of the light into electrical information, and an image processing processor 103 equipped with a black level adjustment function, HDR (high dynamic range), gain, exposure adjustment function, defective pixel correction function, shading correction function, white balance function, color correction function, gamma correction function, and local tone mapping function, and performs image processing that makes the object to be detected easier to see or find while absorbing time-series changing conditions such as illuminance in the shooting environment.
  • a lens 101 e.g., standard zoom, wide-angle zoom, fisheye
  • an image sensor 102 that is a device that receives light emitted from an object through the lens 101 and converts the brightness of the light into electrical information
  • an image processing processor 103 equipped with a black level adjustment function, HDR (high dynamic range), gain, exposure adjustment
  • the image generated by the image processing means 100 is input to the image output control means 110 and sent to the display and data storage means 120, such as a monitor, an external memory such as a PC (personal computer), a cloud server, etc.
  • the display and data storage means 120 such as a monitor, an external memory such as a PC (personal computer), a cloud server, etc.
  • the image data generated by the image processing means 100 is input to the model preprocessing means 200, which processes the image so that it becomes suitable for input to the object detection model 300.
  • An image suitable for object detection is a reference image for performing object detection from the image, and processing here means creating a reference image.
  • the model preprocessing means 200 may be composed of electronic circuits, or may be realized by an image processing processor 290 composed of an affine transformation function 291 and a projective transformation function 292 (library) and a CPU or arithmetic processor.
  • the model input image 210 processed by the model preprocessing means 200 is input to the object detection model 300, which uses inference (prediction) to detect where the target object is located and to identify which class the object belongs to, such as a person or a vehicle (class identification).
  • the object detection model 300 outputs, for each detected object present in an image, position information 301 including zero or multiple pre-correction detection frames including undetectable and pseudo-detected objects, and pre-correction likelihood information 302.
  • the position information 301 including the pre-correction detection frame is, for example, information including the center coordinates, horizontal width, and vertical height of the detection frame
  • the pre-correction likelihood information 302 is, for example, likelihood and class identification information indicating the detection accuracy.
  • the object detection model 300 is composed of, for example, a model learning dictionary 320 and a deep neural network (DNN) model 310 using a convolutional neural network (CNN).
  • the DNN model 310 may use, for example, YOLO (see, for example, Non-Patent Document 1), SSD, or other models that have a high advantage in detection processing speed.
  • YOLO see, for example, Non-Patent Document 1
  • SSD or other models that have a high advantage in detection processing speed.
  • FasterR-CNN or EfficientDet may be used.
  • object position detection is not performed and class identification is the main focus, for example, MobileNet may be used.
  • the model learning dictionary 320 is a collection of data on the weight coefficients of the DNN model 310, and in the case of the DNN model 310, it is initially learned or re-learned by the deep learning means 640 of the dictionary learning means 600.
  • the position information 301 including zero or more pre-correction detection frames, including undetectable and pseudo-detected ones, and the pre-correction likelihood information 302 are input to the model post-processing means 400, and then corrected to the position information 401 including the most likely detection frame and the maximum likelihood information 402 considered to be most appropriate for each detected object by sorting the position information 301 including the pre-correction detection frame based on the mutual IOU value and maximizing the pre-correction likelihood information 302, and are transmitted to the display and data storage means 120, such as a monitor, an external memory such as a PC (personal computer), a cloud server, etc.
  • the position information 401 including the most likely detection frame is, for example, information including the center coordinates, horizontal width, and vertical height of the detection frame
  • the maximum likelihood information 402 is, for example, the likelihood and class identification information indicating the detection accuracy.
  • These image processing means 100, model pre-processing means 200, object detection model 300, and model post-processing means 400 are a series of means for generating position information 401 including the maximum likelihood detection frame and maximum likelihood information 402, which constitutes an object detection device that detects the position and class of objects in an image.
  • learning material data deemed appropriate for the intended use is extracted from the learning material database storage means 610, which stores material data for deep learning, such as large-scale open source data sets.
  • the learning material data may utilize images required depending on the intended use, for example, image data displayed from the image processing means 100 using the image output control means 110 and stored in the data storage means 120.
  • the annotation means 620 adds class identification information and a groundtruth BBox, which is the correct answer box, to the learning material data extracted from the learning material database storage means 610 to create supervised data.
  • the supervised data generated by the annotation means 620 is augmented by the augmentation means 630 as training images 631 to enhance versatility and robustness.
  • the learning image 631 is input to the deep learning means 640 to calculate the weighting coefficients of the DNN model 310, and the calculated weighting coefficients are converted, for example, into the ONNX format to create the model learning dictionary 320.
  • the model learning dictionary 320 By reflecting the model learning dictionary 320 in the object detection model 300, it becomes possible to detect the position and class of objects in the image.
  • validation material data is extracted to verify the required detection accuracy, detection performance, versatility, and robustness for the intended use.
  • the validation material data may utilize, for example, a large-scale open source data set or image data displayed from the image processing means 100 using the image output control means 110 and stored in the data storage means 120.
  • the annotation means 620 adds class identification information and a groundtruth BBox, which is the correct answer box, to the validation material data extracted from the learning material database storage means 610 to create validation data 623.
  • the validation data 623 is input to a first mAP calculation means 660 capable of inference (prediction) equivalent to the object detection model 300, and an IOU value 653 is calculated by comparing the correct answer box, groundtruth BBox, with PredictedBBox (predicted BBox) calculated as a result of inference (prediction), and P is calculated as the percentage of all prediction results for all validation data 623 for which the IOU value 653 was correctly predicted at or above an arbitrary threshold.
  • PredictedBBox Predicted BBox
  • the first mAP calculation means 660 calculates a resolution 654, a Recall 655 indicating the proportion of the actual correct results in which the IOU value 653 was equal to or greater than an arbitrary threshold and a BBox was predicted to be close to the correct result, and an AP (Average Precision) value 651 for each class as an index for comparing the accuracy and performance of the object detection described above, and an mAP (mean Average Precision) value 652 averaged over all classes (see, for example, Non-Patent Document 2).
  • the first mAP calculation means 660 is equipped with an open source inference environment called darknet and a calculation processor (including a personal computer or a supercomputer), and it is desirable that it has inference (prediction) performance equivalent to that of the object detection model 300.
  • a calculation processor including a personal computer or a supercomputer
  • it is equipped with means for calculating the aforementioned IOU value 653, Precision 654, Recall 655, AP value 651, and mAP value 652.
  • annotation means 620 By using the learning material database storage means 610, annotation means 620, and first mAP calculation means 660, a series of means for generating an IOU value 653, Precision 654, Recall 655, AP value 651, and mAP value 652, it becomes possible to analyze the robustness and reinforcement policy of the model learning dictionary of a model that detects the position and class of objects in an image.
  • the model post-processing means 400 sets editing parameters 860, and the model pre-processing means 200 performs cropping to cut out an arbitrary range, resizing, position shifting, and other processing on the image for learning in accordance with the editing parameters 860.
  • a method has been proposed in which an object detection model 300 and a model post-processing means 400 perform inference and improve accuracy for a model input image 210 that has been subjected to such processing, and a robustness verification means 800 selects from among the editing parameters 860 parameters that may become noise, such as parameters that reduce the likelihood or class identification rate based on the inference results of the object detection model 300, and instructs the Augment means 630 to generate Augment parameters 861 that are removed from the editing parameters 860 to generate training data 631, and a deep learning means 640 re-learns the model training dictionary 320, thereby improving the quality of the augmented data for training and improving the robustness of the model training dictionary (see, for example, Patent Document 1).
  • examples of items of versatility and robustness and various variable conditions in a model including a learning dictionary that detects objects in images acquired by a camera etc. include the background (scenery), camera lens specifications, the height and elevation/depression angle at which the camera is attached, the detection target area and field of view including image size, the dewarping method when a fisheye lens is used, special conditions such as changes in illuminance depending on sunlight or lighting, crushed blacks, blown-out highlights and backlighting, weather conditions such as sunny, cloudy, rainy, snowy and foggy, the position in the image of the target detection object (left/right, top/bottom and depth), size, brightness level, shape characteristics including color information, aspect ratio and rotation angle, the number of target detection objects, state of mutual overlap, type, size and position of attached objects, presence or absence of IR cut on the lens, the movement speed of the target detection object, and the movement speed of the camera itself.
  • the background scenery
  • camera lens specifications the height and elevation/depression angle at which the camera is attached
  • the conventional object detection device, object detection method, and program shown in FIG. 26 can improve the robustness of the model learning dictionary of the object detection model against various fluctuating conditions of images acquired by a camera or the like, it is difficult to improve the problem of reduced inference accuracy and class identification performance due to potential fluctuations in the size and position of a detected object caused by the structure of the neural network itself, including the DNN model, in the object detection model. As a result, there are cases where stable object detection cannot be performed depending on the positional relationship between the object detection device and the object to be detected.
  • object detection method when object detection is performed using an object detection device, object detection method (hereinafter sometimes simply referred to as the method), and program that generate position information 401 including a maximum likelihood detection frame and maximum likelihood information 402 using the image processing means 100, model pre-processing means 200, object detection model 300, and model post-processing means 400 shown in Fig. 26, if the position and size of the detection target in the image fluctuate over time, even if the same object is detected, variations in a specific pattern may occur in the position information and likelihood information including the inferred (predicted) detection frame due to issues caused by the configuration conditions and algorithm of the DNN model.
  • This phenomenon is thought to be particularly noticeable when the image size input to the DNN model is reduced due to performance limitations of the installed DSP (digital signal processor) or other arithmetic processor when cameras for object detection are made smaller, more energy-efficient, and less expensive.
  • DSP digital signal processor
  • a one-stage type DNN model such as YOLO, which is considered to have a high processing speed advantage because it simultaneously detects the position of an object and classifies the object, as will be described in detail later
  • the likelihood distribution for the position of the detected object is confirmed by inference for multiple images created by shifting the position of the object in the image horizontally and vertically by several pixels (picture elements), there may be a location where the likelihood decreases in a specific lattice pattern depending on the position of the detected object.
  • this is considered to be a potential problem that occurs because the area is divided into grid cells of any size to simultaneously detect the position of the object and classify the object, and the class probability is calculated.
  • a two-stage type DNN model such as EfficientDet, which processes the detection of the position of the object and the class classification in two stages
  • problems such as those of the one-stage type DNN model described above are often less likely to occur, but the detection speed decreases, making it difficult to apply depending on the purpose of use.
  • the inference accuracy and class identification performance can decrease along a specific grid pattern when there is a fluctuation in the detected object size or position, making object detection unstable or, under the worst conditions, making detection impossible.
  • the present invention has been made in consideration of the above problems, and aims to provide an object detection device, an object detection method, and a program that can improve object detection capabilities, class identification capabilities, and tracking capabilities by resolving the decline in inference accuracy caused by fluctuations in the position and size of the object to be detected, which depends on the structure of the model itself that detects objects in an image.
  • the objective is to provide an object detection device, object detection method, and program that can effectively re-learn the model learning dictionary by creating performance indicators to accurately analyze weaknesses and strengthening policies in the performance of the object detection model and the versatility and robustness of the model learning dictionary based on the results of improving object detection ability, class identification ability, and tracking ability by remedying the decline in inference accuracy.
  • an object detection device, object detection method, and program that ensures the accuracy and performance of object detection while maintaining low latency and real-time performance, even when performance limitations are placed on the onboard arithmetic processors such as DSPs (digital signal processors).
  • DSPs digital signal processors
  • the object detection device of the present invention includes an image processing means for acquiring an image and creating a reference image for object detection from the image, a model preprocessing means for generating a first position-shifted image by shifting the reference image by M pixels (M is any decimal number) in the horizontal direction and N pixels (N is any decimal number) in the vertical direction in accordance with a position shift amount of frame control information, and inputting the reference image and the first position-shifted image to an object detection model for each frame, an object detection model including a model learning dictionary for inferring an object position, class identification, and likelihood for the reference image and the first position-shifted image for each frame output from the model preprocessing means, and the position information including the detection frame of the reference image and the likelihood information of the reference image for each detected object, which are the inference results of the model, are compared with the position information including the detection frame of the first position shifted image and the likelihood information of the first position shifted image, and the input image and the inference result which are maximum are selected and output for
  • the model pre-processing means generates a second position-shifted image by shifting the reference image horizontally by P pixels (P is any decimal number) and vertically by Q pixels (Q is any decimal number) in accordance with the position shift amount of the frame control information, in addition to the reference image and the first position-shifted image, inputs the reference image, the first position-shifted image, and the second position-shifted image to the object detection model for each frame, and outputs an inference result for three different types of images by the object detection model
  • the model post-processing means selects one input image and the inference result that is the maximum from the inference results for the three different types of images by the image selection means, and outputs the inference result for each frame, and when the image selection means selects the inference result of the first position-shifted image or the inference result of the second position-shifted image
  • the detection frame correction means outputs position information including a detection frame that has been shifted in the opposite direction to the detection frame generated by the model pre-processing means in accordance with the position shift amount
  • the object detection model is a neural network that includes a model learning dictionary created by deep learning or machine learning and a DNN (Deep Neural Network).
  • DNN Deep Neural Network
  • the position shift amount of the frame control information is determined by a pixel value that is 1/2 a pixel value obtained by dividing the number of pixels in the vertical and horizontal directions of the input image of the neural network model of the object detection model by the grid cell size in the horizontal and vertical directions for one or more detection layers of the neural network model, or a pixel value that is close to the pixel value.
  • the type of the position shift amount of the frame control information is determined by a 1/2 pixel value or a pixel value approximating the value obtained by dividing the horizontal and vertical grid cell size for one or more detection layers of the neural network model, and is applied by the model pre-processing means and the model post-processing means in the order of the position shift amounts corresponding to the detection layers in which the detection accuracy or detection frequency increases depending on the size of the detection target.
  • the average value of the multiple position shift amounts is used as the position shift amount.
  • the model pre-processing means when there are three or more types of the position shift amount in the frame control information and there are three or more types of the position shift image in the model pre-processing means, the model pre-processing means generates three or more position shift images from the reference image in accordance with the position shift amount in the frame control information, inputs them together with the reference image to the object detection model for each frame, and outputs inference results for four or more different types of images by the object detection model.
  • the model post-processing means selects one input image and the inference result that is the largest from the inference results for the four or more different types of images by the image selection means, and outputs the inference result for each frame.
  • the detection frame correction means When an inference result other than the reference image is selected, the detection frame correction means outputs position information including a detection frame that has been position-shifted in the opposite direction to when it was generated by the model pre-processing means in accordance with the position shift amount in the frame control information.
  • the model pre-processing means inputs the reference image of the nth frame (n is any multiple of 2 including 0) as is to the object detection model in accordance with the position shift amount of the frame control information, and generates a first position-shifted image by shifting the reference image of the nth frame by M pixels (M is any decimal number) in the horizontal direction and N pixels (N is any decimal number) in the vertical direction, and inputs the first position-shifted image to the object detection model, and the object detection model infers an object position, class identification, and likelihood for the reference image of the nth frame and the first position-shifted image of the nth frame output from the model pre-processing means alternately for each frame, and the image selection means selects position information including the detection frame of the reference image of the nth frame and likelihood information of the reference image for each detected object, which are the inference results of the object detection model, and position information including the detection frame of the first position-shifted image of the nth frame and the model post-processing means compares
  • the model preprocessing means generates the first position-shifted image from the reference image in the mth frame (m is any multiple of 3 including 0) and the reference image in the m+1th frame in accordance with the position shift amount of the frame control information, and generates the second position-shifted image by performing a position shift of P pixels (P is any decimal number) in the horizontal direction and Q pixels (Q is any decimal number) in the vertical direction on the reference image in the m+2th frame, and generates the reference image in the mth frame, the first position-shifted image in the m+1th frame, and the second position-shifted image in the m+2th frame.
  • the object detection model infers an object position, a class identification and a likelihood for each frame in turn for the reference image in the mth frame, the first position-shifted image in the m+1th frame and the second position-shifted image in the m+2th frame output from the model pre-processing means; and the image selection means selects position information including a detection frame of the reference image in the mth frame and likelihood information of the reference image for each detected object, which are inference results of the object detection model, and position information including a detection frame of the first position-shifted image in the m+1th frame and likelihood information of the reference image.
  • Likelihood information of the first position shift image is compared with position information including a detection frame of the second position shift image in the (m+2)th frame and likelihood information of the second position shift image, and the maximum input image and the inference result are selected and output as the result of the (m+2)th frame, inference results of the (m+1)th frame, the (m+2)th frame, and the (m+3)th frame are compared with the inference results of the (m+1)th frame, the (m+2)th frame, and the (m+3)th frame, and the maximum input image and the inference result are selected and output as the result of the (m+3)th frame, and inference results of the (m+2)th frame, the (m+3)th frame, and the (m+4)th frame are compared with the inference results of the (m+4)th frame, and the maximum input image and the inference result are selected and output as the result of the (m+4)th frame.
  • the model post-processing means outputs the result of the mth frame, delays two frames, and maximizes the inference result from information on the current frame and past frames up to two frames before; and when the model post-processing means selects the inference result of the first position-shifted image of the m+1th frame by the image selection means or selects the inference result of the second position-shifted image of the m+2th frame by the image selection means, the model post-processing means outputs position information including a detection frame that has been position-shifted in the opposite direction to when it was generated by the model pre-processing means in accordance with the position shift amount of the frame control information.
  • the model pre-processing means inputs the reference image in the rth frame (r is any multiple of s (s is any integer equal to or greater than 4) including 0) and the s-1 position shifted images processed from the reference image of each frame in the r+1th frame to the r+s-1th frame in order to the object detection model in accordance with the position shift amount in the frame control information, and the model post-processing means selects the maximum input image and inference result from the inference results of the current frame and the past frame s-1 frames ago by the image selection means and outputs them as the inference result of the current frame, and when an inference result other than the inference result of the reference image in the rth frame is selected, the detection frame correction means outputs position information including a detection frame that has been position-shifted in the opposite direction to the generation by the model pre-processing means in
  • the model preprocessing means has a crop function for cutting out a detection range, which is a part of the image, in accordance with the screen division parameters of the frame control information for the reference image, and a screen splitting function for resizing the image cut out by the crop function in the vertical and horizontal directions and pasting it into an area obtained by dividing the input screen of the object detection model into two areas, one of the screens divided by the screen splitting function being a first post-division reference image and the other being a second post-division reference image, and the first post-division reference image is placed in front of the frame control information.
  • a model pre-processing means for generating a first post-division position-shifted image by shifting the position of the first post-division reference image by G pixels (G is an arbitrary decimal number) in the horizontal direction and H pixels (H is an arbitrary decimal number) in the vertical direction in accordance with the position shift amount, and inputting the second post-division reference image and the first post-division position-shifted image to the object detection model for each frame; and a model learning dictionary for inferring an object position, a class identification, and a likelihood for the second post-division reference image and the first post-division position-shifted image for each frame output from the model pre-processing means.
  • the model post-processing means has an image selection means for comparing position information including the detection frame of the second divided reference image and likelihood information of the second divided reference image for each detected object, which are the inference results of the object detection model, with position information including the detection frame of the first divided position-shifted image and likelihood information of the first divided position-shifted image, and selecting the maximum input image and the inference result for each frame, and outputting the inference result.
  • the model post-processing means When the model post-processing means selects the inference result of the second divided reference image by the image selection means, the model post-processing means outputs position information including the detection frame whose position and size have been inversely corrected so as to correspond to the original reference image in accordance with the screen division parameters of the frame control information, and when the model post-processing means selects the inference result of the first divided position-shifted image by the image selection means, the model post-processing means outputs position information including the detection frame whose position and size have been inversely corrected so as to correspond to the original reference image in accordance with the position shift amount and the screen division parameters of the frame control information, and when the model post-processing means selects the inference result of the first divided position-shifted image by the image selection means, the model post-processing means outputs position information including the detection frame whose position and size have been inversely corrected so as to correspond to the original reference image after performing a position shift in the opposite direction to when the model pre-processing means generated the detection frame in accord
  • the position shift amount of the frame control information is determined by a pixel value that is 1/2 a pixel value obtained by dividing the number of pixels in the vertical and horizontal directions of the first post-division reference image, one of the images split by the crop function and the screen split function, by the grid cell size in the horizontal and vertical directions for one or more detection layers of the neural network model, in accordance with the screen splitting parameters of the frame control information, or a pixel value that is close to the pixel value.
  • the position shift amount of the frame control information is determined by a pixel value approximating or equal to a half pixel value obtained by dividing the number of pixels in the vertical and horizontal directions of the first divided reference image, one of the images divided by the crop function and the screen division function, by the grid cell size in the horizontal and vertical directions for one or more detection layers of the neural network model in accordance with the screen division parameters of the frame control information, and is applied by the model pre-processing means and the model post-processing means in the order of the position shift amounts corresponding to the detection layers in which the detection accuracy or detection frequency increases depending on the size of the object to be detected.
  • the average value of the multiple position shift amounts is used as the position shift amount.
  • the model preprocessing means sets the screen division parameters of the frame control information so that the first segmented reference image and the second segmented reference image are divisible both horizontally and vertically when divided by the horizontal and vertical grid cell sizes for one or more detection layers of the neural network model.
  • the model preprocessing means when the model preprocessing means divides an image in accordance with the screen division parameters of the frame control information, the model preprocessing means adds correct frame data to the training image generated in accordance with the screen division parameters by an annotation means, and re-learns the model training dictionary by an internal or external dictionary learning means.
  • the model pre-processing means generates an image by uniformly filling in blank areas where no valid image exists, generated by the processing, including position shifting, with a single color equal to the average luminance level of the valid image, in accordance with the frame control information to process the image to be input to the object detection model.
  • the model pre-processing means has the crop function for cutting out an image at a desired location from an image before the position shift is performed in accordance with the position shift amount in the frame control information, a resize function for changing the image size, a tone conversion function for changing the brightness level to a desired value using a contrast correction curve or a tone conversion curve, an aspect ratio change function for changing the aspect ratio, and a rotation function for changing the rotation angle, and is characterized in that the model pre-processing means processes an image in accordance with the processing parameters of the frame control information.
  • the model post-processing means performs a process for each of position information including zero or more detection frames of the reference image including detection frames of the reference image and likelihood information of the reference image, including non-detection and pseudo-detection for one or more detection objects, which are inference results of the object detection model for each frame, position information including the detection frame of the first position-shifted image and likelihood information of the first position-shifted image, and, if there are two or more types of position shift amounts in the frame control information, position information including the detection frame of the second position-shifted image and likelihood information of the second position-shifted image, and position information including the detection frame of a third or more position-shifted images and likelihood information of a third or more position-shifted images.
  • the object detection model has an individual identification means that corrects the position information including the detection frame after individual identification and the likelihood information after individual identification for each detected object for each input image input to the object detection model using an arbitrary threshold T (T is an arbitrary decimal number) for the likelihood information and an arbitrary threshold U (U is an arbitrary decimal number) for the IOU (Intersection over Union) value, which is an index indicating the degree to which the areas of position information including each detection frame overlap with each other, and uses the output results selected by the individual identification means to output the position information including the most likely detection frame and the most likely likelihood information for each detected object for each frame by the image selection means and the detection frame correction means.
  • T is an arbitrary decimal number
  • U is an arbitrary decimal number
  • IOU Intersection over Union
  • the model post-processing means when the model post-processing means processes the screen division in accordance with the screen division parameters of the frame control information, calculates an arbitrary threshold value T (T is an arbitrary decimal number) for each likelihood information and a relationship between the areas of the position information including each detection frame for zero or more of the position information including the detection frame of the second post-division reference image and the likelihood information of the second post-division reference image, which includes non-detection and pseudo-detection for one or more of the detected objects, which are the inference results of the object detection model for each frame, and the position information including the detection frame of the first post-division position shift image and the likelihood information of the first post-division position shift image.
  • T is an arbitrary decimal number
  • the individual identification means corrects the position information including the detection frame after individual identification and the likelihood information after individual identification for each detected object for the second divided reference image and the first divided position shift image input to the object detection model using an arbitrary threshold U (U is an arbitrary decimal number) for the Intersection over Union (IOU) value, which is an index indicating the degree of overlap, and uses the output results selected by the individual identification means to output the position information including the most likely detection frame and the most likely likelihood information for each detected object for each frame by the image selection means and the detection frame correction means.
  • U is an arbitrary decimal number
  • IOU Intersection over Union
  • the individual identification means when it performs screen division processing in accordance with the screen division parameters of the frame control information, it determines in which area of the second divided reference image or the first divided position shifted image the position information including the detection frame detected on the boundary between the second divided reference image and the first divided position shifted image is more widely distributed, cuts out the position information including the detection frame in the area where it is more widely distributed within that area and leaves it as a result, and cuts out and deletes the position information of the detection frame that protrudes into one of the areas.
  • the model post-processing means has a frame information holding means for holding the position information including the maximum likelihood detection frame and the maximum likelihood information, which are the inference results for each detected object for each frame determined to be the maximum likelihood by the image selection means and the detection frame correction means and outputted, in a storage memory for the current frame ft and past frames from ft-1 to ft-s (s is an arbitrary integer) for the maximum number of detected objects V (V is an arbitrary integer), and the frame information holding means holds the position information including the maximum likelihood detection frame and the maximum likelihood information for the current frame ft.
  • the position information including the maximum likelihood detection frame and the maximum likelihood information recorded in the storage memory of the oldest frame ft-s are erased, the position information including the maximum likelihood detection frame and the maximum likelihood information recorded in the storage memory from the ft frame to the ft-(s-1) frame are slid one frame in the past from the ft-1 frame to the ft-s frame and re-recorded, and the position information including the maximum likelihood detection frame and the maximum likelihood information of the current frame ft are recorded in the storage memory of the current frame ft.
  • the frame information holding means has a frame information interpolation means for, when there is a gap in the position information including the maximum likelihood detection frame and the maximum likelihood information of the detected object in the storage memory of a given frame, interpolating from the position information including the maximum likelihood detection frame and the maximum likelihood information in the storage memory of the previous and next frames to record new position information including the maximum likelihood detection frame and the maximum likelihood information in the storage memory of the given frame, and the frame information interpolation means uses a method such as Newton's backward interpolation method or a moving average method, and the position information including the maximum likelihood detection frame includes information on the center coordinates, height, and width of the detection frame, and the maximum likelihood information includes likelihood and class identification information indicating the reliability of detection.
  • a method such as Newton's backward interpolation method or a moving average method
  • the frame information interpolation means includes a motion vector amount calculation means for calculating a motion vector amount from the center coordinate of the position information including the maximum likelihood detection frame in the storage memory of the past frames ft-1 to ft-s of the frame information holding means, and recording the motion vector amount in the storage memory for each detected object in each frame, and further includes a motion vector prediction calculation means for predicting the motion vector amount for each detected object in a future frame, and predicting the center coordinate of the position information including the maximum likelihood detection frame.
  • the frame information interpolation means has a distance coefficient calculation means which calculates a distance coefficient based on the width, height and center coordinates of the detection frame of the position information including the maximum likelihood detection frame for each detected object in the past frame of the frame information storage means and the motion vector amount calculated by the motion vector amount calculation means, and further, the motion vector prediction calculation means predicts the center coordinates and distance coefficient of the position information including the maximum likelihood detection frame for each detected object in the future frame from the predicted motion vector amount of the future frame by the distance coefficient calculation means, and predicts information on the width and height of the detection frame of the position information including the maximum likelihood detection frame of the future frame.
  • the frame information interpolation means has an abnormality detection information removal means for removing from the storage memory when an abnormality is detected in the time continuity between frames of the position information including the maximum likelihood detection frame and the maximum likelihood information based on the width, height and center coordinates of the detection frame of the position information including the maximum likelihood detection frame stored in the storage memory for each detected object in a past frame of the frame information holding means, the motion vector amount, the distance coefficient and the maximum likelihood information, and has detection information restoration means for restoring the various information removed by the abnormality detection information removal means from the width, height and center coordinates of the detection frame of the position information including the maximum likelihood detection frame of the previous and subsequent frames, the motion vector amount, the distance coefficient and the maximum likelihood information, and recording the restored information in the storage memory, and further has
  • the apparatus further comprises an abnormality detection information prediction and removal means for detecting and removing an abnormality by comparing position information including the maximum likelihood detection frame calculated by the image selection means and the detection frame correction means for each detected object in the current frame when object detection is performed with the width, height
  • the frame information interpolation means detects that the width, height, and center coordinates of the detection frame of the position information including the maximum likelihood detection frame stored in the frame information storage means deviate from the width, height, and center coordinates of the detection frame of the position information including the maximum likelihood detection frame interpolated by the frame information interpolation means by exceeding an arbitrary threshold or exceeding an arbitrary ratio, or if the likelihood of the maximum likelihood information is abnormal but below a rescue threshold that is abnormal but worthy of rescue, the abnormality detection information removal means determines that the information is abnormal and removes all information from the storage memory, and at that time, if the likelihood of the maximum likelihood information is below a normality determination threshold that is determined to be normal and above a rescue threshold that is abnormal but worthy of rescue, removes other information except for the maximum likelihood information, and restores the position information including the maximum likelihood detection frame, the maximum likelihood information, the motion vector amount, and the distance coefficient restored by the detection information restoration means, by recording them in the storage memory.
  • the frame information interpolation means records the position information including the maximum likelihood detection frame, the maximum likelihood information, the motion vector amount and the distance coefficient in the storage memory, and calculates the maximum likelihood detection frame.
  • the abnormal detection information prediction and removal means determines that the information is abnormal and removes all information, and when the likelihood of the maximum likelihood information is less than a normality determination threshold value that determines that the information is normal and is equal to or greater than a rescue threshold value that is abnormal but worthy of rescue, other information except the maximum likelihood information is removed, and the position information including the detection frame, which is the output result of the motion vector prediction calculation means, the motion vector amount, the distance coefficient, and the maximum likelihood information are replaced by the detection information prediction and restoration means for the removed information and recorded in the storage memory.
  • the model post-processing means includes a traceability stability value indexing means for calculating the percentage deviation of the X coordinate of the center coordinate of the detection frame, the Y coordinate of the center coordinate of the detection frame, the width of the detection frame, the height of the detection frame, and the aspect ratio of the detection frame of the position information including the maximum likelihood detection frame calculated by the frame information storage means and the frame information interpolation means for each detected object in the current frame, with respect to the X coordinate of the center coordinate of the detection frame, the Y coordinate of the center coordinate of the detection frame, the width of the detection frame, the height of the detection frame, and the aspect ratio of the detection frame of the position information including the maximum likelihood detection frame of a future frame predicted by the motion vector prediction calculation means, averaging the deviations over W (W is an arbitrary integer) frames to calculate the center X coordinate average deviation (%), center Y coordinate average deviation (%), frame width fluctuation rate (%) normalized by the distance coefficient, frame height fluctuation rate (%) normalized by the distance coefficient, and frame aspect
  • the model post-processing means is characterized by having an anomaly detection frame number calculation means that, when an anomaly detection information prediction and removal means has determined an anomaly in the current frame and removed it, determines that an anomaly has been detected and outputs the number of frames in the frame in which the anomaly has been detected as an anomaly as the number of anomaly detection frames.
  • the model post-processing means is characterized by having a detection NG number calculation means that, when the likelihood of the maximum likelihood information in the current frame is determined to be an abnormal value below the rescue threshold and is removed by the abnormality detection information prediction and removal means, or when the inference result is undetected, determines that detection is impossible and outputs the number of times that detection is impossible in the frame as a detection NG number.
  • the model post-processing means is characterized by having a state machine control means that uses one or more or all of the following: position information including the maximum likelihood detection frame calculated by the frame information holding means and the frame information interpolation means; the lowest likelihood among the maximum likelihood information of the detected object; a stability value index which is various output information of the traceability stability value indexing means; the number of anomaly detection frames; and the number of detection failures; to determine the position shift amount and the type and number of the position shift amount of the frame control information of the next frame for each frame.
  • the state machine control means starts from a likelihood relief OFF mode state in which the position shift amount of the frame control information is zero and the type of position shift amount is zero, and when the minimum likelihood of the current frame is less than any first likelihood threshold or when the stability value index, which is the output information of the traceability stability value indexing means, exceeds at least one of the first instability thresholds, it switches to a likelihood relief maximum likelihood two-sheet mode in which the position shift amount of the frame control information of the next frame is controlled in one type of state, and determines the position shift amount by taking into account position information including the maximum likelihood detection frame for each detected object of the frame information holding means, the maximum likelihood information, and information of one or more detection layers of the neural network model of the object detection model.
  • the state machine control means switches to likelihood rescue maximum likelihood three-frame mode, which controls the position shift amount of the frame control information of the next frame in two types of states, and determines the two types of position shift amount by taking into account the position information including the maximum likelihood detection frame for each detected object of the frame information holding means, the maximum likelihood information, and information of one or more detection layers of the neural network model of the object detection model.
  • the state machine control means when the current frame is in the likelihood rescue maximum likelihood three-frame mode, if the minimum likelihood of the current frame is equal to or greater than any second likelihood threshold, the stability value index, which is the output information of the traceability stability value indexing means, is equal to or less than all of the second stability thresholds, the number of abnormality detection frames is zero, the number of detection NGs is zero, and one or more or all of these conditions are met, sets the state machine control means to the likelihood rescue maximum likelihood two-frame mode, which controls the position shift amount of the frame control information of the next frame in one state, and determines the position shift amount by taking into account the position information including the maximum likelihood detection frame for each detected object of the frame information holding means, the maximum likelihood information, and information on one or more detection layers of the neural network model of the object detection model.
  • the state machine control means is characterized in that, when the current frame is in the likelihood rescue maximum likelihood two-sheet mode, the minimum likelihood of the current frame is equal to or greater than any first likelihood threshold, the stability value index which is the output information of the traceability stability value indexing means is equal to or less than all of the first stability thresholds, the number of abnormality detection frames is zero, the number of detection NGs is zero, and when one or more or all of these conditions are met, the position shift amount of the frame control information for the next frame is set to zero, and the type of position shift amount is zero, to the likelihood rescue OFF mode state.
  • the model post-processing means calculates an IOU value for correct frame, which is an index showing the extent to which the area of the position information including the maximum likelihood detection frame for each of the detected objects in the current frame of the frame information holding means overlaps with the area of the position information including the correct detection frame, information on the truth of the result of comparing the maximum likelihood information for each of the detected objects in the current frame of the frame information holding means with the correct class identification information, and the likelihood of the maximum likelihood information, and calculates indexes such as an AP (Average Precision) value, an mAP (mean Average Precision) value, Recall, and Precision for the validation image by a second mAP calculation means.
  • AP Average Precision
  • mAP mean Average Precision
  • the object detection method of the present invention includes an image processing step of acquiring an image and creating a reference image for object detection from the image, a model preprocessing step of generating a first position-shifted image by shifting the reference image horizontally by M pixels (M is any decimal number) and vertically by N pixels (N is any decimal number) in accordance with the position shift amount of the frame control information, and inputting the reference image and the first position-shifted image to an object detection model for each frame, an object detection model including a model learning dictionary that infers object position, class identification, and likelihood for the reference image and the first position-shifted image for each frame output from the model preprocessing step, and
  • the model post-processing step includes an image selection step that compares the position information including the detection frame of the reference image and the likelihood information of the reference image for each detected object, which is the inference result, with the position information including the detection frame of the first position shift image and the likelihood information of the first position shift image, selects the maximum input image and the inference result, and outputs them for each frame
  • the model pre-processing step generates a second position-shifted image by shifting the reference image horizontally by P pixels (P is any decimal number) and vertically by Q pixels (Q is any decimal number) in accordance with the position shift amount of the frame control information, in addition to the reference image and the first position-shifted image, inputs the reference image, the first position-shifted image, and the second position-shifted image to the object detection model for each frame, and outputs an inference result for three different types of images by the object detection model
  • the model post-processing step includes a detection frame correction step in which the image selection step selects one input image and the inference result that is the maximum from the inference results for the three different types of images and outputs the inference result for each frame, and when the inference result of the first position-shifted image or the inference result of the second position-shifted image is selected by the image selection step, outputs position information including a detection frame that has been shifted in the opposite direction to when it was generated in the model pre-processing step in accordance with the
  • the model preprocessing step includes a cropping step of cropping out a detection range, which is a part of the image, from the reference image in accordance with the screen division parameters of the frame control information, and a screen division step of resizing the image cropped by the cropping step vertically and horizontally and pasting it into an area obtained by dividing the input screen of the object detection model into two areas, one of the screens divided by the screen division step being a first post-division reference image and the other being a second post-division reference image, and the first post-division reference image is a reference image obtained by dividing the input screen of the object detection model into two areas in accordance with the screen division parameters of the frame control information.
  • the model post-processing step has an image selection step for comparing position information including the detection frame of the second divided reference image and likelihood information of the second divided reference image for each detected object, which are the inference results of the object detection model, with position information including the detection frame of the first divided position shift image and likelihood information of the first divided position shift image, and selecting the maximum input image and the inference result for each frame, and outputting the inference result.
  • the model post-processing step includes a detection frame correction step for outputting position information including a detection frame whose position and size have been inversely corrected so as to correspond to the original reference image in accordance with the screen division parameters of the frame control information
  • the model post-processing step includes a detection frame correction step for outputting position information including a detection frame whose position and size have been inversely corrected so as to correspond to the original reference image after performing a position shift in the opposite direction to when it was generated in the model pre-processing step in accordance with the position shift amount and the screen division parameters of the frame control information.
  • the object detection program of the present invention includes an image processing step of acquiring an image and creating a reference image for object detection from the image, a model preprocessing step of generating a first position-shifted image by shifting the reference image horizontally by M pixels (M is any decimal number) and vertically by N pixels (N is any decimal number) in accordance with the position shift amount of the frame control information, and inputting the reference image and the first position-shifted image to the object detection model for each frame, an object detection model including a model learning dictionary that infers object position, class identification, and likelihood for the reference image and the first position-shifted image for each frame output from the model preprocessing step, and the reference image for each detected object which is the inference result of the object detection model.
  • the program is characterized in that it includes a model post-processing step having an image selection step in which position information including the detection frame of the reference image and likelihood information of the reference image are compared with position information including the detection frame of the first position-shifted image and likelihood information of the first position-shifted image, and the input image and the inference result that are the maximum are selected and output for each frame, and a detection frame correction step in which, if the model post-processing step selects the inference result of the first position-shifted image by the image selection step, it outputs position information including a detection frame that has been position-shifted in the opposite direction to when it was generated in the model pre-processing step in accordance with the position shift amount of the frame control information.
  • the model pre-processing step generates a second position-shifted image by shifting the position of the reference image by P pixels (P is any decimal number) in the horizontal direction and Q pixels (Q is any decimal number) in the vertical direction in accordance with the position shift amount of the frame control information in addition to the reference image and the first position-shifted image, inputs the reference image, the first position-shifted image, and the second position-shifted image to the object detection model for each frame, and outputs inference results for three different types of images by the object detection model.
  • the model post-processing step selects one input image and the inference result that is the maximum from the inference results for the three different types of images by the image selection step, and outputs the inference result for each frame.
  • the detection frame correction step outputs position information including a detection frame that has been shifted in the opposite direction to the detection frame generated in the model pre-processing step in accordance with the position shift amount of the frame control information.
  • the model preprocessing step includes a cropping step of cropping out a detection range, which is a part of the image, from the reference image in accordance with the screen division parameters of the frame control information, and a screen division step of resizing the image cropped by the cropping step vertically and horizontally and pasting it into an area obtained by dividing the input screen of the object detection model into two areas, one of the screens divided by the screen division step being a first post-division reference image and the other being a second post-division reference image, and the first post-division reference image is converted into a second image in accordance with the position shift amount of the frame control information.
  • the object detection model including a model learning dictionary for inferring an object position, a class identification, and a likelihood for the second post-division reference image and the first post-division position-shifted image for each frame output from the model pre-processing step; and an inference result of the object detection model
  • the model post-processing step includes an image selection step for comparing position information including the detection frame of the second divided reference image and likelihood information of the second divided reference image for each detected object with position information including the detection frame of the first divided position-shifted image and likelihood information of the first divided position-shifted image, and selecting the maximum input image and
  • the model post-processing step When the inference result of the second divided reference image is selected by the image selection step, the model post-processing step outputs position information including a detection frame in which the position and size have been inversely corrected so as to correspond to the original reference image in accordance with the screen division parameters of the frame control information, and when the inference result of the first divided position-shifted image is selected by the image selection step, the model post-processing step outputs position information including a detection frame in which the position and size have been inversely corrected so as to correspond to the original reference image in accordance with the position shift amount and the screen division parameters of the frame control information, after shifting the position in the opposite direction to when the inference result of the first divided position-shifted image is generated in the model pre-processing step.
  • the program is characterized in that the program includes a computer that executes the above-mentioned means and steps to function.
  • an image from the image processing means is used as a base image, and a first position-shifted image is generated by performing a position shift of M pixels (M is any decimal number) in the horizontal direction and N pixels (N is any decimal number) in the vertical direction in accordance with the position shift amount of the frame control information using the model pre-processing means.
  • M is any decimal number
  • N is any decimal number
  • the object position, class identification, and likelihood are inferred for each frame using the object detection model for the reference image and the first position-shifted image.
  • the position information and degree information including the detection frame of the reference image for each detected object are compared with the position information and likelihood information including the detection frame of the first position-shifted image, and the image selection means of the model post-processing means selects and outputs the one with the maximum likelihood information.
  • the detection frame correction means position information including a detection frame that has been shifted in the opposite direction in accordance with the position shift amount of the frame control information is output, thereby relieving the decrease in inference accuracy due to fluctuations in the position and size of the detection object that depends on the structure of the model itself that detects objects in the image, and making it possible to improve object detection ability and class identification ability.
  • a second position-shifted image is generated by shifting the reference image horizontally by P pixels (P is any decimal number) and vertically by Q pixels (Q is any decimal number) in accordance with the position shift amount of the frame control information by the model pre-processing means, and the object position, class identification, and likelihood are inferred for each frame by the object detection model for the reference image, the first position-shifted image, and the second position-shifted image, and the image selection means selects and outputs the inference result with the maximum likelihood information from the inference results for the three different types of images, and when the detection frame correction means selects the inference result for the first position-shifted image or the second position-shifted image, position information including a detection frame shifted in the opposite direction to the generation by the model pre-processing means in accordance with the position shift amount of the frame control information is output, thereby making it possible to better remedy the decrease in inference accuracy due to fluctuations in the position and size of the detection target object that
  • the object detection model is a neural network including a model learning dictionary created by deep learning or machine learning and a DNN, it is possible to alleviate the decrease in inference accuracy due to fluctuations in the position and size of the object to be detected in the image, which is dependent on the structure of the neural network itself, including the DNN, and improve object detection capabilities and class identification capabilities.
  • the amount of position shift of the frame control information is determined by a 1/2 pixel value obtained by dividing the number of pixels in the vertical and horizontal directions of the input image of the neural network model by the horizontal and vertical grid cell size for each of one or more detection layers of the neural network model, or a pixel value that is close to this.
  • the position shift amounts are determined by half pixel values or pixel values approximating the values obtained by dividing the horizontal and vertical grid cell sizes for one or more detection layers of the neural network model, and the position shift amounts are applied in the order of detection accuracy that changes depending on the size of the object to be detected, or the detection layers with high detection frequency.
  • the average value of the multiple position shift amounts is used as the position shift amount, thereby relieving on average the decrease in inference accuracy due to fluctuations in the position and size of the detection object that is dependent on the structure of the model itself that detects objects in the image, and it is possible to stably improve the object detection ability and class identification ability, and further, by limiting the types of position shift images that are processed simultaneously for each frame, it is possible to reduce the processing load during inference of the object detection model. Therefore, even if there are limitations on the performance of the installed arithmetic processor, etc., it is possible to achieve low latency and real-time performance while ensuring the accuracy and performance of object detection.
  • the present invention when there are three or more types of position shift amounts in the frame control information and there are three or more types of position shift images in the model pre-processing means, three or more position shift images are generated from the reference image in the model pre-processing means in accordance with the position shift amounts in the frame control information, and the maximum inference result is selected from the inference results for four or more different types of images for each frame in combination with the reference image by the object detection model and the image selection means of the model post-processing means, and output for each frame, and when an inference result other than the reference image is selected by the detection frame correction means, position information including a detection frame with a position shift in the opposite direction is output.
  • the optimal position shift amount for each detection layer can be applied, which further enhances the effect of remedying the decrease in inference accuracy due to fluctuations in the position and size of the detected object, making it possible to more reliably improve object detection ability and class identification ability.
  • the model pre-processing means inputs a reference image for the nth frame (n is any multiple of 2 including 0) and a first position-shifted image for the n+1th frame into the object detection model, and alternately infers the object position, class classification, and likelihood from the reference image and the first position-shifted image for each frame, and the image selection means of the model post-processing means compares the inference results of the current frame and the previous frame to select and output the maximum inference result, and when the detection frame correction means selects the inference result of the first position-shifted image for the n+1th frame, it outputs position information including a detection frame with a position shift in the opposite direction, thereby relieving the decrease in inference accuracy due to fluctuations in the position and size of the detection object that is dependent on the structure of the model that detects objects in the image itself, and making it possible to improve object detection and class classification capabilities, and furthermore, since the images to be inferred for each
  • the model pre-processing means inputs the reference image for the mth frame (m is any multiple of 3 including 0), the first position shifted image for the m+1th frame, and the second position shifted image for the m+2nd frame into the object detection model, and infers the object position, class identification, and likelihood for each frame for the reference image, the first position shifted image, and the second position shifted image in that order, and the image selection means of the model post-processing means compares the three inference results of the current frame, the previous frame, and the frame two frames before, and selects and outputs the maximum inference result, and the detection frame correction means When the inference result of the first position-shifted image in the m+1th frame or the second position-shifted image in the m+2th frame is selected, position information including a detection frame with a position shift applied in the opposite direction is output.
  • the model pre-processing means inputs the reference image in the rth frame (r is an arbitrary multiple of s (s is an arbitrary integer equal to or greater than 4) including 0) and the s-1 position shift images processed from the reference image of each frame in the r+1th frame to the r+s-1th frame into the object detection model in frame order, and infers the object position, class identification, and likelihood for each frame for the reference image and the s-1 position shift images in order, and the image selection means of the model post-processing means selects the current frame and the past frame s-1 frames before the current frame and the past frame s-1 frames before the current frame.
  • the maximum inference result is selected and output from among the inference results of the rth frame, and if the detection frame correction means selects an inference result other than that of the reference image of the rth frame, position information including a detection frame with a position shift in the opposite direction is output.
  • This allows the optimal position shift amount to be applied to each detection layer even when a neural network including a DNN is composed of multiple detection layers, thereby further enhancing the effect of relieving the decrease in inference accuracy due to fluctuations in the position and size of the detection target object, making it possible to more reliably improve object detection ability and class identification ability, and furthermore, since the images to be inferred per frame can be limited to one, it is possible to reduce the processing load during inference of the object detection model. Therefore, even when performing object detection on still images or when there are restrictions on the performance of the installed arithmetic processor, it is possible to achieve low latency and real-time performance while ensuring the accuracy and performance of object detection.
  • the input screen of the object detection model is pasted into two divided areas relative to the reference image by the screen division function of the model pre-processing means, one of the divided screens is used as a second post-division reference image, and a first post-division position-shifted image is generated by performing a position shift on the other first post-division reference image in accordance with the position shift amount of the frame control information, and inputted to the object detection model for each frame, and object position, class identification, and likelihood are inferred for the first post-division reference image and the second post-division position-shifted image, and the image selection means of the model post-processing means compares the inference results of the second post-division reference image and the first post-division position-shifted image to select the maximum inference result.
  • the detection frame correction means selects and outputs position information including a detection frame whose position and size have been inversely corrected to correspond to the reference image in accordance with the screen division parameters of the frame control information, and when the inference result of the first divided position shift image is selected, the detection frame correction means outputs position information including a detection frame whose position and size have been inversely corrected in accordance with the position shift amount of the frame control information.
  • the amount of position shift of the frame control information is determined by a pixel value approximating or equal to a half pixel value obtained by dividing the number of pixels in the vertical and horizontal directions of the first post-split reference image on one side of the screen split by the screen splitting function by the grid cell size in the horizontal and vertical directions for one or more detection layers of the neural network model.
  • the amount of position shift of the frame control information is determined by a pixel value approximating or equal to a half pixel value obtained by dividing the number of pixels in the vertical and horizontal directions of the first post-split reference image on one side of the screen split by the screen splitting function by the grid cell size in the horizontal and vertical directions for each of one or more detection layers of the neural network model, and is applied in the order of the detection accuracy that changes depending on the size of the detection object or the position shift amount for the detection layer with the highest detection frequency.
  • the average value of the multiple position shift amounts is used as the position shift amount, so that even when object detection is performed while the object to be detected is moving or when there are limitations on the performance of the on-board arithmetic processor, etc., it is possible to maintain low latency and real-time performance while on average relieving the decrease in inference accuracy due to fluctuations in the position and size of the object to be detected, which is dependent on the structure of the model itself that detects objects in the image, thereby improving stable object detection capabilities and class identification capabilities.
  • the present invention by setting the screen division parameters of the frame control information so that the first divided reference image and the second divided reference image when the screen is divided by the screen division function are divisible both horizontally and vertically when divided by the horizontal and vertical grid cell sizes for one or more detection layers of the neural network model, it is possible to relieve the decrease in inference accuracy due to fluctuations in the position and size of the detection target, which depend on the structure of the model itself that detects objects in images under the same conditions for each of the divided images, while maintaining low latency and real-time performance, even when object detection is performed while the detection target is moving or when there are limitations on the performance of the installed arithmetic processor, etc.
  • the model preprocessing means processes the image to be input to the object detection model, including shifting the position, in accordance with the frame control information, the blank areas where no valid image exists, which are generated by the processing, are uniformly filled with a single color equal to the average brightness level of the valid image to generate an image, thereby reducing the effect of the features of the blank areas on the inference accuracy of the object detection model, and thus making it possible to better alleviate the decrease in inference accuracy due to fluctuations in the position and size of the object to be detected, which depends on the structure of the model itself that detects objects in the image.
  • the model preprocessing means cuts out an image at any location using the crop function in accordance with the processing parameters of the frame control information from the image before the position shift is performed in accordance with the position shift amount of the frame control information, changes the image size using the resize function, changes the brightness level to an arbitrary value using a contrast correction curve or a tone conversion curve using the tone conversion function, changes the aspect ratio using the aspect ratio change function, and changes the rotation angle using the rotation function, making it possible to absorb or alleviate various variable conditions during image acquisition, and furthermore, since it is possible to process the target object from the image after acquisition into a state suitable for detection, it becomes possible to better alleviate the decrease in inference accuracy due to fluctuations in the position and size of the object to be detected, which depends on the structure of the model itself that detects objects in the image.
  • the position information and likelihood information including zero or more detection frames including non-detection and pseudo-detection for one or more detected objects are corrected by the individual identification means of the model post-processing means to position information including detection frames after individual identification and likelihood information after individual identification for each detected object for each frame using an arbitrary threshold T (T is an arbitrary decimal number) for each likelihood information and an arbitrary threshold U (U is an arbitrary decimal number) for the IOU value, which is an index showing the extent to which the areas of position information including each detection frame overlap with each other
  • the image selection means and detection frame correction means output position information including the most likely detection frame and likelihood information that is most likely for each detected object for each frame using the output result selected by the individual identification means, thereby eliminating abnormal data and individually discriminating and correcting the position information including detection frames and likelihood information for each detected object to appropriate information, making it possible to more accurately remedy the decrease in inference accuracy due to fluctuations in the position
  • the position information and likelihood information including zero or more detection frames including non-detection and pseudo-detection for one or more detected objects, which are inference results for the input images of the second divided reference image and the first divided position shift image input to the object detection model for each frame are subjected to an individual identification means of the model post-processing means, which uses an arbitrary threshold value T (T is an arbitrary decimal number) for each likelihood information and an arbitrary threshold value U (U is an arbitrary decimal number) for an IOU value, which is an index indicating the extent to which the areas of position information including each detection frame overlap with each other, to identify the position information including the detection frame after individual identification for each detected object for each divided screen for each frame.
  • the position information including the most likely detection frame and the most likely likelihood information after the individual identification are corrected, and the output results selected by the individual identification means are used to output the position information including the most likely detection frame and the most likely likelihood information for each detected object for each frame by the image selection means and detection frame correction means.
  • the individual identification means determines in which area of the second divided reference image or the first divided position shift image the position information including the detection frame detected on the boundary between the second divided reference image and the first divided position shift image is widely distributed, and the position information including the detection frame in the area where it is widely distributed is cut out within the area and left as a result, while the position information of the detection frame that protrudes into one of the areas is cut out and deleted.By doing so, even when object detection is performed while the detection target is moving or when there are limitations on the performance of the on-board arithmetic processor, etc., it is possible to eliminate abnormal data on the division boundary and to individually distinguish and correct the position information including the detection frame and likelihood information for each detected object into appropriate information, while maintaining low latency and real-time performance by screen division, thereby making it possible to more accurately remedy the decrease in inference accuracy due to fluctuations in the position and size of the detection target that depend on the structure of the model itself that
  • the frame information holding means of the model post-processing means holds the position information and maximum likelihood information including the maximum likelihood detection frame, which is the inference result for each detected object for each frame determined to be the maximum likelihood by the individual identification means, image selection means, and detection frame correction means and output, in the storage memory for the current frame ft and past frames from ft-1 to ft-s (s is an arbitrary integer) for the maximum number of detected objects V (V is an arbitrary integer), and thereafter, each time the latest current frame information is calculated, the information held in the storage memory for the past frame is slid and recorded while holding the time series information for the number of detected objects for the current and past s frames, making it possible to refer to the results of the past frames and the results of the current frame that have been remedied due to fluctuations in the position and size of the detected object, which depend on the structure of the model itself that detects objects in the image. Furthermore, it is also possible to display the history and trajectory of each past detected object.
  • the frame information is interpolated from the information in the storage memory of the previous and following frames and recorded as new information in the storage memory of the frame.
  • the information interpolation method is Newton's backward interpolation method, moving average method, or the like, which relieves the decrease in inference accuracy of the current frame due to fluctuations in the position and size of the detected object, which depends on the structure of the model itself that detects objects in the image, and compensates for continuity with respect to the results of past frames, making it possible to accurately and smoothly display the history and trajectory of each past detected object. Furthermore, it becomes possible to improve object detection ability, class identification ability, and tracking ability.
  • the motion vector amount calculation means of the frame information interpolation means calculates the motion vector amount from the center coordinate of the position information including the maximum likelihood detection frame of the storage memory of the past frames ft-1 to ft-s of the frame information holding means, and records it in the storage memory for each detected object of each frame
  • the motion vector prediction calculation means of the frame information interpolation means predicts the motion vector amount for each detected object of a future frame and predicts the center coordinate of the position information including the maximum likelihood detection frame, so that the motion vector amount for each detected object of a past frame can be calculated, and it is possible to predict the motion vector amount and the center coordinate of the detection frame of a future frame based on the result, and it is possible to determine whether continuity is ensured or whether it is an abnormal value by comparing the predicted result with the result inferred by the current object detection model and the model post-processing means.
  • the distance coefficient calculation means of the frame information interpolation means calculates the distance coefficient for each detected object in the past frame and records it in the storage memory, and predicts the distance coefficient of the future frame using the information and the motion vector amount predicted by the motion vector prediction calculation means, and predicts the width and height information of the detection frame of the position information including the maximum likelihood detection frame of the future frame, thereby making it possible to grasp the distance information between the photographing device such as a camera and the target object and predict the motion vector and the center coordinates of the detection frame of the current or future frame, etc., thereby making it possible to make continuous and accurate predictions.
  • the frame information interpolation means further removes the position information including the maximum likelihood detection frame and the maximum likelihood information from the storage memory when an abnormality is detected in the time continuity between past frames, and the detection information restoration means restores the information to have continuity and records it in the storage memory.
  • the abnormality detection information prediction and removal means compares the position information including the maximum likelihood detection frame for each detected object in the current frame with the position information including the maximum likelihood detection frame predicted by the motion vector prediction calculation means, and removes the abnormality when an abnormality is detected, replacing it with the prediction result and recording it in the storage memory of the current frame, thereby making it possible to remove abnormal values and restore the interpolated or predicted values for past and current frames.
  • the frame information interpolation means detects that the width, height and center coordinates of the detection frame of the position information including the maximum likelihood detection frame stored in the frame information holding means deviate from the width, height and center coordinates of the detection frame of the position information including the maximum likelihood detection frame interpolated by the frame information interpolation means by exceeding an arbitrary threshold or exceeding an arbitrary ratio, or if the likelihood of the maximum likelihood information is abnormal but below a rescue threshold that merits rescue
  • the abnormal detection information removal means judges the information as abnormal and removes all information from the storage memory, and in that case, if the likelihood of the maximum likelihood information is below a normal judgment threshold that judges it as normal and above a rescue threshold that is abnormal but merits rescue, other information except the maximum likelihood information is removed, and the position information including the maximum likelihood detection frame, the maximum likelihood information, the motion vector amount and the distance coefficient restored by the detection information restoration means are recorded in the storage memory and restored for the removed information, thereby making it possible to more accurately judge and remove abnormal values and restore with interpol
  • the frame information interpolation means records the position information including the maximum likelihood detection frame, the maximum likelihood information, the motion vector amount, and the distance coefficient in the storage memory when the width, height, and center coordinates of the detection frame of the position information including the maximum likelihood detection frame calculated by the individual identification means, the image selection means, and the detection frame correction means for each detected object in the current frame deviate by an arbitrary threshold or an arbitrary percentage from the width, height, and center coordinates of the detection frame of the position information including the maximum likelihood detection frame of the future frame predicted by the motion vector prediction calculation means, and when the likelihood of the maximum likelihood likelihood information is equal to or greater than a normality judgment threshold for judging it to be normal, and when the position information including the maximum likelihood detection frame does not exceed an arbitrary threshold or an arbitrary percentage, When it is detected that the information is abnormal, or when the likelihood of the maximum likelihood information is below a rescue threshold that is abnormal but worthy of rescue, the abnormality detection information prediction and removal means determines that the information is abnormal and removes all information, and when it is detected that the information is
  • the traceability stability value indexing means of the model post-processing means calculates the percentage deviation of each of the X and Y coordinates, width, height, and aspect ratio of the center coordinates of the detection frame of the position information including the most likely detection frame calculated by the frame information holding means and frame information interpolation means for each detected object in the current frame from the various values predicted by the motion vector prediction calculation means 484, and averages them for W (W is an arbitrary integer) frames to calculate the center X coordinate average deviation (%), center Y coordinate average deviation (%), frame width fluctuation rate (%) normalized by the distance coefficient, frame height fluctuation rate (%) normalized by the distance coefficient, and frame aspect ratio fluctuation rate (%), making it possible to index how accurate and stable the object detection ability, class identification ability, and tracking ability of the object detection device are. Therefore, it is also possible to determine whether the position shift amount of the current frame control information and various rescue modes and states for rescue are appropriate.
  • the model post-processing means's anomaly detection frame number calculation means determines the number of frames in a frame that have been determined to be anomaly and outputs the number of anomaly detection frames, making it possible to grasp the number of anomaly detections that have occurred in the object detection device, and since this serves as an index of stability, it is also possible to determine whether the position shift amount of the frame control information and various rescue modes and states for rescue are appropriate. Furthermore, it is also possible to determine the need for improvement or improvement of the robustness and object detection capability of the object detection model and model learning dictionary.
  • the likelihood of the maximum likelihood information is judged as an abnormal value below the rescue threshold and removed by the detection NG number calculation means of the model post-processing means, or when the result of inference is undetected and not even a restoration target, the number of times detection was impossible in the frame is judged as undetectable and output as the detection NG number, making it possible to grasp the number of times detection was impossible by the object detection device, which serves as an index of stability, and therefore makes it possible to determine whether the position shift amount of the frame control information and various rescue modes and states for rescue are appropriate. Furthermore, it is also possible to determine the need for improvement or improvement of the robustness and object detection capability of the object detection model and model learning dictionary.
  • the state machine control means of the model post-processing means uses one or more or all of the position information including the maximum likelihood detection frame calculated by the frame information holding means and the frame information interpolation means, the lowest likelihood among the maximum likelihood information of the detected object, the stability value index which is various output information of the traceability stability value indexing means, the number of anomaly detection frames, and the number of detection NGs to determine the position shift amount and its type and number state of the frame control information of the next frame for each frame, thereby relieving the deterioration of inference accuracy due to fluctuations in the position and size of the detected object which depend on the structure of the model itself that detects objects in an image.
  • the position shift amount and its type and number for the structure of the detection layer of the neural network including DNN which provides optimal inference accuracy for the stability of object detection, the detection state, and the size of the detected object can be automatically applied in a time series, thereby further enhancing the effect of relieving the deterioration of inference accuracy due to fluctuations in the position and size of the detected object, making it possible to more reliably improve object detection ability, class identification ability, and tracking ability. Furthermore, even if there are limitations on the performance of the onboard computing processor, it is possible to improve object detection capabilities, class identification capabilities, and tracking capabilities while maintaining low latency and real-time performance.
  • the state machine control means starts from a likelihood relief OFF mode state, and when the minimum likelihood of the current frame is less than any first likelihood threshold value, or when the stability value index, which is output information of the traceability stability value indexing means, exceeds at least one of the first instability threshold values, the state machine control means switches to a likelihood relief maximum likelihood two-frame mode in which the amount of position shift of the frame control information of the next frame is controlled in one state, and the frame information holding means stores position information including the maximum likelihood detection frame for each detected object, the maximum likelihood information, and one or more of the neural network models of the object detection model.
  • likelihood rescue is not performed by maintaining the likelihood rescue OFF mode, and only when it is determined that the performance or stability of object detection has deteriorated is the state transitioned to likelihood rescue maximum likelihood two-sheet mode, which rescues the likelihood decline with minimal load on the system, thereby improving the performance and stability of object detection. Therefore, even if there are limitations on the performance of the on-board calculation processor, etc., it is possible to efficiently improve object detection capability, class identification capability, and tracking capability while maintaining low latency and real-time performance.
  • the state machine control means controls the position shift amount of the frame control information for the next frame in two types of states when the minimum likelihood of the current frame is less than any second likelihood threshold, or when the stability value index which is the output information of the traceability stability value indexing means exceeds at least one of the second instability thresholds, or when the number of abnormality detection frames is 1 or more, or when the number of detection NGs is 1 or more, and the frame information holding means sets the maximum likelihood detection frame for each detected object to the likelihood rescue maximum likelihood 3-frame mode.
  • the state machine control means controls the position shift amount of the frame control information for the next frame in one state when the minimum likelihood of the current frame is equal to or greater than any second likelihood threshold, the stability value index which is the output information of the traceability stability value indexing means is equal to or less than all of the second instability thresholds, the number of abnormality detection frames is zero, the number of detection NGs is zero, and one or more or all of these conditions are met, and the state machine control means controls the position shift amount of the frame control information for the next frame in one state, and By determining the amount of position shift by taking into account the position information including the maximum likelihood detection frame, the maximum likelihood information, and information from one or more detection layers of the neural network model of the object detection model, if it is determined that the object detection performance and stability have transitioned from a state in which it is very degraded to a good state, the state is transitioned to a likelihood-relief maximum likelihood two-sheet mode that
  • the state machine control means determines that the minimum likelihood of the current frame is equal to or greater than any first likelihood threshold, the stability index, which is the output information of the traceability stability value indexing means, is equal to or less than all of the first stability thresholds, the number of anomaly detection frames is zero, the number of detection NGs is zero, and one or more or all of these conditions are met, and then the next frame is placed in the likelihood rescue OFF mode in which the likelihood reduction is not rescued.
  • the load on the system is reduced and the state is transitioned to the likelihood rescue OFF mode in which the likelihood reduction is not rescued, thereby making it possible to more efficiently achieve low latency and real-time performance while maintaining object detection capability, class identification capability, and tracking capability, even when limitations are placed on the performance of the on-board arithmetic processor, etc.
  • the second mAP calculation means calculates the correct frame IOU value, which is an index showing the extent to which the area of the position information including the maximum likelihood detection frame for each detected object in the current frame of the frame information holding means overlaps with the area of the position information including the correct detection frame, information on the truth of the result of comparing the maximum likelihood information for each detected object in the current frame of the frame information holding means with the correct class identification information, and the likelihood of the maximum likelihood information, and calculates indexes such as the AP (Average Precision) value, mAP (mean Average Precision) value, Recall, and Precision for the validation image, thereby making it possible to accurately analyze weaknesses and strengthening policies for the performance of the object detection model and the versatility and robustness of the model learning dictionary based on the results of remedying the decline in inference accuracy and improving object detection ability, class identification ability, and tracking ability. This makes it possible to determine and strengthen the correct frame IOU value, which is an index showing the extent to which the area of the position information including the maximum likelihood detection frame for each detected object in the current frame of
  • the present invention by executing the various means and functions of the object detection device in the various steps of the object detection method, it is possible to realize the device, means, and functions as a method, thereby making it possible to optimally combine hardware and software and alleviate the decrease in inference accuracy caused by fluctuations in the position and size of the object to be detected, which is dependent on the structure of the model itself that detects objects in an image, thereby improving object detection capabilities and class identification capabilities.
  • the present invention by executing the various means and functions of the object detection device, and the various steps of the object detection method in a program for causing a computer to execute the functions, it is possible to more optimally combine hardware and software, and improve object detection and class identification capabilities by resolving the decline in inference accuracy caused by fluctuations in the position and size of the object to be detected, which is dependent on the structure of the model itself that detects objects in an image. Furthermore, by updating and improving the program, it is possible to appropriately respond to system updates and specific customer requests.
  • FIG. 1 is a block diagram showing an object detection device according to a first embodiment of the present invention.
  • each of the means, functions, and processes described in the first embodiment of the present invention described below may be replaced by a step, and each of the devices may be replaced by a method. Furthermore, each of the means and devices described in the first embodiment of the present invention may be realized as a program executed by a computer.
  • the image processing means 100 which acquires an image and processes it appropriately (creates a reference image), is mainly composed of a lens 101, an image sensor 102, which is a device that receives light emitted from an object through the lens 101 and converts the brightness of the light into electrical information, and an image processing processor 103 equipped with a black level adjustment function, HDR (high dynamic range), gain, exposure adjustment function, defective pixel correction function, shading correction function, white balance function, color correction function, gamma correction function, local tone mapping function, etc. It may also be equipped with functions other than those mentioned above.
  • the lens 101 may be, for example, a standard zoom lens, a wide-angle zoom lens, a fisheye lens, etc., depending on the use of object detection. In the environment in which the detection object is photographed, various functions installed in the image processing processor 103 detect and control time-series changing conditions such as illuminance, and perform image processing to make the object to be detected easier to see or find while suppressing the changes.
  • the image generated by the image processing means 100 is input to the image output control means 110 and transmitted to the display and data storage means 120, which is an external memory such as a monitor device or a PC (personal computer), or a cloud server.
  • the image output control means 110 may have a function of transmitting image data according to the horizontal and vertical synchronization signals of the display and data storage means 120.
  • the image output control means 110 may also have a function of superimposing a frame depiction or likelihood information on the output image so as to mark the detected object, by referring to the position information 401 including the maximum likelihood detection frame and the maximum likelihood information 402, which are the output results of the model post-processing means 400.
  • the image output control means 110 may also have a function of transmitting the position information 401 including the maximum likelihood detection frame and the maximum likelihood information 402 directly to the display and data storage means 120 by using a serial communication function, a parallel communication function, or a UART that converts between the two.
  • the image data generated by the image processing means 100 is input to the model preprocessing means 200 and processed into a model input image 210 that is an image suitable for input to the object detection model 300.
  • the object detection model 300 is a model that performs object detection using image data of only luminance levels
  • the image for object detection generated by the image processing means 100 may be converted into luminance data having only luminance levels
  • the object detection model 300 is a model that performs object detection using color image data including color information
  • the image for object detection generated by the image processing means 100 may be color image data having pixels such as RGB.
  • the object detection model 300 is a model that performs object detection using image data of only luminance levels, and the image for object detection generated by the image processing means 100 is converted into luminance data having only luminance levels.
  • the model pre-processing means 200 may be composed of electronic circuits such as adders, subtractors, multipliers, dividers, and comparators, or may be realized by an image processing processor 290 composed of a CPU and an arithmetic processor, and functions (libraries) such as an affine transformation function 291 and a projective transformation function 292, a distortion correction table 293 for converting an image captured using a fisheye lens into a view equivalent to that of a human field of vision.
  • the image processing processor 290 may be substituted by the image processing processor 103 of the image processing means 100.
  • the model pre-processing means 200 may be provided with some or all of the above-mentioned affine transformation function 291, projective transformation function 292, image processing processor 290, or electronic circuit, a position shift function 220 for shifting an image to any position in the horizontal and vertical directions when cutting out a specific area, a resizing function 230 for enlarging or reducing the image to any magnification, a cropping function 240 for cutting out a detection range that is an appropriate portion of the image, a screen division function 250 for resizing the image cut out by the cropping function 240 in the vertical and horizontal directions by the resizing function 230 and pasting the image into two or more divided areas, a rotation function 260 for rotating the image to any angle, an aspect ratio changing function 265 for arbitrarily changing the ratio between the horizontal and vertical directions, a gradation conversion function 270 for changing the brightness level with an arbitrary curve, a dewarping function 277 for performing distortion correction, cylindrical conversion, etc., and a margin padding function 280
  • the model pre-processing means 200 may process the image data generated by the image processing means 100 or an image processed to compensate for various variable conditions in the shooting environment when shooting with a camera or the like, or to make the image suitable for input to the object detection model 300 as a reference image 221, and output the processed image to the object detection model 300 according to the position shift amount 510, resize parameter 511, and screen division parameter 512 of the frame control information 500 to reduce the decrease in likelihood information, which is the inference result of the object detection model 300.
  • the method of determining the frame control information 500 and the change conditions and change timing in the time series will be described later in the description of the model post-processing means 400, and the method of use and operation thereof will be described.
  • the reference image 221 processed by the model preprocessing means 200 and zero or multiple model input images 210 obtained by performing a position shift on the reference image 221 in accordance with the frame control information 500 are input to the object detection model 300, and the position of the target object is detected by inference (prediction), and the object is identified (class identification) as to which class it belongs, such as a person or a vehicle.
  • the object detection model 300 outputs position information 301 including zero or multiple pre-correction detection frames including undetectable and pseudo-detected, and pre-correction likelihood information 302 for each detected object present in one image.
  • the position information 301 including the pre-correction detection frame is, for example, information including the center coordinates, horizontal width, and vertical height of the detection frame
  • the pre-correction likelihood information 302 is, for example, likelihood and class identification information indicating the detection accuracy.
  • the object detection model 300 is composed of, for example, a model learning dictionary 320 and a deep neural network (DNN) model 310 that uses a convolutional neural network (CNN) that is an AI (artificial intelligence) model of the neurons in the human brain.
  • the DNN model 310 uses, for example, YOLO (see, for example, Non-Patent Document 1) or SSD, which are models that have an advantage in detection processing speed.
  • YOLO see, for example, Non-Patent Document 1
  • SSD which are models that have an advantage in detection processing speed.
  • detection accuracy for example, FasterR-CNN or EfficientDet may be used.
  • object position detection is not performed and class classification is the main focus, for example, MobileNet may be used.
  • Figure 2 shows an outline of the configuration of the artificial neuron model 330 and neural network 340, which are the basic components of the CNN mentioned above.
  • the artificial neuron model 330 receives output signals from one or more neurons such as X0, X1, ..., Xm, and generates an output for the next neuron through activation function 350 for the sum of the multiplication results by the respective weighting coefficients W0, W1, ..., Wm.
  • b is the bias (offset).
  • the neural network 340 is a collection of a large number of these artificial neuron models 330.
  • the neural network 340 is composed of an input layer, an intermediate layer, and an output layer, and the output of each artificial neuron model 330 is input to each artificial neuron model 330 in the next stage.
  • the artificial neuron model 330 may be realized by hardware such as an electronic circuit, or by an arithmetic processor and a program.
  • the weight coefficient of each artificial neuron model 330 is calculated as dictionary data by deep learning.
  • the dictionary data i.e., the model learning dictionary 320 shown in FIG. 1, is a collection of data on the weight coefficients of the DNN model 310 composed of the neural network 340, and in the case of the DNN model 310, it is initially learned or re-learned by the dictionary learning means 600 described later.
  • the activation function 350 needs to be a nonlinear transformation, since repeating linearity only results in conversion to linearity.
  • the activation function 350 is a step function that simply identifies "0" or "1", a sigmoid function 351, a ramp function, etc., but the sigmoid function 351 increases the circuit size and the calculation speed decreases depending on the capacity of the calculation processor, so in recent years, ramp functions such as ReLU (Rectified Linear Unit) 352 are often used.
  • ReLU 352 is a function in which the output value is always 0 when the input value to the function is 0 or less, and the output value is the same value as the input value when the input value is above 0.
  • LeakyReLU Leaky Rectified Linear Unit
  • LeakyReLU 353 is a function that multiplies the input value by ⁇ ( ⁇ is, for example, 0.01 (basic)) if the input value is below 0, and outputs the same value as the input value if the input value is above 0.
  • Other activation functions 350 include the softmax function, which is used when classifying detected objects, and the appropriate function is used depending on the application. The softmax function converts and outputs multiple output values so that the sum of the values is 1.0 (100%).
  • 3A and 3B are an example of the configuration of a YOLO model 360, which is one of the DNN models 310.
  • the YOLO model 360 shown in FIG. 3A may have, for example, a horizontal pixel Xi and a vertical pixel Yi as the input image size.
  • the basic configuration may include a convolution layer 370 or 387 that can compress and extract area-based features by convolving the area of surrounding pixels by filtering, a pooling layer 390 or 395 that functions to absorb the position shift of the filter shape in the input image, a fully connected layer, and an output layer.
  • the YOLO model may include a first detection layer 361, a second detection layer 362, and a third detection layer 363 for detecting the position of an object and classifying (identifying), and may be configured with upsampling layers 364 and 365 for upsampling the results of classifying using deconvolution.
  • the model input image size, pixel size of the convolution layer, pooling layer, detection layer, upsampling layer, etc., the number and combination configuration of various layers, and the number and arrangement of detection layers may be increased, decreased, or changed depending on the intended use.
  • the convolution layer 370 or 387 corresponds to a model of a simple cell that responds to a specific shape or various shapes, and is used to recognize objects with complex shapes.
  • the Pooling layer 390 or 395 corresponds to a model of a complex cell that acts to absorb spatial deviations in shape, and acts to treat an object of a certain shape as the same shape when the position of the object is shifted, whereas it would be considered to have a different shape.
  • Upsampling layers 364 and 365 perform class classification for the original image, and by using the results in each layer of the CNN as a feature map through the skip connections shown in 366 and 367 in Figure 3A, for example, it becomes possible to identify finer regions in the second detection layer 362 and the third detection layer 363.
  • skip connections 367 and 366 connect networks with the same configuration as convolution layers 373 and 374 after convolution layers 385 and 381, respectively.
  • FIG. 3B targets one person as a detected object.
  • the image area of the model input image 311 is divided into grid cells of any size for each detection layer described above in order to simultaneously detect the position of the object and identify the class.
  • FIG. 3B shows an example in which the grid cells of the second detection layer 362 are 8 ⁇ 8 when the horizontal pixel count Xi of the model input image 255 in FIG.
  • 3A is defined as 128 pixels and the vertical pixel count Yi is defined as 128 pixels.
  • the size of the grid cells may differ depending on the detection layer, such as 4 ⁇ 4 for the grid cells of the first detection layer 361 and 16 ⁇ 16 for the grid cells of the third detection layer 363.
  • This process performs in parallel process 312 of estimating multiple BoundingBoxes and Confidence 313 (Pr(Object) x IOU), and process 314 of calculating Pr(Classi
  • position information 318 including the detection frame before correction shown by a dotted line in final detection process 316, is the detection frame displayed as the detection result for the person.
  • the inference results (confidence score 317 equivalent to likelihood) by each detection layer differ depending on the size of the object to be detected compared to the model input image 311.
  • the detection layer in which the inference result is dominant differs depending on the object size. For example, when the detected object size is sufficiently large, the value of the confidence score 317 calculated by the first detection layer 361 (grid cells 4 ⁇ 4) becomes high and the confidence also becomes high.
  • the value of the confidence score 317 calculated by the second detection layer 362 becomes high and the confidence also becomes high.
  • the value of the confidence score 317 calculated by the third detection layer 363 becomes high and the confidence also becomes high.
  • the number of horizontal pixels Xi of the model input image 255 in FIG. 3A is defined as 128 pixels and the number of vertical pixels Yi is defined as 128 pixels, but it is desirable to increase the number of pixels of the model input image 255 when performing more accurate object detection.
  • the number of horizontal pixels Xi of the model input image 255 is defined as 416 pixels and the number of vertical pixels Yi is defined as 416 pixels
  • the size of the grid cells of each detection layer will be large, such as 7 ⁇ 7 for the grid cells of the first detection layer 361, 13 ⁇ 13 for the grid cells of the second detection layer 362, and 26 ⁇ 26 for the grid cells of the third detection layer 363, making it possible to perform more accurate object detection.
  • this will require a larger calculation performance for the processor, etc., and the scale of the hardware and software will also become larger, and a huge amount of memory will be required to store information on each layer and information on the weighting coefficients.
  • the position information 301 including zero or more pre-correction detection frames, including undetectable and false detections for each detected object present in an image output from the object detection model 300 shown in FIG. 1, and the pre-correction likelihood information 302 are input to the model post-processing means 400, and then the individual identification means 410 identifies the position information 301 including pre-correction detection frames based on the mutual IOU values and the maximum judgment of the pre-correction likelihood information 302, and identifies the position information 403 including post-individual identification detection frames and the likelihood information 404 after individual identification that are considered to be the most appropriate for each detected object as a single result that is considered to be optimal for each individual.
  • the IOU value is explained using Figure 4.
  • the denominator 422 of the formula expressing the IOU value 420 in Figure 4A is the Area of Union in (Formula 1) described above, and is the area of the union of the two frame areas being compared.
  • the numerator 423 of the formula expressing the IOU value 420 in Figure 4A is the Area of Intersection in (Formula 1) described above, and is the area of the common part of the two frame areas being compared.
  • the maximum is "1.0", indicating that the two frame data completely overlap.
  • the model post-processing means 400 shown in FIG. 1 may be characterized by having an individual identification means 410 that corrects the position information 301 including zero or more pre-correction detection frames, including undetectable and false detections, and the pre-correction likelihood information 302 for each detected object or objects in the output result of the object detection model 300 for one image, to position information 403 including detection frames after individual identification and likelihood information 404 after individual identification for each detected object, using an arbitrary threshold value T (arbitrary decimal number) for the pre-correction likelihood information 302 and an arbitrary threshold value U (arbitrary decimal number) for the IOU (Intersection over Union) value, which is an index indicating the extent to which the areas of the position information 301 including the pre-correction detection frames overlap with each other.
  • T arbitrary decimal number
  • U arbitrary decimal number
  • position information 301 including zero or more pre-correction detection frames including non-detection and pseudo-detection for each detected object, and pre-correction likelihood information 302 are input.
  • position information 322, 323, 324, and 325 including four pre-correction detection frames output from object detection model 300, and likelihoods 326, 327, 328, and 329 among the four pieces of pre-correction likelihood information are input.
  • an IOU threshold "U” and a likelihood threshold “T” are set.
  • a comparison step S432 the likelihood in the pre-correction likelihood information 302 is compared with a threshold value "T". If the likelihood is less than the threshold value "T" and is determined to be false, a deletion step S433 deletes the position information 301 including the corresponding pre-correction detection frame and the pre-correction likelihood information 302 from the calculation target, and if the likelihood is equal to or greater than the threshold value "T", it is determined to be true, and a mutual IOU value calculation step S434 performs a process of calculating the IOU value of the mutual combination of all the position information 301 including the pre-correction detection frame that is the calculation target.
  • a mutual IOU value calculation step S434 performs a process of calculating the IOU value of the mutual combination of all the position information 301 including the pre-correction detection frame that is the calculation target.
  • a comparison step S435 all mutual IOU values are compared with a threshold value "U". If the mutual IOU value is less than the threshold value "U" and is determined to be false, it is determined to be an independent detection result, and in an output step S437, it is output as position information including the detection frame after individual identification 403 and likelihood information after individual identification 404. If the mutual IOU value is equal to or greater than the threshold value "U", it is determined to be true, and it is considered that the same detected object is detected in duplicate, and the process proceeds to the next maximum likelihood determination step S436. In FIG.
  • the position information 322 including the detection frame before correction and the likelihood information before correction including the likelihood 326 (0.85) are output as independent detection information in an output step S437 as position information 411 including the detection frame after individual identification and likelihood information after individual identification including the likelihood 413 (0.85).
  • the position information 324 and 325 including the detection frames before correction have mutual IOU values close to each other, so it is determined that "U" is 0.7 or more, and the process proceeds to the next maximum likelihood determination step S436.
  • a maximum likelihood determination step S436 all information other than the one with the maximum likelihood among the corresponding information is determined to be false, and in a deletion step S433, the corresponding position information 301 including the detection frame before correction and the likelihood information 302 before correction are deleted from the calculation targets, and the one with the maximum likelihood among the corresponding information is determined to be true, and in an output step S437, these are output as position information 403 including the detection frame after individual identification and likelihood information 404 after individual identification.
  • pre-correction likelihood information including likelihood 328 (0.75) and position information 324 including the pre-correction detection frame are removed from the calculation targets, and pre-correction likelihood information including likelihood 329 (0.92), which was determined to be the maximum likelihood, and position information 325 including the pre-correction detection frame are output in output step S437 as position information 412 including the detection frame after individual identification and likelihood information after individual identification including likelihood 414 (0.92).
  • the mutual IOU value threshold "U" is set low, when there are multiple detected objects, especially objects that are close to each other, the detection results of the multiple detected objects will be merged more than expected, making it more likely that detections will be missed. On the other hand, if it is set high, duplicate detection results may remain even when the same object is detected. For this reason, it is desirable to set it appropriately depending on the performance of the object detection model 300.
  • the individual identification means 410 may perform individual identification using a combination of steps other than the flowchart shown in FIG. 5A. For example, it may include a process of limiting the targets for which mutual IOU values are calculated in mutual IOU value calculation step S434 to those of the same class using class identification information in the likelihood information 302 before correction, or a process of determining the maximum likelihood within the same class when determining the maximum likelihood in maximum likelihood determination step S436.
  • abnormal data can be eliminated and the position information and likelihood information including the detection frame for each detected object can be appropriately determined and corrected, making it possible to more accurately remedy the decrease in inference accuracy due to fluctuations in the position and size of the detected object that depend on the structure of the model itself that detects objects in the image.
  • the model post-processing means 400 shown in FIG. 1 has a function of correcting the position information 621 including the detection frame that is the correct answer according to the contents of the frame control information 500 using an affine transformation function, a projective transformation function, and an arithmetic processor, etc., when position information 621 including the detection frame that is the correct answer and class identification information 622 are present for each detected object using the annotation means 620 and open source datasets such as COCO and PascalVOC Dataset that have already been annotated, and correcting the position information 621 including the detection frame that is the correct answer according to the contents of the frame control information 500, and correcting the output result of the object detection model 300 present in one image.
  • the device may also be characterized by having an individual identification means 410 that corrects, for each of one or more detected objects, position information 301 including zero or more pre-correction detection frames, including undetectable and false detections, and pre-correction likelihood information 302, to position information 403 including detection frames after individual identification and likelihood information 404 after individual identification for each detected object, using an arbitrary threshold value T (arbitrary decimal number) for the pre-correction likelihood information 302 and an arbitrary threshold value U (arbitrary decimal number) for the IOU value, which is an index showing the extent to which the areas of position information 621 including the detection frame that is the correct answer and position information 301 including the detection frame before correction overlap.
  • T arbitrary decimal number
  • U arbitrary decimal number
  • the annotation means 620 may, for example, create supervised data by adding class identification information and a groundtruth BBox, which is a correct answer box, to an image stored in the display and data storage means 120 or the learning material database storage means 610.
  • position information 301 including zero or more pre-correction detection frames including undetectable and false detections for each detected object present in one image and pre-correction likelihood information 302 are input.
  • position information 621 including the correct detection frame for each detected object and correct class identification information 622 are input.
  • position information 332, 333, 334, and 335 including four pre-correction detection frames output from object detection model 300 and likelihoods 336, 337, 338, and 339 among the four pre-correction likelihood information are input.
  • position information 624 and 625 including two correct detection frames output from annotation means 620 and class identification information 626 and 627 indicating two correct "people" are input.
  • an IOU threshold "U” and a likelihood threshold “T” are set.
  • a comparison step S432 the likelihood in the pre-correction likelihood information 302 is compared with a threshold value "T", and if the likelihood is less than the threshold value "T" and is determined to be false, a deletion step S433 deletes the position information 301 including the corresponding pre-correction detection frame and the pre-correction likelihood information 302 from the calculation target, and if the likelihood is equal to or greater than the threshold value "T", it is determined to be true, and a process of calculating an IOU value with a correct frame S441 is performed to calculate an IOU value of the combination of position information 301 including all pre-correction detection frames that are the calculation target for each of the position information 621 including the detection frame that is the correct answer.
  • comparison step S442 all IOU values are compared with threshold value "U". If the IOU value for position information 621 including the correct detection frame is less than threshold value "U" and judged to be false, it is judged to be significantly off the correct frame, and in deletion step S433, position information 301 including the corresponding pre-correction detection frame and pre-correction likelihood information 302 are deleted from the calculation target, and if the IOU value is greater than or equal to threshold value "U", it is judged to be true, it is considered to be a detection target candidate with a small difference from the correct frame, and the process proceeds to the next class identification judgment step S443. In FIG. 6B, candidates judged to be false are not applicable, and the three calculation candidates become the judgment target for class identification judgment step S443.
  • class identification determination step S443 the class identification information 622 that is the correct answer is compared with the class identification information in the pre-correction likelihood information 302 that is the correct answer, and if they are identified as different classes, it is determined to be false, and in deletion step S433, the position information 301 including the corresponding pre-correction detection frame and the pre-correction likelihood information 302 are deleted from the calculation target, and if they are identified as the same class, it is determined to be true, and the process proceeds to the next maximum likelihood determination step S436.
  • Figure 6B all candidates are determined to be "person" as a result of class identification, and the three calculation candidates become the determination target of maximum likelihood determination step S436 as they are.
  • a maximum likelihood determination step S436 all but the one with the maximum likelihood among the corresponding information are determined to be false, and in a deletion step S433, the position information 301 including the corresponding pre-correction detection frame and the pre-correction likelihood information 302 are deleted from the calculation targets, and the one with the maximum likelihood among the corresponding information is determined to be true, and in an output step S444, the position information 403 including the detection frame after individual identification, the likelihood information 404 after individual identification, and the calculated IOU value are output.
  • pre-correction likelihood information including likelihood 336 (0.85) determined to be the maximum likelihood and position information 332 including the detection frame before correction are output in an output step S444 as position information 415 including the detection frame after individual identification and likelihood information after individual identification including likelihood 417 (0.85).
  • an IOU value 428 (0.73) is output in an output step S444.
  • the second mAP calculation means 650 described later it is possible to accurately perform performance indexing based on the rescued inference results to accurately analyze weaknesses and reinforcement policies in the performance of the object detection model and the versatility and robustness of the model learning dictionary, such as the IOU value with respect to the correct answer frame for object detection, Precision, Recall, AP value, and mAP value, and therefore it is possible to more accurately reinforce the versatility and robustness of position information including the detection frame by the dictionary learning means 600 described later in embodiment 2.
  • These series of means for generating position information 403 including a detection frame after individual identification and likelihood information 404 after individual identification using the image processing means 100, model pre-processing means 200, object detection model 300, and individual identification means 410 of the model post-processing means 400 constitute a conventional object detection device that detects the position and class of objects in an image.
  • image 202 and image 203 are shifted horizontally by two pixels and four pixels, respectively, due to time-series hand shake or vibration when acquiring an image with a camera or the like, compared to image 201 acquired at a horizontal reference position at a certain reference time.
  • the YOLO model 360 object detection model 300
  • the position information 207, 208, and 209 including the detection frame after individual identification and likelihoods 214, 215, and 216 in the likelihood information after individual identification are calculated as a result of correction by the model post-processing means 400, even though the same person is detected, the position of the person in the image is only slightly shaken and shifted horizontally, but the respective likelihoods may vary greatly to 0.92, 0.39, and 0.89.
  • the likelihood 217 in the likelihood information after individual identification of image 204 where the detection object distance is 1 m is 0.92
  • the likelihood 219 in the likelihood information after individual identification of image 206 where the detection object distance is 3 m is 0.71
  • the likelihood 218 in the likelihood information after individual identification of image 205 where the detection object distance is 2 m is 0.45, which is a significant decrease, resulting in irregular results.
  • the position shifting function 220 and resizing function 230 of the model preprocessing means 200 by using the position shifting function 220 and resizing function 230 of the model preprocessing means 200, it is possible to grasp these irregular phenomena in still images and analyze their causes, as well as to improve and stabilize inference performance for moving images.
  • the model preprocessing means 200 may have a position shift function 220 that, when processing one or more model input images 210 to be input to the object detection model 300 for each frame, generates a first position shifted image 222 by shifting the position of the reference image 221, which has been processed to reduce or lower the effects of the shooting environment and variable conditions by various functions of the image processing means 100 and the model preprocessing means 200, by M pixels (M is an arbitrary decimal number) in the horizontal direction and N pixels (N is an arbitrary decimal number) in the vertical direction in accordance with the position shift amount 510 of the frame control information 500, and inputs the reference image 221 and the first position shifted image 222 to the object detection model 300 for each frame. It may also have a function of cutting out an arbitrary area.
  • the position shift function 220 may be a function realized by executing an affine transformation function 291 or a projective transformation function 292 in the image processing processor 290.
  • the position shift function 220 may generate a second position shift image 223 by shifting the position of the reference image 221 by P pixels (P is any decimal number) in the horizontal direction and Q pixels (Q is any decimal number) in the vertical direction in addition to the reference image 221 and the first position shift image 222 in accordance with the position shift amount 510 of the frame control information 500, and input the reference image 221, the first position shift image 222, and the second position shift image 223 to the object detection model 300 for each frame.
  • the position shift function 220 described above is extended as shown in FIG. 8, and the position shift amount 510 of the frame control information 500 is set to M (M is any decimal) pixel steps horizontally for J (J is any integer) times and N (N is any decimal) pixel steps vertically for K (K is any integer) times, and a total of J ⁇ K position-shifted model input images 220A to 220D including the reference image 221 are generated.
  • the model preprocessing means 200 may have a resizing function 230 that further sets L (any integer) types of arbitrary magnifications as the resizing parameters 511 of the frame control information 500 when processing one or more model input images 210 to be input to the object detection model, and generates enlarged or reduced images.
  • the above-mentioned position shifting function 220 may generate J ⁇ K position shifted images for each of the L types of resized images as shown in FIG. 8, generating a total of J ⁇ K ⁇ L resized and position shifted model input images 210. It may also have a function of cutting out any area.
  • the position shifting function 220 and the resizing function 230 may be functions that are realized by executing the affine transformation function 291 and the projective transformation function 292 in the image processing processor 290.
  • J ⁇ K position-shifted images 220A to 220D are generated in M pixel steps in the horizontal direction and N pixel steps in the vertical direction, as shown in FIG. 8, and a total of 3 ⁇ J ⁇ K model input images 210 are processed.
  • the multiple model input images 210 for the still image of the same frame processed by the position shift function 220 and resize function 230 of the model pre-processing means 200 as shown in Figures 8 and 9 are input to a robustness verification means 800 that verifies the versatility and robustness of the object detection model 300 in accordance with the frame control information 500 after calculating position information 403 including the detection frame after individual identification and likelihood information 404 after individual identification for each of the multiple model input images 210 by the object detection model 300 and the individual identification means 410 of the model post-processing means 400 shown in Figure 1.
  • the items and various variable conditions verified by the robustness verification means 800 include, for example, the background (scenery), the camera lens specifications, the height and elevation/depression angle at which the camera is attached, the detection target area and field of view including image size, the dewarping method when a fisheye lens is used, special conditions such as changes in illuminance depending on sunlight or lighting, black crush, white blowout, and backlighting, and weather conditions such as sunny, cloudy, rainy, snowy, and foggy.
  • the position of the target detection object in the image (left/right, top/bottom, and depth), size, brightness level, shape and features including color information, aspect ratio, rotation angle, number of target detection objects, state of mutual overlap, type, size and position of accessories, presence or absence of IR cut on the lens, movement speed of the target detection object, and movement speed of the camera itself.
  • items and conditions other than those mentioned above may be added depending on the use. Taking these various conditions and items into consideration, it is desirable to set various parameters and their values of the frame control information 500 so that conditions advantageous for object detection can be analyzed to improve inference performance, and also so that the selection of learning materials and processing conditions can be determined to enhance the characteristics of the object detection model 300 and the robustness and versatility of the model learning dictionary 320.
  • the frame control information 500 is input to the model preprocessing means 200 and the robustness verification means 800.
  • the frame control information 500 input to the model preprocessing means 200 includes parameters related to the position shift function 220 for verifying the effect of fluctuations due to object position on still images and for remedying the decrease in inference accuracy (likelihood) due to fluctuations due to object position on video, and may also be a combination of parameters related to the resize function 230 for verifying the versatility and robustness of the detection target area and field of view range, including image size, associated with object size, such as the camera lens specifications, the height at which the camera is attached, and the conditions for the elevation and depression angles, for still images, and for maximizing inference accuracy for video, as well as multiple other parameters described below for minimizing the effect of variable conditions due to the shooting environment and maximizing inference accuracy for video.
  • the model post-processing means 400 may output to the robustness verification means 800 the frame control information 500 used to process the multiple images by the model pre-processing means 200, the output result of the individual identification means 410, or the detection results 405 (including position information 401 including the most likely detection frame and the most likely likelihood information 402, etc.) linked individually to each maximum likelihood detected object after likelihood rescue for the video by the image selection means 450, detection frame correction means 460, frame information holding means 470, frame information interpolation means 480, and state machine control means 550 described below, and the IOU value 420 for the likelihood.
  • the robustness verification means 800 may be characterized by comprising a probability statistical calculation means 810 which calculates, based on the likelihood in the position information 403 including the detection frame after individual identification and the likelihood information 404 after individual identification, which are the output results of the model post-processing means 400, or the position information 401 including the maximum likelihood detection frame and the maximum likelihood information 402, for each frame control information 500, an average likelihood 801 which is the average value of the effective area of the likelihood, a standard deviation 802 of the likelihood which is the standard deviation of the effective area of the likelihood, a maximum likelihood 803 which is the maximum value of the effective area of the likelihood, a minimum likelihood 804 which is the minimum value of the effective area of the likelihood, and any or all of an IOU value 805 for the likelihood, including a likelihood distribution 830 which shows the variation associated with the position shift of each detected object.
  • a probability statistical calculation means 810 which calculates, based on the likelihood in the position information 403 including the detection frame after individual identification and the likelihood information 404 after individual identification, which are the output
  • the IOU value 805 for the likelihood may be the IOU value of position information 403 including the detection frame after individual identification, or position information 621 including the detection frame that is the correct answer for position information 401 including the most likely detection frame.
  • the detected objects and various statistical results for still images extracted using the robustness verification means 800 make it possible to identify targets for reinforcement in the model learning dictionary 320. Furthermore, it also becomes possible to extract issues for the object detection model 300. Furthermore, by inputting these various statistical results to the dictionary learning means 600 described later in embodiment 2 and reflecting them in the selection of learning materials and the augmentation method and learning parameters, it becomes possible to enhance the versatility and robustness of the model learning dictionary 320.
  • the robustness verification means 800 described above was used to analyze the fluctuation in the position of a person in the image of the detected object explained using the still images of Figures 7A and 7B, and the phenomenon in which the likelihood, etc., of the detection results by the object detection model 300 varies irregularly with respect to the size of the detected object. The results are explained in conjunction with Figures 10 and 11.
  • the analysis results shown in Figs. 10 and 11 are for the case where the number of pixels in the horizontal direction, Xi, of the multiple model input images shown in Figs. 7A, 7B, 8, and 9 is set to 128, and the number of pixels in the vertical direction, Yi, is set to 128.
  • the detection target is one person. As shown in Fig.
  • the analysis results shown in Figures 10 and 11 are the result of using the YOLO model 360 (object detection model 300) shown in Figures 3A and 3B, which is composed of 128 input pixels in the horizontal direction and 128 input pixels in the vertical direction, and the model post-processing means 400 to calculate position information 403 including a detection frame after individual identification for one person and likelihood information 404 after individual identification for a plurality of 3 x 32 x 32 model input images 210 generated, and then inputting the information to the robustness verification means 800.
  • the YOLO model 360 object detection model 300 shown in Figures 3A and 3B, which is composed of 128 input pixels in the horizontal direction and 128 input pixels in the vertical direction
  • the model post-processing means 400 to calculate position information 403 including a detection frame after individual identification for one person and likelihood information 404 after individual identification for a plurality of 3 x 32 x 32 model input images 210 generated, and then inputting the information to the robustness verification means 800.
  • the probability statistics calculation means 810 calculates a likelihood distribution 830 and a likelihood histogram 840 showing the variation associated with the position shift of one person, an average likelihood 801 which is the average value of the effective area of the likelihood, a standard deviation of the likelihood 802 which is the standard deviation of the effective area of the likelihood, a maximum likelihood 803 which is the maximum value of the effective area of the likelihood, and a minimum likelihood 804 which is the minimum value of the effective area of the likelihood.
  • the position information 403 including the detection frame after individual identification and the likelihood information 404 after individual identification the position information 401 including the maximum likelihood detection frame and the maximum likelihood information 402 described later may be input to the robustness verification means 800 for calculation.
  • the likelihood distribution 830, the likelihood histogram 840, the average likelihood 801, the likelihood distribution 830, the likelihood standard deviation 802, the maximum likelihood 803, and the minimum likelihood 804 may be expressed as a percentage (%) with the maximum likelihood value "1" being "100%". In Figs. 10 and 11, the likelihood is expressed as a percentage (%). It is also possible to directly process it as a decimal without converting it to a percentage.
  • the IOU value distribution and statistical results for the IOU value 805 can refer to the position information 621 including the detection frame that is the correct answer, it is also possible to calculate the IOU value distribution and statistical results for the IOU value 805 with the position information 403 including the detection frame after individual identification or the position information 401 including the maximum likelihood detection frame.
  • the frame control information 501 to 503 shown in FIG. 10 is linked to position information 403 including the detection frame after individual identification, which is the output result of the individual identification means 410 for each detected object output from the model post-processing means 400, and likelihood information 404 after individual identification, and may be used when calculating the analysis results in the probability statistics calculation means 810.
  • likelihood distribution 832 was calculated using frame control information 502 for model input image 232 of reference size (actual size) shown in Figure 9
  • likelihood distribution 833 was calculated using frame control information 503 for model input image 233 enlarged by 30% shown in Figure 9.
  • Likelihood distributions 831, 832, and 833 shown in Figure 10 are displayed in shades ranging from white (equivalent to 0% likelihood) to black (100% likelihood) according to the level of likelihood (%) for the fluctuation of the position (in pixels) where a person is present on the screen, according to white to black shade bar 806.
  • the likelihood distributions 831, 832, and 833 indicate that the stronger the black level is, the higher the likelihood is, and conversely, the stronger the white level is, the lower the likelihood is.
  • M, N, J, and K which are the frame control information 500 of the position shift function 220 when analyzing a still image
  • M and N which are the settings for the pixel steps in the horizontal and vertical directions
  • M and N may be set to different values in the horizontal and vertical directions.
  • Setting M and N to small values has the advantage of enabling detailed verification, but also has the disadvantage of increasing the calculation processing time. It is desirable to set the processing parameters for J number of horizontal shifts and K number of vertical shifts to appropriate values that allow verification of position fluctuations, depending on the structure of the object detection model 300.
  • the likelihood histogram 841 shown in FIG. 11 is a normalized frequency (total frequency is 1.0) of the likelihood (%) calculated by the probability statistical calculation means 810 for the likelihood distribution 831 shown in FIG. 10.
  • the statistical result 811 displays the average likelihood (%), the standard deviation (%) of the likelihood, the maximum likelihood (%), and the minimum likelihood (%) for the likelihood distribution 831.
  • the likelihood 851 of the conventional method displays the likelihood calculated at a pinpoint of the model input image 231, which is the reference image for the position shift shown in FIG. 9.
  • the likelihood histograms 842 and 843, the statistical results 812 and 813, and the likelihoods 852 and 853 of the conventional method shown in FIG. 11 correspond to the likelihood distributions 832 and 833 shown in FIG. 10, respectively.
  • the average likelihood (%) in the statistical results 811, 812, and 813 is an index for verifying the average detection accuracy and detection performance with respect to fluctuations due to position on the screen, and the higher the average likelihood (%), the higher the performance of the object detection model 300 including the model learning dictionary 320.
  • the standard deviation (%) of the likelihood is an index showing the variation in the likelihood with respect to fluctuations due to position on the screen, and the smaller the average likelihood (%), the higher the stability of the object detection model 300 including the model learning dictionary 320.
  • the standard deviation (%) of the likelihood is large, there may be a potential problem with the object detection model 300 itself, but rather, it is considered that the learning of the model learning dictionary 320 with respect to the detected object position on the screen is insufficient.
  • the detection target is a single person, but if there are multiple detection targets or multiple objects of classes other than people, the likelihood distribution and its statistical results, the IOU value distribution and its statistical results, and the class discrimination distribution and its statistical results may be calculated for each detection target.
  • Figures 10 and 11 which show the results of verification of still images calculated by the object detection device according to embodiment 1 of the present invention
  • the example of the verification method described in this example is a verification result assuming a case where there are limitations on the mounting area and power consumption of electronic circuits as a means for operating the YOLO model 360 in order to make cameras for object detection smaller, more energy-efficient, and less expensive, or where the image size input to the YOLO model 360 must be smaller than the original recommended input image size of the YOLO model 360 due to limitations on memory capacity, limitations on the performance of arithmetic processors such as the installed DSP (digital signal processor), etc., and this does not necessarily occur with the various recommended variations of the YOLO model 360.
  • DSP digital signal processor
  • the specific grid-like patterns seen in the likelihood distributions 831 and 832 are characterized by a pattern of about 8 pixels square, and the specific grid-like pattern seen in the likelihood distribution 833 is characterized by a pattern of about 16 pixels square.
  • One of the factors that cause the characteristics of these patterns to differ is considered to be the difference depending on the size of the detected object, whether it is detected in the second detection layer 362 (grid cells 8 ⁇ 8) or the third detection layer 363 (grid cells 16 ⁇ 16) of the YOLO model 360 shown in FIG. 3A. It is considered that the likelihood distributions 831 and 832 on the side where the size of the person to be detected is small are mainly the detection results of the third detection layer 363. Also, it is considered that the likelihood distribution 830 on the side where the size of the person to be detected is large are mainly the detection results of the second detection layer 362.
  • Figs. 3A and 3B show an example in which the grid cells of the second detection layer 362 are 8 x 8 when the horizontal pixel count Xi of the model input image 255 is defined as 128 pixels and the vertical pixel count Yi is defined as 128 pixels.
  • the area is divided into grid cells of an arbitrary size to simultaneously detect the position of an object and identify the class (classification) the class, and Pr(Classi
  • Object) 315 which is the conditional class probability
  • the present invention proposes improving the inference performance that is effective for videos in which images change continuously by improving the model pre-processing means 200 and the model post-processing means 400.
  • This approach is more effective in remedying the decline in inference accuracy caused by fluctuations in the position and size of the object to be detected, which depends on the structure of the detection layer itself, even when there are multiple detection layers in a neural network that includes a DNN object detection model, making it possible to more reliably improve object detection capabilities and class identification capabilities.
  • the above-mentioned means and methods for improving inference performance in response to issues arising from the structure and algorithms of the object detection model 300 often fail to resolve cases where the versatility and robustness of the model learning dictionary 320 to various variable conditions is insufficient. Therefore, in addition to a method for determining whether the model learning dictionary 320 is incomplete and a method for determining how to strengthen it, the phenomenon of likelihood reduction due to the size of the detected object and the lattice pattern will be examined in detail using FIG. 11.
  • the YOLO model 360 used in this example is the version before the improvement.
  • the likelihood (%) 851, 852, and 853 of the conventional method which correspond to the likelihood calculated by the conventional object detection device, the likelihood changes to 70.12%, 49.27%, and 94.45% as the person size increases.
  • the likelihood (%) 852 of the conventional method which is the reference size, is 49.27%, which is a much lower likelihood than the likelihood (%) 851 of the conventional method when the person is reduced by 30%.
  • the model learning dictionary 320 is insufficiently learned for a person of the reference size, and unnecessary additional learning may be performed.
  • the likelihood (%) of 70.12% out of 851 for the conventional method when reduced by 30% is considered a passing grade, and by not carrying out additional learning that should have been done, it is possible that the versatility and robustness of the model learning dictionary 320 will not be sufficiently enhanced.
  • the likelihood histograms 841, 842, and 843 show at what level the likelihood of the likelihood distributions 831, 832, and 833 in FIG. 10 exists. It can be considered that the performance is better when the occurrence frequency is concentrated at the right end where the likelihood is high. Also, it can be considered that the variation, that is, the narrower the range of likelihood on the horizontal axis, the more stable it is. As far as the likelihood histograms 841, 842, and 843 are concerned, it can be seen that the likelihood (%) is distributed in order of increasing person size, unlike the likelihoods (%) 851, 852, and 853 of the conventional method.
  • the results of the likelihoods (%) 851, 852, and 853 of the conventional method are due to fluctuations in the position of the person in the image, which depend on a specific lattice pattern that is thought to be generated due to the structure and algorithm of the neural network including the DNN of the object detection model, causing blurring in the detection results.
  • the development goal of the model learning dictionary 320 is to achieve an average likelihood (%) of 70% or more
  • the threshold for the average likelihood (%) is set to 70%
  • the standard deviation (%) of the likelihood that is 10% or more is checked, people of the standard size that exceed 10% and people reduced by 30% are extracted as targets.
  • the model learning dictionary 320 needs to be strengthened against the fluctuation of the position on the screen for objects corresponding to a person of the standard size and a person reduced by 30%. Furthermore, by referring to other verification results such as the likelihood distributions 831 and 832 and the histograms 811 and 812, it is possible to recognize that there is a possibility of a potential decrease in likelihood depending on the configuration and algorithm of the DNN described above, and therefore it is necessary to improve the model or algorithm, or to take measures to improve the likelihood by improving the inference means and methods as described above. Similarly, the maximum likelihood (%) and the minimum likelihood (%) can also be used as materials for various judgments.
  • the minimum likelihood threshold is set to 30%, for a person with a reference size of 30% or less and a person reduced by 30%, if the object position stops at that position, there is a risk that it will become impossible to detect, and there is a high possibility that it cannot be avoided by simply re-learning the model learning dictionary. Therefore, from the perspective of the usefulness and safety of the object detection device, it is considered that measures to improve the likelihood by improving the inference means and methods as described above are essential.
  • the likelihood distribution 834 is displayed by coloring it in shades ranging from white (equivalent to 0% likelihood) to black (100% likelihood) according to the level of likelihood (%) for the fluctuation of the position (in pixels) where a person is present on the screen according to the white to black shade bar 806.
  • the upper side of the likelihood distribution 834 i.e., the area 827 surrounded by a dotted line, is an area with a stronger white level and lower likelihood than other areas.
  • the area 827 surrounded by a dotted line may be considered to indicate the case where a person is present in the area 828 surrounded by a dotted line that spreads to the lower right side of the center of the person in the model input image 826.
  • a specific lattice pattern due to the algorithm and structure of the neural network including the DNN model of the object detection model described above can also be observed, it can be seen that the area surrounded by a dotted line has a wide area with a particularly low likelihood. Therefore, when the person in the model input image is located in the area surrounded by a dotted line 828, it can be confirmed that the ability of object detection is low, and it is possible to realize that strengthening the model learning dictionary 320 is essential.
  • the strengthening through learning can be efficiently performed by the dictionary learning means 600 of embodiment 2 described below, and the versatility and robustness of the model learning dictionary 320 against fluctuations due to the position, including the detected object and background, can be improved.
  • the detection target is a single person, but if there are multiple detection targets or multiple objects of classes other than people, the likelihood distribution and its statistical results, the IOU value distribution and its statistical results, and the class discrimination distribution and its statistical results may be used for each detection target to identify targets to be strengthened in the model learning dictionary 320. Furthermore, issues with the object detection model 300 may be extracted. Furthermore, the versatility and robustness of the model learning dictionary 320 may be strengthened by the dictionary learning means 600 described below, based on this extracted information.
  • the object detection model 300 may also be applied to a DNN model such as the same one-stage type SDD. It may also be applied to a two-stage type DNN model such as EfficientDet, which processes object position detection and class identification in two stages. It may also be applied to an object detection model or machine learning model that does not use a neural network.
  • a DNN model such as the same one-stage type SDD. It may also be applied to a two-stage type DNN model such as EfficientDet, which processes object position detection and class identification in two stages. It may also be applied to an object detection model or machine learning model that does not use a neural network.
  • model pre-processing means 200 By analyzing the inference performance for still images and the robustness and versatility using the image processing means 100, model pre-processing means 200, object detection model 300, and individual identification means 410 and robustness verification means 800 of model post-processing means 400 described in embodiment 1 so far, it has been possible to first extract issues arising from the structure and algorithms of neural networks such as the DNN model of object detection model 300, and to establish means and methods for improving inference performance for moving images using the position shift amount 510 of frame control information 500, the position shift function 220 of model pre-processing means 200, the individual identification means 410, image selection means 450, and detection frame correction means 460 of object detection model 300 and model post-processing means 400, and to recognize their usefulness and necessity.
  • neural networks such as the DNN model of object detection model 300
  • FIG. 13A shows the likelihood distribution calculated by the same analysis method as described in FIG. 10 and FIG. 12 when a person is present in the reference image 1a701 of FIG. 13B, and is displayed in shades ranging from white (equivalent to 0% likelihood) to black (100% likelihood) according to the level of likelihood (%) for the fluctuation of the position (in pixels) where the person A703 is present on the screen, according to the white to black shade bar 806, and the likelihood distribution 700 shows an enlarged part of the grid pattern.
  • the object detection model 300 performs inference using a DNN model in which the grid cells of the first detection layer 361 are 4 ⁇ 4, the grid cells of the second detection layer 362 are 8 ⁇ 8, and the grid cells of the third detection layer 363 are 16 ⁇ 16 in the YOLO model 360 shown in FIG. 3A.
  • the position shift function 220 of the model preprocessing means 200 selects the position shift amount 510 of the frame control information 500 to be referenced when generating the first position shifted image 1b702 from the reference image 1a701 shown in FIG. 13B.
  • the position shift amount 510 of the frame control information 500 may be characterized in that it is determined by a pixel value approximating or equal to a half pixel value of the number of pixels in the vertical and horizontal directions of the input image of the neural network model including the DNN model of the object detection model 300 divided by the horizontal and vertical grid cell size for each of one or more detection layers of the neural network model.
  • the grid pattern in which the specific likelihood is partially reduced strongly indicates a size of about 16 pixels horizontally and vertically, and is considered to most strongly reflect the result inferred by the second detection layer 362 having 8x8 grid cells.
  • the likelihood 706 of the likelihood information after individual identification of the person A703 in the reference image 1a701 in Fig.
  • the likelihood 707 of the likelihood information after individual identification of person A703 in the first position shifted image 1b702 in FIG. 13B is 95%, which corresponds to the likelihood of 707 in FIG. 13A of 95%.
  • the likelihood 706 (39%) of the reference image 1a701 is at a position where the likelihood decreases when the likelihood decreases in a specific grid pattern as shown in the likelihood distribution 700 in FIG.
  • the likelihood 707 (95%) of the first position shifted image 1b702 is not affected by the decrease in likelihood because it is located at a position shifted by 8 pixels in the horizontal and vertical directions, which corresponds to about 1/2 of the specific grid pattern of about 16 pixels. Therefore, in this example, setting the horizontal position shift amount (M) and vertical position shift amount (N) of the position shift amount 510 of the frame control information 500 to 8, respectively, is useful in relieving the decrease in likelihood.
  • the blank area 790 where no effective image exists may be filled uniformly with a single color equal to the average luminance level of the effective image to generate the image.
  • the position information 301 including the detection frame of the reference image 221 before correction for each detected object which is the inference result of the object detection model 300, the likelihood information 302 before correction of the reference image 221, the position information 301 including the detection frame of the first position shift image 222 before correction, and the likelihood information 302 before correction of the first position shift image 222 are input to the individual identification means 410 of the model post-processing means 400 to perform individual identification. Then, the likelihood information 404 after individual identification of the reference image 221 and the likelihood information 404 after individual identification of the first position shift image 222 are compared with each other to select the input image and inference result that are the maximum, and output the inference result for each frame.
  • the detection frame correction means 460 outputs the position information including the detection frame that has been subjected to a position shift in the opposite direction to that at the time of generation by the model pre-processing means 200 in accordance with the position shift amount 510 of the frame control information 500.
  • the frame rate between each frame may be determined based on the sum of the inference processing times of two images, the reference image 221 and the first position shifted image 222, by the object detection model 300.
  • the reference image 2a and the first position shifted image 2b are generated for frame 2
  • the reference image 3a and the first position shifted image 3b are generated for frame 3
  • the reference image 4a and the first position shifted image 4b are generated for frame 4.
  • the reference image 1a701 and the first position shift image 1b702 generated for frame 1 are input to the object detection model 300, which outputs a 1a detection result 708 which is an inference result for the reference image 1a701 and a 1b detection result 709 which is an inference result for the first position shift image 1b702.
  • These output results correspond to the position information 301 including the pre-correction detection frame including the pseudo output and the pre-correction likelihood information 302.
  • the 2a detection result and the 2b detection result are calculated for frame 2
  • the 3a detection result and the 3b detection result are calculated for frame 3
  • the 4a detection result and the 4b detection result are calculated for frame 4.
  • the 1a detection result 708 and the 1b detection result 709 calculated for frame 1 are identified by the individual identification means 410 of the model post-processing means 400 as a 1a identification result 710 unique to each detected object for the reference image 1a701 and a 1b identification result 711 for the first position shift image 1b702, and are output.
  • These output results include position information 403 including the detection frame after individual identification and likelihood information 404 after individual identification, and correspond to position information 704 and 705 including the detection frame after individual identification in FIG.
  • the image selection means 450 of the model post-processing means 400 compares the likelihood 706 (39%) for the reference image 1a 701 with the likelihood 707 (95%) for the first position shifted image 1b 702 to select the maximum likelihood 707 (95%) and the first position shifted image 1b 702. Therefore, as the maximum likelihood output result, which is the result of likelihood rescue, the maximum likelihood information 402 outputs the likelihood 707 (95%) and class identification information for the first position shifted image 1b702.
  • the position information 401 including the maximum likelihood detection frame since the first position shifted image 1b702 side is selected by the image selection means 450, the position information 705 including the detection frame after individual identification shown in FIG. 13B is shifted by the amount of position shift applied to the original reference image 1a701.
  • the image selected by the image selection means 450 is the reference image 1a 701
  • the 1a identification result 710 is output as it is as the position information 401 including the maximum likelihood detection frame and the maximum likelihood information 402.
  • the image selection means 450 and the detection frame correction means 460 calculate the position information 401 including the maximum likelihood detection frame and the maximum likelihood information 402 for frames 2 to 4.
  • the position information 401 including the maximum likelihood detection frame and the maximum likelihood information 402 may be input to the image output control means 110 and the robustness verification means 800.
  • the position information 401 including the maximum likelihood detection frame is, for example, information including the center coordinates, horizontal width, and vertical height of the detection frame
  • the maximum likelihood information 402 is, for example, the likelihood and class identification information indicating the detection accuracy.
  • this series of frame control information 500, model pre-processing means 200, object detection model 300, and model post-processing means 400 makes it possible to recover the likelihood and suppress variation in inference results even when the likelihood is reduced due to a specific lattice pattern resulting from the structure or algorithm of a neural network such as the DNN model of the object detection model 300.
  • a neural network such as the DNN model of the object detection model 300.
  • FIG. 14A shows the likelihood distribution calculated by the same analysis method as described in FIG. 10 and FIG. 12 when person A726 and person B727 are present in the reference image 1a723 in FIG. 14B, and is displayed in shades ranging from white (equivalent to 0% likelihood) to black (100% likelihood) according to the level of likelihood (%) for the fluctuation of the position (in pixels) where the person is present on the screen according to a white to black shade bar 806.
  • the likelihood distribution 721 shows an enlarged portion of the grid pattern of the likelihood distribution for person A726.
  • the likelihood distribution 722 shows an enlarged portion of the grid pattern of the likelihood distribution for person B727.
  • the number of horizontal pixels Xi of the reference image 1a723, which is the likelihood model input image is set to 128, and the number of vertical pixels Yi is set to 128.
  • the object detection model 300 performs inference using a DNN model in the YOLO model 360 shown in FIG. 3A, in which the grid cells of the first detection layer 361 are 4 ⁇ 4, the grid cells of the second detection layer 362 are 8 ⁇ 8, and the grid cells of the third detection layer 363 are 16 ⁇ 16.
  • the position shift amount 510 of the frame control information 500 is selected to be referenced when generating the first position shifted image 1b724 and the second shifted image 1c725 from the reference image 1a723 shown in FIG. 14B using the position shift function 220 of the model preprocessing means 200 according to the embodiment described above.
  • the type of the position shift amount 510 of the frame control information 500 may be determined as a 1/2 pixel value or a pixel value close to the value obtained by dividing the horizontal and vertical grid cell size for one or more detection layers of the neural network model including the DNN model of the object detection model 300, and may be characterized in that the position shift amount 510 corresponding to the detection layer having the highest detection accuracy or detection frequency depending on the size of the detection object is applied by the model pre-processing means 200 and the model post-processing means 400 in that order.
  • the lattice pattern in which the specific likelihood is partially reduced strongly indicates a size of about 16 pixels horizontally and vertically as shown in the likelihood distribution 721 in FIG.
  • the result inferred by the second detection layer 362 having 8 ⁇ 8 grid cells is most strongly reflected. Since the person B727 is classified as a small object size, the grid pattern in which the specific likelihood is partially decreased strongly indicates a size of about 8 pixels horizontally and vertically as shown in the likelihood distribution 722 in Fig. 14A, and it is considered that the result of inference by the third detection layer 363 in which the grid cell is 16 x 16 is most strongly reflected.
  • the type of the position shift amount 510 may be selected by narrowing down to the detection layer effective for inference.
  • the likelihood 737 of the likelihood information after individual identification of the person B727 of the reference image 1a723 of FIG. 14B is 93%, which corresponds to the likelihood of 737 93% in FIG. 14A.
  • the likelihood 735 of the likelihood information after individual identification of the person A726 of the first position shift image 1b724 of FIG. 14B is 96%, which corresponds to the likelihood of 735 96% in FIG. 14A.
  • the likelihood 734 (39%) of the reference image 1a723 is at a position where the likelihood decreases in a specific grid pattern as shown in the likelihood distribution 721 of FIG.
  • the likelihood 735 (96%) of the first position shifted image 1b724 is not affected by the likelihood decrease because it is located at a position shifted by 4 pixels in the horizontal and vertical directions.
  • the likelihood 736 (95%) of the second position shifted image 1c725 is not affected by the likelihood decrease because it is located at a position shifted by 8 pixels in the horizontal and vertical directions, which corresponds to about 1/2 of the specific grid pattern of about 16 pixels.
  • the likelihood 737 (93%) of the reference image 1a723 is not affected by the likelihood decrease because it is located at a position shifted by 4 pixels in the horizontal and vertical directions, which corresponds to about 1/2 of the grid pattern from the position where the likelihood decreases in a specific grid pattern of about 8 pixels as shown in the likelihood distribution 722 of FIG. 14A.
  • the likelihood 738 (57%) of the first position shifted image 1b724 is reduced because it is located at a position where the likelihood decreases when the likelihood decreases in a specific grid pattern of about 8 pixels.
  • the likelihood 739 (94%) of the second position shifted image 1c725 is not affected by the decrease in likelihood because it is located at a position shifted by a further 4 pixels in the horizontal and vertical directions. Therefore, in this example, it is useful to remedy the decrease in likelihood by setting the first horizontal position shift amount (M) and vertical position shift amount (N) of the position shift amount 510 of the frame control information 500 to 4, and the second horizontal position shift amount (P) and vertical position shift amount (Q) to 8.
  • the blank areas 791 and 792 which are generated by processing and in which no effective image exists, may be filled uniformly with a single color equal to the average luminance level of the effective image to generate the image.
  • position information 301 including the detection frame before correction of the reference image 221 for each detected object which is the inference result of the object detection model 300, and likelihood information 302 before correction of the reference image 221
  • position information 301 including the detection frame before correction of the second position shift image 223 and likelihood information 302 before correction of the second position shift image 223 are input to the individual identification means 410 of the model post-processing means 400 to perform individual identification
  • likelihood information 404 after individual identification of the reference image 221 and likelihood information 302 after the first position shift image 222 are input to the individual identification means 410 of the model post-processing means 400.
  • the model may also be characterized by comprising an image selection means 450 that compares likelihood information 404 after individual identification of the image 222 with likelihood information 404 after individual identification of the second position shifted image 223, selects one input image and inference result that is the maximum from among them, and outputs the result for each frame, and a detection frame correction means 460 that outputs position information including a detection frame that has been shifted in position in the opposite direction to when it was generated by the model preprocessing means 200 in accordance with the position shift amount 510 of the frame control parameter 500 when the image selection means 450 selects the inference result of the first position shifted image 222 or the inference result of the second position shifted image 223.
  • the frame rate between each frame may be determined based on the sum of the inference processing times of three images, the reference image 221, the first position shifted image 222, and the second position shifted image 223, by the object detection model 300.
  • the reference image 2a, the first position shifted image 2b, and the second position shifted image 2c are generated for frame 2
  • the reference image 3a, the first position shifted image 3b, and the second position shifted image 3c are generated for frame 3.
  • the reference image 1a723, the first position-shifted image 1b724, and the second position-shifted image 1c725 generated for frame 1 are input to the object detection model 300, which outputs a 1a detection result 740 which is an inference result for the reference image 1a723, a 1b detection result 741 which is an inference result for the first position-shifted image 1b724, and a 1c detection result 742 which is an inference result for the second position-shifted image 1c725.
  • These output results correspond to position information 301 including a pre-correction detection frame including a pseudo output, and pre-correction likelihood information 302.
  • the 1a detection result 1740, 1b detection result 741, and 1c detection result 742 calculated for frame 1 are identified by the individual identification means 410 of the model post-processing means 400 into a 1a identification result 743 unique to each detected object for the reference image 1a723, a 1b identification result 744 for the first position shift image 1b724, and a 1c identification result 745 for the second position shift image 1c725, and output.
  • These output results include position information 403 including the detection frame after individual identification for each detected object and likelihood information after individual identification 404, and correspond to position information 728, 729, and 730 including the detection frame after individual identification for person A726 in Fig. 14B, and likelihoods 734 (39%), 735 (96%), and 736 (95%) of the likelihood information after individual identification for person A726, and correspond to position information 731, 732, and 733 including the detection frame after individual identification for person B727, and likelihoods 737 (93%), 738 (57%), and 739 (94%) of the likelihood information after individual identification for person B727.
  • the image selection means 450 of the model post-processing means 400 compares the likelihood 734 (39%) for the reference image 1a723, the likelihood 735 (96%) for the first position shifted image 1b724, and the likelihood 736 (95%) for the second position shifted image 1c725 for the person A726, and selects the maximum likelihood 735 (96%) and the first position shifted image 1b724.
  • the image selection means 450 of the model post-processing means 400 compares the likelihood 737 (93%) for the reference image 1a723, the likelihood 738 (57%) for the first position shifted image 1b724, and the likelihood 739 (94%) for the second position shifted image 1c725, and selects the maximum likelihood 739 (94%) and the second position shifted image 1c725. Therefore, as a maximum likelihood output result that is a result of likelihood rescue, the maximum likelihood information 402 of person A726 outputs a likelihood 735 (96%) and class identification information for the first position shifted image 1b724. The maximum likelihood information 402 of person B727 outputs a likelihood 739 (94%) and class identification information for the second position shifted image 1c725.
  • the first position shifted image 1b724 side is selected by the image selection means 450, and therefore the position information 729 including the detection frame after individual identification shown in FIG. 14B is shifted by the amount of position shift applied to the original reference image 1a723.
  • the image selection means 450 is the reference image 1a723, the 1a identification result 743 is output as it is as the position information 401 including the maximum likelihood detection frame and the maximum likelihood information 402.
  • the image selection means 450 and the detection frame correction means 460 calculate the position information 401 including the maximum likelihood detection frame and the maximum likelihood information 402 for frames 2 to 3.
  • this series of frame control information 500, model pre-processing means 200, object detection model 300, and model post-processing means 400 makes it possible to recover the likelihood in a manner appropriate to the size of the detected object, and to suppress variation in the inference results, even when the likelihood is reduced in a specific lattice pattern resulting from the structure or algorithm of a neural network such as the DNN model of the object detection model 300. Therefore, when there are multiple detection layers in the object detection model, it is possible to recover the reduced inference accuracy due to fluctuations in the position and size of the detected object that depend on the structure of the model itself that detects objects in the image, and improve object detection capabilities and class identification capabilities.
  • the average value of the multiple position shift amounts 510 may be used as the position shift amount 510.
  • two types of position shift amounts 510 depending on the grid cells of two detection layers are prepared as candidates to suit person A 726 and person B 727 with different object sizes as described in FIG. 14, due to the capacity limitations of the hardware, software, and arithmetic processor for operating the object detection model 300, inference processing can only be performed for up to two images per frame as described in FIG.
  • the position shift amount may be set to a value that is expected to have a large relief effect.
  • the position shift amount may be set to the smallest value among the multiple types of position shift amount candidates.
  • detection frame correction means 460 may be provided that outputs position information including a detection frame that has been subjected to a position shift in the opposite direction to the generation by model pre-processing means 200 in accordance with position shift amount 510 of frame control information 500. This corresponds to a case where a third position shift image or the like is generated to perform likelihood rescue in addition to the description of FIG.
  • the optimal position shift amount can be applied to each detection layer, further improving the remedy effect against the decrease in inference accuracy due to fluctuations in the position and size of the detected object, making it possible to more reliably improve object detection and class identification capabilities.
  • object detection must be performed on multiple images in one frame, there may be effects such as a lack of low latency and real-time performance, so it is desirable to apply an appropriate remedy method depending on the capabilities of the hardware, software, calculation processor, etc.
  • the model pre-processing means 200 inputs the reference image 221 of the nth frame (n is any multiple of 2 including 0) as is to the object detection model 300 in accordance with the position shift amount 510 of the frame control information 500, and generates a first position-shifted image 222 by shifting the position of the reference image 221 of the nth frame by M pixels (M is any decimal number) in the horizontal direction and N pixels (N is any decimal number) in the vertical direction, and inputs this to the object detection model 300.
  • M pixels is any decimal number
  • N pixels is any decimal number
  • the object detection model 300 infers the object position, class identification, and likelihood alternately for each frame for the reference image 221 of the nth frame and the first position-shifted image 222 of the nth frame output from the model pre-processing means 200, and outputs position information 301 including the detection frame before correction of the reference image 221 of the nth frame for each detected object, which are the inference results of the object detection model 300, and likelihood information 302 before correction of the reference image 221, and the n+1th frame
  • the position information 301 including the detection frame before correction of the first position shifted image 222 and the likelihood information 302 before correction of the first position shifted image 222 are input to the individual identification means 410 of the model post-processing means 400 to perform individual identification, and then the image selection means 450 compares the likelihood information 404 after individual identification of the reference image 221 in the nth frame with the likelihood information 404 after individual identification of the first position shifted image 222 in the n+1th frame, selects the input image and inference result which are maximum,
  • the detection frame correction means 460 may be provided to output position information including a detection frame that has been position shifted in the opposite direction to that at the time of generation by the model preprocessing means 200 in accordance with the position shift amount 510 of the frame control parameters 500.
  • Figure 15A shows the likelihood distribution calculated using an analysis method similar to that described in Figures 10 and 12 when person A753 is present in reference image n751 of nth frame fn (n is a multiple of 2) in Figure 15B, and is displayed in shades ranging from white (equivalent to 0% likelihood) to black (100% likelihood) according to the level of likelihood (%) for the fluctuation of the positions (in pixels) where persons A753 and 754 are present on the screen, according to a white to black shading bar 806, and the likelihood distribution 750 is displayed by enlarging a portion of the grid pattern.
  • the number of horizontal pixels Xi of the reference image n751 which is the model input image
  • the number of vertical pixels Yi is set to 128.
  • the object detection model 300 performs inference using a DNN model in the YOLO model 360 shown in FIG. 3A, in which the first detection layer 361 has 4 ⁇ 4 grid cells, the second detection layer 362 has 8 ⁇ 8 grid cells, and the third detection layer 363 has 16 ⁇ 16 grid cells.
  • the position shift function 220 of the model preprocessing means 200 selects the position shift amount 510 of the frame control information 500 to be referenced when generating a first position shifted image sn+1 752 from the reference image n+1 of frame fn+1, which is the frame next to frame fn shown in FIG. 15B.
  • the likelihood 757 of the likelihood information after individual identification of the person A753 of the reference image n751 of FIG. 15B calculated by the object detection model 300 and the individual identification means 410 of the model post-processing means 400 is 39%, which corresponds to the likelihood of 757 of 39% in FIG. 15A.
  • the likelihood 758 of the likelihood information after individual identification of the person A754 of the first position shift image sn+1752 of FIG. 15B is 95%, which corresponds to the likelihood of 758 of 95% in FIG. 15A.
  • the likelihood 757 (39%) of the reference image n 751 of frame fn is at a position where the likelihood decreases when the likelihood decreases in a specific grid pattern as shown in the likelihood distribution 750 of FIG.
  • the likelihood 758 (95%) of the first position shift image sn+1 752 of frame fn+1 is not affected by the decrease in likelihood because it is located at a position shifted by 8 pixels in the horizontal and vertical directions, which corresponds to about 1/2 of the specific grid pattern of about 16 pixels. Therefore, in this example, setting the horizontal position shift amount (M) and vertical position shift amount (N) of the position shift amount 510 of the frame control information 500 to 8, respectively, is useful in relieving the decrease in likelihood.
  • the blank area 793 where no valid image exists may be filled uniformly with a single color equal to the average luminance level of the valid image to generate the image.
  • the frame rate between each frame may be determined based on the inference processing time of one image by the object detection model 300.
  • first position shifted images sn+3, sn+5, and sn+7 are generated for the reference images n+3, n+5, and n+7, respectively.
  • frames fn, fn+2, fn+4, and fn+6, which are even-numbered frames no position shift is performed and reference images n751, n+2, n+4, and n+6 are output as they are.
  • Reference image n751 of frame fn and first position-shifted image sn+1752 of frame fn+1 are input to object detection model 300, which outputs n detection result 759, which is an inference result for reference image n751 of frame fn, and sn+1 detection result 760, which is an inference result for first position-shifted image sn+1752 of frame fn+1.
  • n detection result 759 which is an inference result for reference image n751 of frame fn
  • sn+1 detection result 760 which is an inference result for first position-shifted image sn+1752 of frame fn+1.
  • the n+2 detection result, n+4 detection result, and n+6 detection result are calculated for even frames fn+2, fn+4, and fn+6, and the sn+3 detection result, sn+5 detection result, and sn+7 detection result are calculated for odd frames fn+3, fn+5, and fn+7.
  • the n detection result 759 calculated for frame fn and the sn+1 detection result 760 calculated for frame fn+1 are identified by the individual identification means 410 of the model post-processing means 400 as an n identification result 761 unique to each detected object for the reference image n 751 of frame fn and an sn+1 identification result 762 for the first position shift image sn+1 752 of frame fn+1, and are output.
  • These output results include position information 403 including the detection frame after individual identification and likelihood information after individual identification 404, and correspond to position information 755 and 756 including the detection frame after individual identification and likelihood information after individual identification 757 (39%) and 758 (95%).
  • n+2 classification result, n+4 classification result, and n+6 classification result are calculated for even frames fn+2, fn+4, and fn+6, and the sn+3 classification result, sn+5 classification result, and sn+7 classification result are calculated for odd frames fn+3, fn+5, and fn+7.
  • the image selection means 450 of the model post-processing means 400 compares the likelihood 757 (39%) for the reference image n 751 of frame fn with the likelihood 758 (95%) for the first position shifted image sn+1 752 of frame fn+1 using the n classification result 761 calculated for frame fn and the sn+1 classification result 762 calculated for frame fn+1, and selects the maximum likelihood 758 (95%) and the first position shifted image sn+1 752 of frame fn+1. Therefore, as an output result of maximum likelihood, which is the result of likelihood rescue, the maximum likelihood information 402 outputs the likelihood 758 (95%) for the first position shifted image sn+1 752 of frame fn+1 and class classification information.
  • the position information 401 including the maximum likelihood detection frame the first position-shifted image sn+1752 of frame fn+1, which is an odd frame, has been selected by the image selection means 450, and therefore the position information 756 including the detection frame after individual identification shown in Fig. 15B is shifted by the amount of position shift applied to the original reference image n+1 of frame fn+1 and the reference image n751 of frame fn.
  • the n identification result 761 is output as it is as the position information 401 including the maximum likelihood detection frame and the maximum likelihood information 402.
  • the image selection means 450 determines and selects the maximum likelihood using the sn+1 identification result 762 of frame fn+1, which is an odd frame, and the n+2 identification result of even frame fn+2, and then, if the odd frame fn+1 is selected, the detection frame correction means 460 corrects the position information including the detection frame.
  • the image selection means 450 and the detection frame correction means 460 calculate position information 401 including the most likely detection frame and maximum likelihood information 402 based on the inference results of the current frame and the previous frame.
  • the model preprocessing means 200 generates a first position-shifted image 222 from the reference image 221 of the mth frame (m is any multiple of 3 including 0) and the reference image 221 of the m+1th frame in accordance with the position shift amount 510 of the frame control information 500, and generates a second position-shifted image 223 by shifting the position of the reference image 221 of the m+2th frame by P pixels (P is any decimal number) in the horizontal direction and Q pixels (Q is any decimal number) in the vertical direction.
  • the first position shifted image 222 in the first frame and the second position shifted image 223 in the m+2 frame are input to the object detection model 300 in sequence for each frame, and the object detection model 300 infers the object position, class identification, and likelihood for each frame in sequence for the reference image 221 in the mth frame, the first position shifted image 222 in the m+1th frame, and the second position shifted image 223 in the m+2th frame output from the model pre-processing means 200.
  • the individual identification process is performed on each result by the individual identification means 410 of the model post-processing means 400.
  • the image selection means 450 compares the position information 403 including the detection frame after individual identification of the reference image 221 in the mth frame for each detected object and the likelihood information 403 after individual identification of the reference image 221, the position information 403 including the detection frame after individual identification of the first position shifted image 222 in the m+1th frame and the likelihood information 403 after individual identification of the first position shifted image 222, and the position information 403 including the detection frame after individual identification of the second position shifted image 223 in the m+2th frame and the likelihood information 403 after individual identification of the second position shifted image 223, and selects the input image with the largest likelihood information.
  • the detection frame correction means 460 may be provided to output position information including a detection frame that has been shifted in the opposite direction to the generation of the model preprocessing means 200 in accordance with the position shift amount 510 of the frame control information 500.
  • the model pre-processing means 200 inputs the reference image 221 for the rth frame (r is an arbitrary multiple of s (s is an arbitrary integer equal to or greater than 4) including 0) and s-1 position shift images processed from the reference image 221 of each frame for the r+1th frame to the r+s-1th frame into the object detection model 300 in frame order in accordance with the position shift amount 510 in the frame control information 500, and the model post-processing means 40
  • the image selection means 450 selects the maximum input image and inference result from the inference results of the current frame and the past frame s-1 frames ago, and outputs it as the inference result of the current frame.
  • the detection frame correction means 460 may be provided to output position information including a detection frame that has been positionally shifted in the opposite direction to when it was generated by the model preprocessing means 200, in accordance with the position shift amount 510 of the frame control information 500.
  • the optimal position shift amount can be applied to each detection layer, further improving the effect of remedying the decrease in inference accuracy due to fluctuations in the position and size of the object to be detected, making it possible to more reliably improve object detection capabilities and class identification capabilities.
  • the images to be inferred per frame can be limited to one, the processing load during inference of the object detection model can be reduced. Therefore, it is possible to achieve low latency and real-time performance while ensuring the accuracy and performance of object detection, especially when performing object detection on still images, or even when there are restrictions on the performance of the on-board computing processor, etc.
  • the model pre-processing means 200 may be characterized in that, when processing an image to be input to the object detection model 300, including shifting its position, in accordance with the frame control information 500, any blank areas that are generated by the processing and in which no valid image exists are filled uniformly with a single color that is equal to the average luminance level of the valid image to generate an image.
  • the model preprocessing means 200 may have a margin padding function 280 that calculates the average luminance level of valid images and uniformly fills in a single color equal to the average luminance level to generate an image for marginal areas where no valid image exists, which are generated by position shift processing and the like shown in Figs. 8 and 9, 281 to 288 in Figs. 17 and 18 described below, and 790 to 794 in Figs. 13B, 14B, 15B, and 25A, when processing multiple model input images 210 to be input to the object detection model 300.
  • the model preprocessing means 200 may be configured to interpolate the marginal areas with valid image areas present in the output image of the image processing means 100.
  • the marginal areas may be filled with an image that does not affect learning or inference.
  • the probability statistical calculation means 810 of the robust verification means 800 makes it possible to more accurately calculate the likelihood distribution 830 for the position of each detected object, the average likelihood 801 of the effective area of the likelihood, the likelihood histogram 840, the likelihood standard deviation 802, the maximum likelihood 803, the minimum likelihood 804, and the IOU value 805. Therefore, it becomes possible to more accurately enhance the versatility and robustness of the model learning dictionary by the dictionary learning means 600 described later in embodiment 2.
  • the model pre-processing means 200 may have a crop function 240 for cutting out an image at a desired location from the image before the position shift is performed in accordance with the position shift amount 510 of the frame control information 500, a resize function 230 for changing the image size, a tone conversion function 270 for changing the brightness level to a desired value using a contrast correction curve or a tone conversion curve, an aspect ratio change function 265 for changing the aspect ratio, a rotation function 260 for changing the rotation angle, a dewarp function 277 for performing a dewarp process using a distortion correction table 293 or the like, and may be characterized in that the model pre-processing means 200 processes the image in accordance with various parameters of the frame control information 500.
  • the position shift function 220 and the resize function 230 have been described above, so a description thereof will be omitted here.
  • the crop function 240 may be used to cut out a portion that has gone outside the pixel range of the model input image as a result of position shift processing, such as the model input images 220B, 220C, and 220D in FIG. 8, the first position shift image 1b 702 in FIG. 13B, the first position shift image 1b 724 in FIG. 14B, the second position shift image 1c 725, and the first position shift image sn+1 752 in FIG. 15B.
  • the crop function 240 may be used to cut out a portion where the effective pixel range after various functions such as expansion are applied by the resize function 230 of the model preprocessing means 200 goes outside the pixel range of the model input image.
  • the frame control information 500 may be a function that uses parameters indicating the coordinates and range of which pixel range to cut out and where to paste it in the model input image, and executes the affine transformation function 291 and projective transformation function 292 in the image processing processor 290.
  • the screen split function 250 will be described later in the second embodiment.
  • the tone conversion function 270 may be characterized by specifying a contrast correction curve as shown in FIG. 16 or tone conversion curves 274 to 276 as frame control information 500 to generate an image in which the brightness level is changed to an arbitrary value. Note that when changing the brightness level using a contrast correction curve or tone conversion curve, the function may be executed and realized by the image processing processor 290.
  • a reference luminance level image 272 obtained by applying a gradation conversion curve 275 that maintains the state of a reference luminance level image taken on a typical sunny day
  • a low luminance level image 271 obtained by applying a gradation conversion curve 274 that simulates low-illumination rainy or cloudy weather conditions, dawn, dusk, nighttime, and blackout
  • a high luminance level image 273 obtained by applying a gradation conversion curve 276 that simulates high-illumination clear weather conditions, backlight, blown-out highlights, and a photography studio illuminated with strong lights.
  • the robustness verification means 800 may use a probability statistics calculation means 810 to calculate various analysis results such as a likelihood distribution 830.
  • model pre-processing means 200 By equipping these model pre-processing means 200 with a tone conversion function 270, it is possible to increase the effectiveness of likelihood rescue and enhance the versatility and robustness of the model learning dictionary in response to changes in the brightness levels of the detected object and background due to weather conditions, the time of day when the image was taken, and the illuminance conditions of the shooting environment.
  • the aspect ratio change function 265 may be characterized by using the aspect ratio as the frame control information 500 to generate an image with a changed aspect ratio.
  • the function may be realized by executing an affine transformation function 291 or a projective transformation function 292 in the image processing processor 290.
  • FIG. 17 shows a case where three types of images with changed aspect ratios are generated for one person in a reference model input image 267: a model input image 266 vertically reduced by 30% to have an aspect ratio simulating a child of a certain age or a plump person, and a model input image 268 horizontally reduced by 30% to have an aspect ratio simulating a slender person.
  • likelihood rescue may be performed by the position shift function 220 of the model pre-processing means 200, the object detection model 300, and the model post-processing means 400 as described above.
  • various analysis results such as likelihood distribution 830 may be calculated by the probability statistics calculation means 810 of the robustness verification means 800.
  • the rotation function 260 may be characterized by using an angle as the frame control information 500 to generate an image with a changed rotation angle.
  • the function may be realized by executing an affine transformation function 291 or a projective transformation function 292 in the image processing processor 290.
  • FIG. 18 shows the case where images are generated with three different rotation angles for one person in model input image 262, which is the reference angle: model input image 261 rotated 45° to the left to mimic different camera mounting positions and the person's pose, and model input image 263 rotated 45° to the right to mimic different camera mounting positions and the person's pose.
  • the reference image 221 processed by the rotation function 260 of the model pre-processing means 200 may be subjected to likelihood rescue by the position shift function 220 of the model pre-processing means 200, the object detection model 300, and the model post-processing means 400 as described above. Furthermore, various analysis results such as a likelihood distribution 830 may be calculated by the probability statistics calculation means 810 of the robustness verification means 800.
  • model preprocessing means 200 make it possible to absorb or mitigate various variable conditions when acquiring images, and furthermore, to process the target object from the acquired image into a state suitable for detection, thereby making it possible to better alleviate the decrease in inference accuracy caused by fluctuations in the position and size of the detected object that depend on the structure of the model itself that detects objects in the image.
  • the frame information holding means 470 and frame information interpolation means 480 are used to hold the inference results or likelihood recovery results for each detected object in chronological order for the results of likelihood recovery performed by the individual identification means 410, image selection means 450, and detection frame correction means 460 of the model post-processing means 400, and to perform information interpolation, elimination of abnormal information, and future predictions based on the context of the time series, as will be described with reference to Figures 19, 20, and 21.
  • the model post-processing means 400 has a frame information holding means 470 that holds the position information 401 including the maximum likelihood detection frame and the maximum likelihood information 402, which are the inference results for each detected object in each frame that have been determined to be the maximum likelihood and output by the individual identification means 410, the image selection means 450, and the detection frame correction means 460, in a storage memory 471 for the current frame ft and past frames from ft-1 to ft-s (s is an arbitrary integer) for the maximum number of detected objects V (V is an arbitrary integer), and the frame information holding means 470 holds the position information 401 including the maximum likelihood detection frame and the maximum likelihood information 402 in the current frame ft.
  • the position information 401 including the maximum likelihood detection frame and the maximum likelihood information 402 recorded in the storage memory 471 of the oldest frame ft-s are erased, the position information 401 including the maximum likelihood detection frame and the maximum likelihood information 402 recorded in the storage memory 471 from the ft frame to the ft-(s-1) frame are slid by one frame from the past ft-1 frame to the storage memory 471 of the ft-s frame and re-recorded, and the position information 401 including the maximum likelihood detection frame and the maximum likelihood information 402 of the current frame ft are recorded in the storage memory 471 of the current frame ft.
  • the frame information holding means 470 has a frame information interpolation means 480 that, when there is a gap in the position information 401 including the maximum likelihood detection frame and the maximum likelihood information 402 in the storage memory 471 of the detected object of an arbitrary frame, interpolates from the position information 401 including the maximum likelihood detection frame and the maximum likelihood information 402 in the storage memory 471 of the previous and next frames to record new position information 401 including the maximum likelihood detection frame and maximum likelihood information 402 in the storage memory 471 of the frame, and the frame information interpolation means 480 may use a Newton backward interpolation method 481 or a moving average method, etc., and the position information 401 including the maximum likelihood detection frame may include information on the center coordinates 472, height 473, and width 474 of the detection frame, and the maximum likelihood information 402 may include likelihood and class identification information indicating the reliability of detection.
  • the frame information interpolation means 480 may use a Newton backward interpolation method 481 or a moving average method, etc.
  • the frame information interpolation means 480 may have a motion vector amount calculation means 483 that calculates a motion vector amount 475 from the center coordinates 472 of the position information 401 including the maximum likelihood detection frame of the storage memory 471 of past frames ft-1 to ft-s of the frame information holding means 470 and records it in the storage memory 471 for each detected object in each frame, and may further have a motion vector prediction calculation means 484 that predicts the motion vector amount 475 for each detected object in a future frame and predicts the center coordinates 472 of the position information 401 including the maximum likelihood detection frame.
  • the prediction method of the motion vector prediction calculation means 484 may be a Newton backward interpolation method 481 or a moving average method based on the inter-frame difference information of the center coordinates 472 of the position information 401 including the maximum likelihood detection frame of the past frames.
  • the frame information interpolation means 480 has a distance coefficient calculation means 482 that calculates a distance coefficient 476 from the width 474, height 473 and center coordinates 472 of the detection frame of the position information 401 including the maximum likelihood detection frame for each detected object in the past frame of the frame information storage means 470 and the motion vector amount 475 calculated by the motion vector amount calculation means 483, and records the distance coefficient 476 in the storage memory 471;
  • the motion vector prediction calculation means 484 may be characterized in that it predicts the center coordinates 472 and distance coefficient 476 of the position information 401 including the maximum likelihood detection frame for each detected object in the future frame from the predicted motion vector amount 475 of the future frame by the distance coefficient calculation means 482, and predicts information on the width 474 and height 473 of the detection frame of the position information 401 including the maximum likelihood detection frame of the future frame.
  • the frame information interpolation means 480 has an abnormality detection information removal means 485 which removes from the storage memory 471 when an abnormality is detected in the time continuity between frames of the position information 401 including the maximum likelihood detection frame and the maximum likelihood information 402 based on the width 474, height 473, and center coordinates 472 of the detection frame of the position information 401 including the maximum likelihood detection frame, the motion vector amount 475, the distance coefficient 476, and the maximum likelihood information 402 stored in the storage memory 471 for each detected object of a past frame of the frame information holding means 470, and has a detection information restoration means 486 which restores the various information removed by the abnormality detection information removal means 485 from the width 474, height 473, and center coordinates 472 of the detection frame of the position information 401 including the maximum likelihood detection frame of the previous and subsequent frames, the motion vector amount 475, the distance coefficient 476, and the maximum likelihood information 402, and records the information in the storage memory 471, and further has a detection information restoration means 486 which restore
  • the apparatus may also have an abnormality detection information prediction and removal means 487 that compares position information 401 including the maximum likelihood detection frame calculated by the individual identification means 410, image selection means 450, and detection frame correction means 460 for each detected object in the current frame when detection is performed with the width 474, height 473, and center coordinates 472 of the detection frame of position information 401 including the maximum likelihood detection frame of a future frame predicted by the motion vector prediction calculation means 484 to detect and remove abnormalities, and when the position information 401 including the maximum likelihood detection frame calculated by the individual identification means 410, image selection means 450, and detection frame correction means 460 is removed by the abnormality detection information prediction and removal means 487, it may have a detection information prediction and restoration means 488 that replaces and restores the position information 401 including the maximum likelihood detection frame of a future frame predicted by the motion vector prediction calculation means 484 and records it in the storage memory 471 of the current frame.
  • an abnormality detection information prediction and removal means 487 that compares position information 401 including the maximum likelihood detection frame calculated by the
  • the storage memory 471 has information recording memory for the current frame ft and past frames ft-1 to ft-s (s is an arbitrary integer) for each detected object No. 1 to No. V (V is an arbitrary integer), and the information stored in the storage memory 471 includes position information 401 including the most likely detection frame and maximum likelihood information 402.
  • the position information 401 including the most likely detection frame includes information on the center coordinates 472, height 473, and width 474 of the detection frame
  • the maximum likelihood information 402 may include likelihood and class identification information indicating the reliability of detection.
  • the information stored in the storage memory 471 may include a motion vector amount 475 for each frame including a future prediction based on the center coordinates of the detection frame calculated by the motion vector amount calculation means 483 and motion vector prediction calculation means 484 of the frame information interpolation means 480, and a distance coefficient 476 calculated by the distance coefficient calculation means 482 indicating the relative distance of the detected object from an imaging device such as a camera.
  • the frame information holding means 470 may be characterized in that, at the time when the position information 401 including the maximum likelihood detection frame of the current frame ft, the maximum likelihood information 402, the motion vector amount 475, and the distance coefficient 476 are calculated, the frame information holding means 470 erases various information recorded in the storage memory 471 of the oldest frame ft-s, slides various information recorded in the storage memory 471 from the ft frame to the ft-(s-1) frame by one frame to the storage memory 471 of the ft-s frame, and re-records the position information 401 including the maximum likelihood detection frame of the current frame ft, the maximum likelihood information 402, the motion vector amount 475, and the distance coefficient 476 in the storage memory 471 of the current frame ft.
  • the storage memory 471 may preferentially allocate memory to a smaller number among all storage memories 471 from No. 1 to No. V from the current frame ft to the previous frame ft-s while they are open (no memory information). Also, when a period of time passes in which a detected object is not detected and all memory information stored in all storage memories 471 from the current frame ft to the previous frame ft-s of that number is gone, the storage memory 471 of that number may be released. This makes it possible to continue tracking a maximum of V detected objects at the same time.
  • the frame information holding means 470 may also have a frame information interpolation means 480 that, when there is a loss of at least one of the position information 401 including the most likely detection frame, the most likely likelihood information 402, the motion vector amount 475, and the distance coefficient 476 in the storage memory 471 of the detected object number of an arbitrary frame, interpolates the memory information from the storage memory 471 of the previous and next frames and records it in the storage memory 471 of the frame as new memory information.
  • a frame information interpolation means 480 that, when there is a loss of at least one of the position information 401 including the most likely detection frame, the most likely likelihood information 402, the motion vector amount 475, and the distance coefficient 476 in the storage memory 471 of the detected object number of an arbitrary frame, interpolates the memory information from the storage memory 471 of the previous and next frames and records it in the storage memory 471 of the frame as new memory information.
  • the method of interpolating various memory information used by the frame information interpolation means 480 may be the Newton backward interpolation method 481.
  • the Newton backward interpolation method 481 we will first define the difference quotient.
  • f(x) f(x1) + (x-x1)f(x1, x2) + ... + (x-x1)...(x-xn-1)f(x1,...,xn) + (x-x1) ... (x-xn-1) (x-xn) f (x1, ..., xn) (Equation 5)
  • FIG. 20 the operating principle of Newton backward interpolation method 481, which performs interpolation using four interpolation points, when interpolating information is shown in Figure 20.
  • Yt which is a predicted point 478 of time Xt corresponding to a frame
  • calculation may be performed using four interpolation points 477 from Yt-1 to Yt-4 and the interpolation function f(x) shown in Equation 5 above.
  • the number of interpolation points 477 is not limited to four, and it is desirable to determine them in consideration of the capabilities of the calculation processor and the required prediction accuracy.
  • the frame information interpolation means 480 may apply the Newton backward interpolation method 481 in the following cases: when there is a missing piece of information stored in the storage memory 471 due to an inability to detect, when the motion vector prediction calculation means 484 predicts the motion vector amount 475 for each detected object in a future frame and predicts the center coordinates 472 of the position information 401 including the maximum likelihood detection frame; and when the abnormality detection information removal means 485 and the detection information restoration means 486 detect an abnormality in the time continuity between frames for the memory information stored in the storage memory 471 and, if an abnormality is found, restore the information and re-record it in the storage memory 471. Note that, if a low prediction accuracy is sufficient, another interpolation method such as a moving average method may be applied instead of the Newton backward interpolation method 481.
  • the frame information interpolation means 480 which has such a Newton backward interpolation method 481 and a moving average method, relieves the decrease in inference accuracy of the current frame due to fluctuations in the position and size of the detected object, which depends on the structure of the model itself that detects objects in the image, and compensates for continuity in the results of past frames, making it possible to accurately and smoothly display the history and trajectory of each past detected object. Furthermore, it becomes possible to improve object detection capabilities, class identification capabilities, and tracking capabilities.
  • the abnormality detection information removal means 485 detects abnormalities by predicting the width 474, height 473, center coordinates 472, motion vector amount 475, distance coefficient 476, and maximum likelihood information 402 of the detection frame of the position information 401 including the maximum likelihood detection frame stored in the storage memory 471 for each detected object number from past frames ft-1 to ft-s of the frame information holding means 470 using the detection information restoration means 486 to predict the memory information of the storage memory 471 of the previous and subsequent frames as the interpolation point 477, verifying the inter-frame time continuity of the memory information of the storage memory 471 of the target frame, and if an abnormality is found in the time continuity outside the range of an arbitrary numerical value set for each memory information, the target memory information is removed from the storage memory 471, and the information predicted by the detection information restoration means 486 may be newly recorded in the storage memory 471 as restoration information.
  • the abnormality detection information prediction and removal means 487 compares the position information 401 including the maximum likelihood detection frame of the future frame predicted by the motion vector prediction calculation means 484 and the distance coefficient calculation means 482 from the memory information from frame ft to frame ft-s in the storage memory 471 with the detection frame width 474, height 473, and center coordinates 472 of the position information 401 including the maximum likelihood detection frame calculated by the individual identification means 410, image selection means 450, and detection frame correction means 460 for each detected object in the current frame when newly performing object detection, and if an abnormality is found in the time continuity outside the range of any numerical value set for each memory information, it may be characterized in that the newly detected object target result is determined to be an abnormal value and excluded, and the detection information prediction and restoration means 488 replaces and restores the target information of the position information 401 including the maximum likelihood detection frame of the future frame predicted by the motion vector prediction calculation means 484 and the distance coefficient calculation means 482, and records it in the storage memory 471 of the current frame.
  • the detection target is one person, and an example of the relationship between the motion vector amount 475, distance coefficient 476, and center coordinates 472, height 473, and width 474 of the detection frame of position information 401 including the most likely detection frame among four frames: the current frame ft, two past frames ft-1 and ft-2, and the future frame ft+1 corresponding to the next new object detection, and a calculation method for future frame ft+1 will be described.
  • Position information 401A including the most likely detection frame detected in frame ft-2, the earliest frame is information including center coordinates 472A, height 473A, and width 474A of the detection frame.
  • the distance coefficient calculation means 482 may calculate a distance coefficient 476A by dividing the distance between the lower limit of the detection frame, that is, the coordinates of the feet in the case of a person, and the lower limit of the image (normalized by the number of pixels or the vertical length of the image) by a normalization coefficient ⁇ ( ⁇ is an arbitrary decimal) 479, and calculate a standard height 473Z and width 474Z of the detection frame of the person to be detected by multiplying the distance coefficient 476A by the height 473A and width 474A of the detection frame, respectively.
  • the normalization coefficient ⁇ 479 is calculated in advance based on the effective pixel area for the camera field of view of the camera, lens, image processing means 100, and model pre-processing means 200 processed in accordance with the frame control information 500.
  • the normalization coefficient ⁇ 479 may have linear or nonlinear characteristics according to the distance between the lower limit of the detection frame and the lower limit of the image.
  • the information on the normalization coefficient ⁇ 479 and the height 473Z and width 474Z of the standard detection frame may be carried over and applied to the other past frame ft-1, the current frame ft, and the future frame ft+1, while also being checked in the frames ft-1 and ft, and the normalization coefficient ⁇ 479 may be corrected sequentially so that the height 473Z and width 474Z of the standard detection frame fall within a certain range.
  • position information 401B including the most likely detection frame detected in the past frame ft-1 is information including the center coordinates 472B, height 473B, and width 474B of the detection frame, and the distance coefficient is 476B.
  • Position information 401C including the most likely detection frame detected in the current frame ft is information including the center coordinates 472C, height 473C, and width 474C of the detection frame, and the distance coefficient is 476C.
  • the information is memory information recorded in the storage memory 471 based on actual object detection data.
  • the distance coefficient calculation means 482 may check the normalization coefficient ⁇ 479 and the information on the height 473Z and width 474Z of the standard detection frame based on various information from frame ft-2 to frame ft, and may correct the normalization coefficient ⁇ 479 to more accurately predict the height 473D and width 474D of the position information 401D including the maximum likelihood detection frame of the future frame ft+1.
  • the motion vector amount calculation means 483 calculates a motion vector amount 475 indicating in which direction the detected object will move in the next frame
  • the motion vector amount (VEt-2) 475A of the past frame ft-2 may be a vector combination of difference information calculated in the horizontal and vertical directions when the center coordinate 472A of the detection frame moves to the center coordinate 472B of the detection frame of the past frame ft-1
  • the motion vector amount (VEt-1) 475B of the past frame ft-1 may be a vector combination of difference information calculated in the horizontal and vertical directions when the center coordinate 472B of the detection frame moves to the center coordinate 472C of the detection frame of the current frame ft.
  • the motion vector amount calculation means 483 may calculate the motion vector amount 475 based on the results of object detection that has already been performed and calculated.
  • the motion vector prediction calculation means 484 may predict the motion vector amount 475 of the future frame by the Newton backward interpolation method 481 or the moving average method, using two points of the past frames ft-2 and ft-1 as the interpolation points 477.
  • the number of past frames is limited to two, but the prediction accuracy is increased by increasing the number of interpolation points 477 by referring to more past frames.
  • the motion vector amount (VEt) 475C of the current frame ft is predicted by the motion vector prediction calculation means 484, not the motion vector amount calculation means 483, because the center coordinates 472D of the future frame ft+1 are still unknown.
  • this information is recorded as it is in the storage memory 471 of the frame ft, and then, when the position information 401D including the maximum likelihood detection frame is determined to be normal in the object detection in the next frame ft+1, the motion vector amount calculation means 483 may replace the information in the storage memory 471 as the motion vector amount of the previous frame at the timing when the current frame is updated with a new detection result.
  • the center coordinates 472D, height 473D, width 474D, and distance factor 476D of the detection frame of position information 401D including the maximum likelihood detection frame of the future frame ft+1 are predicted.
  • the center coordinates 472D of the detection frame of the future frame ft+1 may be calculated based on the center coordinates 472C of the detection frame of the current frame ft and the predicted motion vector amount 475C, and the distance factor 476D and the height 473D and width 474D of the position information 401D including the detection frame may be predicted based on the predicted center coordinates 472D using the normalization coefficient ⁇ 479 of the distance factor calculation means 482 and the height 473Z and width 474Z of the standard detection frame.
  • the motion vector amount (VEt+1) 475D of the future frame ft+1 may be predicted from the motion vector amount 475 of the past frame by the Newton backward interpolation method 481 or the moving average method at the time when a new object detection is performed and the detection result in frame ft+1 is confirmed.
  • the motion vector amount calculation means 483 and motion vector prediction calculation means 484 can calculate the motion vector amount for each detected object in a past frame, so that it is possible to predict the motion vector amount and center coordinates of the detection frame for a future frame based on the results. By comparing the predicted results with the results inferred by the current object detection model and model post-processing means, it is possible to determine whether continuity is ensured or whether there are any abnormal values.
  • distance coefficient calculation 482 it is possible to grasp distance information between a photographing device such as a camera and a target object and predict the motion vector amount and the center coordinates of the detection frame of the current or future frame, etc., making continuous and accurate prediction possible. Therefore, by accurately compensating for continuity and tracking ability as a result of remedying the decrease in inference accuracy of the current frame due to fluctuations in the position and size of the detected object, which depends on the structure of the model itself that detects objects in the image, it is possible to improve object detection ability, class identification ability, and tracking ability. Furthermore, since it is possible to predict future frames from the results of frames up to the present, it is possible to transmit information in advance or quickly and accurately when it is necessary to notify of danger, etc.
  • the frame information interpolation means 480 detects that the width 474, height 473, and center coordinates 472 of the detection frame of the position information 401 including the maximum likelihood detection frame stored in the frame information storage means 470 deviate from the width 474, height 473, and center coordinates 472 of the detection frame of the position information 401 including the maximum likelihood detection frame interpolated by the frame information interpolation means 480 by exceeding an arbitrary threshold or exceeding an arbitrary ratio, or when the likelihood of the maximum likelihood information 402 is abnormal but is less than a rescue threshold 490 that is worthy of rescue, ...
  • the frame information interpolation means 480 detects that the width 474, height 473, and center coordinates 472 of the detection frame of the position information 401 including the maximum likelihood detection frame
  • the information removal means 485 may determine that the information is abnormal and remove all information from the storage memory 471, and in this case, if the likelihood of the maximum likelihood information 402 is equal to or less than a normal determination threshold 491 that determines that the information is normal, and equal to or more than a rescue threshold 490 that is abnormal but worthy of rescue, remove other information except for the maximum likelihood information 402, and may record and restore the position information 401, including the maximum likelihood detection frame, the maximum likelihood information 402, the motion vector amount 475, and the distance coefficient 476 restored by the detection information restoration means 486 for the removed information, in the storage memory 471.
  • the frame information interpolation means 480 records the position information 401 including the maximum likelihood detection frame, the maximum likelihood information 402, the motion vector amount 475, and the distance coefficient 476 in the storage memory 471, and calculates the maximum likelihood When it is detected that the position information 401 including the detection frame is shifted beyond an arbitrary threshold value or
  • the operation of the abnormality detection information removal means 485, the detection information restoration means 486, the abnormality detection information prediction removal means 487, and the detection information prediction restoration means 488 will be explained with reference to FIG. 22.
  • the four images from frame ft+1 to frame ft-2 before the detection and removal of abnormal information at the top of Figure 22 are information that represents the inference results obtained by performing object detection and are recorded as memory information in storage memory 471.
  • position information 401F including the maximum likelihood detection frame of past frame ft-1, width 474F, height 473F, center coordinates 472F and distance coefficient 476F of the detection frame are the inference results obtained by performing object detection as is and information calculated by distance coefficient calculation means 482, but the detection frame is expanded to the lower right and approximately twice as wide in both the horizontal and vertical directions as the person who is the detected object target.
  • the likelihood of the maximum likelihood information 402F is also a low value of 30%, and as a result, a deviation occurs between the motion vector amount 475E of the past frame ft-2 and the motion vector amount 475F of the past frame ft-1 calculated by the motion vector amount calculation means 483, and as a result, a prediction deviation also occurs in the motion vector amount 475G of the current frame ft predicted by the motion vector prediction calculation means 484.
  • the position information 401H including the maximum likelihood detection frame of the future frame ft+1, the width 474H and height 473H of the detection frame, the center coordinates 472H and the distance coefficient 476H are the inference result obtained by newly performing object detection on the future frame ft+1 and the results calculated by the distance coefficient calculation means 482, and are the result of inferring an area that is widely spread to the upper left side of the person who is the object detection target as the detection frame.
  • position information 401X including the maximum likelihood detection frame of future frame ft+1, width 474X, height 473X, center coordinates 472X, and distance coefficient 476X of the detection frame are predicted by the motion vector amount 475G calculated in frame ft and distance coefficient calculation means 482, and the detection frame is positioned slightly shifted to the upper right and above with respect to the person who is the object detection target due to the shift in motion vector amount 475G caused by the influence of frame ft-1.
  • the likelihood of maximum likelihood information 402A of frame ft-2 is 85%
  • the likelihood of maximum likelihood information 402C of frame ft is 98%
  • the likelihood of maximum likelihood information 402D of frame ft+1 is 60%.
  • the inference results and various calculation results of the four images from frame ft+1 to frame ft-2 before the detection and removal of abnormal information shown in the upper part of Figure 22 are applied to the abnormality detection information removal means 485, the detection information restoration means 486, the abnormality detection information prediction and removal means 487, and the detection information prediction and restoration means 488 to remove abnormal information by detection and restore by interpolation using the Newton backward interpolation method 481, etc., resulting in the four images from frame ft+1 to frame ft-2 after removal by detection and interpolation shown in the lower part of Figure 22.
  • These are equivalent to the inference results and various calculation results shown in Figure 21 described above, and since the likelihood information of the maximum likelihood information 402 has been added, detailed explanations will be omitted.
  • the criterion for determining that information is abnormal by the anomaly detection information removal means 485, removing all information from the storage memory 471, and re-recording the information restored by the detection information restoration means 486 in the storage memory 471 is set to a case where the ratio of the height 473 and width 474 of the detection frame of the position information 401 including the maximum likelihood detection frame recorded in the storage memory 471 to the height 473 and width 474 of the detection frame of the position information 401 including the maximum likelihood detection frame as a result of interpolation by the detection information restoration means 486 from various memory information of the preceding and following frames has a deviation of, for example, ⁇ 30% or more.
  • Another condition is set to a case where the likelihood of the maximum likelihood information 402 recorded in the storage memory 471 is abnormal but less than 50%, which is the rescue threshold 490 that is worthy of rescue.
  • the likelihood of the maximum likelihood information 402 is equal to or greater than 50%, which is a rescue threshold 490 indicating that the information is abnormal but worthy of rescue, and is less than 80%, which is a normality determination threshold 491 indicating that the information is normal, only the maximum likelihood information 402 is left in the storage memory 471, and other information is removed, and the information other than the maximum likelihood information 402 restored by the detection information restoration means 486 is re-recorded in the storage memory 471.
  • the ratio of the height 473 and width 474 of the detection frame of the position information 401 including the above-mentioned maximum likelihood detection frame has a deviation of less than plus or minus 30%, and the likelihood of the maximum likelihood information 402 is equal to or greater than 80%, which is a normality determination threshold 491 indicating that the information is normal, the information in the storage memory 471 is left as it is.
  • the criterion for determining the results of newly performed object detection and various calculation results by the abnormality detection information prediction and removal means 487 as abnormal information, removing all information from the targets to be recorded in the storage memory 471, and recording the restored information by the detection information prediction and restoration means 488 in the storage memory 471 is, for example, when the ratio of the height 473 and width 474 of the detection frame of the position information 401 including the maximum likelihood detection frame as a result of newly performed object detection to the height 473 and width 474 of the detection frame of the position information 401 including the maximum likelihood detection frame predicted by the motion vector prediction calculation means 484 and the distance coefficient calculation means 482 has a deviation of ⁇ 30% or more.
  • Another condition is when the likelihood of the maximum likelihood information 402 as a result of newly performed object detection is abnormal but less than 50%, which is a rescue threshold 490 that is worthy of rescue.
  • the likelihood of the maximum likelihood information 402 is equal to or greater than 50%, which is a rescue threshold 490 indicating that the information is abnormal but worthy of rescue, and is less than 80%, which is a normality determination threshold 491 indicating that the information is normal, only the maximum likelihood information 402 is recorded in the storage memory 471 and other information is excluded, and the excluded information is replaced with information restored by the detection information prediction and restoration means 488 and recorded in the storage memory 471.
  • the ratio of the height 473 and width 474 of the detection frame of the position information 401 including the above-mentioned maximum likelihood detection frame has a deviation of less than plus or minus 30%, and the likelihood of the maximum likelihood information 402 is equal to or greater than 80%, which is a normality determination threshold 491 indicating that the information is normal, all information of the inference result of the newly detected object and the various calculation results is recorded in the storage memory 471.
  • the criteria for determining whether information is abnormal by the abnormality detection information removal means 485 and the abnormality detection information prediction removal means 487, and the criteria for determining the information restoration method by the detection information restoration means 486 and the detection information prediction restoration means 488 may be set to any threshold value or any ratio.
  • a threshold value may also be set for the degree of deviation of the center coordinates or the IOU value of the mutual detection frames.
  • the likelihood of maximum likelihood information 402A of past frame ft-2 is also 85%, which is 70% or more of normal judgment threshold 491, and other information was not judged to be particularly abnormal, so the memory information in storage memory 471 is held as is.
  • the likelihood of maximum likelihood information 402C of current frame ft is also 98%, which is 70% or more of normal judgment threshold 491, and other information was not judged to be particularly abnormal, so the memory information in storage memory 471 is held as is.
  • the maximum likelihood information 402F of the past frame ft-1 is 30%, which is less than 50% of the rescue threshold 490
  • the height 473F and width 474F of the detection frame of the position information 401F including the maximum likelihood detection frame recorded in the storage memory 471 are approximately 200% or more in ratio to the height 473B and width 474B of the detection frame of the position information 401B including the maximum likelihood detection frame restored by interpolation from information of the previous and following frames by the detection information restoration means 486, which is greater than or equal to 130% on the positive side, which is the threshold, so that all information in the storage memory 471 is subject to removal.
  • the height 473B and width 474B, center coordinates, maximum likelihood information 402B, distance coefficient 476B, and motion vector amount 475B of the detection frame of the position information 401B including the maximum likelihood detection frame, which is information restored by the detection information restoration means 486, are re-recorded in the storage memory 471.
  • the motion vector amount 475E of frame ft-2, the motion vector amount 475F of frame ft-1, and the motion vector amount 475G of frame ft which were shifted due to the influence of the position information 401F including the maximum likelihood detection frame being significantly different from the information of the original detection frame, are calculated as values close to the original values by the motion vector amount calculation means 483 and the motion vector prediction calculation means 484, and the information in the storage memory 471 may be overwritten as the motion vector amount 475A of frame ft-2, the motion vector amount 475B of frame ft-1, and the motion vector amount 475C of frame ft, respectively.
  • the maximum likelihood information 402D of future frame t+1, in which new object detection has been performed is less than 70% of the normal judgment threshold 491 and greater than 50% of the rescue threshold 490, the likelihood of 60% of the maximum likelihood information 402D is recorded as is in the storage memory 471.
  • the height 473X, width 474X, central coordinates, maximum likelihood information 402X and distance coefficient 476X of the detection frame of position information 401X including a maximum likelihood detection frame, which is information restored by the detection information prediction restoration means 488, are recorded in the storage memory 471.
  • the motion vector amount 475G of frame ft is also corrected to the motion vector amount 475C, which is the information that should be there, so it is desirable to record the height 473D, width 474D, center coordinates, maximum likelihood information 402D, and distance coefficient 476D of the detection frame of the position information 401D including the maximum likelihood detection frame, which is information restored by the detection information prediction restoration means 488 taking into account the motion vector amount 475C and the distance coefficient calculation means 482, in the storage memory 471.
  • the explanation up to this point is one example of the operation process, and which means are applied to which threshold judgment and to which range is not limited to this example.
  • the abnormality detection information removal means 485, the detection information restoration means 486, the abnormality detection information prediction and removal means 487, and the detection information prediction and restoration means 488 make it possible to more accurately determine abnormal values for past frames, remove the abnormal values, and restore the values using interpolated values. Furthermore, it makes it possible to more accurately determine abnormal values for the current frame in which new object detection has been performed, remove the abnormal values, and restore the values using interpolated values. Therefore, it becomes possible to more accurately compensate for continuity and tracking ability as a result of remedying the decrease in inference accuracy of past frames due to fluctuations in the position and size of the detected object, which depends on the structure of the model itself that detects objects in the image, and therefore it becomes possible to improve tracking ability. Furthermore, it becomes possible to more accurately, continuously, and smoothly display the history and trajectory of each detected object with little time lag.
  • the traceability stability indexing means 520 which uses the time-series information for each frame in the frame information holding means 470 described above to capture the accuracy of the position and area of the detection frame, which is the result of object detection, and the fluctuation rate of various calculated data in a time series to index the degree of stability of the inference accuracy and detection performance; the abnormality detection frame number calculation means 530, which calculates the number of times that the position information 401 including the maximum likelihood detection frame is determined to be an abnormal value and is excluded between any frames; and the detection NG number calculation means 540, which calculates the number of times that the likelihood of the maximum likelihood information 402 between any frames is below an arbitrary threshold value or is a detection NG that goes undetected.
  • the model post-processing means 400 calculates the X coordinate of the center coordinates 472 of the detection frame, the Y coordinate of the center coordinates 472 of the detection frame, the width 474 of the detection frame, the height 473 of the detection frame, and the aspect ratio 492 of the detection frame in the position information 401 including the maximum likelihood detection frame calculated by the frame information holding means 470 and the frame information interpolation means 480 for each detected object in the current frame, based on the motion vector prediction calculation means 484.
  • the distance coefficient calculation means 482 calculates the frame width fluctuation rate (%) 523 normalized with the distance coefficient 476 and the normalization coefficient ⁇ 479, the frame height fluctuation rate (%) 524 normalized with the distance coefficient 476 and the normalization coefficient ⁇ 479, and the frame aspect ratio fluctuation rate (%) 525.
  • calculation processor including hardware and software.
  • traceability stability value indexing means 520 make it possible to index how accurate and stable the object detection capability, class identification capability, and tracking capability of the object detection device are. Therefore, it is also possible to determine whether the amount of position shift of the current frame control information and the various rescue modes and states for rescue are appropriate.
  • the model post-processing means 400 may be characterized by having an anomaly detection frame number calculation means 530 that, when an anomaly detection information prediction and removal means 487 has determined an anomaly in the current frame and removed it, determines that an anomaly has been detected and outputs the number of frames in the frame that have become an anomaly detection as the anomaly detection frame number 531. If there are multiple detection target objects, there is a possibility that the anomaly detection frame number 531 will be multiple.
  • the anomaly detection information removal means 485 see the explanation of the operation of the anomaly detection information removal means 485, the detection information restoration means 486, the anomaly detection information prediction and removal means 487, and the detection information prediction and restoration means 488 shown in FIG. 22. Note that the total number of anomaly detection frames 531 for any period of the frame may be calculated.
  • anomaly detection frame number calculation means 530 make it possible to grasp the number of anomaly detections that have occurred in the object detection device, which serves as an index of stability, and therefore makes it possible to determine whether the position shift amount of the frame control information and various rescue modes and states for rescue are appropriate. Furthermore, it becomes possible to determine the need for improvement of the robustness and object detection capability of the object detection model and model learning dictionary, or the need for improvement.
  • the model post-processing means 400 may be characterized by having a detection NG number calculation means 540 that determines that detection is impossible and outputs the number of times that detection is impossible in the frame as a detection NG number 541 when the likelihood of the maximum likelihood information 402 in the current frame is determined to be an abnormal value below the rescue threshold 490 and removed by the abnormality detection information prediction and removal means 487, or when the inference result is undetected. If there are multiple objects to be detected, the detection NG number 541 may be multiple.
  • the operation of the abnormality detection information prediction and removal means 487 when abnormality detection and detection are impossible refer to the explanation of the operation of the abnormality detection information removal means 485, the detection information restoration means 486, the abnormality detection information prediction and removal means 487, and the detection information prediction and restoration means 488 shown in FIG. 22. Note that the total detection NG number 541 for any period of the frame may be calculated.
  • These detection failure number calculation means 540 make it possible to grasp the number of detection failures that occur in the object detection device, which serves as an index of stability, and therefore makes it possible to determine whether the amount of position shift in the frame control information and various rescue modes and states for rescue are appropriate. Furthermore, it becomes possible to determine the need for improvement of the robustness and object detection capability of the object detection model and model learning dictionary, or the need for improvement.
  • the model post-processing means 400 may be characterized by having a state machine control means 550 that uses one or more or all of the position information 401 including the maximum likelihood detection frame calculated by the frame information holding means 470 and the frame information interpolation means 480, the lowest likelihood 493 among the maximum likelihood information 402 of the detected object, the stability value index 526 which is various output information of the traceability stability value indexing means 520, the number of anomaly detection frames 531, and the number of detection failures 541 to determine the position shift amount 510 and the state of the type and number of the position shift amount 510 for each frame in the frame control information 500 of the next frame.
  • a state machine control means 550 that uses one or more or all of the position information 401 including the maximum likelihood detection frame calculated by the frame information holding means 470 and the frame information interpolation means 480, the lowest likelihood 493 among the maximum likelihood information 402 of the detected object, the stability value index 526 which is various output information of the traceability stability value indexing means 520, the number of anomaly detection frames 5
  • the state machine control means 550 starts from a state of likelihood relief OFF mode 551 (normal inference method) in which the position shift amount 510 of the frame control information 500 is zero and the type of the position shift amount is zero at the start of object detection, and when the minimum likelihood 493 of the current frame is less than an arbitrary first likelihood threshold 494 (condition A1), or when the stability value index 526, which is output information of the traceability stability value indexing means 520, exceeds at least one of the first instability thresholds 496, the state machine control means 550 starts from a state of likelihood relief OFF mode 551 (normal inference method) in which the position shift amount 510 of the frame control information 500 is zero and the type of the position shift amount is zero, the state machine control means 550 starts from a state of likelihood relief OFF mode 551 (normal inference method) in which the minimum likelihood 493 of the current frame is less than an arbitrary first likelihood threshold 494 (condition A2), or when the stability value index 526, which is
  • the stabilization index 526 may be the central X-coordinate average deviation (%) 521, the central Y-coordinate average deviation (%) 522, the frame width fluctuation rate (%) 523, the frame height fluctuation rate (%) 524, and the frame aspect ratio fluctuation rate (%) 525, which are the results of moving averages over W (W is any integer) frames, and the value of the first instability threshold 496 may be set for each index.
  • the likelihood rescue maximum likelihood two-image mode 552 may be a likelihood rescue mode based on a series of operations of the position shift function 220, frame control information 500, object detection model 300, individual identification means 410, image selection means 450, and detection frame correction means 460 of the model pre-processing means 200 described in FIG. 13 or FIG. 15.
  • the processing rate between frames may be variably set according to the processing time.
  • the position shift amount 510 determined by one of the likelihood rescue maximum likelihood two-frame modes 552 for the next frame may be set by calculating the size of the object to be detected by multiplying the height 473 and width 474 of the detection frame of the position information 401 including the maximum likelihood detection frame corresponding to the minimum likelihood 493, and selecting and setting the position shift amount 510 effective for a pattern in which the likelihood decreases in a specific grid shape that depends on the grid size of the detection layer of the DNN model 310, which is assumed to occur according to the size.
  • the average value of the effective position shift amount 510 inferred from each object size may be set, or the effective position shift amount 510 may be set according to the object size with the highest occurrence frequency of the minimum likelihood 493 in the statistics up to that point.
  • the logical sum of (Condition A1) and (Condition A2) is used to transition from the likelihood rescue mode OFF mode 551 to the likelihood rescue maximum likelihood 2-frame mode 552 in the next frame, but other transition conditions may be set without being limited to these conditions.
  • state machine control means 550 and state transition condition A554 allow the amount of position shift and its type and number to be automatically applied in a time series to the structure of the detection layer of the neural network including the DNN, which provides the optimum inference accuracy for the object detection stability, detection state, and size of the detection object, when remedying the decrease in inference accuracy due to fluctuations in the position and size of the detection object, which depends on the structure of the model itself that detects objects in an image. This further enhances the effect of remedying the decrease in inference accuracy due to fluctuations in the position and size of the detection object, making it possible to more reliably improve object detection capability, class identification capability, and tracking capability.
  • likelihood rescue is not performed by maintaining the likelihood rescue OFF mode 551, and only when it is determined that the performance or stability of object detection has deteriorated is the state transitioned to likelihood rescue maximum likelihood 2-image mode 552, which rescues the likelihood decline with a minimum load on the system, thereby improving the performance and stability of object detection. Therefore, even if there are limitations on the performance of the on-board arithmetic processor, etc., it is possible to efficiently improve object detection capability, class identification capability, and tracking capability while maintaining low latency and real-time performance.
  • the state machine control means 550 checks whether the minimum likelihood 493 of the current frame is less than any second likelihood threshold 495 (condition B1), or whether the stability value index 526, which is the output information of the traceability stability value indexing means 520, exceeds at least one of the second instability thresholds 497 (condition B2), or whether the number of abnormality detection frames 531 is 1 or more (condition B3), or whether the number of detection NGs 541 is 1 or more
  • condition B4 the state transition condition B555 is satisfied, and a state transition is instructed to set the position shift amount 510 of the frame control information 500 of the next frame to a likelihood relief maximum likelihood three-frame mode 553 that controls the position shift amount 510 of the next frame in two types of states, and the two types of position shift amount 510 are determined by taking into account the position information 401 including the maximum likelihood detection frame for each detected object in the frame information storage
  • the second likelihood threshold 495 smaller than the first likelihood threshold 494, and the second instability threshold 497 larger than the first instability threshold 496.
  • the likelihood rescue maximum likelihood three-image mode 553 may be a likelihood rescue mode based on a series of operations of the position shift function 220, frame control information 500, object detection model 300, individual identification means 410, image selection means 450, and detection frame correction means 460 of the model pre-processing means 200 described in FIG. 14. Or, it may be a mode in which the type of position shift amount 510 is extended to two types for the method described in FIG. 15. In that case, when applying the method shown in FIG. 14, it is necessary to perform inference of three images during one frame in the object detection model 300. Therefore, if there are performance limitations such as a calculation processor including hardware and software, the processing rate between frames may be variably set according to the processing time.
  • the position shift amount 510 determined by the two types of the next frame likelihood rescue maximum likelihood three-frame mode 553 may be set by calculating the size of the object to be detected by multiplying the height 473 and width 474 of the detection frame of the position information 401 including the maximum likelihood detection frame corresponding to the minimum likelihood 493, and selecting and setting as the first type a position shift amount 510 that is effective for a pattern in which the likelihood decreases in a specific grid shape that depends on the grid size of the detection layer of the DNN model 310, which is assumed to occur according to the size.
  • the second type of position shift amount 510 may be set by setting the next effective position shift amount 510 for each object size excluding the first type when there are multiple detected objects and multiple likelihoods other than the minimum likelihood 493 that are less than the second likelihood threshold 495 exist. Furthermore, when there are multiple detected objects and multiple likelihoods that are less than the second likelihood threshold 495, and there are three or more types of valid position shift amounts 510 inferred from each object size, the top two types of valid position shift amounts 510 may be set for the object size that has the highest occurrence frequency of the minimum likelihood 493 in the statistics up to that point. Alternatively, the average value of the second highest valid position shift amounts 510 and after may be set as the second type of position shift amount 510.
  • condition B1 the logical sum of (condition B1), (condition B2), (condition B3), and (condition B4) is used to transition from the likelihood rescue most likely 2-image mode 552 to the likelihood rescue most likely 3-image mode 553 in the next frame, but other transition conditions may be set in addition to these.
  • the state machine control means 550 and state transition condition B555 allow the system to transition to likelihood relief maximum likelihood three-image mode 553, which relieves the likelihood reduction even at the expense of increasing the load on the system, only when it is determined that the performance and stability of object detection has significantly deteriorated, thereby improving the performance and stability of object detection. This makes it possible to optimally and efficiently determine and apply the trade-off between maintaining low latency and real-time performance and maintaining object detection capability, class identification capability, and tracking capability.
  • the state machine control means 550 determines whether the minimum likelihood 493 of the current frame is equal to or greater than any second likelihood threshold 495 (condition C1), the stability value index 526, which is the output information of the traceability stability value indexing means 520, is equal to or less than each of the second instability thresholds 497 (condition C2), the number of abnormality detection frames 531 is zero (condition C3), the number of detection NGs 541 is zero (condition C4), and all of them If the above conditions are met, the state transition condition C556 is satisfied, and a state transition is instructed to set the position shift amount 510 of the frame control information 500 of the next frame to a likelihood relief maximum likelihood two-frame mode 552, which controls the position shift amount 510 of the frame control information 500 of the next frame in one state, and the position shift amount 510 is determined taking into account the position information 401 including the maximum likelihood detection frame for each detected object in the
  • the position shift amount 510 determined by one of the next frame likelihood rescue maximum likelihood two-frame modes 552 may be set under the same concept as the state transition condition A 554 described above.
  • the logical product of (Condition C1), (Condition C2), (Condition C3), and (Condition C4) is used to transition from the likelihood rescue most likely 3-image mode 553 to the likelihood rescue most likely 2-image mode 552 in the next frame, but other transition conditions may be set in addition to these.
  • state machine control means 550 and state transition condition C 556 determine that the object detection performance and stability have transitioned from a very degraded state to a good state, the state is transitioned to likelihood relief maximum likelihood two-image mode 552, which reduces the load on the system and relieves the likelihood degradation. This makes it possible to achieve low latency and real-time performance while maintaining object detection capability, class identification capability, and tracking capability, even when there are limitations on the performance of the on-board arithmetic processor, etc.
  • the state machine control means 550 may be characterized in that, when the current frame is in the likelihood rescue maximum likelihood 2-sheet mode 552 state, if the minimum likelihood 493 of the current frame is equal to or greater than any first likelihood threshold 494 (condition D1), the stability value index 526 which is the output information of the traceability stability value indexing means 520 is equal to or less than all of the first instability thresholds 496 (condition D2), the number of abnormality detection frames 531 is zero (condition D3), and the number of detection NGs 541 is zero (condition D4), and all of these conditions are met, the state transition condition D557 is met, and the position shift amount 510 of the frame control information 500 of the next frame is set to a likelihood rescue OFF mode 551 state in which the position shift amount 510 is zero and the type of the position shift amount 510 is zero.
  • the logical product of (Condition D1), (Condition D2), (Condition D3), and (Condition D4) is used to transition from the likelihood relief most likely 2-frame mode 552 to the likelihood relief OFF mode 551 in the next frame, but other transition conditions may be set in addition to these conditions.
  • state machine control means 550 and state transition condition D557 determine that the object detection performance and stability have transitioned from a state of deterioration to a good state, the state is transitioned to likelihood relief OFF mode 551, which reduces the load on the system and does not relieve the likelihood reduction, making it possible to more efficiently achieve low latency and real-time performance while maintaining object detection capability, class identification capability, and tracking capability, even when performance limitations are placed on the on-board arithmetic processor, etc.
  • a second mAP calculation means 650 is described with reference to FIG. 1 for calculating general object detection index values, such as an AP (Average Precision) value 651, an mAP (mean Average Precision) value 652, Recall 655, Precision 654, and an IOU value 653, from the inference results after performing likelihood recovery, removing various outliers, and restoring by interpolation.
  • AP Average Precision
  • mAP mean Average Precision
  • IOU IOU value
  • position information 621 including a detection frame that is the correct answer and class identification information 622 that is the correct answer are generated for each detected object by the annotation means 620 for a validation image present in the display and data storage means 120 or the learning material database storage means 610 shown in FIG.
  • the model post-processing means 400 calculates a correct answer frame IOU value 498, which is an index showing the extent to which the area of position information 401 including the most likely detection frame for each detected object in the current frame of the frame information storage means 470 overlaps with the area of position information 621 including the correct detection frame, information on the truth of the result of comparing the most likely likelihood information 402 for each detected object in the current frame of the frame information storage means 470 with the correct class identification information 622, and the likelihood of the most likely likelihood information 402, and may be characterized in that the second mAP calculation means 650 calculates indexes such as AP value 651, mAP value 652, Recall 655, and Precision 654 for the validation image.
  • the IOU value 653 may be the correct answer box IOU value 498 output as is.
  • This second mAP calculation means 650 makes it possible to index the performance of the object detection model and the versatility and robustness of the model learning dictionary, based on the results of improving the object detection ability, class discrimination ability, and tracking ability by remedying the decline in inference accuracy, and to accurately analyze weaknesses and reinforcement policies for the model learning dictionary. Therefore, it becomes possible to determine and reinforce the need for re-learning the model learning dictionary, which cannot be addressed by strengthening inference performance alone, and thus maximize the object detection ability, class discrimination ability, and tracking ability of the object detection device.
  • (Embodiment 2) 24 is a block diagram showing an object detection device according to embodiment 2 of the present invention.
  • the image processing means 100, the image output control means 110, the display and data storage means 120, the model pre-processing means 200, the object detection model 300, the model post-processing means 400, and the robustness verification means 800, as well as the means, functions, processes, steps, and devices, methods, and programs for realizing them, are the same as those in embodiment 1, so that the description in the text of embodiment 2 is omitted except for some.
  • each means, each function, each process, each step, each device, each method, and each program of another embodiment described in embodiment 1 may also be used to realize the device.
  • the second embodiment is characterized by the inclusion of a dictionary learning means 600 for creating and relearning the model learning dictionary 320, which is one of the components of the object detection model 300, in addition to the configuration of the first embodiment described above.
  • a dictionary learning means 600 for creating and relearning the model learning dictionary 320, which is one of the components of the object detection model 300, in addition to the configuration of the first embodiment described above.
  • each of the means, functions, and processes described in the second embodiment of the present invention described below may be replaced by a step, and each of the devices may be replaced by a method. Furthermore, each of the means and devices described in the second embodiment of the present invention may be realized by a program that is operated by a computer.
  • a dictionary learning means 600 which is deep learning for creating the model learning dictionary 320, which is one of the components of the object detection model 300.
  • learning material data considered appropriate for the intended use is extracted from the learning material database storage means 610 in which material data (image data) for deep learning is stored.
  • the learning material data stored in the learning material database storage means 610 may utilize a large-scale open source data set such as COCO (Common Object in Context) or PascalVOC Dataset.
  • COCO Common Object in Context
  • PascalVOC Dataset a large-scale open source data set
  • images required depending on the intended use may be displayed from the image processing means 100 using the image output control means 110 and image data stored in the data storage means 120 may be utilized.
  • the annotation means 620 adds class identification information and a groundtruth BBox, which is the correct answer box, to the learning material data extracted from the learning material database storage means 610 to create supervised data.
  • open source datasets such as the COCO and PascalVOC Dataset may be used directly as supervised data without using the annotation means 620 if the data has already been annotated.
  • the supervised data is augmented by the augmentation means 630 to produce training images 631 in order to enhance versatility and robustness.
  • the augmentation means 630 includes, for example, a means for shifting an image to any position in the horizontal and vertical directions, a means for enlarging or reducing the image to any magnification, a means for rotating the image to any angle, a means for changing the aspect ratio, and a dewarping means for performing distortion correction and cylindrical transformation, and augments the image by combining various means according to the purpose of use.
  • the learning image 631 augmented by the Augment means 630 is input to the deep learning means 640 to calculate the weight coefficient of the DNN model 310, and the calculated weight coefficient is converted, for example, into the ONNX format to create the model learning dictionary 320.
  • the model learning dictionary 320 may be created by converting it into a format other than the ONNX format.
  • the deep learning means 640 is realized by an open source learning environment called darknet and an arithmetic processor (including a personal computer or a supercomputer).
  • the darknet has learning parameters called hyperparameters, and it is possible to set appropriate hyperparameters according to the use and purpose, and to enhance versatility and robustness in combination with the Augment means 630.
  • the deep learning means 640 may be configured with electronic circuits. Depending on the DNN model 310 to be applied, a learning environment configured with a programming language may be used.
  • the image data for validation stored in the learning material database storage means 610 may be, for example, a large-scale open source validation image data set such as COCO (Common Object in Context) or PascalVOC Dataset.
  • images for verifying the required detection accuracy, detection performance, versatility, and robustness for the intended use may be, for example, image data stored in the display and data storage means 120 from the image processing means 100 using the image output control means 110.
  • the annotation means 620 adds class identification information and a groundtruth BBox, which is the correct answer box, to the validation material data extracted from the learning material database storage means 610 to create validation data 623.
  • the annotation means 620 adds class identification information and a groundtruth BBox, which is the correct answer box, to the validation material data extracted from the learning material database storage means 610 to create validation data 623.
  • open source data set such as COCO or PascalVOC Dataset
  • the position information 621 including the correct detection frame and the validation data 623 including the correct class identification information 622 are input to a means for recovering a series of likelihoods of the model pre-processing means 200, the object detection model 300, and the model post-processing means 400 in accordance with the frame control information 500 described in embodiment 1, and the various results obtained by inputting them to a second mAP calculation means 650, and an IOU value 653 is calculated by comparing the groundtruth BBox, which is the correct frame, with the PredictedBBox (predicted BBox) calculated as a result of inference (prediction), and all validation It is also possible to calculate Precision 654 indicating the percentage of all prediction results for the application data 623 that were correctly predicted with an IOU value 653 equal to or above an arbitrary threshold, Recall 655 indicating the percentage of actual correct results that were able to predict a BBox in a position close to the correct result with an IOU value 653 equal to or above an arbitrary threshold, and an AP (Average Precision) value 6
  • the second mAP calculation means 650 for example, when YOLO is applied to the DNN model 310, is equipped with an open source inference environment called darknet and a calculation processor (including a personal computer or a supercomputer), and it is desirable that it has the likelihood rescue means described in embodiment 1 and the functions, programs, and performance that can remove outliers from time-series data and restore information.
  • the series of means for generating the IOU value 653, Precision 654, Recall 655, AP value 651, and mAP value 652 using the image processing means 100, model pre-processing means 200, object detection model 300, model post-processing means 400, robustness verification means 800, learning material database storage means 610, annotation means 620, and second mAP calculation means 650 described in the first and second embodiments serve as performance indicators for analyzing the robustness and reinforcement policy of the model learning dictionary of a model that detects the position and class of objects in an image.
  • the robustness verification means 800 and the probability statistics calculation means 810 described in embodiment 1 make it possible to extract the likelihood distribution 830 for each detected object for each parameter of the frame control information 500, thereby making it possible to separate the weaknesses and strengthening policies in versatility and robustness against various fluctuating conditions arising from the model learning dictionary 320 created by deep learning or the like from potential issues inherent in the neural network itself, including the DNN model, and to more accurately grasp them. Therefore, since effective learning image data and supervised data can be applied by deep learning or the like, it becomes possible to strengthen the versatility and robustness of the model learning dictionary 320.
  • the model learning dictionary 320 if it is determined that the model learning dictionary 320 has insufficient performance as a result of analysis based on the likelihood distribution 830, the average likelihood 801, the likelihood histogram 840, the likelihood standard deviation 802, the maximum likelihood 803, the minimum likelihood 804, the IOU value 805, etc. calculated by the probability statistical calculation means 810, learning images are prepared based on the result, and re-learning is performed by the built-in or external dictionary learning means 600.
  • These performance indicators for object detection in one embodiment are used to verify the detection performance, detection accuracy, and versatility and robustness issues such as variability and incompleteness of the object detection model 300 and the model learning dictionary 320. Based on the results, the object detection model 300 is repeatedly subjected to deep learning using the dictionary learning means 600 in a direction that improves, resolves, and strengthens the object detection model 300, thereby making it possible to realize object detection with higher detection capabilities and high versatility and robustness even under various variable conditions.
  • FIG. 25 will be used to explain another embodiment of the method for relieving the series of likelihoods and improving and stabilizing inference performance using the frame control information 500, model pre-processing means 200, object detection model 300, and model post-processing means 400 described in embodiment 1.
  • This embodiment uses the screen splitting function 250 of the model pre-processing means 200 to split the screen on which object detection is performed, thereby in particular reducing the latency and processing time of the inference process.
  • FIG. 25A shows a case where the number of horizontal pixels Xi of the reference image 1D770, which is the model input image, is set to 128, and the number of vertical pixels Yi is set to 128.
  • the object detection model 300 performs inference using a DNN model in the YOLO model 360 shown in FIG. 3A, in which the first detection layer 361 has 4 ⁇ 4 grid cells, the second detection layer 362 has 8 ⁇ 8 grid cells, and the third detection layer 363 has 16 ⁇ 16 grid cells.
  • the model preprocessing means 200 has a crop function 240 for cutting out an appropriate detection range for the reference image 221 in accordance with the screen division parameters 512 of the frame control information 500, and a screen division function 250 for vertically and horizontally resizing and pasting the image cut out by the crop function 240 into an area obtained by dividing the input screen of the object detection model 300 into two, and one of the screens divided by the screen division function 250 is set as a first divided reference image 224 and the other is set as a second divided reference image 225, and the first divided reference image 224 is converted into the first divided reference image 225 in accordance with the position shift amount 510 of the frame control information 500.
  • a model pre-processing means for generating a first post-division position-shifted image by shifting the position of the second post-division reference image by G pixels (G is an arbitrary decimal number) in the horizontal direction and H pixels (H is an arbitrary decimal number) in the vertical direction from the first post-division reference image and inputting the second post-division position-shifted image to an object detection model for each frame;
  • an object detection model including a model learning dictionary for inferring an object position, class identification, and likelihood for the second post-division reference image and the first post-division position-shifted image for each frame output from the model pre-processing means;
  • an image selection means for selecting an input image and an inference result that are maximum by comparing likelihood information after individual identification 404 of the second segmented reference image 225 with likelihood information after individual identification 404 of the first segmented position shifted image 226 after inputting position information 301 including the detection frame before correction, likelihood information before correction 302 of the second segmented reference image 225,
  • the position shift amount 510 of the frame control information 500 may be characterized in that it is determined by a pixel value approximating or equal to a half pixel value obtained by dividing the number of pixels in the vertical and horizontal directions of the first divided reference image 224, one of the images divided by the crop function 240 and the screen division function 250, in accordance with the screen division parameters 512 of the frame control information 500, by the horizontal and vertical grid cell sizes for each of one or more detection layers of the neural network model including the DNN model 310.
  • the model preprocessing means 200 may be characterized by setting the screen division parameters 512 of the frame control information 500 so that the first segmented reference image 224 and the second segmented reference image 225 are divisible both horizontally and vertically when divided by the horizontal and vertical grid cell sizes for one or more detection layers of the neural network model including the DNN model 310.
  • the reference image 1D770 has a person 775 as a detection object.
  • the area in the reference image 1D770 where object detection is performed is the dotted range 785.
  • a method of recovering the likelihood a method of dividing the screen to be input to the object detection model 300 into two parts, top and bottom, is applied.
  • the resize function 230 and crop function 240 of the model preprocessing means 200 resize and crop the image of the range 785 to 128 pixels horizontally and 64 pixels vertically.
  • the image after resizing and cropping becomes the processed image 771, and the resize parameters and crop parameters at this time become the screen division parameters 512.
  • the screen division function 250 pastes the processed image 771 as the first divided reference image 1U772 on the upper side and the second divided reference image 1L773 on the lower side to generate an input image for the object detection model 300.
  • the horizontal pixel size of 128 pixels and the vertical pixel size of 64 pixels of the first divided reference image 1U772 and the second divided reference image 1L773 are numbers of pixels that are divisible both horizontally and vertically when divided by the 4 ⁇ 4 grid cell of the first detection layer 361, the 8 ⁇ 8 grid cell of the second detection layer 362, and the 16 ⁇ 16 grid cell of the third detection layer 363 of the YOLO model 360 in this example. This makes it possible to alleviate the decrease in inference accuracy due to fluctuations in the position and size of the detection target that depend on the structure of the model itself that detects objects in the image under the same conditions for each divided image.
  • the position shift amount 510 of the frame control information 500 is selected to be referenced when generating the first post-segmentation position-shifted image 1US774 from the first post-segmentation reference image 1U772 by the position shift function 220 of the model preprocessing means 200.
  • the person 776 in the processed image 771 is smaller in size and has a different aspect ratio than the original person 775 due to the resizing effect.
  • the object size is classified as medium to small, and the grid-like pattern in which a specific likelihood is partially reduced shows a size of about 8 pixels horizontally and vertically, and is most strongly reflected in the results of inference by the third detection layer 363 with a grid cell of 16 x 16.
  • the likelihood 779 of the likelihood information after individual identification of the person 776 in the first divided position shifted image 1US772 in FIG.
  • the likelihood 780 of the likelihood information after individual identification of the person 776 in the second divided reference image 1L773 is 59%.
  • the likelihood 780 (59%) of the second divided reference image 1L773 is at a position where the likelihood decreases when the likelihood decreases in a specific grid pattern of about 8 pixels
  • the likelihood 779 (93%) of the first divided position shifted image 1US774 is not affected by the decrease in likelihood because it is located at a position shifted by 4 pixels in the horizontal and vertical directions, which is about 1/2 of the position where the likelihood of the specific grid pattern of about 8 pixels decreases. Therefore, in this example, setting the horizontal position shift amount (G) and vertical position shift amount (H) of the position shift amount 510 of the frame control information 500 to 4 each is useful in relieving the decrease in likelihood.
  • the blank areas 794 that are generated by processing and in which no effective image exists may be filled uniformly with a single color that is equal to the average luminance level of the effective image to generate the image.
  • the frame rate between each frame may be determined based on the inference processing time corresponding to one reference image 1D770 by the object detection model 300. Since it is only necessary to perform inference processing for one image per frame, it is possible to shorten the object detection processing time, reduce latency, and increase the frame rate even if there is a limit to the performance of the arithmetic processor, including hardware and software.
  • a first divided position shifted image 2US and a second divided reference image 2L are generated for frame 2
  • a first divided position shifted image 3US and a second divided reference image 3L are generated for frame 3
  • a first divided position shifted image 4US and a second divided reference image 4L are generated for frame 4.
  • the first divided position shifted image 1US774 and the second divided reference image 1L773 generated for frame 1 are input to the object detection model 300, which outputs a 1US detection result 781 which is an inference result for the first divided position shifted image 1US774 and a 1L detection result 782 which is an inference result for the second divided reference image 1L773.
  • These output results correspond to the position information 301 including the detection frame before correction including the pseudo output and the likelihood information 302 before correction.
  • a 2US detection result and a 2L detection result are calculated for frame 2
  • a 3US detection result and a 3L detection result are calculated for frame 3
  • a 4US detection result and a 4L detection result are calculated for frame 4.
  • the 1US detection result 781 and the 1L detection result 782 calculated for frame 1 are classified by the individual identification means 410 of the model post-processing means 400 into a 1US identification result 783 unique to each detected object for the first divided position shift image 1US774 and a 1L identification result 784 for the second divided reference image 1L773, and output.
  • These output results include position information 403 including the detection frame after individual identification and likelihood information 404 after individual identification, and correspond to position information 777 and 778 including the detection frame after individual identification in FIG. 25A, and likelihoods 779 (93%) and 780 (59%) of the likelihood information after individual identification.
  • the 2US identification result and the 2L identification result are calculated for frame 2
  • the 3US identification result and the 3L identification result are calculated for frame 3
  • the 4US identification result and the 4L identification result are calculated for frame 4.
  • the image selection means 450 of the model post-processing means 400 compares the likelihood 779 (93%) for the first post-division position shifted image 1US774 and the likelihood 780 (59%) for the second post-division reference image 1L773 for the 1US classification result 783 and 1L classification result 784 calculated for frame 1, and selects the maximum likelihood 779 (93%) and the first post-division position shifted image 1US774. Therefore, as the maximum likelihood output result that is the result of likelihood rescue, the maximum likelihood information 402 outputs the likelihood 779 (93%) for the first post-division position shifted image 1US774 and class classification information.
  • the position information 401 including the maximum likelihood detection frame the first post-division position shifted image 1US774 side has been selected by the image selection means 450, and therefore the position information 777 including the detection frame after individual identification shown in Fig. 25A is shifted by the amount of resizing due to screen division, offset at the time of cutting out and pasting, and position shift applied with respect to the original reference image 1D770.
  • the image selected by the image selection means 450 is the second divided reference image 1L773
  • the results of performing resizing and processing in the opposite direction of the offset at the time of cutting and pasting on the 1L identification result 784 in accordance with the screen division parameters 512 are output as position information 401 including the maximum likelihood detection frame and maximum likelihood information 402.
  • the image selection means 450 and the detection frame correction means 460 calculate the position information 401 including the maximum likelihood detection frame and the maximum likelihood information 402. Note that the position information 401 including the maximum likelihood detection frame and the maximum likelihood information 402 may be input to the image output control means 110 and the robustness verification means 800.
  • the position information 401 including the maximum likelihood detection frame is, for example, information including the center coordinates, horizontal width, and vertical height of the detection frame
  • the maximum likelihood information 402 is, for example, likelihood and class identification information indicating detection accuracy.
  • the frame holding means 470, frame information interpolation means 480, traceability stable value indexing means 520, anomaly detection frame number calculation means 530, detection NG number calculation means 540, and state machine control means 550 described in the first embodiment above may be applied to remove abnormal values as time-series information, restore information by various prediction means and restoration, and apply state machine control by indexing stable values of control, thereby improving inference performance, stabilization, and improving tracking ability.
  • the screen division parameters 512 and the screen division function 250 are used to divide the screen into two planes, top and bottom, but a screen division method other than top and bottom may be applied.
  • the screen may be divided into three or more planes, and the position shift amount 510 may be expanded to apply two or more types.
  • the individual identification means 410 when the individual identification means 410 performs screen division processing in accordance with the screen division parameters 512 of the frame control information 500, it may be characterized in that it determines in which area of the second divided reference image 225 or the first divided position shifted image 226 the position information 301 including the pre-correction detection frame detected on the boundary between the second divided reference image 225 and the first divided position shifted image 226 is more widely distributed, cuts out the position information 301 including the pre-correction detection frame in the area where it is more widely distributed within the area and leaves it as a result, and cuts out and deletes the position information 301 of the pre-correction detection frame that extends beyond one of the areas.
  • the position shift amount 510 of the frame control information 500 may be determined by a half pixel value or a pixel value close to the value obtained by dividing the number of pixels in the vertical and horizontal directions of the first divided reference image 224, one of which is divided by the crop function 240 and the screen division function 250, by the grid cell size in the horizontal and vertical directions for each of one or more detection layers of the neural network model including the DNN model 310, in accordance with the screen division parameter 512 of the frame control information 500, and may be applied by the model pre-processing means 200 and the model post-processing means 400 in the order of the position shift amount 510 corresponding to the detection layer in which the detection accuracy or detection frequency is high depending on the size of the detection target.
  • the average value of the multiple position shift amounts 510 may be used as the position shift amount 510.
  • a more effective position shift amount or an average position shift amount can be applied, further improving the remedy for the decrease in inference accuracy due to fluctuations in the position and size of the object to be detected, making it possible to more reliably improve object detection capabilities and class identification capabilities.
  • the annotation means 620 may add correct frame data to the training image generated in accordance with the screen division parameters 512, and the model training dictionary 320 may be re-trained by the built-in or external dictionary learning means 600 described above.
  • the correct answer frame IOU value 498 which is an index showing the extent to which the area of the position information 401 including the most likely detection frame for each detected object in the current frame of the frame information holding means 470 and the position information 621 including the correct detection frame overlap, the true/false information of the result of comparing the most likely likelihood information 402 for each detected object in the current frame of the frame information holding means 470 and the correct class identification information 622, and the likelihood of the most likely likelihood information 402 are calculated, and the second mAP calculation means 650 calculates indexes such as AP value 651, mAP value 652, Recall 655, and Precision 654 for the validation image.
  • the IOU value 653 may be the value of the correct answer frame IOU value 498 that is output as it is.
  • the resizing function 230, cropping function 240, and screen splitting function 250 of the model preprocessing means 200 are used to reprocess these learning images in accordance with the screen splitting parameters 512 of the frame control information 500, and the images are processed into supervised data by the annotation means 620, augmented by the augmentation means 630, and then deep learning is performed by the deep learning means 640.
  • Fig. 27 is a diagram showing a summary of the object detection device of the present invention.
  • the object detection device, object detection method, and program of the present invention have a model pre-processing means for processing image data generated by an image processing means for acquiring an image including a detection target and appropriately processing it into two or more images per frame in accordance with frame control information that sets a position shift amount that is highly effective in reducing the likelihood, in order to address the problem of the likelihood of the object detection model potentially decreasing in a specific lattice shape, and calculates the position information and the likelihood information of the maximum likelihood detection frame for each detected object from inference information obtained by inputting a plurality of processed images into an object detection model having a learned model learning dictionary by an image selection means for maximizing the likelihood of the model post-processing means and a detection frame correction means for correcting the detection frame to a normal position when the position-shifted image side is selected.
  • an object detection device that includes an image processing means for acquiring and processing an image, a model pre-processing means for generating a first position-shifted image in which a reference image has been subjected to a positional shift in accordance with the positional shift amount in the frame control information, an object detection model that infers an object position, class identification, and likelihood from the reference image and the first position-shifted image for each frame, and a model post-processing means that includes an image selection means for comparing position information and likelihood information including a detection frame for each detected object in each image, which are the inference results of the object detection model, and selecting the maximum inference result and outputting it for each frame, and when the image selection means selects the inference result of the first position-shifted image, includes a detection frame correction means that outputs position
  • each component is configured with dedicated hardware, but may also be realized by executing a software program suitable for each component.
  • Each component may also be realized by a program execution unit such as a CPU or processor reading and executing a software program recorded on a recording medium such as a hard disk or semiconductor memory.
  • the software that realizes the object detection device of the above embodiment is a program such as the following.
  • this program causes a computer to execute an object detection method.
  • the present invention is useful in technical fields in which an object detection model is used to detect the position, classify, and track an object in an image.
  • the present invention is useful in technical fields in which cameras and other devices used for object detection are made smaller, more energy-efficient, and less expensive.
  • Model pre-processing means 201, 202, 203, 204, 205, 206, 210, 220A, 220B, 220C, 220D, 231, 232, 233, 261, 262, 263, 266, 267, 268, 271, 272, 273, 311, 321, 331, 826 Model input image 221, 701, 723, 751, 770 Reference image 222, 702, 724, 752 First position shift image 223, 725 Second position shift image 224, 772 First divided reference image 225, 773 Second post-division reference image 226, 774 First post-division position shift image 207, 208, 209, 211, 212, 213, 411, 412, 415, 416, 704, 705, 728, 729, 730, 731, 732, 733, 755, 756, 777, 778 Position information including detection frame after individual identification 214, 215, 216

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Multimedia (AREA)
  • Image Analysis (AREA)

Abstract

物体検出装置は、画像を加工する画像処理手段と、位置シフト量に則って、基準画像に位置シフトを施した第一の位置シフト画像を生成するモデル前処理手段と、フレーム毎に基準画像と第一の位置シフト画像から物体位置とクラス識別と尤度を推論する物体検出モデルと、推論結果である各画像の検出物体毎の検出枠を含む位置情報と尤度情報を比較して最大となる方の推論結果を選択してフレーム毎に出力する画像選択手段を有し、画像選択手段が第一の位置シフト画像の推論結果を選択した場合は、フレーム制御情報の位置シフト量に則って逆方向に位置シフトを施した検出枠を含む位置情報を出力する検出枠補正手段を備える。

Description

物体検出装置、物体検出方法、及びプログラム
 本発明は、画像を用いて物体検出を行うモデルの推論精度と対象物体の追跡能力を向上するための物体検出装置、物体検出方法、及びプログラムに関する。
 近年、AI機能を搭載したエッジAIやクラウドAIが急速に普及してきている。AI(人工知能)は人の脳のニューロンをモデル化したものであり、その中でも画像から物体検出を行うモデルが多岐にわたり開発されている。
 一例として、Augmentationにより水増しされた画像データ(拡張データ)や学習パラメータを用いて物体検出モデルのモデル学習辞書を初期学習、もしくは、再学習する際に、拡張データの品質が学習用データに求められる品質を満たしていなければ、拡張データはノイズとなり、学習の質及び効率を下げるとともに、推論精度も低下される要因となることがあるため、学習用の元データを編集パラメータにより加工して得られる拡張データの推論結果に基づいて、尤度やクラス識別率が低下するなどのノイズになりえるパラメータを除外した編集パラメータで加工した拡張データを使ってモデル学習辞書を再学習することで学習のための拡張データの品質を向上させ、モデル学習辞書のロバスト性を向上させる方法が提案されている(特許文献1参照)。
 また、一例として、推論精度を向上するために内視鏡などに搭載したカメラから取得された画像から人体の内部の疾患部と考えられる領域を特定した後、特定された領域の拡大と位置をスライドさせた画像に加工して、特定領域の疾患部の推論精度とクラス識別確率が最大化されるように探索しながら疾患部の検出を行う方法が提案されている(特許文献2参照)。
 また、ニューラルネットワークなどにより検出した結果から動きベクトルを算出することにより、手振れなどによって撮影画像にブレが存在する場合、ブレ領域を検出し、学習用画像グループから撮影画像に近い動きベクトルに対応する学習用画像を選択して学習させることで、検出性能を向上させる方法が提案されている(特許文献3参照)。
特開2021-111228号公報 特表2022-505205号公報 特開2021-196643号公報
You Only Look Once: Unified, Real-Time Object Detection(https://pjreddie.com/darknet/yolo/) mAP(mean Average Precision) for Object Detection(https://jonathan-hui.medium.com/map-mean-average-precision-for-object-detection-45c121a31173)
 しかしながら、従来の物体検出装置、物体検出方法、及びプログラムでは、深層学習などによって物体検出モデルのモデル学習辞書の性能を向上させることや、学習結果を最大化するように探索的に推論することはできても、物体検出モデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下を救済することができない、もしくは、不十分になる場合があった。本発明は、上記課題を鑑みてなされたものであり、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下を救済して、物体検出能力やクラス識別能力や追跡能力を向上することができる物体検出装置、物体検出方法、及びプログラムを提供する。
 本発明の一態様に係る物体検出装置は、画像を取得し、当該画像から物体検出を行うための基準画像を作成する画像処理手段と、フレーム制御情報の位置シフト量に則って、前記基準画像に水平方向にMピクセル(Mは任意の小数)および垂直方向にNピクセル(Nは任意の小数)の位置シフトを施した第一の位置シフト画像を生成し、該基準画像と該第一の位置シフト画像とをフレーム毎に物体検出モデルに入力するモデル前処理手段と、前記モデル前処理手段から出力されたフレーム毎の前記基準画像と前記第一の位置シフト画像とに対して物体位置とクラス識別と尤度を推論するモデル学習辞書を含む物体検出モデルと、前記物体検出モデルの推論結果である検出物体毎の前記基準画像の検出枠を含む位置情報および前記基準画像の尤度情報と、前記第一の位置シフト画像の検出枠を含む位置情報および前記第一の位置シフト画像の尤度情報とを比較して最大となる方の入力画像と該推論結果とを選択してフレーム毎に出力する画像選択手段を有するモデル後処理手段と、前記モデル後処理手段が、前記画像選択手段により前記第一の位置シフト画像の推論結果を選択した場合は、前記フレーム制御情報の位置シフト量に則って前記モデル前処理手段の生成時とは逆方向に位置シフトを施した検出枠を含む位置情報を出力する検出枠補正手段とを備える。
 また、本発明の一態様に係る物体検出方法は、画像を取得し、当該画像から物体検出を行うための基準画像を作成する画像処理ステップと、フレーム制御情報の位置シフト量に則って、前記基準画像に水平方向にMピクセル(Mは任意の小数)および垂直方向にNピクセル(Nは任意の小数)の位置シフトを施した第一の位置シフト画像を生成し、該基準画像と該第一の位置シフト画像とをフレーム毎に前記物体検出モデルに入力するモデル前処理ステップと、前記モデル前処理ステップから出力されたフレーム毎の前記基準画像と前記第一の位置シフト画像とに対して物体位置とクラス識別と尤度を推論するモデル学習辞書を含む物体検出モデルと、前記物体検出モデルの推論結果である検出物体毎の前記基準画像の検出枠を含む位置情報および前記基準画像の尤度情報と、前記第一の位置シフト画像の検出枠を含む位置情報および前記第一の位置シフト画像の尤度情報とを比較して最大となる方の入力画像と該推論結果とを選択してフレーム毎に出力する画像選択ステップを有するモデル後処理ステップと、前記モデル後処理ステップが、前記画像選択ステップにより前記第一の位置シフト画像の推論結果を選択した場合は、前記フレーム制御情報の位置シフト量に則って前記モデル前処理ステップの生成時とは逆方向に位置シフトを施した検出枠を含む位置情報を出力する検出枠補正ステップとを含む。
 また、本発明の一態様に係るプログラムは、上記に記載の物体検出方法をコンピュータに実行させるためのプログラムである。
 なお、これらの包括的または具体的な態様は、システム、装置、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なCD-ROMなどの記録媒体で実現されてもよく、システム、装置、集積回路、コンピュータプログラムおよび記録媒体の任意な組み合わせで実現されてもよい。
 本発明によれば、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下を救済して、物体検出能力やクラス識別能力や追跡能力を向上することができる物体検出装置、物体検出方法、及びプログラムが提供される。
本発明の実施形態1による物体検出装置の構成を示す図である。 人工ニューロンモデルの構成を示す図である。 ある実施形態によるYOLOモデルの構成を示す図である。 ある実施形態によるYOLOモデルの動作原理を示す図である。 物体検出におけるIOU値の算出概念を示す図である。 物体検出におけるIOU値の算出概念を示す図である。 本発明の実施形態によるモデル後処理手段の個体識別手段のフローチャートを示す図である。 本発明の実施形態によるモデル後処理手段の個体識別手段の動作を示す図である。 本発明の実施形態によるモデル後処理手段の個体識別手段のフローチャートを示す図である。 本発明の実施形態によるモデル後処理手段の個体識別手段の動作を示す図である。 従来の物体検出装置の課題を示す第1図である。 従来の物体検出装置の課題を示す第2図である。 本発明の実施形態による静止画に対するモデル前処理手段の位置シフト機能の動作を示す図である。 本発明の実施形態によるモデル前処理手段のリサイズ機能の動作を示す図である。 本発明の実施形態による静止画に対するロバスト性検証手段の確率統計演算手段の動作を示す図である。 本発明の実施形態による静止画に対するロバスト性検証手段の確率統計演算手段の動作を示す図である。 本発明の実施形態による静止画に対するロバスト性検証手段の確率統計演算手段の動作を示す図である。 本発明の実施形態1によるモデル前処理手段とモデル後処理手段を使用した尤度救済方法の尤度分布を示す図である。 本発明の実施形態1によるモデル前処理手段とモデル後処理手段を使用した尤度救済方法の動作を示す図である。 本発明の実施形態1によるモデル前処理手段とモデル後処理手段を使用した尤度救済方法の時系列の動作を示す図である。 本発明の実施形態1によるモデル前処理手段とモデル後処理手段を使用した尤度救済方法の尤度分布を示す図である。 本発明の実施形態1によるモデル前処理手段とモデル後処理手段を使用した尤度救済方法の動作を示す図である。 本発明の実施形態1によるモデル前処理手段とモデル後処理手段を使用した尤度救済方法の時系列の動作を示す図である。 本発明の実施形態1によるモデル前処理手段とモデル後処理手段を使用した尤度救済方法の尤度分布を示す図である。 本発明の実施形態1によるモデル前処理手段とモデル後処理手段を使用した尤度救済方法の動作を示す図である。 本発明の実施形態1によるモデル前処理手段とモデル後処理手段を使用した尤度救済方法の時系列の動作を示す図である。 本発明の実施形態によるモデル前処理手段の階調変換機能の動作を示す図である。 本発明の実施形態によるモデル前処理手段のアスペクト比変更機能の動作を示す図である。 本発明の実施形態によるモデル前処理手段の回転機能の動作を示す図である。 本発明の実施形態によるフレーム情報保持手段とフレーム情報補間手段の構成を示す図である。 本発明の実施形態によるフレーム情報補間手段のニュートン後退補間法の動作原理を示す図である。 本発明の実施形態による距離係数算出手段と動きベクトル量算出手段と動きベクトル予測算出手段の動作を示す図である。 本発明の実施形態による異常検出情報除去手段と検出情報復元手段と異常検出情報予測除去手段と検出情報予測復元手段の動作を示す図である。 本発明の実施形態によるステートマシン制御手段の動作を示す図である。 本発明の実施形態2による物体検出装置の構成を示す図である。 本発明の実施形態2によるモデル前処理手段とモデル後処理手段を使用した尤度救済方法の動作を示す図である。 本発明の実施形態2によるモデル前処理手段とモデル後処理手段を使用した尤度救済方法の時系列の動作を示す図である。 従来の物体検出装置の構成を示す図である。 本発明の物体検出装置の要約を示す図である。
 (開示の基礎となった知見)
 近年、AI機能を搭載したエッジAIやクラウドAIが急速に普及してきている。AI(人工知能)は人の脳のニューロンをモデル化したものであり、その中でも画像から物体検出を行うモデルが多岐にわたり開発されている。人間に例えると、目の情報(画像)から対象物体がどの位置にいるかを検出し、その物体が人か車両か等のどのクラスに当たるかを識別するクラス識別を行うことが一般的である。物体検出モデルは、畳み込み型ニューラルネットワークであるCNN(Convolutional Neural Network)が使われることが多く、近年は、画像データに対してクラス判別と正解枠情報であるgroundtruth Bounding Box(以下、ground truth BBoxと称す)を付加した教師データを大量に用意した後、例えば、勾配降下法などを用いて物体か背景かを分類する問題ではバイナリークロスエントロピーを誤差関数とし、groundtruth BBoxとのズレの回帰問題に対しては、L1ノルム(絶対値誤差)を誤差関数として、それらすべての誤差関数を最小化してCNNの重み係数情報(モデル学習辞書)を学習するような深層学習によるEnd―to―End学習方式が主流になっており、物体の位置検出とクラス識別のためのモデルとして、FasterR-CNN、EfficientDet、SSDや、YOLO(You Only Look Once)(例えば、非特許文献1参照)が使用されるケースが増加している。
 また、物体検出モデルの性能を確認する手段として、対象物体の検出信頼度を示す指標の1つに前述の物体検出モデルの1つであるYOLOの場合は、以下の(式1)に示す信頼度スコアがある(例えば、非特許文献1参照)。信頼度スコアは、一般的には尤度と称される場合もある。
 信頼度スコア(尤度) =Pr(Classi|Object)×Pr(Object)×IOUtruthpred(式1)
 ここで、Pr(Classi|Object)は、Object(対象物体)がどのクラスに属するかのクラス確率を示し、すべてのクラス確率を合計すると“1”になるものである。Pr(Object)は、ObjectがBoundingBox(以下BBoxと称す)に含まれている確率を示すものである。IOUtruth predは、正解枠情報であるground truth BBoxとYOLO等のモデルにより予測(推論)したBBoxの2つの枠領域がどのくらい重なっているかを示す指標であり、以下の(式2)に示すIOU(Intersection Over Union)値で算出されるものである。
 IOU =Area of Union ÷ Area of Intersection(式2)
 ここで、Area ofUnionは、比較する2つの枠領域の和集合の面積である。Area of Intersectionは、比較する2つの枠領域の共通部分の面積である。
 例えば、カメラで撮影された画像に対して、深層学習されたモデル学習辞書を含め、例えばYOLOにより推論する場合は正解枠であるgroundtruth BBoxなどの教師データが存在しないため、IOUtruthpredを“1”として演算した結果を尤度(信頼度スコア)と称する場合もある。この尤度を用いて、例えばカメラで撮影した画像内の検出対象に対する検出精度および検出性能を指標化することが可能である。また、撮影した画像に対して、正解枠であるgroundtruth BBoxを付加した教師データを作成することにより、本来の信頼度スコア(尤度)とIOU値の算出も可能になるため、画像内の検出対象に対するモデル学習辞書を含めた物体検出モデルの検出精度や検出性能を指標化することが可能である。
 また、物体検出の推論精度や性能を比較するための指標として、mAP(meanAverage Precision)とAP(AveragePrecision)が使われる場合が多い。(例えば、非特許文献2参照)。
 物体検出におけるmAPおよびAPは、以下のような方法で算出される。
 複数枚の画像データの対象となる検出物体に対して正解枠であるgroundtruth BBoxを付加したバリデーションデータを用意し、物体検出モデルにより推論(予測)した結果として算出されるPredictedBBox(予測したBBox)と比較してIOU値を算出する。その際、すべてのバリデーションデータの予測結果の内、正しくIOUが任意の閾値以上で予測できた割合を示すPrecisionと、実際の正解結果の内、IOUが任意の閾値以上で正解結果と近い位置のBBoxを予測できた割合を示すRecallを算出する。その際に、バリデーションデータに対して、各識別するクラス毎の前述したObjectがBBoxに含まれている確率が最小である“0”から最大である“1”に到るまでのPrecisionとRecallの2次元グラフの面積の総和をAPとして算出し、さらに全識別クラスについて算出されたAPを平均したものをmAPとして算出するものである。画像内の検出対象に対するモデル学習辞書を含めた物体検出モデルの平均的な検出精度や検出性能の指標化と合わせて、バリデーションデータの選定方法には依存するが、各種のロバスト性に対する性能指標としても活用されることが多い。
 図26は、従来の画像内の物体の位置検出やクラス識別を行い、物体検出モデルのロバスト性や強化方針を分析してモデル学習辞書の強化学習を行う物体検出装置を示すブロック図である。
 画像を取得して適切に加工する画像処理手段100は、レンズ101(例えば、標準ズーム、広角ズーム、魚眼)と、レンズ101を通した対象物から発した光を受光し、光の明暗を電気情報に変換するデバイスであるイメージセンサ102と、黒レベル調整機能、HDR(ハイダイナミックレンジ)、ゲイン、露光調整機能、欠陥画素補正機能、シェーディング補正機能、ホワイトバランス機能、色補正機能、ガンマ補正機能、及び、局所トーンマッピング機能等を備えた画像処理プロセッサ103を有し、撮影環境の中で、照度などの時系列上の変動条件を吸収しながら検出すべき物体を見やすく、もしくは、見つけやすくする画像処理を施す。
 画像処理手段100で生成された画像は、画像出力制御手段110に入力されて、表示およびデータ格納手段120であるモニタやPC(パーソナルコンピュータ)などの外部メモリ、クラウドサーバー等に送信される。
 一方、物体検出モデル300による物体検出を行うために、画像処理手段100により生成された画像データをモデル前処理手段200に入力して、物体検出モデル300の入力に適切な画像となるように加工する。物体検出を行うために適切な画像とは、当該画像から物体検出を行うための基準画像であり、ここでの加工とは、基準画像を作成することを意味する。なお、モデル前処理手段200は、電子回路で構成される場合もあれば、アフィン変換関数291や射影変換関数292(ライブラリ)とCPUや演算プロセッサで構成される画像処理プロセッサ290によって実現する場合もある。
 モデル前処理手段200で加工されたモデル入力画像210は、物体検出モデル300に入力されて、推論(予測)により、対象物体がどの位置にいるかを検出されるとともに、その物体が人か車両か等のどのクラスに該当するかを識別(クラス識別)される。その結果として物体検出モデル300から、1つの画像中に存在する検出物体毎に、検出不能と疑似検出を含むゼロないし複数の補正前の検出枠を含む位置情報301と補正前の尤度情報302が出力される。ここで、補正前の検出枠を含む位置情報301は、例えば、検出枠の中心座標、水平方向の幅、垂直方向の高さを含む情報であり、補正前の尤度情報302は、例えば、検出精度を示す尤度とクラス識別情報である。
 物体検出モデル300は、例えば、モデル学習辞書320と、畳み込み型ニューラルネットワーク(CNN)を使用したディープニューラルネットワーク(DNN)モデル310で構成される。DNNモデル310は、例えば、検出処理速度に優位性の高いモデルであるYOLO(例えば、非特許文献1参照)やSSDなどを使用する場合がある。また、検出精度を優先する際は、例えば、FasterR-CNNやEfficientDetなどを使用する場合もある。また、物体の位置検出は行わずにクラス識別を中心に実施する際は、例えば、MobileNetなどを使用する場合もある。モデル学習辞書320は、DNNモデル310の重み係数のデータの集合体であり、DNNモデル310の場合は、辞書学習手段600の深層学習手段640により初期学習、もしくは、再学習されるものである。
 物体検出モデル300から出力された1つの画像中に存在する検出物体毎に、検出不能と疑似検出を含むゼロないし複数の補正前の検出枠を含む位置情報301と補正前の尤度情報302は、モデル後処理手段400に入力した後、補正前の検出枠を含む位置情報301の相互のIOU値による選別や補正前の尤度情報302の最大判定などにより、各検出物体にする最も適切と考えられる最尤の検出枠を含む位置情報401と最尤の尤度情報402に補正されて、表示およびデータ格納手段120であるモニタやPC(パーソナルコンピュータ)などの外部メモリ、クラウドサーバー等に送信される。ここで、最尤の検出枠を含む位置情報401は、例えば、検出枠の中心座標、水平方向の幅、垂直方向の高さを含む情報であり、最尤の尤度情報402は、例えば、検出精度を示す尤度とクラス識別情報である。
 これら、画像処理手段100とモデル前処理手段200と物体検出モデル300とモデル後処理手段400により最尤の検出枠を含む位置情報401と最尤の尤度情報402を生成する一連の手段が、画像内の物体の位置検出やクラス識別を行う物体検出装置である。
 次に、モデル学習辞書320を作成するための深層学習の一例について説明する。
 最初に、大規模なオープンソースのデータセットなど深層学習のための素材データが保存されている学習用素材データベース格納手段610から、使用目的に適切と考えられる学習用素材データを抽出する。なお、学習のための素材データは、使用用途に応じて必要となる画像を、例えば、画像処理手段100から画像出力制御手段110を使って表示およびデータ格納手段120に格納した画像データを活用する場合もある。
 次に、学習用素材データベース格納手段610から抽出された学習用素材データに対して、アノテーション手段620によって、クラス識別情報と正解枠であるgroundtruth BBoxを付加して教師ありデータを作成する。
 次に、アノテーション手段620によって生成された教師ありデータは、Augment手段630によって、汎用性およびロバスト性を強化するために学習用画像631として水増しする。
 次に、学習用画像631を深層学習手段640に入力して、DNNモデル310の重み係数を算出し、算出された重み係数を、例えば、ONNXフォーマットに変換してモデル学習辞書320を作成する。モデル学習辞書320を物体検出モデル300に反映することで、画像内の物体の位置検出やクラス識別を行うことが可能となる。
 次に、画像内の物体の位置検出やクラス識別を行うモデルのモデル学習辞書320のロバスト性や強化方針を分析するための性能指標化の一例について説明する。
 前述した、学習用素材データベース格納手段610から、使用目的に対する必要な検出精度や検出性能や汎用性、および、ロバスト性を検証するためのバリデーション用素材データを抽出する。バリデーション用素材データは、例えば、大規模なオープンソースのデータセットや画像処理手段100から画像出力制御手段110を使って表示およびデータ格納手段120に格納した画像データを活用する場合もある。
 次に、学習用素材データベース格納手段610から抽出されたバリデーション用素材データに対して、アノテーション手段620によって、クラス識別情報と正解枠であるgroundtruth BBoxを付加してバリデーション用データ623を作成する。
 次に、バリデーション用データ623を物体検出モデル300と同等の推論(予測)が可能な第一のmAP算出手段660に入力して、正解枠であるgroundtruth BBoxと推論(予測)した結果として算出されるPredictedBBox(予測したBBox)を比較したIOU値653の算出と、すべてのバリデーション用データ623に対するすべての予測結果の内、正しくIOU値653が任意の閾値以上で予測できた割合を示すPrecision654の算出と、実際の正解結果の内、IOU値653が任意の閾値以上で正解結果と近い位置のBBoxを予測できた割合を示すRecall655の算出と、前述した物体検出の精度や性能を比較するための指標としての各クラス別のAP(AveragePrecision)値651と、全クラスを平均化したmAP(mean Average Precision)値652を算出するものである(例えば、非特許文献2参照)。ここで、第一のmAP算出手段660は、例えば、DNNモデル310にYOLOを適用した際は、darknetと呼ばれるオープンソースの推論環境と演算プロセッサ(パーソナルコンピュータやスーパーコンピュータを含む)を備えたものであり、物体検出モデル300と同等の推論(予測)性能を有していることが望ましい。さらに、前述したIOU値653とPrecision654とRecall655とAP値651とmAP値652の算出手段を備えるものである。
 これら、学習用素材データベース格納手段610とアノテーション手段620と第一のmAP算出手段660によりIOU値653とPrecision654とRecall655とAP値651とmAP値652を生成する一連の手段により、画像内の物体の位置検出やクラス識別を行うモデルのモデル学習辞書のロバスト性や強化方針を分析することが可能となる。
 一方で、Augment手段630によるAugmentationにより水増し(拡張データ)された画像データ631や学習パラメータを用いて物体検出モデルのモデル学習辞書を初期学習、もしくは、再学習する際に、拡張データの品質が学習用データに求められる品質を満たしていなければ、拡張データはノイズとなり、学習の質及び効率を下げるとともに推論精度も低下される要因となることがあるため、モデル後処理手段400により編集パラメータ860を設定し、編集パラメータ860に従って、モデル前処理手段200により学習のための画像に対して、任意の範囲を切り出すクロップ処理や、リサイズ処理や、位置シフト処理などを施したモデル入力画像210に対して、物体検出モデル300とモデル後処理手段400で推論と正確度の向上を行い、編集パラメータ860の中で物体検出モデル300の推論結果に基づいて尤度やクラス識別率が低下するなどのノイズになりえるパラメータをロバスト性検証手段800により選別して編集パラメータ860から除いたAugmentパラメータ861をAugment手段630に指示して学習データ631を生成し、深層学習手段640によりモデル学習辞書320を再学習することで学習のための拡張データの品質を向上させ、モデル学習辞書のロバスト性を向上させる方法が提案されている(例えば、特許文献1参照)。
 一方で、物体検出の推論精度を向上するために、内視鏡などに搭載したカメラの取得画像からモデル前処理手段200を経て物体検出モデル300の1つの種類である並列して搭載した疾患の領域を特定するDNNモデルで人体の内部の疾患部と考えられる領域を特定した後、モデル前処理手段200により疾患部と特定された領域に対して、編集パラメータ860により拡大処理や切り出し処理を施し、切り出した画像を基準画像として編集パラメータ860で位置シフトなどの処理を行いつつ物体検出モデル300とモデル後処理手段400の出力結果である最尤の尤度情報402が最大化される箇所を探索して疾患の種別を識別する方法が提案されている。(特許文献2参照)。
 一方で、物体検出モデル300のDNNモデル310により検出した結果からモデル後処理手段400に搭載されている動きベクトル検出手段489により動きベクトルを検出することにより、手振れなどによって撮影画像にブレが存在する場合、ブレ領域を検出し、学習用素材データベース格納手段610に格納されている学習用画像グループから撮影画像に近い動きベクトルに対応する学習用画像を選択して学習させることで、ブレが発生した画像に対しての推論精度やクラス識別確率を向上させる方法が提案されている(特許文献3参照)。
 なお、カメラなどにより取得した画像中で物体検出を行う学習辞書を含むモデルにおける汎用性やロバスト性の項目や各種変動条件は、例えば、背景(景色)、カメラのレンズ仕様、カメラを取り付ける高さや仰俯角など、画像サイズを含む検出対象領域と視野範囲など、魚眼レンズを使用している場合のデワープ処理方法、日光や照明に依存する照度変化や黒つぶれや白飛び、逆光などの特殊条件、晴れ、曇り、雨、雪、霧などの天候条件、対象検出物体の画像中の位置(左右上下と奥行)やサイズや輝度レベルや色情報を含む形状の特徴やアスペクト比や回転角度、対象検出物体の数や相互重複の状態や付属物の種類や大きさや付属位置、レンズのIRカットの有無、対象検出物体の移動速度、および、カメラ自体の移動速度などがあげられる。
 しかしながら、図26に示すような従来の物体検出装置、物体検出方法、および、プログラムでは、カメラなどにより取得した画像の各種変動条件に対する物体検出モデルのモデル学習辞書のロバスト性を向上させることはできるが、物体検出モデルの中のDNNモデルを含むニューラルネットワークそのものの構造に起因し潜在的に有する検出物体サイズや位置の揺らぎに対する推論精度やクラス識別性能が低下する課題に対しては改善することが困難であった。そのため、物体検出装置と検出対象の物体との位置関係によっては安定した物体検出が行えない場合が生じることがあった。
 また、取得画像に対してサイズや位置を変更しながら探索的に検出性能を最大化させる方法を使用する場合は、最大値を検出するまでのレイテンシーが大きくなるため、物体検出モデルの処理プロセッサなどの性能に制限がある場合は、物体検出の処理速度の低下やリアルタイム性が損なわれるなどの課題やデメリットが生じる場合があった。
 第一の課題として、図26に示す画像処理手段100とモデル前処理手段200と物体検出モデル300とモデル後処理手段400により最尤の検出枠を含む位置情報401と最尤の尤度情報402を生成する物体検出装置、物体検出方法(以下、単に方法と称する場合がある)、および、プログラムを使用して物体検出を行う場合は、画像中の検出対象の位置や大きさが時系列で揺らぐ場合に、同一の物体を検出しているにも関わらず、DNNモデルの構成条件とアルゴリズムに起因する課題により、推論(予測)した検出枠を含む位置情報と尤度情報に特有のパターンでバラつきが生じる場合がある。その現象は、物体検出を行うためのカメラなどを小型化、省電力化、および、低コスト化する際に、搭載するDSP(デジタルシグナルプロセッサ)などの演算プロセッサの性能の制限等によりDNNモデルに入力する画像サイズを小さくした場合などで、特に顕著に表れると考えられる。例えば、物体の位置の検出とクラス識別を同時に行うため処理速度に優位性が高いとされるYOLOなどに代表されるone―stage型のDNNモデルを使用する場合は、詳細は後述するが、図10に示すように、画像中の物体の位置を数ピクセル(画素)単位で水平方向と垂直方向に位置シフトして作成した複数枚の画像に対して、推論して検出物体の位置に対する尤度分布を確認すると、検出物体の位置により特有の格子状のパターンで尤度が低下する場所が存在する場合がある。これは、例えば、YOLOの場合は、図3Bに示すように、物体の位置の検出とクラス識別を同時に行うために領域を任意のサイズのグリッドセルに分割してクラス確率を演算するために発生する潜在的な課題と考えられる。一方、物体の位置の検出とクラス識別を2段階に分けて処理するEfficientDetなどに代表されるtwo―stage型のDNNモデルを使用する場合は、前述のone―stage型のDNNモデルほどの課題は発生しにくい場合が多いが、検出速度が低下するため使用用途によっては適用が困難な場合があった。
 このため、画像に対して原画(基準画像)のみ(ピンポイント)で検出枠を含む位置情報と尤度情報を推論(予測)する物体検出装置、方法、および、プログラムでは、検出物体サイズや位置の揺らぎに対して推論精度やクラス識別性能が特有の格子パターンなどに沿って低下することがあるため、物体検出が不安定になる場合や、最悪の条件下では、検出不能に陥ることがあった。
 また、明確な推論性能の改善手法がないまま取得画像に対してサイズや位置を変更しながら探索的に検出性能を最大化させる方法を使用する場合は、最大値を検出するまでのレイテンシーが大きくなるため、物体検出モデルの処理プロセッサなどの性能に制限がある場合は、物体検出の処理速度の低下やリアルタイム性が損なわれるなどの課題やデメリットが生じる場合があった。
 第二の課題として、図26に示す学習用素材データベース格納手段610とアノテーション手段620と第一のmAP算出手段660によりIOU値653とPrecision654とRecall655とAP値651とmAP値652を生成する一連の画像内の物体の位置検出やクラス識別を行うモデルのモデル学習辞書のロバスト性や強化方針を分析するために指標化する際は、上述した第一の課題に示したように検出物体サイズや位置の揺らぎに対して推論精度やクラス識別性能が特有の格子パターンなどに沿って低下するため正確な性能指標が算出できない場合があるため、モデル学習辞書の弱点や強化が必要な条件の把握が不十分になる。したがって、深層学習などによってモデル学習辞書を学習した際に、汎用性や各種変動条件に対するロバスト性の改善が不十分になる場合があった。
 本発明は、上記課題に鑑みてなされたものであり、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下を救済して、物体検出能力やクラス識別能力や追跡能力を向上することができる物体検出装置、物体検出方法、及びプログラムを提供することを目的とする。
 さらに、推論精度の低下を救済して物体検出能力やクラス識別能力や追跡能力を向上した結果に基づいて、物体検出モデルの性能とモデル学習辞書の汎用性やロバスト性の弱点や強化方針を正確に分析するための性能指標化を行い、モデル学習辞書の再学習を効果的に行うことが可能な物体検出装置、物体検出方法、及びプログラムを提供することを目的とする。
 さらに、物体検出を行うためのカメラなどを小型化、省電力化、および、低コスト化するために、搭載するDSP(デジタルシグナルプロセッサ)などの演算プロセッサの性能の制限を設けた場合でも、物体検出の精度や性能を担保しつつ、低レイテンシーでリアルタイム性を損なわない物体検出装置、物体検出方法、及びプログラムを提供することを目的とする。
 (開示の概要)
 本発明の物体検出装置は、画像を取得し、当該画像から物体検出を行うための基準画像を作成する画像処理手段と、フレーム制御情報の位置シフト量に則って、前記基準画像に水平方向にMピクセル(Mは任意の小数)および垂直方向にNピクセル(Nは任意の小数)の位置シフトを施した第一の位置シフト画像を生成し、該基準画像と該第一の位置シフト画像とをフレーム毎に物体検出モデルに入力するモデル前処理手段と、前記モデル前処理手段から出力されたフレーム毎の前記基準画像と前記第一の位置シフト画像とに対して物体位置とクラス識別と尤度を推論するモデル学習辞書を含む物体検出モデルと、前記物体検出モデルの推論結果である検出物体毎の前記基準画像の検出枠を含む位置情報および前記基準画像の尤度情報と、前記第一の位置シフト画像の検出枠を含む位置情報および前記第一の位置シフト画像の尤度情報とを比較して最大となる方の入力画像と該推論結果とを選択してフレーム毎に出力する画像選択手段を有するモデル後処理手段と、前記モデル後処理手段が、前記画像選択手段により前記第一の位置シフト画像の推論結果を選択した場合は、前記フレーム制御情報の位置シフト量に則って前記モデル前処理手段の生成時とは逆方向に位置シフトを施した検出枠を含む位置情報を出力する検出枠補正手段を備えることを特徴とする。
 ある実施形態によれば、前記モデル前処理手段は、前記基準画像と前記第一の位置シフト画像に加えて、フレーム制御情報の位置シフト量に則って、前記基準画像に水平方向にPピクセル(Pは任意の小数)および垂直方向にQピクセル(Qは任意の小数)の位置シフトを施した第二の位置シフト画像を生成し、該基準画像と該第一の位置シフト画像と該第二の位置シフト画像とをフレーム毎に前記物体検出モデルに入力し、前記物体検出モデルにより異なる3種類の画像に対する推論結果を出力し、前記モデル後処理手段は、前記画像選択手段により該異なる3種類の画像に対する推論結果の中から最大となる1つの入力画像と該推論結果を選択してフレーム毎に出力し、前記画像選択手段により前記第一の位置シフト画像の推論結果、もしくは、前記第二の位置シフト画像の推論結果を選択した場合は、前記フレーム制御情報の位置シフト量に則って前記モデル前処理手段の生成時とは逆方向に位置シフトを施した検出枠を含む位置情報を出力する前記検出枠補正手段を備えることを特徴とする。
 ある実施形態によれば、前記物体検出モデルは、深層学習や機械学習により作成されたモデル学習辞書とDNN(Deep Neural Network)などを含むニューラルネットワークであることを特徴とする。
 ある実施形態によれば、前記フレーム制御情報の前記位置シフト量は、前記物体検出モデルのニューラルネットワークモデルの入力画像の垂直方向と水平方向のピクセル数を該ニューラルネットワークモデルの1つ以上の検出レイヤ毎の水平方向と垂直方向のグリッドセルサイズで除算した値の1/2ピクセル値か、それに近似するピクセル値で決定されることを特徴とする。
 ある実施形態によれば、前記フレーム制御情報の前記位置シフト量の種類は、前記ニューラルネットワークモデルの1つ以上の検出レイヤ毎の水平方向と垂直方向のグリッドセルサイズで除算した値の1/2ピクセル値か、それに近似するピクセル値で決定された中で、検出対象物のサイズに依存して検出精度、もしくは、検出頻度が高くなる検出レイヤに対応する前記位置シフト量の順番に前記モデル前処理手段と前記モデル後処理手段で適用されることを特徴とする。
 ある実施形態によれば、前記フレーム制御情報の前記位置シフト量の種類が、前記モデル前処理手段の位置シフト画像の種類よりも多い場合は、複数の該位置シフト量の平均値を位置シフト量として使用することを特徴とする。
 ある実施形態によれば、前記フレーム制御情報の前記位置シフト量の種類が3種類以上存在し、かつ、前記モデル前処理手段の前記位置シフト画像の種類が3種類以上存在する場合は、該フレーム制御情報の該位置シフト量に則って、前記モデル前処理手段で前記基準画像から3つ以上の前記位置シフト画像を生成し、基準画像と合わせてフレーム毎に前記物体検出モデルに入力し、前記物体検出モデルにより異なる4種類以上の画像に対する推論結果を出力し、前記モデル後処理手段は、前記画像選択手段により該異なる4種類以上の画像に対する推論結果の中から最大となる1つの入力画像と該推論結果を選択してフレーム毎に出力し、該基準画像の該推論結果以外を選択した場合は、前記フレーム制御情報の前記位置シフト量に則って、前記モデル前処理手段の生成時とは逆方向に位置シフトを施した検出枠を含む位置情報を出力する前記検出枠補正手段を備えることを特徴とする。
 ある実施形態によれば、前記モデル前処理手段は、前記フレーム制御情報の前記位置シフト量に則って、n(nは0を含む任意の2の倍数)フレーム目の前記基準画像は、そのまま前記物体検出モデルに入力し、n+1フレーム目の前記基準画像に対しては、水平方向にMピクセル(Mは任意の小数)および垂直方向にNピクセル(Nは任意の小数)の位置シフトを施した前記第一の位置シフト画像を生成して前記物体検出モデルに入力し、前記物体検出モデルは、前記モデル前処理手段から出力されたnフレーム目の前記基準画像とn+1フレーム目の前記第一の位置シフト画像に対してフレーム毎に交互に物体位置とクラス識別と尤度とを推論し、前記画像選択手段が、前記物体検出モデルの推論結果である検出物体毎のnフレーム目の前記基準画像の検出枠を含む位置情報および前記基準画像の尤度情報と、n+1フレーム目の前記第一の位置シフト画像の検出枠を含む位置情報および前記第一の位置シフト画像の尤度情報とを比較して最大となる方の入力画像と該推論結果とを選択してn+1フレーム目の結果として出力し、n+1フレーム目の前記第一の位置シフト画像の検出枠を含む位置情報および前記第一の位置シフト画像の尤度情報とn+2フレーム目の前記基準画像の検出枠を含む位置情報および前記基準画像の尤度情報とを比較して最大となる方の入力画像と該推論結果とを選択してn+2フレーム目の結果として出力し、1フレーム分遅延して現在のフレームと1フレーム前の過去フレームの情報から推論結果を最大化する前記モデル後処理手段と、前記モデル後処理手段が、前記画像選択手段によりn+1フレーム目の前記第一の位置シフト画像の推論結果を選択した場合は、前記フレーム制御情報の前記位置シフト量に則って前記モデル前処理手段の生成時とは逆方向に位置シフトを施した検出枠を含む位置情報を出力する検出枠補正手段とを備えることを特徴とする。
 ある実施形態によれば、前記モデル前処理手段は、前記フレーム制御情報の前記位置シフト量に則って、m(mは0を含む任意の3の倍数)フレーム目の前記基準画像とm+1フレーム目の基準画像とから生成した前記第一の位置シフト画像に加えて、m+2フレーム目の前記基準画像に対しては、水平方向にPピクセル(Pは任意の小数)および垂直方向にQピクセル(Qは任意の小数)の位置シフトを施した前記第二の位置シフト画像を生成し、mフレーム目に該基準画像を、m+1フレーム目に該第一の位置シフト画像を、m+2フレーム目に該第二の位置シフト画像をフレーム毎に順番に前記物体検出モデルに入力し、前記物体検出モデルにより前記モデル前処理手段から出力されたmフレーム目の前記基準画像とm+1フレーム目の前記第一の位置シフト画像とm+2フレーム目の前記第二の位置シフト画像とに対してフレーム毎に順番に物体位置とクラス識別と尤度とを推論し、前記画像選択手段が、前記物体検出モデルの推論結果である検出物体毎のmフレーム目の前記基準画像の検出枠を含む位置情報および前記基準画像の尤度情報と、m+1フレーム目の前記第一の位置シフト画像の検出枠を含む位置情報および前記第一の位置シフト画像の尤度情報と、m+2フレーム目の前記第二の位置シフト画像の検出枠を含む位置情報および前記第二の位置シフト画像の尤度情報とを比較して最大となる方の入力画像と該推論結果とを選択してm+2フレーム目の結果として出力し、m+1フレーム目とm+2フレーム目とm+3フレーム目の推論結果とを比較して最大となる方の入力画像と該推論結果とを選択してm+3フレーム目の結果として出力し、m+2フレーム目とm+3フレーム目とm+4フレーム目の推論結果とを比較して最大となる方の入力画像と該推論結果とを選択してm+4フレーム目の結果として出力し、2フレーム分遅延して現在のフレームと2フレーム前までの過去フレームの情報から推論結果とを最大化する前記モデル後処理手段と、前記モデル後処理手段が、前記画像選択手段によりm+1フレーム目の前記第一の位置シフト画像の推論結果を選択した場合とm+2フレーム目の前記第二の位置シフト画像の推論結果を選択した場合は、前記フレーム制御情報の前記位置シフト量に則って前記モデル前処理手段の生成時とは逆方向に位置シフトを施した検出枠を含む位置情報を出力する検出枠補正手段とを備えることを特徴とする。
 ある実施形態によれば、前記フレーム制御情報の前記位置シフト量の種類が3種類以上存在し、かつ、前記モデル前処理手段の前記位置シフト画像の種類が3種類以上存在する場合は、該フレーム制御情報の該位置シフト量に則って、前記モデル前処理手段でr(rは0を含む任意のs(sは4以上の任意の整数)の倍数)フレーム目は前記基準画像を、r+1フレームからr+s-1フレーム目は各フレームの前記基準画像から加工したs-1個の前記位置シフト画像を、フレーム順に前記物体検出モデルに入力し、前記モデル後処理手段は、前記画像選択手段により現在のフレームとs-1フレーム前の過去フレームの推論結果の中から最大となる1つの入力画像と該推論結果とを選択して現在のフレームの推論結果として出力し、rフレーム目の該基準画像の該推論結果以外を選択した場合は、前記フレーム制御情報の前記位置シフト量に則って、前記モデル前処理手段の生成時とは逆方向に位置シフトを施した検出枠を含む位置情報を出力する前記検出枠補正手段を備えることを特徴とする。
 ある実施形態によれば、前記モデル前処理手段は、前記基準画像に対して、前記フレーム制御情報の画面分割パラメータに則って、画像の一部の範囲である検出範囲を切り出すクロップ機能と前記物体検出モデルの入力画面を2つに分割した領域に該クロップ機能により切り出した画像を垂直方向と水平方向とをリサイズして貼り付ける画面分割機能とを有し、前記画面分割機能により画面分割された一方を第一の分割後基準画像とし、もう一方を第二の分割後基準画像とし、該第一の分割後基準画像を前記フレーム制御情報の前記位置シフト量に則って、該第一の分割後基準画像に水平方向にGピクセル(Gは任意の小数)および垂直方向にHピクセル(Hは任意の小数)の位置シフトを施した第一の分割後位置シフト画像を生成し、該第二の分割後基準画像と該第一の分割後位置シフト画像とをフレーム毎に前記物体検出モデルに入力するモデル前処理手段と、前記モデル前処理手段から出力されたフレーム毎の前記第二の分割後基準画像と前記第一の分割後位置シフト画像とに対して物体位置とクラス識別と尤度を推論するモデル学習辞書を含む前記物体検出モデルと、前記物体検出モデルの推論結果である検出物体毎の前記第二の分割後基準画像の検出枠を含む位置情報および前記第二の分割後基準画像の尤度情報と、前記第一の分割後位置シフト画像の検出枠を含む位置情報および前記第一の分割後位置シフト画像の尤度情報とを比較して最大となる方の入力画像と該推論結果とを選択してフレーム毎に出力する前記画像選択手段を有する前記モデル後処理手段と、前記モデル後処理手段が、前記画像選択手段により前記第二の分割後基準画像の推論結果を選択した場合は、前記フレーム制御情報の前記画面分割パラメータに則って、元の前記基準画像に相当するように位置とサイズの逆補正を施した検出枠を含む位置情報を出力し、前記画像選択手段により前記第一の分割後位置シフト画像の推論結果を選択した場合は、前記フレーム制御情報の前記位置シフト量と前記画面分割パラメータに則って、前記モデル前処理手段の生成時とは逆方向に位置シフトを施した後、元の前記基準画像に相当するように位置とサイズとの逆補正を施した検出枠を含む位置情報を出力する検出枠補正手段を備えることを特徴とする。
 ある実施形態によれば、前記フレーム制御情報の前記位置シフト量は、該フレーム制御情報の前記画面分割パラメータに則って、前記クロップ機能と前記画面分割機能とにより画面分割された一方の前記第一の分割後基準画像の垂直方向と水平方向とのピクセル数を前記ニューラルネットワークモデルの1つ以上の検出レイヤ毎の水平方向と垂直方向のグリッドセルサイズで除算した値の1/2ピクセル値か、それに近似するピクセル値で決定されることを特徴とする。
 ある実施形態によれば、前記フレーム制御情報の前記位置シフト量は、該フレーム制御情報の前記画面分割パラメータに則って、前記クロップ機能と前記画面分割機能とにより画面分割された一方の前記第一の分割後基準画像の垂直方向と水平方向とのピクセル数を前記ニューラルネットワークモデルの1つ以上の検出レイヤ毎の水平方向と垂直方向のグリッドセルサイズで除算した値の1/2ピクセル値か、それに近似するピクセル値で決定された中で、検出対象物のサイズに依存して検出精度、もしくは、検出頻度が高くなる検出レイヤに対応する前記位置シフト量の順番に前記モデル前処理手段と前記モデル後処理手段とで適用されることを特徴とする。
 ある実施形態によれば、前記フレーム制御情報の前記位置シフト量の種類が2つ以上の場合は、複数の該位置シフト量の平均値を位置シフト量として使用することを特徴とする。
 ある実施形態によれば、前記モデル前処理手段は、前記第一の分割後基準画像、および、前記第二の分割後基準画像が、前記ニューラルネットワークモデルの1つ以上の検出レイヤ毎の水平方向と垂直方向のグリッドセルサイズで除算した際に、水平方向も垂直方向も割り切れるように、前記フレーム制御情報の前記画面分割パラメータを設定することを特徴とする。
 ある実施形態によれば、前記モデル前処理手段が、該フレーム制御情報の前記画面分割パラメータに則って、画像を分割する場合は、該画面分割パラメータに則って生成された学習画像にアノテーション手段により正解枠データを付加し、内蔵もしくは外部の辞書学習手段により前記モデル学習辞書を再学習することを特徴とする。
 ある実施形態によれば、前記モデル前処理手段は、前記フレーム制御情報に則って、前記物体検出モデルに入力する画像に対して位置シフトを含め加工するに際して、該加工により発生する有効画像が存在しない余白部分は、該有効画像の平均輝度レベルと等しい単一色で一様に塗りつぶして画像を生成することを特徴とする。
 ある実施形態によれば、前記モデル前処理手段は、前記フレーム制御情報の前記位置シフト量に則って位置シフトを実施する前の画像に対して、任意の場所の画像を切り抜く前記クロップ機能と、画像サイズを変更するリサイズ機能と、コントラスト補正曲線、もしくは、階調変換曲線を使用して輝度レベルを任意の値に変更する階調変換機能と、アスペクト比を変更するアスペクト比変更機能と、回転角度を変更する回転機能を有し、前記フレーム制御情報の加工パラメータに則って画像を加工することを特徴とする。
 ある実施形態によれば、前記モデル後処理手段は、フレーム毎の前記物体検出モデルの推論結果である1つないし複数の前記検出物体毎に対する検出不能と疑似検出を含むゼロないし複数の前記基準画像の検出枠を含む位置情報および前記基準画像の尤度情報と、前記第一の位置シフト画像の検出枠を含む位置情報および前記第一の位置シフト画像の尤度情報と、さらに前記フレーム制御情報の前記位置シフト量が2種類以上存在する場合は、前記第二の位置シフト画像の検出枠を含む位置情報および前記第二の位置シフト画像の尤度情報と、第三以上の位置シフト画像の検出枠を含む位置情報および第三以上の位置シフト画像の尤度情報とに対して、各々の尤度情報に対する任意の閾値T(Tは、任意の小数)と、各々の検出枠を含む位置情報の領域が相互にどれぐらい重なっているかを表す指標であるIOU(Intersection over Union)値に対する任意の閾値U(Uは、任意の小数)とにより、前記物体検出モデルに入力される各々の入力画像に対する前記検出物体毎に個体識別後の検出枠を含む位置情報と個体識別後の尤度情報とに補正する個体識別手段を有し、前記個体識別手段により選定された出力結果を使用して、前記画像選択手段と前記検出枠補正手段とにより、フレーム毎の該検出物体毎に最尤となる検出枠を含む位置情報と最尤となる尤度情報を出力することを特徴とする。
 ある実施形態によれば、前記モデル後処理手段は、前記フレーム制御情報の前記画面分割パラメータに則って、画面分割の加工を施した際は、フレーム毎の前記物体検出モデルの推論結果である1つないし複数の前記検出物体毎に対する検出不能と疑似検出を含むゼロないし複数の前記第二の分割後基準画像の検出枠を含む位置情報および前記第二の分割後基準画像の尤度情報と、前記第一の分割後位置シフト画像の検出枠を含む位置情報および前記第一の分割後位置シフト画像の尤度情報とに対して、各々の尤度情報に対する任意の閾値T(Tは、任意の小数)と、各々の検出枠を含む位置情報の領域が相互にどれぐらい重なっているかを表す指標であるIOU(Intersection over Union)値に対する任意の閾値U(Uは、任意の小数)とにより、前記物体検出モデルに入力される該第二の分割後基準画像と該第一の分割後位置シフト画像とに対する前記検出物体毎に前記個体識別後の検出枠を含む位置情報と前記個体識別後の尤度情報とに補正する前記個体識別手段を有し、前記個体識別手段により選定された出力結果を使用して、前記画像選択手段と前記検出枠補正手段とにより、フレーム毎の該検出物体毎に最尤となる検出枠を含む位置情報と最尤となる尤度情報とを出力することを特徴とする。
 ある実施形態によれば、前記個体識別手段は、前記フレーム制御情報の前記画面分割パラメータに則って、画面分割の加工を施した際は、前記第二の分割後基準画像と前記第一の分割後位置シフト画像との境界線上で検出された前記検出枠を含む位置情報は、該第二の分割後基準画像と該第一の分割後位置シフト画像とのいずれの領域に広く分布しているか判定し、広く分布している側の領域内の該検出枠を含む位置情報を該領域内で切り出して結果として残留させ、一方の領域側にはみ出した該検出枠の位置情報は、切り取って削除することを特徴とする。
 ある実施形態によれば、前記モデル後処理手段は、前記画像選択手段と前記検出枠補正手段とにより最尤と判定して出力したフレーム毎の前記検出物体毎に対する推論結果である最尤の検出枠を含む位置情報と最尤の尤度情報とを、最大検出物体数V(Vは任意の整数)の数だけ現在のフレームftとft―1からft-s(sは任意の整数)までの過去フレーム分の格納メモリに保持するフレーム情報保持手段を有し、該フレーム情報保持手段は、現在のフレームftの該最尤の検出枠を含む位置情報と該最尤の尤度情報が算出された時点で、最も古いフレームft-sの該格納メモリに記録されている該最尤の検出枠を含む位置情報と該最尤の尤度情報とを消去し、ftフレームからft-(s-1)フレームまでの該格納メモリに記録されている該最尤の検出枠を含む位置情報と該最尤の尤度情報を1フレーム分過去のft-1フレームからft-sフレームの該格納メモリにスライドして再記録し、現在のフレームftの該最尤の検出枠を含む位置情報と該最尤の尤度情報とを現在のフレームftの該格納メモリに記録することを特徴とする。
 ある実施形態によれば、前記フレーム情報保持手段は、任意のフレームの前記検出物体の前記格納メモリの前記最尤の検出枠を含む位置情報と最尤の尤度情報とに欠落がある場合に、前後のフレームの該格納メモリの該最尤の検出枠を含む位置情報と該最尤の尤度情報とから補間して新たな該最尤の検出枠を含む位置情報と該最尤の尤度情報として当該フレームの該格納メモリに記録するフレーム情報補間手段を有し、前記フレーム情報補間手段の情報の補間方法が、ニュートン後退補間法や移動平均法などであり、前記最尤の検出枠を含む位置情報は、検出枠の中心座標と高さと幅の情報を含み、前記最尤の尤度情報は、検出の信頼性を示す尤度とクラス識別情報を含むことを特徴とする。
 ある実施形態によれば、前記フレーム情報補間手段は、前記フレーム情報保持手段の前記ft-1からft-sの過去フレームの前記格納メモリの前記最尤の検出枠を含む位置情報の中心座標から動きベクトル量を算出して各フレームの該検出物体毎の該格納メモリに記録する動きベクトル量算出手段を有し、さらに、未来のフレームの前記検出物体毎の動きベクトル量を予測して前記最尤の検出枠を含む位置情報の中心座標を予測する動きベクトル予測算出手段を有することを特徴とする。
 ある実施形態によれば、前記フレーム情報補間手段は、前記フレーム情報保持手段の過去フレームの前記検出物体毎の前記最尤の検出枠を含む位置情報の検出枠の幅と高さと中心座標と、前記動きベクトル量算出手段により算出された前記動きベクトル量とにより、距離係数を算出して該格納メモリに記録する距離係数算出手段を有し、さらに、前記動きベクトル予測算出手段は、予測された未来のフレームの前記動きベクトル量から、前記距離係数算出手段により未来のフレームの前記検出物体毎の前記最尤の検出枠を含む位置情報の中心座標と距離係数を予測し、未来のフレームの該最尤の検出枠を含む位置情報の検出枠の幅と高さの情報を予測することを特徴とする。
 ある実施形態によれば、前記フレーム情報補間手段は、前記フレーム情報保持手段の過去フレームの前記検出物体毎の前記格納メモリに格納されている前記最尤の検出枠を含む位置情報の検出枠の幅と高さと中心座標と、前記動きベクトル量と、前記距離係数と、前記最尤の尤度情報とにより、該最尤の検出枠を含む位置情報および該最尤の尤度情報のフレーム間の時間連続性の異常を検出した場合に該格納メモリから除去する異常検出情報除去手段を有し、該異常検出情報除去手段により除去された各種情報を前後のフレームの前記最尤の検出枠を含む位置情報の検出枠の幅と高さと中心座標と、前記動きベクトル量と、前記距離係数と、前記最尤の尤度情報とから復元して該格納メモリに記録する検出情報復元手段を有し、さらに、新たに物体検出を実施した際の現在のフレームの前記検出物体毎の前記画像選択手段と前記検出枠補正手段により算出された前記最尤の検出枠を含む位置情報と、前記動きベクトル予測算出手段により予測された未来のフレームの該最尤の検出枠を含む位置情報の検出枠の幅と高さと中心座標とを比較して、異常を検出して除去する異常検出情報予測除去手段を有し、該異常検出情報予測除去手段により前記個体識別手段と前記画像選択手段と前記検出枠補正手段により算出された前記最尤の検出枠を含む位置情報が除去された場合は、前記動きベクトル予測算出手段により予測された未来のフレームの該最尤の検出枠を含む位置情報に置き換えて復元し現在のフレームの該格納メモリに記録する検出情報予測復元手段を有することを特徴とする。
 ある実施形態によれば、前記フレーム情報補間手段は、前記フレーム情報保持手段に保持されている前記最尤の検出枠を含む位置情報の検出枠の幅と高さと中心座標とが、前記フレーム情報補間手段により補間された該最尤の検出枠を含む位置情報の検出枠の幅と高さと中心座標とに対して、任意の閾値を超過、もしくは、任意の割合を超過してずれていることを検出した場合、もしくは、前記最尤の尤度情報の尤度が異常だが救済を施すに値する救済閾値未満の場合は、前記異常検出情報除去手段により異常情報と判定して該格納メモリからすべての情報を除去し、その際、前記最尤の尤度情報の尤度が、正常と判定する正常判定閾値以下、かつ、異常だが救済を施すに値する救済閾値以上である場合は、前記最尤の尤度情報を除く他の情報を除去し、それら除去された情報に対して、前記検出情報復元手段により復元された該最尤の検出枠を含む位置情報と該最尤の尤度情報と前記動きベクトル量と前記距離係数とを該格納メモリに記録して復元することを特徴とする。
 ある実施形態によれば、前記フレーム情報補間手段は、前記フレーム情報保持手段の新たに物体検出を実施した際の現在のフレームの前記検出物体毎の前記画像選択手段と前記検出枠補正手段により算出された前記最尤の検出枠を含む位置情報の検出枠の幅と高さと中心座標とが、前記動きベクトル予測算出手段により予測された未来のフレームの該最尤の検出枠を含む位置情報の検出枠の幅と高さと中心座標とに対して、任意の閾値以下、もしくは、任意の割合以下のずれである場合、かつ、前記最尤の尤度情報の尤度が、正常と判定する正常判定閾値以上の場合は、該格納メモリに該最尤の検出枠を含む位置情報と前記最尤の尤度情報と前記動きベクトル量と前記距離係数とを記録し、前記最尤の検出枠を含む位置情報が、任意の閾値を超過、もしくは、任意の割合を超過してずれていることを検出した場合、もしくは、前記最尤の尤度情報の尤度が、異常だが救済を施すに値する救済閾値未満の場合に、前記異常検出情報予測除去手段により異常情報と判定してすべての情報を除去し、前記最尤の尤度情報の尤度が、正常と判定する正常判定閾値未満、かつ、異常だが救済を施すに値する救済閾値以上である場合は前記最尤の尤度情報を除く他の情報を除去し、それら除去された情報に対して、前記動きベクトル予測算出手段の出力結果である該検出枠を含む位置情報と該動きベクトル量と該距離係数と該最尤の尤度情報とを前記検出情報予測復元手段により置き換えて該格納メモリに記録することを特徴とする。
 ある実施形態によれば、前記モデル後処理手段は、現在のフレームの前記検出物体毎の前記フレーム情報保持手段と前記フレーム情報補間手段により算出された前記最尤の検出枠を含む位置情報の検出枠の中心座標のX座標と該検出枠の中心座標のY座標と該検出枠の幅と該検出枠の高さと該検出枠のアスペクト比とが、前記動きベクトル予測算出手段により予測された未来のフレームの該最尤の検出枠を含む位置情報の検出枠の中心座標のX座標と該検出枠の中心座標のY座標と該検出枠の幅と該検出枠の高さと該検出枠のアスペクト比とに対して、各々何%偏差があるか算出し、W(Wは任意の整数)フレーム分平均して、中心X座標平均偏差(%)と中心Y座標平均偏差(%)と前記距離係数で正規化した枠幅変動率(%)と前記距離係数で正規化した枠高さ変動率(%)と枠アスペクト比変動率(%)とを算出するトレーサビリティ安定値指標化手段を有することを特徴とする。
 ある実施形態によれば、前記モデル後処理手段は、前記異常検出情報予測除去手段により、現在のフレームで異常値と判断されて除去された場合に、異常検出と判断して前記フレーム中の該異常検出となった枠数を異常検出枠数として出力する異常検出枠数算出手段を有することを特徴とする。
 ある実施形態によれば、前記モデル後処理手段は、前記異常検出情報予測除去手段により、現在のフレームで前記最尤の尤度情報の尤度が前記救済閾値未満で異常値と判断されて除去された場合、もしくは、推論の結果が未検出だった場合に、検出不能と判断して前記フレーム中の該検出不能となった回数を検出NG数として出力する検出NG数算出手段を有することを特徴とする。
 ある実施形態によれば、前記モデル後処理手段は、前記フレーム情報保持手段と前記フレーム情報補間手段により算出された前記最尤の検出枠を含む位置情報と、前記検出物体の前記最尤の尤度情報の中で最も低い最低尤度と、前記トレーサビリティ安定値指標化手段の各種出力情報である安定値指標と、前記異常検出枠数と、前記検出NG数との、1つ以上、もしくは、すべてを使用して次のフレームの前記フレーム制御情報の前記位置シフト量と該位置シフト量の種類と数の状態をフレーム毎に決定するステートマシン制御手段を有することを特徴とする。
 ある実施形態によれば、前記ステートマシン制御手段は、前記フレーム制御情報の位置シフト量がゼロ、かつ、位置シフト量の種類がゼロの尤度救済OFFモードの状態から開始し、現在のフレームの前記最低尤度が、任意の第一の尤度閾値未満であるか、もしくは、前記トレーサビリティ安定値指標化手段の出力情報である前記安定値指標が各々の第一の不安定閾値に対して1つでも超過する場合に、次フレームの前記フレーム制御情報の前記位置シフト量を1種類の状態で制御する尤度救済最尤2枚モードとし、前記フレーム情報保持手段の前記検出物体毎の前記最尤の検出枠を含む位置情報と、前記最尤の尤度情報と、前記物体検出モデルの前記ニューラルネットワークモデルの1つ以上の検出レイヤの情報とを加味して該位置シフト量を決定することを特徴とする。
 ある実施形態によれば、前記ステートマシン制御手段は、現在のフレームが前記尤度救済最尤2枚モードの状態の場合、現在のフレームの前記最低尤度が、任意の第二の尤度閾値未満であるか、もしくは、前記トレーサビリティ安定値指標化手段の出力情報である前記安定値指標が各々の第二の不安定閾値に対して1つでも超過する場合か、もしくは、前記異常検出枠数が1以上である場合か、前記検出NG数が1以上である場合に、次フレームの前記フレーム制御情報の前記位置シフト量を2種類の状態で制御する尤度救済最尤3枚モードとし、前記フレーム情報保持手段の前記検出物体毎の前記最尤の検出枠を含む位置情報と、前記最尤の尤度情報と、前記物体検出モデルの前記ニューラルネットワークモデルの1つ以上の検出レイヤの情報とを加味して2種類の該位置シフト量を決定することを特徴とする。
 ある実施形態によれば、前記ステートマシン制御手段は、現在のフレームが前記尤度救済最尤3枚モードの状態の場合、現在のフレームの前記最低尤度が任意の第二の尤度閾値以上であり、前記トレーサビリティ安定値指標化手段の出力情報である前記安定値指標が各々の第二の不安定閾値のすべてに対して以下であり、前記異常検出枠数がゼロであり、前記検出NG数がゼロであり、それら1つ以上、もしくは、すべての条件に合致する場合に、次フレームの前記フレーム制御情報の前記位置シフト量を1種類の状態で制御する前記尤度救済最尤2枚モードとし、前記フレーム情報保持手段の前記検出物体毎の前記最尤の検出枠を含む位置情報と、前記最尤の尤度情報と、前記物体検出モデルの前記ニューラルネットワークモデルの1つ以上の検出レイヤの情報とを加味して該位置シフト量を決定することを特徴とする。
 ある実施形態によれば、前記ステートマシン制御手段は、現在のフレームが前記尤度救済最尤2枚モードの状態の場合、現在のフレームの前記最低尤度が任意の第一の尤度閾値以上であり、前記トレーサビリティ安定値指標化手段の出力情報である前記安定値指標が各々の第一の不安定閾値のすべてに対して以下であり、前記異常検出枠数がゼロであり、前記検出NG数がゼロであり、それら1つ以上、もしくは、すべての条件に合致する場合に、次フレームの前記フレーム制御情報の前記位置シフト量を位置シフト量がゼロ、かつ、位置シフト量の種類がゼロの前記尤度救済OFFモードの状態とすることを特徴とする。
 ある実施形態によれば、前記モデル後処理手段は、バリデーション画像に対して、アノテーション手段により生成された前記検出物体毎に正解となる検出枠を含む位置情報と正解となるクラス識別情報とが存在する場合は、前記フレーム情報保持手段の現在のフレームの前記検出物体毎の前記最尤の検出枠を含む位置情報と該正解となる検出枠を含む位置情報の領域がどれぐらい重なっているかを表す指標である対正解枠IOU値と、前記フレーム情報保持手段の現在のフレームの前記検出物体毎の前記最尤の尤度情報と該正解となるクラス識別情報を比較した結果の真偽の情報と、該最尤の尤度情報の尤度を算出し、第二のmAP算出手段により、該バリデーション画像に対するAP(AveragePrecision)値、mAP(mean Average Precision)値、Recall、Precisionなどの指標を算出することを特徴とする。
 本発明の物体検出方法は、画像を取得し、当該画像から物体検出を行うための基準画像を作成する画像処理ステップと、フレーム制御情報の位置シフト量に則って、前記基準画像に水平方向にMピクセル(Mは任意の小数)および垂直方向にNピクセル(Nは任意の小数)の位置シフトを施した第一の位置シフト画像を生成し、該基準画像と該第一の位置シフト画像をフレーム毎に物体検出モデルに入力するモデル前処理ステップと、前記モデル前処理ステップから出力されたフレーム毎の前記基準画像と前記第一の位置シフト画像とに対して物体位置とクラス識別と尤度とを推論するモデル学習辞書を含む物体検出モデルと、前記物体検出モデルの推論結果である検出物体毎の前記基準画像の検出枠を含む位置情報および前記基準画像の尤度情報と、前記第一の位置シフト画像の検出枠を含む位置情報および前記第一の位置シフト画像の尤度情報とを比較して最大となる方の入力画像と該推論結果とを選択してフレーム毎に出力する画像選択ステップを有するモデル後処理ステップと、前記モデル後処理ステップが、前記画像選択ステップにより前記第一の位置シフト画像の推論結果を選択した場合は、前記フレーム制御情報の位置シフト量に則って前記モデル前処理ステップの生成時とは逆方向に位置シフトを施した検出枠を含む位置情報を出力する検出枠補正ステップを含むことを特徴とする。
 ある実施形態によれば、前記モデル前処理ステップは、前記基準画像と前記第一の位置シフト画像に加えて、フレーム制御情報の位置シフト量に則って、前記基準画像に水平方向にPピクセル(Pは任意の小数)および垂直方向にQピクセル(Qは任意の小数)の位置シフトを施した第二の位置シフト画像を生成し、該基準画像と該第一の位置シフト画像と該第二の位置シフト画像とをフレーム毎に前記物体検出モデルに入力し、前記物体検出モデルにより異なる3種類の画像に対する推論結果を出力し、前記モデル後処理ステップは、前記画像選択ステップにより該異なる3種類の画像に対する推論結果の中から最大となる1つの入力画像と該推論結果を選択してフレーム毎に出力し、前記画像選択ステップにより前記第一の位置シフト画像の推論結果、もしくは、前記第二の位置シフト画像の推論結果を選択した場合は、前記フレーム制御情報の位置シフト量に則って前記モデル前処理ステップの生成時とは逆方向に位置シフトを施した検出枠を含む位置情報を出力する前記検出枠補正ステップを含むことを特徴とする。
 ある実施形態によれば、前記モデル前処理ステップは、前記基準画像に対して、前記フレーム制御情報の画面分割パラメータに則って、画像の一部の範囲である検出範囲を切り出すクロップステップと前記物体検出モデルの入力画面を2つに分割した領域に該クロップステップにより切り出した画像を垂直方向と水平方向とをリサイズして貼り付ける画面分割ステップを有し、前記画面分割ステップにより画面分割された一方を第一の分割後基準画像とし、もう一方を第二の分割後基準画像とし、該第一の分割後基準画像を前記フレーム制御情報の前記位置シフト量に則って、該第一の分割後基準画像に水平方向にGピクセル(Gは任意の小数)および垂直方向にHピクセル(Hは任意の小数)の位置シフトを施した第一の分割後位置シフト画像を生成し、該第二の分割後基準画像と該第一の分割後位置シフト画像とをフレーム毎に前記物体検出モデルに入力するモデル前処理ステップと、前記モデル前処理ステップから出力されたフレーム毎の前記第二の分割後基準画像と前記第一の分割後位置シフト画像とに対して物体位置とクラス識別と尤度とを推論するモデル学習辞書を含む前記物体検出モデルと、前記物体検出モデルの推論結果である検出物体毎の前記第二の分割後基準画像の検出枠を含む位置情報および前記第二の分割後基準画像の尤度情報と、前記第一の分割後位置シフト画像の検出枠を含む位置情報および前記第一の分割後位置シフト画像の尤度情報とを比較して最大となる方の入力画像と該推論結果とを選択してフレーム毎に出力する前記画像選択ステップを有する前記モデル後処理ステップと、前記モデル後処理ステップが、前記画像選択ステップにより前記第二の分割後基準画像の推論結果を選択した場合は、前記フレーム制御情報の前記画面分割パラメータに則って、元の前記基準画像に相当するように位置とサイズとの逆補正を施した検出枠を含む位置情報を出力し、前記画像選択ステップにより前記第一の分割後位置シフト画像の推論結果を選択した場合は、前記フレーム制御情報の前記位置シフト量と前記画面分割パラメータとに則って、前記モデル前処理ステップの生成時とは逆方向に位置シフトを施した後、元の前記基準画像に相当するように位置とサイズの逆補正を施した検出枠を含む位置情報を出力する検出枠補正ステップを含むことを特徴とする。
 本発明の物体検出のプログラムは、画像を取得し、当該画像から物体検出を行うための基準画像を作成する画像処理ステップと、フレーム制御情報の位置シフト量に則って、前記基準画像に水平方向にMピクセル(Mは任意の小数)および垂直方向にNピクセル(Nは任意の小数)の位置シフトを施した第一の位置シフト画像を生成し、該基準画像と該第一の位置シフト画像とをフレーム毎に前記物体検出モデルに入力するモデル前処理ステップと、前記モデル前処理ステップから出力されたフレーム毎の前記基準画像と前記第一の位置シフト画像とに対して物体位置とクラス識別と尤度とを推論するモデル学習辞書を含む物体検出モデルと、前記物体検出モデルの推論結果である検出物体毎の前記基準画像の検出枠を含む位置情報および前記基準画像の尤度情報と、前記第一の位置シフト画像の検出枠を含む位置情報および前記第一の位置シフト画像の尤度情報とを比較して最大となる方の入力画像と該推論結果とを選択してフレーム毎に出力する画像選択ステップを有するモデル後処理ステップと、前記モデル後処理ステップが、前記画像選択ステップにより前記第一の位置シフト画像の推論結果を選択した場合は、前記フレーム制御情報の位置シフト量に則って前記モデル前処理ステップの生成時とは逆方向に位置シフトを施した検出枠を含む位置情報を出力する検出枠補正ステップを含む、前記各手段と前記各ステップを機能させるためコンピュータに実行させるためのプログラムであることを特徴とする。
 ある実施形態によれば、前記モデル前処理ステップは、前記基準画像と前記第一の位置シフト画像に加えて、フレーム制御情報の位置シフト量に則って、前記基準画像に水平方向にPピクセル(Pは任意の小数)および垂直方向にQピクセル(Qは任意の小数)の位置シフトを施した第二の位置シフト画像を生成し、該基準画像と該第一の位置シフト画像と該第二の位置シフト画像とをフレーム毎に前記物体検出モデルに入力し、前記物体検出モデルにより異なる3種類の画像に対する推論結果を出力し、前記モデル後処理ステップは、前記画像選択ステップにより該異なる3種類の画像に対する推論結果の中から最大となる1つの入力画像と該推論結果を選択してフレーム毎に出力し、前記画像選択ステップにより前記第一の位置シフト画像の推論結果、もしくは、前記第二の位置シフト画像の推論結果を選択した場合は、前記フレーム制御情報の位置シフト量に則って前記モデル前処理ステップの生成時とは逆方向に位置シフトを施した検出枠を含む位置情報を出力する前記検出枠補正ステップを含む、前記各手段と前記各ステップを機能させるためコンピュータに実行させるためのプログラムであることを特徴とする。
 ある実施形態によれば、前記モデル前処理ステップは、前記基準画像に対して、前記フレーム制御情報の画面分割パラメータに則って、画像の一部の範囲である検出範囲を切り出すクロップステップと前記物体検出モデルの入力画面を2つに分割した領域に該クロップステップにより切り出した画像を垂直方向と水平方向とをリサイズして貼り付ける画面分割ステップを有し、前記画面分割ステップにより画面分割された一方を第一の分割後基準画像とし、もう一方を第二の分割後基準画像とし、該第一の分割後基準画像を前記フレーム制御情報の前記位置シフト量に則って、該第一の分割後基準画像に水平方向にGピクセル(Gは任意の小数)および垂直方向にHピクセル(Hは任意の小数)の位置シフトを施した第一の分割後位置シフト画像を生成し、該第二の分割後基準画像と該第一の分割後位置シフト画像とをフレーム毎に前記物体検出モデルに入力するモデル前処理ステップと、前記モデル前処理ステップから出力されたフレーム毎の前記第二の分割後基準画像と前記第一の分割後位置シフト画像とに対して物体位置とクラス識別と尤度とを推論するモデル学習辞書を含む前記物体検出モデルと、前記物体検出モデルの推論結果である検出物体毎の前記第二の分割後基準画像の検出枠を含む位置情報および前記第二の分割後基準画像の尤度情報と、前記第一の分割後位置シフト画像の検出枠を含む位置情報および前記第一の分割後位置シフト画像の尤度情報とを比較して最大となる方の入力画像と該推論結果とを選択してフレーム毎に出力する前記画像選択ステップを有する前記モデル後処理ステップと、前記モデル後処理ステップが、前記画像選択ステップにより前記第二の分割後基準画像の推論結果を選択した場合は、前記フレーム制御情報の前記画面分割パラメータに則って、元の前記基準画像に相当するように位置とサイズとの逆補正を施した検出枠を含む位置情報を出力し、前記画像選択ステップにより前記第一の分割後位置シフト画像の推論結果を選択した場合は、前記フレーム制御情報の前記位置シフト量と前記画面分割パラメータとに則って、前記モデル前処理ステップの生成時とは逆方向に位置シフトを施した後、元の前記基準画像に相当するように位置とサイズの逆補正を施した検出枠を含む位置情報を出力する検出枠補正ステップを含む、前記各手段と前記各ステップを機能させるためコンピュータに実行させるためのプログラムであることを特徴とする。
 なお、これらの包括的または具体的な態様は、システム、装置、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なCD-ROMなどの記録媒体で実現されてもよく、システム、装置、集積回路、コンピュータプログラムおよび記録媒体の任意な組み合わせで実現されてもよい。
 本発明によれば、物体検出を行うに際して、画像処理手段からの画像を基本画像として、フレーム制御情報の位置シフト量に則って、モデル前処理手段により水平方向にMピクセル(Mは任意の小数)および垂直方向にNピクセル(Nは任意の小数)の位置シフトを施した第一の位置シフト画像を生成し、基準画像と第一の位置シフト画像とに対してフレーム毎に物体検出モデルにより物体位置とクラス識別と尤度を推論し、検出物体毎の基準画像の検出枠を含む位置情報と度情報と、第一の位置シフト画像の検出枠を含む位置情報と尤度情報とを比較してモデル後処理手段の画像選択手段により尤度情報が最大となる方を選択して出力し、検出枠補正手段により第一の位置シフト画像の推論結果を選択した場合は、フレーム制御情報の位置シフト量に則って逆方向に位置シフトを施した検出枠を含む位置情報を出力することにより、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下を救済して、物体検出能力やクラス識別能力を向上することが可能となる。
 本発明によれば、さらに、フレーム制御情報の位置シフト量に則って、モデル前処理手段により基準画像と第一の位置シフト画像に加えて、基準画像に水平方向にPピクセル(Pは任意の小数)および垂直方向にQピクセル(Qは任意の小数)の位置シフトを施した第二の位置シフト画像を生成し、基準画像と第一の位置シフト画像と第二の位置シフト画像に対してフレーム毎に物体検出モデルにより物体位置とクラス識別と尤度を推論し、画像選択手段により異なる3種類の画像に対する推論結果の中から尤度情報が最大となる推論結果を選択して出力し、検出枠補正手段により第一の位置シフト画像か第二の位置シフト画像の推論結果を選択した場合は、前記フレーム制御情報の位置シフト量に則って前記モデル前処理手段の生成時とは逆方向に位置シフトを施した検出枠を含む位置情報を出力することにより、特に、物体検出モデルの検出レイヤが複数存在している場合に、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下をより良く救済して、物体検出能力やクラス識別能力を向上することが可能となる。
 本発明によれば、さらに、物体検出モデルが深層学習や機械学習により作成されたモデル学習辞書とDNNなどを含むニューラルネットワークであることにより、画像中でDNNを含むニューラルネットワークの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下を救済して、物体検出能力やクラス識別能力を向上することが可能となる。
 本発明によれば、さらに、フレーム制御情報の位置シフト量が、ニューラルネットワークモデルの入力画像の垂直方向と水平方向のピクセル数をニューラルネットワークモデルの1つ以上の検出レイヤ毎の水平方向と垂直方向のグリッドセルサイズで除算した値の1/2ピクセル値か、それに近似するピクセル値で決定されることにより、画像中でDNNを含むニューラルネットワークの検出レイヤの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下を救済する効果が高まり、より確実に物体検出能力やクラス識別能力を向上することが可能となる。
 本発明によれば、さらに、フレーム制御情報の位置シフト量が2種類以上あり、その位置シフト量がニューラルネットワークモデルの1つ以上の検出レイヤ毎の水平方向と垂直方向のグリッドセルサイズで除算した値の1/2ピクセル値か、それに近似するピクセル値で決定された中で、検出対象物のサイズに依存して変化する検出精度、もしくは、検出頻度が高い検出レイヤに対する位置シフト量の順番で適用されることにより、画像中の検出対象物のサイズに対して最適な推論精度が得られるDNNを含むニューラルネットワークの検出レイヤの構造に対する位置シフト量が適用できるため、検出対象物の位置とサイズの揺らぎに対する推論精度の低下に対する救済効果がさらに高まり、より確実に物体検出能力やクラス識別能力を向上することが可能となる。
 本発明によれば、さらに、フレーム制御情報の位置シフト量の種類が、モデル前処理手段の位置シフト画像の種類よりも多い場合は、複数の位置シフト量の平均値を位置シフト量として使用することにより、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下を平均的に救済して、安定して物体検出能力やクラス識別能力を向上することが可能となり、さらに、フレーム毎に同時に処理する位置シフト画像の種類を制限することで物体検出モデルの推論時の処理負荷を軽減ことが可能となる。したがって、搭載する演算プロセッサなどの性能に制限を設けた場合でも、物体検出の精度や性能を担保しつつ、低レイテンシーとリアルタイム性を実現することが可能となる。
 本発明によれば、さらに、フレーム制御情報の位置シフト量の種類が3種類以上存在し、かつ、モデル前処理手段の位置シフト画像の種類が3種類以上存在する場合は、フレーム制御情報の位置シフト量に則って、モデル前処理手段で基準画像から3つ以上の位置シフト画像を生成し、基準画像と合わせてフレーム毎に物体検出モデルとモデル後処理手段の画像選択手段により異なる4種類以上の画像に対する推論結果の中から最大となる推論結果を選択してフレーム毎に出力し、検出枠補正手段により基準画像の推論結果以外を選択した場合は、逆方向に位置シフトを施した検出枠を含む位置情報を出力することにより、DNNを含むニューラルネットワークが多数の検出レイヤで構成される場合にも、各検出レイヤに対する最適な位置シフト量が適用できるため、検出対象物の位置とサイズの揺らぎに対する推論精度の低下に対する救済効果がさらに高まり、より確実に物体検出能力やクラス識別能力を向上することが可能となる。
 本発明によれば、さらに、フレーム制御情報の位置シフト量に則って、モデル前処理手段によりn(nは0を含む任意の2の倍数)フレーム目は基準画像を、n+1フレーム目は第一の位置シフト画像を物体検出モデルに入力し、フレーム毎に基準画像と第一の位置シフト画像から交互に物体位置とクラス識別と尤度を推論し、モデル後処理手段の画像選択手段により現在のフレームと1つ前の過去フレームの推論結果を比較して最大となる推論結果を選択して出力し、検出枠補正手段によりn+1フレーム目の第一の位置シフト画像の推論結果を選択した場合は逆方向に位置シフトを施した検出枠を含む位置情報を出力することにより、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下を救済して、物体検出能力やクラス識別能力を向上することが可能となり、さらに、フレーム毎に推論する画像を1つに限定することができるため、物体検出モデルの推論時の処理負荷を軽減ことが可能となる。したがって、特に検出対象物が静止している状態で物体検出を行う場合や、搭載する演算プロセッサなどの性能に制限を設けた場合でも、物体検出の精度や性能を担保しつつ、低レイテンシーとリアルタイム性を実現することが可能となる。
 本発明によれば、さらに、フレーム制御情報の位置シフト量に則って、モデル前処理手段によりm(mは0を含む任意の3の倍数)フレーム目は基準画像を、m+1フレーム目は第一の位置シフト画像を、m+2フレーム目は第二の位置シフト画像を物体検出モデルに入力し、フレーム毎に基準画像と第一の位置シフト画像と第二の位置シフト画像を順番に物体位置とクラス識別と尤度を推論し、モデル後処理手段の画像選択手段により現在のフレームと1つ前の過去フレームと2つ前の過去フレームの3つの推論結果を比較して最大となる推論結果を選択して出力し、検出枠補正手段によりm+1フレーム目の第一の位置シフト画像かm+2フレーム目の第二の位置シフト画像の推論結果を選択した場合は逆方向に位置シフトを施した検出枠を含む位置情報を出力することにより、特に、物体検出モデルの検出レイヤが複数存在している場合に、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下をより良く救済して、物体検出能力やクラス識別能力を向上することが可能となり、さらに、フレーム毎に推論する画像を1つに限定することができるため、物体検出モデルの推論時の処理負荷を軽減ことが可能となる。したがって、特に静止画に対する物体検出を行う場合や、搭載する演算プロセッサなどの性能に制限を設けた場合でも、物体検出の精度や性能を担保しつつ、低レイテンシーとリアルタイム性を実現することが可能となる。
 本発明によれば、さらに、フレーム制御情報の位置シフト量の種類が3種類以上存在し、かつ、モデル前処理手段の位置シフト画像の種類が3種類以上存在する場合は、フレーム制御情報の位置シフト量に則って、モデル前処理手段によりr(rは0を含む任意のs(sは4以上の任意の整数)の倍数)フレーム目は基準画像を、r+1フレームからr+s-1フレーム目は各フレームの基準画像から加工したs-1個の位置シフト画像を、フレーム順に物体検出モデルに入力し、フレーム毎に基準画像とs-1個の位置シフト画像を順番に物体位置とクラス識別と尤度を推論し、モデル後処理手段の画像選択手段により現在のフレームとs-1フレーム前の過去フレームの推論結果の中から最大となる推論結果を選択して出力し、検出枠補正手段によりrフレーム目の基準画像の推論結果以外を選択した場合は、逆方向に位置シフトを施した検出枠を含む位置情報を出力することにより、DNNを含むニューラルネットワークが多数の検出レイヤで構成される場合にも、各検出レイヤに対する最適な位置シフト量が適用できるため、検出対象物の位置とサイズの揺らぎに対する推論精度の低下に対する救済効果がさらに高まり、より確実に物体検出能力やクラス識別能力を向上させることが可能となり、さらに、フレーム毎に推論する画像を1つに限定することができるため、物体検出モデルの推論時の処理負荷を軽減ことが可能となる。したがって、特に静止画に対する物体検出を行う場合や、搭載する演算プロセッサなどの性能に制限を設けた場合でも、物体検出の精度や性能を担保しつつ、低レイテンシーとリアルタイム性を実現することが可能となる。
 本発明によれば、さらに、フレーム制御情報の画面分割パラメータに則って、モデル前処理手段の画面分割機能により、基準画像に対して物体検出モデルの入力画面を2つに分割した領域に貼り付けた後、画面分割された一方を第二の分割後基準画像とし、フレーム制御情報の位置シフト量に則って、もう一方の第一の分割後基準画像に位置シフトを施した第一の分割後位置シフト画像を生成して、フレーム毎に物体検出モデルに入力し、第一の分割後基準画像と第二の分割後位置シフト画像に対して物体位置とクラス識別と尤度を推論し、モデル後処理手段の画像選択手段により第二の分割後基準画像と第一の分割後位置シフト画像の推論結果とを比較して最大となる推論結果を選択して出力し、フレーム制御情報の画面分割パラメータに則って、検出枠補正手段により、基準画像に相当するように位置とサイズの逆補正を施した検出枠を含む位置情報を出力し、さらに、第一の分割後位置シフト画像の推論結果を選択した場合は、フレーム制御情報の位置シフト量に則って、逆補正を施した検出枠を含む位置情報を出力することにより、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下を救済して、物体検出能力やクラス識別能力を向上することが可能となり、さらに、フレーム毎に推論する画像を1つに限定することができるため、物体検出モデルの推論時の処理負荷を軽減ことが可能となる。したがって、検出対象物が動いている状態で物体検出を行う場合や、搭載する演算プロセッサなどの性能に制限を設けた場合でも、物体検出の精度や性能を担保しつつ、低レイテンシーとリアルタイム性を実現することが可能となる。
 本発明によれば、さらに、フレーム制御情報の位置シフト量が、画面分割機能により画面分割された一方の第一の分割後基準画像の垂直方向と水平方向のピクセル数をニューラルネットワークモデルの1つ以上の検出レイヤ毎の水平方向と垂直方向のグリッドセルサイズで除算した値の1/2ピクセル値か、それに近似するピクセル値で決定されることにより、検出対象物が動いている状態で物体検出を行う場合や、搭載する演算プロセッサなどの性能に制限を設けた場合でも、低レイテンシーとリアルタイム性を維持しつつ、画像中でDNNを含むニューラルネットワークの検出レイヤの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下を救済する効果が高まり、より確実に物体検出能力やクラス識別能力を向上することが可能となる。
 本発明によれば、さらに、フレーム制御情報の位置シフト量が、画面分割機能により画面分割された一方の第一の分割後基準画像の垂直方向と水平方向のピクセル数をニューラルネットワークモデルの1つ以上の検出レイヤ毎の水平方向と垂直方向のグリッドセルサイズで除算した値の1/2ピクセル値か、それに近似するピクセル値で決定された中で、検出対象物のサイズに依存して変化する検出精度、もしくは、検出頻度が高い検出レイヤに対する位置シフト量の順番で適用されることにより、検出対象物が動いている状態で物体検出を行う場合や、搭載する演算プロセッサなどの性能に制限を設けた場合でも、低レイテンシーとリアルタイム性を維持しつつ、画像中の検出対象物のサイズに対して最適な推論精度が得られるDNNを含むニューラルネットワークの検出レイヤの構造に対する位置シフト量が適用できるため、検出対象物の位置とサイズの揺らぎに対する推論精度の低下に対する救済効果がさらに高まり、より確実に物体検出能力やクラス識別能力を向上することが可能となる。
 本発明によれば、さらに、画面分割機能により画面分割された際のフレーム制御情報の位置シフト量の種類が2つ以上の場合は、複数の位置シフト量の平均値を位置シフト量として使用することにより、検出対象物が動いている状態で物体検出を行う場合や、搭載する演算プロセッサなどの性能に制限を設けた場合でも、低レイテンシーとリアルタイム性を維持しつつ、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下を平均的に救済して、安定した物体検出能力やクラス識別能力を向上することが可能となる。
 本発明によれば、さらに、画面分割機能により画面分割された際の第一の分割後基準画像、および、第二の分割後基準画像が、ニューラルネットワークモデルの1つ以上の検出レイヤ毎の水平方向と垂直方向のグリッドセルサイズで除算した際に、水平方向も垂直方向も割り切れるように、フレーム制御情報の画面分割パラメータを設定することにより、検出対象物が動いている状態で物体検出を行う場合や、搭載する演算プロセッサなどの性能に制限を設けた場合でも、低レイテンシーとリアルタイム性を維持しつつ、分割された画像のそれぞれに対して、同じ条件で画像中の物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下を救済することが可能となる。
 本発明によれば、さらに、フレーム制御情報の画面分割パラメータに則って、モデル前処理手段により画像を分割する場合は、画面分割パラメータに則って生成された学習画像にアノテーション手段により正解枠データを付加し、内蔵もしくは外部の辞書学習手段によりモデル学習辞書を再学習することにより、検出対象物が動いている状態で物体検出を行う場合や、搭載する演算プロセッサなどの性能に制限を設けた場合でも、低レイテンシーとリアルタイム性を維持しつつ、画面分割された画像に対して、物体検出モデルとモデル学習辞書の汎用性やロバスト性の強化を図ることができるため、画像中の物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下を救済することが可能となる。
 本発明によれば、さらに、フレーム制御情報に則って、モデル前処理手段により物体検出モデルに入力する画像に対して位置シフトを含め加工するに際して、加工により発生する有効画像が存在しない余白部分は、有効画像の平均輝度レベルと等しい単一色で一様に塗りつぶして画像を生成することにより、余白部分の特徴量が、物体検出モデルの推論精度に与える影響を軽減できるため、画像中の物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下をより良く救済することが可能となる。
 本発明によれば、さらに、フレーム制御情報の位置シフト量に則って位置シフトを実施する前の画像に対して、フレーム制御情報の加工パラメータに則って、モデル前処理手段のクロップ機能により任意の場所の画像を切り抜き、リサイズ機能により画像サイズを変更し、階調変換機能により、コントラスト補正曲線、もしくは、階調変換曲線を使用して輝度レベルを任意の値に変更し、アスペクト比変更機能によりアスペクト比を変更し、回転機能により回転角度を変更することにより、画像取得時の各種変動条件を吸収もしくは緩和することが可能となり、さらに、画像取得後の画像から対象検出物を検出に適した状態に加工することが可能となるため、画像中の物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下をより良く救済することが可能となる。
 本発明によれば、さらに、フレーム毎に物体検出モデルに入力される各々の入力画像に対する推論結果である1つないし複数の検出物体毎に対する検出不能と疑似検出を含むゼロないし複数の検出枠を含む位置情報と尤度情報に対して、モデル後処理手段の個体識別手段により、各々の尤度情報に対する任意の閾値T(Tは、任意の小数)と、各々の検出枠を含む位置情報の領域が相互にどれぐらい重なっているかを表す指標であるIOU値に対する任意の閾値U(Uは、任意の小数)とにより、フレーム毎の検出物体毎に個体識別後の検出枠を含む位置情報と個体識別後の尤度情報とに補正し、個体識別手段により選定された出力結果を使用して、画像選択手段と検出枠補正手段とにより、フレーム毎の検出物体毎に最尤となる検出枠を含む位置情報と最尤となる尤度情報を出力することにより、異常データの排除と検出物体毎に検出枠を含む位置情報と尤度情報を適した情報に個体判別、および、補正することができるため、画像中の物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下をより正確に救済することが可能となる。
 本発明によれば、さらに、フレーム制御情報の画面分割パラメータに則って、モデル前処理手段により画像を分割する場合は、フレーム毎に物体検出モデルに入力される第二の分割後基準画像と第一の分割後位置シフト画像の入力画像に対する推論結果である1つないし複数の検出物体毎に対する検出不能と疑似検出を含むゼロないし複数の検出枠を含む位置情報と尤度情報に対して、モデル後処理手段の個体識別手段により、各々の尤度情報に対する任意の閾値T(Tは、任意の小数)と、各々の検出枠を含む位置情報の領域が相互にどれぐらい重なっているかを表す指標であるIOU値に対する任意の閾値U(Uは、任意の小数)とにより、フレーム毎の分割された画面毎の検出物体毎に前記個体識別後の検出枠を含む位置情報と前記個体識別後の尤度情報とに補正し、前記個体識別手段により選定された出力結果を使用して、画像選択手段と検出枠補正手段とにより、フレーム毎の検出物体毎に最尤となる検出枠を含む位置情報と最尤となる尤度情報を出力することにより、検出対象物が動いている状態で物体検出を行う場合や、搭載する演算プロセッサなどの性能に制限を設けた場合でも、画面分割により低レイテンシーとリアルタイム性を維持しつつ、異常データの排除と検出物体毎に検出枠を含む位置情報と尤度情報を適した情報に個体判別、および、補正することができるため、画像中の物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下をより正確に救済することが可能となる。
 本発明によれば、さらに、フレーム制御情報の画面分割パラメータに則って、画面分割の加工を施した際は、個体識別手段により第二の分割後基準画像と第一の分割後位置シフト画像の境界線上で検出された検出枠を含む位置情報は、第二の分割後基準画像と第一の分割後位置シフト画像のいずれの領域に広く分布しているか判定し、広く分布している側の領域内の検出枠を含む位置情報を領域内で切り出して結果として残留させ、一方の領域側にはみ出した検出枠の位置情報は、切り取って削除することにより、検出対象物が動いている状態で物体検出を行う場合や、搭載する演算プロセッサなどの性能に制限を設けた場合でも、画面分割により低レイテンシーとリアルタイム性を維持しつつ、分割境界上の異常データの排除と検出物体毎に検出枠を含む位置情報と尤度情報を適した情報に個体判別、および、補正することができるため、画像中の物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下をより正確に救済することが可能となる。
 本発明によれば、さらに、モデル後処理手段のフレーム情報保持手段により、個体識別手段と画像選択手段と検出枠補正手段により最尤と判定して出力したフレーム毎の検出物体毎に対する推論結果である最尤の検出枠を含む位置情報と最尤の尤度情報を、最大検出物体数V(Vは任意の整数)の数だけ現在のフレームftとft―1からft-s(sは任意の整数)までの過去フレーム分の格納メモリに保持し、以降、最新の現在のフレームの情報が算出される度に、過去1フレーム分の格納メモリに保持している情報をスライドして記録させながら現在と過去sフレーム分の検出物体数分の時系列情報を保持することにより、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する現在のフレームの推論精度の低下を救済した結果と、過去フレームの結果を参照することが可能となる。さらに、過去の検出物体別の履歴や軌跡を表示することも可能となる。
 本発明によれば、さらに、フレーム情報保持手段のフレーム情報補間手段により、任意のフレームの各検出物体の格納メモリの最尤の検出枠を含む位置情報である検出枠の中心座標と高さと幅の情報と、最尤の尤度情報である検出の信頼性を示す尤度とクラス識別情報に欠落がある場合に、前後のフレームの格納メモリの情報から補間して新たな情報として当該フレームの格納メモリに記録し、情報の補間方法が、ニュートン後退補間法や移動平均法などであることにより、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する現在のフレームの推論精度の低下を救済した結果と、過去フレームの結果に対して連続性が補償されるため、過去の検出物体別の履歴や軌跡を正確にかつ滑らかに表示することが可能となる。さらに、物体検出能力やクラス識別能力や追跡能力を向上することが可能となる。
 本発明によれば、さらに、フレーム情報補間手段の動きベクトル量算出手段により、フレーム情報保持手段のft-1からft-sの過去フレームの格納メモリの最尤の検出枠を含む位置情報の中心座標から動きベクトル量を算出して各フレームの検出物体毎の格納メモリに記録することと、フレーム情報補間手段の動きベクトル予測算出手段により、未来のフレームの検出物体毎の動きベクトル量を予測して最尤の検出枠を含む位置情報の中心座標を予測することにより、過去のフレームの検出物体毎の動きベクトル量が算出できるため、その結果を元に未来のフレームの動きベクトル量と検出枠の中心座標を予測することが可能となり、予測結果と現在の物体検出モデルとモデル後処理手段によって推論された結果と比較することで、連続性が確保されているか、異常値であるか否かを判断することが可能となる。したがって、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する現在のフレームの推論精度の低下を救済した結果に対して、連続性と追従性を補償することで、物体検出能力やクラス識別能力や追跡能力を向上することが可能となる。さらに、現在までのフレームの結果より、未来のフレームの予測も可能となるため、危険を知らせる必要がある場合など、事前に、もしくは、素早く情報を発信することが可能となる。
 本発明によれば、さらに、フレーム情報補間手段の距離係数算出手段により、過去フレームの検出物体毎の距離係数を算出して格納メモリに記録し、その情報と動きベクトル予測算出手段により予測された動きベクトル量を利用して未来のフレームの距離係数を予測し、未来のフレームの最尤の検出枠を含む位置情報の検出枠の幅と高さの情報を予測することにより、カメラなどの撮影機器と対象物体との距離情報を把握して動きベクトルと現在、もしくは、未来のフレームの検出枠の中心座標などを予測することが可能となるため、連続的かつ正確な予測が可能となる。したがって、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する現在のフレームの推論精度の低下を救済した結果に対して、連続性と追従性を正確に補償することで、物体検出能力やクラス識別能力や追跡能力を向上することが可能となる。さらに、現在までのフレームの結果より、未来のフレームの予測も可能となるため、危険を知らせる必要がある場合など、事前に、もしくは、素早く正確に情報を発信することが可能となる。
 本発明によれば、さらに、フレーム情報補間手段の異常検出情報除去手段により、最尤の検出枠を含む位置情報と最尤の尤度情報の過去のフレーム間の時間連続性の異常を検出した場合に格納メモリから除去し、検出情報復元手段により連続性を有する情報に復元して格納メモリに記録し、さらに、異常検出情報予測除去手段により、現在のフレームの検出物体毎の最尤の検出枠を含む位置情報と、動きベクトル予測算出手段により予測された最尤の検出枠を含む位置情報を比較して異常を検出した場合に除去し、予測結果に置き換えて現在のフレームの格納メモリに記録することにより、過去と現在のフレームに対して、異常値の除去と補間値もしくは予測値での復元が可能となる。したがって、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する過去と現在のフレームの推論精度の低下を救済した結果に対して、連続性と追従性をより正確に補償することが可能となるため、物体検出能力やクラス識別能力や追跡能力を向上することが可能となる。さらに、検出物体別の履歴や軌跡をより正確にかつ連続的で滑らかに表示することが可能となる。
 本発明によれば、さらに、フレーム情報補間手段が、フレーム情報保持手段に保持されている最尤の検出枠を含む位置情報の検出枠の幅と高さと中心座標が、フレーム情報補間手段により補間された最尤の検出枠を含む位置情報の検出枠の幅と高さと中心座標に対して、任意の閾値を超過、もしくは、任意の割合を超過してずれていることを検出した場合、もしくは、最尤の尤度情報の尤度が異常だが救済を施すに値する救済閾値未満の場合は、異常検出情報除去手段により異常情報と判定して格納メモリからすべての情報を除去し、その際、最尤の尤度情報の尤度が、正常と判定する正常判定閾値以下、かつ、異常だが救済を施すに値する救済閾値以上である場合は、最尤の尤度情報を除く他の情報を除去し、それら除去された情報に対して、検出情報復元手段により復元された最尤の検出枠を含む位置情報と最尤の尤度情報と動きベクトル量と距離係数を格納メモリに記録して復元することにより、過去フレームに対して、より正確に判断して異常値の除去と補間値での復元が可能となる。したがって、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する過去フレームの推論精度の低下を救済した結果に対して、連続性と追従性をより正確に補償することが可能となるため追跡能力を向上することが可能となる。さらに、検出物体別の履歴や軌跡をより正確にかつ連続的で滑らかに表示することが可能となる。
 本発明によれば、さらに、フレーム情報補間手段が、現在のフレームの検出物体毎の個体識別手段と画像選択手段と検出枠補正手段により算出された最尤の検出枠を含む位置情報の検出枠の幅と高さと中心座標が、動きベクトル予測算出手段により予測された未来のフレームの最尤の検出枠を含む位置情報の検出枠の幅と高さと中心座標に対して、任意の閾値以下、もしくは、任意の割合以下のずれである場合、かつ、最尤の尤度情報の尤度が、正常と判定する正常判定閾値以上の場合は、格納メモリに最尤の検出枠を含む位置情報と最尤の尤度情報と動きベクトル量と距離係数を記録し、最尤の検出枠を含む位置情報が、任意の閾値を超過、もしくは、任意の割合を超過してずれていることを検出した場合、もしくは、最尤の尤度情報の尤度が、異常だが救済を施すに値する救済閾値未満の場合に、異常検出情報予測除去手段により異常情報と判定してすべての情報を除去し、最尤の尤度情報の尤度が、正常と判定する正常判定閾値以下、かつ、異常だが救済を施すに値する救済閾値未満である場合は最尤の尤度情報を除く他の情報を除去し、それら除去された情報に対して、検出情報予測復元手段により動きベクトル予測算出手段の出力結果である検出枠を含む位置情報と動きベクトル量と距離係数と最尤の尤度情報を置き換えて格納メモリに記録することにより、現在のフレームに対して、より正確に判断して異常値の除去と補間値での復元が可能となる。したがって、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する現在のフレームの推論精度の低下を救済した結果に対して、連続性と追従性をより正確に補償することが可能となるため物体検出能力やクラス識別能力や追跡能力を向上することが可能となる。さらに、タイムラグが少ない状態で検出物体別の履歴や軌跡をより正確にかつ連続的で滑らかに表示することが可能となる。
 本発明によれば、さらに、モデル後処理手段のトレーサビリティ安定値指標化手段により、現在のフレームの検出物体毎のフレーム情報保持手段とフレーム情報補間手段により算出された最尤の検出枠を含む位置情報の検出枠の中心座標のX座標とY座標と幅と高さとアスペクト比が、動きベクトル予測算出手段484により予測された各種値に対して、各々何%偏差があるか算出し、W(Wは任意の整数)フレーム分平均して、中心X座標平均偏差(%)と中心Y座標平均偏差(%)と前記距離係数で正規化した枠幅変動率(%)と前記距離係数で正規化した枠高さ変動率(%)と枠アスペクト比変動率(%)を算出することにより、物体検出装置の物体検出能力やクラス識別能力や追跡能力がどの程度正確で安定しているか指標化することが可能となる。したがって、現在のフレーム制御情報の位置シフト量や救済のための各種救済モードや状態が適しているかどうかも判断することが可能となる。
 本発明によれば、さらに、モデル後処理手段の異常検出枠数算出手段により、異常検出と判断してフレーム中の異常検出となった枠数を異常検出枠数として出力することにより、物体検出装置で発生した異常検出の数を把握することが可能となり、安定性の指標化の1つとなるため、フレーム制御情報の位置シフト量や救済のための各種救済モードや状態が適しているかどうかも判断することが可能となる。さらに、物体検出モデルとモデル学習辞書のロバスト性や物体検出能力の改良、もしくは、改善の必要性を判断することも可能となる。
 本発明によれば、さらに、モデル後処理手段の検出NG数算出手段により、最尤の尤度情報の尤度が救済閾値未満で異常値と判断されて除去された場合、もしくは、推論の結果が未検出だった場合に、復元対象にもならなかった場合に、検出不能と判断してフレーム中の検出不能となった回数を検出NG数として出力することにより、物体検出装置で検出そのものができなかった数を把握することが可能となり、安定性の指標化の1つとなるため、フレーム制御情報の位置シフト量や救済のための各種救済モードや状態が適しているかどうかも判断することが可能となる。さらに、物体検出モデルとモデル学習辞書のロバスト性や物体検出能力の改良、もしくは、改善の必要性を判断することも可能となる。
 本発明によれば、さらに、モデル後処理手段のステートマシン制御手段により、フレーム情報保持手段とフレーム情報補間手段により算出された最尤の検出枠を含む位置情報と、検出物体の最尤の尤度情報の中で最も低い最低尤度と、トレーサビリティ安定値指標化手段の各種出力情報である安定値指標と、異常検出枠数と、検出NG数との、1つ以上、もしくは、すべてを使用して次のフレームのフレーム制御情報の位置シフト量とその種類と数の状態をフレーム毎に決定することにより、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下を救済するに際して、物体検出の安定性や検出状態と検出対象物のサイズに対して最適な推論精度が得られるDNNを含むニューラルネットワークの検出レイヤの構造に対する位置シフト量やその種類と数が時系列上で自動的に適用できるため、検出対象物の位置とサイズの揺らぎに対する推論精度の低下に対する救済効果がさらに高まり、より確実に物体検出能力やクラス識別能力や追跡能力を向上することが可能となる。さらに、搭載する演算プロセッサなどの性能に制限を設けた場合でも、低レイテンシーとリアルタイム性を維持しつつ、物体検出能力やクラス識別能力や追跡能力を向上することが可能となる。
 本発明によれば、さらに、ステートマシン制御手段により、尤度救済OFFモードの状態から開始し、現在のフレームの最低尤度が、任意の第一の尤度閾値未満であるか、もしくは、トレーサビリティ安定値指標化手段の出力情報である前記安定値指標が各々の第一の不安定閾値に対して1つでも超過する場合に、次フレームのフレーム制御情報の位置シフト量を1種類の状態で制御する尤度救済最尤2枚モードとし、フレーム情報保持手段の検出物体毎の最尤の検出枠を含む位置情報と、最尤の尤度情報と、物体検出モデルのニューラルネットワークモデルの1つ以上の検出レイヤの情報とを加味して位置シフト量を決定することにより、物体検出が良好で安定している状況下では、尤度救済OFFモードを維持して尤度救済を行なわず、物体検出の性能や安定性が低下していると判断した場合のみ、最低限のシステムへの負荷で尤度低下を救済する尤度救済最尤2枚モードに状態遷移させて物体検出の性能や安定性の向上を図ることができるため、搭載する演算プロセッサなどの性能に制限を設けた場合でも、効率的に、低レイテンシーとリアルタイム性を維持しつつ、物体検出能力やクラス識別能力や追跡能力を向上することが可能となる。
 本発明によれば、さらに、ステートマシン制御手段により、現在のフレームが尤度救済最尤2枚モードの状態の場合、現在のフレームの最低尤度が、任意の第二の尤度閾値未満であるか、もしくは、トレーサビリティ安定値指標化手段の出力情報である安定値指標が各々の第二の不安定閾値に対して1つでも超過する場合か、もしくは、異常検出枠数が1以上である場合か、検出NG数が1以上である場合に、次フレームのフレーム制御情報の位置シフト量を2種類の状態で制御する尤度救済最尤3枚モードとし、フレーム情報保持手段の検出物体毎の最尤の検出枠を含む位置情報と、最尤の尤度情報と、物体検出モデルのニューラルネットワークモデルの1つ以上の検出レイヤの情報とを加味して2種類の位置シフト量を決定することにより、物体検出の性能や安定性が非常に低下していると判断した場合のみ、システムへの負荷を増やしてでも尤度低下を救済する尤度救済最尤3枚モードに状態遷移させて物体検出の性能や安定性の向上を図ることができるため、低レイテンシーとリアルタイム性の維持と、物体検出能力やクラス識別能力や追跡能力の維持とのトレードオフを最適かつ効率的に判断して適用することが可能となる。
 本発明によれば、さらに、ステートマシン制御手段により、現在のフレームが尤度救済最尤3枚モードの状態の場合、現在のフレームの最低尤度が任意の第二の尤度閾値以上であり、前記トレーサビリティ安定値指標化手段の出力情報である安定値指標が各々の第二の不安定閾値のすべてに対して以下であり、異常検出枠数がゼロであり、検出NG数がゼロであり、それら1つ以上、もしくは、すべての条件に合致する場合に、次フレームのフレーム制御情報の位置シフト量を1種類の状態で制御する尤度救済最尤2枚モードとし、フレーム情報保持手段の検出物体毎の最尤の検出枠を含む位置情報と、最尤の尤度情報と、物体検出モデルのニューラルネットワークモデルの1つ以上の検出レイヤの情報とを加味して位置シフト量を決定することにより、物体検出の性能や安定性が非常に低下している状態から良好な状態に遷移したと判断すれば、システムへの負荷を軽減して尤度低下を救済する尤度救済最尤2枚モードに状態遷移させることで、搭載する演算プロセッサなどの性能に制限を設けた場合でも、物体検出能力やクラス識別能力や追跡能力の維持を図りつつ、低レイテンシーとリアルタイム性を実現することが可能となる。
 本発明によれば、さらに、ステートマシン制御手段により、現在のフレームが尤度救済最尤2枚モードの状態の場合、現在のフレームの最低尤度が任意の第一の尤度閾値以上であり、トレーサビリティ安定値指標化手段の出力情報である安定値指標が各々の第一の不安定閾値のすべてに対して以下であり、異常検出枠数がゼロであり、検出NG数がゼロであり、それら1つ以上、もしくは、すべての条件に合致する場合に、次フレームは尤度低下の救済を行わない尤度救済OFFモードの状態とすることにより、物体検出の性能や安定性が低下している状態から良好な状態に遷移したと判断すれば、システムへの負荷を軽減して尤度低下を救済しない尤度救済OFFモードに状態遷移させることで、搭載する演算プロセッサなどの性能に制限を設けた場合でも、物体検出能力やクラス識別能力や追跡能力の維持を図りつつ、より効率的に低レイテンシーとリアルタイム性も実現することが可能となる。
 本発明によれば、さらに、第二のmAP算出手段により、アノテーション手段により生成された検出物体毎に正解となる検出枠を含む位置情報と正解となるクラス識別情報とが存在する場合は、フレーム情報保持手段の現在のフレームの検出物体毎の最尤の検出枠を含む位置情報と正解となる検出枠を含む位置情報の領域がどれぐらい重なっているかを表す指標である対正解枠IOU値と、フレーム情報保持手段の現在のフレームの検出物体毎の最尤の尤度情報と正解となるクラス識別情報を比較した結果の真偽の情報と、最尤の尤度情報の尤度を算出し、バリデーション画像に対するAP(AveragePrecision)値、mAP(mean Average Precision)値、Recall、Precisionなどの指標を算出することにより、推論精度の低下を救済して物体検出能力やクラス識別能力や追跡能力を向上した結果に基づいて、物体検出モデルの性能とモデル学習辞書の汎用性やロバスト性の弱点や強化方針を正確に分析するための性能指標化することが可能となる。したがって、推論性能の強化のみでは対処できないモデル学習辞書の再学習の必要性を判断して強化することが可能となるため、物体検出装置の物体検出能力やクラス識別能力や追跡能力の最大化を図ることが可能となる。
 本発明によれば、さらに、物体検出装置の各種手段や機能を物体検出方法の各種ステップで実行することにより、装置や手段や機能を方法として実現することが可能となるため、ハードウェアとソフトウェアを最適に融合させながら、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下を救済して、物体検出能力やクラス識別能力を向上することが可能となる。
 本発明によれば、さらに、物体検出装置の各種手段や機能、および、物体検出方法の各種ステップを機能させるためコンピュータに実行させるためのプログラムで実行することにより、よりハードウェアとソフトウェアを最適に融合させながら、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下を救済して、物体検出能力やクラス識別能力を向上することが可能となる。さらに、プログラムの更新や改良により、システムのアップデートや顧客の固有の要望にも適宜対応することが可能となる。
 以下、図面を参照しながら本発明の実施形態を説明する。同様の構成要素には同様の参照符号を付し、同様の説明の繰り返しは省略する。
 (実施形態1)
 図1は、本発明の実施形態1による物体検出装置を示すブロック図である。
 なお、後述する本発明の実施形態1に記載している各手段、各機能、および、各工程は、それぞれをステップに、各装置は、それぞれを方法に置き換えても良い。また、本発明の実施形態1に記載している各手段と各装置は、コンピュータにより実行されるプログラムとして実現されても良い。
 画像を取得して適切に加工(基準画像を作成)する画像処理手段100は、レンズ101と、レンズ101を通した対象物から発した光を受光し、光の明暗を電気情報に変換するデバイスであるイメージセンサ102と、黒レベル調整機能、HDR(ハイダイナミックレンジ)、ゲイン、露光調整機能、欠陥画素補正機能、シェーディング補正機能、ホワイトバランス機能、色補正機能、ガンマ補正機能、局所トーンマッピング機能等を備えた画像処理プロセッサ103を主として構成される。また、前述の機能以外のものも備えるものであっても良い。レンズ101は、例えば、物体検出の使用用途に応じて、標準ズームレンズ、広角ズームレンズ、魚眼レンズなどを使用するものであっても良い。検出対象を撮影する環境の中で、照度などの時系列上の変動条件を画像処理プロセッサ103に搭載されている各種機能により、検出、および、制御して、変動を抑制しながら検出すべき物体を見やすく、もしくは、見つけやすくする画像処理を施す。
 画像処理手段100で生成された画像は、画像出力制御手段110に入力されて、表示およびデータ格納手段120であるモニタ機器やPC(パーソナルコンピュータ)などの外部メモリ、および、クラウドサーバー等に送信される。画像出力制御手段110は、例えば、表示およびデータ格納手段120の水平および垂直同期信号に従って画像データを伝送する機能を有するものであっても良い。また、画像出力制御手段110は、モデル後処理手段400の出力結果である最尤の検出枠を含む位置情報401と最尤の尤度情報402を参照して、検出した物体にマーキングするように枠描写や尤度情報を出力する画像に重畳させる機能を有するものであっても良い。また、シリアル通信機能やパラレル通信機能や双方を変換するUARTなどにより、最尤の検出枠を含む位置情報401と最尤の尤度情報402を直接、表示およびデータ格納手段120に伝送するものであってもよい。
 一方、物体検出モデル300による物体検出を行うために、画像処理手段100により生成された画像データをモデル前処理手段200に入力して、物体検出モデル300の入力に適切な画像であるモデル入力画像210に加工する。ここで、物体検出モデル300が、輝度レベルのみの画像データを使用して物体検出を行うモデルである場合は、画像処理手段100で生成される物体検出のための画像は、輝度レベルのみを有する輝度データに変換されたものでも良く、物体検出モデル300が、色情報を含むカラー画像データを使用して物体検出を行うモデルである場合は、画像処理手段100で生成される物体検出のための画像は、RGBなどの画素を有するカラー画像データであっても良い。本実施形態1は、一例として、物体検出モデル300が、輝度レベルのみの画像データを使用して物体検出を行うモデルであり、画像処理手段100で生成される物体検出のための画像は、輝度レベルのみを有する輝度データに変換されたものである場合に関して説明する。
 なお、モデル前処理手段200は、加算器、減算器、乗算器、除算器、比較器などの電子回路で構成される場合もあれば、アフィン変換関数291や射影変換関数292などの関数(ライブラリ)や魚眼レンズを使用して撮影した画像を人間の視野相当に変換するための歪補正テーブル293と、CPUや演算プロセッサで構成される画像処理プロセッサ290によって実現する場合もある。なお、画像処理プロセッサ290は、画像処理手段100が有する画像処理プロセッサ103で代用しても良い。モデル前処理手段200は、上述したアフィン変換関数291や射影変換関数292や画像処理プロセッサ290、もしくは、電子回路を使用して、特定の領域を切り出す際に画像を水平方向と垂直方向の任意の位置にシフトさせるための位置シフト機能220と、任意の倍率に拡大や縮小するためのリサイズ機能230と、画像の適切な一部の範囲である検出範囲を切り出すクロップ機能240と、画面を2つないし複数に分割した領域にクロップ機能240により切り出した画像を垂直方向と水平方向をリサイズ機能230によりリサイズして貼り付ける画面分割機能250と、画像を任意の角度に回転させるための回転機能260と、水平方向と垂直方向の比率を任意に変形するためのアスペクト比変更機能265と、輝度レベルを任意の曲線で変更するための階調変換機能270と、歪補正や円筒変換などを行うためのデワープ機能277と、有効な画素が存在しない領域に任意の輝度レベル信号をパディングする余白パディング機能280などの一部もしくはすべてを備えるものであっても良い。なお、モデル前処理手段200は、画像処理手段100により生成された画像データ、もしくは、その画像データをカメラなどの撮影時の撮影環境の各種変動条件を補償するように、もしくは、物体検出モデル300の入力に適した画像になるように加工した画像を基準画像221として、物体検出モデル300の推論結果である尤度情報の低下を救済するために、フレーム制御情報500の位置シフト量510やリサイズパラメータ511や画面分割パラメータ512に従って、フレーム毎に複数のモデル入力画像210に加工して物体検出モデル300に出力するものであっても良い。フレーム制御情報500の決定の方法や時系列上の変更条件や変更タイミングに関しては、後述するモデル後処理手段400の説明の中で、その使用方法や動作を説明する。
 モデル前処理手段200で加工された基準画像221とフレーム制御情報500に則って基準画像221に位置シフトなどを施したゼロないし複数のモデル入力画像210は、物体検出モデル300に入力されて、推論(予測)により、対象物体がどの位置にいるかが検出されるとともに、その物体が人か車両か等のどのクラスに該当するかを識別(クラス識別)される。その結果として物体検出モデル300から、1つの画像中に存在する検出物体毎に、検出不能と疑似検出を含むゼロないし複数の補正前の検出枠を含む位置情報301と補正前の尤度情報302が出力される。ここで、補正前の検出枠を含む位置情報301は、例えば、検出枠の中心座標、水平方向の幅、垂直方向の高さを含む情報であり、補正前の尤度情報302は、例えば、検出精度を示す尤度とクラス識別情報である。
 物体検出モデル300は、例えば、モデル学習辞書320と、AI(人工知能)は人の脳のニューロンをモデル化したものである畳み込み型ニューラルネットワーク(CNN)を使用したディープニューラルネットワーク(DNN)モデル310で構成される。DNNモデル310は、例えば、検出処理速度に優位性の高いモデルであるYOLO(例えば、非特許文献1参照)やSSDなどを使用する。また、検出精度を優先する際は、例えば、FasterR-CNNやEfficientDetなどを使用する場合もある。また、物体の位置検出は行わずにクラス識別を中心に実施する際は、例えば、MobileNetなどを使用する場合もある。
 図2に、前述したCNNの基本構成となる人工ニューロンモデル330とニューラルネットワーク340の構成概略を示す。人工ニューロンモデル330は、図2と(式3)に示すように、X0、X1、…、Xmなど1つ以上のニューロンの出力信号を受け取り、それぞれの重み係数W0、W1、…、Wmとの乗算結果の総和に対して、活性化関数350を通して次のニューロンへの出力を生成するものである。bは、バイアス(オフセット)である。
Figure JPOXMLDOC01-appb-M000001
 また、それら多数の人工ニューロンモデル330の集合体が、ニューラルネットワーク340である。ニューラルネットワーク340は、入力層、中間層、出力層で構成され、それぞれの人工ニューロンモデル330の出力が次段の各人工ニューロンモデル330に入力されていくものである。人工ニューロンモデル330は、電子回路などのハードウェアや演算プロセッサとプログラムで実現されるものであっても良い。例えば、深層学習によって、各人工ニューロンモデル330の重み係数を辞書データとして算出するものである。辞書データ、すなわち、図1に示すモデル学習辞書320は、ニューラルネットワーク340により構成されるDNNモデル310の重み係数のデータの集合体であり、DNNモデル310の場合は、後述する辞書学習手段600により初期学習、もしくは、再学習されるものである。
 次に、活性化関数350に関して説明する。線形を繰り返しても線形のみに変換するだけなので、活性化関数350は、非線形変換である必要があることが知られている。活性化関数350は、単純に“0”か“1”に識別するステップ関数やシグモイド関数351やランプ関数などが使われるが、シグモイド関数351は、回路規模の増大や、演算プロセッサの能力に依存して演算速度低下が発生するため近年ではReLU(Rectified Linear Unit)352などのランプ関数が使われる場合が多い。ReLU352は、関数への入力値が0以下の場合には出力値が常に0、入力値が0より上の場合には出力値が入力値と同じ値となる関数であり、シグモイド関数351よりもニューラルネットワーク340の層が深くなった場合でも勾配の消失が起こりにくく、計算式で簡素なため処理速度に優位性がある。また、ReLU352の派生であるLeakyReLU(Leaky Rectified Linear Unit)353なども、ReLU352よりも精度が良いため使用される場合が増加している。LeakyReLU353は、入力値が0より下なら入力値をα倍した値(α倍は、例えば0.01倍(基本))、入力値が0より上の場合には出力値が入力値と同じ値となる関数である。それ以外の活性化関数350として、検出物体のクラス識別時に活用されるソフトマックス関数などがあり、使用用途に応じて適する関数を使い分ける。ソフトマックス関数は、複数の出力値の合計が1.0(100%)になるように変換して出力するものである。
 図3A及び図3Bは、DNNモデル310の1つであるYOLOモデル360の構成の一例である。図3Aに示すYOLOモデル360は、例えば、水平方向の画素Xi、垂直方向の画素Yiを入力画像サイズとするものであって良い。周辺ピクセルの領域をフィルタリングにより畳み込むことにより領域ベースの特徴量を圧縮して抽出することが可能なConvolutionレイヤ370、ないし、387と、入力画像におけるフィルタ形状の位置ずれを吸収するように機能するPoolingレイヤ390、ないし、395と、全結合層と出力層を基本構成としているものであって良い。また、例えば、物体の位置の検出とクラス分類(識別)を行うための第一の検出レイヤ361、第二の検出レイヤ362、および、第三の検出レイヤ363を備え、クラス分類の結果に対して逆畳み込みを使用したアップサンプリングするためのUpsamplingレイヤ364と365などで構成されるものであっても良い。これら、モデル入力画像サイズ、Convolutionレイヤ、Poolingレイヤ、検出レイヤ、Upsamplingレイヤなどの画素(ピクセル)サイズや、各種レイヤの数や組み合わせ構成や、検出レイヤの数や配置などは、使用用途に応じて増減、もしくは、変更されるものであっても良い。
 Convolutionレイヤ370、ないし、387は、ある特定の形状や様々な形状に反応する単純型細胞をモデル化したものに相当し、複雑な形状の物体を認識するために活用されるものである。
 一方、Poolingレイヤ390、ないし、395は、形状の空間的なずれを吸収するような働きをする複雑型細胞をモデル化したものに相当し、ある形状の物体の位置がずれると別の形状とみなすところを同一形状にみなせるように働くものである。これらConvolutionレイヤ370、ないし、387とPoolingレイヤ390、ないし、395を複合させることで、様々な複雑な形状の検出物体の移動や変更に頑強になり、物体検出の精度を向上させることが可能となる。
 Upsamplingレイヤ364と365は、元の画像についてのクラス分類を行うとともに、図3Aの366と367に示すスキップ接続を通してCNNの各層における結果を特徴マップとして用いることにより、例えば、第二の検出レイヤ362、および、第三の検出レイヤ363により細かい領域の特定が可能になる。なお、スキップ接続367と366は、それぞれ、Convolutionレイヤ373と374と同じ構成のネットワークをConvolutionレイヤ385後と381後に結合するものである。
 次に、ある実施形態におけるYOLOモデル360の検出精度や確信度に相当するConfidencescore(信頼度スコア)317(尤度に相当)算出方法を検出物体として人物1名を対象とする図3Bにより説明する。処理速度に優位性が高いとされるYOLOなどに代表されるone―stage型のDNNモデルを使用する場合は、物体の位置の検出とクラス識別を同時に行うために、モデル入力画像311に対して前述した検出レイヤ別に画像領域を任意のサイズのグリッドセルに分割する。図3Bでは図3Aのモデル入力画像255の水平画素数Xiが128ピクセル、垂直画素数Yiが128ピクセルで定義された場合の第二の検出レイヤ362のグリッドセルが8×8の例を示す。その際、第一の検出レイヤ361のグリッドセルは4×4、第三の検出レイヤ363のグリッドセルは16×16のように各検出レイヤによってグリッドセルのサイズは異なっても良い。複数のBoundingBoxとConfidence(信頼度)313(Pr(Object)×IOU)を推測する工程312と、グリッドセル単位で条件付きクラス確率(conditionalclass probabilities)であるPr(Classi|Object)315を算出する工程314を並行して処理するものである。その後、最終検出工程316でConfidencescore(信頼度スコア)317を算出する際に双方を乗算するものである。したがって、物体の位置の検出とクラス識別を同時に行うことにより処理速度の向上が可能となる。なお、最終検出工程316の点線で示した補正前の検出枠を含む位置情報318が、人物に対する検出結果として表示された検出枠である。
 ここで説明したYOLOモデル360を例にとると、第一の検出レイヤ361と第二の検出レイヤ362と第三の検出レイヤ363の3種類の検出レイヤが存在するが、検出対象となる物体のモデル入力画像311に比する大きさの違いによって、各検出レイヤによる推論結果(尤度に相当する信頼度スコア317)が異なる。つまり、物体サイズに依存して推論結果が優位となる検出レイヤが異なることが知られている。例えば、検出物体サイズが十分大きい場合は、第一の検出レイヤ361(グリッドセル4×4)により算出される信頼度スコア317の値が高くなり信頼度も高くなる。一方で、検出物体サイズが大サイズから中サイズにかけては、第二の検出レイヤ362(グリッドセル8×8)により算出される信頼度スコア317の値が高くなり信頼度も高くなる。一方で、検出物体サイズが中サイズから小サイズにかけては、第三の検出レイヤ363(グリッドセル16×16)により算出される信頼度スコア317の値が高くなり信頼度も高くなる。つまり、物体サイズと検出レイヤのグリッドセルのサイズには依存関係があるため、物体サイズに対する推論性能の向上や深層学習の効率化、ロバスト性の向上のためにも複数の異なるクリッドセルのサイズの検出レイヤを有することが重要となる。
 なお、ここでは、図3Aのモデル入力画像255の水平画素数Xiが128ピクセル、垂直画素数Yiが128ピクセルで定義された場合を例に挙げているが、より精度のよい物体検出を行う際はモデル入力画像255の画素数を大きくすることが望ましい。例えば、モデル入力画像255の水平画素数Xiを416ピクセル、垂直画素数Yiを416ピクセルで定義した場合は、第一の検出レイヤ361のグリッドセルは7×7、第二の検出レイヤ362のグリッドセルは13×13、第三の検出レイヤ363のグリッドセルは26×26のように各検出レイヤのグリッドセルのサイズも大きくなるため、より精度の良い物体検出を行うことが可能となる。ただし、その分プロセッサなどに要求される演算性能もさらに大きくなるためハードウェアやソフトウェアの規模も大きくなり、かつ、各レイヤの情報や重み係数の情報を記憶するためのメモリも膨大に必要となる。
 図1に示す物体検出モデル300から出力された1つの画像中に存在する検出物体毎の検出不能と疑似検出を含むゼロないし複数の補正前の検出枠を含む位置情報301と補正前の尤度情報302は、モデル後処理手段400に入力された後、個体識別手段410により、補正前の検出枠を含む位置情報301の相互のIOU値による識別や補正前の尤度情報302の最大判定などにより、各検出物体に対する最も適切と考えられる個体識別後の検出枠を含む位置情報403と個体識別後の尤度情報404に個体別に最適と考えられる1つの結果に識別される。
 図4により、IOU値を説明する。図4AのIOU値420を表す式の分母422は、前述した(式1)におけるAreaof Unionであり、比較する2つの枠領域の和集合の面積である。図4AのIOU値420を表す式の分子423は、前述した(式1)におけるAreaof Intersectionであり、比較する2つの枠領域の共通部分の面積である。最大“1.0”であり、完全に2つの枠データが重なっている状態を示す。物体検出モデル300の出力結果である補正前の検出枠を含む位置情報301と後述する正解となる検出枠を含む位置情報621のIOU値420が大きいほど物体検出がうまくできていることになる。なお、一例として人物を検出する場合、図4Bに示すように人物424に対する正解枠であるgroundtruth BBox425と推論(予測)した結果として算出されるPredictedBBox426が水平方向と垂直方向にそれぞれ11%程度ずれると、両者のIOU値427が0.65程度まで低下する。この点からもわかるように物体検出の精度や性能を敏感に検証する指標の1つとして活用されることが多い。
 図1に示すモデル後処理手段400は、1つの画像中に対する物体検出モデル300の出力結果の1つないし複数の検出物体毎に、検出不能と疑似検出を含むゼロないし複数の補正前の検出枠を含む位置情報301と補正前の尤度情報302に対して、補正前の尤度情報302に対する任意の閾値T(任意の小数)と相互の補正前の検出枠を含む位置情報301の領域がどれぐらい重なっているかを表す指標であるIOU(Intersection over Union)値に対する任意の閾値U(任意の小数)により検出物体毎に個体識別後の検出枠を含む位置情報403と個体識別後の尤度情報404に補正する個体識別手段410を有することを特徴とするものであっても良い。
 例えば、図5Aのフローチャートと図5Bに示すような検出物体として人物が2名前後に近接しているモデル入力画像321を使用して、モデル後処理手段400の個体識別手段410の処理の一例を説明する。
 はじめに、図5Aに示すように、入力ステップS430により、検出物体毎の検出不能と疑似検出を含むゼロないし複数の補正前の検出枠を含む位置情報301と補正前の尤度情報302を入力する。その際、図5Bに示すように、物体検出モデル300から出力される4つの補正前の検出枠を含む位置情報322、323、324、および、325と、4つの補正前の尤度情報の中の尤度326、327、328、および、329が入力されるものとする。
 次に、設定ステップS431により、IOU閾値“U”と尤度閾値“T”を設定する。本例では、“U”=0.7、“T”=0.5を閾値として設定した場合を示す。
 次に、比較ステップS432により、補正前の尤度情報302の中の尤度を閾値“T”と比較して、尤度が閾値“T”未満で偽と判定すると、削除ステップS433により、該当する補正前の検出枠を含む位置情報301と補正前の尤度情報302を算出対象から削除し、尤度が閾値“T”以上であれば真と判定して、相互IOU値算出ステップS434により、算出対象のすべての補正前の検出枠を含む位置情報301の相互組み合わせのIOU値を算出する処理を行う。図5Bでは、尤度327が0.33であり閾値“T”=0.5未満のため2人を包括するように疑似検出された補正前の検出枠を含む位置情報323と尤度327を含む補正前の尤度情報は算出対象から削除される。残り算出候補は3つとなり、それぞれの補正前の検出枠を含む位置情報322、324、および、325の相互組み合わせのIOU値を算出する。
 次に、比較ステップS435により、すべての相互IOU値に対して、閾値“U”と比較して、相互IOU値が閾値“U”未満で偽と判定すると、独立した検出結果であると判定して、出力ステップS437により、個体識別後の検出枠を含む位置情報403と個体識別後の尤度情報404として出力し、相互IOU値が閾値“U”以上であれば真と判定して、同一の検出物体を重複して検出しているとみなし、次の最大尤度判定ステップS436に進む。図5Bでは、補正前の検出枠を含む位置情報322と他の2つとの相互IOU値が閾値“U”=0.7未満になるため、独立した検出情報として補正前の検出枠を含む位置情報322と尤度326(0.85)を含む補正前の尤度情報を個体識別後の検出枠を含む位置情報411と尤度413(0.85)を含む個体識別後の尤度情報として出力ステップS437により出力する。一方、補正前の検出枠を含む位置情報324と325は、相互IOU値が近接しているため“U”=0.7以上と判定されて次の最大尤度判定ステップS436に進む。
 最後に、最大尤度判定ステップS436により、該当する中で尤度が最大となるもの以外は偽と判定して、削除ステップS433により、該当する補正前の検出枠を含む位置情報301と補正前の尤度情報302を算出対象から削除し、該当する中で尤度が最大になるものは、真と判定して、出力ステップS437により、個体識別後の検出枠を含む位置情報403と個体識別後の尤度情報404として出力するものであっても良い。図5Bでは、尤度328(0.75)と尤度329(0.92)の2つから最大尤度判定を行った結果、尤度328(0.75)を含む補正前の尤度情報と補正前の検出枠を含む位置情報324を算出対象から削除し、最大尤度と判定された尤度329(0.92)を含む補正前の尤度情報と補正前の検出枠を含む位置情報325を個体識別後の検出枠を含む位置情報412と尤度414(0.92)を含む個体識別後の尤度情報として出力ステップS437により出力する。
 なお、尤度の閾値“T”は高いほど検出された情報の信頼性は高くなるが、一方で、検出不能に陥る場合が生じるため、物体検出モデル300の性能に応じて適切に設定することが望ましい。
 なお、相互IOU値の閾値“U”は、低くすると検出物体が複数あった場合に、特に近接距離にある物体同士は、想定以上に複数の検出物体の検出結果をマージしてしまうため、検出漏れが発生し易くなる。一方で、高くすると同一物体を検出しているにも関わらず、重複した検出結果が残ってしまう場合がある。そのため、物体検出モデル300の性能に応じて適切に設定することが望ましい。
 なお、個体識別手段410は、図5Aに示すようなフローチャート以外のステップの組み合わせで個体識別を行うものであっても良い。例えば、補正前の尤度情報302の中のクラス識別情報を用いて、相互IOU値算出ステップS434で相互IOU値を算出する対象を同一クラスに限定する処理や、最大尤度判定ステップS436で最大尤度判定する際に同一クラスの中で最大尤度を判定する処理を加味したものであっても良い。
 図5Aと図5Bに示すようなモデル後処理手段400および個体識別手段410を有することにより、疑似検出に相当する異常データの排除と検出物体毎に個体識別後の検出枠を含む位置情報403と個体識別後の尤度情報404を適した情報に補正することができる。
 さらに、後述するモデル後処理手段400が有する画像選択手段450や検出枠補正手段460などと合わせて実施することにより、異常データの排除と検出物体毎に検出枠を含む位置情報と尤度情報を適した情報に個体判別、および、補正することができるため、画像中の物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下をより正確に救済することが可能となる。
 さらに、画面分割時などに適用することにより、検出対象物が動いている状態で物体検出を行う場合や、搭載する演算プロセッサなどの性能に制限を設けた場合でも、画面分割により低レイテンシーとリアルタイム性を維持することが可能となる。
 また、図1に示すモデル後処理手段400は、アノテーション手段620、および、すでにアノテーションの処理が施されているCOCOやPascalVOC Datasetなどのオープンソースのデータセットなどにより、検出物体毎に正解となる検出枠を含む位置情報621と正解となるクラス識別情報622が存在する場合は、アフィン変換関数や射影変換関数と演算プロセッサなどによりフレーム制御情報500の内容にしたがって正解となる検出枠を含む位置情報621を補正する機能を有し、1つの画像中に存在する物体検出モデル300の出力結果の1つないし複数の検出物体毎に、検出不能と疑似検出を含むゼロないし複数の補正前の検出枠を含む位置情報301と補正前の尤度情報302に対して、補正前の尤度情報302に対する任意の閾値T(任意の小数)と正解となる検出枠を含む位置情報621と補正前の検出枠を含む位置情報301の領域がどれぐらい重なっているかを表す指標であるIOU値に対する任意の閾値U(任意の小数)により検出物体毎に個体識別後の検出枠を含む位置情報403と個体識別後の尤度情報404に補正する個体識別手段410を有することを特徴とするものであっても良い。
 アノテーション手段620は、例えば、表示およびデータ格納手段120もしくは学習用素材データベース格納手段610に格納された画像に対して、クラス識別情報と正解枠であるgroundtruth BBoxを付加して教師ありデータを作成するものであってもよい。
 例えば、図6Aのフローチャートと図6Bに示すような検出物体として人物が2名前後に近接しているモデル入力画像331を使用して、正解となる検出枠を含む位置情報621と正解となるクラス識別情報622が存在する場合のモデル後処理手段400の個体識別手段410の処理の一例を説明する。
 はじめに、図6Aに示すように、入力ステップS430により、1つの画像中に存在する検出物体毎の検出不能と疑似検出を含むゼロないし複数の補正前の検出枠を含む位置情報301と補正前の尤度情報302を入力する。また、入力ステップS440により、検出物体毎の正解となる検出枠を含む位置情報621と正解となるクラス識別情報622を入力する。その際、図6Bの点線で示すように、物体検出モデル300から出力される4つの補正前の検出枠を含む位置情報332、333、334、および、335と、4つの補正前の尤度情報の中の尤度336、337、338、および、339が入力されるものとする。また、図6Bの実線で示すように、アノテーション手段620から出力される2つの正解となる検出枠を含む位置情報624と625と、2つの正解となる“人”を示すクラス識別情報626と627が入力されるものとする。
 次に、設定ステップS431により、IOU閾値“U”と尤度閾値“T”を設定する。本例では、“U”=0.5、“T”=0.5を閾値として設定した場合を示す。
 次に、比較ステップS432により、補正前の尤度情報302の中の尤度を閾値“T”と比較して、尤度が閾値“T”未満で偽と判定すると、削除ステップS433により、該当する補正前の検出枠を含む位置情報301と補正前の尤度情報302を算出対象から削除し、尤度が閾値“T”以上であれば真と判定して、正解枠とのIOU値算出ステップS441により、正解となる検出枠を含む位置情報621のそれぞれに対して、算出対象のすべての補正前の検出枠を含む位置情報301の組み合わせのIOU値を算出する処理を行う。図6Bでは、尤度337が0.33であり閾値“T”=0.5未満のため2人を包括するように疑似検出された補正前の検出枠を含む位置情報333と尤度337を含む補正前の尤度情報は算出対象から削除される。残り算出候補は3つとなり、正解となる検出枠を含む位置情報624と625のそれぞれに対して、補正前の検出枠を含む位置情報332、334、および、335のIOU値を算出する。
 次に、比較ステップS442により、すべてのIOU値に対して、閾値“U”と比較して、正解となる検出枠を含む位置情報621に対するIOU値が閾値“U”未満で偽と判定すると、正解枠から大きく外れていると判定して、削除ステップS433により、該当する補正前の検出枠を含む位置情報301と補正前の尤度情報302を算出対象から削除し、IOU値が閾値“U”以上であれば真と判定して、正解枠からの差が小さい検出対象候補とみなし、次のクラス識別判定ステップS443に進む。図6Bでは、偽に判定される候補は該当なしとなり、そのまま3つの算出候補がクラス識別判定ステップS443の判定対象になる。
 次に、クラス識別判定ステップS443により、正解となるクラス識別情報622と正解となる補正前の尤度情報302の中のクラス識別情報を比較して、異なるクラスと識別されている場合は偽と判定して、削除ステップS433により、該当する補正前の検出枠を含む位置情報301と補正前の尤度情報302を算出対象から削除し、同一のクラスと識別されている場合は、真と判定して、次の最大尤度判定ステップS436に進む。図6Bでは、すべての候補がクラス識別の結果“人”と判定されているとして、そのまま3つの算出候補が最大尤度判定ステップS436の判定対象となる。
 最後に、最大尤度判定ステップS436により、該当する中で尤度が最大となるもの以外は偽と判定して、削除ステップS433により、該当する補正前の検出枠を含む位置情報301と補正前の尤度情報302を算出対象から削除し、該当する中で尤度が最大になるものは、真と判定して、出力ステップS444により、個体識別後の検出枠を含む位置情報403と個体識別後の尤度情報404と算出したIOU値を出力するものであっても良い。図6Bでは、正解となる検出枠を含む位置情報625と正解となるクラス識別情報627の検出結果として、尤度338(0.75)と尤度339(0.92)の2つから最大尤度判定を行った結果、尤度338(0.75)を含む補正前の尤度情報と補正前の検出枠を含む位置情報334を算出対象から削除し、最大尤度と判定された尤度339(0.92)を含む補正前の尤度情報と補正前の検出枠を含む位置情報335を個体識別後の検出枠を含む位置情報416と尤度418(0.92)を含む個体識別後の尤度情報として出力ステップS444により出力する。さらに、IOU値429(0.85)を出力ステップS444により出力する。また、正解となる検出枠を含む位置情報624と正解となるクラス識別情報626の検出結果として、最大尤度と判定された尤度336(0.85)を含む補正前の尤度情報と補正前の検出枠を含む位置情報332を個体識別後の検出枠を含む位置情報415と尤度417(0.85)を含む個体識別後の尤度情報として出力ステップS444により出力する。さらに、IOU値428(0.73)を出力ステップS444により出力する。
 なお、尤度の閾値“T”は高いほど検出された情報の信頼性は高くなるが、一方で、検出不能に陥る場合が生じるため、物体検出モデル300の性能に応じて適切に設定することが望ましい。
 なお、正解枠とのIOU値の閾値“U”は、図5Aと図5Bにより説明した個体識別手段410に比べると、低めに設定して算出候補をより多く残したとしても、正解となる検出枠を含む位置情報621との直接比較ができるため、検出漏れが発生しにくく、検出結果の精度が向上する利点がある。また、閾値“U”を任意に変更して処理することにより、物体検出モデル300で算出される補正前の検出枠を含む位置情報301の検出枠の正確度を把握および検証することも可能となる。
 よって、後述するモデル後処理手段400が有する画像選択手段450や検出枠補正手段460などと合わせて実施することにより、異常データの排除と検出物体毎に検出枠を含む位置情報と尤度情報をより適した情報に個体判別、および、補正することができるため、画像中の物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下をより正確に救済することが可能となる。
 さらに、後述する第二のmAP算出手段650を使用することで、救済した推論結果に基づいて、物体検出の正解枠とのIOU値、Precision、Recall、AP値、mAP値などの物体検出モデルの性能とモデル学習辞書の汎用性やロバスト性の弱点や強化方針を正確に分析するための性能指標化を正確に行うことができるため、実施形態2で後述する辞書学習手段600により、検出枠を含む位置情報に対する汎用性やロバスト性のより正確な強化が可能となる。
 図6Aと図6Bに示すようなモデル後処理手段400および個体識別手段410を有することにより、1つの画像中に存在する検出物体毎に個体識別後の検出枠を含む位置情報403と個体識別後の尤度情報404を算出し、適した固有情報に識別することができる。
 これら、画像処理手段100とモデル前処理手段200と物体検出モデル300とモデル後処理手段400の個体識別手段410により個体識別後の検出枠を含む位置情報403と個体識別後の尤度情報404を生成する一連の手段が、従来の画像内の物体の位置検出やクラス識別を行う物体検出装置であった。
 一例として、従来の画像内の物体の位置検出やクラス識別を行う物体検出装置の課題について、物体の位置の検出とクラス識別を同時に行うため処理速度に優位性が高いとされるone―stage型のDNNモデルに代表されるYOLOモデル360を適用した場合に関して、図7Aと図7Bを使用して説明する。図7Aに示すように、モデル前処理手段200により水平方向にXiピクセル(画素)と垂直方向にYiピクセルに加工されたモデル入力画像201の中にいる1名の人物の検出をする場合、カメラなどで画像を取得する際の時系列での手振れや振動などにより、ある基準時間の水平基準位置で取得した画像201に対して、時系列変化で、水平方向に2ピクセル分画像がシフトした画像202と、水平方向に4ピクセル分画像がシフトした画像203を、それぞれYOLOモデル360(物体検出モデル300)に入力して、モデル後処理手段400で補正された結果として、個体識別後の検出枠を含む位置情報207と208と209、個体識別後の尤度情報の中の尤度214と215と216が算出された場合、同一の人物を検出しているにも関わらず、画像中における人物の位置が少し揺らいで水平方向にシフトしただけであるが、それぞれの尤度が0.92、0.39、0.89と大きく変動する場合がある。
 一方で、図7Bに示すように、カメラと人物の距離が、1mの画像204と2mの画像205と3mの画像206で、人物のサイズと画像中の位置が変わった結果として、個体識別後の検出枠を含む位置情報211と212と213、個体識別後の尤度情報の中の尤度217と218と219が算出された場合、本来のYOLOモデルの性能を鑑みた場合は、人物サイズが小さくなる、もしくは、人物の距離が遠くなるにつれて検出精度や性能が低下することが課題として知られているが、本例では、検出物体距離1mの画像204の個体識別後の尤度情報の中の尤度217が0.92、検出物体距離3mの画像206の個体識別後の尤度情報の中の尤度219が0.71に対して、検出物体距離2mの画像205の個体識別後の尤度情報の中の尤度218が0.45と大幅に低下しているという不規則な結果が得られる場合がある。
 本発明のある実施形態によれば、モデル前処理手段200の位置シフト機能220とリサイズ機能230を使用することにより、静止画に対してこれらの不規則な現象を把握してその要因を分析するとともに、動画に対して推論性能を向上および安定化することが可能となる。
 本発明のある実施の形態によれば、モデル前処理手段200は、フレーム毎に物体検出モデル300に入力する1つないし複数のモデル入力画像210を加工するに際して、フレーム制御情報500の位置シフト量510に則って、画像処理手段100とモデル前処理手段200の各種機能により撮影環境や変動条件などの影響を軽減、もしくは、低下させるように加工された基準画像221に対して、水平方向にMピクセル(画素)(Mは任意の小数)および垂直方向にNピクセル(Nは任意の小数)の位置シフトを施した第一の位置シフト画像222を生成し、基準画像221と第一の位置シフト画像222をフレーム毎に物体検出モデル300に入力する位置シフト機能220を備えるものであっても良い。また、任意の領域を切り取る機能を備えるものであっても良い。なお、位置シフト機能220は、アフィン変換関数291や射影変換関数292を画像処理プロセッサ290で実行して実現する機能であっても良い。
 また、ある実施形態によれば、位置シフト機能220は、基準画像221と第一の位置シフト画像222に加えて、フレーム制御情報500の位置シフト量510に則って、基準画像221に、水平方向にPピクセル(Pは任意の小数)および垂直方向にQピクセル(Qは任意の小数)の位置シフトを施した第二の位置シフト画像223を生成し、基準画像221と第一の位置シフト画像222と第二の位置シフト画像223をフレーム毎に物体検出モデル300に入力するものであっても良い。
 図7Aに示したような同一の人物を検出しているにも関わらず、画像中における人物の位置が少し揺らいで水平方向にシフトしただけで尤度が大きくバラつくような不規則な現象を把握してその要因を分析するために、例えば、図8に示すように、前述した位置シフト機能220を拡張し、同フレームの静止画に対して、フレーム制御情報500の位置シフト量510として、水平方向にM(Mは任意の小数)ピクセルステップで、J(Jは任意の整数)回分、垂直方向にN(Nは任意の小数)ピクセルステップで、K(Kは任意の整数)回分を設定して、基準画像221を含む合計J×K個の位置シフトされたモデル入力画像220Aないし220Dを生成する。
 さらに、ある実施形態によれば、モデル前処理手段200は、物体検出モデルに入力する1つないし複数のモデル入力画像210を加工するに際して、フレーム制御情報500のリサイズパラメータ511として、さらに、L(任意の整数)種類の任意の倍率を設定して、拡大もしくは縮小した画像を生成するリサイズ機能230を備え、同フレームの静止画に対してリサイズした後、L種類の各リサイズ画像に対して、上述した位置シフト機能220により、図8に示したようにJ×K個の位置シフト画像を生成し、合計J×K×L個のリサイズおよび位置シフトされたモデル入力画像210を生成するものであっても良い。また、任意の領域を切り取る機能を備えるものであっても良い。なお、位置シフト機能220やリサイズ機能230は、アフィン変換関数291や射影変換関数292を画像処理プロセッサ290で実行して実現する機能であっても良い。
 一例として、図9に、基準サイズ画像232と30%縮小画像231と30%拡大画像233の3種類(L=3)のリサイズパラメータ511により、検出対象の物体のサイズに依存した分析を行うためのリサイズ画像を生成する場合を示す。それぞれの画像231、232,233に対して、図8に示すように水平方向にMピクセルステップおよび垂直方向にNピクセルステップでJ×K個の位置シフトした画像220Aないし220Dを生成し、合計で3×J×K個の複数のモデル入力画像210を加工する。
 図8および図9に示すようなモデル前処理手段200の位置シフト機能220、および、リサイズ機能230により加工された同フレームの静止画に対する複数のモデル入力画像210は、図1に示す物体検出モデル300とモデル後処理手段400の個体識別手段410により、複数のモデル入力画像210毎の個体識別後の検出枠を含む位置情報403と個体識別後の尤度情報404を算出した後、フレーム制御情報500に則って物体検出モデル300の汎用性やロバスト性を検証するロバスト性検証手段800に入力される。
 なお、カメラなどにより取得した画像中で物体検出を行うモデルの場合、ロバスト性検証手段800で検証する項目や各種変動条件は、例えば、背景(景色)、カメラのレンズ仕様、カメラを取り付ける高さや仰俯角など、画像サイズを含む検出対象領域と視野範囲、魚眼レンズを使用している場合のデワープ処理方法、日光や照明に依存する照度変化や黒つぶれや白飛び、逆光などの特殊条件、晴れ、曇り、雨、雪、霧などの天候条件があげられる。また、対象検出物体の画像中の位置(左右上下と奥行)、サイズ、輝度レベル、色情報を含む形状や特徴、アスペクト比、回転角度、対象検出物体の数、相互重複の状態、付属物の種類や大きさや付属位置、レンズのIRカットの有無、対象検出物体の移動速度、および、カメラ自体の移動速度などがあげられる。また、使用用途によっては、前述した項目や条件以外も追加される場合もある。これら各種条件や項目を踏まえて、物体検出に優位な条件を分析して推論性能を向上できるように、また、物体検出モデル300の特性やモデル学習辞書320のロバスト性や汎用性の強化のための学習用素材の選定や加工条件を決定するために、フレーム制御情報500の各種パラメータやその値を設定することが望ましい。フレーム制御情報500は、モデル前処理手段200と、ロバスト性検証手段800に入力される。モデル前処理手段200に入力されるフレーム制御情報500は、物体位置に伴う揺らぎによる影響を静止画に対して検証するため、および、動画に対して物体位置に伴う揺らぎによる推論精度(尤度)の低下を救済するための位置シフト機能220に関係するパラメータを含み、カメラのレンズ仕様、カメラを取り付ける高さや仰俯角の条件など、画像サイズを含む検出対象領域と視野範囲の物体サイズに伴う汎用性やロバスト性を静止画に対して検証するため、および、動画に対して推論精度を最大化するためのリサイズ機能230に関係するパラメータや、同じく撮影環境による変動条件の影響を最小化して動画に対して推論精度を最大化するための後述する他の複数のパラメータを複合するものであっても良い。
 ある実施形態によれば、モデル後処理手段400は、モデル前処理手段200の複数の画像の加工に使用したフレーム制御情報500と、個体識別手段410の出力結果、もしくは、後述する画像選択手段450と検出枠補正手段460とフレーム情報保持手段470とフレーム情報補間手段480とステートマシン制御手段550などにより動画に対する尤度救済を行った後の最尤判定された検出物体毎に個別に紐づけた検出結果405(最尤の検出枠を含む位置情報401と最尤の尤度情報402などを含む)と、尤度に対するIOU値420を、ロバスト性検証手段800に出力するものであっても良い。
 ある実施形態によれば、ロバスト性検証手段800は、モデル後処理手段400の出力結果である個体識別後の検出枠を含む位置情報403と個体識別後の尤度情報404、もしくは、最尤の検出枠を含む位置情報401と最尤の尤度情報402の中の尤度をもとに、フレーム制御情報500別に、検出物体毎の位置シフトに伴うバラつきを示す尤度分布830を含め、尤度の有効領域の平均値である平均尤度801と、尤度の有効領域の標準偏差である尤度の標準偏差802と、尤度の有効領域の最大値である最大尤度803と、尤度の有効領域の最小値である最小尤度804と、尤度に対するIOU値805のいずれかもしくは、すべてを算出する確率統計演算手段810を備えることを特徴とするものであっても良い。また、尤度に対するIOU値805は、検出物体毎に正解となる検出枠を含む位置情報621が存在する場合は、個体識別後の検出枠を含む位置情報403、もしくは、最尤の検出枠を含む位置情報401に対する正解となる検出枠を含む位置情報621のIOU値であっても良い。
 これら、ロバスト性検証手段800を使用して抽出された静止画に対する検出物体と各種統計結果によりモデル学習辞書320の強化対象を特定することが可能となる。さらに、物体検出モデル300の課題抽出をすることも可能となる。さらに、これら各種統計結果を、実施形態2で後述する辞書学習手段600に入力して学習素材の選定やAugmentationの手法や学習パラメータに反映することによりモデル学習辞書320の汎用性やロバスト性を強化することが可能となる。
 一例として、前述したロバスト性検証手段800を使用して、静止画である図7Aと図7Bを使って説明した検出物体の画像中の人物の位置のゆらぎ、および、検出物体のサイズに対して、物体検出モデル300による検出結果である尤度などが不規則にバラつく現象を分析した結果を、図10、および、図11と合わせて説明する。
 図10、および、図11に示す分析結果は、図7A、図7B、図8、および、図9に示す複数のモデル入力画像の水平方向の画素数であるXiを128に、垂直方向の画素数であるYiを128に設定している場合である。また、検出対象は、人物1名である。また、図9に示すように、モデル前処理手段200のリサイズ機能230を使用して、基準サイズ画像232と30%縮小画像231と30%拡大画像233の3種類(3種類のL)のリサイズ画像に加工し、それぞれの加工された3種のリサイズ画像に対して、モデル前処理手段200の位置シフト機能220を使用して、水平方向と垂直方向に1ピクセルステップ(M=1、N=1)で、水平方向に32回分(J=32)、垂直方向に32回分(K=32)の位置シフトをして、合計3×32×32個のモデル入力画像210を生成している場合である。また、図10、および、図11に示す分析結果は、水平方向の入力画素が128ピクセル、垂直方向の入力画素が128ピクセルで構成される図3A及び図3Bに示すYOLOモデル360(物体検出モデル300)とモデル後処理手段400を使用して、生成された3×32×32個の複数のモデル入力画像210に対して、人物1名に対する個体識別後の検出枠を含む位置情報403と個体識別後の尤度情報404を算出した後、ロバスト性検証手段800に入力して、フレーム制御情報500である3種のリサイズパラメータ511に対して、確率統計演算手段810により、人物1名の位置シフトに伴うバラつきを示す尤度分布830および尤度のヒストグラム840と、尤度の有効領域の平均値である平均尤度801と、尤度の有効領域の標準偏差である尤度の標準偏差802と、尤度の有効領域の最大値である最大尤度803と、尤度の有効領域の最小値である最小尤度804を算出した結果である。なお、個体識別後の検出枠を含む位置情報403と個体識別後の尤度情報404の代わりに、後述する最尤の検出枠を含む位置情報401と最尤の尤度情報402をロバスト性検証手段800に入力して算出しても良い。なお、尤度分布830および尤度のヒストグラム840と、平均尤度801と、尤度分布830と、尤度の標準偏差802と、最大尤度803と、最小尤度804は、尤度の最大値“1”を“100%”とする百分率(%)で表記するものであっても良い。図10、および、図11は、尤度を百分率(%)で表記したものである。なお、百分率に変換せず、直接小数で処理しても良い。なお、本例では掲載していないが、個体識別後の尤度情報404もしくは最尤の尤度情報401の中の尤度に対する分布だけでなく、図1のアノテーション手段620から正解となる検出枠を含む位置情報621を参照可能な場合は、個体識別後の検出枠を含む位置情報403もしくは最尤の検出枠を含む位置情報401とのIOU値805に対するIOU値分布や統計結果を算出するものであっても良い。なお、本例では掲載していないが、人物以外の複数のクラス識別を行うような場合は、個体識別後の尤度情報404もしくは最尤の尤度情報401の中の尤度に対する分布だけでなく、個体識別後の尤度情報404もしくは最尤の尤度情報401の中のクラス識別情報に対するクラス識別分布や統計結果を算出するものであっても良い。
 図10に示す尤度分布831は、図9に示すように、モデル入力画像232を基準画像として、フレーム制御情報501の指示のもと、リサイズ機能230により30%縮小(L=1)して図9のモデル入力画像231に加工した後、図8に示すように、位置シフト機能220により水平方向と垂直方向に1ピクセルステップ(M=1、N=1)で、水平方向に32回分(J=32)、垂直方向に32回分(K=32)の位置シフトされた複数のモデル入力画像を、YOLOモデル360(物体検出モデル300)とモデル後処理手段400の個体識別手段410と確率統計演算手段810を備えるロバスト性検証手段800に入力して算出されたものである。その際に、図10に示すフレーム制御情報501ないし503は、モデル後処理手段400から出力される検出物体毎の個体識別手段410の出力結果である個体識別後の検出枠を含む位置情報403と個体識別後の尤度情報404に紐づけられるものであり、確率統計演算手段810で分析結果を算出する際に活用されるものであっても良い。
 同様に、尤度分布832は、フレーム制御情報502を使って、図9に示す基準サイズ(等倍)のモデル入力画像232に対して算出されたものであり、尤度分布833は、フレーム制御情報503を使って、図9に示す30%拡大したモデル入力画像233に対して算出されたものである。図10に示す尤度分布831、832、および、833は、白色から黒色の濃淡バー806にしたがって、画面上の人物が存在する位置(ピクセル単位)の揺らぎに対する尤度(%)のレベルに応じて、白色(尤度0%相当)から黒色(尤度100%)の濃淡に色付けして表示したものである。ここで、図9に示す基準サイズ(等倍)のモデル入力画像232に対する図10の尤度分布832の尤度(A)821と尤度(B)822と尤度(C)823と尤度(D)824は、それぞれ、図8に示す位置シフト機能220(M=1、N=1、J=32、K=32の場合)により加工されたモデル入力画像(A)220Aを基準に算出された尤度と、モデル入力画像(B)220Bを基準に算出された尤度と、モデル入力画像(C)220Cを基準に算出された尤度と、モデル入力画像(D)220Dを基準に算出された尤度をマッピングしたものに相当する。尤度分布831、832、および、833は、黒レベルが強いほど尤度が高いことを示しており、反対に、白レベルが強くなるほど尤度が低いことを示すものである。注目すべき点として、それぞれの尤度分布の中で、尤度が高い黒レベルの合間に、特定の格子状のようなパターンで灰色もしくは白レベルが強く尤度が低くなる領域が存在していることが確認できる。この結果は、図7Aおよび図7Bで説明した検出物体(本例では人物1名)の画面中の位置による揺らぎに対して、尤度が不規則にバラつくという現象が現れていると考えて良い。また、本例に示すような特定の格子状のようなパターンがある場合は、物体検出モデル300のDNNモデル310などニューラルネットワークそのものに課題が存在している可能性が高く、任意の領域の尤度が低いような場合は、モデル学習辞書320の学習が不十分である可能性が高いと考えて良い。これら検出物体の位置による尤度の揺らぎに関する詳細な要因推定に関しては、図11の説明と合わせて言及することとする。
 なお、静止画に対して分析する際の位置シフト機能220のフレーム制御情報500である前述したパラメータM、N、J、Kは、用途や目的に応じて変更しても良い。なお、水平方向と垂直方向のピクセルステップの設定であるMとNは、水平方向と垂直方向にそれぞれ異なる値を設定しても良い。MとNを小さく設定すれば詳細な検証が可能になるメリットがある反面、演算処理時間が大きくなるデメリットもある。水平方向のJ回数分と垂直方向のK回数分の位置シフト用の加工パラメータは、物体検出モデル300の構造に応じて、位置揺らぎが検証できる適切な値に設定することが望ましい。
 次に、図11に示す尤度のヒストグラム841は、図10に示す尤度分布831に対して確率統計演算手段810により算出された尤度(%)の度数を正規化(度数の合計が1.0)したものである。また、統計結果811は、尤度分布831に対する平均尤度(%)と尤度の標準偏差(%)と最大尤度(%)と最小尤度(%)を表示したものである。また、従来方法の尤度851は、図9に示す位置シフトの基準画像となるモデル入力画像231のピンポイントで算出した尤度を表示したものである。同様に、図11に示す尤度のヒストグラム842と843、統計結果812と813、および、従来方法の尤度852と853は、それぞれ、図10に示す尤度分布832と833に対応するものである。
 統計結果811、812、および、813の中の平均尤度(%)は、画面中の位置による揺らぎに対する平均的な検出精度や検出性能を検証する指標であり、高いほどモデル学習辞書320を含む物体検出モデル300の性能が高いと考えて良い。また、尤度の標準偏差(%)は、画面中の位置による揺らぎに対する尤度のバラつきを示す指標であり、小さいほどモデル学習辞書320を含む物体検出モデル300の安定性が高いと考えて良い。一方で、尤度の標準偏差(%)が大きい場合は、物体検出モデル300そのものに潜在的な課題が存在する場合もあるが、どちらかというと画面中の検出物体位置に対するモデル学習辞書320の学習が不十分な場合のいずれかが考えられる。その際は、図10で説明した尤度分布831、832、および、833を確認することでいずれの要因が強いかを検証することが可能である。また、最大尤度(%)と最小尤度(%)も合わせて検証することにより、尤度のバラつきが正規分布に近いか否かを判別することも可能となる。最大尤度(%)と最小尤度(%)は高いほどモデル学習辞書320を含む物体検出モデル300の性能が高いと考えて良い。反面、極端に低くなるような場合は、物体検出モデル300そのものに課題が存在するか、もしくは、画面中の検出物体位置に対するモデル学習辞書320の学習が不十分な場合のいずれかが考えられる。
 なお、本例では、検出対象が人物1名の場合を示しているが、検出対象が複人数の場合や、人物以外のクラスの物体が複数存在する場合は、それぞれの検出対象毎に、尤度分布とその統計結果、IOU値分布とその統計結果、クラス識別分布とその統計結果を算出するものであっても良い。
 本発明の実施形態1による物体検出装置により算出された静止画に対する検証結果を示す図10および図11を使用して、検出物体として人物1名が存在する3種類にリサイズされたモデル入力画像210における、水平方向の入力画素が128ピクセル、垂直方向の入力画素が128ピクセルで構成される図3A及び図3Bに示すYOLOモデル360(物体検出モデル300)のより詳細な検出精度および検出性能の検証の一例を示す。
 その結果に基づき、物体検出モデル300の構造やアルゴリズムに起因する課題に対して推論性能を向上させるための本発明のある実施形態における手段および方法を説明する。さらに、モデル学習辞書320の汎用性やロバスト性の分析と再学習などにより強化すべき内容とその手段と方法を説明する。これら両者による改善をもって物体検出装置の性能向上を図るものとする。
 なお、本例で説明する検証方法の一例は、物体検出を行うためのカメラなどを小型化、省電力化、および、低コスト化のために、YOLOモデル360を動作させる手段として電子回路の実装面積や消費電力に制限が発生する場合や、メモリ容量などの制限や、搭載するDSP(デジタルシグナルプロセッサ)などの演算プロセッサの性能の制限などにより、YOLOモデル360に入力する画像サイズを本来の推奨されているYOLOモデル360の入力画像サイズよりも小さくしなければならないような場合を想定した検証結果であり、推奨されている各種バリエーションのYOLOモデル360で必ず発生するものではない。
 前述したように、図10に示す尤度分布831、832、および、833の中で、尤度が高い黒レベルの合間に、特定の格子状のようなパターンで灰色もしくは白レベルが強く尤度が低くなる領域が存在していることが確認できる。このため、図7Aで説明したように、同一の物体を検出していても画像内の検出物体の位置が揺らいだ場合に、検出結果の1つである尤度が大きくバラつくという現象が発生すると考えられる。ここで、尤度分布831と832にみられる特定の格子状のパターンは、約8ピクセル四方のパターンを特徴としており、尤度分布833にみられる特定の格子状のパターンは、約16ピクセル四方のパターンを特徴としている。これらパターンの特徴が異なる要因の1つは、検出物体のサイズに依存して図3Aに示すYOLOモデル360の第二の検出レイヤ362(グリッドセル8×8)で検出されたものか、第三の検出レイヤ363(グリッドセル16×16)で検出されたものかによる違いと考えられる。検出対象の人物サイズが小さい側の尤度分布831と832は、第三の検出レイヤ363の検出結果が主に出力されたと考えられる。また、人物サイズが大きい側の尤度分布830は、第二の検出レイヤ362の検出結果が主に出力されたと考えられる。つまり、特定の格子状のパターンで尤度が低下する現象が発生する要因としては、図3Bに示す条件付きクラス確率315を算出する工程314のグリッドセルに依存すると考えられる。なお、図3A及び図3Bではモデル入力画像255の水平画素数Xiが128ピクセル、垂直画素数Yiが128ピクセルで定義された場合の第二の検出レイヤ362のグリッドセルが8×8の例を示している。処理速度に優位性が高いとされるYOLOなどに代表されるone―stage型のDNNモデルを使用する場合は、物体の位置の検出とクラス識別(分類)を同時に行うために領域を任意のサイズのグリッドセルに分割して条件付きクラス確率であるPr(Classi|Object)315を演算するため、平行して算出されたConfidence(信頼度)313と合わせて、最終検出工程316でConfidencescore(信頼度スコア)317を算出する際に双方を乗算するため、条件付きクラス確率315のグリッドセルの構造に依存して境界上のConfidencescore(信頼度スコア)317(尤度に相当)に画像中の人の位置の揺らぎに応じて特定の格子状のパターンの尤度が低下する現象に結び付いたと考えられる。本例の検証結果に示すような特定の格子状のようなパターンがある場合は、物体検出モデル300のモデルそのものかアルゴリズムの構造に起因する潜在的な課題が存在している可能性が高いと考えられるため、深層学習などによるモデル学習辞書320の再学習のみでは推論性能の改善が困難と考えられる。そのため物体検出モデル300のDNNモデル310などニューラルネットワークの構成そのものの改良か、モデル前処理手段200とモデル後処理手段400を改良することによる推論手段および推論方法の改良により推論性能を向上する必要がある。DNNモデル310などニューラルネットワークそのものの構成を再開発するためには、長期の開発期間と工数がかかることが一般的であるため、本発明では、モデル前処理手段200とモデル後処理手段400の改良により連続的に画像が変化する動画に対して有効となる推論性能を改善することを提案する。
 詳細な実施の形態については後述するが、考え方の一例としては、前述した本発明のある実施の形態によるモデル前処理手段200の位置シフト機能220により、各フレームの基準画像221に対して第二の検出レイヤ362のグリッドセル8×8に依存する尤度分布の水平方向に約16ピクセル、垂直方向に約16ピクセルの格子パターンの1/2に相当する水平方向に8ピクセル(M=8)、垂直方向に8ピクセル(N=8)をフレーム制御情報500の位置シフト量510(M=8、N=8)に設定し、それに則って位置シフトさせた第一の位置シフト画像222と、さらに、各フレームの基準画像221に対して第三の検出レイヤ363のグリッドセル16×16に依存する尤度分布の水平方向に約8ピクセル、垂直方向に約8ピクセルの格子パターンの1/2に相当する水平方向に4ピクセル(P=4)、垂直方向に4ピクセル(Q=4)をフレーム制御情報500の位置シフト量510(P=4、Q=4)に設定し、それに則って位置シフトさせた第二の位置シフト画像223とを生成して、フレーム毎に基準画像221と、第一の位置シフト画像222、もしくは、第二の位置シフト画像223と、もしくはそれらすべてを物体検出モデル300に入力した後、モデル後処理手段400の個体識別手段410により画像別の検出物体毎に個体識別後の検出枠を含む位置情報403と個体識別後の尤度情報404を算出し、画像選択手段450により、検出物体毎に、画像別の個体識別後の尤度情報404の中から最尤と考えられる最大尤度を選択して最尤の尤度情報402を算出し、選択された最尤の尤度情報402の画像が第一の位置シフト画像222であった場合は、検出枠補正手段460により、フレーム制御情報500の位置シフト量510(M=8、N=8)に則って、個体識別後の検出枠を含む位置情報403に対して位置シフト機能220とは逆の方向に位置シフトを行って、最尤の尤度情報402に対応する最尤の検出枠を含む位置情報401を算出し、選択された最尤の尤度情報402の画像が第二の位置シフト画像223であった場合は、検出枠補正手段460により、フレーム制御情報500の位置シフト量510(P=4、Q=4)に則って、個体識別後の検出枠を含む位置情報403に対して位置シフト機能220とは逆の方向に位置シフトを行って、最尤の尤度情報402に対応する最尤の検出枠を含む位置情報401を算出するものであっても良い。
 この考え方により、物体検出モデルのDNNを含むニューラルネットワークの検出レイヤが複数存在している場合においても、検出レイヤの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下を救済する効果が高まり、より確実に物体検出能力やクラス識別能力を向上することが可能となる。
 上述した、物体検出モデル300の構造やアルゴリズムに起因する課題に対して推論性能を向上させるための手段および方法のみでは、モデル学習辞書320の各種変動条件に対する汎用性やロバスト性が不十分である場合に関しては解決できない場合が多い。そのため、モデル学習辞書320が不完全であるか否かの切り分けの方法や、その強化手法の見極めの方法と合わせて、検出物体のサイズと格子状のパターンで尤度低下がみられる現象について、図11を使用して詳細に検証する。
 本来のYOLOの特徴を鑑みた場合は、人物サイズが小さくなる、もしくは、人物の距離が遠くなるにつれて検出精度や性能が低下することが知られている。ただし、新しいバージョンのYOLOでは改善報告もされている。本例で使用しているYOLOモデル360は、改善前のバージョンを採用しているものとする。まずは、従来の物体検出装置で算出された尤度に相当する従来方法の尤度(%)851、852、および、853の数値を比較すると、人物サイズが大きくなるにつれて、70.12%、49.27%、94.45%と変化する。ここで、基準サイズである従来方法の尤度(%)852の49.27%が、30%縮小された場合の従来方法の尤度(%)851よりも尤度が大きく低下している。このため、本結果を確認しただけでは、基準サイズの人物に対するモデル学習辞書320の学習が不十分ではないかとの誤った結論に達してしまい、不用な追加学習を行ってしまう場合がある。反面、30%縮小時の従来方法の尤度(%)851ある尤度70.12%は、合格点として、本来は追加学習すべきところを実施しないことで、モデル学習辞書320の汎用性やロバスト性の強化が不十分になることも考えられる。
 一方、本発明の実施形態1である物体検出装置により算出された静止画に対する統計結果を検証する。尤度のヒストグラム841、842、および、843は、図10の尤度分布831、832、および、833の尤度がどのレベルで存在するかを示すものである。尤度が高い右端に発生頻度が集中している場合が、より良い性能であると考えてよい。また、バラつき、つまり、横軸の尤度の範囲が狭いほど安定していると考えて良い。尤度のヒストグラム841、842、および、843を確認した限りでは、従来方法の尤度(%)851、852、および、853と異なり、人物サイズが大きい順に尤度(%)が分布していることが分かる。図10に示す尤度分布831、832、および、833と、尤度のヒストグラム841、842、および、843をそれぞれ統計分析した結果である統計結果811、812、および、813を確認すると、従来方法の尤度(%)851、852、および、853で確認した結果と異なり、平均尤度(%)は、人物サイズが大きくなるにつれて、本来のあるべき姿に近い、60.85% < 71.82% < 89.98%と順に高くなっていることが分かる。したがって、従来方法の尤度(%)851、852、および、853の結果は、物体検出モデルのDNNを含むニューラルネットワークの構造やアルゴリズムに起因して発生すると考えられる特定の格子状のパターンに依存して画像中の人物の位置の揺らぎにより検出結果にブレが生じたことが明確になった。
 一方で、例えば、平均尤度(%)を70%以上にすることをモデル学習辞書320の開発目標としていた場合は、平均尤度(%)の閾値を70%に設定することで、30%縮小したサイズの場合は、従来方法の尤度(%)の結果では、たまたま達成できているように見えたが、実際は、閾値以下となり9%以上足りていないため、30%縮小した人物に対しては、追加学習によるモデル学習辞書320強化が必要であるということも洗い出すことができる。また、例えば、尤度の標準偏差(%)に対する閾値を10%に設定して、10%以上となる尤度の標準偏差(%)を確認してみると、10%を超えている基準サイズの人物と30%縮小した人物が対象として抽出される。この結果、基準サイズの人物と30%縮小した人物に相当する物体に対して画面上の位置の揺らぎに対するモデル学習辞書320の強化が必要であることを確認することができる。さらに、尤度分布831と832、および、ヒストグラム811と812などの他の検証結果も参考にすることで、前述したDNNの構成やアルゴリズムに依存する潜在的な尤度低下が発生している可能性があるためモデルやアルゴリズムの改良か、上述したような推論手段や方法の改良による尤度の救済対策などが必要になることを認識することができる。同様に最大尤度(%)と最小尤度(%)も各種判断の材料として活用が可能であり、例えば、最小尤度の閾値を30%に設定した場合、30%以下になる基準サイズの人物と30%縮小した人物に関しては、物体位置がその位置で停止した場合は、検出不能に陥る恐れもあるため、モデル学習辞書の再学習のみでは回避できない可能性が高まるため、物体検出装置の有用性と安全性の面からも、上述したような推論手段や方法の改良による尤度の救済対策などが必要不可欠であると考えられる。
 さらに、一例として、図12に、人物が遠距離(画面の上の方)に位置する水平方向に128ピクセル、垂直方向に128ピクセルのモデル入力画像826を基準画像として、モデル前処理手段200の位置シフト機能220により水平方向および垂直方向に1ピクセルステップ(M=1、N=1)で、水平方向に64回分(J=64)、垂直方向に64回分(K=64)の位置シフトした合計64×64個のモデル入力画像210に対して、確率統計演算手段810を備えたロバスト性検証手段800によって、尤度分布834を算出した結果を示す。尤度分布834は、白色から黒色の濃淡バー806にしたがって、画面上の人物が存在する位置(ピクセル単位)の揺らぎに対する尤度(%)のレベルに応じて、白色(尤度0%相当)から黒色(尤度100%)の濃淡に色付けして表示したものである。人物1名に対する画面上の位置による揺らぎの検証範囲を広げることにより、尤度分布834の上側、つまり、点線で囲んだ領域827は、他の領域よりも白レベルが強く尤度が低い領域であることが分かる。本例では、点線で囲んだ領域827は、モデル入力画像826の人物の中心に対する右下側に広がる点線で囲んだ領域828に人物が存在した場合を示していると考えて良い。前述した、物体検出モデルのDNNモデルを含むニューラルネットワークのアルゴリズムや構造に起因する特定の格子状のパターンも観測できるが、点線で囲んだ領域827は特に尤度が低い領域が広く存在していることが分かる。したがって、モデル入力画像の人物が点線で囲んだ領域828に位置する場合は、物体検出の能力が低いことが確認できるため、モデル学習辞書320の強化が必須であることに気づくことが可能である。したがって、モデル学習辞書320の強化が必要な箇所を抽出することで、後述する実施形態2の辞書学習手段600により学習による強化を効率よく行うことができるため、モデル学習辞書320の検出物体や背景を含めた位置による揺らぎに対する汎用性やロバスト性の強化を図ることができる。
 なお、本例の検証方法では、検出対象が人物1名の場合を示しているが、検出対象が複人数の場合や、人物以外のクラスの物体が複数存在する場合は、それぞれの検出対象毎に、尤度分布とその統計結果、IOU値分布とその統計結果、クラス識別分布とその統計結果を利用してモデル学習辞書320の強化対象を特定しても良い。さらに、物体検出モデル300の課題抽出をしても良い。さらに、これらの抽出情報を参考に、後述する辞書学習手段600によりモデル学習辞書320の汎用性やロバスト性を強化しても良い。
 なお、本例では、YOLOに特定の制限を加えた場合に関して述べているが、物体検出モデル300に、同じone―stage型のSDDなどのDNNモデルに適用しても良い。また、物体の位置の検出とクラス識別を2段階に分けて処理するEfficientDetなどに代表されるtwo―stage型のDNNモデルに適用しても良い。また、ニューラルネットワークを使用しない物体検出モデルや機械学習モデルに適用しても良い。
 ここまでの実施の形態1で説明した画像処理手段100とモデル前処理手段200と物体検出モデル300とモデル後処理手段400の個体識別手段410とロバスト性検証手段800による、静止画に対する推論性能の分析やロバスト性および汎用性の分析により、第一に、物体検出モデル300のDNNモデルなどのニューラルネットワークの構造やアルゴリズムに起因する課題の抽出と、フレーム制御情報500の位置シフト量510とモデル前処理手段200の位置シフト機能220と物体検出モデル300とモデル後処理手段400の個体識別手段410と画像選択手段450と検出枠補正手段460による、動画に対する推論性能を向上させるための手段と手法の確立とその有用性と必要性を認識することができた。第二に、深層学習などにより学習を施したモデル学習辞書320が不完全であるか否かの切り分けることができるため、さらに、モデル学習辞書320の汎用性やロバスト性に関して、改善や補強すべき内容を正確に抽出することが可能となったことで、再学習などによりモデル学習辞書320の汎用性とロバスト性の改善と向上を図ることも可能となった。これら第一と第二による改善をもって物体検出装置の性能向上を図ることが可能となる。
 次に、本発明のある実施形態による動画に対する推論性能を向上させるための手段と手法に関して、図13により詳細に説明する。
 図13Aは、図13Bの基準画像1a701中に、人物が存在している場合に、図10や図12で説明したのと同様の分析手法により算出した尤度分布を白色から黒色の濃淡バー806にしたがって、画面上の人物A703が存在する位置(ピクセル単位)の揺らぎに対する尤度(%)のレベルに応じて、白色(尤度0%相当)から黒色(尤度100%)の濃淡に色付けして表示したものであり、尤度分布700は、格子状のパターンの一部を拡大して表示している。モデル入力画像である基準画像1a701の水平方向の画素数であるXiを128に、垂直方向の画素数であるYiを128に設定している場合であり、物体検出モデル300は、図3Aに示すYOLOモデル360において第一の検出レイヤ361のグリッドセルが4×4、第二の検出レイヤ362のグリッドセルが8×8、第三の検出レイヤ363のグリッドセルが16×16で構成されたDNNモデルにより推論を実施するものとする。
 次に、推論性能を向上するに際して、前述したある実施形態によるモデル前処理手段200の位置シフト機能220により図13Bに示す基準画像1a701から第一の位置シフト画像1b702を生成する際に参照するフレーム制御情報500の位置シフト量510を選定する。
 ある実施形態によれば、フレーム制御情報500の位置シフト量510は、物体検出モデル300のDNNモデルを含むニューラルネットワークモデルの入力画像の垂直方向と水平方向のピクセル数をニューラルネットワークモデルの1つ以上の検出レイヤ毎の水平方向と垂直方向のグリッドセルサイズで除算した値の1/2ピクセル値か、それに近似するピクセル値で決定されることを特徴とするものであってもよい。ここで、人物A703は、物体サイズとして中サイズに分類されるため、特定の尤度が部分的に低下する格子状のパターンは、水平および垂直に約16ピクセルの大きさを強く示しており、グリッドセルが8×8である第二の検出レイヤ362によって推論した結果が最も強く反映されていると考えられる。ここで、グリッドセルの1つのセルのサイズは、水平方向に16ピクセル(=128÷8)であり、垂直方向に16ピクセル(=128÷8)であることから、それぞれの1/2に相当する値である8ピクセルをフレーム制御情報500の位置シフト量510の水平方向の位置シフト量(M=8)と垂直方向の位置シフト量(N=8)に設定して、モデル前処理手段200の位置シフト機能220により基準画像1a701から左方向と上方向に8ピクセルシフトして第一の位置シフト画像1b702を生成する。この時、物体検出モデル300とモデル後処理手段400の個体識別手段410により算出された図13Bの基準画像1a701の人物A703の個体識別後の尤度情報の尤度706は、39%であり、図13Aにおいては706の尤度39%に該当する。また、図13Bの第一位置シフト画像1b702の人物A703の個体識別後の尤度情報の尤度707は、95%であり、図13Aにおいては707の尤度95%に該当する。この時、基準画像1a701の尤度706(39%)は、図13Aの尤度分布700に示すような特定の格子パターン状に尤度が低下する場合の尤度が低下する位置にあり、第一の位置シフト画像1b702の尤度707(95%)は、約16ピクセルの特定の格子パターンの約1/2に相当する水平方向と垂直方向に8ピクセルシフトした場所に位置するため尤度低下の影響を受けていない。したがって、本例では、フレーム制御情報500の位置シフト量510の水平方向の位置シフト量(M)と垂直方向の位置シフト量(N)をそれぞれ8に設定することが尤度低下を救済する際に有用となる。
 なお、第一の位置シフト画像1b702を生成するに際して、加工により発生する有効画像が存在しない余白部分790は、有効画像の平均輝度レベルと等しい単一色で一様に塗りつぶして画像を生成することを特徴とするものであっても良い。
 次に、実際に尤度低下を救済するためのモデル後処理手段400について、図13Cを使用して説明する。
 ある実施形態によれば、物体検出モデル300の推論結果である検出物体毎の基準画像221の補正前の検出枠を含む位置情報301と基準画像221の補正前の尤度情報302と、第一の位置シフト画像222の補正前の検出枠を含む位置情報301と第一の位置シフト画像222の補正前の尤度情報302とをモデル後処理手段400の個体識別手段410に入力して個体識別を行った後の、基準画像221の個体識別後の尤度情報404と、第一の位置シフト画像222の個体識別後の尤度情報404とを比較して最大となる方の入力画像と推論結果を選択してフレーム毎に出力する画像選択手段450と、画像選択手段450により第一の位置シフト画像222の推論結果を選択した場合は、フレーム制御情報500の位置シフト量510に則ってモデル前処理手段200の生成時とは逆方向に位置シフトを施した検出枠を含む位置情報を出力する検出枠補正手段460を備えることを特徴とするものであってもよい。
 図13Cでは、一例として、動画に対してフレーム1からフレーム4までを順次推論処理をしていく方法を示す。ここで、各フレーム間のフレームレートは、物体検出モデル300による基準画像221と第一の位置シフト画像222の2つの画像の推論処理時間の合計を元に決定されるものであってもよい。画像処理手段100の出力処理により、最初のフレーム1に対して画像が生成された後、フレーム制御情報500の水平方向と垂直方向にそれぞれ8ピクセル(M=8、N=8)の位置シフト量510に則って、モデル前処理手段200の位置シフト機能220により図13Bの基準画像1a701と第一の位置シフト画像1b702を生成する。同様にフレーム2に対しては基準画像2aと第一の位置シフト画像2bを、フレーム3に対しては基準画像3aと第一の位置シフト画像3bを、フレーム4に対しては基準画像4aと第一の位置シフト画像4bを生成する。フレーム1に対して生成された基準画像1a701と第一の位置シフト画像1b702は、物体検出モデル300に入力されて、基準画像1a701に対する推論結果である1a検出結果708と第一の位置シフト画像1b702に対する推論結果である1b検出結果709を出力する。これらの出力結果は、疑似出力を含む補正前の検出枠を含む位置情報301と補正前の尤度情報302に相当する。同様に、フレーム2に対しては2a検出結果と2b検出結果を、フレーム3に対しては3a検出結果と3b検出結果を、フレーム4に対しては4a検出結果と4b検出結果を算出する。フレーム1に対して算出された1a検出結果708と1b検出結果709は、モデル後処理手段400の個体識別手段410により基準画像1a701に対する検出物体毎に固有の1a識別結果710と第一の位置シフト画像1b702に対する1b識別結果711に識別されて出力される。これらの出力結果は、個体識別後の検出枠を含む位置情報403と個体識別後の尤度情報404を含むものであり、図13Bの個体識別後の検出枠を含む位置情報704と705、および、個体識別後の尤度情報の尤度706(39%)と707(95%)に相当する。同様に、フレーム2に対しては2a識別結果と2b識別結果を、フレーム3に対しては3a識別結果と3b識別結果を、フレーム4に対しては4a識別結果と4b識別結果を算出する。フレーム1に対して算出された1a識別結果710と1b識別711は、モデル後処理手段400の画像選択手段450により、基準画像1a701に対する尤度706(39%)と第一の位置シフト画像1b702に対する尤度707(95%)を比較して、最大値となる尤度707(95%)と第一の位置シフト画像1b702を選択する。したがって、尤度救済の結果である最尤の出力結果として、最尤の尤度情報402は、第一の位置シフト画像1b702に対する尤度707(95%)とクラス識別情報を出力する。一方、最尤の検出枠を含む位置情報401に関しては、画像選択手段450により第一の位置シフト画像1b702側が選択されたことで、図13Bに示す個体識別後の検出枠を含む位置情報705は、本来の基準画像1a701に対して位置シフトを施した分だけズレが生じていることになる。したがって、画像選択手段450により第一の位置シフト画像1b702が選択された場合は、検出枠補正手段460により、フレーム制御情報500の水平方向と垂直方向にそれぞれ8ピクセル(M=8、N=8)の位置シフト量510に則って、モデル前処理手段200の位置シフト機能220で位置シフトした方向とは逆方向に、右方向と下方向にそれぞれ8ピクセル分位置をシフトした結果を尤度救済の結果である最尤の検出枠を含む位置情報401として出力する。その際、画像選択手段450により選択された画像が基準画像1a701であった場合は、1a識別結果710をそれぞれ最尤の検出枠を含む位置情報401と最尤の尤度情報402としてそのまま出力する。同様に、フレーム2からフレーム4に対しても画像選択手段450と検出枠補正手段460により最尤の検出枠を含む位置情報401と最尤の尤度情報402を算出する。なお、最尤の検出枠を含む位置情報401と最尤の尤度情報402は、画像出力制御手段110とロバスト性検証手段800に入力されるものであっても良い。ここで、最尤の検出枠を含む位置情報401は、例えば、検出枠の中心座標、水平方向の幅、垂直方向の高さを含む情報であり、最尤の尤度情報402は、例えば、検出精度を示す尤度とクラス識別情報である。
 これら一連のフレーム制御情報500とモデル前処理手段200と物体検出モデル300とモデル後処理手段400により、基準画像221のまま推論を実施する場合に比べて、物体検出モデル300のDNNモデルなどのニューラルネットワークの構造やアルゴリズムに起因する特定の格子状のパターンで尤度が低下するような場合でも、尤度の救済が可能となり、推論結果のバラつきも抑制することが可能となる。つまり、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下を救済して、物体検出能力やクラス識別能力を向上することが可能となる。
 次に、本発明のある実施形態による動画に対する推論性能を向上させるための手段と手法に関して、図14により詳細に説明する。図14Aは、図14Bの基準画像1a723中に、人物A726と人物B727が存在している場合に、図10や図12で説明したのと同様の分析手法により算出した尤度分布を白色から黒色の濃淡バー806にしたがって、画面上の人物が存在する位置(ピクセル単位)の揺らぎに対する尤度(%)のレベルに応じて、白色(尤度0%相当)から黒色(尤度100%)の濃淡に色付けして表示したものであり、尤度分布721は、人物A726に対する尤度分布の格子状のパターンの一部を拡大して表示している。尤度分布722は、人物B727に対する尤度分布の格子状のパターンの一部を拡大して表示している。尤度モデル入力画像である基準画像1a723の水平方向の画素数であるXiを128に、垂直方向の画素数であるYiを128に設定している場合であり、物体検出モデル300は、図3Aに示すYOLOモデル360において第一の検出レイヤ361のグリッドセルが4×4、第二の検出レイヤ362のグリッドセルが8×8、第三の検出レイヤ363のグリッドセルが16×16で構成されたDNNモデルにより推論を実施するものとする。
 次に、推論性能を向上するに際して、前述したある実施形態によるモデル前処理手段200の位置シフト機能220により図14Bに示す基準画像1a723から第一の位置シフト画像1b724と第二のシフト画像1c725を生成する際に参照するフレーム制御情報500の位置シフト量510を選定する。
 ある実施形態によれば、フレーム制御情報500の位置シフト量510の種類は、物体検出モデル300のDNNモデルを含むニューラルネットワークモデルの1つ以上の検出レイヤ毎の水平方向と垂直方向のグリッドセルサイズで除算した値の1/2ピクセル値か、それに近似するピクセル値で決定された中で、検出対象物のサイズに依存して検出精度、もしくは、検出頻度が高くなる検出レイヤに対応する位置シフト量510の順番にモデル前処理手段200とモデル後処理手段400で適用されることを特徴とするものであってもよい。ここで、人物A726は、物体サイズとして中サイズに分類されるため、特定の尤度が部分的に低下する格子状のパターンは、図14Aの尤度分布721に示すように水平および垂直に約16ピクセルの大きさを強く示しており、グリッドセルが8×8である第二の検出レイヤ362によって推論した結果が最も強く反映されていると考えられる。人物B727は、物体サイズとして小サイズに分類されるため、特定の尤度が部分的に低下する格子状のパターンは、図14Aの尤度分布722に示すように水平および垂直に約8ピクセルの大きさを強く示しており、グリッドセルが16×16である第三の検出レイヤ363によって推論した結果が最も強く反映されていると考えられる。ここで、人物B727に対しては、グリッドセルの1つのセルのサイズは、水平方向に8ピクセル(=128÷16)であり、垂直方向に8ピクセル(=128÷16)であることから、それぞれの1/2に相当する値である4ピクセルをフレーム制御情報500の位置シフト量510の水平方向の位置シフト量(M=8)と垂直方向の位置シフト量(N=8)に設定して、モデル前処理手段200の位置シフト機能220により基準画像1a723から左方向と上方向に4ピクセルシフトして第一の位置シフト画像1b724を生成する。一方、人物A726に対しては、グリッドセルの1つのセルのサイズは、水平方向に16ピクセル(=128÷8)であり、垂直方向に16ピクセル(=128÷8)であることから、それぞれの1/2に相当する値である8ピクセルをフレーム制御情報500の位置シフト量510の水平方向の位置シフト量(P=8)と垂直方向の位置シフト量(Q=8)に設定して、モデル前処理手段200の位置シフト機能220により基準画像1a723から左方向と上方向に8ピクセルシフトして第二の位置シフト画像1c725を生成する。その際、もう1つの位置シフト量としては、物体サイズが大の際に適用されると考えられるグリッドセルが4×4の第一の検出レイヤ361に合わせて、水平方向と垂直方向ともに16ピクセルを設定する場合も考えられるが、第一の検出レイヤ361はグリッドセルが4×4と粗いこともあり基本的な推論精度が低くなる場合が多くあり、検出性能の面でも物体サイズが大きい場合でも第二の検出レイヤ362で代替することが可能なため適用を見合わせる。このように、推論に有効な検出レイヤに絞って、位置シフト量510の種類を選定しても良い。この時、物体検出モデル300とモデル後処理手段400の個体識別手段410により算出された図14Bの基準画像1a723の人物A726の個体識別後の尤度情報の尤度734は、39%であり、図14Aにおいては734の尤度39%に該当する。図14Bの基準画像1a723の人物B727の個体識別後の尤度情報の尤度737は、93%であり、図14Aにおいては737の尤度93%に該当する。また、図14Bの第一位置シフト画像1b724の人物A726の個体識別後の尤度情報の尤度735は、96%であり、図14Aにおいては735の尤度96%に該当する。図14Bの第一位置シフト画像1b724の人物B727の個体識別後の尤度情報の尤度738は、57%であり、図14Aにおいては738の尤度57%に該当する。また、図14Bの第二位置シフト画像1c725の人物A726の個体識別後の尤度情報の尤度736は、95%であり、図14Aにおいては736の尤度95%に該当する。図14Bの第二位置シフト画像1c725の人物B727の個体識別後の尤度情報の尤度739は、94%であり、図14Aにおいては739の尤度94%に該当する。この時、人物A726に関しては、基準画像1a723の尤度734(39%)は、図14Aの尤度分布721に示すような特定の格子パターン状に尤度が低下する場合の尤度が低下する位置にあり、第一の位置シフト画像1b724の尤度735(96%)は、水平方向と垂直方向に4ピクセルシフトした場所に位置するため尤度低下の影響を受けていない。また、第二の位置シフト画像1c725の尤度736(95%)は、約16ピクセルの特定の格子パターンの約1/2に相当する水平方向と垂直方向に8ピクセルシフトした場所に位置するため尤度低下の影響を受けていない。一方、人物B727に関しては、基準画像1a723の尤度737(93%)は、図14Aの尤度分布722に示すような約8ピクセルの特定の格子パターン状に尤度が低下する場合の尤度が低下する位置から格子パターンの約1/2に相当する水平方向と垂直方向に4ピクセルシフトした場所に位置するため尤度低下の影響を受けていない。第一の位置シフト画像1b724の尤度738(57%)は、約8ピクセルの特定の格子パターン状に尤度が低下する場合の尤度が低下する位置にあるため尤度が低下している。また、第二の位置シフト画像1c725の尤度739(94%)は、さらに水平方向と垂直方向に4ピクセルシフトした場所に位置するため尤度低下の影響を受けていない。したがって、本例では、フレーム制御情報500の位置シフト量510の1つ目の水平方向の位置シフト量(M)と垂直方向の位置シフト量(N)をそれぞれ4に設定し、2つ目の水平方向の位置シフト量(P)と垂直方向の位置シフト量(Q)をそれぞれ8に設定することが尤度低下を救済する際に有用となる。
 なお、第一の位置シフト画像1b724と第二の位置シフト画像1c725を生成するに際して、加工により発生する有効画像が存在しない余白部分791と792は、有効画像の平均輝度レベルと等しい単一色で一様に塗りつぶして画像を生成することを特徴とするものであっても良い。
 次に、実際に尤度低下を救済するためのモデル後処理手段400について、図14Cを使用して説明する。
 ある実施形態によれば、物体検出モデル300の推論結果である検出物体毎の基準画像221の補正前の検出枠を含む位置情報301と基準画像221の補正前の尤度情報302と、第一の位置シフト画像222の補正前の検出枠を含む位置情報301と第一の位置シフト画像222の補正前の尤度情報302と、第二の位置シフト画像223の補正前の検出枠を含む位置情報301と第二の位置シフト画像223の補正前の尤度情報302とをモデル後処理手段400の個体識別手段410に入力して個体識別を行った後の、基準画像221の個体識別後の尤度情報404と、第一の位置シフト画像222の個体識別後の尤度情報404と、第二の位置シフト画像223の個体識別後の尤度情報404とを比較して、その中から最大となる1つの入力画像と推論結果を選択してフレーム毎に出力する画像選択手段450と、画像選択手段450により第一の位置シフト画像222の推論結果、もしくは、第二の位置シフト画像223の推論結果を選択した場合は、フレーム制御パラメータ500の位置シフト量510に則ってモデル前処理手段200の生成時とは逆方向に位置シフトを施した検出枠を含む位置情報を出力する検出枠補正手段460を備えることを特徴とするものであっても良い。
 図14Cでは、一例として、動画に対してフレーム1からフレーム3までを順次推論処理をしていく方法を示す。ここで、各フレーム間のフレームレートは、物体検出モデル300による基準画像221と第一の位置シフト画像222と第二の位置シフト画像223の3つの画像の推論処理時間の合計を元に決定されるものであってもよい。画像処理手段100の出力処理により、最初のフレーム1に対して画像が生成された後、フレーム制御情報500の水平方向と垂直方向にそれぞれ4ピクセル(M=4、N=4)と8ピクセル(P=8、Q=8)の2種類の位置シフト量510に則って、モデル前処理手段200の位置シフト機能220により図14Bの基準画像1a723と第一の位置シフト画像1b724と第二の位置シフト画像1c725を生成する。同様にフレーム2に対しては基準画像2aと第一の位置シフト画像2bと第二の位置シフト画像2cを、フレーム3に対しては基準画像3aと第一の位置シフト画像3bと第二の位置シフト画像3cを生成する。フレーム1に対して生成された基準画像1a723と第一の位置シフト画像1b724と第二の位置シフト画像1c725は、物体検出モデル300に入力されて、基準画像1a723に対する推論結果である1a検出結果740と第一の位置シフト画像1b724に対する推論結果である1b検出結果741と第二の位置シフト画像1c725に対する推論結果である1c検出結果742を出力する。これらの出力結果は、疑似出力を含む補正前の検出枠を含む位置情報301と補正前の尤度情報302に相当する。同様に、フレーム2に対しては2a検出結果と2b検出結果と2c検出結果を、フレーム3に対しては3a検出結果と3b検出結果と3c検出結果を算出する。フレーム1に対して算出された1a検出結果l740と1b検出結果741と1c検出結果742は、モデル後処理手段400の個体識別手段410により基準画像1a723に対する検出物体毎に固有の1a識別結果743と第一の位置シフト画像1b724に対する1b識別結果744と第二の位置シフト画像1c725に対する1c識別結果745に識別されて出力される。これらの出力結果は、検出物体毎の個体識別後の検出枠を含む位置情報403と個体識別後の尤度情報404を含むものであり、図14Bの人物A726に対する個体識別後の検出枠を含む位置情報728と729と730、および、人物A726に対する個体識別後の尤度情報の尤度734(39%)と735(96%)と736(95%)に相当し、人物B727に対する個体識別後の検出枠を含む位置情報731と732と733、および、人物B727に対する個体識別後の尤度情報の尤度737(93%)と738(57%)と739(94%)に相当する。同様に、フレーム2に対しては2a識別結果と2b識別結果と2c識別結果を、フレーム3に対しては3a識別結果と3b識別結果と3c識別結果を算出する。フレーム1に対して算出された1a識別結果743と1b識別744と1c識別745は、モデル後処理手段400の画像選択手段450により、人物A726に対しては、基準画像1a723に対する尤度734(39%)と第一の位置シフト画像1b724に対する尤度735(96%)と第二の位置シフト画像1c725に対する尤度736(95%)を比較して、最大値となる尤度735(96%)と第一の位置シフト画像1b724を選択する。人物B727に対しては、基準画像1a723に対する尤度737(93%)と第一の位置シフト画像1b724に対する尤度738(57%)と第二の位置シフト画像1c725に対する尤度739(94%)を比較して、最大値となる尤度739(94%)と第二の位置シフト画像1c725を選択する。したがって、尤度救済の結果である最尤の出力結果として、人物A726の最尤の尤度情報402は、第一の位置シフト画像1b724に対する尤度735(96%)とクラス識別情報を出力する。人物B727の最尤の尤度情報402は、第二の位置シフト画像1c725に対する尤度739(94%)とクラス識別情報を出力する。一方、人物A726の最尤の検出枠を含む位置情報401に関しては、画像選択手段450により第一の位置シフト画像1b724側が選択されたことで、図14Bに示す個体識別後の検出枠を含む位置情報729は、本来の基準画像1a723に対して位置シフトを施した分だけズレが生じていることになる。したがって、画像選択手段450により第一の位置シフト画像1b724が選択された場合は、検出枠補正手段460により、フレーム制御情報500の水平方向と垂直方向にそれぞれ4ピクセル(M=4、N=4)の位置シフト量510に則って、モデル前処理手段200の位置シフト機能220で位置シフトした方向とは逆方向に、右方向と下方向にそれぞれ4ピクセル分位置をシフトした結果を尤度救済の結果である最尤の検出枠を含む位置情報401として出力する。また、人物B727の最尤の検出枠を含む位置情報401に関しては、画像選択手段450により第二の位置シフト画像1c725側が選択されたことで、図14Bに示す個体識別後の検出枠を含む位置情報733は、本来の基準画像1a723に対して位置シフトを施した分だけズレが生じていることになる。したがって、画像選択手段450により第二の位置シフト画像1c725が選択された場合は、検出枠補正手段460により、フレーム制御情報500の水平方向と垂直方向にそれぞれ8ピクセル(P=8、Q=8)の位置シフト量510に則って、モデル前処理手段200の位置シフト機能220で位置シフトした方向とは逆方向に、右方向と下方向にそれぞれ8ピクセル分位置をシフトした結果を尤度救済の結果である最尤の検出枠を含む位置情報401として出力する。その際、画像選択手段450により選択された画像が基準画像1a723であった場合は、1a識別結果743をそれぞれ最尤の検出枠を含む位置情報401と最尤の尤度情報402としてそのまま出力する。同様に、フレーム2からフレーム3に対しても画像選択手段450と検出枠補正手段460により最尤の検出枠を含む位置情報401と最尤の尤度情報402を算出する。
 これら一連のフレーム制御情報500とモデル前処理手段200と物体検出モデル300とモデル後処理手段400により、基準画像221のまま推論を実施する場合に比べて、物体検出モデル300のDNNモデルなどのニューラルネットワークの構造やアルゴリズムに起因する特定の格子状のパターンで尤度が低下するような場合でも、検出物体サイズに適した方法で尤度の救済が可能となり、推論結果のバラつきも抑制することが可能となる。したがって、物体検出モデルの検出レイヤが複数存在している場合に、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下を救済して、物体検出能力やクラス識別能力を向上することが可能となる。
 なお、ある実施形態によれば、フレーム制御情報500の位置シフト量510の種類が、モデル前処理手段200の位置シフト画像の種類よりも多い場合は、複数の位置シフト量510の平均値を位置シフト量510として使用することを特徴とするものであってもよい。一例として、図14で説明したように物体サイズが異なる人物A726と人物B727に適するように2つの検出レイヤのグリッドセルに依存した2種類の位置シフト量510を候補として用意していた場合に、物体検出モデル300を動作させるためのハードウェア、ソフトウェア、演算プロセッサの能力制限により、図13で説明したように1フレームに2つの画像までしか推論処理ができない場合など、候補であった2種の位置シフト量を平均化して6=((8+4)÷2)ピクセル分を水平方向と垂直方向にシフトするように1つの位置シフト量として設定して動作させてもよい。また、救済効果が大きく期待できる位置シフト量に絞って設定しても良い。また複数種類の位置シフト量候補の内の最も位置シフト量が小さいものに絞って設定しても良い。
 これらより、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下を平均的に救済して、安定して物体検出能力やクラス識別能力を向上することが可能となり、さらに、フレーム毎に同時に処理する位置シフト画像の種類を制限することで物体検出モデルの推論時の処理負荷を軽減ことが可能となる。したがって、搭載する演算プロセッサなどの性能に制限を設けた場合でも、物体検出の精度や性能を担保しつつ、低レイテンシーとリアルタイム性を実現することが可能となる。
 なお、ある実施形態によれば、フレーム制御情報500の位置シフト量510の種類が3種類以上存在し、かつ、モデル前処理手段200の位置シフト画像の種類が3種類以上存在する場合は、フレーム制御情報500の位置シフト量510に則って、モデル前処理手段200で基準画像221から3つ以上の位置シフト画像を生成し、基準画像221と合わせてフレーム毎に物体検出モデル300に入力し、モデル後処理手段400は、画像選択手段450により異なる4種類以上の画像に対する推論結果の中から最大となる1つの入力画像と推論結果を選択してフレーム毎に出力し、基準画像221の推論結果以外を選択した場合は、フレーム制御情報500の位置シフト量510に則って、モデル前処理手段200の生成時とは逆方向に位置シフトを施した検出枠を含む位置情報を出力する検出枠補正手段460を備えることを特徴とするものであってもよい。図14の説明に加えて第三の位置シフト画像などを生成して尤度救済を実施する場合などに該当する。
 これにより、DNNを含むニューラルネットワークが多数の検出レイヤで構成される場合にも、各検出レイヤに対する最適な位置シフト量が適用できるため、検出対象物の位置とサイズの揺らぎに対する推論精度の低下に対する救済効果がさらに高まり、より確実に物体検出能力やクラス識別能力を向上することが可能となる。ただし、1フレーム中に複数の画像に対して物体検出を行う必要があるため、低レイテンシーやリアルタイム性の欠如など影響が発生する場合もあるため、ハードウェア、ソフトウェア、演算プロセッサなどの能力に応じて、適切な救済手法を適用することが望ましい。
 次に、本発明のある実施形態によるハードウェア、ソフトウェア、演算プロセッサなどの性能面での制限により1フレーム当たりに1画像しか推論処理が実施できない場合を想定して、推論性能を向上させるための手段と手法に関して、図15により詳細に説明する。
 ある実施形態によれば、モデル前処理手段200は、フレーム制御情報500の位置シフト量510に則って、n(nは0を含む任意の2の倍数)フレーム目の基準画像221は、そのまま物体検出モデル300に入力し、n+1フレーム目の基準画像221に対しては、水平方向にMピクセル(Mは任意の小数)および垂直方向にNピクセル(Nは任意の小数)の位置シフトを施した第一の位置シフト画像222を生成して物体検出モデル300に入力し、物体検出モデル300は、モデル前処理手段200から出力されたnフレーム目の基準画像221とn+1フレーム目の第一の位置シフト画像222に対してフレーム毎に交互に物体位置とクラス識別と尤度を推論し、物体検出モデル300の推論結果である検出物体毎のnフレーム目の基準画像221の補正前の検出枠を含む位置情報301と基準画像221の補正前の尤度情報302と、n+1フレーム目の第一の位置シフト画像222の補正前の検出枠を含む位置情報301と第一の位置シフト画像222の補正前の尤度情報302とをモデル後処理手段400の個体識別手段410に入力して個体識別を行った後、画像選択手段450により、nフレーム目の基準画像221の個体識別後の尤度情報404と、n+1フレーム目の第一の位置シフト画像222の個体識別後の尤度情報404とを比較して、最大となる方の入力画像と推論結果を選択してn+1フレーム目の結果として出力し、n+1フレーム目の第一の位置シフト画像222の個体識別後の尤度情報404と、n+2フレーム目の基準画像221の個体識別後の尤度情報404とを比較して最大となる方の入力画像と推論結果を選択してn+2フレーム目の結果として出力し、1フレーム分遅延して現在のフレームと1フレーム前の過去フレームの情報から推論結果を最大化するものであっても良い。さらに、画像選択手段450によりn+1フレーム目の第一の位置シフト画像222の推論結果を選択した場合は、フレーム制御パラメータ500の位置シフト量510に則ってモデル前処理手段200の生成時とは逆方向に位置シフトを施した検出枠を含む位置情報を出力する検出枠補正手段460を備えることを特徴とするものであっても良い。
 図15Aは、図15Bのn(nは2の倍数)番目のフレームfnの基準画像n751中に、人物A753が存在している場合に、図10や図12で説明したのと同様の分析手法により算出した尤度分布を白色から黒色の濃淡バー806にしたがって、画面上の人物A753と754が存在する位置(ピクセル単位)の揺らぎに対する尤度(%)のレベルに応じて、白色(尤度0%相当)から黒色(尤度100%)の濃淡に色付けして表示したものであり、尤度分布750は、格子状のパターンの一部を拡大して表示している。モデル入力画像である基準画像n751の水平方向の画素数であるXiを128に、垂直方向の画素数であるYiを128に設定している場合であり、物体検出モデル300は、図3Aに示すYOLOモデル360において第一の検出レイヤ361のグリッドセルが4×4、第二の検出レイヤ362のグリッドセルが8×8、第三の検出レイヤ363のグリッドセルが16×16で構成されたDNNモデルにより推論を実施するものとする。
 次に、推論性能を向上するに際して、前述したある実施形態によるモデル前処理手段200の位置シフト機能220により図15Bに示すフレームfnの次フレームにあたるフレームfn+1の基準画像n+1から第一の位置シフト画像sn+1752を生成する際に参照するフレーム制御情報500の位置シフト量510を選定する。
 本例では、人物A753と754は、物体サイズとして中サイズに分類されるため、特定の尤度が部分的に低下する格子状のパターンは、水平および垂直に約16ピクセルの大きさを強く示しており、グリッドセルが8×8である第二の検出レイヤ362によって推論した結果が最も強く反映されていると考えられるため8ピクセルをフレーム制御情報500の位置シフト量510の水平方向の位置シフト量(M=8)と垂直方向の位置シフト量(N=8)に設定して、モデル前処理手段200の位置シフト機能220により奇数フレームの場合のみフレームfn+1の基準画像n+1から左方向と上方向に8ピクセルシフトして第一の位置シフト画像sn+1752を生成する。偶数フレームfnは位置シフトを行わず基準画像n751のままとする。この時、物体検出モデル300とモデル後処理手段400の個体識別手段410により算出された図15Bの基準画像n751の人物A753の個体識別後の尤度情報の尤度757は、39%であり、図15Aにおいては757の尤度39%に該当する。また、図15Bの第一の位置シフト画像sn+1752の人物A754の個体識別後の尤度情報の尤度758は、95%であり、図15Aにおいては758の尤度95%に該当する。ここでは前提として、人物A753と754はフレームfnとフレームfn+1の間で静止している状態である場合を示している。人物A753と754がフレームfnとフレームfn+1の間で動いていた場合は、尤度分布750の分布図も変化することになり、その際の図15Aの尤度750の位置に該当する尤度が適用される。以下、フレームfnとフレームfn+1の間で人物A753と754が静止している場合について説明する。この時、フレームfnの基準画像n751の尤度757(39%)は、図15Aの尤度分布750に示すような特定の格子パターン状に尤度が低下する場合の尤度が低下する位置にあり、フレームfn+1の第一の位置シフト画像sn+1752の尤度758(95%)は、約16ピクセルの特定の格子パターンの約1/2に相当する水平方向と垂直方向に8ピクセルシフトした場所に位置するため尤度低下の影響を受けていない。したがって、本例では、フレーム制御情報500の位置シフト量510の水平方向の位置シフト量(M)と垂直方向の位置シフト量(N)をそれぞれ8に設定することが尤度低下を救済する際に有用となる。
 なお、フレームfn+1の第一の位置シフト画像sn+1752を生成するに際して、加工により発生する有効画像が存在しない余白部分793は、有効画像の平均輝度レベルと等しい単一色で一様に塗りつぶして画像を生成することを特徴とするものであっても良い。
 次に、実際に尤度低下を救済するためのモデル後処理手段400について、図15Cを使用して説明する。
 図15Cでは、一例として、動画に対してフレームfnからフレームfn+7までを順次推論処理をしていく方法を示す。ここで、各フレーム間のフレームレートは、物体検出モデル300による1つの画像の推論処理時間を元に決定されるものであってもよい。画像処理手段100の出力処理により、最初のフレームfn対して画像が生成された後、フレーム制御情報500の水平方向と垂直方向にそれぞれ8ピクセル(M=8、N=8)の位置シフト量510に則って、モデル前処理手段200の位置シフト機能220により図15Bの奇数フレームであるフレームfn+1の基準画像n+1に対して第一の位置シフト画像sn+1752を生成する。同様に奇数フレームであるfn+3とfn+5とfn+7は、それぞれの基準画像n+3とn+5とn+7に対する第一の位置シフト画像sn+3とsn+5とsn+7を生成する。その時、偶数フレームであるフレームfnとfn+2とfn+4とfn+6は、位置シフトを行わず基準画像n751とn+2とn+4とn+6をそのまま出力する。フレームfnの基準画像n751とフレームfn+1の第一の位置シフト画像sn+1752は、物体検出モデル300に入力されて、フレームfnの基準画像n751に対する推論結果であるn検出結果759とフレームfn+1の第一の位置シフト画像sn+1752に対する推論結果であるsn+1検出結果760を出力する。これらの出力結果は、疑似出力を含む補正前の検出枠を含む位置情報301と補正前の尤度情報302に相当する。同様に、偶数フレームfn+2とfn+4とfn+6に対してはn+2検出結果とn+4検出結果とn+6検出結果を、奇数フレームfn+3とfn+5とfn+7に対してはsn+3検出結果とsn+5検出結果とsn+7検出結果を算出する。フレームfnに対して算出されたn検出結果759とフレームfn+1に対して算出されたsn+1検出結果760は、モデル後処理手段400の個体識別手段410によりフレームfnの基準画像n751に対する検出物体毎に固有のn識別結果761とフレームfn+1の第一の位置シフト画像sn+1752に対するsn+1識別結果762に識別されて出力される。これらの出力結果は、個体識別後の検出枠を含む位置情報403と個体識別後の尤度情報404を含むものであり、図15Bの個体識別後の検出枠を含む位置情報755と756、および、個体識別後の尤度情報の尤度757(39%)と758(95%)に相当する。同様に、偶数フレームfn+2とfn+4とfn+6に対してはn+2識別結果とn+4識別結果とn+6識別結果を、奇数フレームfn+3とfn+5とfn+7に対してはsn+3識別結果とsn+5識別結果とsn+7識別結果を算出する。フレームfnに対して算出されたn識別結果761とフレームfn+1に対して算出されたsn+1識別結果762は、モデル後処理手段400の画像選択手段450により、フレームfnの基準画像n751に対する尤度757(39%)とフレームfn+1の第一の位置シフト画像sn+1752に対する尤度758(95%)を比較して、最大値となる尤度758(95%)とフレームfn+1の第一の位置シフト画像sn+1752を選択する。したがって、尤度救済の結果である最尤の出力結果として、最尤の尤度情報402は、フレームfn+1の第一の位置シフト画像sn+1752に対する尤度758(95%)とクラス識別情報を出力する。一方、最尤の検出枠を含む位置情報401に関しては、画像選択手段450により奇数フレームであるフレームfn+1の第一の位置シフト画像sn+1752側が選択されたことで、図15Bに示す個体識別後の検出枠を含む位置情報756は、本来のフレームfn+1の基準画像n+1およびフレームfnの基準画像n751に対して位置シフトを施した分だけズレが生じていることになる。したがって、画像選択手段450により奇数フレームであるフレームfn+1の第一の位置シフト画像sn+1752が選択された場合は、検出枠補正手段460により、フレーム制御情報500の水平方向と垂直方向にそれぞれ8ピクセル(M=8、N=8)の位置シフト量510に則って、モデル前処理手段200の位置シフト機能220で位置シフトした方向とは逆方向に、右方向と下方向にそれぞれ8ピクセル分位置をシフトした結果を尤度救済の結果である最尤の検出枠を含む位置情報401として出力する。その際、画像選択手段450により選択された画像が偶数フレームであるフレームfnの基準画像n751であった場合は、n識別結果761をそれぞれ最尤の検出枠を含む位置情報401と最尤の尤度情報402としてそのまま出力する。つまり、偶数フレームであるフレームfnと奇数フレームであるフレームfn+1のフレームを跨ぐ結果からフレームfn+1のタイミングで尤度を救済した最尤の推論結果を出力するものであっても良い。フレームfn+2のタイミングでは、奇数フレームであるフレームfn+1のsn+1識別結果762と偶数フレームfn+2のn+2識別結果を使用して、画像選択手段450により最尤の尤度を判定して選択した後、奇数フレームのfn+1が選択された場合は、検出枠補正手段460により検出枠を含む位置情報を補正する。同様に、フレームfn+3からフレームfn+7に対しても現フレームと1つ前のフレームの推論結果を元に画像選択手段450と検出枠補正手段460により最尤の検出枠を含む位置情報401と最尤の尤度情報402を算出する。
 これら一連のフレーム制御情報500とモデル前処理手段200と物体検出モデル300とモデル後処理手段400により、基準画像221のまま推論を実施する場合に比べて、物体検出モデル300のDNNモデルなどのニューラルネットワークの構造やアルゴリズムに起因する特定の格子状のパターンで尤度が低下するような場合でも、尤度の救済が可能となり、推論結果のバラつきも抑制することが可能となる。つまり、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下を救済して、物体検出能力やクラス識別能力を向上することが可能となり、さらに、フレーム毎に推論する画像を1つに限定することができるため、物体検出モデルの推論時の処理負荷を軽減ことが可能となる。したがって、特に検出対象物が静止している状態で物体検出を行う場合や、搭載する演算プロセッサなどの性能に制限を設けた場合でも、物体検出の精度や性能を担保しつつ、低レイテンシーとリアルタイム性を実現することが可能となる。
 ただし、検出物体が動的な状況においては、図13および図14で説明した手法と方法に対して救済効果が低下する場合もあるため、ハードウェア、ソフトウェア、演算プロセッサなどの能力に応じて、適切な救済手法を適用することが望ましい。
 さらに、ある実施形態によれば、モデル前処理手段200は、フレーム制御情報500の位置シフト量510に則って、m(mは0を含む任意の3の倍数)フレーム目の基準画像221とm+1フレーム目の基準画像221から生成した第一の位置シフト画像222に加えて、m+2フレーム目の基準画像221に対しては、水平方向にPピクセル(Pは任意の小数)および垂直方向にQピクセル(Qは任意の小数)の位置シフトを施した第二の位置シフト画像223を生成し、mフレーム目に基準画像221を、m+1フレーム目に第一の位置シフト画像222を、m+2フレーム目に第二の位置シフト画像223をフレーム毎に順番に物体検出モデル300に入力し、物体検出モデル300によりモデル前処理手段200から出力されたmフレーム目の基準画像221とm+1フレーム目の第一の位置シフト画像222とm+2フレーム目の第二の位置シフト画像223とに対してフレーム毎に順番に物体位置とクラス識別と尤度を推論し、それぞれの結果に対してモデル後処理手段400の個体識別手段410により個体識別処理を施した後、画像選択手段450が、検出物体毎のmフレーム目の基準画像221の個体識別後の検出枠を含む位置情報403と基準画像221の個体識別後の尤度情報403と、m+1フレーム目の第一の位置シフト画像222の個体識別後の検出枠を含む位置情報403と第一の位置シフト画像222の個体識別後の尤度情報403とm+2フレーム目の第二の位置シフト画像223の個体識別後の検出枠を含む位置情報403と第二の位置シフト画像223の個体識別後の尤度情報403とを比較して最大となる方の入力画像と推論結果を選択してm+2フレーム目の結果として出力し、m+1フレーム目とm+2フレーム目とm+3フレーム目の推論結果を比較して最大となる方の入力画像と推論結果を選択してm+3フレーム目の結果として出力し、m+2フレーム目とm+3フレーム目とm+4フレーム目の推論結果を比較して最大となる方の入力画像と推論結果を選択してm+4フレーム目の結果として出力し、2フレーム分遅延して現在のフレームと2フレーム前までの過去フレームの情報から推論結果を最大化するものであっても良い。その際、画像選択手段450によりm+1フレーム目の第一の位置シフト画像222の推論結果を選択した場合とm+2フレーム目の第二の位置シフト画像223の推論結果を選択した場合は、フレーム制御情報500の位置シフト量510に則ってモデル前処理手段200の生成時とは逆方向に位置シフトを施した検出枠を含む位置情報を出力する検出枠補正手段460を備えることを特徴とするものであっても良い。
 これにより、特に、物体検出モデルの検出レイヤが複数存在している場合に、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下をより良く救済して、物体検出能力やクラス識別能力を向上することが可能となり、さらに、フレーム毎に推論する画像を1つに限定することができるため、物体検出モデルの推論時の処理負荷を軽減ことが可能となる。したがって、特に静止画に対する物体検出を行う場合や、搭載する演算プロセッサなどの性能に制限を設けた場合でも、物体検出の精度や性能を担保しつつ、低レイテンシーとリアルタイム性を実現することが可能となる。
 さらに、ある実施形態によれば、フレーム制御情報500の位置シフト量510の種類が3種類以上存在し、かつ、モデル前処理手段200で生成される位置シフト画像の種類が3種類以上存在する場合は、フレーム制御情報500の位置シフト量510に則って、モデル前処理手段200でr(rは0を含む任意のs(sは4以上の任意の整数)の倍数)フレーム目は基準画像221を、r+1フレームからr+s-1フレーム目は各フレームの基準画像221から加工したs-1個の位置シフト画像を、フレーム順に物体検出モデル300に入力し、モデル後処理手段400の個体識別手段410により個体識別処理を施した後、画像選択手段450により現在のフレームとs-1フレーム前の過去フレームの推論結果の中から最大となる1つの入力画像と推論結果を選択して現在のフレームの推論結果として出力し、rフレーム目の基準画像221の推論結果以外、つまり、位置シフトを施した画像を選択した場合は、フレーム制御情報500の位置シフト量510に則って、モデル前処理手段200の生成時とは逆方向に位置シフトを施した検出枠を含む位置情報を出力する検出枠補正手段460を備えることを特徴とするものであっても良い。
 これにより、DNNを含むニューラルネットワークが多数の検出レイヤで構成される場合にも、各検出レイヤに対する最適な位置シフト量が適用できるため、検出対象物の位置とサイズの揺らぎに対する推論精度の低下に対する救済効果がさらに高まり、より確実に物体検出能力やクラス識別能力を向上させることが可能となり、さらに、フレーム毎に推論する画像を1つに限定することができるため、物体検出モデルの推論時の処理負荷を軽減ことが可能となる。したがって、特に静止画に対する物体検出を行う場合や、搭載する演算プロセッサなどの性能に制限を設けた場合でも、物体検出の精度や性能を担保しつつ、低レイテンシーとリアルタイム性を実現することが可能となる。
 次に、モデル前処理手段200の位置シフト機能220により基準画像221に位置シフトを施した際に有効な画像データが存在しない余白が発生した際の処理方法について説明する。
 ある実施形態によれば、モデル前処理手段200は、フレーム制御情報500に則って、物体検出モデル300に入力する画像に対して位置シフトを含め加工するに際して、加工により発生する有効画像が存在しない余白部分は、有効画像の平均輝度レベルと等しい単一色で一様に塗りつぶして画像を生成することを特徴とするものであっても良い。
 モデル前処理手段200は、物体検出モデル300に入力する複数のモデル入力画像210を加工するに際して、図8と図9と後述する図17と図18の281ないし288と、図13B、図14B、図15B、および、図25Aの790ないし794で示す位置シフト処理などにより発生する有効画像が存在しない余白部分は、有効である画像の平均輝度レベルを算出して、その平均輝度レベルと等しい単一色で一様に塗りつぶして画像を生成する余白パディング機能280を備えるものであっても良い。また、画像処理手段100の出力画像に存在する有効画像領域で余白部分を補間するものであっても良い。また、余白部分を学習や推論に影響を与えないような画像で埋めても良い。
 これらモデル前処理手段200が余白パディング機能280を備えることにより、余白部分の特徴量が、物体検出モデルの推論精度に与える影響を軽減できるため、画像中の物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下をより良く救済することが可能となる。
 さらに、ロバスト検証手段800の確率統計演算手段810により、各検出物体の位置に対する尤度分布830と尤度の有効領域の平均尤度801と尤度のヒストグラム840と尤度の標準偏差802と最大尤度803と最小尤度804とIOU値805をより正確に算出することが可能となる。したがって、実施形態2で後述する辞書学習手段600によるモデル学習辞書の汎用性やロバスト性の強化をより正確に図ることが可能となる。
 次に、モデル前処理手段200の位置シフト機能220とそれ以外の機能の使用方法や用途、および、効果に関して説明する。
 ある実施形態によれば、モデル前処理手段200は、フレーム制御情報500の位置シフト量510に則って位置シフトを実施する前の画像に対して、任意の場所の画像を切り抜くクロップ機能240と、画像サイズを変更するリサイズ機能230と、コントラスト補正曲線、もしくは、階調変換曲線を使用して輝度レベルを任意の値に変更する階調変換機能270と、アスペクト比を変更するアスペクト比変更機能265と、回転角度を変更する回転機能260と、歪補正テーブル293などを使用してデワープ処理を行うデワープ機能277などを有し、フレーム制御情報500の各種パラメータに則って画像を加工することを特徴とするものであっても良い。
 位置シフト機能220とリサイズ機能230に関しては、上述しているのでここでの説明は割愛する。クロップ機能240は、図8のモデル入力画像220B、220C、220D、図13Bの第一の位置シフト画像1b702、図14Bの第一の位置シフト画像1b724、第二の位置シフト画像1c725、および、図15Bの第一の位置シフト画像sn+1752のように、位置シフト処理を施したことによりモデル入力画像の画素範囲からはみ出てしまった箇所を切り取るような場合に使用するものであっても良い。それ以外に、モデル前処理手段200のリサイズ機能230により拡張などの各種機能を施した後の有効画素範囲がモデル入力画像の画素範囲からはみ出てしまった箇所を切り取るような場合に使用するものであっても良い。クロップ機能240を使用する場合のフレーム制御情報500は、どの画素範囲を切り取りモデル入力画像のどの位置に貼り付けるかなどの座標と範囲を示すパラメータを使用し、アフィン変換関数291や射影変換関数292を画像処理プロセッサ290で実行して実現する機能であっても良い。
 画面分割機能250に関しては、実施形態2で後述する。
 階調変換機能270は、フレーム制御情報500として、図16に示すようなコントラスト補正曲線、もしくは、階調変換曲線274ないし276を指定して、輝度レベルを任意の値に変更した画像を生成することを特徴とするものであっても良い。なお、コントラスト補正曲線や階調変換曲線を使用して輝度レベルの変更を行う際は、画像処理プロセッサ290で実行して実現する機能であっても良い。
 一例として、図16に、一般的な晴れの昼間に撮影した基準の輝度レベル画像に対して、その状態を保持するような階調変換曲線275を適用した基準輝度レベル画像272と、照度が低い雨や曇りの天候条件や、夜明け、夕刻、夜間の時間帯や、黒つぶれなどを模擬するような階調変換曲線274を適用した結果として加工される輝度レベルを低くした輝度レベル低画像271と、照度が高い快晴の天候条件や逆光、白飛びや、強力なライトを照射した撮影スタジオなどを模擬するような階調変換曲線276を適用した結果として加工される輝度レベルを高くした輝度レベル高画像273の3種類の階調変換画像を生成する場合を示す。図16に示すようなモデル前処理手段200の階調変換機能270により加工された基準画像221に対して、前述したようなモデル前処理手段200の位置シフト機能220と物体検出モデル300とモデル後処理手段400による尤度救済を行うようなものであっても良い。さらに、ロバスト性検証手段800の確率統計演算手段810により尤度分布830などの各種分析結果を算出するものであっても良い。
 これらモデル前処理手段200が階調変換機能270を備えることにより、天候条件や撮影時間帯や撮影環境の照度条件により変化する検出物体と背景の輝度レベルに対して、尤度救済時の効果の拡大やモデル学習辞書の汎用性やロバスト性の強化を図ることが可能となる。
 アスペクト比変更機能265は、フレーム制御情報500として、アスペクト比率を使用して、アスペクト比を変更した画像を生成することを特徴とするものであっても良い。アスペクト比の変更を行う際は、アフィン変換関数291や射影変換関数292を画像処理プロセッサ290で実行して実現する機能であっても良い。
 一例として、図17に、基準となるモデル入力画像267の人物1名に対して、ある年齢の子供やふくよかな人物を模擬したアスペクト比になるように垂直方向に30%縮小したモデル入力画像266と、細身の人物を模擬したアスペクト比になるように水平方向に30%縮小したモデル入力画像268の3種類のアスペクト比を変更した画像を生成する場合を示す。図17に示すようなモデル前処理手段200のアスペクト比変更機能265により加工された基準画像267に対して、前述したようなモデル前処理手段200の位置シフト機能220と物体検出モデル300とモデル後処理手段400による尤度救済を行うようなものであっても良い。さらに、ロバスト性検証手段800の確率統計演算手段810により尤度分布830などの各種分析結果を算出するものであっても良い。
 これらモデル前処理手段200がアスペクト比変更機能265を備えることにより、検出物体の様々なアスペクト比(率)に対して、尤度救済時の効果の拡大やモデル学習辞書の汎用性やロバスト性の強化を図ることが可能となる。
 回転機能260は、フレーム制御情報500として、角度を使用して、回転角度を変更した画像を生成することを特徴とするものであっても良い。角度により回転角度の変更を行う際は、アフィン変換関数291や射影変換関数292を画像処理プロセッサ290で実行して実現する機能であっても良い。
 一例として、図18に、基準角度となるモデル入力画像262の人物1名に対して、カメラなどの取り付け位置の違いや人物のポーズを模擬した左に45°回転したモデル入力画像261と、カメラなどの取り付け位置の違いや人物のポーズを模擬した右に45°回転したモデル入力画像263の3種類の回転角度を変更した画像を生成する場合を示す。
 図18に示すようなモデル前処理手段200の回転機能260により加工された基準画像221に対して、前述したようなモデル前処理手段200の位置シフト機能220と物体検出モデル300とモデル後処理手段400による尤度救済を行うようなものであっても良い。さらに、ロバスト性検証手段800の確率統計演算手段810により尤度分布830などの各種分析結果を算出するものであっても良い。
 これらモデル前処理手段200が回転機能260を備えることにより、検出物体の様々な回転角度に対して、尤度救済時の効果の拡大やモデル学習辞書の汎用性やロバスト性の強化を図ることが可能となる。
 さらに、魚眼レンズなどを使用している場合、歪補正テーブル293を使用した歪補正や円筒変換などを行うためのデワープ機能277を用いて加工することで、各種の検出物や背景の歪みに対して、尤度救済時の効果の拡大やモデル学習辞書の汎用性やロバスト性の強化を図ることが可能となる。
 これらモデル前処理手段200の各種機能により、画像取得時の各種変動条件を吸収もしくは緩和することが可能となり、さらに、画像取得後の画像から対象検出物を検出に適した状態に加工することが可能となるため、画像中の物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下をより良く救済することが可能となる。
 次に、モデル後処理手段400の個体識別手段410と画像選択手段450と検出枠補正手段460により尤度救済を行った結果に対して、時系列的に検出物体毎の推論結果もしくは尤度の救済結果を保持し、時系列の前後関係を踏まえた情報補間や異常情報の排除や未来予測を行うためのフレーム情報保持手段470とフレーム情報補間手段480に関して、図19、図20、および、図21により説明する。
 ある実施形態によれば、モデル後処理手段400は、個体識別手段410と画像選択手段450と検出枠補正手段460により最尤と判定して出力したフレーム毎の検出物体毎に対する推論結果である最尤の検出枠を含む位置情報401と最尤の尤度情報402を、最大検出物体数V(Vは任意の整数)の数だけ現在のフレームftとft―1からft-s(sは任意の整数)までの過去フレーム分の格納メモリ471に保持するフレーム情報保持手段470を有し、フレーム情報保持手段470は、現在のフレームftの最尤の検出枠を含む位置情報401と最尤の尤度情報402が算出された時点で、最も古いフレームft-sの格納メモリ471に記録されている最尤の検出枠を含む位置情報401と最尤の尤度情報402を消去し、ftフレームからft-(s-1)フレームまでの格納メモリ471に記録されている最尤の検出枠を含む位置情報401と最尤の尤度情報402を1フレーム分過去のft-1フレームからft-sフレームの格納メモリ471にスライドして再記録し、現在のフレームftの最尤の検出枠を含む位置情報401と最尤の尤度情報402を現在のフレームftの格納メモリ471に記録することを特徴とするものであっても良い。
 さらに、ある実施形態によれば、フレーム情報保持手段470は、任意のフレームの検出物体の格納メモリ471の最尤の検出枠を含む位置情報401と最尤の尤度情報402に欠落がある場合に、前後のフレームの格納メモリ471の最尤の検出枠を含む位置情報401と最尤の尤度情報402から補間して新たな最尤の検出枠を含む位置情報401と最尤の尤度情報402として当該フレームの格納メモリ471に記録するフレーム情報補間手段480を有し、フレーム情報補間手段480の各種情報の補間方法が、ニュートン後退補間法481や移動平均法などであり、最尤の検出枠を含む位置情報401は、検出枠の中心座標472と高さ473と幅474の情報を含み、最尤の尤度情報402は、検出の信頼性を示す尤度とクラス識別情報を含むことを特徴とするものであっても良い。
 さらに、ある実施形態によれば、フレーム情報補間手段480は、フレーム情報保持手段470のft-1からft-sの過去フレームの格納メモリ471の最尤の検出枠を含む位置情報401の中心座標472から動きベクトル量475を算出して各フレームの検出物体毎の格納メモリ471に記録する動きベクトル量算出手段483を有し、さらに、未来のフレームの検出物体毎の動きベクトル量475を予測して最尤の検出枠を含む位置情報401の中心座標472を予測する動きベクトル予測算出手段484を有することを特徴とするものであっても良い。なお、動きベクトル予測算出手段484の予測方法が、過去のフレームの最尤の検出枠を含む位置情報401の中心座標472のフレーム間の差分情報を元にしたニュートン後退補間法481や移動平均法などであっても良い。
 さらに、ある実施形態によれば、フレーム情報補間手段480は、フレーム情報保持手段470の過去フレームの検出物体毎の最尤の検出枠を含む位置情報401の検出枠の幅474と高さ473と中心座標472と、動きベクトル量算出手段483により算出された動きベクトル量475とにより、距離係数476を算出して格納メモリ471に記録する距離係数算出手段482を有し、さらに、動きベクトル予測算出手段484は、予測された未来のフレームの動きベクトル量475から、距離係数算出手段482により未来のフレームの検出物体毎の最尤の検出枠を含む位置情報401の中心座標472と距離係数476を予測し、未来のフレームの最尤の検出枠を含む位置情報401の検出枠の幅474と高さ473の情報を予測することを特徴とするものであっても良い。
 さらに、ある実施形態によれば、フレーム情報補間手段480は、フレーム情報保持手段470の過去フレームの検出物体毎の格納メモリ471に格納されている最尤の検出枠を含む位置情報401の検出枠の幅474と高さ473と中心座標472と、動きベクトル量475と、距離係数476と、最尤の尤度情報402により、最尤の検出枠を含む位置情報401と最尤の尤度情報402のフレーム間の時間連続性の異常を検出した場合に格納メモリ471から除去する異常検出情報除去手段485を有し、異常検出情報除去手段485により除去された各種情報を前後のフレームの最尤の検出枠を含む位置情報401の検出枠の幅474と高さ473と中心座標472と、動きベクトル量475と、距離係数476と、最尤の尤度情報402から復元して格納メモリ471に記録する検出情報復元手段486を有し、さらに、新たに物体検出を実施した際の現在のフレームの検出物体毎の個体識別手段410と画像選択手段450と検出枠補正手段460により算出された最尤の検出枠を含む位置情報401と、動きベクトル予測算出手段484により予測された未来のフレームの最尤の検出枠を含む位置情報401の検出枠の幅474と高さ473と中心座標472とを比較して、異常を検出して除去する異常検出情報予測除去手段487を有し、異常検出情報予測除去手段487により個体識別手段410と画像選択手段450と検出枠補正手段460により算出された最尤の検出枠を含む位置情報401が除去された場合は、動きベクトル予測算出手段484により予測された未来のフレームの最尤の検出枠を含む位置情報401に置き換えて復元し現在のフレームの格納メモリ471に記録する検出情報予測復元手段488を有することを特徴とするものであっても良い。
 図19に示すように、格納メモリ471は、No.1からNo.V(Vは任意の整数)の検出物体毎に、現在のフレームftと過去フレームft-1からft-s(sは任意の整数)分の情報記録メモリを有し、格納メモリ471に格納する情報としては、最尤の検出枠を含む位置情報401と最尤の尤度情報402がある。ここで、最尤の検出枠を含む位置情報401は、検出枠の中心座標472と高さ473と幅474の情報を含み、最尤の尤度情報402は、検出の信頼性を示す尤度とクラス識別情報を含むことを特徴とするものであっても良い。さらに、格納メモリ471に格納する情報としては、フレーム情報補間手段480の動きベクトル量算出手段483と動きベクトル予測算出手段484により算出される検出枠の中心座標を基準とした未来予測を含むフレーム毎の動きベクトル量475と、距離係数算出手段482により算出される検出物体がカメラなどの撮像装置からどの程度の距離があるかを相対的に示す距離係数476があっても良い。
 フレーム情報保持手段470は、現在のフレームftの最尤の検出枠を含む位置情報401と最尤の尤度情報402と動きベクトル量475と距離係数476が算出された時点で、最も古いフレームft-sの格納メモリ471に記録されている各種情報を消去し、ftフレームからft-(s-1)フレームまでの格納メモリ471に記録されている各種情報を1フレーム分過去のft-1フレームからft-sフレームの格納メモリ471にスライドして再記録し、現在のフレームftの最尤の検出枠を含む位置情報401と最尤の尤度情報402と動きベクトル量475と距離係数476とを現在のフレームftの格納メモリ471に記録することを特徴とするものであっても良い。
 なお、格納メモリ471は、新規に検出した検出物体に対して、それらの推論結果や各種算出結果を格納するためにメモリを割り当てる際に、No.1からNo.Vまでの間で現在のフレームftから過去フレームft-sまでのすべての格納メモリ471が開放(メモリ情報が無い状態)されている中で数値の小さいNo.に優先的に割り当てるものであっても良い。また、検出されていた物体が検出されていない期間が続き、当該No.の現在のフレームftから過去フレームft-sまでのすべての格納メモリ471に格納されたメモリ情報がなくなった時点で、その当該No.の格納メモリ471を開放するものであっても良い。これにより、同時に最大V個の検出物体を追跡し続けることが可能となる。
 このようなフレーム情報保持手段470と格納メモリ471を有することにより、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する現在のフレームの推論精度の低下を救済した結果と、過去フレームの結果を参照することが可能となる。さらに、過去の検出物体別の履歴や軌跡を表示することも可能となる。
 また、フレーム情報保持手段470は、任意のフレームの検出物体No.の格納メモリ471の最尤の検出枠を含む位置情報401と最尤の尤度情報402と動きベクトル量475と距離係数476との少なくとも1つでも欠落がある場合に、前後のフレームの格納メモリ471のメモリ情報から補間して新たなメモリ情報として当該フレームの格納メモリ471に記録するフレーム情報補間手段480を有するものであっても良い。
 フレーム情報補間手段480で使用する各種メモリ情報の補間方法は、ニュートン後退補間法481であっても良い。ニュートン後退補間法481を説明するに際して、まずは、差分商を定義する。x=x1,x2に対する1階の差分商f(x1,x2)は、以下の式4となる。
 f(x1,x2) ={f(x2) ― f(x1)}÷ (x2-x1)
 (式4)
 差分商を用いると、ニュートン後退補間法481の関数f(x)は、以下の式5で表される。
 f(x)=f(x1) + (x―x1)f(x1,x2) +・・・・
      + (x―x1)・・・(x-xn-1)f(x1,・・・,xn)
      + (x―x1)・・・(x―xn-1)(x―xn)f(x1,・・・,xn) 
  (式5)
 無制限に補間点数を増やすことはプロセッサなどによる演算量の増加につながり、演算遅延の発生を招く場合もあるため、補間点数は4点ないし5点などの制限をつけても良い。  
 次に、補間点を4点用いて補間を行うニュートン後退補間法481の情報の補間を行う際の動作原理を図20に示す。図20に示すように、ニュートン後退補間法481を使ってフレームに相当する時間Xtの予測点478であるYtを求めるために、Yt-1からYt-4までの4点の補間点477を用いて前述した式5に示す補間関数f(x)を使用して算出するものであっても良い。補間点477は、4点に限らず演算プロセッサなどの能力と必要な予測精度を鑑みた上で決定されることが望ましい。フレーム情報補間手段480では、検出不能時などに格納メモリ471に格納されている情報に欠落がある場合と、動きベクトル予測算出手段484により未来のフレームの検出物体毎の動きベクトル量475を予測して最尤の検出枠を含む位置情報401の中心座標472を予測する場合と、異常検出情報除去手段485と検出情報復元手段486により格納メモリ471に格納されているメモリ情報に対してフレーム間の時間連続性の異常を検出して異常がある場合には情報を復元して格納メモリ471に再記録する場合とに、ニュートン後退補間法481を適用するものであっても良い。なお、高くない予測精度で十分な場合は、ニュートン後退補間法481の代わりに移動平均法などの別の補間方法を適用しても良い。
 このようなニュートン後退補間法481や移動平均法などを有するフレーム情報補間手段480により、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する現在のフレームの推論精度の低下を救済した結果と、過去フレームの結果に対して連続性が補償されるため、過去の検出物体別の履歴や軌跡を正確にかつ滑らかに表示することが可能となる。さらに、物体検出能力やクラス識別能力や追跡能力を向上することが可能となる。
 ここで、異常検出情報除去手段485は、フレーム情報保持手段470の過去フレームft-1からft-sの検出物体No.毎の格納メモリ471に格納されている最尤の検出枠を含む位置情報401の検出枠の幅474と高さ473と中心座標472と、動きベクトル量475と、距離係数476と、最尤の尤度情報402に関して、任意のフレームの格納メモリ471を検出情報復元手段486により、その前後のフレームの格納メモリ471のメモリ情報を補間点477として予測することで対象フレームの格納メモリ471のメモリ情報のフレーム間の時間連続性を検証して異常を検出し、メモリ情報毎に設けられている任意の数値の範囲外で時間連続性に異常を認めた場合は、格納メモリ471から対象となるメモリ情報を除去するとともに、検出情報復元手段486により予測した情報を復元情報として新たに格納メモリ471に記録ものであっても良い。
 ここで、異常検出情報予測除去手段487は、格納メモリ471のフレームftからフレームft-sまでのメモリ情報から動きベクトル予測算出手段484と距離係数算出手段482により予測された未来のフレームの最尤の検出枠を含む位置情報401と、新たに物体検出を実施した際の現在のフレームの検出物体毎の個体識別手段410と画像選択手段450と検出枠補正手段460により算出された最尤の検出枠を含む位置情報401との検出枠の幅474と高さ473と中心座標472とを比較して、メモリ情報毎に設けられている任意の数値の範囲外で時間連続性に異常を認めた場合は、新たに物体検出された対象となる結果を異常値と判断して除外し、検出情報予測復元手段488により動きベクトル予測算出手段484と距離係数算出手段482により予測された未来のフレームの最尤の検出枠を含む位置情報401の対象情報に置き換えて復元し現在のフレームの格納メモリ471に記録することを特徴とするものであっても良い。
 次に、距離係数算出手段482と動きベクトル量算出手段483と動きベクトル予測算出手段484の動作について、図21により説明する。
 ここでは、検出対象が人物1名であり、現在のフレームftと2つの過去フレームft-1とft-2と次の新規の物体検出に相当する未来のフレームft+1の4つのフレーム間での動きベクトル量475と距離係数476と最尤の検出枠を含む位置情報401の検出枠の中心座標472と高さ473と幅474の関係と未来のフレームft+1での算出方法の一例について述べる。最も過去のフレームとなるフレームft―2で検出された最尤の検出枠を含む位置情報401Aは検出枠の中心座標472Aと高さ473Aと幅474Aを含む情報である。この時、カメラなどの撮像機器からの距離により同じ人物を検出した場合でも検出枠の大きさは異なり、距離が遠いほど検出枠は小さくなり、距離が近いほど検出枠は大きくなる。そこで、距離係数算出手段482は、検出枠の下限、つまり、人物であれば足元に当たる座標と画像の下限の距離(画素数もしくは画像の縦方向の長さで正規化したもの)に正規化係数α(αは任意の小数)479を除算することで距離係数476Aを算出し、距離係数476Aと検出枠の高さ473Aと幅474Aをそれぞれ掛け合わせることで検出対象の人物の標準の検出枠の高さ473Zと幅474Zを算出するものであっても良い。正規化係数α479は、カメラやレンズや画像処理手段100およびフレーム制御情報500に則って加工されるモデル前処理手段200のカメラ視野に対する有効画素領域を基準にあらかじめ計算されていることが望ましい。なお、検出枠の下限と画像の下限の距離に応じて線形、もしくは、非線形の特性を持つものであっても良い。また、正規化係数α479と標準の検出枠の高さ473Zと幅474Zの情報は、他の過去フレームft―1と現在のフレームftと未来のフレームft+1にも引き継がれて適用されつつ、フレームft-1とフレームftでも検算を行い、標準の検出枠の高さ473Zと幅474Zがある一定の範囲内に入るように正規化係数α479は、順次補正しても良い。同様に、過去のフレームft―1で検出された最尤の検出枠を含む位置情報401Bは検出枠の中心座標472Bと高さ473Bと幅474Bを含む情報であり距離係数は476Bである。現在のフレームftで検出された最尤の検出枠を含む位置情報401Cは検出枠の中心座標472Cと高さ473Cと幅474Cを含む情報であり距離係数は476Cである。ここまでは、実際の物体検出データに基づいて格納メモリ471に記録されているメモリ情報となる。前述したように、距離係数算出手段482は、フレームft-2からフレームftまでの各種情報をもとに、正規化係数α479と標準の検出枠の高さ473Zと幅474Zの情報の検算を行い、未来のフレームft+1の最尤の検出枠を含む位置情報401Dの高さ473Dと幅474Dの予測をより正確にするために正規化係数α479を補正するものであっても良い。
 ここで、動きベクトル量算出手段483は、検出物体が次のフレームでどの方向に動作するかを示す動きベクトル量475を算出するものあり、過去のフレームft-2の動きベクトル量(VEt-2)475Aは、検出枠の中心座標472Aが、過去のフレームft-1の検出枠の中心座標472Bに移動した際の差分情報を水平方向と垂直方向に算出しベクトル合成したものであっても良い。同様に、過去のフレームft-1の動きベクトル量(VEt-1)475Bは、検出枠の中心座標472Bが、現在のフレームftの検出枠の中心座標472Cに移動した際の差分情報を水平方向と垂直方向に算出しベクトル合成したものであっても良い。このように、動きベクトル量算出手段483は、すでに物体検出を行い算出された結果を元に動きベクトル量475を算出するものであっても良い。一方、動きベクトル予測算出手段484は、ここまでの過去のフレームft-2とft-1の2点を補間点477として、ニュートン後退補間法481や移動平均法により未来のフレームの動きベクトル量475を予測するものであっても良い。本例では過去のフレームを2つまでとしているが、より多くの過去フレームを参照して補間点477を多くすることで予測精度はより高くなる。現在のフレームftの動きベクトル量(VEt)475Cは、まだ未来のフレームft+1の中心座標472Dが不明なため、動きベクトル量算出手段483ではなく動きベクトル予測算出手段484により予測される。まずはこの情報のままフレームftの格納メモリ471に記録された後、次のフレームft+1での物体検出で最尤の検出枠を含む位置情報401Dが正常と判断された際は、動きベクトル量算出手段483により、現在のフレームが新規の検出結果で更新されるタイミングで1つ過去のフレームの動きベクトル量として格納メモリ471の情報を置き換えるものであっても良い。動きベクトル予測算出手段484と距離係数算出手段482により現在のフレームftで予測された動きベクトル量475Cの結果と距離係数476Cをもとに、未来のフレームft+1の最尤の検出枠を含む位置情報401Dの検出枠の中心座標472Dと高さ473Dと幅474Dと距離係数476Dを予測する。つまり、現在のフレームftの検出枠の中心座標472Cと予測された動きベクトル量475Cにより、未来のフレームft+1の検出枠の中心座標472Dは算出され、予測された中心座標472Dを元に、距離係数算出手段482の正規化係数α479と標準の検出枠の高さ473Zと幅474Zにより、距離係数476Dと検出枠を含む位置情報401Dの高さ473Dと幅474Dを予測するものであっても良い。なお、未来のフレームft+1の動きベクトル量(VEt+1)475Dは、新規に物体検出を行ってフレームft+1での検出結果が確定した時点で、過去のフレームの動きベクトル量475からニュートン後退補間法481や移動平均法により予測されるものであっても良い。
 これら動きベクトル量算出手段483と動きベクトル予測算出手段484により、過去のフレームの検出物体毎の動きベクトル量が算出できるため、その結果を元に未来のフレームの動きベクトル量と検出枠の中心座標を予測することが可能となり、予測結果と現在の物体検出モデルとモデル後処理手段によって推論された結果と比較することで、連続性が確保されているか、異常値であるか否かを判断することが可能となる。
 さらに、距離係数算出482を合わせて活用することにより、カメラなどの撮影機器と対象物体との距離情報を把握して動きベクトル量と現在、もしくは、未来のフレームの検出枠の中心座標などを予測することが可能となるため、連続的かつ正確な予測が可能となる。したがって、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する現在のフレームの推論精度の低下を救済した結果に対して、連続性と追従性を正確に補償することで、物体検出能力やクラス識別能力や追跡能力を向上することが可能となる。さらに、現在までのフレームの結果より、未来のフレームの予測も可能となるため、危険を知らせる必要がある場合など、事前に、もしくは、素早く正確に情報を発信することが可能となる。
 さらに、ある実施形態によれば、フレーム情報補間手段480は、フレーム情報保持手段470に保持されている最尤の検出枠を含む位置情報401の検出枠の幅474と高さ473と中心座標472が、フレーム情報補間手段480により補間された最尤の検出枠を含む位置情報401の検出枠の幅474と高さ473と中心座標472に対して、任意の閾値を超過、もしくは、任意の割合を超過してずれていることを検出した場合、もしくは、最尤の尤度情報402の尤度が異常だが救済を施すに値する救済閾値490未満の場合は、異常検出情報除去手段485により異常情報と判定して格納メモリ471からすべての情報を除去し、その際、最尤の尤度情報402の尤度が、正常と判定する正常判定閾値491以下、かつ、異常だが救済を施すに値する救済閾値490以上である場合は最尤の尤度情報402を除く他の情報を除去し、それら除去された情報に対して、検出情報復元手段486により復元された最尤の検出枠を含む位置情報401と最尤の尤度情報402と動きベクトル量475と距離係数476を格納メモリ471に記録して復元することを特徴とするものであっても良い。
 さらに、ある実施形態によれば、フレーム情報補間手段480は、フレーム情報保持手段470の新たに物体検出を実施した際の現在のフレームの検出物体毎の個体識別手段410と画像選択手段450と出枠補正手段460により算出された最尤の検出枠を含む位置情報401の検出枠の幅474と高さ473と中心座標472が、動きベクトル予測算出手段484により予測された未来のフレームの最尤の検出枠を含む位置情報401の検出枠の幅474と高さ473と中心座標472に対して、任意の閾値以下、もしくは、任意の割合以下のずれである場合、かつ、最尤の尤度情報402の尤度が、正常と判定する正常判定閾値491以上の場合は、格納メモリ471に最尤の検出枠を含む位置情報401と最尤の尤度情報402と動きベクトル量475と距離係数476を記録し、最尤の検出枠を含む位置情報401が、任意の閾値を超過、もしくは、任意の割合を超過してずれていることを検出した場合、もしくは、最尤の尤度情報402の尤度が、異常だが救済を施すに値する救済閾値490未満の場合に、異常検出情報予測除去手段487により異常情報と判定してすべての情報を除去し、最尤の尤度情報402の尤度が、正常と判定する正常判定閾値491未満、かつ、異常だが救済を施すに値する救済閾値490以上である場合は最尤の尤度情報402を除く他の情報を除去し、それら除去された情報に対して、動きベクトル予測算出手段484の出力結果である検出枠を含む位置情報401と動きベクトル量475と距離係数476と最尤の尤度情報402を検出情報予測復元手段488により置き換えて格納メモリ471に記録することを特徴とするものであっても良い。
 次に、異常検出情報除去手段485と検出情報復元手段486と異常検出情報予測除去手段487と検出情報予測復元手段488の動作について、図22により説明する。
 図22の上側の異常情報の検出および除去前のフレームft+1からフレームft-2までの4つの画像は、物体検出を実施して得られた推論結果をそのまま格納メモリ471にメモリ情報として記録している情報である。ここで、過去のフレームft-1の最尤の検出枠を含む位置情報401Fと検出枠の幅474Fと高さ473Fと中心座標472Fと距離係数476Fは、物体検出を実施して得られた推論結果そのままと距離係数算出手段482で算出された情報であるが、検出物体対象である人物に対して右下に水平方向と垂直方向ともに約2倍に広がった検出枠となっている。推論結果にズレが生じている影響で最尤の尤度情報402Fの尤度も30%と低い値となっており、これらの結果として、動きベクトル量算出手段483で算出される過去のフレームft-2の動きベクトル量475Eと過去のフレームft-1の動きベクトル量475Fにズレが生じることになり、結果として動きベクトル予測算出手段484により予測された現在のフレームftの動きベクトル量475Gにも予測のズレが生じることになる。また、未来のフレームft+1の最尤の検出枠を含む位置情報401Hと検出枠の幅474Hと高さ473Hと中心座標472Hと距離係数476Hは、未来のフレームft+1に対して新規に物体検出を実施して得られた推論結果と距離係数算出手段482で算出された結果であり、物体検出対象である人物に対して左上側に大きく広がった領域を検出枠として推論した結果となっている。同じく未来のフレームft+1の最尤の検出枠を含む位置情報401Xと検出枠の幅474Xと高さ473Xと中心座標472Xと距離係数476Xは、フレームftで算出された動きベクトル量475Gと距離係数算出手段482により予測されたものであり、フレームft-1の影響が波及した動きベクトル量475Gズレにより物体検出対象である人物に対して、若干右上にずれた位置が検出枠となっている。なお、フレームft-2の最尤の尤度情報402Aの尤度は85%、フレームftの最尤の尤度情報402Cの尤度は98%、フレームft+1の最尤の尤度情報402Dの尤度は60%である。これら図22の上側の異常情報の検出および除去前のフレームft+1からフレームft-2までの4つの画像の推論結果および各種算出結果に対して、異常検出情報除去手段485と検出情報復元手段486と異常検出情報予測除去手段487と検出情報予測復元手段488を適用して、異常情報の検出による除去とニュートン後退補間法481などを活用して補間による復元を実施した結果が、図22の下側の異常情報の検出による除去と補間後のフレームft+1からフレームft-2までの4つの画像となる。これらは、前述した図21で示した推論結果と各種算出結果と等価であり、最尤の尤度情報402の尤度の情報を追加しているものであるため、詳細な説明は割愛する。
 本例では、異常検出情報除去手段485と検出情報復元手段486と異常検出情報予測除去手段487と検出情報予測復元手段488を適用して、異常情報の検出による除去と補間および復元を実施するに際して、異常検出情報除去手段485により異常情報と判定して格納メモリ471からすべての情報を除去して検出情報復元手段486により復元された情報を格納メモリ471に再記録する判定基準を、格納メモリ471に記録されている最尤の検出枠を含む位置情報401の検出枠の高さ473と幅474に対して、検出情報復元手段486により前後のフレームの各種メモリ情報から補間した結果の最尤の検出枠を含む位置情報401の検出枠の高さ473と幅474の比率が、例えばプラスマイナス30%以上の偏差がある場合とする。もう1つの条件として、格納メモリ471に記録されている最尤の尤度情報402の尤度が異常だが救済を施すに値する救済閾値490である50%未満の場合とする。その際、最尤の尤度情報402の尤度が、異常だが救済を施すに値する救済閾値490である50%以上、かつ、正常と判定する正常判定閾値491である80%未満の場合は、最尤の尤度情報402のみは格納メモリ471に残してそれ以外の情報を除去し、検出情報復元手段486により復元された最尤の尤度情報402以外の情報を格納メモリ471に再記録する。一方、前述した最尤の検出枠を含む位置情報401の検出枠の高さ473と幅474の比率が、プラスマイナス30%未満の偏差であり、かつ、最尤の尤度情報402の尤度が正常と判定する正常判定閾値491である80%以上の場合は、格納メモリ471の情報はそのままとする。同様に、異常検出情報予測除去手段487により新規に物体検出を実施した結果と各種算出結果を異常情報と判定して、すべての情報を格納メモリ471に記録する対象から除去して検出情報予測復元手段488により復元された情報を格納メモリ471に記録する判定基準を、動作ベクトル予測算出手段484と距離係数算出手段482により予測された最尤の検出枠を含む位置情報401の検出枠の高さ473と幅474に対して、新規に物体検出を実施した結果の最尤の検出枠を含む位置情報401の検出枠の高さ473と幅474の比率が、例えばプラスマイナス30%以上の偏差がある場合とする。もう1つの条件として、新規に物体検出を実施した結果の最尤の尤度情報402の尤度が異常だが救済を施すに値する救済閾値490である50%未満の場合とする。その際、最尤の尤度情報402の尤度が、異常だが救済を施すに値する救済閾値490である50%以上、かつ、正常と判定する正常判定閾値491である80%未満の場合は、最尤の尤度情報402のみを格納メモリ471に記録してそれ以外の情報は除外し、除外された情報は検出情報予測復元手段488により復元された情報に置き換えて格納メモリ471に記録する。前述した最尤の検出枠を含む位置情報401の検出枠の高さ473と幅474の比率が、プラスマイナス30%未満の偏差であり、かつ、最尤の尤度情報402の尤度が正常と判定する正常判定閾値491である80%以上の場合は、新規に物体検出した推論結果と各種算出結果のすべての情報を格納メモリ471に記録する。異常検出情報除去手段485と異常検出情報予測除去手段487により異常情報と判定する基準や検出情報復元手段486と検出情報予測復元手段488により情報の復元方法を判定する基準は、任意の閾値や任意の割合を閾値とするものであっても良く。中心座標のズレ度合いや、相互の検出枠のIOU値に対して閾値を設けるものであっても良い。
 以上のような方法を使用して、異常情報の検出および除去と情報の補間と復元を行う方法を図22により具体的に説明する。過去のフレームft-2の最尤の尤度情報402Aの尤度も85%で正常判定閾値491の70%以上であり、他の情報も特に異常と判定されなかったため格納メモリ471のメモリ情報はそのまま保持する。同様に、現在のフレームft最尤の尤度情報402Cの尤度も98%で正常判定閾値491の70%以上であり、他の情報も特に異常と判定されなかったため格納メモリ471のメモリ情報はそのまま保持する。一方で、過去のフレームft-1の最尤の尤度情報402Fは30%で救済閾値490の50%未満であり、かつ、格納メモリ471に記録されていた最尤の検出枠を含む位置情報401Fの検出枠の検出枠の高さ473Fと幅474Fは、検出情報復元手段486により前後のフレームの情報から補間により復元された最尤の検出枠を含む位置情報401Bの検出枠の検出枠の高さ473Bと幅474Bに対して比率が約200%以上となり閾値であるプラス側の130%以上になるため格納メモリ471のすべての情報が除去対象となる。したがって、フレームft-1は検出情報復元手段486により復元された情報である最尤の検出枠を含む位置情報401Bの検出枠の検出枠の高さ473Bと幅474Bと中心座標と最尤の尤度情報402Bと距離係数476Bと動きベクトル量475Bを格納メモリ471に再記録する。この時、最尤の検出枠を含む位置情報401Fが本来の検出枠の情報と大きく乖離していた影響でズレが生じていたフレームft-2の動きベクトル量475Eとフレームft-1の動きベクトル量475Fとフレームftの動きベクトル量475Gが動きベクトル量算出手段483と動きベクトル予測算出手段484により、本来の値に近い値として算出され、それぞれ、フレームft-2の動きベクトル量475Aとフレームft-1の動きベクトル量475Bとフレームftの動きベクトル量475Cとして格納メモリ471の情報を上書きするものであっても良い。
 一方で、新規に物体検出を実施した未来のフレームt+1の最尤の尤度情報402Dは、正常判定閾値491の70%以下、かつ、救済閾値490の50%以上であるため、最尤の尤度情報402Dの尤度60%は、そのまま、格納メモリ471に記録される。ところが、新規に物体検出を実施した結果である最尤の検出枠を含む位置情報401Hの検出枠の高さ473Hと幅474Hは、フレームftの移動ベクトル量475Gと距離係数算出手段482により予測された最尤の検出枠を含む位置情報401Xの検出枠の高さ473Xと幅474Xに対して大きくズレが生じており、両者の比率が約150%以上となり閾値であるプラス側の130%以上になり除去対象となるため、検出情報予測復元手段488により復元された情報である最尤の検出枠を含む位置情報401Xの検出枠の検出枠の高さ473Xと幅474Xと中心座標と最尤の尤度情報402Xと距離係数476Xが格納メモリ471に記録される。そこで、前述したフレームft-1の異常除去処理と復元処理により、フレームftの動きベクトル量475Gも本来あるべき情報である動きベクトル量475Cに補正されるため、動きベクトル量475Cと距離係数算出手段482を考慮した検出情報予測復元手段488により復元された情報である最尤の検出枠を含む位置情報401Dの検出枠の検出枠の高さ473Dと幅474Dと中心座標と最尤の尤度情報402Dと距離係数476Dが格納メモリ471に記録されることが望ましい。ここまでの説明は一例の動作処理であり、どの手段をどの閾値判定でどの範囲で適用するかは本例に限定するものではない。
 これら異常検出情報除去手段485と検出情報復元手段486と異常検出情報予測除去手段487と検出情報予測復元手段488により、過去フレームに対して、より正確に異常値を判断して異常値の除去と補間値での復元が可能となる。さらに、新規に物体検出を実施した現在のフレームに対して、より正確に異常値を判断して異常値の除去と補間値での復元が可能となる。したがって、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する過去フレームの推論精度の低下を救済した結果に対して、連続性と追従性をより正確に補償することが可能となるため追跡能力を向上することが可能となる。さらに、タイムラグが少ない状態で検出物体別の履歴や軌跡をより正確にかつ連続的で滑らかに表示することが可能となる。
 次に、前述したフレーム情報保持手段470のフレーム毎の時系列情報を使用して、物体検出の結果である検出枠の位置と領域の正確性と各種算出データの変動率を時系列でとらえて推論精度や検出性能がどの程度安定しているかを指標化するためのトレーサビリティ安定値指標化手段520と、任意のフレームの間で最尤の検出枠を含む位置情報401が異常値と判断され除外対象となった回数を算出する異常検出枠数算出手段530と、任意のフレームの間で最尤の尤度情報402の尤度が任意の閾値以下、もしくは、未検出になる検出NGとなった回数を算出する検出NG数算出手段540について説明する。
 ある実施形態によれば、モデル後処理手段400は、現在のフレームの検出物体毎のフレーム情報保持手段470とフレーム情報補間手段480により算出された最尤の検出枠を含む位置情報401の検出枠の中心座標472のX座標と検出枠の中心座標472のY座標と検出枠の幅474と検出枠の高さ473と検出枠のアスペクト比492が、動きベクトル予測算出手段484により予測された未来のフレームの最尤の検出枠を含む位置情報401の検出枠の中心座標472のX座標と検出枠の中心座標472のY座標と検出枠の幅474と検出枠の高さ473と検出枠のアスペクト比492に対して、各々何%偏差があるか算出し、W(Wは任意の整数)フレーム分平均して、中心X座標平均偏差(%)521と中心Y座標平均偏差(%)522と距離係数算出手段482により距離係数476と正規化係数α479で正規化した枠幅変動率(%)523と距離係数476と正規化係数α479で正規化した枠高さ変動率(%)524と枠アスペクト比変動率(%)525を算出するトレーサビリティ安定値指標化手段520を有することを特徴とするものであっても良い。
 各種偏差を算出する方法や原理と距離係数算出手段482の動作については、一例として、図22に示す異常検出情報除去手段485と検出情報復元手段486と異常検出情報予測除去手段487と検出情報予測復元手段488の動作の説明を参照すること。
 これらの演算は、ハードウェアやソフトウェアを含めた演算プロセッサなどにより実現するものであっても良い。
 これらトレーサビリティ安定値指標化手段520により、物体検出装置の物体検出能力やクラス識別能力や追跡能力がどの程度正確で安定しているか指標化することが可能となる。したがって、現在のフレーム制御情報の位置シフト量や救済のための各種救済モードや状態が適しているかどうかも判断することが可能となる。
 さらに、ある実施形態によれば、モデル後処理手段400は、異常検出情報予測除去手段487により、現在のフレームで異常値と判断されて除去された場合に、異常検出と判断してフレーム中の異常検出となった枠数を異常検出枠数531として出力する異常検出枠数算出手段530を有することを特徴とするものであっても良い。検出対象物体が複数存在した場合は、異常検出枠数531が複数になる可能性もある。異常検出情報予測除去手段487による異常検出の動作については、一例として、図22に示す異常検出情報除去手段485と検出情報復元手段486と異常検出情報予測除去手段487と検出情報予測復元手段488の動作の説明を参照すること。なお、フレームの任意の期間の異常検出枠数531の合計を算出するものであっても良い。
 これら異常検出枠数算出手段530により、物体検出装置で発生した異常検出の数を把握することが可能となり、安定性の指標化の1つとなるため、フレーム制御情報の位置シフト量や救済のための各種救済モードや状態が適しているかどうかも判断することが可能となる。さらに、物体検出モデルとモデル学習辞書のロバスト性や物体検出能力の改良、もしくは、改善の必要性を判断することも可能となる。
 さらに、ある実施形態によれば、モデル後処理手段400は、異常検出情報予測除去手段487により、現在のフレームで最尤の尤度情報402の尤度が救済閾値490未満で異常値と判断されて除去された場合、もしくは、推論の結果が未検出だった場合に、検出不能と判断してフレーム中の検出不能となった回数を検出NG数541として出力する検出NG数算出手段540を有することを特徴とするものであっても良い。検出対象物体が複数存在した場合は、検出NG数541が複数になる可能性もある。異常検出情報予測除去手段487による異常検出と検出不能時の動作については、一例として、図22に示す異常検出情報除去手段485と検出情報復元手段486と異常検出情報予測除去手段487と検出情報予測復元手段488の動作の説明を参照すること。なお、フレームの任意の期間の検出NG数541の合計を算出するものであっても良い。
 これら検出NG数算出手段540により、物体検出装置で発生した検出不能の数を把握することが可能となり、安定性の指標化の1つとなるため、フレーム制御情報の位置シフト量や救済のための各種救済モードや状態が適しているかどうかも判断することが可能となる。さらに、物体検出モデルとモデル学習辞書のロバスト性や物体検出能力の改良、もしくは、改善の必要性を判断することも可能となる。
 次に、フレーム情報保持手段470とフレーム情報補間手段480とトレーサビリティ安定値指標化手段520と異常検出枠数算出手段530と検出NG数算出手段540の各種時系列情報を元に、前述したモデル前処理手段200と物体検出モデル300とモデル後処理手段400の個体識別手段410と画像選択手段450と検出枠補正手段460の一連の動作によるDNNを含むニューラルネットワークの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下を救済して物体検出能力やクラス識別能力を向上する尤度救済時の、位置シフト量510を含むフレーム制御情報500の設定や制御状態をフレーム単位で連続して適正に制御して処理レートの向上と尤度の救済効果を高めるためのステートマシン制御手段550について、図23により説明する。
 ある実施形態によれば、モデル後処理手段400は、フレーム情報保持手段470とフレーム情報補間手段480により算出された最尤の検出枠を含む位置情報401と、検出物体の最尤の尤度情報402の中で最も低い最低尤度493と、トレーサビリティ安定値指標化手段520の各種出力情報である安定値指標526と、異常検出枠数531と、検出NG数541との、1つ以上、もしくは、すべてを使用して次のフレームのフレーム制御情報500の位置シフト量510と位置シフト量510の種類と数の状態をフレーム毎に決定するステートマシン制御手段550を有することを特徴とするものであっても良い。
 さらに、ある実施形態によれば、ステートマシン制御手段550は、図23に示すように、物体検出開始時にフレーム制御情報500の位置シフト量510がゼロ、かつ、位置シフト量の種類がゼロの尤度救済OFFモード551(通常の推論手法)の状態から開始し、現在のフレームの最低尤度493が、任意の第一の尤度閾値494未満であるか(条件A1)、もしくは、トレーサビリティ安定値指標化手段520の出力情報である安定値指標526が各々の第一の不安定閾値496に対して1つでも超過する場合(条件A2)に状態遷移条件A554が成立し、次フレームのフレーム制御情報500の位置シフト量510を1種類の状態で制御する尤度救済最尤2枚モード552とする状態遷移を指示し、フレーム情報保持手段470の検出物体毎の最尤の検出枠を含む位置情報401と、最尤の尤度情報402と、物体検出モデル300のDNNモデル310を含むニューラルネットワークモデルの1つ以上の検出レイヤの情報とを加味して位置シフト量510を決定することを特徴とするものであっても良い。
 ここで、安定化指標526は、W(Wは任意の整数)フレーム分で移動平均された結果としての中心X座標平均偏差(%)521と中心Y座標平均偏差(%)522と枠幅変動率(%)523と枠高さ変動率(%)524と枠アスペクト比変動率(%)525であっても良く、それぞれの指標に対して第一の不安定閾値496の値が設定されるものであっても良い。
 尤度救済最尤2枚モード552は、図13もしくは図15で説明したモデル前処理手段200の位置シフト機能220とフレーム制御情報500と物体検出モデル300とモデル後処理手段400の個体識別手段410と画像選択手段450と検出枠補正手段460の一連の動作による尤度救済モードであっても良い。その際、図13に示す手法を適用する場合は、物体検出モデル300で1フレームの間に2画像の推論を実施する必要があるため、ハードウェアやソフトウェアを含む演算プロセッサなどの性能制限がある場合は、処理時間に応じてフレーム間の処理レートを可変的に設定するものであっても良い。
 次のフレームの尤度救済最尤2枚モード552の1種類で決定される位置シフト量510は、最低尤度493に対応する最尤の検出枠を含む位置情報401の検出枠の高さ473と幅474の乗算により検出対象である物体のサイズを算出し、そのサイズに準じて発生することが想定されるDNNモデル310の検出レイヤのグリッドサイズに依存する特有の格子状に尤度が低下するパターンに有効な位置シフト量510を選定して設定するものであっても良い。また、検出物体が複数であり最低尤度493以外にも第一の尤度閾値494未満になる尤度が複数存在している場合は、各々の物体サイズから類推される有効な位置シフト量510の平均値を設定するか、それまでの統計で最低尤度493の発生頻度が最も多い物体サイズに合わせて設定するものであっても良い。
 なお、本例では、(条件A1)と(条件A2)の論理和により尤度救済モードOFFモード551から次のフレームで尤度救済最尤2枚モード552に状態遷移する方法となるが、本条件に限らず他の遷移条件を設定しても良い。
 これらステートマシン制御手段550と状態遷移条件A554により、画像中で物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下を救済するに際して、物体検出の安定性や検出状態と検出対象物のサイズに対して最適な推論精度が得られるDNNを含むニューラルネットワークの検出レイヤの構造に対する位置シフト量やその種類と数が時系列上で自動的に適用できるため、検出対象物の位置とサイズの揺らぎに対する推論精度の低下に対する救済効果がさらに高まり、より確実に物体検出能力やクラス識別能力や追跡能力を向上することが可能となる。
 さらに、物体検出が良好で安定している状況下では、尤度救済OFFモード551を維持して尤度救済を行なわず、物体検出の性能や安定性が低下していると判断した場合のみ、最低限のシステムへの負荷で尤度低下を救済する尤度救済最尤2枚モード552に状態遷移させて物体検出の性能や安定性の向上を図ることができるため、搭載する演算プロセッサなどの性能に制限を設けた場合でも、効率的に、低レイテンシーとリアルタイム性を維持しつつ、物体検出能力やクラス識別能力や追跡能力を向上することが可能となる。
 さらに、ある実施形態によれば、図23に示すように、ステートマシン制御手段550は、現在のフレームが尤度救済最尤2枚モード552の状態の場合、現在のフレームの最低尤度493が、任意の第二の尤度閾値495未満であるか(条件B1)、もしくは、トレーサビリティ安定値指標化手段520の出力情報である安定値指標526が各々の第二の不安定閾値497に対して1つでも超過する場合か(条件B2)、もしくは、異常検出枠数531が1以上である場合か(条件B3)、検出NG数541が1以上である場合(条件B4)に、状態遷移条件B555が成立し、次フレームのフレーム制御情報500の位置シフト量510を2種類の状態で制御する尤度救済最尤3枚モード553とする状態遷移を指示し、フレーム情報保持手段470の検出物体毎の最尤の検出枠を含む位置情報401と、最尤の尤度情報402と、物体検出モデル300のDNNモデル310を含むニューラルネットワークモデルの1つ以上の検出レイヤの情報とを加味して2種類の位置シフト量510を決定することを特徴とするものであっても良い。
 ここで、尤度の救済の効果と推論性能の改善効率を鑑みると、第二の尤度閾値495は第一の尤度閾値494よりも小さく、第二の不安定閾値497は第一の不安定閾値496よりも大きく設定されることが望ましい。
 尤度救済最尤3枚モード553は、図14で説明したモデル前処理手段200の位置シフト機能220とフレーム制御情報500と物体検出モデル300とモデル後処理手段400の個体識別手段410と画像選択手段450と検出枠補正手段460の一連の動作による尤度救済モードであっても良い。もしくは図15で説明した手法に対して位置シフト量510の種類を2種類に拡張したものであっても良い。その際、図14に示す手法を適用する場合は、物体検出モデル300で1フレームの間に3画像の推論を実施する必要があるため、ハードウェアやソフトウェアを含む演算プロセッサなどの性能制限がある場合は、処理時間に応じてフレーム間の処理レートを可変的に設定するものであっても良い。
 次のフレームの尤度救済最尤3枚モード553の2種類で決定される位置シフト量510は、最低尤度493に対応する最尤の検出枠を含む位置情報401の検出枠の高さ473と幅474の乗算により検出対象である物体のサイズを算出し、そのサイズに準じて発生することが想定されるDNNモデル310の検出レイヤのグリッドサイズに依存する特有の格子状に尤度が低下するパターンに有効な位置シフト量510を1種類目として選定して設定するものであっても良い。位置シフト量510の2種類目は、検出物体が複数であり最低尤度493以外にも第二の尤度閾値495未満になる尤度が複数存在している場合は、各々の物体サイズで1種類目を除いて次に有効となる位置シフト量510を設定するものであっても良い。また、検出物体が複数であり、かつ、第二の尤度閾値495未満になる尤度が複数存在している場合は、各々の物体サイズから類推される有効な位置シフト量510の種類が3種類以上存在する場合は、それまでの統計で最低尤度493の発生頻度が最も多い物体サイズに有効な位置シフト量510の上位2種類を設定するものであっても良い。もしくは、有効な位置シフト量510の上位から2番目以降の平均値を2種類目の位置シフト量510として設定するものであっても良い。
 なお、本例では、(条件B1)と(条件B2)と(条件B3)と(条件B4)の論理和により尤度救済最尤2枚モード552から次のフレームで尤度救済最尤3枚モード553に状態遷移する方法となるが、本条件に限らず他の遷移条件を設定しても良い。
 これらステートマシン制御手段550と状態遷移条件B555により、物体検出の性能や安定性が非常に低下していると判断した場合のみ、システムへの負荷を増やしてでも尤度低下を救済する尤度救済最尤3枚モード553に状態遷移させて物体検出の性能や安定性の向上を図ることができるため、低レイテンシーとリアルタイム性の維持と、物体検出能力やクラス識別能力や追跡能力の維持とのトレードオフを最適かつ効率的に判断して適用することが可能となる。
 さらに、ある実施形態によれば、図23に示すように、ステートマシン制御手段550は、現在のフレームが尤度救済最尤3枚モード553の状態の場合、現在のフレームの最低尤度493が任意の第二の尤度閾値495以上であり(条件C1)、トレーサビリティ安定値指標化手段520の出力情報である安定値指標526が各々の第二の不安定閾値497のすべてに対して以下であり(条件C2)、異常検出枠数531がゼロであり(条件C3)、検出NG数541がゼロであり(条件C4)、それらすべての条件に合致する場合に、状態遷移条件C556が成立し、次フレームのフレーム制御情報500の位置シフト量510を1種類の状態で制御する尤度救済最尤2枚モード552とする状態遷移を指示し、フレーム情報保持手段470の検出物体毎の最尤の検出枠を含む位置情報401と、最尤の尤度情報402と、物体検出モデル300のDNNモデル310を含むニューラルネットワークモデルの1つ以上の検出レイヤの情報とを加味して位置シフト量510を決定することを特徴とするものであっても良い。
 次のフレームの尤度救済最尤2枚モード552の1種類で決定される位置シフト量510は、前述の状態遷移条件A554と同じ考え方の下で設定されるものであっても良い。
 なお、本例では、(条件C1)と(条件C2)と(条件C3)と(条件C4)の論理積により尤度救済最尤3枚モード553から次のフレームで尤度救済最尤2枚モード552に状態遷移する方法となるが、本条件に限らず他の遷移条件を設定しても良い。
 これらステートマシン制御手段550と状態遷移条件C556により、物体検出の性能や安定性が非常に低下している状態から良好な状態に遷移したと判断すれば、システムへの負荷を軽減して尤度低下を救済する尤度救済最尤2枚モード552に状態遷移させることで、搭載する演算プロセッサなどの性能に制限を設けた場合でも、物体検出能力やクラス識別能力や追跡能力の維持を図りつつ、低レイテンシーとリアルタイム性を実現することが可能となる。
 さらに、ある実施形態によれば、図23に示すように、ステートマシン制御手段550は、現在のフレームが尤度救済最尤2枚モード552の状態の場合、現在のフレームの最低尤度493が任意の第一の尤度閾値494以上であり(条件D1)、トレーサビリティ安定値指標化手段520の出力情報である安定値指標526が各々の第一の不安定閾値496のすべてに対して以下であり(条件D2)、異常検出枠数531がゼロであり(条件D3)、検出NG数541がゼロであり(条件D4)、それらすべての条件に合致する場合に、状態遷移条件D557が成立し、次フレームのフレーム制御情報500の位置シフト量510を位置シフト量510がゼロ、かつ、位置シフト量510の種類がゼロの尤度救済OFFモード551の状態とすることを特徴とするものであっても良い。
 なお、本例では、(条件D1)と(条件D2)と(条件D3)と(条件D4)の論理積により尤度救済最尤2枚モード552から次のフレームで尤度救済OFFモード551に状態遷移する方法となるが、本条件に限らず他の遷移条件を設定しても良い。
 これらステートマシン制御手段550と状態遷移条件D557により、物体検出の性能や安定性が低下している状態から良好な状態に遷移したと判断すれば、システムへの負荷を軽減して尤度低下を救済しない尤度救済OFFモード551に状態遷移させることで、搭載する演算プロセッサなどの性能に制限を設けた場合でも、物体検出能力やクラス識別能力や追跡能力の維持を図りつつ、より効率的に低レイテンシーとリアルタイム性も実現することが可能となる。
 次に、尤度の救済を実施し、各種異常値の除去や補間による復元を施した推論結果に対して、一般的な物体検出の指標値であるAP(AveragePrecision)値651、mAP(mean Average Precision)値652、Recall655、Precision654、IOU値653を算出するための第二のmAP算出手段650について、図1により説明する。
 ある実施形態によれば、モデル後処理手段400は、図1に示す表示およびデータ格納手段120や学習湯素材データベース格納手段610に存在するバリデーション画像に対して、アノテーション手段620により生成された検出物体毎に正解となる検出枠を含む位置情報621と正解となるクラス識別情報622とが存在する場合は、フレーム情報保持手段470の現在のフレームの検出物体毎の最尤の検出枠を含む位置情報401と正解となる検出枠を含む位置情報621の領域がどれぐらい重なっているかを表す指標である対正解枠IOU値498と、フレーム情報保持手段470の現在のフレームの検出物体毎の最尤の尤度情報402と正解となるクラス識別情報622を比較した結果の真偽の情報と、最尤の尤度情報402の尤度を算出し、第二のmAP算出手段650により、バリデーション画像に対するAP値651、mAP値652、Recall655、Precision654などの指標を算出することを特徴とするものであっても良い。IOU値653は対正解枠IOU値498の値をこのまま出力するものであっても良い。
 この第二のmAP算出手段650により、推論精度の低下を救済して物体検出能力やクラス識別能力や追跡能力を向上した結果に基づいて、物体検出モデルの性能とモデル学習辞書の汎用性やロバスト性の弱点や強化方針を正確に分析するための性能を指標化することが可能となる。したがって、推論性能の強化のみでは対処できないモデル学習辞書の再学習の必要性を判断して強化することが可能となるため、物体検出装置の物体検出能力やクラス識別能力や追跡能力の最大化を図ることが可能となる。
 (実施形態2)
 図24は、本発明の実施形態2による物体検出装置を示すブロック図である。ここで、画像処理手段100と画像出力制御手段110と表示およびデータ格納手段120とモデル前処理手段200と物体検出モデル300とモデル後処理手段400とロバスト性検証手段800、および、それらに備えられ各手段、各機能、各工程、各ステップ、および、それらを実現するための各装置、各方法、各プログラムなどは、実施形態1と同じものを使用するため、実施形態2の文中での説明は、一部を除いて省略する。なお、実施形態1で述べた他のある実施形態の各手段、各機能、各工程、各ステップ、各装置、各方法、および、各プログラムなども使用して実現しても良い。
 実施形態2は、前述した実施形態1の構成に加えて、物体検出モデル300の構成要素の1つであるモデル学習辞書320の作成や再学習のための辞書学習手段600を搭載していることが特徴である。また、次に、実施形態1で説明したフレーム制御情報500とモデル前処理手段200と物体検出モデル300とモデル後処理手段400の一連の尤度の救済と推論性能の改善と安定化の手法に対する別の実施形態である、モデル前処理手段200の画面分割機能250により物体検出を実施する画面を分割して、特に、推論処理のレイテンシーや処理時間の短縮を行う手段に関しても、辞書学習手段600による深層学習との重要な関連性を含め説明する。
 なお、後述する本発明の実施形態2に記載している各手段、各機能、および、各工程は、それぞれをステップに、各装置は、それぞれを方法に置き換えても良い。また、本発明の実施形態2に記載している各手段と各装置は、コンピュータにより機能させるプログラムで実現しても良い。
 まずは、物体検出モデル300の構成要素の1つであるモデル学習辞書320を作成するための深層学習である辞書学習手段600の一例について説明する。
 最初に、深層学習のための素材データ(画像データ)が保存されている学習用素材データベース格納手段610から、使用目的に適切と考えられる学習用素材データを抽出する。学習用素材データベース格納手段610に格納されている学習のための素材データは、例えば、COCO(Common Object in Context)やPascalVOC Datasetなどの大規模なオープンソースのデータセットを活用したもの
でも良い。また、使用用途に応じて必要となる画像を、例えば、画像処理手段100から画像出力制御手段110を使って表示およびデータ格納手段120に格納した画像データを活用する場合もある。
 次に、学習用素材データベース格納手段610から抽出された学習用素材データに対して、アノテーション手段620によって、クラス識別情報と正解枠であるgroundtruth BBoxを付加して教師ありデータを作成する。ここで、COCOやPascalVOC Datasetなどのオープンソースのデータセットは、すでにアノテーションの処理が施されているデータがあれば、アノテーション手段620を使わず直接、教師ありデータとして活用しても良い。
 次に、教師ありデータは、Augment手段630によって、汎用性およびロバスト性を強化するために学習用画像631として水増しする。ここで、Augment手段630は、例えば、画像を水平方向と垂直方向の任意の位置にシフトする手段や、任意の倍率に拡大や縮小する手段や、任意の角度に回転させるための手段や、アスペクト比を変更する手段や、歪補正や円筒変換などを行うためのデワープ手段を備えており、使用目的に応じて、各種手段を組み合わせて画像を水増しするものである。
 次に、Augment手段630によって水増しされた学習用画像631を深層学習手段640に入力して、DNNモデル310の重み係数を算出し、算出された重み係数を、例えば、ONNXフォーマットに変換してモデル学習辞書320を作成する。なお、ONNXフォーマット以外に変換してモデル学習辞書320を作成しても良い。ここで、深層学習手段640は、例えば、DNNモデル310にYOLOを適用した際は、darknetと呼ばれるオープンソースの学習環境と演算プロセッサ(パーソナルコンピュータやスーパーコンピュータを含む)により実現するものである。darknetには、ハイパーパラメータと呼ばれる学習用パラメータが存在しており、使用用途や目的に応じて、適切なハイパーパラメータを設定して、Augment手段630と合わせて、汎用性やロバスト性を強化することも可能である。深層学習手段640により作成されたモデル学習辞書320を物体検出モデル300に反映することで、画像内の物体の位置検出やクラス識別を行うことが可能となる。なお、深層学習手段640は、電子回路により構成されるものであっても良い。なお、適用するDNNモデル310に応じて、プログラム言語により構成された学習環境を使っても良い。
 次に、画像内の物体の位置検出やクラス識別を行うモデルのモデル学習辞書320のロバスト性や強化方針を分析するための物体検出における性能の指標化に関する手段の一例について説明する。
 前述した、学習用素材データベース格納手段610から、使用目的に対する必要な検出精度や検出性能や汎用性、および、ロバスト性を検証するためのバリデーション用素材データを抽出する。学習用素材データベース格納手段610に格納されているバリデーションのための画像データは、例えば、COCO(Common Object in Context)やPascalVOC Datasetなどの大規模なオープンソースのバリデーション用の画像データセットを活用したものでも良い。また、使用目的に対する必要な検出精度や検出性能や汎用性、および、ロバスト性を検証するための画像を、例えば、画像処理手段100から画像出力制御手段110を使って表示およびデータ格納手段120に格納した画像データを活用する場合もある。
 次に、学習用素材データベース格納手段610から抽出されたバリデーション用素材データに対して、アノテーション手段620によって、クラス識別情報と正解枠であるgroundtruth BBoxを付加してバリデーション用データ623を作成する。ここで、COCOやPascalVOC Datasetなどのオープンソースのデータセットは、すでにアノテーションの処理が施されているデータがあれば、アノテーション手段620を使わず直接、バリデーション用データ623として活用しても良い。
 次に、正解となる検出枠を含む位置情報621と正解となるクラス識別情報622を含むバリデーション用データ623を、実施形態1で述べたフレーム制御情報500に則ったモデル前処理手段200と物体検出モデル300とモデル後処理手段400の一連の尤度を救済する手段に入力して得られた各種結果を第二のmAP算出手段650に入力して、正解枠であるgroundtruth BBoxと推論(予測)した結果として算出されるPredictedBBox(予測したBBox)を比較したIOU値653の算出と、すべてのバリデーション用データ623に対するすべての予測結果の内、正しくIOU値653が任意の閾値以上で予測できた割合を示すPrecision654の算出と、実際の正解結果の内、IOU値653が任意の閾値以上で正解結果と近い位置のBBoxを予測できた割合を示すRecall655の算出と、前述した物体検出の精度や性能を比較するための指標としての各クラス別のAP(AveragePrecision)値651と、全クラスを平均化したmAP(mean Average Precision)値652を算出するものであっても良い。(例えば、非特許文献2参照)ここで、第二のmAP算出手段650は、例えば、DNNモデル310にYOLOを適用した際は、darknetと呼ばれるオープンソースの推論環境と演算プロセッサ(パーソナルコンピュータやスーパーコンピュータを含む)を備えたものであり、実施形態1で説明した尤度の救済手段と時系列データからの異常値の除去や情報の復元が可能な機能やプログラムや性能を有していることが望ましい。
 これら、実施形態1と実施形態2で述べた画像処理手段100とモデル前処理手段200と物体検出モデル300とモデル後処理手段400とロバスト性検証手段800と学習用素材データベース格納手段610とアノテーション手段620と第二のmAP算出手段650によりIOU値653とPrecision654とRecall655とAP値651とmAP値652を生成する一連の手段が、画像内の物体の位置検出やクラス識別を行うモデルのモデル学習辞書のロバスト性や強化方針を分析するための性能指標となる。
 ある実施形態によれば、実施形態1で述べたロバスト性検証手段800および確率統計演算手段810により、フレーム制御情報500のパラメータ別に、検出物体毎の尤度分布830などの抽出が可能となることにより、深層学習などにより作成されるモデル学習辞書320に起因する汎用性や各種変動条件に対するロバスト性の弱点や強化方針を、DNNモデルを含むニューラルネットワークそのものが潜在的に有する課題と切り分けて、より正確に把握することが可能となる。したがって、深層学習などにより効果的な学習用画像データや教師ありデータを適用できるため、モデル学習辞書320の汎用性やロバスト性の強化を図ることが可能となる。
 ある実施形態によれば、確率統計演算手段810によって算出された尤度分布830、平均尤度801、尤度のヒストグラム840、尤度の標準偏差802、最大尤度803、最小尤度804、IOU値805などに基づき分析した結果、モデル学習辞書320が性能不十分であると判断した場合は、その結果に基づいて、学習画像を準備して、内蔵もしくは外部の辞書学習手段600により再学習することを特徴とするものであっても良い。
 これら、ある実施形態の物体検出における性能指標を使用して、物体検出モデル300とモデル学習辞書320の検出性能、検出精度、および、バラつきや不完全性などの汎用性およびロバスト性の課題を検証した結果を踏まえて、物体検出モデル300の改良、および、解決及び強化する方向に辞書学習手段600により繰り返し深層学習させることで、より検出能力が高く、各種変動条件に対しても汎用性とロバスト性が高い物体検出を実現することが可能となる。
 次に、実施形態1で説明したフレーム制御情報500とモデル前処理手段200と物体検出モデル300とモデル後処理手段400の一連の尤度の救済と推論性能の改善と安定化の手法に対する別の実施形態である、モデル前処理手段200の画面分割機能250により物体検出を実施する画面を分割して、特に、推論処理のレイテンシーや処理時間の短縮を行う手段に関して、図25により説明する。
 図25Aは、モデル入力画像である基準画像1D770の水平方向の画素数であるXiを128に、垂直方向の画素数であるYiを128に設定している場合であり、物体検出モデル300は、図3Aに示すYOLOモデル360において第一の検出レイヤ361のグリッドセルが4×4、第二の検出レイヤ362のグリッドセルが8×8、第三の検出レイヤ363のグリッドセルが16×16で構成されたDNNモデルにより推論を実施するものとする。
 ある実施形態によれば、モデル前処理手段200は、基準画像221に対して、フレーム制御情報500の画面分割パラメータ512に則って、適切な検出範囲を切り出すクロップ機能240と物体検出モデル300の入力画面を2つに分割した領域にクロップ機能240により切り出した画像を垂直方向と水平方向にリサイズして貼り付ける画面分割機能250を有し、画面分割機能250により画面分割された一方を第一の分割後基準画像224とし、もう一方を第二の分割後基準画像225とし、第一の分割後基準画像224をフレーム制御情報500の位置シフト量510に則って、第一の分割後基準画像224に水平方向にGピクセル(Gは任意の小数)および垂直方向にHピクセル(Hは任意の小数)の位置シフトを施した第一の分割後位置シフト画像226を生成し、第二の分割後基準画像225と第一の分割後位置シフト画像226をフレーム毎に物体検出モデル300に入力するモデル前処理手段200と、モデル前処理手段200から出力されたフレーム毎の第二の分割後基準画像225と第一の分割後位置シフト画像226に対して物体位置とクラス識別と尤度を推論するモデル学習辞書320を含む物体検出モデル300と、物体検出モデル300の推論結果である検出物体毎の第二の分割後基準画像225の補正前の検出枠を含む位置情報301と第二の分割後基準画像225の補正前の尤度情報302と、第一の分割後位置シフト画像226の補正前の検出枠を含む位置情報301と第一の分割後位置シフト画像226の補正前の尤度情報302とをモデル後処理手段400の個体識別手段410に入力して個体識別を行った後の、第二の分割後基準画像225の個体識別後の尤度情報404と第一の分割後位置シフト画像226の個体識別後の尤度情報404とを比較して最大となる方の入力画像と推論結果を選択してフレーム毎に出力する画像選択手段450と、画像選択手段450により第二の分割後基準画像225の推論結果を選択した場合は、フレーム制御情報500の画面分割パラメータ512に則って、元の基準画像221に相当するように位置とサイズの逆補正を施した検出枠を含む位置情報を出力し、画像選択手段450により第一の分割後位置シフト画像226の推論結果を選択した場合は、フレーム制御情報500の位置シフト量510と画面分割パラメータ512に則って、モデル前処理手段200の生成時とは逆方向に位置シフトを施した後、元の基準画像221に相当するように位置とサイズの逆補正を施した検出枠を含む位置情報を出力する検出枠補正手段460を備えることを特徴とするものであっても良い。
 さらに、ある実施形態によれば、フレーム制御情報500の位置シフト量510は、フレーム制御情報500の画面分割パラメータ512に則って、クロップ機能240と画面分割機能250により画面分割された一方の第一の分割後基準画像224の垂直方向と水平方向のピクセル数を、DNNモデル310を含むニューラルネットワークモデルの1つ以上の検出レイヤ毎の水平方向と垂直方向のグリッドセルサイズで除算した値の1/2ピクセル値か、それに近似するピクセル値で決定されることを特徴とするものであっても良い。
 さらに、ある実施形態によれば、モデル前処理手段200は、第一の分割後基準画像224、および、第二の分割後基準画像225が、DNNモデル310を含むニューラルネットワークモデルの1つ以上の検出レイヤ毎の水平方向と垂直方向のグリッドセルサイズで除算した際に、水平方向も垂直方向も割り切れるように、フレーム制御情報500の画面分割パラメータ512を設定することを特徴とするものであっても良い。
 図25Aに示すように、基準画像1D770は、検出物体として人物775が存在する。基準画像1D770の中で物体検出を実施する領域を点線の範囲785とする。本例では、尤度を救済する方法として、物体検出モデル300に入力する画面を上下で2分割する方法を適用する。まずは、モデル前処理手段200のリサイズ機能230とクロップ機能240により範囲785の画像を水平方向に128ピクセル、垂直方向に64ピクセルになるようにリサイズして切り出しを行う。リサイズおよび切り出し後の画像が加工画像771となり、その際のリサイズパラメータとクロップパラメータが画面分割パラメータ512となる。次に、画面分割機能250により加工画像771を上側の第一の分割後基準画像1U772と下側の第二の分割後基準画像1L773として貼り付けて物体検出モデル300の入力画像を生成する。この時、第一の分割後基準画像1U772と第二の分割後基準画像1L773の水平方向の画素サイズ128ピクセルと垂直方向の画素サイズ64ピクセルは、それぞれ、本例のYOLOモデル360の第一の検出レイヤ361のグリッドセル4×4と、第二の検出レイヤ362のグリッドセル8×8と、第三の検出レイヤ363のグリッドセル16×16で除算した際に、水平方向も垂直方向も割り切れる画素数になっている。これにより、分割された画像のそれぞれに対して、同じ条件で画像中の物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下を救済することが可能となる。
 次に、尤度の救済と推論性能を向上するに際して、モデル前処理手段200の位置シフト機能220により第一の分割後基準画像1U772から第一の分割後位置シフト画像1US774を生成する際に参照するフレーム制御情報500の位置シフト量510を選定する。ここで、加工画像771の人物776はリサイズされた影響で本来の人物775に比べるとサイズも小さくなりアスペクト比も変化する。結果として物体サイズとして中サイズから小サイズに分類されるため、特定の尤度が部分的に低下する格子状のパターンは、水平および垂直に約8ピクセルの大きさを示し、グリッドセルが16×16である第三の検出レイヤ363によって推論した結果が最も強く反映されているとする。ここで、グリッドセルの1つのセルのサイズは、水平方向に8ピクセル(=128÷16)であり、垂直方向に8ピクセル(=128÷16)であることから、それぞれの1/2に相当する値である4ピクセルをフレーム制御情報500の位置シフト量510の水平方向の位置シフト量(G=4)と垂直方向の位置シフト量(H=4)に設定して、モデル前処理手段200の位置シフト機能220により第一の分割後基準画像1U772から左方向と上方向に4ピクセルシフトして第一の分割後位置シフト画像1US774を生成する。この時、物体検出モデル300とモデル後処理手段400の個体識別手段410により算出された図25Aの第一の分割後位置シフト画像1US772の人物776の個体識別後の尤度情報の尤度779は、93%であり、第二の分割後基準画像1L773の人物776の個体識別後の尤度情報の尤度780は、59%とする。この時、第二の分割後基準画像1L773の尤度780(59%)は、約8ピクセルの特定の格子パターン状に尤度が低下する場合の尤度が低下する位置にあり、第一の分割後位置シフト画像1US774の尤度779(93%)は、約8ピクセルの特定の格子パターンの尤度が低下する位置から約1/2に相当する水平方向と垂直方向に4ピクセルシフトした場所に位置するため尤度低下の影響を受けていない。したがって、本例では、フレーム制御情報500の位置シフト量510の水平方向の位置シフト量(G)と垂直方向の位置シフト量(H)をそれぞれ4に設定することが尤度低下を救済する際に有用となる。
 なお、第一の分割後位置シフト画像1US774を生成するに際して、加工により発生する有効画像が存在しない余白部分794は、有効画像の平均輝度レベルと等しい単一色で一様に塗りつぶして画像を生成することを特徴とするものであっても良い。
 次に、実際に尤度低下を救済するためのモデル後処理手段400について、図25Bを使用して説明する。
 図25Bでは、一例として、動画に対してフレーム1からフレーム4までを順次推論処理をしていく方法を示す。ここで、各フレーム間のフレームレートは、物体検出モデル300による1つの基準画像1D770に相当する推論処理時間を元に決定されるものであってもよい。1フレームあたり1画像の推論処理を実施するのみで良いため、ハードウェアやソフトウェアを含め演算プロセッサの性能に制限があった場合でも物体検出処理時間を短縮し、レイテンシーの低減やフレームレートのアップを図ることが可能となる。画像処理手段100の出力処理により、最初のフレーム1対して画像が生成された後、フレーム制御情報500の画面分割パラメータ512と水平方向と垂直方向にそれぞれ4ピクセル(G=4、H=4)の位置シフト量510に則って、モデル前処理手段200の位置シフト機能220とリサイズ機能230とクロップ機能240と画面分割機能250により図25Aの第一の分割後位置シフト画像1US4774と第二の分割後基準画像1L773を生成する。同様にフレーム2に対しては第一の分割後位置シフト画像2USと第二の分割後基準画像2Lを、フレーム3に対しては第一の分割後位置シフト画像3USと第二の分割後基準画像3Lを、フレーム4に対しては第一の分割後位置シフト画像4USと第二の分割後基準画像4Lを生成する。フレーム1に対して生成された第一の分割後位置シフト画像1US774と第二の分割後基準画像1L773は、物体検出モデル300に入力されて、第一の分割後位置シフト画像1US774に対する推論結果である1US検出結果781と第二の分割後基準画像1L773に対する推論結果である1L検出結果782を出力する。これらの出力結果は、疑似出力を含む補正前の検出枠を含む位置情報301と補正前の尤度情報302に相当する。同様に、フレーム2に対しては2US検出結果と2L検出結果を、フレーム3に対しては3US検出結果と3L検出結果を、フレーム4に対しては4US検出結果と4L検出結果を算出する。フレーム1に対して算出された1US検出結果781と1L検出結果782は、モデル後処理手段400の個体識別手段410により第一の分割後位置シフト画像1US774に対する検出物体毎に固有の1US識別結果783と第二の分割後基準画像1L773に対する1L識別結果784に識別されて出力される。これらの出力結果は、個体識別後の検出枠を含む位置情報403と個体識別後の尤度情報404を含むものであり、図25Aの個体識別後の検出枠を含む位置情報777と778、および、個体識別後の尤度情報の尤度779(93%)と780(59%)に相当する。同様に、フレーム2に対しては2US識別結果と2L識別結果を、フレーム3に対しては3US識別結果と3L識別結果を、フレーム4に対しては4US識別結果と4L識別結果を算出する。フレーム1に対して算出された1US識別結果783と1L識別結果784は、モデル後処理手段400の画像選択手段450により、第一の分割後位置シフト画像1US774に対する尤度779(93%)と第二の分割後基準画像1L773に対する尤度780(59%)を比較して、最大値となる尤度779(93%)と第一の分割後位置シフト画像1US774を選択する。したがって、尤度救済の結果である最尤の出力結果として、最尤の尤度情報402は、第一の分割後位置シフト画像1US774に対する尤度779(93%)とクラス識別情報を出力する。一方、最尤の検出枠を含む位置情報401に関しては、画像選択手段450により第一の分割後位置シフト画像1US774側が選択されたことで、図25Aに示す個体識別後の検出枠を含む位置情報777は、本来の基準画像1D770に対して画面分割によるリサイズと切り出し時と貼り付け時のオフセットと位置シフトを施した分だけズレが生じていることになる。したがって、画像選択手段450により第一の分割後位置シフト画像1US774が選択された場合は、検出枠補正手段460により、フレーム制御情報500の画面分割パラメータ512に則ってリサイズと切り出し時と貼り付け時のオフセットの逆方向への処理を施し、かつ、水平方向と垂直方向にそれぞれ4ピクセル(G=4、H=4)の位置シフト量510に則って、モデル前処理手段200の位置シフト機能220で位置シフトした方向とは逆方向に、右方向と下方向にそれぞれ4ピクセル分位置をシフトした結果を尤度救済の結果である最尤の検出枠を含む位置情報401として出力する。その際、画像選択手段450により選択された画像が第二の分割後基準画像1L773であった場合は、1L識別結果784に対して画面分割パラメータ512に則ってリサイズと切り出し時と貼り付け時のオフセットの逆方向への処理を施した結果をそれぞれ最尤の検出枠を含む位置情報401と最尤の尤度情報402として出力する。同様に、フレーム2からフレーム4に対しても画像選択手段450と検出枠補正手段460により最尤の検出枠を含む位置情報401と最尤の尤度情報402を算出する。なお、最尤の検出枠を含む位置情報401と最尤の尤度情報402は、画像出力制御手段110とロバスト性検証手段800に入力されるものであっても良い。ここで、最尤の検出枠を含む位置情報401は、例えば、検出枠の中心座標、水平方向の幅、垂直方向の高さを含む情報であり、最尤の尤度情報402は、例えば、検出精度を示す尤度とクラス識別情報である。また、算出された最尤の検出枠を含む位置情報401と尤の尤度情報402を元に、前述の実施形態1で説明したフレーム保持手段470とフレーム情報補間手段480とトレーサビリティ安定値指標化手段520と異常検出枠数算出手段530と検出NG数算出手段540とステートマシン制御手段550を適用して、時系列情報として異常値の除去や各種予測手段と復元による情報の復元や制御の安定値の指標化によるステートマシン制御を適用して、推論性能の向上や安定化と追跡能力の向上を図るものであっても良い。
 また、本例では、画面分割パラメータ512と画面分割機能250を上下に2面で分割する場合を示したが、上下以外の画面分割の方法を適用するものであっても良い。さらに、3つ以上に画面分割し、位置シフト量510を2種類以上適用するように拡張したものであっても良い。
 これら画面分割により尤度を救済する方法により、画像中でDNNを含むニューラルネットワークの検出レイヤの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下を救済する効果が高まり、より確実に物体検出能力やクラス識別能力を向上することが可能となり、さらに、フレーム毎に推論する画像を1つに限定することができるため、物体検出モデルの推論時の処理負荷を軽減ことが可能となる。したがって、検出対象物が動いている状態で物体検出を行う場合や、搭載する演算プロセッサなどの性能に制限を設けた場合でも、物体検出の精度や性能を担保しつつ、低レイテンシーとリアルタイム性を実現することが可能となる。
 さらに、ある実施形態によれば、個体識別手段410は、フレーム制御情報500の画面分割パラメータ512に則って、画面分割の加工を施した際は、第二の分割後基準画像225と第一の分割後位置シフト画像226の境界線上で検出された補正前の検出枠を含む位置情報301は、第二の分割後基準画像225と第一の分割後位置シフト画像226のいずれの領域に広く分布しているか判定し、広く分布している側の領域内の補正前の検出枠を含む位置情報301を領域内で切り出して結果として残留させ、一方の領域側にはみ出した補正前の検出枠の位置情報301は、切り取って削除することを特徴とするものであっても良い。
 これにより、分割境界上の異常データの排除と検出物体毎に検出枠を含む位置情報と尤度情報を適した情報に個体判別、および、補正することができるため、画像中の物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下をより正確に救済することが可能となる。
 さらに、ある実施形態によれば、フレーム制御情報500の位置シフト量510は、フレーム制御情報500の画面分割パラメータ512に則って、クロップ機能240と画面分割機能250により画面分割された一方の第一の分割後基準画像224の垂直方向と水平方向のピクセル数を、DNNモデル310を含むニューラルネットワークモデルの1つ以上の検出レイヤ毎の水平方向と垂直方向のグリッドセルサイズで除算した値の1/2ピクセル値か、それに近似するピクセル値で決定された中で、検出対象物のサイズに依存して検出精度、もしくは、検出頻度が高くなる検出レイヤに対応する位置シフト量510の順番にモデル前処理手段200とモデル後処理手段400で適用されることを特徴とするものであっても良い。例えば、図25においては、ステートマシン制御手段550により検出された物体サイズに応じて次のフレームに対して設定するフレーム制御情報500の位置シフト量510を4(G=4、H=4)と8(G=8、H=8)を切り替えるようなものであっても良い。
 さらに、ある実施形態によれば、フレーム制御情報500の位置シフト量510の種類が2つ以上の場合は、複数の位置シフト量510の平均値を位置シフト量510として使用することを特徴とするものであっても良い。例えば、図25においては、ステートマシン制御手段550により検出された物体サイズに応じて次のフレームに対して設定するフレーム制御情報500の位置シフト量510を4ピクセルと8ピクセルの平均値である6ピクセル(G=6、H=6)に設定するようなものであっても良い。
 これにより、画像中の検出対象物のサイズに対して最適な推論精度が得られるDNNを含むニューラルネットワークの検出レイヤが複数存在した場合でも、より有効な位置シフト量や平均的な位置シフト量が適用できるため、検出対象物の位置とサイズの揺らぎに対する推論精度の低下に対する救済効果がさらに高まり、より確実に物体検出能力やクラス識別能力を向上することが可能となる。
 さらに、ある実施形態によれば、モデル前処理手段200が、フレーム制御情報500の画面分割パラメータ512に則って、画像を分割する場合は、画面分割パラメータ512に則って生成された学習画像にアノテーション手段620により正解枠データを付加し、前述した内蔵もしくは外部の辞書学習手段600によりモデル学習辞書320を再学習することを特徴とするものであっても良い。
 さらに、ある実施形態によれば、アノテーション手段620により生成された検出物体毎に正解となる検出枠を含む位置情報621と正解となるクラス識別情報622とが存在する場合は、フレーム情報保持手段470の現在のフレームの検出物体毎の最尤の検出枠を含む位置情報401と正解となる検出枠を含む位置情報621の領域がどれぐらい重なっているかを表す指標である対正解枠IOU値498と、フレーム情報保持手段470の現在のフレームの検出物体毎の最尤の尤度情報402と正解となるクラス識別情報622を比較した結果の真偽の情報と、最尤の尤度情報402の尤度を算出し、第二のmAP算出手段650により、バリデーション画像に対するAP値651、mAP値652、Recall655、Precision654などの指標を算出することを特徴とするものであっても良い。IOU値653は対正解枠IOU値498の値をこのまま出力するものであっても良い。
 図25Aにおいては、基準画像1D770から加工画像771を生成するに際しても、アスペクトの比率が変化し、検出物体のサイズも小さい側に変化し、かつ、上下で画面を分割しているため自然画に近いとは言えない画像に対して推論処理を行う必要があるため、自然画に近いCOCOやPascalVOC Datasetなどのオープンソースのデータセットによる深層学習を実施したのみでは、十分な推論性能やロバスト性を備えたモデル学習辞書320を作成することはできない。そこで、オープンソースのデータセットや、表示およびデータ格納手段120や学習用素材データベース格納手段610に存在する学習用画像に対して、フレーム制御情報500の画面分割パラメータ512に則って、モデル前処理手段200のリサイズ機能230とクロップ機能240と画面分割機能250により、それらの学習用画像を再加工して、アノテーション手段620で教師ありデータに加工し、Augment手段630による水増しを行った後、深層学習手段640で深層学習を実施することにより、画面分割に適した推論性能を有するモデル学習辞書320を生成することが可能となり、画面分割に適したモデル学習辞書320により推論を実施することで、画面分割時にも、尤度の救済を精度よく、かつ、安定的に行うことができる。
 これらモデル学習辞書320の学習手段を備え、学習用素材を画面分割処理に合わせて再加工した上で深層学習や性能指標化を実施することにより、検出対象物が動いている状態で物体検出を行う場合や、搭載する演算プロセッサなどの性能に制限を設けた場合でも、低レイテンシーとリアルタイム性を維持しつつ、画面分割された画像に対して、物体検出モデルとモデル学習辞書の汎用性やロバスト性の強化を図ることができるため、画像中の物体検出を行うモデルの構造そのものに依存した検出対象物の位置とサイズの揺らぎに対する推論精度の低下を救済することが可能となる。
 (まとめ)
 図27は、本発明の物体検出装置の要約を示す図である。図27に示すように、本発明の物体検出装置、物体検出方法、及びプログラムは、検出対象を含む画像を取得して適切に加工する画像処理手段により生成された画像データに対して、物体検出モデルが潜在的に有する特定の格子状に尤度が低下する課題に対して、尤度の救済に効果が高い位置シフト量を設定したフレーム制御情報に則って、フレーム毎に2画像ないし複数の画像に加工するモデル前処理手段を有し、複数の加工画像を学習済みのモデル学習辞書を備えた物体検出モデルに入力して得られた推論情報から、モデル後処理手段の尤度を最大化させるための画像選択手段と位置シフトされた画像側が選択された場合に検出枠を正規の位置に補正する検出枠補正手段により検出物体毎の最尤の検出枠の位置情報と最尤の尤度情報を算出する。
 要約すると、図27に示すように、物体検出モデルの構造に依存する位置ゆらぎに関する推論精度の低下を救済して、物体検出能力を向上することができる物体検出装置、方法、及びプログラムを提供するという課題に対して、本開示では、物体検出装置は、画像を取得して加工する画像処理手段と、フレーム制御情報の位置シフト量に則って、基準画像に位置シフトを施した第一の位置シフト画像を生成するモデル前処理手段と、フレーム毎に基準画像と第一の位置シフト画像から物体位置とクラス識別と尤度を推論する物体検出モデルと、モデル後処理手段は、物体検出モデルの推論結果である各画像の検出物体毎の検出枠を含む位置情報と尤度情報を比較して最大となる方の推論結果を選択してフレーム毎に出力する画像選択手段を有し、画像選択手段が第一の位置シフト画像の推論結果を選択した場合は、フレーム制御情報の位置シフト量に則って逆方向に位置シフトを施した検出枠を含む位置情報を出力する検出枠補正手段を備える。
 以上、一つまたは複数の態様に係る物体検出装置などについて、実施の形態に基づいて説明したが、本発明は、この実施の形態に限定されるものではない。本開示の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、一つまたは複数の態様の範囲内に含まれてもよい。
 例えば、上記実施の形態において、各構成要素は、専用のハードウェアで構成されるが、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、CPUまたはプロセッサなどのプログラム実行部が、ハードディスクまたは半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。ここで、上記実施の形態の物体検出装置などを実現するソフトウェアは、次のようなプログラムである。
 すなわち、このプログラムは、コンピュータに、物体検出方法を実行させるプログラムである。
 本発明は、物体検出モデルを使用して画像中で物体の位置検出やクラス識別や追跡を行う技術分野で有用である。その中でも、物体検出を行うためのカメラなどを小型化、省電力化、および、低コスト化するための技術分野で特に有用である。
100 画像処理手段
101 レンズ
102 イメージセンサ
103、290 画像処理プロセッサ
110 画像出力制御手段
120 表示およびデータ格納手段
200 モデル前処理手段
201、202、203、204、205、206、210、220A、220B、220C、220D、231、232、233、261、262、263、266、267、268、271、272、273、311、321、331、826 モデル入力画像
221、701、723、751、770 基準画像
222、702、724、752 第一の位置シフト画像
223、725 第二の位置シフト画像
224、772 第一の分割後基準画像
225、773 第二の分割後基準画像
226、774 第一の分割後位置シフト画像
207、208、209、211、212、213、411、412、415、416、704、705、728、729、730、731、732、733、755、756、777、778 個体識別後の検出枠を含む位置情報
214、215、216、217、218、219、413、414、417、418 個体識別後の尤度情報の中の尤度
220 位置シフト機能
230 リサイズ機能
240 クロップ機能
250 画面分割機能
255 モデル入力画像
260 回転機能
265 アスペクト比変更機能
270 階調変換機能
274、275、276 階調変換曲線
277 デワープ機能
280 余白パディング機能
281、282、283、284、285、286、287、288、790,791、792、793、794 余白部分
291 アフィン変換関数
292 射影変換関数
293 歪補正テーブル
300 物体検出モデル
301、322、323、324、325、332、333、334、335 補正前の検出枠を含む位置情報
302 補正前の尤度情報
326、327、328、329、336、337、338、339 補正前の尤度情報の中の尤度
310 DNNモデル
312 複数のBounding BBoxと信頼度を推測する工程
313 Confidence(信頼度)
314 条件付きクラス確率を算出する工程
315 条件付きクラス確率
316 最終検出工程
317 Confidence score(信頼度スコア)
318 補正前の検出枠を含む位置情報
320 モデル学習辞書
330 人工ニューロンモデル
340 ニューラルネットワーク
350 活性化関数
351 シグモイド関数
352 ReLU
353 Leaky ReLU
360 YOLOモデル
361 第一の検出レイヤ
362 第二の検出レイヤ
363 第三の検出レイヤ
364、365 Upsamplingレイヤ
366、367 スキップ接続
370、371、372、373、374、375、376、377、378、379、380、381、382、383、384、385、386、387 Convolutionレイヤ
390、391、392、393、394、395 Poolingレイヤ
400 モデル後処理手段
401、401A、401B、401C、401D、401F、401H、401X 最尤の検出枠を含む位置情報
402、402A、402B、402C、402D、402F 最尤の尤度情報
403 個体識別後の検出枠を含む位置情報
404 個体識別後の尤度情報
405 検出結果
410 個体識別手段
420、427、428、429、653、805 IOU値
422 Area ofUnion
423 Area ofIntersection
424 人物
425 ground truth BBox
426 Predicted BBox
450 画像選択手段
460 検出枠補正手段
470 フレーム情報保持手段
471 格納メモリ
472、472A、472B、472C、472D、472F、472H、472X 検出枠の中心座標
473、473A、473B、473C、473D、473F、473H、473X 検出枠の高さ
474、474A、474B、474C、474D、474F、474H、474X 検出枠の幅
475、475A、475B、475C、475D、475E、475F、475G 動きベクトル量
476、476A、476B、476C、476D、476F、476H、476X 距離係数
477 補間点
478 予測点
479 正規化係数α
480 フレーム情報補間手段
481 ニュートン後退補間法
482 距離係数算出手段
483 動きベクトル量算出手段
484 動きベクトル予測算出手段
485 異常検出情報除去手段
486 検出情報復元手段
487 異常検出情報予測除去手段
488 検出情報予測復元手段
489 動きベクトル検出手段
490 救済閾値
491 正常判定閾値
492 検出枠のアスペクト比
493 最低尤度
494 第一の尤度閾値
495 第二の尤度閾値
496 第一の不安定閾値
497 第二の不安定閾値
498 対正解枠IOU値
500、501、502、503 フレーム制御情報
510 位置シフト量
511 リサイズパラメータ
512 画面分割パラメータ
520 トレーサビリティ安定値指標化手段
521 中心X座標平均偏差(%)
522 中心Y座標平均偏差(%)
523 枠幅変動率(%)
524 枠高さ変動率(%)
525 枠アスペクト比変動率(%)
526 安定値指標
530 異常検出枠数算出手段
531 異常検出枠数
540 検出NG数算出手段
541 検出NG数
550 ステートマシン制御手段
551 尤度救済OFFモード
552 尤度救済最尤2枚モード
553 尤度救済最尤3枚モード
554 状態遷移条件A
555 状態遷移条件B
556 状態遷移条件C
557 状態遷移条件D
600 辞書学習手段
610 学習用素材データベース格納手段
620 アノテーション手段
621、624、625 正解となる検出枠を含む位置情報
622、626、627 正解となるクラス識別情報
623 バリデーション用データ
630 Augment手段
631 学習用画像、学習データ
640 深層学習手段
650 第二のmAP算出手段
651 AP(Average Precision)値
652 mAP(mean Average Precision)値
654 Precision
655 Recall
660 第一のmAP算出手段
700、721、722、750 尤度分布
703、726,727、753,754、775、776 人物
706、707、734、735、736、737、738、739、757、758、779、780 個体識別後の尤度情報の尤度
708、709、740、741、742、759、760、781、782 検出結果
710、711、743、744、745、761、762、783、784 識別結果
771 加工画像
785 範囲
800 ロバスト性検証手段
801 平均尤度
802 尤度の標準偏差
803 最大尤度
804 最小尤度
806 白色から黒色の濃淡バー
810 確率統計演算手段
811、812,813 統計結果
821、822、823、824 尤度
827、828 領域
830、831、832、833、834 尤度分布
840、841、842、843 尤度のヒストグラム
851、852,853 従来方法の尤度
860 編集パラメータ
861 Augmentパラメータ
S430、S440 入力ステップ
S431 設定ステップ
S432、S435、S442 比較ステップ
S433 削除ステップ
S434 相互IOU値算出ステップ
S436 最大尤度判定ステップ
S437、S444 出力ステップ
S441 正解枠とのIOU値算出ステップ
S443 クラス識別判定ステップ

Claims (41)

  1.  物体検出装置であって、
     画像を取得し、当該画像から物体検出を行うための基準画像を作成する画像処理手段と、
     フレーム制御情報の位置シフト量に則って、前記基準画像に水平方向にMピクセル(Mは任意の小数)および垂直方向にNピクセル(Nは任意の小数)の位置シフトを施した第一の位置シフト画像を生成し、該基準画像と該第一の位置シフト画像とをフレーム毎に物体検出モデルに入力するモデル前処理手段と、
     前記モデル前処理手段から出力されたフレーム毎の前記基準画像と前記第一の位置シフト画像とに対して物体位置とクラス識別と尤度とを推論するモデル学習辞書を含む物体検出モデルと、
     前記物体検出モデルの推論結果である検出物体毎の前記基準画像の検出枠を含む位置情報および前記基準画像の尤度情報と、前記第一の位置シフト画像の検出枠を含む位置情報および前記第一の位置シフト画像の尤度情報とを比較して最大となる方の入力画像と該推論結果とを選択してフレーム毎に出力する画像選択手段を有するモデル後処理手段と、
     前記モデル後処理手段が、前記画像選択手段により前記第一の位置シフト画像の推論結果を選択した場合は、前記フレーム制御情報の位置シフト量に則って前記モデル前処理手段の生成時とは逆方向に位置シフトを施した検出枠を含む位置情報を出力する検出枠補正手段とを備える、
     物体検出装置。
  2.  前記物体検出モデルは、深層学習及び機械学習の少なくとも一方により作成されたモデル学習辞書、および、DNN(Deep Neural Network)を含むニューラルネットワークモデルであることを特徴とする、
     請求項1に記載の物体検出装置。
  3.  前記フレーム制御情報の前記位置シフト量は、前記物体検出モデルのニューラルネットワークモデルの入力画像の垂直方向と水平方向のピクセル数を該ニューラルネットワークモデルの1つ以上の検出レイヤ毎の水平方向と垂直方向のグリッドセルサイズで除算した値の1/2ピクセル値か、それに近似するピクセル値で決定される、
     請求項2に記載の物体検出装置。
  4.  前記モデル前処理手段は、前記基準画像と前記第一の位置シフト画像とに加えて、フレーム制御情報の位置シフト量に則って、前記基準画像に水平方向にPピクセル(Pは任意の小数)および垂直方向にQピクセル(Qは任意の小数)の位置シフトを施した第二の位置シフト画像を生成し、該基準画像と該第一の位置シフト画像と該第二の位置シフト画像とをフレーム毎に前記物体検出モデルに入力し、
     前記物体検出モデルにより異なる3種類の画像に対する推論結果を出力し、
     前記モデル後処理手段は、前記画像選択手段により該異なる3種類の画像に対する推論結果の中から最大となる1つの入力画像と該推論結果とを選択してフレーム毎に出力し、
     前記画像選択手段により前記第一の位置シフト画像の推論結果、もしくは、前記第二の位置シフト画像の推論結果を選択した場合は、前記フレーム制御情報の位置シフト量に則って前記モデル前処理手段の生成時とは逆方向に位置シフトを施した検出枠を含む位置情報を出力する前記検出枠補正手段を備える、
     請求項3に記載の物体検出装置。
  5.  前記フレーム制御情報の前記位置シフト量の種類は、前記ニューラルネットワークモデルの1つ以上の検出レイヤ毎の水平方向と垂直方向とのグリッドセルサイズで除算した値の1/2ピクセル値か、それに近似するピクセル値で決定された中で、検出対象物のサイズに依存して検出精度、もしくは、検出頻度が高くなる検出レイヤに対応する前記位置シフト量の順番に前記モデル前処理手段と前記モデル後処理手段とで適用される、
     請求項3に記載の物体検出装置。
  6.  前記フレーム制御情報の前記位置シフト量の種類が、前記モデル前処理手段の位置シフト画像の種類よりも多い場合は、複数の該位置シフト量の平均値を位置シフト量として使用する、
     請求項3に記載の物体検出装置。
  7.  前記フレーム制御情報の前記位置シフト量の種類が3種類以上存在し、かつ、前記モデル前処理手段の位置シフト画像の種類が3種類以上存在する場合は、該フレーム制御情報の該位置シフト量に則って、前記モデル前処理手段で前記基準画像から3つ以上の前記位置シフト画像を生成し、基準画像と合わせてフレーム毎に前記物体検出モデルに入力し、
     前記物体検出モデルにより異なる4種類以上の画像に対する推論結果を出力し、
     前記モデル後処理手段は、前記画像選択手段により該異なる4種類以上の画像に対する推論結果の中から最大となる1つの入力画像と該推論結果とを選択してフレーム毎に出力し、該基準画像の該推論結果以外を選択した場合は、前記フレーム制御情報の前記位置シフト量に則って、前記モデル前処理手段の生成時とは逆方向に位置シフトを施した検出枠を含む位置情報を出力する前記検出枠補正手段を備える、
     請求項3に記載の物体検出装置。
  8.  前記モデル前処理手段は、前記フレーム制御情報の前記位置シフト量に則って、n(nは0を含む任意の2の倍数)フレーム目の前記基準画像は、そのまま前記物体検出モデルに入力し、n+1フレーム目の前記基準画像に対しては、水平方向にMピクセル(Mは任意の小数)および垂直方向にNピクセル(Nは任意の小数)の位置シフトを施した前記第一の位置シフト画像を生成して前記物体検出モデルに入力し、
     前記物体検出モデルは、前記モデル前処理手段から出力されたnフレーム目の前記基準画像とn+1フレーム目の前記第一の位置シフト画像とに対してフレーム毎に交互に物体位置とクラス識別と尤度とを推論し、
     前記画像選択手段が、前記物体検出モデルの推論結果である検出物体毎のnフレーム目の前記基準画像の検出枠を含む位置情報および前記基準画像の尤度情報と、n+1フレーム目の前記第一の位置シフト画像の検出枠を含む位置情報および前記第一の位置シフト画像の尤度情報とを比較して最大となる方の入力画像と該推論結果とを選択してn+1フレーム目の結果として出力し、n+1フレーム目の前記第一の位置シフト画像の検出枠を含む位置情報および前記第一の位置シフト画像の尤度情報と、n+2フレーム目の前記基準画像の検出枠を含む位置情報および前記基準画像の尤度情報とを比較して最大となる方の入力画像と該推論結果とを選択してn+2フレーム目の結果として出力し、1フレーム分遅延して現在のフレームと1フレーム前の過去フレームとの情報から推論結果を最大化する前記モデル後処理手段と、
     前記モデル後処理手段が、前記画像選択手段によりn+1フレーム目の前記第一の位置シフト画像の推論結果を選択した場合は、前記フレーム制御情報の前記位置シフト量に則って前記モデル前処理手段の生成時とは逆方向に位置シフトを施した検出枠を含む位置情報を出力する検出枠補正手段とを備える、
     請求項3に記載の物体検出装置。
  9.  前記モデル前処理手段は、前記フレーム制御情報の前記位置シフト量に則って、m(mは0を含む任意の3の倍数)フレーム目の前記基準画像とm+1フレーム目の基準画像とから生成した前記第一の位置シフト画像に加えて、m+2フレーム目の前記基準画像に対しては、水平方向にPピクセル(Pは任意の小数)および垂直方向にQピクセル(Qは任意の小数)の位置シフトを施した前記第二の位置シフト画像を生成し、mフレーム目に該基準画像を、m+1フレーム目に該第一の位置シフト画像を、m+2フレーム目に該第二の位置シフト画像をフレーム毎に順番に前記物体検出モデルに入力し、
     前記物体検出モデルにより、前記モデル前処理手段から出力されたmフレーム目の前記基準画像とm+1フレーム目の前記第一の位置シフト画像とm+2フレーム目の前記第二の位置シフト画像とに対してフレーム毎に順番に物体位置とクラス識別と尤度とを推論し、
     前記画像選択手段が、前記物体検出モデルの推論結果である検出物体毎のmフレーム目の前記基準画像の検出枠を含む位置情報および前記基準画像の尤度情報と、m+1フレーム目の前記第一の位置シフト画像の検出枠を含む位置情報および前記第一の位置シフト画像の尤度情報と、m+2フレーム目の前記第二の位置シフト画像の検出枠を含む位置情報および前記第二の位置シフト画像の尤度情報とを比較して最大となる方の入力画像と該推論結果とを選択してm+2フレーム目の結果として出力し、m+1フレーム目とm+2フレーム目とm+3フレーム目との推論結果を比較して最大となる方の入力画像と該推論結果とを選択してm+3フレーム目の結果として出力し、m+2フレーム目とm+3フレーム目とm+4フレーム目との推論結果を比較して最大となる方の入力画像と該推論結果とを選択してm+4フレーム目の結果として出力し、2フレーム分遅延して現在のフレームと2フレーム前までの過去フレームとの情報から推論結果を最大化する前記モデル後処理手段と、
     前記モデル後処理手段が、前記画像選択手段によりm+1フレーム目の前記第一の位置シフト画像の推論結果を選択した場合とm+2フレーム目の前記第二の位置シフト画像の推論結果を選択した場合とには、前記フレーム制御情報の前記位置シフト量に則って前記モデル前処理手段の生成時とは逆方向に位置シフトを施した検出枠を含む位置情報を出力する検出枠補正手段とを備える、
     請求項4に記載の物体検出装置。
  10.  前記フレーム制御情報の前記位置シフト量の種類が3種類以上存在し、かつ、前記モデル前処理手段の前記位置シフト画像の種類が3種類以上存在する場合は、該フレーム制御情報の該位置シフト量に則って、前記モデル前処理手段でr(rは0を含む任意のs(sは4以上の任意の整数)の倍数)フレーム目は前記基準画像を、r+1フレームからr+s-1フレーム目は各フレームの前記基準画像から加工したs-1個の前記位置シフト画像を、フレーム順に前記物体検出モデルに入力し、
     前記モデル後処理手段は、前記画像選択手段により現在のフレームとs-1フレーム前の過去フレームとの推論結果の中から最大となる1つの入力画像と該推論結果とを選択して現在のフレームの推論結果として出力し、rフレーム目の該基準画像の該推論結果以外を選択した場合は、前記フレーム制御情報の前記位置シフト量に則って、前記モデル前処理手段の生成時とは逆方向に位置シフトを施した検出枠を含む位置情報を出力する前記検出枠補正手段を備える、
     請求項7に記載の物体検出装置。
  11.  前記モデル前処理手段は、前記基準画像に対して、前記フレーム制御情報の画面分割パラメータに則って、画像の一部の範囲である検出範囲を切り出すクロップ機能と前記物体検出モデルの入力画面を2つに分割した領域に該クロップ機能により切り出した画像を垂直方向と水平方向とをリサイズして貼り付ける画面分割機能とを有し、前記画面分割機能により画面分割された一方を第一の分割後基準画像とし、もう一方を第二の分割後基準画像とし、該第一の分割後基準画像を前記フレーム制御情報の前記位置シフト量に則って、該第一の分割後基準画像に水平方向にGピクセル(Gは任意の小数)および垂直方向にHピクセル(Hは任意の小数)の位置シフトを施した第一の分割後位置シフト画像を生成し、該第二の分割後基準画像と該第一の分割後位置シフト画像とをフレーム毎に前記物体検出モデルに入力するモデル前処理手段と、
     前記モデル前処理手段から出力されたフレーム毎の前記第二の分割後基準画像と前記第一の分割後位置シフト画像とに対して物体位置とクラス識別と尤度とを推論するモデル学習辞書を含む前記物体検出モデルと、
     前記物体検出モデルの推論結果である検出物体毎の前記第二の分割後基準画像の検出枠を含む位置情報および前記第二の分割後基準画像の尤度情報と、前記第一の分割後位置シフト画像の検出枠を含む位置情報および前記第一の分割後位置シフト画像の尤度情報とを比較して最大となる方の入力画像と該推論結果とを選択してフレーム毎に出力する前記画像選択手段を有する前記モデル後処理手段と、
     前記モデル後処理手段が、前記画像選択手段により前記第二の分割後基準画像の推論結果を選択した場合は、前記フレーム制御情報の前記画面分割パラメータに則って、元の前記基準画像に相当するように位置とサイズとの逆補正を施した検出枠を含む位置情報を出力し、前記画像選択手段により前記第一の分割後位置シフト画像の推論結果を選択した場合は、前記フレーム制御情報の前記位置シフト量と前記画面分割パラメータとに則って、前記モデル前処理手段の生成時とは逆方向に位置シフトを施した後、元の前記基準画像に相当するように位置とサイズとの逆補正を施した検出枠を含む位置情報を出力する検出枠補正手段とを備える、
     請求項3に記載の物体検出装置。
  12.  前記フレーム制御情報の前記位置シフト量は、該フレーム制御情報の前記画面分割パラメータに則って、前記クロップ機能と前記画面分割機能とにより画面分割された一方の前記第一の分割後基準画像の垂直方向と水平方向とのピクセル数を前記ニューラルネットワークモデルの1つ以上の検出レイヤ毎の水平方向と垂直方向とのグリッドセルサイズで除算した値の1/2ピクセル値か、それに近似するピクセル値で決定される、
     請求項11に記載の物体検出装置。
  13.  前記フレーム制御情報の前記位置シフト量は、該フレーム制御情報の前記画面分割パラメータに則って、前記クロップ機能と前記画面分割機能とにより画面分割された一方の前記第一の分割後基準画像の垂直方向と水平方向とのピクセル数を前記ニューラルネットワークモデルの1つ以上の検出レイヤ毎の水平方向と垂直方向とのグリッドセルサイズで除算した値の1/2ピクセル値か、それに近似するピクセル値で決定された中で、検出対象物のサイズに依存して検出精度、もしくは、検出頻度が高くなる検出レイヤに対応する前記位置シフト量の順番に前記モデル前処理手段と前記モデル後処理手段とで適用される、
     請求項11に記載の物体検出装置。
  14.  前記フレーム制御情報の前記位置シフト量の種類が2つ以上の場合は、複数の該位置シフト量の平均値を位置シフト量として使用する、
     請求項11に記載の物体検出装置。
  15.  前記モデル前処理手段は、前記第一の分割後基準画像、および、前記第二の分割後基準画像が、前記ニューラルネットワークモデルの1つ以上の検出レイヤ毎の水平方向と垂直方向とのグリッドセルサイズで除算した際に、水平方向も垂直方向も割り切れるように、前記フレーム制御情報の前記画面分割パラメータを設定する、
     請求項11に記載の物体検出装置。
  16.  前記モデル前処理手段が、該フレーム制御情報の前記画面分割パラメータに則って、画像を分割する場合は、該画面分割パラメータに則って生成された学習画像にアノテーション手段により正解枠データを付加し、内蔵もしくは外部の辞書学習手段により前記モデル学習辞書を再学習する、
     請求項11に記載の物体検出装置。
  17.  前記モデル前処理手段は、前記フレーム制御情報に則って、前記物体検出モデルに入力する画像に対して位置シフトを含め加工するに際して、該加工により発生する有効画像が存在しない余白部分は、該有効画像の平均輝度レベルと等しい単一色で一様に塗りつぶして画像を生成する、
     請求項3に記載の物体検出装置。
  18.  前記モデル前処理手段は、前記フレーム制御情報の前記位置シフト量に則って位置シフトを実施する前の画像に対して、任意の場所の画像を切り抜くクロップ機能と、画像サイズを変更するリサイズ機能と、コントラスト補正曲線、もしくは、階調変換曲線を使用して輝度レベルを任意の値に変更する階調変換機能と、アスペクト比を変更するアスペクト比変更機能と、回転角度を変更する回転機能とを有し、前記フレーム制御情報の加工パラメータに則って画像を加工する、
     請求項3に記載の物体検出装置。
  19.  前記モデル後処理手段は、フレーム毎の前記物体検出モデルの推論結果である1つないし複数の前記検出物体毎に対する検出不能と疑似検出とを含むゼロないし複数の前記基準画像の検出枠を含む位置情報および前記基準画像の尤度情報と、前記第一の位置シフト画像の検出枠を含む位置情報および前記第一の位置シフト画像の尤度情報と、さらに前記フレーム制御情報の前記位置シフト量が2種類以上存在する場合は、前記第二の位置シフト画像の検出枠を含む位置情報および前記第二の位置シフト画像の尤度情報と、第三以上の位置シフト画像の検出枠を含む位置情報および第三以上の位置シフト画像の尤度情報とに対して、各々の尤度情報に対する任意の閾値T(Tは、任意の小数)と、各々の検出枠を含む位置情報の領域が相互にどれぐらい重なっているかを表す指標であるIOU(Intersection over Union)値に対する任意の閾値U(Uは、任意の小数)とにより、前記物体検出モデルに入力される各々の入力画像に対する前記検出物体毎に個体識別後の検出枠を含む位置情報と個体識別後の尤度情報とに補正する個体識別手段を有し、前記個体識別手段により選定された出力結果を使用して、前記画像選択手段と前記検出枠補正手段とにより、フレーム毎の該検出物体毎に最尤となる検出枠を含む位置情報と最尤となる尤度情報とを出力する、
     請求項4に記載の物体検出装置。
  20.  前記モデル後処理手段は、前記フレーム制御情報の画面分割パラメータに則って、画面分割の加工を施した際は、フレーム毎の前記物体検出モデルの推論結果である1つないし複数の前記検出物体毎に対する検出不能と疑似検出とを含むゼロないし複数の前記第二の分割後基準画像の検出枠を含む位置情報および前記第二の分割後基準画像の尤度情報と、前記第一の分割後位置シフト画像の検出枠を含む位置情報および前記第一の分割後位置シフト画像の尤度情報とに対して、各々の尤度情報に対する任意の閾値T(Tは、任意の小数)と、各々の検出枠を含む位置情報の領域が相互にどれぐらい重なっているかを表す指標であるIOU(Intersection over Union)値に対する任意の閾値U(Uは、任意の小数)とにより、前記物体検出モデルに入力される該第二の分割後基準画像と該第一の分割後位置シフト画像とに対する前記検出物体毎に個体識別後の検出枠を含む位置情報と個体識別後の尤度情報とに補正する個体識別手段を有し、前記個体識別手段により選定された出力結果を使用して、前記画像選択手段と前記検出枠補正手段とにより、フレーム毎の該検出物体毎に最尤となる検出枠を含む位置情報と最尤となる尤度情報とを出力する、
     請求項11に記載の物体検出装置。
  21.  前記個体識別手段は、前記フレーム制御情報の前記画面分割パラメータに則って、画面分割の加工を施した際は、前記第二の分割後基準画像と前記第一の分割後位置シフト画像との境界線上で検出された前記検出枠を含む位置情報は、該第二の分割後基準画像と該第一の分割後位置シフト画像とのいずれの領域に広く分布しているか判定し、広く分布している側の領域内の該検出枠を含む位置情報を該領域内で切り出して結果として残留させ、一方の領域側にはみ出した該検出枠の位置情報は、切り取って削除する、
     請求項20に記載の物体検出装置。
  22.  前記モデル後処理手段は、前記画像選択手段と前記検出枠補正手段とにより最尤と判定して出力したフレーム毎の前記検出物体毎に対する推論結果である最尤の検出枠を含む位置情報と最尤の尤度情報とを、最大検出物体数V(Vは任意の整数)の数だけ現在のフレームftとft-1からft-s(sは任意の整数)までの過去フレームとの分の格納メモリに保持するフレーム情報保持手段を有し、
     該フレーム情報保持手段は、現在のフレームftの該最尤の検出枠を含む位置情報と該最尤の尤度情報とが算出された時点で、最も古いフレームft-sの該格納メモリに記録されている該最尤の検出枠を含む位置情報と該最尤の尤度情報とを消去し、ftフレームからft-(s-1)フレームまでの該格納メモリに記録されている該最尤の検出枠を含む位置情報と該最尤の尤度情報とを1フレーム分過去のft-1フレームからft-sフレームの該格納メモリにスライドして再記録し、現在のフレームftの該最尤の検出枠を含む位置情報と該最尤の尤度情報とを現在のフレームftの該格納メモリに記録する、
     請求項3に記載の物体検出装置。
  23.  前記フレーム情報保持手段は、任意のフレームの前記検出物体の前記格納メモリの前記最尤の検出枠を含む位置情報と最尤の尤度情報とに欠落がある場合に、前後のフレームの該格納メモリの該最尤の検出枠を含む位置情報と該最尤の尤度情報とから補間して新たな該最尤の検出枠を含む位置情報と該最尤の尤度情報として当該フレームの該格納メモリに記録するフレーム情報補間手段を有し、
     前記フレーム情報補間手段の情報の補間方法が、ニュートン後退補間法及び移動平均法の少なくとも一方を含み、
     前記最尤の検出枠を含む位置情報は、検出枠の中心座標と高さと幅との情報を含み、
     前記最尤の尤度情報は、検出の信頼性を示す尤度とクラス識別情報とを含む、
     請求項22に記載の物体検出装置。
  24.  前記フレーム情報補間手段は、前記フレーム情報保持手段の前記ft-1からft-sの過去フレームの前記格納メモリの前記最尤の検出枠を含む位置情報の中心座標から動きベクトル量を算出して各フレームの該検出物体毎の該格納メモリに記録する動きベクトル量算出手段を有し、
     さらに、未来のフレームの前記検出物体毎の動きベクトル量を予測して前記最尤の検出枠を含む位置情報の中心座標を予測する動きベクトル予測算出手段を有する、
     請求項23に記載の物体検出装置。
  25.  前記フレーム情報補間手段は、前記フレーム情報保持手段の過去フレームの前記検出物体毎の前記最尤の検出枠を含む位置情報の検出枠の幅と高さと中心座標と、前記動きベクトル量算出手段により算出された前記動きベクトル量とにより、距離係数を算出して該格納メモリに記録する距離係数算出手段を有し、
     さらに、前記動きベクトル予測算出手段は、予測された未来のフレームの前記動きベクトル量から、前記距離係数算出手段により未来のフレームの前記検出物体毎の前記最尤の検出枠を含む位置情報の中心座標と距離係数とを予測し、未来のフレームの該最尤の検出枠を含む位置情報の検出枠の幅と高さとの情報を予測する、
     請求項24に記載の物体検出装置。
  26.  前記フレーム情報補間手段は、前記フレーム情報保持手段の過去フレームの前記検出物体毎の前記格納メモリに格納されている前記最尤の検出枠を含む位置情報の検出枠の幅と高さと中心座標と、前記動きベクトル量と、前記距離係数と、前記最尤の尤度情報とにより、該最尤の検出枠を含む位置情報および該最尤の尤度情報のフレーム間の時間連続性の異常を検出した場合に該格納メモリから除去する異常検出情報除去手段を有し、
     該異常検出情報除去手段により除去された各種情報を前後のフレームの前記最尤の検出枠を含む位置情報の検出枠の幅と高さと中心座標と、前記動きベクトル量と、前記距離係数と、前記最尤の尤度情報とから復元して該格納メモリに記録する検出情報復元手段を有し、
     さらに、新たに物体検出を実施した際の現在のフレームの前記検出物体毎の前記画像選択手段と前記検出枠補正手段とにより算出された前記最尤の検出枠を含む位置情報と、前記動きベクトル予測算出手段により予測された未来のフレームの該最尤の検出枠を含む位置情報との検出枠の幅と高さと中心座標とを比較して、異常を検出して除去する異常検出情報予測除去手段を有し、
     該異常検出情報予測除去手段により前記画像選択手段と前記検出枠補正手段とにより算出された前記最尤の検出枠を含む位置情報が除去された場合は、前記動きベクトル予測算出手段により予測された未来のフレームの該最尤の検出枠を含む位置情報に置き換えて復元し現在のフレームの該格納メモリに記録する検出情報予測復元手段を有する、
     請求項25に記載の物体検出装置。
  27.  前記フレーム情報補間手段は、前記フレーム情報保持手段に保持されている前記最尤の検出枠を含む位置情報の検出枠の幅と高さと中心座標とが、前記フレーム情報補間手段により補間された該最尤の検出枠を含む位置情報の検出枠の幅と高さと中心座標とに対して、任意の閾値を超過、もしくは、任意の割合を超過してずれていることを検出した場合、
     もしくは、前記最尤の尤度情報の尤度が異常だが救済を施すに値する救済閾値未満の場合は、前記異常検出情報除去手段により異常情報と判定して該格納メモリからすべての情報を除去し、
     その際、前記最尤の尤度情報の尤度が、正常と判定する正常判定閾値以下、かつ、異常だが救済を施すに値する救済閾値以上である場合は、前記最尤の尤度情報を除く他の情報を除去し、それら除去された情報に対して、前記検出情報復元手段により復元された該最尤の検出枠を含む位置情報と該最尤の尤度情報と前記動きベクトル量と前記距離係数とを該格納メモリに記録して復元する、
     請求項26に記載の物体検出装置。
  28.  前記フレーム情報補間手段は、前記フレーム情報保持手段の新たに物体検出を実施した際の現在のフレームの前記検出物体毎の前記画像選択手段と前記検出枠補正手段とにより算出された前記最尤の検出枠を含む位置情報の検出枠の幅と高さと中心座標とが、前記動きベクトル予測算出手段により予測された未来のフレームの該最尤の検出枠を含む位置情報の検出枠の幅と高さと中心座標とに対して、
     任意の閾値以下、もしくは、任意の割合以下のずれである場合、かつ、前記最尤の尤度情報の尤度が、正常と判定する正常判定閾値以上の場合は、該格納メモリに該最尤の検出枠を含む位置情報と前記最尤の尤度情報と前記動きベクトル量と前記距離係数とを記録し、
     前記最尤の検出枠を含む位置情報が、任意の閾値を超過、もしくは、任意の割合を超過してずれていることを検出した場合、
     もしくは、前記最尤の尤度情報の尤度が、異常だが救済を施すに値する救済閾値未満の場合に、前記異常検出情報予測除去手段により異常情報と判定してすべての情報を除去し、
     前記最尤の尤度情報の尤度が、正常と判定する正常判定閾値未満、かつ、異常だが救済を施すに値する救済閾値以上である場合は前記最尤の尤度情報を除く他の情報を除去し、それら除去された情報に対して、前記動きベクトル予測算出手段の出力結果である該検出枠を含む位置情報と該動きベクトル量と該距離係数と該最尤の尤度情報とを前記検出情報予測復元手段により置き換えて該格納メモリに記録する、
     請求項27に記載の物体検出装置。
  29.  前記モデル後処理手段は、現在のフレームの前記検出物体毎の前記フレーム情報保持手段と前記フレーム情報補間手段とにより算出された前記最尤の検出枠を含む位置情報の検出枠の中心座標のX座標と該検出枠の中心座標のY座標と該検出枠の幅と該検出枠の高さと該検出枠のアスペクト比とが、前記動きベクトル予測算出手段により予測された未来のフレームの該最尤の検出枠を含む位置情報の検出枠の中心座標のX座標と該検出枠の中心座標のY座標と該検出枠の幅と該検出枠の高さと該検出枠のアスペクト比とに対して、各々何%偏差があるか算出し、W(Wは任意の整数)フレーム分平均して、中心X座標平均偏差(%)と中心Y座標平均偏差(%)と前記距離係数で正規化した枠幅変動率(%)と前記距離係数で正規化した枠高さ変動率(%)と枠アスペクト比変動率(%)とを算出するトレーサビリティ安定値指標化手段を有する、
     請求項28に記載の物体検出装置。
  30.  前記モデル後処理手段は、前記異常検出情報予測除去手段により、現在のフレームで異常値と判断されて除去された場合に、異常検出と判断して前記フレーム中の該異常検出となった枠数を異常検出枠数として出力する異常検出枠数算出手段を有する、
     請求項29に記載の物体検出装置。
  31.  前記モデル後処理手段は、前記異常検出情報予測除去手段により、現在のフレームで前記最尤の尤度情報の尤度が前記救済閾値未満で異常値と判断されて除去された場合、もしくは、推論の結果が未検出だった場合に、検出不能と判断して前記フレーム中の該検出不能となった回数を検出NG数として出力する検出NG数算出手段を有する、
     請求項30に記載の物体検出装置。
  32.  前記モデル後処理手段は、前記フレーム情報保持手段と前記フレーム情報補間手段とにより算出された前記最尤の検出枠を含む位置情報と、前記検出物体の前記最尤の尤度情報の中で最も低い最低尤度と、前記トレーサビリティ安定値指標化手段の各種出力情報である安定値指標と、前記異常検出枠数と、前記検出NG数との、1つ以上、もしくは、すべてを使用して次のフレームの前記フレーム制御情報の前記位置シフト量と該位置シフト量の種類と数との状態をフレーム毎に決定するステートマシン制御手段を有する、
     請求項31に記載の物体検出装置。
  33.  前記ステートマシン制御手段は、前記フレーム制御情報の位置シフト量がゼロ、かつ、位置シフト量の種類がゼロの尤度救済OFFモードの状態から開始し、現在のフレームの前記最低尤度が、任意の第一の尤度閾値未満であるか、もしくは、前記トレーサビリティ安定値指標化手段の出力情報である前記安定値指標が各々の第一の不安定閾値に対して1つでも超過する場合に、次フレームの前記フレーム制御情報の前記位置シフト量を1種類の状態で制御する尤度救済最尤2枚モードとし、前記フレーム情報保持手段の前記検出物体毎の前記最尤の検出枠を含む位置情報と、前記最尤の尤度情報と、前記物体検出モデルの前記ニューラルネットワークモデルの1つ以上の検出レイヤの情報とを加味して該位置シフト量を決定する、
     請求項32に記載の物体検出装置。
  34.  前記ステートマシン制御手段は、現在のフレームが前記尤度救済最尤2枚モードの状態の場合、現在のフレームの前記最低尤度が、任意の第二の尤度閾値未満であるか、もしくは、前記トレーサビリティ安定値指標化手段の出力情報である前記安定値指標が各々の第二の不安定閾値に対して1つでも超過する場合か、もしくは、前記異常検出枠数が1以上である場合か、前記検出NG数が1以上である場合に、次フレームの前記フレーム制御情報の前記位置シフト量を2種類の状態で制御する尤度救済最尤3枚モードとし、前記フレーム情報保持手段の前記検出物体毎の前記最尤の検出枠を含む位置情報と、前記最尤の尤度情報と、前記物体検出モデルの前記ニューラルネットワークモデルの1つ以上の検出レイヤの情報とを加味して2種類の該位置シフト量を決定する、
     請求項33に記載の物体検出装置。
  35.  前記ステートマシン制御手段は、現在のフレームが前記尤度救済最尤3枚モードの状態の場合、現在のフレームの前記最低尤度が任意の第二の尤度閾値以上であり、前記トレーサビリティ安定値指標化手段の出力情報である前記安定値指標が各々の第二の不安定閾値のすべてに対して以下であり、前記異常検出枠数がゼロであり、前記検出NG数がゼロであり、それら1つ以上、もしくは、すべての条件に合致する場合に、次フレームの前記フレーム制御情報の前記位置シフト量を1種類の状態で制御する前記尤度救済最尤2枚モードとし、前記フレーム情報保持手段の前記検出物体毎の前記最尤の検出枠を含む位置情報と、前記最尤の尤度情報と、前記物体検出モデルの前記ニューラルネットワークモデルの1つ以上の検出レイヤの情報とを加味して該位置シフト量を決定する、
     請求項34に記載の物体検出装置。
  36.  前記ステートマシン制御手段は、現在のフレームが前記尤度救済最尤2枚モードの状態の場合、現在のフレームの前記最低尤度が任意の第一の尤度閾値以上であり、前記トレーサビリティ安定値指標化手段の出力情報である前記安定値指標が各々の第一の不安定閾値のすべてに対して以下であり、前記異常検出枠数がゼロであり、前記検出NG数がゼロであり、それら1つ以上、もしくは、すべての条件に合致する場合に、次フレームの前記フレーム制御情報の前記位置シフト量を位置シフト量がゼロ、かつ、位置シフト量の種類がゼロの前記尤度救済OFFモードの状態とする、
     請求項33又は請求項35に記載の物体検出装置。
  37.  前記モデル後処理手段は、
     バリデーション画像に対して、アノテーション手段により生成された前記検出物体毎に正解となる検出枠を含む位置情報と正解となるクラス識別情報とが存在する場合は、
     前記フレーム情報保持手段の現在のフレームの前記検出物体毎の前記最尤の検出枠を含む位置情報と該正解となる検出枠を含む位置情報との領域がどれぐらい重なっているかを表す指標である対正解枠IOU値と、
     前記フレーム情報保持手段の現在のフレームの前記検出物体毎の前記最尤の尤度情報と該正解となるクラス識別情報を比較した結果の真偽の情報と、該最尤の尤度情報の尤度とを算出し、
     第二のmAP算出手段により、該バリデーション画像に対するAP(AveragePrecision)値、mAP(mean Average Precision)値、Recall、Precisionの少なくとも1つを含む指標を算出する、
     請求項22に記載の物体検出装置。
  38.  画像を取得し、当該画像から物体検出を行うための基準画像を作成する画像処理ステップと、
     フレーム制御情報の位置シフト量に則って、前記基準画像に水平方向にMピクセル(Mは任意の小数)および垂直方向にNピクセル(Nは任意の小数)の位置シフトを施した第一の位置シフト画像を生成し、該基準画像と該第一の位置シフト画像とをフレーム毎に物体検出モデルに入力するモデル前処理ステップと、
     前記モデル前処理ステップから出力されたフレーム毎の前記基準画像と前記第一の位置シフト画像とに対して物体位置とクラス識別と尤度とを推論するモデル学習辞書を含む物体検出モデルと、
     前記物体検出モデルの推論結果である検出物体毎の前記基準画像の検出枠を含む位置情報および前記基準画像の尤度情報と、前記第一の位置シフト画像の検出枠を含む位置情報および前記第一の位置シフト画像の尤度情報とを比較して最大となる方の入力画像と該推論結果とを選択してフレーム毎に出力する画像選択ステップを有するモデル後処理ステップと、
     前記モデル後処理ステップが、前記画像選択ステップにより前記第一の位置シフト画像の推論結果を選択した場合は、前記フレーム制御情報の位置シフト量に則って前記モデル前処理ステップの生成時とは逆方向に位置シフトを施した検出枠を含む位置情報を出力する検出枠補正ステップとを含む、
     物体検出方法。
  39.  前記モデル前処理ステップは、前記基準画像と前記第一の位置シフト画像とに加えて、フレーム制御情報の位置シフト量に則って、前記基準画像に水平方向にPピクセル(Pは任意の小数)および垂直方向にQピクセル(Qは任意の小数)の位置シフトを施した第二の位置シフト画像を生成し、該基準画像と該第一の位置シフト画像と該第二の位置シフト画像とをフレーム毎に前記物体検出モデルに入力し、
     前記物体検出モデルにより異なる3種類の画像に対する推論結果を出力し、
     前記モデル後処理ステップは、前記画像選択ステップにより該異なる3種類の画像に対する推論結果の中から最大となる1つの入力画像と該推論結果とを選択してフレーム毎に出力し、
     前記画像選択ステップにより前記第一の位置シフト画像の推論結果、もしくは、前記第二の位置シフト画像の推論結果を選択した場合は、前記フレーム制御情報の位置シフト量に則って前記モデル前処理ステップの生成時とは逆方向に位置シフトを施した検出枠を含む位置情報を出力する前記検出枠補正ステップを含む、
     請求項38に記載の物体検出方法。
  40.  前記モデル前処理ステップは、前記基準画像に対して、前記フレーム制御情報の画面分割パラメータに則って、画像の一部の範囲である検出範囲を切り出すクロップステップと前記物体検出モデルの入力画面を2つに分割した領域に該クロップステップにより切り出した画像を垂直方向と水平方向とをリサイズして貼り付ける画面分割ステップとを有し、前記画面分割ステップにより画面分割された一方を第一の分割後基準画像とし、もう一方を第二の分割後基準画像とし、該第一の分割後基準画像を前記フレーム制御情報の前記位置シフト量に則って、該第一の分割後基準画像に水平方向にGピクセル(Gは任意の小数)および垂直方向にHピクセル(Hは任意の小数)の位置シフトを施した第一の分割後位置シフト画像を生成し、該第二の分割後基準画像と該第一の分割後位置シフト画像とをフレーム毎に前記物体検出モデルに入力するモデル前処理ステップと、
     前記モデル前処理ステップから出力されたフレーム毎の前記第二の分割後基準画像と前記第一の分割後位置シフト画像とに対して物体位置とクラス識別と尤度とを推論するモデル学習辞書を含む前記物体検出モデルと、
     前記物体検出モデルの推論結果である検出物体毎の前記第二の分割後基準画像の検出枠を含む位置情報および前記第二の分割後基準画像の尤度情報と、前記第一の分割後位置シフト画像の検出枠を含む位置情報および前記第一の分割後位置シフト画像の尤度情報とを比較して最大となる方の入力画像と該推論結果とを選択してフレーム毎に出力する前記画像選択ステップを有する前記モデル後処理ステップと、
     前記モデル後処理ステップが、前記画像選択ステップにより前記第二の分割後基準画像の推論結果を選択した場合は、前記フレーム制御情報の前記画面分割パラメータに則って、元の前記基準画像に相当するように位置とサイズとの逆補正を施した検出枠を含む位置情報を出力し、前記画像選択ステップにより前記第一の分割後位置シフト画像の推論結果を選択した場合は、前記フレーム制御情報の前記位置シフト量と前記画面分割パラメータとに則って、前記モデル前処理ステップの生成時とは逆方向に位置シフトを施した後、元の前記基準画像に相当するように位置とサイズとの逆補正を施した検出枠を含む位置情報を出力する検出枠補正ステップとを含む、
     請求項38に記載の物体検出方法。
  41.  請求項38ないし請求項40のいずれか1項に記載の物体検出方法をコンピュータに実行させるための
     プログラム。
PCT/JP2023/035544 2022-09-30 2023-09-28 物体検出装置、物体検出方法、及びプログラム WO2024071347A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2022-158834 2022-09-30
JP2022158834 2022-09-30

Publications (1)

Publication Number Publication Date
WO2024071347A1 true WO2024071347A1 (ja) 2024-04-04

Family

ID=90478163

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/035544 WO2024071347A1 (ja) 2022-09-30 2023-09-28 物体検出装置、物体検出方法、及びプログラム

Country Status (1)

Country Link
WO (1) WO2024071347A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021111228A (ja) * 2020-01-14 2021-08-02 キヤノン株式会社 学習装置、学習方法、及びプログラム
JP2021196643A (ja) * 2020-06-09 2021-12-27 キヤノン株式会社 推論装置、撮像装置、学習装置、推論方法、学習方法、及びプログラム
JP2022505205A (ja) * 2018-10-19 2022-01-14 武田薬品工業株式会社 腸の病理学のための画像スコアリング

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022505205A (ja) * 2018-10-19 2022-01-14 武田薬品工業株式会社 腸の病理学のための画像スコアリング
JP2021111228A (ja) * 2020-01-14 2021-08-02 キヤノン株式会社 学習装置、学習方法、及びプログラム
JP2021196643A (ja) * 2020-06-09 2021-12-27 キヤノン株式会社 推論装置、撮像装置、学習装置、推論方法、学習方法、及びプログラム

Similar Documents

Publication Publication Date Title
CN111768432B (zh) 基于孪生深度神经网络的动目标分割方法及系统
US9547890B2 (en) Image processing apparatus and image processing method
JP7206386B2 (ja) 画像処理モデルの訓練方法、画像処理方法、ネットワーク機器、及び記憶媒体
US8134596B2 (en) Classifying an object in a video frame
US8041075B2 (en) Identifying spurious regions in a video frame
CN113286194A (zh) 视频处理方法、装置、电子设备及可读存储介质
CN110008806B (zh) 信息处理装置、学习处理方法、学习装置及物体识别装置
US20140270487A1 (en) Method and apparatus for processing image
CN107248174A (zh) 一种基于tld算法的目标跟踪方法
US20130044964A1 (en) Image processing device, image processing method and program
JP2004157979A (ja) 画像の動き検出装置及びコンピュータプログラム
CN112104869B (zh) 一种视频大数据存储及转码优化系统
Vijayan et al. A fully residual convolutional neural network for background subtraction
CN113763424A (zh) 基于嵌入式平台的实时智能目标检测方法及系统
WO2024071347A1 (ja) 物体検出装置、物体検出方法、及びプログラム
JP4628851B2 (ja) 物体検出方法および物体検出装置
WO2020095644A1 (ja) 変状検出装置、変状検出方法、及びコンピュータ読み取り可能な記録媒体
WO2023045627A1 (zh) 图像超分方法、装置、设备及存储介质
CN111127355A (zh) 一种对缺损光流图进行精细补全的方法及其应用
Ye et al. A survey on learning-based low-light image and video enhancement
CN110796680B (zh) 一种基于相似模板更新的目标跟踪方法和装置
WO2023190644A1 (ja) 性能指標化装置、性能指標化方法、及びプログラム
JP2011096072A (ja) 物体検出装置及び物体検出プログラム
WO2022195837A1 (ja) 画像解析装置、画像解析システム及び画像解析方法
JP2013246601A (ja) 画像処理装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23872567

Country of ref document: EP

Kind code of ref document: A1