WO2020213099A1 - オブジェクト検出・追跡装置、方法、およびプログラム記録媒体 - Google Patents

オブジェクト検出・追跡装置、方法、およびプログラム記録媒体 Download PDF

Info

Publication number
WO2020213099A1
WO2020213099A1 PCT/JP2019/016513 JP2019016513W WO2020213099A1 WO 2020213099 A1 WO2020213099 A1 WO 2020213099A1 JP 2019016513 W JP2019016513 W JP 2019016513W WO 2020213099 A1 WO2020213099 A1 WO 2020213099A1
Authority
WO
WIPO (PCT)
Prior art keywords
tracking
image
detection
unit
video
Prior art date
Application number
PCT/JP2019/016513
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 日本電気株式会社
Priority to US17/600,699 priority Critical patent/US11948312B2/en
Priority to PCT/JP2019/016513 priority patent/WO2020213099A1/ja
Priority to JP2021514722A priority patent/JP7196999B2/ja
Publication of WO2020213099A1 publication Critical patent/WO2020213099A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • G06T7/251Analysis of motion using feature-based methods, e.g. the tracking of corners or segments involving models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/41Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/52Surveillance or monitoring of activities, e.g. for recognising suspicious objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20021Dividing image into blocks, subimages or windows
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20076Probabilistic image processing

Definitions

  • the tracking process is performed in parallel with the detection process for the object tracked up to the previous frame, and then, when the detection process is completed, the detection result and the tracking result are associated with each other. ..
  • the detection process is delayed from the tracking process, the obtained detection result is the position coordinates in the past frame, so the position obtained as a result of the new object detection is in the current frame. It is out of position.
  • a tracking means provided separately from the normal tracking is used to re-find the position in the current frame to cover the delay in the detection process.
  • a second tracking means for tracking a new object with a current time image is provided in addition to the first tracking means for tracking an object that has been previously tracked with the current time image. It prevents new objects from being tracked due to delays in the detection process.
  • Patent Document 1 if the detection process takes a long time, the position obtained as a result of the tracking process may deviate from the position of the actual object, or another object may be erroneously tracked, resulting in the result. , There is a problem that tracking is interrupted or mistracking occurs. Further, if the position obtained as a result of the tracking process deviates from the actual object obtained as a result of the detection process, the detection result and the tracking result become incompatible. Therefore, a new tracking result may be generated separately from the tracking result obtained from the previous frame, and two duplicate tracking results may be generated for the same object. This also has a problem that it leads to interruption of tracking and erroneous tracking.
  • the present invention has been made in view of the above problems, and an object of the present invention is to minimize the influence of the delay in the detection process even if the detection process takes a long time and a delay occurs, and the accuracy is high. It is to realize a good tracking.
  • the detection means is the same as the acquisition means for acquiring an image, the tracking means for tracking an object in the image, and the detection means for detecting the object in the image.
  • Object detection comprising associating means for associating an object with the tracked object and for the associated object as a correction means for correcting the position of the tracked object using the position of the detected object.
  • the image is acquired, the object in the image is tracked, the object in the image is detected, and the detection and the tracking are performed in the same image among the images in the image.
  • an object detection / tracking method for associating the same objects with each other and correcting the position of the tracked object by using the position of the detected object for the associated object.
  • the process of acquiring an image, the process of tracking an object in the image, and the process of detecting an object in the image are the same as the process of detecting the object in the computer.
  • a program recording medium for recording a program is provided.
  • the detection result can be reflected in the tracking while suppressing the delay due to the detection, so that highly accurate tracking can be realized.
  • FIG. 1 shows an object detection / tracking device 100 according to this embodiment.
  • the object detection / tracking device 100 includes a video acquisition means 101, an object detection means 102, an object tracking means 103, a switch control means 104, a switch means 105, and a switch means 106.
  • the video acquisition means 101 acquires the video and outputs the acquired video to the object tracking means 103 and the switch means 106.
  • the image acquisition means 101 may acquire an image instead of an image and output the acquired image to the object tracking means 103 and the switch means 106.
  • the switch means 106 switches ON / OFF based on the switch control signal output from the switch control means 104, and when it is ON, outputs the video output from the video acquisition means 101 to the object detection means 102.
  • the object detection means 102 performs object detection on the video output from the switch means 106, outputs the object detection result to the switch means 105, and outputs the object detection end signal to the switch control means 104.
  • the switch control means 104 outputs a switch control signal to the switch means 105 and the switch means 106 based on the object detection end signal output from the object detection means 102.
  • the switch means 105 switches ON / OFF based on the switch control signal output from the switch control means 104, and when it is ON, outputs the object detection result output from the object detection means 102 to the object tracking means 103.
  • the object tracking means 103 performs object tracking processing based on the video output from the video acquisition means 101 and the object detection result output from the switch means 105, and outputs the object tracking result.
  • the image acquisition means 101 acquires the captured image or image from an image pickup device that images an area or an object to be monitored.
  • the image acquisition means 101 may acquire an image or an image from a fixed surveillance camera or a Web camera, or may acquire an image or an image from a camera mounted on a moving body such as a UAV (Unmanned Aerial Vehicle) or a vehicle. You may.
  • the video acquisition means 101 may acquire the video or image from a wearable camera worn by a police officer or a security guard, or may acquire the video or image from a video camera taken by the user.
  • the image acquisition means 101 may acquire an image or an image from a camera used for a specific purpose, such as an endoscope.
  • the video acquired by the video acquisition means 101 is output as a moving image sequence.
  • the object detection means 102 performs object detection on the image input from the video acquisition means 101, and outputs the result as the object detection result.
  • the person area is detected by using a detector that has learned the image features of the person.
  • a detector that detects based on HOG (Histograms of Oriented Gradients) characteristics or a detector that detects directly from an image using a CNN (Convolutional Neural Network) may be used.
  • the person may be detected by using a detector trained in a part of the person (for example, the head) instead of the whole person. For example, if the head position and the foot position can be detected by using a detector that has learned the head and feet, the person area can be specified.
  • it may be configured to obtain a person area by combining silhouette information (information in an area having a difference from the background model) obtained by background subtraction and head detection information.
  • silhouette information information in an area having a difference from the background model
  • head detection information information in an area having a difference from the background model
  • the object is a vehicle such as a car, a motorcycle, or a bicycle
  • it can be detected by using a detector trained with the image features of the vehicle.
  • a detector that learns the image features of the specific object may be constructed and used.
  • the object detection means 102 collects the detected object information and generates it as object detection result information.
  • the object detection result information includes time information (or information for identifying a frame such as a frame number) of the detected frame and information of the detected object.
  • the object information includes the detection position and size of the object.
  • the position of the object may be represented by a position on the screen, or may be represented by a position converted into real-world coordinates using parameters representing the position and orientation of the camera obtained by camera calibration. May be good. For example, when it is expressed by the position on the screen, it may be expressed by the coordinates of the vertices of the rectangle surrounding the object (for example, the upper left and lower right vertices). Alternatively, it may be represented by information on the width and height of one vertex and a rectangle. Further, when a plurality of objects are detected, the object detection result information includes the information of the detected plurality of objects.
  • the object detection means 102 outputs the generated object detection result information to the switch means 105. Further, the object detection means 102 outputs an object detection end signal indicating that the object detection is completed to the switch control means 104.
  • the switch control means 104 When the object detection end signal is input from the object detection means 102, the switch control means 104 outputs a signal to the switch means 105 for turning on the switch means 105 (a state in which the routes are connected).
  • the switch means 105 When the switch means 105 is turned on, the route in which the output of the object detection means 102 is input to the object tracking means 103 is connected. As a result, the object detection result information output from the object detection means 102 is transmitted to the object tracking means 103 via the switch means 105.
  • the switch means 105 returns to the OFF state (the route is interrupted).
  • the switch control means 104 outputs a signal to the switch means 106 to turn on the switch means 106 (a state in which the routes are connected).
  • the switch means 106 is turned on, the image output from the video acquisition means 101 is connected to the path input to the object detection means 102.
  • the video frame at that time is input from the video acquisition means 101 to the object detection means 102, and the object detection means 102 processes the frame.
  • the switch means 106 returns to the OFF state (the route is interrupted).
  • the object tracking means 103 holds the tracking result of the object in the past frame, and based on the tracking result, finds the position of the object to be tracked in the input frame image, and tracks the object. Generates and outputs result information. Further, in the case of a frame in which object detection result information is input, the object tracking means 103 also performs tracking processing using the object detection result information. That is, the correspondence between the object to be tracked and the object detection result is obtained, and the object detection result is reflected in the object tracking result.
  • the object detection process by the object detection means 102 takes longer than the time interval of the frame, the time of the object detection result information is earlier than the time of the frame image input from the video acquisition means 101. It will be the time of. In that case, the imaging times of the detection target frame and the tracking target frame do not match. In particular, this tendency becomes remarkable when object detection is performed based on a method having a high processing load such as deep learning. Therefore, in the object tracking means 103, in consideration of this time difference, the correspondence between the object information included in the object detection result and the object to be tracked is obtained and reflected in the object tracking result. The details of the operation of the object tracking means 103 will be described later.
  • the object tracking means 103 outputs the generated object tracking result information.
  • the object tracking result information includes time information (or information for identifying a frame such as a frame number) regarding the imaging time of the image, the position and size of the object on the image, and an ID assigned to each object to be tracked.
  • the description method of the position information is arbitrary and may be indicated by the circumscribing rectangular information of the tracking object, or the coordinates of one point in the tracking object area are obtained and the size information is expressed by the relative information based on that point. You may do so. Alternatively, it may be converted into coordinates in real space and output. For example, when it is expressed by the position on the screen, it may be expressed by the coordinates of the vertices of the rectangle surrounding the object (for example, the upper left and lower right vertices). Alternatively, it may be represented by information on the width and height of one vertex and the rectangle.
  • FIG. 2 shows the configuration of the object tracking means 103 in this embodiment.
  • the object tracking means 103 in the present embodiment includes a corresponding area search unit 201, an appearance model update unit 202, an appearance model storage unit 203, a detection result receiving unit 204, an association unit 205, and a position correction unit 206. It includes a position information storage unit 207, a new generation / deletion unit 208, an image buffer 209, and a switch unit 210.
  • the image buffer 209 stores an image input through the switch unit 210.
  • the position information storage unit 207 stores the position information of the tracking object.
  • the appearance model storage unit 203 stores the appearance model information of the tracking object.
  • the detection result receiving unit 204 receives the detection result of the object, outputs the detection result to the association unit 205, and outputs the switch control signal to the switch unit 210.
  • the association unit 205 associates the detection object with the tracking object from the detection result output from the detection result receiving unit 204 and the position information of the tracking object stored in the position information storage unit 207.
  • the association unit 205 outputs the association result to the position correction unit 206 and the new generation / deletion unit 208.
  • the position correction unit 206 corrects the position information of the tracking object already stored in the position information storage unit 207 based on the association result output from the association unit 205, and positions the corrected position information of the tracking object. Output to the information storage unit 207.
  • the new generation / deletion unit 208 determines whether or not there is a newly detected object or an object to be deleted based on the association result output from the association unit 205 and the image at the time of detection stored in the image buffer 209. Is determined.
  • the new creation / deletion unit 208 determines that there is a new object
  • the new creation / deletion unit 208 stores the position of the new tracking object in the position information storage unit 207.
  • the new generation / deletion unit 208 deletes the information of the object from the position information storage unit 207. Further, the new generation / deletion unit 208 generates the appearance model information of the object and stores it in the appearance model storage unit 203.
  • the corresponding area search unit 201 generates an object tracking result based on the appearance model information and the input image of the object stored in the appearance model storage unit 203, and sends the tracking result to the position information storage unit 207 and the appearance model update unit 202. Output.
  • the appearance model update unit 202 is based on the input image, the object tracking result output from the corresponding area search unit 201, and the object appearance model information stored in the appearance model storage unit 203, and the appearance model information of the tracking object. To update.
  • the appearance model update unit 202 stores the appearance model information of the updated tracking object in the appearance model storage unit 203.
  • the switch unit 210 outputs an input image to the image buffer 209 based on the switch control signal output from the detection result receiving unit 204.
  • the position information storage unit 207 stores the position information of the tracking target object, the tracking ID for identifying the tracking target, and the time information (or information for identifying a frame such as a frame number).
  • the position information is information representing the existence position of the tracking target in the image, for example, information of an circumscribing rectangle surrounding the object.
  • the position information may be represented by the coordinates of the upper left and lower right vertices of the rectangle, or the coordinates of a specific position in the rectangle (for example, the coordinates of one vertex of the rectangle or the coordinates of the center point), the width, and the height. It may be represented by the value of.
  • the position information may include the coordinates converted into the real space coordinate system. This value can be obtained using the camera parameters obtained by calibration. For example, the position where the object touches the ground in the image may be obtained, and this coordinate may be converted into real space coordinates and stored.
  • the position information storage unit 207 also stores the tracking likelihood information of the tracking target object.
  • the tracking likelihood information is information indicating the probability that the tracking target actually exists and can be tracked correctly. The value of the tracking likelihood information is increased when the tracking accuracy is high because the tracking result corresponds to the detection or the score of the tracking process is high.
  • the position information storage unit 207 stores not only the latest information but also tracking result information for a certain period of time for each object. For example, when the position information storage unit 207 stores the data for the past N frames, the position information storage unit 207 stores up to the tracking result information in the time frame retroactive from the current frame N frames, and deletes the previous results. You may do so.
  • the position information storage unit 207 may also store accompanying information other than the above information.
  • the position information storage unit 207 may also store information indicating whether or not it corresponds to the detection object included in the detection result. Further, when the tracking object and the detection object correspond to each other, the position information storage unit 207 may also store information about the object (for example, a detection score indicating the certainty of detection). In addition, the position information storage unit 207 may also store the latest corresponding time information.
  • the object detection result information is input to the detection result receiving unit 204.
  • the detection result receiving unit 204 outputs the received detection result information to the association unit 205, and outputs a switch control signal for turning on the switch unit 210 to the switch unit 210.
  • the switch unit 210 connects a route so that when a switch control signal for turning on the switch unit 210 is input, the input image is input to the image buffer 209. Then, when the transmission of the image to the image buffer 209 is completed, the switch unit 210 returns to the OFF state (the connection is disconnected). Since the timing at which the switch unit 210 is turned on coincides with the timing at which the switch means 106 is turned on, the image input to the image buffer 209 coincides with the image for which the object detecting means 102 next performs object detection.
  • the image buffer 209 stores the image when the image is input. However, an image previously input at the timing when the switch unit 210 is turned on is also required for processing (for example, from the time the image is input until it is used for the extraction processing of the appearance feature amount of the object described later). Try to save. The image input at the previous timing when it is no longer needed is deleted from the image buffer 209.
  • the association unit 205 reads out the position information of the tracking target object stored in the position information storage unit 207 and the tracking likelihood information associated with the position information.
  • the association unit 205 compares the position information of the tracked object, the tracking likelihood information associated with the position information, and the position information included in the object detection result information, and compares each detected object with the individual tracking. Associate with the target object.
  • the association unit 205 compares the position information at the same time (or the same frame) with each other based on the time information (or information for specifying the frame such as the frame number) included in the object detection result information. To do.
  • the association unit 205 Reads the tracking result at the time Td before the time T from the position information storage unit 207 and associates it with the detection result.
  • the mapping unit 205 obtains a matching likelihood representing the ease of matching between the detected object and the tracked object, converts this likelihood into a cost by a monotonous non-increasing function, and associates it by a method such as the Hungarian method. be able to.
  • the matching unit 205 obtains the associated likelihood based on, for example, the overlap ratio between the rectangle of the detected object and the rectangle of the tracked object (for example, the value obtained by converting the overlap ratio with a monotonous non-decreasing function). Can be done.
  • the detection result may include the appearance features of the detected object.
  • the association unit 205 also uses the appearance model information stored in the appearance model storage unit 203, which will be described later, to obtain an index showing the appearance similarity between the detected object and the tracked object, and this index also The correspondence likelihood may be determined in consideration.
  • the mapping unit 205 is based on a value obtained by multiplying the associated likelihood obtained based on the above-mentioned overlap ratio and an index showing the appearance similarity, or a value obtained by weighted addition. The correspondence between the tracking object and the detection object may be obtained.
  • the matching unit 205 For the tracking target object in which the tracking result and the tracking result are associated with each other as a result of the mapping, the matching unit 205 includes the tracking ID of the tracking target object and the position information, and is a detection object corresponding to the tracking result. And the information of are output to the position correction unit 206. Along with this, the association unit 205 outputs the tracking likelihood information of the tracking target object to the position correction unit 206. At this time, it is considered that the existence probability of the tracking target has increased due to the correspondence, so that the matching unit 205 has a value larger than the tracking likelihood read from the position information storage unit 207 before processing. It may be output. Specifically, the associating unit 205 may multiply the original tracking likelihood by, for example, a value greater than 1.
  • the association unit 205 performs a process of lowering the tracking likelihood, and outputs the tracking ID and the tracking likelihood information to the new generation / deletion unit 208. Specifically, the association unit 205 may, for example, multiply the original tracking likelihood by a value less than 1.
  • the position information storage unit 207 may store the time of the last correspondence (hereinafter, referred to as "the latest correspondence time"). In this case, the difference between the detection time and the time with the latest correspondence (hereinafter, referred to as “unsupported duration”) may be obtained, and the degree to which the tracking likelihood is changed according to the magnitude of the difference may be changed. For example, if the unsupported state continues for a while and the unsupported duration is long, the rate of reducing the tracking likelihood may be increased.
  • the association unit 205 If there is a detection object that does not correspond to the tracking target object, the association unit 205 outputs the detection object information to the new generation / deletion unit 208 as a new tracking target object. This occurs when a new object comes in from outside the screen and is detected, or when an object that has been inside the screen but has not been detected is detected.
  • the position correction unit 206 corrects the position information of the detected object (including the size) with respect to the tracking object associated with the detection result, which is input from the association unit 205. At this time, not only the position information of the tracking result at the same time as the detection time but also the position information of the tracking result of the object from the detection time to the current time is corrected. That is, the position correction unit 206 corrects not only the position information of the tracking result at the detection time Td but also the position information of the tracking result at the time t of Td ⁇ t ⁇ T.
  • the position correction method For example, when the tracking result and the detection result are rectangles, the difference in the distance between the detection result rectangle and the center of the tracking result rectangle is obtained, and the center of the tracking rectangle is shifted so as to overlap the center of the detection rectangle by that amount. To. That is, the difference between the centers is obtained between the detection result and the tracking result at the same time as the detection time, and the position information (tracking) of the tracking result of the time after the detection time stored in the position information storage unit 207 is obtained. This difference is added to the rectangular information of) to correct the position. Alternatively, only the rectangle with the latest time may be changed. Moreover, not only the position may be shifted, but also the size of the rectangle may be changed.
  • the width and height values of the rectangle may be changed so that the size matches the detection rectangle.
  • the rectangle information is represented by the upper left and lower right vertex coordinates, change the upper left and lower right vertex coordinates so that the width and height of the rectangle are the same as the values of the detected rectangle. You may.
  • the corrected object position information is stored in the position information storage unit 207.
  • tracking likelihood information associated with the position information is also stored in the position information storage unit 207.
  • the position information storage unit 207 stores the information at the latest correspondence time, the latest correspondence time is also updated to the current detection time Td.
  • the newly created / deleted unit 208 generates a tracking result for the newly detected object and determines an object that is considered to no longer exist (or was a false positive) among the tracked objects.
  • the new object is an object included in the detection result that did not correspond to any of the objects to be tracked. This occurs when a new object comes in from outside the screen and is detected, or when an object that has been inside the screen but has not been detected is detected.
  • the new creation / deletion unit 208 performs a new object addition process. Specifically, the new creation / deletion unit 208 newly assigns a tracking ID to such a new object and adds it to the tracking target object. Then, the position information is calculated and the appearance model information is constructed.
  • the new generation / deletion unit 208 converts the information of the position and size of the object included in the detection result into the position information of the tracking target object. If the formats of the detection and tracking position information are the same, the position information of the object included in the detection result may be used as the tracking target position information as it is. If the formats are different, the new generation / deletion unit 208 converts the location information for tracking. For example, when the information of the detected object is the coordinates on the screen and the tracking position information is described in the real world coordinates, the new generation / deletion unit 208 performs the process of converting to the real world coordinates. This can be converted by a known method using camera parameters.
  • the newly created / deleted unit 208 extracts the visual features of the object used for tracking the object and constructs the model.
  • the new generation / deletion unit 208 extracts features representing the color, shape, and pattern of an object from an image to construct a template.
  • various existing features can be used.
  • the feature amount standardized by MPEG (Moving Picture Experts Group) -7 can be used.
  • the new generation / deletion unit 208 may build a model using the features extracted by deep learning.
  • features may be extracted from a part of the object area instead of the entire object area.
  • the area is not limited to one, and the object area may be divided into a plurality of areas, and each area may have a template.
  • various methods such as a method of evenly dividing into a grid and a method of selecting based on a specific part of an object can be applied.
  • features outside the object area may be held as a negative template, and may be used in combination with the object template (positive template) in tracking.
  • the feature amount extraction may be performed not only on the new object but also on other objects corresponding to the detection, and the template extracted from a plurality of frames having different times may be provided.
  • the template when the first appearance model is built, the template is built with only one frame, but the number of templates may be increased as the tracking process progresses. At this time, not only the number of templates may be increased, but also the number of templates may be controlled to be a predetermined number.
  • the new generation / deletion unit 208 may integrate image features obtained in different frames to build and hold an appearance model.
  • the position information generated by the newly generated / deleted unit 208 in this way is stored in the position information storage unit 207 in the same manner as other tracking target objects together with the time information (or information that identifies the frame) and the tracking ID information. Will be done.
  • the appearance model information is stored in the appearance model storage unit 203 in the same manner as other tracking target objects, together with the time information (or information for specifying a frame) and the ID information of the object.
  • the object to be deleted by the newly created / deleted unit 208 is determined for the unsupported tracked object.
  • the newly created / deleted unit 208 among the unsupported tracking target objects, those whose tracking likelihood has dropped below the deletion threshold have disappeared off the screen or hidden behind obstacles in the screen and have already disappeared.
  • the new generation / deletion unit 208 deletes the position information corresponding to the tracking ID of the object from the position information storage unit 207.
  • the new generation / deletion unit 208 deletes the appearance model information corresponding to the tracking ID from the appearance model storage unit 203.
  • the new generation / deletion unit 208 does not perform the deletion process, and only the value of the tracking likelihood stored in the position information storage unit 207 is stored. Change to the updated value.
  • the location information of the tracking target updated in this way is output as tracking result information. It is also output to the corresponding area search unit 201 and used in tracking the next frame.
  • the corresponding area search unit 201 is the tracking target object in the input current time frame image based on the latest position information (including size information) of each tracking target object stored in the position information storage unit 207. Find the position of. Specifically, the corresponding area search unit 201 sets a search range around the latest position information in the frame image, and searches for a region that is most likely to be a tracking target within that range. That is, the corresponding area search unit 201 obtains a region in which the feature amount extracted from each region in the search region is most similar to the object to be tracked included in the appearance model feature information. Then, the corresponding area search unit 201 outputs the obtained area information as the tracking result of the tracked object in the current frame.
  • the corresponding area search unit 201 updates the tracking likelihood information indicating the certainty of the tracking according to the certainty of the corresponding area search, and outputs the tracking likelihood information together. For example, when the tracking score indicates the certainty of tracking, the tracking score may be used as it is as the tracking likelihood. Alternatively, if there are other tracking objects nearby, or if there are places where false positives are likely to occur, the likelihood may be lowered in consideration of their degree.
  • the corresponding area search unit 201 outputs the result that there is no corresponding area. In this case, update to lower the tracking likelihood and output together.
  • the corresponding area search unit 201 outputs the generated object tracking result information to the appearance model update unit 202 and the position information storage unit 207.
  • the appearance model update unit 202 updates the appearance model information of each tracking target object.
  • the appearance model update unit 202 obtains the existence position of the object in the image based on the position information obtained by the corresponding area search unit 201, and extracts the feature amount of the corresponding image area.
  • the appearance model updating unit 202 updates with the feature amount obtained by weighting and averaging the extracted feature amount and the feature amount originally stored in the appearance model storage unit 203.
  • the appearance model update unit 202 may be replaced with a new feature quantity instead of taking the weighted average.
  • the appearance model update unit 202 may use various time-series data update methods other than the weighted average. If you have multiple templates, you may want to update one or more of them by the method described above.
  • the weight value at the time of updating may be adjusted according to the degree of hiding.
  • the latest position information of each tracking target object stored in the position information storage unit 207 is output as tracking result information. Since the latest position information is output here, the delay due to detection has no effect, and the tracking result without delay is output.
  • the video acquisition means 101 acquires an image (S301).
  • the object tracking means 103 tracks the object in the acquired image (S303) and stores the tracking result in the position information storage unit 207 (S304).
  • the appearance model update unit 202 updates the appearance model based on the position information of the tracked object (S305), and stores the appearance model in the appearance model storage unit 203 (S306).
  • the switch means 106 and the switch unit 210 are ON (S302 Yes)
  • the acquired image is output to the object detection means 102 and stored in the image buffer 209 in parallel with the processing of S303 to S306. (S307).
  • the switch means 106 and the switch unit 210 are turned off (S308).
  • the object detecting means 102 detects the object in the acquired image (S309).
  • the switch control means 104 turns on the switch means 106 and the switch unit 210 (S310).
  • the detection process (S309) takes time, the detection process is not completed when S306 ends, and the switch is not always turned on in S310.
  • the association unit 205 associates the same detected and tracked objects in the same image among the acquired images (S312).
  • the position correction unit 206 corrects the position of the tracked object for the associated object by using the position of the detected object (S313).
  • the switch is OFF (S311 No) since the detection result does not exist yet, these processes are skipped.
  • the video acquisition means 101 waits until the next image is acquired, and when there is no next image (S314 No), the video acquisition means 101 ends the process. To do.
  • the association unit 205 If there is no detection result for the object in the acquired image (S401 No), it is not necessary to perform the association, so the association unit 205 ends the process. If there is a detection result (S401 Yes), the association unit 205 confirms whether or not there is a tracking result. When there is no tracking result (S402 No), the new generation / deletion unit 208 creates a detection object as a new tracking object and stores the position information in the position information storage unit 207. Further, the new generation / deletion unit 208 constructs an appearance model, stores it in the appearance model storage unit 203 (S411), and ends the process. On the other hand, when there is a tracking result (S402 Yes), the associating unit 205 associates the detected object with the tracked object (S403).
  • the association unit 205 confirms the result of the association, and if the detection result of the object includes a detection object associated with the tracking object (S404 Yes), the update that increases the likelihood of the associated tracking object. (S405). On the other hand, if there is no tracking object corresponding to the detected object (S404 No), the process of S405 is skipped.
  • the mapping unit 205 confirms whether or not there is an unsupported tracking object that does not correspond to any of the detected objects, and if it exists (S406 Yes), the unsupported tracking object is checked. A process of lowering the likelihood is performed (S407). Then, the new generation / deletion unit 208 confirms whether or not there is a tracking object whose likelihood is equal to or less than the deletion threshold value. When there is a tracking object whose likelihood is less than or equal to the deletion threshold (S408 Yes), the new generation / deletion unit 208 deletes related information such as the position information and appearance model of the tracking object whose likelihood is less than or equal to the deletion threshold. Do (S409). If there is no tracking object whose likelihood is less than or equal to the deletion threshold (S408 No), this process is skipped. On the other hand, when there is no unsupported tracking object (S406 No), the processes from S407 to S409 are skipped.
  • mapping unit 205 confirms whether or not there is an unsupported detection object that does not correspond to any tracking object.
  • the new creation / deletion unit 208 performs the above-mentioned new tracking object generation process for the unsupported detection object (S411), and ends the process. To do.
  • the object tracking / detecting device in the present embodiment reflects the result corresponding to the delayed input detection in the latest tracking result and uses it for the subsequent tracking. As a result, the detection result is appropriately reflected in addition to the newly detected object, so that highly accurate tracking can be performed. Further, since the image buffer is configured to store only the minimum number of images, highly accurate tracking is possible while suppressing the storage capacity.
  • FIG. 5 shows the configuration of the object tracking means 103 in this embodiment.
  • the object tracking means 103 in the present embodiment includes a corresponding area search unit 201, an appearance model update unit 202, an appearance model storage unit 203, a detection result receiving unit 204, an association unit 205, and a position correction unit 206. It includes a position information storage unit 207, a new generation / deletion unit 208, an image buffer 209, a switch unit 210, and an appearance model update unit 320.
  • the difference between the object tracking means 103 in the first embodiment and the object tracking means 103 in the present embodiment is that the object tracking means 103 in the present embodiment includes an appearance model updating unit 320.
  • connection relationship other than the appearance model update unit 320 is the same as that of the object tracking means 103 in the first embodiment.
  • the appearance model update unit 320 updates the appearance model of the tracking object based on the position information of the tracking object stored in the position information storage unit 207 and the image information stored in the image buffer 209.
  • the appearance model update unit 320 stores the updated appearance model information in the appearance model storage unit 203.
  • the operations other than the appearance model update unit 320 are the same as in the case of the first embodiment. Therefore, in the following, only the processing operation of the appearance model update unit 320 will be described.
  • the appearance model update unit 320 updates the appearance model for the tracking target object corresponding to the detection result object.
  • the appearance model update unit 320 reads the image corresponding to the detection time Td from the image buffer 209.
  • the appearance model update unit 320 extracts the appearance feature amount of the object from the image based on the position information of the corrected object output from the position information storage unit 207.
  • the appearance model updating unit 320 updates using the appearance model information of the tracking target object stored in the appearance model storage unit 203.
  • the method of updating the appearance model is the same as that of the appearance model updating unit 202.
  • the updated appearance model is output to and stored in the appearance model storage unit 203.
  • the image deletion process at time Td in the image buffer 209 is performed after the processing by both the new generation / deletion unit 208 and the appearance model update unit 320 is completed.
  • the object tracking / detecting device in the present embodiment updates the appearance model using the detection result.
  • the tracking process can be performed using the updated appearance model, so that the accuracy of subsequent tracking is improved. Can be made to.
  • FIG. 6 shows the configuration of the object tracking means 103 in the embodiment.
  • the object tracking means 103 in the present embodiment includes a corresponding area search unit 201, an appearance model update unit 202, an appearance model storage unit 203, a detection result receiving unit 204, an association unit 205, and a position correction unit 206. It includes a position information storage unit 207, a new generation / deletion unit 408, an image buffer 209, a switch unit 210, a prediction unit 430, a motion model storage unit 431, and a motion model update unit 432.
  • the difference between the object tracking means 103 in the first embodiment and the object tracking means 103 in the present embodiment is that the object tracking means 103 in the present embodiment is a new generation / deletion unit instead of the new generation / deletion unit 208. 408 is provided, and a prediction unit 430, a motion model storage unit 431, and a motion model update unit 432 are newly provided.
  • the motion model storage unit 431 stores the motion model information of the tracking object.
  • the prediction unit 430 obtains the predicted position of the tracking object based on the movement model information of the tracking object stored in the movement model storage unit 431, and outputs the predicted position information of the tracking object to the corresponding area search unit 201.
  • the predicted position information of the object output from the prediction unit 430 is input to the corresponding area search unit 201 instead of the position information of the tracking result. Further, the object tracking result output from the corresponding area search unit 201 is output to the motion model update unit 432 in addition to the position information storage unit 207 and the appearance model update unit 202.
  • the motion model update unit 432 updates the motion model information of the tracking object based on the motion model information of the tracking object stored in the motion model storage unit 431 and the object tracking result output from the corresponding area search unit 201. To do.
  • the motion model update unit 432 stores the updated motion model information in the motion model storage unit 431.
  • the new generation / deletion unit 408 creates newly detected objects and objects to be deleted based on the association result output from the association unit 205 and the image at the time of detection stored in the image buffer 209. judge.
  • the new generation / deletion unit 408 stores the position of the new tracking object in the position information storage unit 207 according to the result of the determination, and deletes the information of the object to be deleted from the position information storage unit 207.
  • the new generation / deletion unit 408 generates the appearance model information of the object and stores it in the appearance model storage unit 203.
  • the new generation / deletion unit 408 generates motion model information and stores it in the motion model storage unit 431.
  • the processing operations of the configurations other than the prediction unit 430, the motion model storage unit 431, the motion model update unit 432, and the new generation / deletion unit 408 are the same as in the case of the first embodiment. Therefore, in the following, the processing operations of the prediction unit 430, the motion model storage unit 431, the motion model update unit 432, and the new generation / deletion unit 408 will be described.
  • the motion model storage unit 431 information modeling the motion of each tracking object is stored in association with the tracking ID.
  • the motion vector between frames obtained from the history of past positions is stored as a motion model. I will do it.
  • the size of the object on the image also changes, so that information on the change in size may be included in the motion model. For example, if it is assumed that the size of the rectangle of the object changes linearly, the rate of change (ratio of enlargement / reduction) may be included in the motion model of the object.
  • the movement may be modeled by using a Kalman filter, a particle filter, or the like.
  • a Kalman filter for example, a four-dimensional vector consisting of a two-dimensional position and velocity on the image is stored as a state variable, and each parameter describing the state equation and the observation equation of the Kalman filter is stored as motion model information. ..
  • the two-dimensional position on the image is, for example, the coordinates of the center of the rectangle or the midpoint of the lower side of the rectangle.
  • a particle filter in addition to the parameters that describe the movement, the number of particles used, the state information of each particle, the parameter of the magnitude of random noise used when determining the position of each particle, etc. are used as movement model information. Store it. It is also possible to apply other motion models as well.
  • the prediction unit 430 predicts the position of the object in the current frame from the position of the past object based on each motion model for each tracking target object. As this method, a method suitable for the motion model to be used is used.
  • the prediction unit 430 predicts the current position by adding a motion vector to the position in the previous frame. If the time intervals are not equal, the motion vector is expanded and contracted and then added in consideration of the change in the time difference. In addition, when considering not only the movement but also the change in size, the prediction unit 430 multiplies the size of the object in the previous frame by the rate of change in size to obtain the size of the object in the current frame. You may try to predict. Also in this case, if the time intervals are not equal, the rate of change in size is changed in consideration of the change in the time difference.
  • the prediction unit 430 obtains the predicted value of the state variable in the current frame from the value of the state variable in the previous frame based on the state equation of the Kalman filter.
  • the prediction unit 430 adds the movement of the object as a whole to the position of each particle in the previous frame, adds random noise to each particle, and predicts the position of each particle.
  • the change in size may be taken into consideration as in the case of the linear model.
  • the predicted value of the position information (including the size) of each tracked object obtained is output to the corresponding area search unit 201. That is, instead of the position of the object in the previous frame, the predicted position of the object in the current frame calculated by the prediction unit 430 is input to the corresponding area search unit 201.
  • the corresponding area search unit 201 sets the search range according to this predicted position and searches for the corresponding area. This operation is the same as the corresponding area search unit 201 of each embodiment described so far.
  • the obtained position information of the tracking target object is also output to the motion model update unit 432.
  • the motion model update unit 432 updates the motion model information. This update method depends on the motion model used.
  • the motion model update unit 432 obtains the motion vector by taking the difference between the position obtained in the current frame and the position of the previous frame.
  • the motion model update unit 432 holds a history of the positions of the objects to be tracked in the past several frames, obtains a motion vector between them, and obtains representative values (for example, (weighted) average, median, mode, etc.). ) May be a motion vector. The same applies to the rate of change in size.
  • the motion model update unit 432 updates the state variable of the Kalman filter according to the observation equation and also updates the value of the parameter of the accompanying Kalman filter.
  • the corresponding area search unit 201 outputs not only the obtained position but also the information of the entire particle to the motion model update unit 432.
  • the motion model update unit 432 updates the particle filter using the information of the position and the entire particle output from the corresponding area search unit 201. That is, the motion model update unit 432 calculates the overall likelihood and resamples the particles based on the likelihood, and generates the updated particle information as the update information of the motion model.
  • the updated motion model is stored in the motion model storage unit 431 and used for predicting the position of the tracked object from the next time onward.
  • the new generation / deletion unit 408 also generates a motion model as an initial motion model for the new object, and stores it in the motion model storage unit 431 in the same manner as other tracking target objects.
  • the generated motion model differs depending on the type of motion model to be used, but the motion model is generated, the model is initialized by the initialization method corresponding to each model, and then stored in the motion model storage unit 431.
  • the newly generated / deleted unit 408 also deletes the information of the corresponding tracking ID stored in the motion model storage unit 431 for the tracking target object to be deleted.
  • the other operations are the same as those of the new generation / deletion unit 208 of the object tracking means 103 of each embodiment described so far.
  • the operations of the configurations other than the prediction unit 430, the motion model storage unit 431, the motion model update unit 432, and the new generation / deletion unit 408 are the same as those of the object tracking means 103 of each embodiment described so far, and the latest obtained. Tracking result information is output.
  • the object tracking means in the present embodiment tracks while predicting the position of the object to be tracked. As a result, the accuracy of tracking can be improved, and even when the movement is large, the search range in the corresponding area search unit can be narrowed down based on the predicted position, and the processing time can be reduced.
  • FIG. 7 shows the configuration of the object tracking means 103 in this embodiment.
  • the object tracking means 103 in the present embodiment includes a corresponding area search unit 201, an appearance model update unit 202, an appearance model storage unit 203, a detection result receiving unit 204, an association unit 205, and a position correction unit 206.
  • the difference between the object tracking means 103 in the third embodiment and the object tracking means 103 in the present embodiment is that the object tracking means 103 in the present embodiment includes an appearance model updating unit 320 and a motion model updating unit 540. Is.
  • the processing operation of the appearance model update unit 320 is the same as in the case of the second embodiment. Specifically, the appearance model update unit 320 is stored in the appearance model storage unit 203 based on the position information of the tracking object stored in the position information storage unit 207 and the image information stored in the image buffer 209. Update the appearance model of the tracking object you are using. The appearance model update unit 320 stores the updated appearance model information in the appearance model storage unit 203.
  • the motion model update unit 540 updates the motion model information of the tracking object based on the motion model information of the tracking object stored in the motion model storage unit 431 and the position information of the object tracking result output from the position information storage unit 207. To do.
  • the motion model update unit 540 stores the updated motion model information in the motion model storage unit 431.
  • the motion model update unit 540 updates the motion model based on the result of associating the detected object with the tracked object. That is, the motion model update unit 540 is based on the motion model information before the update stored in the motion model storage unit 431 and the position information of the tracked object after correction output from the position information storage unit 207. , Re-find the motion model.
  • the motion model update unit 540 stores the re-obtained motion model information in the motion model storage unit 431.
  • the characteristics of the motion model obtained based on the position information of the detected object may differ from the characteristics of the motion model obtained by the tracking process. Therefore, it is possible to have a motion model individually and integrate them for prediction.
  • the position of the object obtained by detection is older than the position information of the object obtained by tracking. Therefore, it is difficult to predict the position in the current frame because there is a time difference.
  • the position information obtained by tracking can be predicted from the position information up to immediately before the time of the current frame, it is easy to make a prediction, but the position shifts due to tracking, which is called drift. The accuracy is low. Therefore, the position accuracy itself is often higher in the detection result.
  • the position of the immediately preceding tracking may be used as it is for prediction.
  • the position obtained by the previous tracking may not be used, and the position in the current frame may be predicted directly from the position of the detected object.
  • a variable that determines which motion model to use may be stored as a parameter of the motion model and used by the prediction unit 430.
  • both may be weighted and used according to the certainty thereof.
  • the weighting parameter is stored as a motion model parameter and used by the prediction unit 430.
  • the object detection / tracking device in the present embodiment reflects the result of the association between detection and tracking in the motion model. This makes it possible to improve the accuracy of tracking.
  • FIG. 8 is a diagram showing a configuration of an object detection / tracking device according to the present embodiment.
  • an outline of the object detection / tracking device will be described with reference to FIG.
  • the object detection / tracking device 10 in the present embodiment includes an acquisition unit 11, a detection unit 12, a tracking unit 13, an association unit 14, and a correction unit 15.
  • the acquisition unit 11 acquires an image.
  • the acquisition unit 11 outputs the acquired image to the detection unit 12 and the tracking unit 13.
  • the detection unit 12 detects an object in the image input from the acquisition unit 11. Specifically, the detection unit 12 specifies a region of the object in the input image and a position of the object in the image (hereinafter, referred to as “detection position”). The detection unit 12 outputs a detection result including a detection position and time information (or information for identifying a frame such as a frame number).
  • the process of detecting an object from an image in the detection unit 12 may take a long time, and this tendency is particularly remarkable in a deep learning-based detection method. Therefore, the tracking unit 13 processes the acquired image in parallel with the detection unit 12.
  • the tracking unit 13 tracks the objects in the acquired image. Specifically, the tracking unit 13 specifies the position of the same object as the tracked object (hereinafter, referred to as “tracking position information”) in the image acquired at a time earlier than the acquired image.
  • the tracking unit 13 includes a tracking position of each identified object, a tracking ID for identifying the object, and time information (or information for identifying a frame such as a frame number) of the acquired image. Is output.
  • the association unit 14 associates the detected object with the tracked object at the same time based on the detection result and the tracking result.
  • the correction unit 15 corrects the position of the tracked object by using the position of the detected object.
  • FIG. 9 is a flowchart showing the flow of processing from the acquisition of the image by the object detection / tracking device 10 in the present embodiment to the correction of the position information.
  • the processing flow of the object detection / tracking device will be described with reference to FIG.
  • the acquisition unit 11 acquires an image (S901), and the tracking unit 13 tracks the objects in the acquired image (S902).
  • the detection unit 12 finishes detecting the object in the image performed on the previous image (S903 Yes)
  • the detection unit 12 outputs the detection result to the association unit 14 and in the image acquired this time.
  • the process of detecting the object of (S904) is started.
  • the association unit 14 associates the same objects detected and tracked in the images at the same time (S905).
  • the correction unit 15 corrects the position of the tracked object by using the position of the detected object (S906).
  • the detection unit 12 has not finished detecting the object (S903 No.)
  • the association and correction processing are skipped.
  • the process returns to S901 to acquire the image, and when there is no next image (S907 No), the process ends.
  • the object detection / tracking device in the present embodiment performs the tracking process in parallel even if the detection process is delayed, and when the detection process is completed, the tracking result is corrected using the detection result. As a result, even if the detection process is delayed, highly accurate tracking can be realized.
  • the processing of each component may be realized, for example, by the computer system reading and executing a program stored in a computer-readable storage medium and causing the computer system to execute the processing.
  • the "computer-readable storage medium” includes, for example, portable media such as optical disks, magnetic disks, magneto-optical disks, and non-volatile semiconductor memories, and ROMs (Read Only Memory) and hard disks built in computer systems. It is a storage device.
  • Computer readable storage media include those that can temporarily hold programs such as volatile memory inside a computer system, and those that transmit programs such as communication lines such as networks and telephone lines. Including. Further, the above-mentioned program may be for realizing a part of the above-mentioned functions, and may further realize the above-mentioned functions in combination with a program already stored in the computer system. ..
  • the "computer system” is, for example, a system including a computer 900 as shown in FIG.
  • the computer 900 includes the following configurations. -One or more CPUs (Central Processing Units) 901 -ROM902 -RAM (Random Access Memory) 903 -Program 904A and storage information 904B loaded into RAM903 A storage device 905 that stores the program 904A and the storage information 904B. Drive device 907 that reads and writes the storage medium 906.
  • CPUs Central Processing Units
  • ROM902 -RAM Random Access Memory
  • Storage information 904B loaded into RAM903
  • a storage device 905 that stores the program 904A and the storage information 904B.
  • Drive device 907 that reads and writes the storage medium 906.
  • each component of each device in each embodiment is realized by the CPU 901 loading the program 904A that realizes the function of the component into the RAM 903 and executing the program 904A.
  • the program 904A that realizes the functions of each component of each device is stored in, for example, in the storage device 905 or ROM 902 in advance. Then, the CPU 901 reads out the program 904A as needed.
  • the storage device 905 is, for example, a hard disk.
  • the program 904A may be supplied to the CPU 901 via the communication network 909, or may be stored in the storage medium 906 in advance, read by the drive device 907, and supplied to the CPU 901.
  • the storage medium 906 is a portable medium such as an optical disk, a magnetic disk, a magneto-optical disk, and a non-volatile semiconductor memory.
  • each device may be implemented by a possible combination of a computer 900 and a program that are separate for each component.
  • a plurality of components included in each device may be realized by a possible combination of one computer 900 and a program.
  • each component of each device may be realized by other general-purpose or dedicated circuits, a computer, or a combination thereof. These may be composed of a single chip or may be composed of a plurality of chips connected via a bus.
  • each component of each device When a part or all of each component of each device is realized by a plurality of computers, circuits, etc., the plurality of computers, circuits, etc. may be centrally arranged or distributed.
  • a computer, a circuit, or the like may be realized as a form in which each is connected via a communication network, such as a client-and-server system or a cloud computing system.
  • the configurations of the above-described embodiments may be combined or some components may be replaced. Further, the configuration of the present invention is not limited to the above-described embodiment, and various modifications may be made without departing from the gist of the present invention.
  • (Appendix 1) How to get the video and A tracking means for tracking objects in the video, and A detection means for detecting an object in the image and Among the images in the video, the mapping means for associating the same objects detected and tracked in the images at the same time, and With respect to the associated object, a correction means for correcting the position of the tracked object using the position of the detected object, and An object detection / tracking device equipped with.
  • Appendix 2 The object detection / tracking device according to Appendix 1, wherein the correction means corrects the position of the corresponding object in at least one image of the image acquired after the detection time.
  • (Appendix 3) Further provided with a new generation means for generating an appearance model representing the appearance visual features of the tracked object for each tracked object.
  • the tracking means searches for a region similar to the appearance model in the image in the video acquired by the acquisition means.
  • the new generation means performs a new object addition process for newly adding to the tracked object for the detected object that does not correspond to the tracked object in the mapping.
  • the object detection / tracking device described in. Appendix 4)
  • Appearance model updating means for updating the appearance model based on the position where the object is detected and the image at the time of the detection with respect to the object corresponding in the association. With more The object detection / tracking device according to Appendix 3, wherein the tracking means searches for a region similar to the updated appearance model in the image in the video in the tracking.
  • the new generation means Further provided with predictive means for predicting the position of the tracked object in the newly acquired image in the video based on the motion model for the movement of the object and the history of the position of the tracked object.
  • the new generation means generates a motion model for each of the tracked objects.
  • the object detection / tracking device according to any one of Appendix 3 or 4, wherein the tracking means searches for a search area determined based on the predicted position in the image in the video in the tracking.
  • the new generation means generates an initial motion model in the new object addition process.
  • the object detection / tracking device according to Appendix 5, wherein the tracking means uses the generated initial motion model in the subsequent tracking process.
  • Tracking device. (Appendix 8) The new generation means generates motion models for the detected object and the tracked object, respectively.
  • the prediction means is When the difference between the position of the tracked object and the position of the detected object in the image at a time before the image is equal to or less than the threshold value, a new acquisition is made based on the position of the tracked object.
  • the object detection / tracking device calculates the predicted position of the object in a newly acquired image in an image based on the position of the detected object when the difference is larger than the threshold value.
  • Appendix 10 Get the video, Track the objects in the video Detect the object in the video and Corresponding the same objects detected and tracked in the same image among the images in the video, For the associated object, the position of the tracked object is corrected using the position of the detected object.
  • Object detection / tracking method Get the video, Track the objects in the video Detect the object in the video and Corresponding the same objects detected and tracked in the same image among the images in the video.
  • the object detection / tracking device of the present invention By using the object detection / tracking device of the present invention, it is possible to track an object with a small delay even when the detection process takes a long time. Therefore, it can be used not only for video monitoring but also for tracking an object in applications that require high real-time characteristics, such as real-time detection and tracking of lesion sites using an endoscopic camera.
  • Object detection / tracking device 101 Video acquisition means 102 Object detection means 103 Object tracking means 104 Switch control means 105 Switch means 106 Switch means 201 Corresponding area search unit 202 Appearance model update unit 203 Appearance model storage unit 204 Detection result receiving unit 205 Correspondence Attachment 206 Position correction unit 207 Position information storage unit 208 New generation / deletion unit 209 Image buffer 210 Switch unit 320 Appearance model update unit 408 New generation / deletion unit 430 Prediction unit 431 Motion model storage unit 432 Motion model update unit 540 Motion model Update unit 10 Object detection / tracking device 11 Acquisition unit 12 Detection unit 13 Tracking unit 14 Correspondence unit 15 Correction unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Image Analysis (AREA)

Abstract

映像からのオブジェクト検出処理に時間がかかり、遅延が生じる場合であっても、その遅延の影響を最小限に抑え、高精度な追跡を実現するために、本発明のオブジェクト検出・追跡装置は、映像を取得する取得手段と、前記映像中のオブジェクトを追跡する追跡手段と、前記映像中のオブジェクトを検出する検出手段と、前記映像中の画像のうち同一の画像において前記検出及び前記追跡された、同一のオブジェクトを対応付ける対応付け手段と、前記対応付いたオブジェクトについて、前記検出されたオブジェクトの位置を用いて、前記追跡されたオブジェクトの位置を補正する補正手段と、を備える。

Description

オブジェクト検出・追跡装置、方法、およびプログラム記録媒体
 撮像装置によって取得した映像からオブジェクトを検出し、追跡する装置、方法、およびプログラム記録媒体に関する。
 従来、カメラを用いて物体や人物を検出し、追跡する装置が提案されている。特に近年は、Tracking by Detectionと呼ばれる、検出に基づいて物体の追跡を行う方式が主流であり、この枠組みで追跡する方式が数多く提案されている。ただし、画像からの物体検出には処理時間がかかることがあり、特に、深層学習ベースの検出方式では、この傾向が顕著である。そこで、検出時間による遅延を考慮した方式も提案されている。
 例えば、特許文献1では、以前のフレームまでで追跡されている物体については、検出処理と並行して追跡処理を行い、その後、検出処理が終了したら、検出結果と追跡結果の対応付け処理を行う。一方、対応づかない新規物体があるときは、検出処理が追跡処理よりも遅延した場合、求まった検出結果は過去フレームでの位置座標であるため、新規物体検出の結果得られる位置が現フレームでの位置からずれている。このことを考慮して、通常の追跡とは別に設けた追跡手段によって、現フレームでの位置を求め直し、検出処理の遅延をカバーするようにしている。すなわち、特許文献1では、以前に追跡したことのある物体を現時刻画像で追跡する第1の追跡手段とは別に、新規物体を現時刻画像で追跡する第2の追跡手段を備えることにより、検出処理の遅延のせいで新規物体が追跡されなくなることを防止している。
特開2016-162232号公報
 しかしながら、特許文献1では、検出処理に時間がかかってしまうと、追跡処理の結果得られる位置と実際の物体の位置とがずれたり、誤って別の物体を追跡したりしてしまい、その結果、追跡の途切れや誤追跡が生じるという問題がある。また、追跡処理の結果得られる位置が検出処理の結果得られる実際の物体からずれてしまうと、検出結果と追跡結果とが対応づかなくなる。そのため、以前のフレームから得られた追跡結果とは別に新たな追跡結果が生成され、同一物体に対して2つの重複した追跡結果が生成されることが生じ得る。これも、追跡の途切れや誤追跡に繋がるという問題がある。
 [発明の目的]
 本発明は、上記課題に鑑みてなされたものであり、その目的は、検出処理に時間がかかり、遅延が生じる場合であっても、その検出処理の遅延の影響を最小限に抑え、高精度な追跡を実現することである。
 
 本発明の第1の視点によれば、画像を取得する取得手段と、当該画像中のオブジェクトを追跡する追跡手段と、当該画像中のオブジェクトを検出する検出手段と、同一の、当該検出されたオブジェクトと当該追跡されたオブジェクトとを対応付ける対応付け手段と、対応付いたオブジェクトについて、当該検出されたオブジェクトの位置を用いて、当該追跡されたオブジェクトの位置を補正する補正手段と、を備えるオブジェクト検出・追跡装置が提供される。
 本発明の第2の視点によれば、映像を取得し、前記映像中のオブジェクトを追跡し、前記映像中のオブジェクトを検出し、前記映像中の画像のうち同一の画像において前記検出及び前記追跡された、同一のオブジェクトを対応付け、前記対応付いたオブジェクトについて、前記検出されたオブジェクトの位置を用いて、前記追跡されたオブジェクトの位置を補正する、オブジェクト検出・追跡方法が提供される。
 本発明の第3の視点によれば、コンピュータに対して、画像を取得する処理と、当該画像中のオブジェクトを追跡する処理と、当該画像中のオブジェクトを検出する処理と、同一の、当該検出されたオブジェクトと当該追跡されたオブジェクトとを対応付ける処理と、当該対応付いたオブジェクトについて、検出されたオブジェクトの位置を用いて、当該追跡されたオブジェクトの位置を補正する処理と、を実行させるためのプログラムを記録するプログラム記録媒体が提供される。
 
 本発明によれば、検出による遅延を抑えつつ、検出の結果を追跡に反映させることができるため、高精度な追跡を実現することができる。
 
第1の実施形態におけるオブジェクト検出・追跡装置の構成を示す図である。 第1の実施形態におけるオブジェクト追跡手段の構成を示す図である。 第1の実施形態におけるオブジェクト検出・追跡装置の処理動作を示すフローチャートである。 第1の実施形態におけるオブジェクト検出・追跡装置の対応付け処理の詳細を示すフローチャートである。 第2の実施形態におけるオブジェクト追跡手段の構成を示す図である。 第3の実施形態におけるオブジェクト追跡手段の構成を示す図である。 第4の実施形態におけるオブジェクト追跡手段の構成を示す図である。 第5の実施形態におけるオブジェクト検出・追跡装置の構成を示す図である。 第5の実施形態におけるオブジェクト検出・追跡装置の処理動作を示すフローチャートである。 本発明の各実施形態の各部を構成するハードウェアの例を示すブロック図である。
 <第1の実施形態>
 本発明の第1の実施形態について、図面を用いて詳細に説明する。
 図1に、本実施形態におけるオブジェクト検出・追跡装置100を示す。オブジェクト検出・追跡装置100は、映像取得手段101と、オブジェクト検出手段102と、オブジェクト追跡手段103と、スイッチ制御手段104と、スイッチ手段105と、スイッチ手段106と、を備える。
 映像取得手段101は、映像を取得し、取得した映像をオブジェクト追跡手段103とスイッチ手段106に出力する。映像取得手段101は、映像ではなく画像を取得し、取得した画像をオブジェクト追跡手段103とスイッチ手段106に出力してもよい。
 スイッチ手段106は、スイッチ制御手段104から出力されるスイッチ制御シグナルに基づいてON/OFFを切りかえ、ONのときには、映像取得手段101から出力される映像をオブジェクト検出手段102に出力する。
 オブジェクト検出手段102は、スイッチ手段106から出力される映像に対してオブジェクト検出を行い、オブジェクト検出結果をスイッチ手段105に出力するとともに、オブジェクト検出終了シグナルをスイッチ制御手段104へ出力する。
 スイッチ制御手段104は、オブジェクト検出手段102から出力されるオブジェクト検出終了シグナルに基づいて、スイッチ制御シグナルをスイッチ手段105とスイッチ手段106に出力する。
 スイッチ手段105は、スイッチ制御手段104から出力されるスイッチ制御シグナルに基づいてON/OFFを切りかえ、ONのときには、オブジェクト検出手段102から出力されるオブジェクト検出結果をオブジェクト追跡手段103に出力する。
 オブジェクト追跡手段103は、映像取得手段101から出力される映像とスイッチ手段105から出力されるオブジェクト検出結果に基づいて、オブジェクトの追跡処理を行い、オブジェクト追跡結果を出力する。
 次に、本実施形態におけるオブジェクト検出・追跡装置100の動作について説明する。
 映像取得手段101は、監視対象となるエリアや物体を撮像する撮像装置から、当該撮像した映像又は画像を取得する。例えば、映像取得手段101は、映像又は画像を、固定の監視カメラやWebカメラから取得してもよいし、UAV(Unmanned Aerial Vehicle)や車両のように、移動体に装着されたカメラから取得してもよい。あるいは、映像取得手段101は、映像又は画像を、警察官や警備員が装着するウェアラブルカメラから取得してもよいし、ユーザが撮影するビデオカメラから取得してもよい。あるいは、映像取得手段101は、内視鏡のように、特定の目的で使用されるカメラから、映像又は画像を取得してもよい。映像取得手段101により取得された映像は、動画像列として出力される。
 オブジェクト検出手段102は、映像取得手段101から入力される画像に対してオブジェクト検出を行い、結果をオブジェクト検出結果として出力する。オブジェクトが人物の場合、人物の画像特徴を学習した検出器を用いて、人物領域を検出する。例えば、HOG(Histograms of Oriented Gradients)特徴に基づいて検出する検出器や、CNN(Convolutional Neural Network)を用いて画像から直接検出する検出器を用いてもよい。あるいは、人全体ではなく、人の一部の領域(例えば頭部など)を学習させた検出器を用いて人物を検出するようにしてもよい。例えば頭部や足下を学習させた検出器を用い、頭部位置と足下位置が検出できれば、人物領域を特定できる。その他にも例えば、背景差分によって求まるシルエット情報(背景モデルと差分がある領域の情報)と頭部検出情報を組み合わせることにより、人物領域を求めるように構成されていてもよい。オブジェクトが車やバイク、自転車等の乗り物の場合も、同様に車両の画像特徴を学習させた検出器を用いて検出することが可能である。オブジェクトが人や乗り物以外の特定物体の場合も、その特定物体の画像特徴を学習させた検出器を構築し、用いるようにすればよい。
 オブジェクト検出手段102は、検出されたオブジェクトの情報をまとめ、オブジェクト検出結果情報として生成する。ここで、オブジェクト検出結果情報は、検出を行ったフレームの時刻情報(あるいはフレーム番号など、フレームを特定するための情報)と、検出されたオブジェクトの情報と、を含む。オブジェクトの情報は、オブジェクトの検出位置や大きさを含む。ここで、オブジェクトの位置は、画面上の位置で表されていてもよいし、カメラのキャリブレーションによって求まるカメラの位置や姿勢を表すパラメータを用いて、実世界座標に変換した位置で表されてもよい。例えば、画面上の位置で表す場合には、オブジェクトを囲う矩形の頂点の座標(例えば左上と右下の頂点)で表せばよい。あるいは、1つの頂点と矩形の幅、高さの情報で表してもよい。また、複数のオブジェクトが検出された場合には、オブジェクト検出結果情報は、検出された複数のオブジェクトの情報を含むことになる。
 オブジェクト検出手段102は、生成されたオブジェクト検出結果情報を、スイッチ手段105に出力する。また、オブジェクト検出手段102は、オブジェクト検出が終了したことを示すオブジェクト検出終了シグナルをスイッチ制御手段104に出力する。
 スイッチ制御手段104は、オブジェクト検出終了シグナルがオブジェクト検出手段102から入力されると、スイッチ手段105に対し、当該スイッチ手段105をON(経路が繋がった状態)にするためのシグナルを出力する。スイッチ手段105がONになると、オブジェクト検出手段102の出力がオブジェクト追跡手段103に入力される経路が接続される。これによって、オブジェクト検出手段102から出力されるオブジェクト検出結果情報は、スイッチ手段105を経てオブジェクト追跡手段103へ送信される。スイッチ手段105は、オブジェクト検出結果の送信が終わると、またOFFの状態(経路が途切れた状態)に戻る。
 また、スイッチ制御手段104は、オブジェクト検出終了シグナルがオブジェクト検出手段102から入力されると、スイッチ手段106に対し、当該スイッチ手段106をON(経路が繋がった状態)にするシグナルを出力する。スイッチ手段106がONになると、映像取得手段101から出力される画像がオブジェクト検出手段102に入力される経路を接続する。これにより、そのときの映像フレームが映像取得手段101からオブジェクト検出手段102へ入力され、オブジェクト検出手段102でそのフレームに対する処理が行われるようになる。スイッチ手段106は、映像フレームの送信が終わると、またOFFの状態(経路が途切れた状態)に戻る。
 オブジェクト追跡手段103は、過去のフレームにおけるオブジェクトの追跡結果を保持しており、その追跡結果に基づいて、入力されるフレーム画像のどの位置に追跡対象となるオブジェクトが存在するかを求め、オブジェクト追跡結果情報を生成して出力する。また、オブジェクト追跡手段103は、オブジェクト検出結果情報が入力されるフレームの場合には、オブジェクト検出結果情報も用いて追跡処理を行う。すなわち、追跡対象となるオブジェクトとオブジェクト検出結果との対応関係を求め、オブジェクト検出結果をオブジェクト追跡の結果に反映させる。
 ここで、フレームの時間間隔よりも、オブジェクト検出手段102でのオブジェクト検出処理に時間がかかる場合には、オブジェクト検出結果情報の時刻は、映像取得手段101から入力されるフレーム画像の時刻よりも前の時刻となる。その場合、検出対象フレームと追跡対象フレームの撮像時刻が一致しなくなる。特に、深層学習のように処理負荷が高い手法に基づいてオブジェクト検出を行う場合は、この傾向が顕著になる。よって、オブジェクト追跡手段103では、この時間差を考慮して、オブジェクト検出結果に含まれるオブジェクトの情報と、追跡対象となるオブジェクトとの対応関係を求め、オブジェクト追跡の結果に反映させる。このオブジェクト追跡手段103の動作の詳細については後述する。オブジェクト追跡手段103は、生成されたオブジェクト追跡結果情報を出力する。
 ここで、オブジェクト追跡結果情報は、画像の撮像時刻に関する時刻情報(あるいはフレーム番号等のフレームを識別する情報)、画像上でのオブジェクトの位置、大きさ、および追跡対象オブジェクトごとに付与されたID情報を含む。なお、位置情報の記述方法は任意であり、追跡オブジェクトの外接矩形情報で示してもよいし、追跡オブジェクト領域中の一点の座標を求め、その点に基づく相対的な情報で大きさ情報を表すようにしてもよい。あるいは、実空間上の座標に変換し、出力するようになっていてもよい。例えば、画面上の位置で表す場合には、オブジェクトを囲う矩形の頂点の座標(例えば左上と右下の頂点)で表せばよい。あるいは、1つの頂点と矩形の幅、高さの情報で表してもよい。
 次に、図2を用いて、本実施形態におけるオブジェクト追跡手段103について説明する。
 図2に、本実施形態におけるオブジェクト追跡手段103の構成を示す。本実施形態におけるオブジェクト追跡手段103は、対応領域探索部201と、外見モデル更新部202と、外見モデル記憶部203と、検出結果受信部204と、対応付け部205と、位置補正部206と、位置情報記憶部207と、新規生成・削除部208と、画像バッファ209と、スイッチ部210と、からなる。
 画像バッファ209は、スイッチ部210を通じて入力される画像を格納する。
 位置情報記憶部207は、追跡オブジェクトの位置情報を格納する。
 外見モデル記憶部203は、追跡オブジェクトの外見モデル情報を格納する。
 検出結果受信部204は、オブジェクトの検出結果を受信し、対応付け部205へ検出結果を出力するとともに、スイッチ制御シグナルをスイッチ部210へ出力する。
 対応付け部205は、検出結果受信部204から出力される検出結果と、位置情報記憶部207に格納されている追跡オブジェクトの位置情報とから、検出オブジェクトと追跡オブジェクトの対応付けを行う。対応付け部205は、対応付け結果を位置補正部206と新規生成・削除部208へ出力する。
 位置補正部206は、対応付け部205から出力される対応付け結果に基づいて、位置情報記憶部207に既に格納されている追跡オブジェクトの位置情報を補正し、補正した追跡オブジェクトの位置情報を位置情報記憶部207へ出力する。
 新規生成・削除部208は、対応付け部205から出力される対応付け結果と、画像バッファ209に格納される検出時の画像に基づいて、新たに検出されたオブジェクトや削除すべきオブジェクトがいるか否かを判定する。新規生成・削除部208は、新規オブジェクトがいると判定した場合、新規追跡オブジェクトの位置を位置情報記憶部207に格納する。新規生成・削除部208は、削除すべきオブジェクトがいると判定した場合、当該オブジェクトの情報を位置情報記憶部207から削除する。また、新規生成・削除部208は、オブジェクトの外見モデル情報を生成し、外見モデル記憶部203へ格納する。
 対応領域探索部201は、外見モデル記憶部203に格納されたオブジェクトの外見モデル情報と入力画像に基づいて、オブジェクト追跡結果を生成し、追跡結果を位置情報記憶部207と外見モデル更新部202へ出力する。
 外見モデル更新部202は、入力される画像と、対応領域探索部201から出力されるオブジェクト追跡結果と、外見モデル記憶部203に格納されたオブジェクト外見モデル情報に基づいて、追跡オブジェクトの外見モデル情報を更新する。外見モデル更新部202は、更新された追跡オブジェクトの外見モデル情報を外見モデル記憶部203へ格納する。
 スイッチ部210は、検出結果受信部204から出力されるスイッチ制御シグナルに基づいて、入力画像を画像バッファ209に出力する。
 次に、本実施形態におけるオブジェクト追跡手段103の動作について説明する。
 まず、位置情報記憶部207に格納される情報について述べる。位置情報記憶部207には、追跡対象オブジェクトの位置情報と、追跡対象を識別する追跡IDと、時刻情報(あるいはフレーム番号等のフレームを識別する情報)と、が格納される。位置情報とは、画像中における追跡対象の存在位置を表す情報であり、例えばオブジェクトを囲む外接矩形の情報である。位置情報は、矩形の左上、右下の頂点座標で表されてもよいし、あるいは、矩形内の特定の位置の座標(例えば矩形の1つの頂点の座標や中心点の座標)と幅、高さの値で表されてもよい。また、位置情報は実空間座標系に変換した座標を含んでいてもよい。この値は、キャリブレーションによって求めたカメラパラメータを用いて求めることができる。例えば、画像中でオブジェクトが地面に接する位置を求め、この座標を実空間座標に変換し、格納してもよい。
 また、さらに、位置情報記憶部207は、追跡対象オブジェクトの追跡尤度情報も一緒に格納する。追跡尤度情報は、追跡対象が実際に存在し、正しく追跡できている確度を表す情報である。追跡結果が検出と対応づいたり、あるいは、追跡処理のスコアが高くなったりすることで、追跡の確度が高いときに追跡尤度情報の値を高くする。
 位置情報記憶部207は、最新の情報だけでなく、オブジェクトごとに一定の時間分の追跡結果情報を格納する。例えば、位置情報記憶部207は、過去のNフレーム分のデータを格納する場合には、現フレームからNフレーム遡った時刻のフレームでの追跡結果情報までを格納し、それ以前の結果は削除するようにしてもよい。
 また、位置情報記憶部207は、上記の情報以外の付随する情報も一緒に格納してもよい。例えば、位置情報記憶部207は、検出結果に含まれる検出オブジェクトと対応づいたかどうかを表す情報も一緒に格納してもよい。また、追跡オブジェクトと検出オブジェクトとが対応づいた場合には、位置情報記憶部207は、そのオブジェクトに関する情報(例えば検出の確からしさを表す検出スコアなど)も一緒に格納してもよい。また、位置情報記憶部207は、最新の対応付き時刻情報も一緒に格納してもよい。
 オブジェクト検出処理が終了すると、オブジェクト検出結果情報が検出結果受信部204へ入力される。検出結果受信部204は、受信した検出結果情報を対応付け部205へ出力し、スイッチ部210をONにするスイッチ制御信号をスイッチ部210へ出力する。
 スイッチ部210は、当該スイッチ部210をONにするスイッチ制御信号が入力されると、入力される画像が画像バッファ209に入力されるように、経路を接続する。そして、画像バッファ209への画像の送信が終わると、スイッチ部210は、またOFFの状態(接続が切れた状態)に戻る。スイッチ部210がONになるタイミングは、スイッチ手段106がONになるタイミングと一致するため、画像バッファ209に入力される画像は、オブジェクト検出手段102で次にオブジェクト検出を行う画像と一致する。
 画像バッファ209は、画像が入力されると、画像を格納する。ただし、以前にスイッチ部210がONになったタイミングで入力された画像も、処理に必要な間(例えば、画像が入力されてから後述するオブジェクトの外見特徴量の抽出処理に用いるまでの間)は蓄えておくようにする。不要になった時点で以前のタイミングで入力された画像は、画像バッファ209から削除される。
 対応付け部205は、位置情報記憶部207に格納されている追跡対象オブジェクトの位置情報と当該位置情報に付随する追跡尤度情報を読み出す。対応付け部205は、当該追跡対象オブジェクトの位置情報及び当該位置情報に付随する追跡尤度情報と、オブジェクト検出結果情報に含まれる位置情報と、を比較して、個々の検出オブジェクトと個々の追跡対象オブジェクトとを対応付ける。この際、対応付け部205は、オブジェクト検出結果情報に含まれる時刻情報(あるいは、フレーム番号など、フレームを特定するための情報)に基づいて、同時刻(あるいは同フレーム)の位置情報同士を比較する。
 具体的には、位置情報記憶部207に格納されている最新の追跡結果の時刻をT、検出時刻をTd(時刻Tdは時刻Tよりも前の時刻とする。)とすると、対応付け部205は、時刻Tより前の時刻Tdにおける追跡結果を位置情報記憶部207から読み出し、検出結果と対応付ける。対応付けの方法としては、既存の様々な方法を用いることができる。例えば、対応付け部205は、検出オブジェクトと追跡対象オブジェクトの対応付きやすさを表す対応付き尤度を求め、この尤度を単調非増加関数によってコストに変換し、ハンガリアン法などの方法により、対応付けることができる。この際、対応付け部205は、例えば、検出オブジェクトの矩形と追跡対象オブジェクトの矩形の重なり率に基づいて(例えば、重なり率を単調非減少関数で変換した値)、対応付き尤度を求めることができる。
 なお、検出結果は検出されたオブジェクトの外見特徴量を含んでいてもよい。この場合、対応付け部205は、後述する外見モデル記憶部203に格納されている外見モデル情報も用いて、検出オブジェクトと追跡対象オブジェクトとの外見的な類似性を表す指標も求め、この指標も考慮して対応付き尤度を決めてもよい。例えば、対応付け部205は、上述の重なり率に基づいて求めた対応付き尤度と、外見的類似性を表す指標と、を掛け合わせた値、あるいは重み付き加算により求めた値に基づいて、追跡オブジェクトと検出オブジェクトの対応付けを求めるようにしてもよい。
 対応付け部205は、対応付けの結果、検出結果と追跡結果とが対応付いた追跡対象オブジェクトについては、該追跡対象オブジェクトの追跡IDと、位置情報を含む、当該追跡結果に対応づいた検出オブジェクトの情報と、を位置補正部206へ出力する。また、これに付随して、対応付け部205は、追跡対象オブジェクトの追跡尤度情報を位置補正部206へ出力する。この際、対応付いたということで、追跡対象の存在確度が高まったと考えられるため、対応付け部205は、処理前に位置情報記憶部207から読み出した追跡尤度よりも値を大きくしてから出力するようにしてもよい。具体的には、対応付け部205は、例えば1より大きい値を元の追跡尤度に乗じるようにしてもよい。
 一方、検出結果と対応付かなかった追跡対象オブジェクト(未対応追跡対象オブジェクト)については、その存在の確度が下がったと考えられる。そのため、対応付け部205は、追跡尤度を下げる処理を行い、新規生成・削除部208にその追跡IDと追跡尤度情報を出力する。具体的には、対応付け部205は、例えば1未満の値を元の追跡尤度に乗じるようにすればよい。なお、位置情報記憶部207は、最後に対応付いた時刻(以下、「最新対応付き時刻」という。)を格納しておいてもよい。この場合は、検出時刻と最新対応付き時刻との差(以下、「未対応継続時間」という。)を求め、差の大きさに応じて追跡尤度を変化させる度合を変えてもよい。例えば、しばらく未対応状態が続いており、未対応継続時間が長い場合には、追跡尤度を減少させる割合を大きくするようにしてもよい。
 また、追跡対象オブジェクトと対応づかなかった検出オブジェクトがある場合には、対応付け部205は、新規の追跡対象オブジェクトとして、その検出オブジェクト情報を新規生成・削除部208に出力する。これは、画面外から新たなオブジェクトが入ってきて検出されたり、従来から画面内には入っていたが検出されていなかったオブジェクトが検出されたりした場合に生じる。
 位置補正部206は、対応付け部205から入力される、検出結果と対応付いた追跡オブジェクトに対する検出オブジェクトの位置情報(大きさも含む)に基づいて、そのオブジェクトの位置情報を補正する。この際、検出時刻と同時刻の追跡結果の位置情報だけでなく、検出時刻から現在時刻までのオブジェクトの追跡結果の位置情報を補正する。すなわち、位置補正部206は、検出時刻Tdにおける追跡結果の位置情報だけでなく、Td<t≦Tの時刻tの追跡結果の位置情報も補正する。
 位置の補正方法としては様々な方式が考えられる。例えば、追跡結果及び検出結果が矩形である場合、検出結果の矩形と追跡結果の矩形の中心間の距離の差を求め、その分だけ追跡矩形の中心が検出矩形の中心に重なるようにずらすようにする。すなわち、検出結果と、検出時刻と同時刻の追跡結果と、の間で中心間の差を求め、位置情報記憶部207に格納されている該検出時刻以降の時刻の追跡結果の位置情報(追跡の矩形情報)にこの差を加算し、位置を補正する。あるいは、最新の時刻の矩形のみを変更するようにしてもよい。また、単に位置をずらすだけでなく、矩形の大きさも変更してもよい。例えば、上述の方法で追跡矩形をシフトさせた後で、大きさが検出矩形と一致するように、矩形の幅と高さの値を変更してもよい。もし、矩形の情報が左上と右下の頂点座標で表されている場合には、矩形の幅と高さが検出矩形の値と同じになるように、左上と右下の頂点座標を変更してもよい。
 補正されたオブジェクトの位置情報は、位置情報記憶部207に格納される。また、位置情報に付随する追跡尤度情報も位置情報記憶部207に格納される。また、位置情報記憶部207が、最新対応付き時刻における情報を格納している場合には、最新対応付き時刻も今回の検出時刻Tdに更新する。
 一方、新規生成・削除部208は、新規に検出されたオブジェクトに対する追跡結果の生成と、追跡対象オブジェクトの中で、存在しなくなった(あるいは誤検知だった)と考えられるオブジェクトの判定を行う。
 新規のオブジェクトは、検出結果に含まれるオブジェクトのうち、追跡対象のどのオブジェクトとも対応づかなかったオブジェクトである。これは、画面外から新たなオブジェクトが入ってきて検出されたり、従来から画面内には入っていたが検出されていなかったオブジェクトが検出されたりした場合に生じる。
 新規生成・削除部208は、新規オブジェクト追加処理を行う。具体的には、新規生成・削除部208は、このような新規のオブジェクトに対して、新たに追跡IDを付与し、追跡対象オブジェクトに追加する。そして、位置情報の算出と、外見モデル情報の構築を行う。
 新規生成・削除部208による位置情報の算出では、新規生成・削除部208は、検出結果に含まれるオブジェクトの位置や大きさの情報を追跡対象オブジェクトの位置情報に変換する。もし、検出と追跡の位置情報の形式が同じであれば、そのまま検出結果に含まれるオブジェクトの位置情報を追跡対象の位置情報とすればよい。形式が異なっている場合には、新規生成・削除部208は、追跡用の位置情報に変換する。例えば、検出オブジェクトの情報が画面上の座標であり、追跡の位置情報が実世界座標で記述されている場合には、新規生成・削除部208は、実世界座標に変換する処理を行う。これは、カメラパラメータを用いた既知の方法により変換できる。
 新規生成・削除部208による外見モデルの構築では、新規生成・削除部208は、オブジェクトの追跡に用いるオブジェクトの視覚的特徴量を抽出し、モデルを構築する。例えば、新規生成・削除部208は、オブジェクトの色や形、模様を表す特徴を画像から抽出してテンプレートを構築する。色や形、模様の特徴としては、既存の様々な特徴を利用することができ、例えばMPEG(Moving Picture Experts Group)-7で標準化されている特徴量を用いることができる。あるいは、新規生成・削除部208は、深層学習によって抽出した特徴量を用いて、モデルを構築してもよい。また、オブジェクト領域全体ではなく、オブジェクト領域の一部から特徴を抽出するようにしてもよい。さらに、領域は1つだけでなく、オブジェクト領域を複数に分割し、領域ごとにテンプレートを持つようにしてもよい。この際の複数の領域の選択方法としては、均等にグリッドに分割する方法、物体の特定部位に基づいて選択する方法など、様々な方式を適用することができる。また、オブジェクト領域外の特徴をネガティブなテンプレートとして持つようにし、追跡ではオブジェクトのテンプレート(ポジティブなテンプレート)と合わせて用いるようにしてもよい。また、特徴量抽出を新規オブジェクトだけでなく、検出と対応づいた他のオブジェクトに対しても行うようにし、時刻の異なる複数のフレームから抽出したテンプレートを持つようにしていてもよい。この場合、最初の外見モデル構築時は、1つのフレームのみでのテンプレートが構築されるが、追跡処理が進むにつれ、テンプレートの数を増やすようにしてもよい。この際、テンプレートの数を単に増やすだけでなく、テンプレートの数が所定数になるように制御してもよい。あるいは、新規生成・削除部208は、異なるフレームで得られた画像特徴を統合して外見モデルを構築し、保持するようになっていてもよい。
 このようにして新規生成・削除部208により生成された位置情報は、時刻情報(あるいはフレームを特定する情報)や追跡ID情報とともに、他の追跡対象オブジェクトと同様にして位置情報記憶部207に格納される。一方、外見モデル情報は、時刻情報(あるいはフレームを特定する情報)やオブジェクトのID情報とともに、他の追跡対象オブジェクトと同様にして外見モデル記憶部203に格納される。
 新規生成・削除部208により削除されるオブジェクトの決定は、未対応追跡対象オブジェクトに対して行う。新規生成・削除部208は、未対応追跡対象オブジェクトのうち、追跡尤度が削除閾値以下に下がったものは、画面外に消えた、あるいは画面内の障害物等の裏に隠れて既に消失したオブジェクトとみなす。その場合、新規生成・削除部208は、そのオブジェクトの追跡IDに対応する位置情報を、位置情報記憶部207から削除する。同様に、新規生成・削除部208は、その追跡IDに対応する外見モデル情報を、外見モデル記憶部203から削除する。未対応追跡対象オブジェクトのうち、追跡尤度が削除閾値より大きい場合には、新規生成・削除部208は、削除処理は行わず、位置情報記憶部207に格納された追跡尤度の値のみを更新後の値に変更する。
 このようにして更新された追跡対象の位置情報は、追跡結果情報として出力される。また、対応領域探索部201にも出力され、次のフレームの追跡で用いられる。
 対応領域探索部201は、位置情報記憶部207に格納されている各追跡対象オブジェクトの最新の位置情報(大きさ情報も含む)に基づいて、入力される現時刻のフレーム画像中における追跡対象オブジェクトの位置を求める。具体的には、対応領域探索部201は、フレーム画像において、最新の位置情報の周囲に探索範囲を設定し、その範囲内で最も追跡対象である可能性が高い領域を求める。すなわち、対応領域探索部201は、外見モデル特徴情報に含まれる追跡対象のオブジェクトと、探索領域内の各領域から抽出される特徴量が最も類似する領域を求める。そして、対応領域探索部201は、求まった領域情報を、追跡対象オブジェクトの現フレームでの追跡結果として出力する。また、対応領域探索部201は、追跡の確からしさを表す追跡尤度情報を対応領域探索の確からしさに応じて更新し、一緒に出力する。例えば、追跡スコアが追跡の確からしさを示している場合には、追跡スコアをそのまま追跡尤度としてもよい。あるいは、近くに他の追跡物体が存在する場合や、誤検知が発生しやすい場所がある場合には、それらの程度を考慮して尤度を下げるようにしてもよい。
 なお、オクルージョンや、画面外に出るなどの理由により、対応付く領域がない場合もあるため、対応付く領域がない場合には、対応領域探索部201は、対応付く領域なしという結果を出力する。この場合には、追跡尤度を下げるように更新し、一緒に出力する。
 対応領域探索部201は、生成したオブジェクト追跡結果情報を、外見モデル更新部202と、位置情報記憶部207とへ出力する。
 外見モデル更新部202は、各追跡対象オブジェクトの外見モデル情報を更新する。外見モデル更新部202は、対応領域探索部201で求まった位置情報に基づいて、画像中のオブジェクトの存在位置を求め、対応する画像領域の特徴量を抽出する。外見モデル更新部202は、抽出した特徴量と外見モデル記憶部203にもともと格納されている特徴量とで重み付け平均して求まる特徴量で更新する。あるいは、外見モデル更新部202は、重み付き平均をとる代わりに、新しい特徴量で置き換えてもよい。あるいは、外見モデル更新部202は、重み付け平均以外でも、それ以外の様々な時系列データの更新手法を用いてもよい。複数のテンプレートを持っている場合には、その中の一つ、あるいは複数を、上述の方法によって更新するようにしてもよい。また、オブジェクトの一部が隠れている場合などは、隠れていない部分に該当するテンプレートのみを更新してもよい。あるいは、隠れている程度に応じて、更新の際の重みの値を調整するようにしてもよい。
 最後に、位置情報記憶部207に格納された各追跡対象オブジェクトの最新の位置情報は追跡結果情報として出力される。ここで出力されるのは最新の位置情報であるため、検出による遅延は影響せず、遅延のない追跡結果が出力される。
 ここで、図3のフローチャートを用いて、本実施形態におけるオブジェクト検出・追跡装置の処理の流れを説明する。
 映像取得手段101は、画像を取得する(S301)。スイッチ手段106及びスイッチ部210がOFFの場合(S302 No)、オブジェクト追跡手段103は、取得した画像中のオブジェクトを追跡し(S303)、追跡結果を位置情報記憶部207に格納する(S304)。外見モデル更新部202は、追跡されたオブジェクトの位置情報に基づいて外見モデルを更新し(S305)、外見モデル記憶部203に格納する(S306)。
 一方、スイッチ手段106及びスイッチ部210がONの場合(S302 Yes)、S303からS306の処理と並行して、取得された画像がオブジェクト検出手段102に出力されるとともに、画像バッファ209に格納される(S307)。その後、スイッチ手段106及びスイッチ部210はOFFになる(S308)。さらに、S303からS306の処理と並行して、オブジェクト検出手段102は、取得された画像中のオブジェクトを検出する(S309)。オブジェクトの検出が終了すると、スイッチ制御手段104によりスイッチ手段106及びスイッチ部210はONになる(S310)。
 ただし、検出処理(S309)は時間がかかるため、S306が終了した時点では検出処理が完了しておらず、S310でスイッチがONになっているとは限らない。スイッチがONになっている場合(S311 Yes)、対応付け部205は、取得された画像のうちの同一の画像において当該検出及び当該追跡された、同一のオブジェクトを対応付ける(S312)。位置補正部206は、対応付いたオブジェクトについて、当該検出されたオブジェクトの位置を用いて、当該追跡されたオブジェクトの位置を補正する(S313)。一方、スイッチがOFFの場合(S311 No)、検出結果はまだ存在しないため、これらの処理は飛ばす。そして、次の画像がある場合(S314 Yes)には、映像取得手段101は次の画像を取得するまで待機し、次の画像がない場合(S314 No)には映像取得手段101は処理を終了する。
 さらに、図4のフローチャートを用いて、S312における対応付け処理の詳細を説明する。
 取得された画像中のオブジェクトについて、検出結果がない場合(S401 No)は、対応付けを行う必要はないため、対応付け部205は処理を終了する。検出結果がある場合(S401 Yes)は、対応付け部205は追跡結果があるかどうかを確認する。追跡結果がない場合(S402 No)は、新規生成・削除部208は、検出オブジェクトを新規追跡オブジェクトとして生成し、その位置情報を位置情報記憶部207に格納する。さらに、新規生成・削除部208は、外見モデルを構築し、外見モデル記憶部203に格納し(S411)、処理を終了する。一方、追跡結果がある(S402 Yes)場合、対応付け部205は、検出されたオブジェクトと追跡されたオブジェクトとを対応付けを行う(S403)。
 次に、対応付け部205は対応付けの結果を確認し、オブジェクトの検出結果に追跡オブジェクトと対応付いた検出オブジェクトがある場合(S404 Yes)には、対応づいた追跡オブジェクトの尤度を上げる更新を行う(S405)。一方、検出オブジェクトと対応づいた追跡オブジェクトがなかった場合(S404 No)には、S405の処理をスキップする。
 次に、対応付け部205は、どの検出オブジェクトとも対応づかなかった未対応の追跡オブジェクトが存在するかどうかを確認し、存在する場合(S406 Yes)には、未対応の追跡オブジェクトに対して、尤度を下げる処理を行う(S407)。そして、新規生成・削除部208は、追跡オブジェクトの中で尤度が削除閾値以下のものが存在するかどうかを確認する。尤度が削除閾値以下の追跡オブジェクトが存在する場合(S408 Yes)、新規生成・削除部208は、尤度が削除閾値以下となった追跡オブジェクトの位置情報や外見モデルなどの関連情報の削除を行う(S409)。尤度が削除閾値以下の追跡オブジェクトが存在しない場合(S408 No)には、この処理をスキップする。一方、未対応の追跡オブジェクトが存在しなかった場合(S406 No)は、S407からS409までの処理をスキップする。
 次に、対応付け部205は、どの追跡オブジェクトとも対応づかなかった未対応の検出オブジェクトが存在するかどうかを確認する。未対応の検出オブジェクトが存在する場合(S410 Yes)には、新規生成・削除部208は、未対応の検出オブジェクトに対して、前述の新規追跡オブジェクトの生成処理を行い(S411)、処理を終了する。
 以上のように、本実施形態におけるオブジェクト追跡・検出装置は、遅延して入力される検出と対応づいた結果を、最新の追跡結果にまで反映させ、その後の追跡に用いる。これにより、新規に検出されたオブジェクト以外にも適切に検出の結果が反映されるので、高精度な追跡を行うことができる。また、画像バッファには、最小限の画像のみを蓄えるように構成されているため、記憶容量を抑えつつ、高精度な追跡が可能となる。
 
 <第2の実施形態>
 次に、本発明の第2の実施形態について、図面を用いて詳細に説明する。
 図5に、本実施形態におけるオブジェクト追跡手段103の構成を示す。本実施形態におけるオブジェクト追跡手段103は、対応領域探索部201と、外見モデル更新部202と、外見モデル記憶部203と、検出結果受信部204と、対応付け部205と、位置補正部206と、位置情報記憶部207と、新規生成・削除部208と、画像バッファ209と、スイッチ部210と、外見モデル更新部320と、を備える。
 第1の実施形態におけるオブジェクト追跡手段103と、本実施形態におけるオブジェクト追跡手段103との相違点は、本実施形態におけるオブジェクト追跡手段103が、外見モデル更新部320を備えることである。
 外見モデル更新部320以外の接続関係は、第1の実施形態におけるオブジェクト追跡手段103と同様である。
 外見モデル更新部320は、位置情報記憶部207に格納された追跡オブジェクトの位置情報と、画像バッファ209に格納された画像情報とに基づいて、追跡オブジェクトの外見モデルを更新する。外見モデル更新部320は、更新した外見モデル情報を外見モデル記憶部203に格納する。
 次に、本実施形態におけるオブジェクト追跡手段103の動作について説明する。
 外見モデル更新部320以外の動作は、第1の実施形態の場合と同様である。このため、以下では、外見モデル更新部320の処理動作のみを説明する。
 外見モデル更新部320は、検出結果のオブジェクトと対応づいた追跡対象オブジェクトに対して、外見モデルの更新を行う。まず、外見モデル更新部320は、画像バッファ209から検出時刻Tdに対応する画像を読み出す。外見モデル更新部320は、位置情報記憶部207から出力される補正後のオブジェクトの位置情報に基づいて、当該画像からオブジェクトの外見特徴量を抽出する。そして、外見モデル更新部320は、外見モデル記憶部203に記憶されている、この追跡対象オブジェクトの外見モデル情報も用いて更新を行う。外見モデルの更新の方法は、外見モデル更新部202の場合と同様である。更新された外見モデルは、外見モデル記憶部203へ出力され、格納される。
 なお、画像バッファ209における時刻Tdの画像の削除処理は、新規生成・削除部208と外見モデル更新部320の両方での処理が終わった後で実施される。
 以上のように、本実施形態におけるオブジェクト追跡・検出装置は、検出結果を用いて、外見モデルを更新する。これにより、追跡物体の姿勢の変化等で追跡位置がずれることにより追跡がうまくいかなくなった場合でも、更新後の外見モデルを用いて追跡処理を行うことができるので、その後の追跡の精度を向上させることができる。
 
 <第3の実施形態>
 本発明の第3の実施形態について、図面を用いて詳細に説明する。
 図6に、実施形態におけるオブジェクト追跡手段103の構成を示す。本実施形態におけるオブジェクト追跡手段103は、対応領域探索部201と、外見モデル更新部202と、外見モデル記憶部203と、検出結果受信部204と、対応付け部205と、位置補正部206と、位置情報記憶部207と、新規生成・削除部408と、画像バッファ209と、スイッチ部210と、予測部430と、動きモデル記憶部431と、動きモデル更新部432と、を備える。
 第1の実施形態におけるオブジェクト追跡手段103と、本実施形態におけるオブジェクト追跡手段103との相違点は、本実施形態におけるオブジェクト追跡手段103が、新規生成・削除部208の代わりに新規生成・削除部408を備え、新たに、予測部430、動きモデル記憶部431、動きモデル更新部432を備えることである。
 本実施形態におけるオブジェクト追跡手段103の各構成について説明する。
 動きモデル記憶部431は、追跡オブジェクトの動きモデル情報を格納する。
 予測部430は、動きモデル記憶部431に格納される追跡オブジェクトの動きモデル情報に基づいて、追跡オブジェクトの予測位置を求め、追跡オブジェクトの予測位置情報を対応領域探索部201へ出力する。
 対応領域探索部201には、予測部430から出力されるオブジェクトの予測位置情報が追跡結果の位置情報の代わりに入力される。また、対応領域探索部201から出力されるオブジェクト追跡結果は、位置情報記憶部207と外見モデル更新部202に加え、動きモデル更新部432にも出力される。
 動きモデル更新部432は、動きモデル記憶部431に格納される追跡オブジェクトの動きモデル情報と、対応領域探索部201から出力されるオブジェクト追跡結果と、に基づいて、追跡オブジェクトの動きモデル情報を更新する。動きモデル更新部432は、更新後の動きモデル情報を動きモデル記憶部431へ格納する。
 新規生成・削除部408は、対応付け部205から出力される対応付け結果と、画像バッファ209に格納される検出時の画像と、に基づいて、新たに検出されたオブジェクトや削除すべきオブジェクトを判定する。新規生成・削除部408は、判定の結果に応じて、新規追跡オブジェクトの位置を位置情報記憶部207に格納し、削除すべきオブジェクトの情報を位置情報記憶部207から削除する。新規生成・削除部408は、オブジェクトの外見モデル情報を生成し、外見モデル記憶部203へ格納する。新規生成・削除部408は、動きモデル情報を生成し、動きモデル記憶部431へ格納する。
 次に、本実施形態におけるオブジェクト追跡手段103の動作について説明する。
 予測部430、動きモデル記憶部431、動きモデル更新部432及び新規生成・削除部408以外の構成の処理動作は、第1の実施形態の場合と同様である。このため、以下では、予測部430、動きモデル記憶部431、動きモデル更新部432及び新規生成・削除部408の処理動作について説明する。
 動きモデル記憶部431には、各追跡物体の動きをモデル化した情報が、追跡IDと対応付けられて格納されている。
 例えば、物体の動きが等速直線運動で近似できるとの仮定に基づいて、線形的な動きモデルを用いる場合には、過去の位置の履歴から求めたフレーム間での動きベクトルを動きモデルとして格納しておく。また、カメラの光軸方向に移動する場合などは、オブジェクトの画像上での大きさも変化するため、大きさの変化に関する情報も、動きモデルに含めてもよい。例えば、オブジェクトの矩形の大きさが線形に変化することを仮定する場合には、その変化率(拡大/縮小の比率)をオブジェクトの動きモデルに含めてもよい。
 あるいは、カルマンフィルタやパーティクルフィルタ等を用いて、動きをモデル化するようにしてもよい。カルマンフィルタを用いる場合には、例えば、画像上の2次元の位置と速度からなる4次元のベクトルを状態変数として、カルマンフィルタの状態方程式、観測方程式を記述する各パラメータを動きモデル情報として格納しておく。画像上の2次元の位置は、例えば、矩形の中心や矩形の下辺の中点などの座標である。一方、パーティクルフィルタの場合は、動きを記述するパラメータに加え、用いる粒子の数や、各粒子の状態情報、各粒子の位置を決めるときに用いるランダムノイズの大きさのパラメータ等を動きモデル情報として格納しておく。同様に他の動きモデルを適用することも可能である。
 予測部430は、各追跡対象オブジェクトに対して、それぞれの動きモデルに基づいて過去のオブジェクトの位置から現フレームでのオブジェクトの位置を予測する。この手法としては、用いる動きモデルに合わせた手法を用いる。
 線形な動きモデルを用いる場合には、予測部430は、前のフレームにおける位置に動きベクトルを加算して、現在の位置を予測する。もし、時間間隔が等間隔でない場合には、その時間差の変化も考慮して、動きベクトルを伸縮させてから加算する。また、動きだけでなく、大きさの変化も考慮する場合には、予測部430は、前のフレームでのオブジェクトの大きさに大きさの変化率を乗じて現フレームでのオブジェクトの大きさを予測するようにしてもよい。この場合も、時間間隔が等間隔でない場合には、その時間差の変化も考慮して、大きさの変化率を変化させる。
 カルマンフィルタを用いる場合には、予測部430は、カルマンフィルタの状態方程式に基づいて、前のフレームの状態変数の値から、現フレームでの状態変数の予測値を求める。パーティクルフィルタを用いる場合には、予測部430は、前のフレームでの各粒子の位置にオブジェクト全体としての動きを加え、粒子ごとにランダムノイズを付加し、各粒子の位置を予測する。なお、カルマンフィルタの場合も、パーティクルフィルタの場合も、オブジェクトの画像上での大きさが変化する場合には、線形モデルの場合と同様に大きさの変化も考慮するようにしてもよい。
 得られた各追跡対象オブジェクトの位置情報(大きさも含む)の予測値は、対応領域探索部201に出力される。すなわち、対応領域探索部201には、前のフレームでのオブジェクトの位置の代わりに、予測部430で算出された現フレームでのオブジェクトの予測位置が入力される。対応領域探索部201は、この予測位置に従って探索範囲を設定し、対応領域の探索を行う。この動作は、これまでに説明した各実施形態の対応領域探索部201と同様である。ただし、求まった追跡対象オブジェクトの位置情報は、動きモデル更新部432へも出力される。
 動きモデル更新部432は、動きモデル情報を更新する。この更新方法は、用いる動きモデルに依存する。
 線形モデルの場合には、動きモデル更新部432は、現フレームで求まった位置と、一つ前のフレームの位置の差分を取り、動きベクトルを求める。あるいは、動きモデル更新部432は、過去数フレームにおける追跡対象オブジェクトの位置の履歴を保持しておき、その間の動きベクトルを求め、その代表値(例えば、(加重)平均やメディアン、最頻値など)を動きベクトルとしてもよい。大きさの変化率についても同様である。
 一方、カルマンフィルタの場合には、動きモデル更新部432は、観測方程式に従ってカルマンフィルタの状態変数を更新するとともに、付随するカルマンフィルタのパラメータの値を更新する。パーティクルフィルタの場合には、対応領域探索部201は、求まった位置だけでなく、粒子全体の情報も動きモデル更新部432に出力する。動きモデル更新部432は、対応領域探索部201から出力された、位置及び粒子全体の情報を用いて、パーティクルフィルタの更新処理を行う。すなわち、動きモデル更新部432は、全体の尤度の算出及び尤度に基づいた粒子の再サンプリングを行い、更新された粒子の情報を動きモデルの更新情報として生成する。
 更新された動きモデルは、動きモデル記憶部431に格納され、次回以降の追跡対象オブジェクトの位置の予測に用いられる。
 新規生成・削除部408は、新規オブジェクトに対して、さらに初期動きモデルとして動きモデルも生成し、他の追跡対象オブジェクトと同様にして、動きモデル記憶部431へ格納する。生成される動きモデルは用いる動きモデルの種類によって異なるが、動きモデルを生成し、それぞれのモデルに応じた初期化方法でモデルを初期化してから動きモデル記憶部431へ格納する。一方、新規生成・削除部408は、削除対象となった追跡対象オブジェクトに対しては、動きモデル記憶部431に格納されている該当追跡IDの情報も削除する。それ以外の動作は、これまでに説明した各実施形態のオブジェクト追跡手段103の新規生成・削除部208と同様である。
 予測部430、動きモデル記憶部431、動きモデル更新部432及び新規生成・削除部408以外の構成の動作は、これまでに説明した各実施形態のオブジェクト追跡手段103と同様であり、求まった最新の追跡結果情報が出力される。
 以上のように、本実施形態におけるオブジェクト追跡手段は、追跡対象オブジェクトの位置を予測しながら追跡を行う。これにより、追跡の精度を高められるとともに、動きが大きな場合でも対応領域探索部における探索範囲を予測された位置に基づいて絞ることが可能となり、処理時間を低減できる。
 
 <第4の実施形態>
 次に、本発明の第4の実施形態について、図面を用いて詳細に説明する。
 図7に、本実施形態におけるオブジェクト追跡手段103の構成を示す。本実施形態におけるオブジェクト追跡手段103は、対応領域探索部201と、外見モデル更新部202と、外見モデル記憶部203と、検出結果受信部204と、対応付け部205と、位置補正部206と、位置情報記憶部207と、新規生成・削除部408と、画像バッファ209と、スイッチ部210と、外見モデル更新部320と、予測部430と、動きモデル記憶部431と、動きモデル更新部432と、動きモデル更新部540と、を備える。
 第3の実施形態におけるオブジェクト追跡手段103と、本実施形態におけるオブジェクト追跡手段103との相違点は、本実施形態におけるオブジェクト追跡手段103が、外見モデル更新部320と動きモデル更新部540を備えることである。
 外見モデル更新部320の処理動作は、第2の実施形態の場合と同様である。具体的には、外見モデル更新部320は、位置情報記憶部207に格納された追跡オブジェクトの位置情報と、画像バッファ209に格納された画像情報とに基づいて、外見モデル記憶部203に格納されている追跡オブジェクトの外見モデルを更新する。外見モデル更新部320は、更新した外見モデル情報を外見モデル記憶部203に格納する。
 動きモデル更新部540は、動きモデル記憶部431に格納される追跡オブジェクトの動きモデル情報と位置情報記憶部207から出力されるオブジェクト追跡結果の位置情報に基づいて、追跡オブジェクトの動きモデル情報を更新する。動きモデル更新部540は、更新した動きモデル情報を動きモデル記憶部431へ格納する。
 次に、本実施形態におけるオブジェクト追跡手段103の動作について説明する。
 新たに追加された動きモデル更新部540以外の部分の動作は、これまでに説明した各実施形態の場合と同様であるため、説明を省略する。このため、以下では、新たに追加された動きモデル更新部540の処理動作について説明する。
 動きモデル更新部540は、検出オブジェクトと追跡対象オブジェクトの対応付けの結果に基づいて動きモデルを更新する。すなわち、動きモデル更新部540は、動きモデル記憶部431に格納されている更新前の動きモデル情報と、位置情報記憶部207から出力される補正後の追跡対象オブジェクトの位置情報と、に基づいて、動きモデルを求め直す。動きモデル更新部540は、求め直した動きモデル情報を動きモデル記憶部431に格納する。
 この際、検出オブジェクトの位置情報に基づいて求まる動きモデルの特性と、追跡処理によって求まる動きモデルの特性が異なる場合がある。よって、それぞれ個別に動きモデルを持たせておき、それらを統合して予測に用いるようにしてもよい。検出によって求まっているオブジェクトの位置は追跡によって求まっているオブジェクトの位置情報よりも時間的に古い情報である。このため、現フレームでの位置を予測するには、時間差があるため、予測が当たりにくくなる。一方で、追跡によって求まった位置情報は、現フレームの時刻の直前までの位置情報から予測できるため、予測が当たりやすくなる一方、追跡によって位置がずれていく、ドリフトと呼ばれる状況が生じている場合には、精度が低くなる。よって、位置の精度自体は検出結果の方が高いことが多い。このことを考慮して、例えば、追跡と検出で求まった位置の差が小さいときには、直前の追跡の位置をそのまま用いて予測するようにしてもよい。また、追跡と検出で求まった位置の差が大きいときには、直前の追跡によって求まった位置は用いず、検出されたオブジェクトの位置から直接現フレームでの位置を予測するようにしてもよい。このように、どちらの動きモデルを用いるかを定める変数を動きモデルのパラメータとして格納しておき、予測部430で用いるようにしてもよい。あるいは、どちらか一方のみを用いるのではなく、その確度に応じて、両者を重み付けして用いるようにしてもよい。この場合には、重み付けのパラメータを動きモデルのパラメータとして格納しておき、予測部430で用いるようにする。
 以上のように、本実施形態におけるオブジェクト検出・追跡装置は、検出と追跡の対応付けの結果を動きモデルに反映させる。これにより、追跡の精度を高めることが可能となる。
 
 <第5の実施形態>
 次に、本発明の第5の実施形態について、図面を用いて詳細に説明する。
 図8は、本実施形態におけるオブジェクト検出・追跡装置の構成を示す図である。以下、図8を参照しながら、オブジェクト検出・追跡装置の概要を説明する。
 本実施形態におけるオブジェクト検出・追跡装置10は、取得部11と、検出部12と、追跡部13と、対応付け部14と、補正部15と、を備える。
 取得部11は、画像を取得する。取得部11は、取得した画像を、検出部12及び追跡部13に出力する。
 検出部12は、取得部11から入力された画像中のオブジェクトを検出する。具体的には、検出部12は、入力された画像中でのオブジェクトの領域及び該画像における該オブジェクトの位置(以下、「検出位置」と呼ぶ。)を特定する。検出部12は、検出位置と、時刻情報(あるいはフレーム番号等のフレームを識別する情報)と、を含む、検出結果を出力する。
 検出部12において画像からオブジェクトを検出する処理には処理時間がかかることがあり、特に、深層学習ベースの検出方式では、この傾向が顕著である。そのため、追跡部13は、取得された画像に対して、検出部12と並行して処理を行う。
 追跡部13は、取得された画像中のオブジェクトを追跡する。具体的には、追跡部13は、取得された画像よりも前の時刻に取得された画像において追跡したオブジェクトと同一のオブジェクトの位置(以下、「追跡位置情報」と呼ぶ。)を特定する。追跡部13は、特定した各オブジェクトの追跡位置と、当該オブジェクトを識別するための追跡IDと、取得された画像の時刻情報(あるいはフレーム番号等のフレームを識別する情報)と、を含む追跡結果を出力する。
 対応付け部14は、検出部12での処理が終了すると、検出結果及び追跡結果に基づいて、同時刻の、検出されたオブジェクトと追跡されたオブジェクトとを対応付ける。
 補正部15は、検出されたオブジェクトの位置を用いて、追跡されたオブジェクトの位置を補正する。
 図9は、本実施形態におけるオブジェクト検出・追跡装置10が画像を取得してから位置情報を補正するまでの処理の流れを示すフローチャートである。以下、オブジェクト検出・追跡装置の処理の流れを、図9を参照しながら説明する。
 取得部11は、画像を取得し(S901)、追跡部13は、取得された画像中のオブジェクトを追跡する(S902)。検出部12において、以前の画像に対して行った画像中のオブジェクトの検出が終了した場合(S903 Yes)、検出部12は、検出結果を対応付け部14に出力するとともに、今回取得した画像中のオブジェクトを検出する処理を開始する(S904)。そして、対応付け部14は、同時刻の画像において検出及び追跡された、同一のオブジェクトを対応付ける(S905)。補正部15は、検出されたオブジェクトの位置を用いて、追跡されたオブジェクトの位置を補正する(S906)。一方、検出部12において、オブジェクトの検出が終了していない場合(S903 No)は、対応付けと補正処理は飛ばす。そして、次の画像がある場合(S907 Yes)、S901に戻って画像を取得し、次の画像がない場合(S907 No)には処理を終了する。
 以上のように、本実施形態におけるオブジェクト検出・追跡装置は、検出処理が遅延した場合でも並行して追跡処理を行い、検出処理が完了すると、検出結果を用いて追跡結果を補正する。これにより、検出処理が遅延した場合でも、高精度な追跡を実現することができる。
 
 <ハードウェア構成>
 <実施形態の各部を実現するハードウェアの構成>
 以上で説明された本発明の各実施形態において、各装置の各構成要素を示すブロックは、機能単位で示されている。しかし、構成要素を示すブロックは、各構成要素が別個のモジュールにより構成されることを必ずしも意味していない。
 各構成要素の処理は、たとえば、コンピュータシステムが、コンピュータ読み取り可能な記憶媒体により記憶された、その処理をコンピュータシステムに実行させるプログラムを、読み出し、実行することによって、実現されてもよい。「コンピュータ読み取り可能な記憶媒体」は、たとえば、光ディスク、磁気ディスク、光磁気ディスク、及び不揮発性半導体メモリ等の可搬媒体、ならびに、コンピュータシステムに内蔵されるROM(Read Only Memory)及びハードディスク等の記憶装置である。「コンピュータ読み取り可能な記憶媒体」は、コンピュータシステム内部の揮発性メモリのようにプログラムを一時的に保持可能なもの、及び、ネットワークや電話回線等の通信回線のように、プログラムを伝送するものも含む。また、上記プログラムは、前述した機能の一部を実現するためのものであってもよく、更に前述した機能をコンピュータシステムにすでに記憶されているプログラムとの組み合わせで実現できるものであってもよい。
 「コンピュータシステム」とは、一例として、図10に示されるようなコンピュータ900を含むシステムである。コンピュータ900は、以下のような構成を含む。
・1つ又は複数のCPU(Central Processing Unit)901
・ROM902
・RAM(Random Access Memory)903
・RAM903へロードされるプログラム904A及び記憶情報904B
・プログラム904A及び記憶情報904Bを格納する記憶装置905
・記憶媒体906の読み書きを行うドライブ装置907
・通信ネットワーク909と接続する通信インタフェース908
・データの入出力を行う入出力インタフェース910
・各構成要素を接続するバス911
 例えば、各実施形態における各装置の各構成要素は、その構成要素の機能を実現するプログラム904AをCPU901がRAM903にロードして実行することで実現される。各装置の各構成要素の機能を実現するプログラム904Aは、例えば、予め、記憶装置905やROM902に格納される。そして、必要に応じてCPU901がプログラム904Aを読み出す。記憶装置905は、たとえば、ハードディスクである。プログラム904Aは、通信ネットワーク909を介してCPU901に供給されてもよいし、予め記憶媒体906に格納されており、ドライブ装置907に読み出され、CPU901に供給されてもよい。なお、記憶媒体906は、たとえば、光ディスク、磁気ディスク、光磁気ディスク、及び不揮発性半導体メモリ等の、可搬媒体である。
 各装置の実現方法には、様々な変形例がある。例えば、各装置は、構成要素毎にそれぞれ別個のコンピュータ900とプログラムとの可能な組み合わせにより実現されてもよい。また、各装置が備える複数の構成要素が、一つのコンピュータ900とプログラムとの可能な組み合わせにより実現されてもよい。
 また、各装置の各構成要素の一部又は全部は、その他の汎用又は専用の回路、コンピュータ等やこれらの組み合わせによって実現されてもよい。これらは、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。
 各装置の各構成要素の一部又は全部が複数のコンピュータや回路等により実現される場合には、複数のコンピュータや回路等は、集中配置されてもよいし、分散配置されてもよい。例えば、コンピュータや回路等は、クライアントアンドサーバシステム、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。 
 なお、前述の実施形態の構成は、組み合わせたり或いは一部の構成部分を入れ替えたりしてもよい。また、本発明の構成は前述の実施形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加えてもよい。
 上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)
 映像を取得する取得手段と、
 前記映像中のオブジェクトを追跡する追跡手段と、
 前記映像中のオブジェクトを検出する検出手段と、
 前記映像中の画像のうち同時刻の画像において前記検出及び前記追跡された、同一のオブジェクトを対応付ける対応付け手段と、
 前記対応付いたオブジェクトについて、前記検出されたオブジェクトの位置を用いて、前記追跡されたオブジェクトの位置を補正する補正手段と、
 を備えるオブジェクト検出・追跡装置。
(付記2)
 前記補正手段は、前記対応付いたオブジェクトについて、前記検出の時刻より後に取得された画像の少なくとも一つの画像における当該オブジェクトの位置を補正する
 付記1に記載のオブジェクト検出・追跡装置。
(付記3)
 前記追跡されたオブジェクトの外見的な視覚特徴を表す外見モデルを、前記追跡されたオブジェクトごとに生成する新規生成手段
 をさらに備え、
 前記追跡手段は、前記取得手段により取得された映像中の画像において、前記外見モデルと類似する領域を探索し、
 前記新規生成手段は、前記検出されたオブジェクトのうち、前記対応付けにおいて前記追跡されたオブジェクトと対応付かなかったオブジェクトに対しては、新規に追跡対象オブジェクトに追加する新規オブジェクト追加処理を行う
 付記2に記載のオブジェクト検出・追跡装置。
(付記4)
 前記対応付けにおいて対応づいたオブジェクトに対して、当該オブジェクトが検出された位置と、前記検出の時刻における画像と、に基づいて、前記外見モデルを更新する外見モデル更新手段、
 をさらに備え、
 前記追跡手段は、前記追跡において、前記映像中の画像における前記更新された外見モデルと類似する領域を探索する
 付記3に記載のオブジェクト検出・追跡装置。
(付記5)
 オブジェクトの動きに関する動きモデルと、前記追跡されたオブジェクトの位置の履歴と、に基づいて、新たに取得された映像中の画像における前記追跡されたオブジェクトの位置を予測する予測手段
 をさらに備え、
 前記新規生成手段は、前記追跡されたオブジェクトごとに動きモデルを生成し、
 前記追跡手段は、前記追跡において、前記映像中の画像における前記予測された位置に基づいて定められた探索領域を探索する
 付記3又は4のいずれか一項に記載のオブジェクト検出・追跡装置。
(付記6)
 前記新規生成手段は、前記新規オブジェクト追加処理において、初期動きモデルを生成し、
 前記追跡手段は、前記生成された初期動きモデルを、以降の追跡処理で用いる
 付記5に記載のオブジェクト検出・追跡装置。
(付記7)
 前記対応付け手段において対応づいた追跡対象オブジェクトに対しては、補正後の位置に基づいて、追跡対象オブジェクトの動きモデルを更新する動きモデル更新手段
 をさらに備える付記5又は6に記載のオブジェクト検出・追跡装置。
(付記8)
 前記新規生成手段は、前記検出されたオブジェクト及び前記追跡されたオブジェクトに関する動きモデルをそれぞれ生成し、
 前記予測手段は、前記生成された動きモデルそれぞれを用いて、新たに取得される映像中の画像におけるオブジェクトの予測位置を算出する
 付記7に記載のオブジェクト検出・追跡装置。
(付記9)
 前記予測手段は、
 前記画像よりも前の時刻の画像における前記追跡されたオブジェクトの位置と前記検出されたオブジェクトの位置との差分が閾値以下の場合に、前記追跡されたオブジェクトの位置に基づいて、新たに取得される映像中の画像における前記オブジェクトの予測位置を算出し、
 前記差分が閾値より大きい場合に、前記検出されたオブジェクトの位置に基づいて、新たに取得される映像中の画像における前記オブジェクトの予測位置を算出する
 付記8に記載のオブジェクト検出・追跡装置。
(付記10)
 映像を取得し、
 前記映像中のオブジェクトを追跡し、
 前記映像中のオブジェクトを検出し、
 前記映像中の画像のうち同一の画像において前記検出及び前記追跡された、同一のオブジェクトを対応付け、
 前記対応付いたオブジェクトについて、前記検出されたオブジェクトの位置を用いて、前記追跡されたオブジェクトの位置を補正する、
 オブジェクト検出・追跡方法。
(付記11)
 コンピュータに対して、
 映像を取得する処理と、
 前記映像中のオブジェクトを追跡する処理と、
 前記映像中のオブジェクトを検出する処理と、
 前記映像中の画像のうち同一の画像において前記検出及び前記追跡された、同一のオブジェクトを対応付ける処理と、
 前記対応付いたオブジェクトについて、前記検出されたオブジェクトの位置を用いて、前記追跡されたオブジェクトの位置を補正する処理と、
 を実行させるためのプログラムを記録するプログラム記録媒体。
 
 本発明のオブジェクト検出・追跡装置を用いることで、検出の処理に時間がかかる場合であっても、遅延を小さく抑えたオブジェクトの追跡が可能となる。よって、映像監視だけでなく、内視鏡カメラを使った病変部位の実時間検出・追跡等、実時間性の要求が高い応用での物体の追跡にも利用できる。
 
100 オブジェクト検出・追跡装置
101 映像取得手段
102 オブジェクト検出手段
103 オブジェクト追跡手段
104 スイッチ制御手段
105 スイッチ手段
106 スイッチ手段
201 対応領域探索部
202 外見モデル更新部
203 外見モデル記憶部
204 検出結果受信部
205 対応付け部
206 位置補正部
207 位置情報記憶部
208 新規生成・削除部
209 画像バッファ
210 スイッチ部
320 外見モデル更新部
408 新規生成・削除部
430 予測部
431 動きモデル記憶部
432 動きモデル更新部
540 動きモデル更新部
10 オブジェクト検出・追跡装置
11 取得部
12 検出部
13 追跡部
14 対応付け部
15 補正部

Claims (11)

  1.  映像を取得する取得手段と、
     前記映像中のオブジェクトを追跡する追跡手段と、
     前記映像中のオブジェクトを検出する検出手段と、
     前記映像中の画像のうち同時刻の画像において前記検出及び前記追跡された、同一のオブジェクトを対応付ける対応付け手段と、
     前記対応付いたオブジェクトについて、前記検出されたオブジェクトの位置を用いて、前記追跡されたオブジェクトの位置を補正する補正手段と、
     を備えるオブジェクト検出・追跡装置。
  2.  前記補正手段は、前記対応付いたオブジェクトについて、前記検出の時刻より後に取得された画像の少なくとも一つの画像における当該オブジェクトの位置を補正する
     請求項1に記載のオブジェクト検出・追跡装置。
  3.  前記追跡されたオブジェクトの外見的な視覚特徴を表す外見モデルを、前記追跡されたオブジェクトごとに生成する新規生成手段
     をさらに備え、
     前記追跡手段は、前記取得手段により取得された映像中の画像において、前記外見モデルと類似する領域を探索し、
     前記新規生成手段は、前記検出されたオブジェクトのうち、前記対応付けにおいて前記追跡されたオブジェクトと対応付かなかったオブジェクトに対しては、新規に追跡対象オブジェクトに追加する新規オブジェクト追加処理を行う
     請求項2に記載のオブジェクト検出・追跡装置。
  4.  前記対応付けにおいて対応づいたオブジェクトに対して、当該オブジェクトが検出された位置と、前記検出の時刻における画像と、に基づいて、前記外見モデルを更新する外見モデル更新手段、
     をさらに備え、
     前記追跡手段は、前記追跡において、前記映像中の画像における前記更新された外見モデルと類似する領域を探索する
     請求項3に記載のオブジェクト検出・追跡装置。
  5.  オブジェクトの動きに関する動きモデルと、前記追跡されたオブジェクトの位置の履歴と、に基づいて、新たに取得された映像中の画像における前記追跡されたオブジェクトの位置を予測する予測手段
     をさらに備え、
     前記新規生成手段は、前記追跡されたオブジェクトごとに動きモデルを生成し、
     前記追跡手段は、前記追跡において、前記映像中の画像における前記予測された位置に基づいて定められた探索領域を探索する
     請求項3又は4のいずれか一項に記載のオブジェクト検出・追跡装置。
  6.  前記新規生成手段は、前記新規オブジェクト追加処理において、初期動きモデルを生成し、
     前記追跡手段は、前記生成された初期動きモデルを、以降の追跡処理で用いる
     請求項5に記載のオブジェクト検出・追跡装置。
  7.  前記対応付け手段において対応づいた追跡対象オブジェクトに対しては、補正後の位置に基づいて、追跡対象オブジェクトの動きモデルを更新する動きモデル更新手段
     をさらに備える請求項5又は6に記載のオブジェクト検出・追跡装置。
  8.  前記新規生成手段は、前記検出されたオブジェクト及び前記追跡されたオブジェクトに関する動きモデルをそれぞれ生成し、
     前記予測手段は、前記生成された動きモデルそれぞれを用いて、新たに取得される映像中の画像におけるオブジェクトの予測位置を算出する
     請求項7に記載のオブジェクト検出・追跡装置。
  9.  前記予測手段は、
     前記画像よりも前の時刻の画像における前記追跡されたオブジェクトの位置と前記検出されたオブジェクトの位置との差分が閾値以下の場合に、前記追跡されたオブジェクトの位置に基づいて、新たに取得される映像中の画像における前記オブジェクトの予測位置を算出し、
     前記差分が閾値より大きい場合に、前記検出されたオブジェクトの位置に基づいて、新たに取得される映像中の画像における前記オブジェクトの予測位置を算出する
     請求項8に記載のオブジェクト検出・追跡装置。
  10.  映像を取得し、
     前記映像中のオブジェクトを追跡し、
     前記映像中のオブジェクトを検出し、
     前記映像中の画像のうち同一の画像において前記検出及び前記追跡された、同一のオブジェクトを対応付け、
     前記対応付いたオブジェクトについて、前記検出されたオブジェクトの位置を用いて、前記追跡されたオブジェクトの位置を補正する、
     オブジェクト検出・追跡方法。
  11.  コンピュータに対して、
     映像を取得する処理と、
     前記映像中のオブジェクトを追跡する処理と、
     前記映像中のオブジェクトを検出する処理と、
     前記映像中の画像のうち同一の画像において前記検出及び前記追跡された、同一のオブジェクトを対応付ける処理と、
     前記対応付いたオブジェクトについて、前記検出されたオブジェクトの位置を用いて、前記追跡されたオブジェクトの位置を補正する処理と、
     を実行させるためのプログラムを記録するプログラム記録媒体。
PCT/JP2019/016513 2019-04-17 2019-04-17 オブジェクト検出・追跡装置、方法、およびプログラム記録媒体 WO2020213099A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US17/600,699 US11948312B2 (en) 2019-04-17 2019-04-17 Object detection/tracking device, method, and program recording medium
PCT/JP2019/016513 WO2020213099A1 (ja) 2019-04-17 2019-04-17 オブジェクト検出・追跡装置、方法、およびプログラム記録媒体
JP2021514722A JP7196999B2 (ja) 2019-04-17 2019-04-17 オブジェクト検出・追跡装置、方法、およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/016513 WO2020213099A1 (ja) 2019-04-17 2019-04-17 オブジェクト検出・追跡装置、方法、およびプログラム記録媒体

Publications (1)

Publication Number Publication Date
WO2020213099A1 true WO2020213099A1 (ja) 2020-10-22

Family

ID=72838183

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/016513 WO2020213099A1 (ja) 2019-04-17 2019-04-17 オブジェクト検出・追跡装置、方法、およびプログラム記録媒体

Country Status (3)

Country Link
US (1) US11948312B2 (ja)
JP (1) JP7196999B2 (ja)
WO (1) WO2020213099A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109816701B (zh) * 2019-01-17 2021-07-27 北京市商汤科技开发有限公司 一种目标跟踪方法及装置、存储介质
CN110335313B (zh) * 2019-06-17 2022-12-09 腾讯科技(深圳)有限公司 音频采集设备定位方法及装置、说话人识别方法及系统
KR102311798B1 (ko) * 2019-12-12 2021-10-08 포항공과대학교 산학협력단 다중 객체 추적 방법 및 장치

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010072723A (ja) * 2008-09-16 2010-04-02 Omron Corp 追跡装置及び追跡方法
JP2013114605A (ja) * 2011-11-30 2013-06-10 Canon Inc 物体検出装置、物体検出装置の制御方法、およびプログラム
WO2013128839A1 (ja) * 2012-03-02 2013-09-06 日本電気株式会社 画像認識システム、画像認識方法およびコンピュータ・プログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101183781B1 (ko) * 2009-12-22 2012-09-17 삼성전자주식회사 실시간 카메라 모션 추정을 이용한 물체 검출/추적 방법 및 단말
US8280112B2 (en) * 2010-03-31 2012-10-02 Disney Enterprises, Inc. System and method for predicting object location
US8615105B1 (en) * 2010-08-31 2013-12-24 The Boeing Company Object tracking system
JP6655878B2 (ja) 2015-03-02 2020-03-04 キヤノン株式会社 画像認識方法及び装置、プログラム
US11061132B2 (en) * 2018-05-21 2021-07-13 Johnson Controls Technology Company Building radar-camera surveillance system
US11386662B2 (en) * 2020-05-28 2022-07-12 Microsoft Technology Licensing, Llc Tracking multiple objects in a video stream using occlusion-aware single-object tracking
KR20230020845A (ko) * 2021-08-04 2023-02-13 현대자동차주식회사 전자장치 및 그의 객체 추적 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010072723A (ja) * 2008-09-16 2010-04-02 Omron Corp 追跡装置及び追跡方法
JP2013114605A (ja) * 2011-11-30 2013-06-10 Canon Inc 物体検出装置、物体検出装置の制御方法、およびプログラム
WO2013128839A1 (ja) * 2012-03-02 2013-09-06 日本電気株式会社 画像認識システム、画像認識方法およびコンピュータ・プログラム

Also Published As

Publication number Publication date
JP7196999B2 (ja) 2022-12-27
JPWO2020213099A1 (ja) 2020-10-22
US11948312B2 (en) 2024-04-02
US20220180536A1 (en) 2022-06-09

Similar Documents

Publication Publication Date Title
US11842500B2 (en) Fault-tolerance to provide robust tracking for autonomous and non-autonomous positional awareness
Wang et al. Development of UAV-based target tracking and recognition systems
US10192113B1 (en) Quadocular sensor design in autonomous platforms
US10390003B1 (en) Visual-inertial positional awareness for autonomous and non-autonomous device
US10437252B1 (en) High-precision multi-layer visual and semantic map for autonomous driving
US10794710B1 (en) High-precision multi-layer visual and semantic map by autonomous units
US10496104B1 (en) Positional awareness with quadocular sensor in autonomous platforms
CN102077250B (zh) 移动体检测方法及移动体检测装置
US20190287254A1 (en) Lidar noise removal using image pixel clusterings
US11887318B2 (en) Object tracking
Clipp et al. Parallel, real-time visual SLAM
CN109325456B (zh) 目标识别方法、装置、目标识别设备及存储介质
US20090304229A1 (en) Object tracking using color histogram and object size
US20110091073A1 (en) Moving object detection apparatus and moving object detection method
US20110255747A1 (en) Moving object detection apparatus and moving object detection method
US8995714B2 (en) Information creation device for estimating object position and information creation method and program for estimating object position
CN110751674A (zh) 多目标跟踪方法及相应视频分析系统
WO2020213099A1 (ja) オブジェクト検出・追跡装置、方法、およびプログラム記録媒体
CN112036381B (zh) 视觉跟踪方法、视频监控方法及终端设备
JP7488674B2 (ja) 物体認識装置、物体認識方法及び物体認識プログラム
KR101806453B1 (ko) 무인 비행체 충돌 회피를 위한 이동 객체 검출 장치 및 방법
CN110651274A (zh) 可移动平台的控制方法、装置和可移动平台
CN112446355B (zh) 一种公共场所行人识别方法及人流统计系统
JP2002027480A (ja) 動画像処理方法および動画像処理装置
JP2021064021A (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: 19924790

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021514722

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19924790

Country of ref document: EP

Kind code of ref document: A1