WO2020052319A1 - 目标跟踪方法、装置、介质以及设备 - Google Patents

目标跟踪方法、装置、介质以及设备 Download PDF

Info

Publication number
WO2020052319A1
WO2020052319A1 PCT/CN2019/093793 CN2019093793W WO2020052319A1 WO 2020052319 A1 WO2020052319 A1 WO 2020052319A1 CN 2019093793 W CN2019093793 W CN 2019093793W WO 2020052319 A1 WO2020052319 A1 WO 2020052319A1
Authority
WO
WIPO (PCT)
Prior art keywords
target
video frame
camera
tracked
candidate
Prior art date
Application number
PCT/CN2019/093793
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 EP19861095.8A priority Critical patent/EP3770854A4/en
Publication of WO2020052319A1 publication Critical patent/WO2020052319A1/zh
Priority to US17/063,997 priority patent/US20210019627A1/en

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/292Multi-camera tracking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/579Depth or shape recovery from multiple images from motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • 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/40Scenes; Scene-specific elements in video content
    • G06V20/46Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
    • 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/20081Training; Learning
    • 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/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30232Surveillance

Definitions

  • Embodiments of the present application relate to the field of computer vision technology, and in particular, to a method, an apparatus, a computer storage medium, and a device for tracking an object.
  • Target tracking is one of the hot topics in the field of computer vision research. Target tracking has a wide range of applications in video surveillance, navigation, military, human-computer interaction, virtual reality, and autonomous driving. In simple terms, target tracking is to analyze and track a given target in the video to determine the exact position of the target in the video.
  • Target tracking is mostly classic tracking methods based on the correlation filtering tracking principle.
  • This tracking method updates the correlation filter according to the target area tracked in the previous frame of the video, and then updates the current video based on the updated correlation filter.
  • Target tracking is performed on the frame.
  • the correlation filter determines the tracking range of the current video frame according to the target area tracked by the previous frame, and uses the local sliding window method to take the shape feature as the reference in the current video frame. Target tracking.
  • the embodiments of the present application provide a method, a device, a medium, and a device for tracking a target, which can effectively prevent the tracking target from being lost and tracking drift, and ensure the accuracy of target tracking.
  • a first aspect of an embodiment of the present application provides a method for tracking an object, where the method includes:
  • the server obtains a first video stream, and performs the following data processing on the video frames in the first video stream to achieve target tracking in the first video stream.
  • the data processing includes:
  • the server detects candidate regions in the current video frame according to the target detection model and the current video frame;
  • the server extracts the depth feature corresponding to the candidate region according to the feature extraction model and the candidate region.
  • the feature extraction model is an end-to-end neural network model, which takes the image as input and the depth feature of the movable body in the image as Output
  • the server calculates the feature similarity corresponding to the candidate area according to the depth feature corresponding to the candidate area and the depth feature of the target tracked in the previous video frame;
  • the server determines the target tracked in the current video frame according to the feature similarity corresponding to the candidate region.
  • a second aspect of the embodiments of the present application provides a target tracking method, where the method includes:
  • the server tracks a target in a first video stream, where the first video stream is captured by a first camera;
  • the server selects a camera to be used for crossover from a camera adjacent to the first camera according to a target area that was last tracked in the first video stream.
  • Screen target tracking second camera
  • the server tracks the target in the second video stream.
  • a third aspect of the embodiments of the present application provides an object tracking device.
  • the device includes one or more processors, and one or more memories storing a program unit, where the program unit is executed by the processor, and the program unit includes :
  • An acquisition module configured to acquire a first video stream
  • a processing module configured to perform the following data processing on a video frame in the first video stream to achieve target tracking in the first video stream;
  • the processing module includes:
  • a detection submodule configured to detect and obtain candidate regions in the current video frame according to the target detection model and the current video frame
  • the feature extraction sub-module is configured to extract a depth feature corresponding to the candidate region according to the feature extraction model and the candidate region.
  • the feature extraction model is an end-to-end neural network model. Depth characteristics of the movable body as output;
  • a calculation submodule configured to calculate a feature similarity corresponding to the candidate region according to a depth feature corresponding to the candidate region and a depth feature of a target tracked in a previous video frame;
  • the determining submodule is configured to determine a target tracked in the current video frame according to a feature similarity corresponding to the candidate region.
  • a fourth aspect of the embodiments of the present application provides a device, where the device includes a processor and a memory:
  • the memory is configured to store program code, and transmit the program code to the processor
  • the processor is configured to execute the steps of the target tracking method according to the first aspect according to the instructions in the program code.
  • a fifth aspect of the embodiments of the present application provides a computer-readable storage medium, where the computer-readable storage medium is configured to store program code, and the program code is configured to execute the target tracking method according to the first aspect.
  • a sixth aspect of the embodiments of the present application provides a computer program product including instructions, which when run on a computer, causes the computer to execute the target tracking method according to the first aspect.
  • the embodiment of the present application provides a target tracking method.
  • the target tracking method uses a target detection model to perform target detection in the entire range of the current video frame to determine all candidate regions existing in the current video frame, and then based on the determined individual The candidate area determines the tracking target.
  • the target tracking range of the current video frame is determined based on the target area of the previous video frame, and the target tracking is performed only within the target tracking range.
  • a target detection model is used.
  • Determining candidate regions within the entire range of the video frame, expanding the range of target tracking, can effectively prevent the tracking target from being lost due to the tracking target moving too fast; in addition, in the target tracking method provided in the embodiments of the present application
  • the feature extraction model is used to extract the determined depth features of each candidate region, and the target is determined based on the depth features of each candidate region and the depth features of the target tracked in the previous video frame, compared to only the morphological features in the related technology In order to perform target tracking based on Wherein the depth of the target track is determined, to ensure that the determined target track more accurately, effectively prevent drift in tracking occurred.
  • FIG. 1 is a schematic diagram of an application scenario of a target tracking method according to an embodiment of the present application
  • FIG. 2 is a schematic flowchart of a target tracking method according to an embodiment of the present application.
  • FIG. 3 is a schematic diagram of the working effect of a target detection model in an embodiment of the present application.
  • FIG. 4 is a schematic flowchart of a cross-screen target tracking method according to an embodiment of the present application.
  • FIG. 5 is a schematic flowchart of a feature extraction model training method according to an embodiment of the present application.
  • FIG. 6 is a schematic diagram of an application scenario of another target tracking method according to an embodiment of the present application.
  • FIG. 7 is a schematic structural diagram of a target tracking device according to an embodiment of the present application.
  • FIG. 8 is a schematic structural diagram of another target tracking device according to an embodiment of the present application.
  • FIG. 9 is a schematic structural diagram of another target tracking device according to an embodiment of the present application.
  • FIG. 10 is a schematic structural diagram of another target tracking device according to an embodiment of the present application.
  • FIG. 11 is a schematic structural diagram of another target tracking device according to an embodiment of the present application.
  • FIG. 12 is a schematic structural diagram of a target tracking device according to an embodiment of the present application.
  • FIG. 13 is a schematic structural diagram of another target tracking device according to an embodiment of the present application.
  • the related tracking method based on the correlation filter tracking principle, in the process of tracking the target, there are technical problems that are prone to tracking drift and tracking the target.
  • an embodiment of the present application provides a Target tracking method.
  • target tracking is performed in the video frames included in the obtained video stream based on the target detection model and the feature extraction model.
  • the target detection model When specifically tracking a video frame in a video stream, first use the target detection model to detect the entire range of the video frame to obtain all candidate regions in the video frame; then use the feature extraction model to detect the Feature extraction is performed on each candidate region to obtain the depth feature corresponding to each candidate region.
  • each candidate region and tracking are calculated.
  • the feature similarity between the targets; further, the tracking target in the video frame is determined according to the feature similarity corresponding to each candidate region.
  • a target detection model is used to perform target detection in the entire range of the current video frame to determine all candidate regions existing in the current video frame, and then determine tracking based on the determined candidate regions.
  • the target tracking range of the current video frame is determined according to the target area of the previous video frame in the related art, and target tracking is performed only within the target tracking range.
  • a target detection model is used in the video frame. Candidate regions are determined within the overall range, and the scope of target tracking is expanded, which can effectively prevent the tracking target from being lost due to the tracking target moving too fast.
  • the model extracts the determined depth characteristics of each candidate region, and determines the tracking target based on the depth characteristics of each candidate region and the depth characteristics of the target tracked in the previous video frame, compared to the related technology based on morphological features only.
  • Target tracking based on the depth feature in the embodiments of this application Determine the target tracking, target tracking to ensure more accurately identified and effectively prevent the occurrence of track drift.
  • the target tracking method provided in the embodiment of the present application can be applied to a device having an image processing function, such as a terminal device, a server, and the like.
  • the terminal device may be a computer, a smart phone, a Personal Digital Assistant (PDA), or a tablet computer.
  • the server may be an application server or a Web server. When the application is deployed, the server may be A stand-alone server or a cluster server can provide target tracking services for multiple terminal devices at the same time.
  • the following uses the server as an execution body and the actual application scenario to introduce the target tracking method provided by the embodiments of the present application.
  • FIG. 1 is a schematic diagram of an application scenario of a target tracking method according to an embodiment of the present application.
  • This application scenario includes a surveillance camera 101 and a server 102.
  • the surveillance camera 101 is configured to send a video stream recorded by the surveillance camera 101 to the server 102
  • the server 102 is configured to execute the target tracking method provided in the embodiment of the present application to monitor the surveillance camera 101.
  • Target tracking is performed in each video frame included in the sent video stream.
  • the server 102 retrieves the video stream captured by the surveillance camera 101 and performs the following data processing for each video frame in the video stream:
  • the server 102 first uses the target detection
  • the model is detected in the entire range of the current video frame to obtain all candidate regions existing in the video frame;
  • the server 102 uses the feature extraction model to extract the depth features corresponding to all candidate regions in the current video frame.
  • the corresponding depth feature and the depth feature of the target tracked in the previous video frame calculate the feature similarity corresponding to each candidate region; the server 102 further determines the target tracked in the current video frame according to the feature similarity corresponding to each candidate region. .
  • the server 102 first uses the target detection model to perform target detection in the entire range of the current video frame, determines all candidate regions existing in the current video frame, and then performs target tracking based on all the determined candidate regions, thereby The target tracking range in each video frame is expanded, which can effectively prevent the tracking target from being lost due to the tracking target moving too fast.
  • the server 102 also uses the feature extraction model to extract the depth features of each candidate area, and based on The depth characteristics of each candidate area and the depth characteristics of the target tracked in the previous video frame determine the tracking target in the current video frame. Since the depth feature can reflect the characteristics of the tracking target from a deeper level, the depth feature will not be affected by tracking. The characteristics such as the shape of the target change, so target tracking based on the depth feature can ensure that the determined tracking target is more accurate and effectively prevent tracking drift.
  • the scenario shown in the above FIG. 1 is only an example.
  • the target tracking method provided in the embodiment of the present application can also be applied to a terminal device, and no application scenario of the target tracking method is made here. Specific limitations.
  • FIG. 2 is a schematic flowchart of a target tracking method according to an embodiment of the present application.
  • this embodiment uses a server as an execution subject for description. It should be understood that the execution subject of the target tracking method is not limited to the server, but may also be applied to a device having an image processing function, such as a terminal device.
  • the server When the server needs to perform target tracking for the first video stream, obtain the first video stream, and perform a data processing process as shown in FIG. 2 on the video frames in the first video stream to track the first video stream. Goals.
  • the server may retrieve the historical video stream from the video stream database as the first video stream.
  • the server may retrieve the first video stream from the historical video stream stored in the video stream database according to the camera tag corresponding to the first video stream and the shooting start and end times of the first video stream.
  • the video database is used to store multiple video streams. Data of video streams captured by two cameras; further, the data processing flow shown in FIG. 2 is performed on the acquired video frames in the first video stream to implement target tracking in the first video stream.
  • the server may obtain a video stream captured by a certain camera in real time as the first video stream.
  • the server may issue a video stream acquisition request to a camera, requesting to acquire the video stream captured by the camera in real time as the first video stream.
  • the camera responds to the server-initiated acquisition request, A video stream is sent to the server, so that the server executes the data processing flow shown in FIG. 2 for the video frames in the first video stream to implement target tracking in the first video stream.
  • the server may also obtain the first video stream in other manners, and no specific limitation is made on the specific acquisition manner of the first video stream.
  • the data processing process shown in FIG. 2 is performed for each video frame in the first video stream. As shown in FIG. 2, the data processing process specifically includes the following steps:
  • Step 201 The server detects a candidate region in the current video frame according to the target detection model and the current video frame.
  • the video frame is used as the current video frame, and the current video frame is input into the target detection model, and the target detection model is in the entire range of the current video frame.
  • object detection is performed to obtain all candidate regions in the current video frame.
  • the candidate regions are the regions where each detection object in the current video frame is located. There may be targets that need to be tracked among the detection objects included in each candidate region.
  • the target detection model is an end-to-end neural network.
  • the target detection model takes a video frame as input, and uses the bounding box of the detection object and the category to which the detection object belongs as output. That is, the current video frame is input to the target detection model, and the target detection model can output the bounding box of each detection object in the current video frame and the category to which each detection object belongs by processing the current video frame accordingly.
  • the area surrounded by the bounding box of the detection object is the candidate area.
  • the target detection model can detect all candidate regions in the current video frame, and each candidate region includes a detection object.
  • the detection object can be a person or an object, that is, the target detection model can detect various types of Detection object.
  • the video frame 301 is input into the target detection model 302.
  • the target detection model 302 can process the video frame 301 accordingly, and can mark the bounding box of each detection object included in the video frame 301.
  • a bounding box 303, a bounding box 304, and a bounding box 305 are marked in the video frame 301, and the object category in the bounding box 303 is marked beside the bounding box 303.
  • the object type in the bounding box 304 is marked next to the bounding box 304 as a car
  • the object type in the bounding box 305 is marked next to the bounding box 305 as a traffic signal light.
  • the output result of the target detection model shown in FIG. 3 is only an example. In practical applications, the target detection model can detect all candidate regions in the video frame. For the convenience of description, it is not marked in FIG. 3. All candidate regions detected by the target detection model.
  • the above target detection model may include a basic network and an auxiliary network, where the basic network uses a lightweight convolutional neural network mobilenet, and the auxiliary network uses a detection layer formed by a convolution kernel; the auxiliary The input of the network is the feature map of the output of different convolutional layers of the base network.
  • the object detection model is constructed based on the deep learning neural network structure SSD.
  • the core of the deep learning neural network SSD is to use a convolution kernel to predict the category to which a series of detection objects belong and the area where the detection objects are located.
  • the basic network in the deep learning neural network structure SSD is replaced with a lightweight convolutional neural network mobilenet. Since the convolutional neural network mobilenet has a faster processing speed, the target is used accordingly.
  • the detection model performs target detection, it is also able to detect the candidate regions in the current video frame faster.
  • target detection model provided in the embodiment of the present application may also be constructed based on other neural network structures, and the specific structure of the target detection model provided in the embodiment of the present application is not limited in any way.
  • Step 202 The server extracts a depth feature corresponding to the candidate region according to a feature extraction model and the candidate region.
  • the feature extraction model is an end-to-end neural network model, and uses an image as an input, and uses a moving body in the image. Depth features are used as output.
  • the server uses the target detection model to detect all candidate regions in the current video frame, it inputs all candidate regions in the current video frame to its own feature extraction model.
  • the feature extraction model extracts the depth corresponding to each candidate region accordingly.
  • the depth feature can reflect the features possessed by the detection object in each candidate region from a deep level. This depth feature is robust to the deformation of the object, and it will not simply follow the changes of the characteristics such as the shape of the detection object. That is, even if the shape of the detection object changes, the depth feature can still characterize the detection object.
  • the above feature extraction model is an end-to-end neural network model that takes an image as input and the depth features of the movable body in the image as output. That is, when using the feature extraction model to perform feature extraction on each candidate region in the current video frame, the current video frame labeled with each candidate region is input to the feature extraction model, and the feature extraction model extracts the depth possessed by each candidate region accordingly. Feature, and further, output the depth feature of each movable body in the current video frame.
  • the tracked object is usually a movable object such as a person, an animal, a vehicle, etc.
  • a non-movable object will not be used as a tracked object; accordingly, the feature extraction model does not need to output a non-movable object.
  • the depth characteristics of the server so that the server does not need to perform a series of calculations based on the depth characteristics of the immovable body, which reduces the workload required by the server to a certain extent.
  • Step 203 The server calculates the feature similarity corresponding to the candidate area according to the depth feature corresponding to the candidate area and the depth feature of the target tracked in the previous video frame.
  • the feature similarity corresponding to each candidate area is calculated according to the depth features corresponding to each candidate area and the depth features of the target tracked in the previous video frame.
  • the feature similarity corresponding to the candidate region is the similarity between the depth feature of each candidate region and the depth feature of the target tracked in the previous video frame.
  • the preceding video frame refers to the video frame that is closest to the current video frame and has been tracked to the target before the current video frame; for example, if it is in the previous video frame adjacent to the current video frame If the target is tracked, the previous video frame adjacent to the current video frame is directly used as the previous video frame; if the target is not tracked in the previous video frame adjacent to the current video frame, The previous time sequence continues to determine whether there is a tracking target in the video frame before the previous video frame, until the video frame with the tracking target is found, and the searched video frame is used as the previous video frame. The depth features of the tracked target in the video frame and the depth features corresponding to each candidate region in the current video frame are calculated. The feature similarity between the depth features corresponding to each candidate region and the tracked target's depth feature is calculated.
  • the server can determine the target in response to the user's click operation In order to track the target in the first video stream, and use the feature extraction model to extract the depth feature of the target, and then perform target tracking in subsequent video frames based on the depth feature of the target; in addition, the user can also include Upload the image of the target to the server, so that the server uses the feature extraction model to extract the depth features of the target that needs to be tracked based on the uploaded image, and then based on the extracted depth features of the target that needs to be tracked in the first video stream Target tracking.
  • the server may also use other methods to determine the target to be tracked, and perform target tracking in the first video stream based on the depth characteristics of the target, and no specific method for determining the tracking target is made here.
  • the server can use the Euclidian Distance algorithm, the Manhattan Distance algorithm, the Minkowski Distance algorithm, and the cosine similarity ( Cosine Similarity algorithm) calculates the similarity between the depth feature vector corresponding to each candidate region in the current video frame and the depth feature vector of the target tracked in the previous video frame.
  • the server may also use other similarity calculation methods to calculate the feature similarity corresponding to each candidate area according to the depth features corresponding to each candidate area and the depth features of the target tracked in the previous video frame.
  • the algorithm for calculating feature similarity is specifically limited.
  • Step 204 The server determines the target tracked in the current video frame according to the feature similarity corresponding to the candidate region.
  • the server After the server obtains the feature similarity corresponding to each candidate region in the current video frame, it determines the target to be tracked in the current video frame based on the feature similarity corresponding to each candidate region.
  • the feature similarity corresponding to the candidate region can represent the similarity between the depth feature of the candidate region and the depth feature of the target tracked in the previous video frame. Therefore, the larger the feature similarity, the better the candidate region is. The more similar the detection object is to the target tracked in the previous video frame, that is, the more likely it is that the detection object included in the candidate region is the object that needs to be tracked in the current video frame.
  • the server may select the candidate region with the highest feature similarity as the target region of the current video frame according to the feature similarity corresponding to the candidate region; and then determine the tracking in the current video frame according to the target region. To the goal.
  • the server may first sort the feature similarity corresponding to each candidate region in the current video frame according to the feature similarity corresponding to the candidate region in the current video frame. Since the feature similarity corresponding to the candidate region is greater, It shows that the more likely it is that the detection object included in the candidate area is the target that needs to be tracked, therefore, according to the order of the similarity of the characteristics, the candidate area with the highest feature similarity can be selected from it as the target area of the current video frame. ; Further, the detection object included in the target area is used as a target to be tracked in the current video frame.
  • the server may also set a threshold of feature similarity in advance. If the feature similarity of the candidate region exceeds the threshold, it indicates that the candidate region may be the target region, that is, the detection object included in the candidate region may be the current video frame. Target that needs to be tracked. It should be understood that the threshold may be set according to actual conditions, and the threshold is not specifically limited herein.
  • the embodiments of the present application provide the following three possible implementation manners to determine a target area from the plurality of candidate areas that exceed a threshold, and further determine a tracking target based on the target area.
  • the server may select, from a plurality of candidate regions whose feature similarity exceeds a threshold value, a candidate region that most closely matches a moving direction of a target tracked in a previous video frame as the current video.
  • the target area of the frame; the target tracked in the current video is determined according to the target area of the current video frame.
  • the server may first determine whether the feature similarity corresponding to each candidate region exceeds the threshold according to the feature similarity corresponding to each candidate region in the current video frame. If there are multiple candidate regions with feature similarity exceeding the threshold, the server may The moving direction of the target tracked in the previous video frame, and the target area is determined from the plurality of candidate areas. Specifically, the server may input the image position of the target tracked in the video frame before the current video frame into the position coordinate mapping model, and use the position coordinate mapping model to determine the tracked position in the video frame before the current video frame.
  • the physical position of the target and then based on the physical position of the target tracked in the video frame before the current video frame, determine the movement direction of the target tracked in the previous video frame; further, use the position coordinate mapping model to determine the
  • the physical locations of multiple candidate regions that exceed the threshold in the current video frame and the physical locations of the targets tracked in the previous video frame are based on the physical locations of multiple candidate regions that exceed the threshold and the target tracked in the previous video frame Physical location to determine the respective movement directions of multiple candidate areas that exceed the threshold in the current video frame, and then calculate the corresponding movement directions of the multiple candidate areas that exceed the threshold and the movement direction of the target tracked in the previous video frame
  • the degree of matching to finalize the target tracked in the previous video frame The candidate region with the most matching motion direction is the target region, and the tracking target in the current video frame is determined based on the target region.
  • the server determines the moving direction of the target tracked in the 19th video frame according to the physical position of the target tracked in the 17th to 19th video frames as the First direction; further, the server determines each candidate that exceeds the threshold in the 20th video frame based on the physical position of each candidate region that exceeds the threshold in the 20th video frame and the physical location of the target tracked in the 19th frame of the video frame.
  • the direction of motion corresponding to each area is used as the second direction, that is, each candidate area that exceeds the threshold in the 20th video frame corresponds to a second direction.
  • the degree of matching between each second direction and the first direction is calculated to determine the degree of matching.
  • the candidate region corresponding to the highest second direction is the target region, and the target tracked in the 20th video frame is determined based on the target
  • the server may select a candidate region with a minimum physical distance from a target region tracked in a previous video frame from a plurality of candidate regions whose feature similarity exceeds a threshold, as the current A target area of the video frame; and further, a target tracked in the current video frame is determined according to the target area of the current video frame.
  • the server can determine the physical positions of the candidate regions based on the image positions of multiple candidate regions whose feature similarity exceeds the threshold in the current video frame; similarly, the server can track the targets tracked in the previous video frame. In the image position in the video frame, determine the physical position of the target tracked in the previous video frame; then, calculate the distance between the physical position of each candidate area and the physical position of the target tracked in the previous video frame , Determine the candidate region with the smallest distance as the target region in the current video frame, and further, use the detection object included in the target region of the current video frame as the target tracked in the current video frame.
  • the server uses the two existing video frames in the 20th video frame.
  • the image positions of the candidate regions whose feature similarity exceeds the threshold in the 20th video frame are determined.
  • the physical positions corresponding to the two candidate regions are determined.
  • the server determines the 19th position based on the image position of the target tracked in the 19th video frame.
  • the physical position of the target tracked in the video frame the server calculates the distance between the physical position corresponding to the two candidate areas and the physical position of the target tracked in the 19th frame, and determines the closest candidate area as the target area.
  • the detection object included in the target area serves as a target tracked in the 20th video frame.
  • the server may combine the two reference factors of the physical location distance and the tracked movement direction to select a target region among multiple candidate regions whose feature similarity exceeds a threshold. That is, the server selects, from a plurality of candidate regions whose feature similarity exceeds the threshold, the candidate region that most closely matches the physical position and movement direction of the target tracked in the previous video frame as the target region of the current video frame; A candidate region that has the closest distance to the target tracked in the previous video frame and the closest movement direction; further, the target tracked in the current video frame is determined according to the target region of the current video frame.
  • the server may first use a position coordinate mapping model to convert the image position of each candidate region exceeding the threshold in the current video frame into a physical position, and convert the image position of the target tracked in the previous video frame into a physical position; Then, based on the physical location of each candidate region that exceeds the threshold and the physical location of the target tracked in the previous video frame, a displacement corresponding to each candidate region that exceeds the threshold is determined.
  • the displacement refers to the physical location of the candidate region and the A directed line segment determined by the physical location of the target tracked in the previous video frame. This directed line segment can both represent the physical location distance between the candidate area and the target tracked in the previous video frame, and can also represent the correspondence of the candidate area.
  • Direction of movement is first use a position coordinate mapping model to convert the image position of each candidate region exceeding the threshold in the current video frame into a physical position, and convert the image position of the target tracked in the previous video frame into a physical position; Then, based on the physical location of each candidate region that exceeds the threshold and the physical location of
  • the server can determine the previous position based on the position of the target tracked in the video frame adjacent to the previous video frame and before the previous video frame, and the position of the target tracked in the previous video frame.
  • the displacement corresponding to the tracked target in the video frame Further, calculate the similarity between the displacement corresponding to each candidate region in the current video frame and the displacement corresponding to the target tracked in the previous video frame, select the candidate region with the highest similarity as the target region, and determine the current video based on the target region.
  • the target tracked in the frame is
  • the server may also first determine the moving direction of the target tracked in the previous video frame according to the method for determining the moving direction of the tracked target provided in the first possible implementation manner described above, and then, based on the current video, The positions of multiple candidate regions in the frame whose feature similarity exceeds the threshold determine the candidate regions that match the moving direction of the tracked target; if there is only one candidate region that matches the tracked target's moving side, you can This candidate area is directly determined as the target area; if there are multiple candidate areas that match the tracked target's motion direction, the method of determining the physical location distance provided in the second possible implementation mode is continued to determine these multiple areas.
  • the server may also first determine a plurality of candidate regions whose feature similarity exceeds a threshold in the current video frame according to the method for determining a physical location distance provided in the second possible implementation manner described above and tracked in the previous video frame.
  • the physical location distance between the targets and then determine whether the physical location distance between each candidate area and the target tracked in the previous video frame is less than the distance threshold. If there is only one candidate area that is less than the distance threshold, you can directly The candidate area is used as the target area; if there are multiple candidate areas that are smaller than the distance threshold, the server continues to determine the tracking in the previous video frame according to the method for determining the moving direction of the tracked target provided in the first possible implementation manner.
  • the moving direction of the obtained target is further selected from a plurality of candidate areas smaller than the distance threshold as a target area, and a tracking target in the current video frame is determined based on the target area.
  • the server determines its corresponding physical position when determining the corresponding physical position according to the image position of the candidate area, and according to the image position of the target tracked in the previous video frame.
  • a conversion between an image position and a physical position can be achieved based on a position coordinate mapping model.
  • the server inputs the image position of the candidate region into the position coordinate mapping model, obtains the physical position of the candidate region output by the position coordinate mapping model, and inputs the image position of the target region tracked in the previous video frame into the position coordinate mapping model. To obtain the physical position of the target area tracked in the previous video frame output by the position coordinate mapping model.
  • the position coordinate mapping model processes the image position of the candidate region accordingly, and then obtains and outputs the physical position corresponding to the candidate region;
  • the position coordinate mapping model will also process the image position of the target accordingly, and then obtain and input the target correspondence. Physical location.
  • the above image position specifically refers to the pixel position coordinates of the candidate area or tracking target in the video frame
  • the above physical position specifically refers to the position coordinates of the candidate area or tracking target on the flat map.
  • the pixel position coordinates of the intersection of the candidate region and the ground can be used as the image position of the candidate region, or the pixel position coordinates of the center point of the candidate region in the video frame can be used as The image position of the candidate area does not specifically limit the image position of the candidate area.
  • the pixel position coordinates of the intersection of the tracking target and the ground in the video frame where it is located can be used as the tracking target.
  • the image coordinates of the tracking target may also be the pixel position coordinates of the center point of the tracking target in the video frame as the image position of the tracking target, and the image position of the tracking target is not specifically limited here either.
  • the above-mentioned position coordinate mapping model is constructed based on the coordinate mapping matrix.
  • the server according to the position coordinates of at least four position points on the calibration image and the at least four position points are in The physical position coordinates in the physical world are calculated through a perspective transformation formula to obtain a coordinate mapping matrix, and then a position coordinate mapping model is generated based on the coordinate mapping matrix.
  • the position coordinate mapping model can obtain the physical position coordinates corresponding to the image position coordinates by multiplying the input image position coordinates by the coordinate mapping matrix, that is, the image in the video frame is realized. Location is converted to a physical location in the physical world.
  • each camera will save its corresponding coordinate mapping matrix as its own attribute.
  • the coordinate mapping matrix is used to construct a position coordinate mapping model corresponding to the camera.
  • the position coordinate mapping model can call the coordinate mapping matrix of the camera corresponding to the video frame, and use the coordinate mapping matrix to convert the image position into a physical position.
  • a position coordinate mapping model can also be constructed by using the inverse matrix of the coordinate mapping matrix. Using the position coordinate mapping model, a physical position in the physical world can be mapped to image position coordinates in a video frame, that is, using the coordinate mapping matrix And the inverse matrix of the coordinate mapping matrix can realize bidirectional conversion between image position and physical position.
  • the position coordinate mapping model can convert the image position in a video frame into a physical position
  • the position coordinate mapping model can also be used to draw the motion of the target on the physical map based on the physical position of the target tracked by the first video stream. Trajectory, thereby real-time positioning on the physical map and displaying the location of the tracked target.
  • the server may first obtain each video frame containing the target in the first video stream in chronological order, and then sequentially input the image position of the target contained in these video frames into the position coordinate mapping model. Accordingly, the position coordinate The mapping model outputs the physical position corresponding to the image position of the target in each video frame according to the image position of the input target; and according to the chronological order of the video frames, the physical position corresponding to the target in each video frame is marked on the physical map. According to the marked physical position, the motion trajectory of the target can be drawn on the physical map.
  • a target detection model is used to perform target detection in the entire range of the current video frame to determine all candidate regions existing in the current video frame, and then determine tracking based on the determined candidate regions.
  • the target tracking range of the current video frame is determined according to the target area of the previous video frame in the related art, and target tracking is performed only within the target tracking range.
  • a target detection model is used in the video frame. Candidate regions are determined within the overall range, and the scope of target tracking is expanded, which can effectively prevent the tracking target from being lost due to the tracking target moving too fast.
  • the model extracts the determined depth characteristics of each candidate region, and determines the tracking target based on the depth characteristics of each candidate region and the depth characteristics of the target tracked in the previous video frame, compared to the related technology based on morphological features only.
  • Target tracking based on the depth feature in the embodiments of this application Determine the target tracking, target tracking to ensure more accurately identified and effectively prevent the occurrence of track drift.
  • the target tracking method may also select a second camera capable of capturing the target from the cameras adjacent to the first camera, and the video stream captured by the second camera continues.
  • Target tracking that is, cross-screen target tracking.
  • FIG. 4 is a schematic flowchart of a multi-screen target tracking method according to an embodiment of the present application.
  • this embodiment still uses the server as the execution subject for description.
  • the execution subject of the cross-screen target tracking method is not limited to the server, but can also be applied to devices with image processing functions such as terminal devices.
  • the cross-screen target tracking method includes the following steps:
  • Step 401 The server selects a second camera for cross-screen target tracking from a camera adjacent to the first camera according to a target area tracked last time in the first video stream.
  • the server cannot detect the target that needs to be tracked in the first video stream within a preset period of time, or the server detects that the target that needs to be tracked disappears at the edge of the image that can be captured by the first camera, the target that needs to be tracked may move To a range that cannot be captured by the first camera; at this time, the server needs to select a target that can be captured from a camera adjacent to the first camera according to the area where the target was last tracked in the first video stream The second camera continues to perform target tracking with the second video stream captured by the second camera, that is, to achieve cross-screen tracking.
  • the server may first target the camera adjacent to the first camera according to the image captured by the camera.
  • the video stream and the target detection model detect the candidate regions corresponding to the camera.
  • the server may first determine a camera whose position is adjacent to the position of the first camera according to the position of the first camera; then according to the time when the target is last tracked in the first video stream, Video frames are selected from video streams captured by cameras adjacent to the camera, and the shooting moment of the selected video frames is after the time when the target is last tracked in the first video stream, and within the adjacent period when the target is last tracked.
  • This adjacent period can be set according to actual needs.
  • the range moves to the range captured by the second camera, so when selecting a video frame from a video stream captured by a camera adjacent to the first camera, you can select from a video stream captured by each camera adjacent to the first camera Video frames with multiple shooting moments belonging to adjacent periods are displayed.
  • the video frame that was last tracked to the target in the first video stream is referred to as the first video frame
  • the video frames selected from the video streams captured by the cameras adjacent to the first camera are collectively referred to as the second video frame.
  • the server After the server selects a second video frame from a video stream captured by a camera adjacent to the first camera, the server inputs each second video frame to a target detection model, and the target detection model processes each second video frame accordingly, The candidate regions existing in each second video frame are detected, that is, the candidate regions corresponding to each camera adjacent to the first camera are detected.
  • the server After detecting the candidate regions corresponding to the cameras adjacent to the first camera, the server selects the similarity exceeding the similarity between the candidate regions corresponding to each camera and the depth feature in the target region that was last tracked in the first video stream.
  • a camera corresponding to a plurality of candidate regions of the threshold is used as a candidate camera.
  • the server uses the feature extraction model to extract the depth characteristics of each candidate region in each second video frame, and calculates the depth characteristics of each candidate region in each second video frame and the depth characteristics of the target region in the first video frame.
  • Feature similarity to determine whether the feature similarity corresponding to each candidate region exceeds a threshold, and use the camera corresponding to each candidate region with a feature similarity exceeding the threshold as a candidate camera.
  • determining the second camera for cross-screen tracking can effectively prevent the change in the shape of the target or the change in the camera's shooting angle.
  • follow-up of the target occurs, even in the case of multi-screen, it can ensure that the target is accurately tracked.
  • the cameras adjacent to the first camera are camera A, camera B, and camera C. According to the shooting time of the first video frame, select the shooting time and the first from the video stream captured by camera A, camera B, and camera C, respectively.
  • the second video frame adjacent to the video frame at the moment of shooting Assume that the second video frame selected from the video stream captured by camera A is video frame a, and the second video frame selected from the video stream captured by camera B is video frame b.
  • the second video frame selected from the video stream captured by camera C is video frame c; the server uses the target detection model to detect candidate regions in video frame a, video frame b, and video frame c, assuming that the target detection model detects a video Candidate regions a1, a2, a3, and a4 are present in frame a, candidate regions b1 and b2 are detected in video frame b, and candidate regions c1 are detected in video frame c.
  • the server uses the feature extraction model to extract the depth features of the candidate regions existing in video frame a, video frame b, and video frame c, and calculates the depth features of each candidate region in video frame a, video frame b, and video frame c.
  • the feature similarity between the depth features of the target area in a video frame further, the server determines the candidate area whose similarity exceeds the threshold based on the feature similarity corresponding to each candidate area in each second video frame, assuming that the similarity exceeds the threshold
  • the candidate area includes a candidate area a3 and a candidate area c1, and the server may use the camera A corresponding to the candidate area a3 and the camera C corresponding to the candidate area c1 as candidate cameras.
  • the camera corresponding to the candidate region may be directly used as the second camera.
  • the server may further select from the candidate cameras the candidate region that most closely matches the physical position and movement direction of the target region that was last tracked to the target region in the first video stream as the Second camera for target tracking.
  • the server may input the image position of the target region in the first video frame into a position coordinate mapping model, and use the position coordinate mapping model to determine the physical position of the target region in the first video frame; and, the server uses the position coordinate mapping
  • the model determines the physical position of each candidate region based on the image position of each candidate region whose feature similarity exceeds the threshold in each second video frame; calculates the physical position of each candidate region and the physical position of the target region in the first video frame distance.
  • the server may also determine the moving direction of the tracked target according to a plurality of video frames adjacent to the first video frame in the first video stream that are tracked to the target; further, the similarity of each feature in each second video frame exceeds The position of the candidate region of the threshold determines whether the location of each candidate region whose feature similarity exceeds the threshold matches the movement direction of the tracked target.
  • the distance between the physical location of each candidate area and the physical location of the target area in the first video frame and the moving direction of the target tracked in the first video stream are determined to determine that the physical location is closer, and A candidate region that matches the movement direction of the target tracked in the first video stream, and a camera corresponding to the candidate region is used as a second camera for cross-screen target tracking.
  • the server may also determine the second camera used for target tracking only based on the distance between the physical location of each candidate area and the physical location of the target area in the first video frame, that is, the server may directly determine the distance from the first video frame
  • the candidate region with the closest physical location in the target region is further determined as the camera corresponding to the candidate region as the second camera.
  • the server may also determine the candidate area that most closely matches the movement direction based on the movement direction of the target tracked in the first video frame, and further determine the camera corresponding to the candidate area as the second camera.
  • the server may determine, based on the feature similarity of each candidate region in the second video frame, the camera corresponding to the candidate region with the highest feature similarity as the second camera; The server may also combine the feature similarity with the physical location distance and / or the moving direction of the tracked target, determine the candidate area most likely to include the tracked target in the second video frame, and then determine the candidate area corresponding to The camera is a candidate camera.
  • Step 402 The server obtains a second video stream captured by the second camera, and performs the data processing on a video frame in the second video stream to implement target tracking in the second video stream.
  • the server determines the second camera
  • the second video stream captured by the second camera is acquired, and the target tracking method shown in FIG. 2 is performed on each video frame included in the second video stream, so as to implement the second video stream. Target tracking.
  • the server may also use the position coordinate mapping model to convert the image position of the target tracked in each video frame in the second video stream to a physical position. Further, the server may The physical position of the target tracked in one video stream and the second video stream, and the motion trajectory of the tracked target is drawn on the physical map, that is, in the case of cross-screen tracking, the server can also use the position coordinate mapping model to Draw the track of the tracked target on the physical map.
  • a target detection model is used to detect candidate regions in video frames captured by cameras adjacent to the first camera, and then a feature extraction model is used to extract the depth features of each candidate region. Based on the depth features of each candidate region and the depth features of the target tracked last time in the first video stream, determine the feature similarity corresponding to each candidate region; further, the feature similarity corresponding to each candidate region and the physics of each candidate region The distance between the position and the physical location of the target that was last tracked in the first video stream and the movement direction of the target tracked in the first video stream are combined to determine a second camera for cross-screen tracking; further, For each video frame included in the second video stream captured by the second camera, the target tracking method provided in the previous embodiment is performed to implement target tracking in the second video stream.
  • a target detection model and a feature extraction model are used to determine a second camera for cross-screen tracking, and target tracking is performed in a second video stream captured by the second camera.
  • target tracking is performed in a second video stream captured by the second camera.
  • the implementation of the target tracking method provided in the embodiments of the present application requires the feature extraction model to determine the depth feature corresponding to each candidate region based on each candidate region in the video frame. Since the target that needs to be tracked in actual applications is usually the human body, the feature extraction model can be constructed based on the human re-recognition technology so that the feature extraction model can extract the depth features of the human body accordingly.
  • FIG. 5 is a schematic flowchart of a training method of a feature extraction model according to an embodiment of the present application.
  • this embodiment still uses the server as the execution subject for description.
  • the execution subject of the training method is not limited to the server, and may also be applied to a device having a model training function such as a terminal device.
  • the training method includes the following steps:
  • Step 501 The server obtains an image sample, where the image sample includes a human body image and an image tag.
  • the server trains the feature extraction model, it needs to obtain image samples in order to train the feature extraction model based on the obtained image samples.
  • the image sample obtained by the server usually includes a human body image and an image tag corresponding to the human body image.
  • the human body image is an image including a person
  • the image tag is a label capable of characterizing the person in the human body image.
  • the human body image obtained by the server includes
  • the image label corresponding to the human body image is a label that can represent the presence of the person A in the human body image.
  • the server can also use a generative adversarial network constructed based on human pose recognition technology to multi-pose augmentation of human images in the acquired image samples.
  • the image samples are enriched.
  • Step 502 The server constructs an initial model of the deep convolutional neural network, and uses the image samples to train the initial model of the deep convolutional neural network, so as to obtain a deep convolutional neural network model that meets the training end condition as the feature. Extract the model.
  • an initial model of a deep convolutional neural network can be constructed based on the human local segmentation technology and feature learning technology; using this deep convolutional neural network can extract human depth features from the human body image included in the image sample.
  • a loss function is constructed based on the feature error of the corresponding depth feature of the human body image with the same label. Based on the loss function, the initial model of the deep convolutional neural network is optimally trained to train the model parameters that meet the end-of-training conditions, and the final training is obtained.
  • the deep convolutional neural network model is used as a feature extraction model.
  • the server can use the test image samples to verify the trained model, where the trained model uses the image samples to perform one or more rounds of training on the initial model of the deep convolutional neural network.
  • An optimized model the test image samples may include multiple test human images corresponding to the same test image label, and the test image samples may also include multiple test human images corresponding to different test image labels.
  • the trained model is verified by using multiple test human images including the same test image label, multiple test human images included in the test image sample may be input to the first model, and after the training is used, The human model extracts the human depth features of each test human image.
  • the end condition can be directly used as a feature extraction model based on the trained model; if the first model is verified using multiple test human images that include different test image tags, multiple tests included in the test image sample can be used
  • the human body image is input to the trained model, and the human body depth feature of each test human body image is extracted using the trained model. If the feature similarity between the human body depth features corresponding to each test human body image is lower than the second similarity threshold, It indicates that the model performance of the first model is better and has satisfied the training End condition, the model can be trained directly as a feature extraction model. Otherwise, it indicates that the performance of the model after training is not good enough, and further training is needed.
  • first similarity threshold is larger than the second similarity threshold, and the first similarity threshold and the second similarity threshold may be set according to actual conditions, and the first similarity threshold and the second similarity threshold are not set here. Any specific qualification.
  • the server uses the test image sample A to verify the initial model of the deep convolutional neural network obtained by the first round of training optimization.
  • the test image sample A includes a test human image a1 and a test human image a2 corresponding to the same test image label.
  • the server After inputting the test human image a1 and the test human image a2 into the training model obtained by the first round of training optimization, the model extracts the human depth features in the test human image a1 and the human depth features in the test human image a2, and calculates the test.
  • the feature similarity is greater than the first similarity threshold, it indicates that the model recognition accuracy has reached the target, and at this time training The model already meets the end of training conditions and can be used as a feature extraction model. Conversely, if the feature similarity is less than the first similarity threshold, it means that the recognition accuracy of the model trained at this time cannot meet the requirements and has not yet been met. End of training conditions, you need to continue using the model with image samples Training optimization.
  • the server may also use other methods to verify whether the initial model of the deep convolutional neural network meets the end-of-training conditions, and there is no limitation on verifying the initial model of the deep convolutional neural network.
  • the feature extraction model is constructed and trained based on the human re-recognition technology according to the above method, which can ensure that the trained feature extraction model can accurately extract the depth features of the human body, thereby ensuring that the target tracking based on the feature extraction model can accurately accurately Determining the depth characteristics of the target to be tracked and the depth characteristics of each candidate region determined by the target detection model, thereby ensuring the accuracy of target tracking.
  • the target tracking method provided in the embodiment of the present application in combination with an application scenario of tracking a target in a surveillance video.
  • FIG. 6 is a schematic diagram of an application scenario of a target tracking method according to an embodiment of the present application.
  • the application scenario includes a first camera 601, a tracking server 602, and a second camera 603.
  • the security personnel may initiate a corresponding target tracking request to the tracking server 602 through the terminal device, and accordingly, the tracking server 602 responds to the target tracking Request that the first video stream captured by the first camera 601 is acquired from the first camera 601 in real time, and the following data processing is performed on the video frames in the first video stream.
  • the video frame is used as the current video frame.
  • the tracking server 602 first uses the target detection model to detect objects within the entire range of the current video frame. Detect to obtain all candidate regions existing in the current video frame, each candidate region contains a detection object; then, the tracking server 602 extracts the depth features of each candidate region in the current video frame using a feature extraction model; further, The tracking server 602 calculates the depth feature corresponding to each candidate region and the depth of the target tracked in the previous video frame according to the depth feature corresponding to each candidate region and the depth feature of the target tracked in the video frame before the current video frame. Feature similarity between features; finally, based on the feature similarity corresponding to each candidate region, the target tracked in the current video frame is determined.
  • the tracking server 602 may also use a position coordinate mapping model to determine the physical position corresponding to each candidate region in the current video frame and the physical position of the target tracked in the previous video frame.
  • the physical location of each candidate area and the physical location of the target tracked in the previous video frame are calculated, and the distance between the physical location of each candidate area and the physical position of the target tracked in the previous video frame is calculated; further, the characteristics are similar in combination Degree and physical location distance determine the target tracked in the current video frame.
  • the tracking server 602 determines the target tracked in the current video frame, it can also determine the moving direction of the tracked target according to the position of the target tracked in the previous video frame, and according to each candidate area in the current video frame. Where it is, determine whether each candidate area matches the movement direction of the tracked target; further, combine the feature similarity and the degree of matching of the candidate area with the tracked target's movement direction to determine the tracking in the current video frame To the goal.
  • the tracking server 602 may also combine the above three factors of feature similarity, physical location distance, and degree of matching with the direction of motion to determine the target tracked in the current video frame. .
  • the tracking server 602 may perform data processing on each video frame in the first video stream according to the foregoing method, so as to implement target tracking in the first video stream.
  • the tracking server 602 detects that the tracked target disappears at the edge of the range that can be captured by the first camera, and the target is not tracked in the first video stream captured by the first camera within a preset time period, the tracked The target moves to a range that cannot be captured by the first camera.
  • the tracking server 602 enables cross-screen target tracking to determine a second camera 603 that can capture a target that needs to be tracked.
  • the tracking server 602 determines the second camera 603, it needs to first determine the camera adjacent to the first camera 601 according to the position of the first camera 601; and then according to the time when the first camera 601 shot the target to be tracked last time , Extract a second video frame from a video stream captured by a camera adjacent to the first camera 601, and use a target detection model to detect a candidate region existing in the second video frame.
  • the tracking server 602 uses the feature extraction model to extract the depth characteristics of each candidate region in each second video frame, and calculates each candidate region based on the depth characteristics of each candidate region and the depth characteristics of the target tracked last time in the first video stream. Corresponding feature similarity, further, selecting candidate areas with feature similarity exceeding a threshold, and determining a camera corresponding to a candidate area having feature similarity exceeding a threshold as a candidate camera.
  • the tracking server 602 may directly use the camera corresponding to the candidate region as the second camera; when there are multiple candidate regions with feature similarity exceeding the threshold, the tracking server 602 may use The position coordinate mapping model determines the physical location of each candidate region whose feature similarity exceeds the threshold, and then determines each candidate region and the third region based on the physical location of each candidate region and the physical location of the target tracked last time in the first video stream.
  • the last physical tracking distance to a target in a video stream in addition, the tracking server 602 can also determine the direction of movement of the target that was last tracked in the first video stream, and determine the location and target of each candidate region that exceeds the threshold Whether the moving directions of the matching areas match; finally, among the candidate areas exceeding the threshold, a candidate area with the smallest physical position distance and the best matching with the moving direction of the target is selected, and the camera corresponding to the candidate area is determined as the second camera 603.
  • the tracking server 602 may perform target tracking on the second video stream captured by the second camera 602 according to the method for performing target tracking in the first video stream captured by the first camera 601.
  • the tracking server 602 can also use the position coordinate mapping model to convert each video in the first video stream and the second video stream.
  • the image position of the target tracked in the frame is correspondingly converted to the physical position on the physical map, and the motion trajectory of the target is drawn on the physical map according to the physical position of the target tracked in each video frame, thereby facilitating security
  • the personnel updated the displayed motion trajectory in real time according to the physical map, and arranged security forces to track and intercept the target in a timely and reasonable manner.
  • it also provided fast and powerful assistance for investigating the historical trajectory of malicious personnel after the incident.
  • a video surveillance system often includes multiple cameras, and a full range of video surveillance is performed through multiple cameras.
  • the scenario shown in Figure 6 described the implementation process of the solution only through cross-screen tracking of two cameras.
  • target tracking its essence is the repeated implementation of the above target tracking method.
  • the embodiments of the present application also provide corresponding target tracking devices, so as to facilitate the practical application and implementation of these methods.
  • FIG. 7 is a schematic structural diagram of a target tracking device corresponding to the method shown in FIG. 2 above.
  • the target tracking device 700 includes one or more processors, and one or more memories storing program units.
  • the program unit is executed by a processor, and the program unit includes:
  • the obtaining module 710 is configured to obtain a first video stream
  • the processing module 720 is configured to perform the following data processing on a video frame in the first video stream to achieve target tracking in the first video stream;
  • the processing module 720 includes:
  • a detection sub-module 721 configured to detect and obtain candidate regions in the current video frame according to the target detection model and the current video frame;
  • a feature extraction sub-module 722 is configured to extract a depth feature corresponding to the candidate region according to the feature extraction model and the candidate region.
  • the feature extraction model is an end-to-end neural network model, which uses an image as an input and an image as an input. The depth characteristics of the movable body in the output;
  • a calculation submodule 723 configured to calculate a feature similarity corresponding to the candidate region according to a depth feature corresponding to the candidate region and a depth feature of a target tracked in a previous video frame;
  • the determination sub-module 724 is configured to determine the target tracked in the current video frame according to the feature similarity corresponding to the candidate region.
  • the determination sub-module 724 is specifically set as:
  • the determination sub-module 724 is specifically set as:
  • a target tracked in the current video frame is determined according to a target area of the current video frame.
  • the determination sub-module 724 is specifically set as:
  • a target tracked in the current video frame is determined according to a target area of the current video frame.
  • the determination sub-module 724 is specifically set as:
  • a target tracked in the current video frame is determined according to a target area of the current video frame.
  • the determining submodule 724 specifically calculates the physical position of the candidate region and the physical position of the target region tracked in the previous video frame in the following manner. :
  • the image position of the target region tracked in the previous video frame is input to the position coordinate mapping model, and the physical position of the target region tracked in the previous video frame output by the position coordinate mapping model is obtained.
  • FIG. 8 is a schematic structural diagram of another target tracking device according to an embodiment of the present application.
  • the device 800 further includes one or more processes.
  • the coordinate mapping matrix calculation module 801 is configured to calculate a coordinate mapping matrix through a perspective transformation formula according to the position coordinates of at least four position points on the calibration image and the physical position coordinates of the at least four position points on the physical world ground. ;
  • the model generating module 802 is configured to generate the position coordinate mapping model according to the coordinate mapping matrix.
  • FIG. 9 is a schematic structural diagram of another target tracking device according to an embodiment of the present application.
  • the device 900 further includes one or more processes.
  • a selection module 901 is configured to select a second camera for cross-screen target tracking from a camera adjacent to the first camera according to a target area tracked last time in the first video stream, the first video The stream is obtained by the first camera;
  • the multi-screen tracking module 902 is configured to obtain a second video stream captured by the second camera, and perform the data processing on a video frame in the second video stream, so as to implement the second video stream in the second video stream. Target Tracking.
  • the selection module 901 is specifically configured to:
  • a candidate region that is most suitable for matching the physical position and movement direction of the target region tracked by the first video stream for the last time is selected from the candidate cameras as the second camera for target tracking.
  • FIG. 10 is a schematic structural diagram of another target tracking device according to an embodiment of the present application.
  • the device 1000 further includes one or more processes.
  • the drawing module 1001 is configured to draw a motion trajectory of the target on a physical map according to the physical position of the target tracked by the first video stream.
  • the target detection model includes:
  • the basic network uses a lightweight convolutional neural network mobilenet
  • the auxiliary network uses a detection layer formed by a convolution kernel
  • the input of the auxiliary network is different convolution layers of the basic network
  • the output feature map is different convolution layers of the basic network
  • FIG. 11 is a schematic structural diagram of another target tracking device according to an embodiment of the present application.
  • the device 1100 further includes one or more processes.
  • An image sample acquisition module 1101 is configured to acquire an image sample, where the image sample includes a human body image and an image tag;
  • a model training module 1102 is configured to construct an initial model of a deep convolutional neural network, and use the image samples to train the initial model of the deep convolutional neural network to train to obtain a deep convolutional neural network model that satisfies an end condition of training. As the feature extraction model.
  • a target detection model is used to perform target detection in the entire range of the current video frame to determine all candidate regions existing in the current video frame, and then determine tracking based on the determined candidate regions.
  • the target tracking range of the current video frame is determined according to the target area of the previous video frame in the related art, and target tracking is performed only within the target tracking range.
  • a target detection model is used in the video frame. Candidate areas are determined within the overall range, and the scope of target tracking is expanded, which can effectively prevent the tracking target from being lost due to the tracking target moving too fast.
  • feature extraction is used.
  • the model extracts the determined depth characteristics of each candidate region, and determines the tracking target based on the depth characteristics of each candidate region and the depth characteristics of the target tracked in the previous video frame, compared to the related technology based on morphological features only.
  • Target tracking based on the depth feature in the embodiments of this application Identifying tracking targets can ensure that the determined tracking targets are more accurate and effectively prevent tracking drift.
  • the target tracking device provided in the embodiment of the present application can also be reliably applied to the scenario of multi-screen target tracking. Therefore, in the application scenario of multi-screen target tracking, the tracking target or tracking target can also be effectively prevented from being lost. Drift conditions ensure the accuracy of target tracking.
  • FIG. 12 is a schematic structural diagram of a target tracking device provided by an embodiment of the present application.
  • the server 1200 may have a configuration or performance. The difference is relatively large, and can include one or more central processing units (CPUs) 1222 (for example, one or more processors) and memory 1232, one or more storage applications 1242 or data 1244 Storage medium 1230 (such as one or one storage device in Shanghai).
  • the memory 1232 and the storage medium 1230 may be temporary storage or persistent storage.
  • the program stored in the storage medium 1230 may include one or more modules (not shown in the figure), and each module may include a series of instruction operations on the server.
  • the central processing unit 1222 may be configured to communicate with the storage medium 1230, and execute a series of instruction operations in the storage medium 1230 on the server 1200.
  • the server 1200 may also include one or more power sources 1226, one or more wired or wireless network interfaces 1250, one or more input / output interfaces 1258, and / or, one or more operating systems 1241, such as Windows ServerTM, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM and more.
  • operating systems 1241 such as Windows ServerTM, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM and more.
  • the steps performed by the server in the above embodiment may be based on the server structure shown in FIG. 12.
  • the CPU 1222 is set to perform the following steps:
  • the data processing includes:
  • the feature extraction model is an end-to-end neural network model, which takes an image as an input and a depth feature of a movable body in the image as an output. ;
  • the CPU 1222 may also execute the method steps of any specific implementation manner of the target tracking method in the embodiments of the present application.
  • the target tracking device may be a terminal device.
  • the terminal can be any terminal device including a mobile phone, a tablet computer, a personal digital assistant (full English name: Personal Digital Assistant, English abbreviation: PDA), a sales terminal (full English name: Point of Sales, English abbreviation: POS), vehicle computer, etc. Take the terminal as a mobile phone as an example:
  • FIG. 13 is a block diagram showing a partial structure of a mobile phone related to a terminal provided by an embodiment of the present application.
  • the mobile phone includes: a radio frequency (English full name: Radio Frequency, English abbreviation: RF) circuit 1310, memory 1320, input unit 1330, display unit 1340, sensor 1350, audio circuit 1360, wireless fidelity (full English name: wireless fidelity , English abbreviation: WiFi) module 1370, processor 1380, and power supply 1390 and other components.
  • RF Radio Frequency
  • WiFi wireless fidelity
  • FIG. 13 does not constitute a limitation on the mobile phone, and may include more or fewer parts than those shown in the figure, or combine certain parts, or arrange different parts.
  • the RF circuit 1310 may be configured to receive and transmit signals during transmission and reception of information or during a call.
  • the downlink information of the base station is received and processed by the processor 1380; in addition, the uplink data of the design is transmitted to the base station.
  • the RF circuit 1310 includes, but is not limited to, an antenna, at least one amplifier, a transceiver, a coupler, a low noise amplifier (full name in English: Low Noise Amplifier, English abbreviation: LNA), a duplexer, and the like.
  • the RF circuit 1310 can also communicate with a network and other devices through wireless communication.
  • the above wireless communication can use any communication standard or protocol, including but not limited to the Global Mobile System (English: Global System of Mobile Communication, English abbreviation: GSM), General Packet Radio Service (English: Full Packet: Radio Service, GPRS) ), Code Division Multiple Access (English full name: Code Division Multiple Access, English abbreviation: CDMA), Broadband Code Division Multiple Access (English full name: Wideband Code Division Multiple Access, English abbreviation: WCDMA), Long Term Evolution (English Full Name: Long Term Evolution, English abbreviation: LTE), email, short message service (full English name: Short Messaging Service, SMS), etc.
  • GSM Global System of Mobile Communication
  • GPRS General Packet Radio Service
  • CDMA Code Division Multiple Access
  • CDMA Code Division Multiple Access
  • WCDMA Wideband Code Division Multiple Access
  • LTE Long Term Evolution
  • email short message service
  • SMS full English name: Short Messaging Service
  • the memory 1320 may be configured to store software programs and modules, and the processor 1380 executes various functional applications and data processing of the mobile phone by running the software programs and modules stored in the memory 1320.
  • the memory 1320 may mainly include a storage program area and a storage data area, where the storage program area may store an operating system, an application program (such as a sound playback function, an image playback function, etc.) required by at least one function; the storage data area may store data according to Data (such as audio data, phone book, etc.) created by the use of mobile phones.
  • the memory 1320 may include a high-speed random access memory, and may further include a non-volatile memory, such as at least one magnetic disk storage device, a flash memory device, or other volatile solid-state storage device.
  • the input unit 1330 may be configured to receive inputted numeric or character information, and generate key signal inputs related to user settings and function control of the mobile phone.
  • the input unit 1330 may include a touch panel 1331 and other input devices 1332.
  • the touch panel 1331 also known as a touch screen, can collect user's touch operations on or near it (for example, the user uses a finger, a stylus or any suitable object or accessory on the touch panel 1331 or near the touch panel 1331 Operation), and drive the corresponding connection device according to a preset program.
  • the touch panel 1331 may include two parts: a touch detection device and a touch controller.
  • the touch detection device detects the user's touch position, and detects the signal caused by the touch operation, and transmits the signal to the touch controller; the touch controller receives touch information from the touch detection device, converts it into contact coordinates, and sends it To the processor 1380, and can receive the command sent by the processor 1380 and execute it.
  • various types such as resistive, capacitive, infrared, and surface acoustic wave can be used to implement the touch panel 1331.
  • the input unit 1330 may also include other input devices 1332.
  • the other input devices 1332 may include, but are not limited to, one or more of a physical keyboard, function keys (such as volume control keys, switch keys, etc.), a trackball, a mouse, a joystick, and the like.
  • the display unit 1340 may be configured to display information input by the user or information provided to the user and various menus of the mobile phone.
  • the display unit 1340 may include a display panel 1341.
  • a liquid crystal display full name: Liquid Crystal Display, English abbreviation: LCD
  • an organic light emitting diode full English name: Organic Light-Emitting Diode, English abbreviation: OLED
  • the touch panel 1331 may cover the display panel 1341. When the touch panel 1331 detects a touch operation on or near the touch panel 1331, it is transmitted to the processor 1380 to determine the type of the touch event. The processor 1380 then The type provides corresponding visual output on the display panel 1341.
  • the touch panel 1331 and the display panel 1341 are implemented as two independent components to implement the input and input functions of the mobile phone, in some embodiments, the touch panel 1331 and the display panel 1341 can be integrated and Realize the input and output functions of the mobile phone.
  • the mobile phone may further include at least one sensor 1350, such as a light sensor, a motion sensor, and other sensors.
  • the light sensor may include an ambient light sensor and a proximity sensor, wherein the ambient light sensor may adjust the brightness of the display panel 1341 according to the brightness of the ambient light, and the proximity sensor may close the display panel 1341 and / Or backlight.
  • the accelerometer sensor can detect the magnitude of acceleration in various directions (usually three axes), and can detect the magnitude and direction of gravity when it is stationary.
  • the mobile phone can be used for applications that recognize the attitude of mobile phones (such as horizontal and vertical screen switching, related Games, magnetometer attitude calibration), vibration recognition related functions (such as pedometer, tap), etc .; as for the mobile phone can also be equipped with gyroscope, barometer, hygrometer, thermometer, infrared sensor and other sensors, no longer here To repeat.
  • attitude of mobile phones such as horizontal and vertical screen switching, related Games, magnetometer attitude calibration
  • vibration recognition related functions such as pedometer, tap
  • the mobile phone can also be equipped with gyroscope, barometer, hygrometer, thermometer, infrared sensor and other sensors, no longer here To repeat.
  • the audio circuit 1360, the speaker 1361, and the microphone 1362 can provide an audio interface between the user and the mobile phone.
  • the audio circuit 1360 can convert the received electrical data to an electrical signal and transmit it to the speaker 1361.
  • the speaker 1361 converts the audio signal to a sound signal for output.
  • the microphone 1362 converts the collected sound signal into an electrical signal and the audio circuit 1360 After receiving it, it is converted into audio data, which is then processed by the audio data output processor 1380 and then sent to, for example, another mobile phone via the RF circuit 1310, or the audio data is output to the memory 1320 for further processing.
  • WiFi is a short-range wireless transmission technology.
  • the mobile phone can help users send and receive email, browse webpages, and access streaming media through the WiFi module 1370. It provides users with wireless broadband Internet access.
  • FIG. 13 shows the WiFi module 1370, it can be understood that it does not belong to the necessary configuration of the mobile phone, and can be omitted as needed without changing the essence of the invention.
  • the processor 1380 is the control center of the mobile phone. It uses various interfaces and lines to connect various parts of the entire mobile phone. It runs or executes the software programs and / or modules stored in the memory 1320 and calls the data stored in the memory 1320 to execute Various functions and processing data of the mobile phone, so as to monitor the mobile phone as a whole.
  • the processor 1380 may include one or more processing units.
  • the processor 1380 may integrate an application processor and a modem processor.
  • the application processor mainly processes an operating system, a user interface, and an application program.
  • the modem processor mainly handles wireless communication. It can be understood that the foregoing modem processor may not be integrated into the processor 1380.
  • the mobile phone also includes a power supply 1390 (such as a battery) for supplying power to various components.
  • a power supply 1390 (such as a battery) for supplying power to various components.
  • the power supply can be logically connected to the processor 1380 through the power management system, so as to implement functions such as managing charging, discharging, and power consumption management through the power management system.
  • the mobile phone may further include a camera, a Bluetooth module, and the like, and details are not described herein again.
  • a graphics processing unit GPU
  • the feature extraction model and the target detection model can be run through the GPU.
  • the GPU and the processor 1380 communicate with each other to implement the target tracking method provided in the embodiment of the present application.
  • the feature extraction model and the target detection model can also be run on the processor 1380 to implement its functions.
  • the processor 1380 included in the terminal also has the following functions:
  • the data processing includes:
  • the feature extraction model is an end-to-end neural network model, which takes an image as an input and a depth feature of a movable body in the image as an output. ;
  • the processor 1380 may also execute the method steps of any specific implementation manner of the target tracking method in the embodiments of the present application.
  • the embodiment of the present application further provides a computer-readable storage medium configured to store program code, and the program code is configured to execute any one of the target tracking methods described in the foregoing embodiments.
  • the embodiment of the present application further provides a computer program product including instructions, which when executed on a computer, causes the computer to execute any one of the target tracking methods described in the foregoing embodiments.
  • the disclosed systems, devices, and methods may be implemented in other ways.
  • the device embodiments described above are only schematic.
  • the division of the unit is only a logical function division.
  • multiple units or components may be combined or Can be integrated into another system, or some features can be ignored or not implemented.
  • the displayed or discussed mutual coupling or direct coupling or communication connection may be indirect coupling or communication connection through some interfaces, devices or units, which may be electrical, mechanical or other forms.
  • the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, may be located in one place, or may be distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the objective of the solution of this embodiment.
  • each functional unit in each embodiment of the present application may be integrated into one processing unit, or each of the units may exist separately physically, or two or more units may be integrated into one unit.
  • the above integrated unit may be implemented in the form of hardware or in the form of software functional unit.
  • the integrated unit When the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it may be stored in a computer-readable storage medium.
  • the technical solutions of the embodiments of the present application essentially or partly contribute to related technologies or all or part of the technical solutions may be embodied in the form of a software product, which is stored in a storage medium Included are instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in the embodiments of the present application.
  • the foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (full English name: Read-Only Memory, English abbreviation: ROM), a random access memory (full English name: Random Access Memory, English abbreviation: RAM), magnetic Various media such as discs or optical discs that can store program codes.
  • the embodiment of the present application provides a target tracking method.
  • the target tracking method uses a target detection model to perform target detection in the entire range of the current video frame to determine all candidate regions existing in the current video frame, and then based on the determined individual The candidate area determines the tracking target.
  • the target tracking range of the current video frame is determined based on the target area of the previous video frame, and the target tracking is performed only within the target tracking range.
  • a target detection model is used.
  • Determining candidate regions within the entire range of the video frame, expanding the range of target tracking, can effectively prevent the tracking target from being lost due to the tracking target moving too fast; in addition, in the target tracking method provided in the embodiments of the present application
  • the feature extraction model is used to extract the determined depth features of each candidate region, and the target is determined based on the depth features of each candidate region and the depth features of the target tracked in the previous video frame, compared to only the morphological features in the related technology In order to perform target tracking based on Wherein the depth of the target track is determined, to ensure that the determined target track more accurately, effectively prevent drift in tracking occurred.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Biomedical Technology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Image Analysis (AREA)
  • Noodles (AREA)

Abstract

本申请实施例公开了一种目标跟踪方法、装置、设备及介质,该方法包括:服务器获取第一视频流,对第一视频流中的各视频帧执行如下数据处理操作:服务器先根据目标检测模型和当前视频帧,检测得到当前视频帧中的候选区域;服务器根据特征提取模型和候选区域,提取得到各候选区域对应的深度特征;服务器根据各候选区域对应的深度特征和在前视频帧中跟踪到的目标的深度特征,计算各候选区域对应的特征相似度;最终服务器基于各候选区域对应的特征相似度,确定当前视频帧中跟踪到的目标。利用目标检测模型在当前视频帧范围内进行目标检测,并且基于深度特征进行目标跟踪,能够有效地防止发生跟踪漂移或跟丢跟踪目标的情况发生,保证目标跟踪的准确性。

Description

目标跟踪方法、装置、介质以及设备
本申请要求于2018年09月14日提交中国专利局、申请号为201811076284.7、发明名称“目标跟踪方法、装置、介质以及设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请实施例涉及计算机视觉技术领域,尤其涉及一种目标跟踪方法、装置、计算机存储介质以及设备。
背景技术
目标跟踪是计算机视觉研究领域的热点之一,目标跟踪在视频监控、导航、军事、人机交互、虚拟现实、自动驾驶等多个领域都有着广泛的应用。简单来说,目标跟踪就是对视频中给定的目标进行分析跟踪,以确定视频中目标的确切位置。
相关的目标跟踪方法多为经典的基于相关滤波跟踪原理的跟踪方法,该跟踪方法是根据视频的前一帧中跟踪到的目标区域更新相关滤波器,进而根据更新后的相关滤波器对当前视频帧进行目标跟踪,在跟踪过程中,相关滤波器根据前一帧跟踪到的目标区域确定当前视频帧的跟踪范围,并在该跟踪范围内采用局部滑窗方式以形状特征为基准在当前视频帧中进行目标跟踪。
由于目标运动的不可控性,而且目标区域范围也发生较大变化,因此,采用这种局部滑窗方式针对运动的目标进行跟踪会发生跟踪漂移或者遮挡更丢问题。
发明内容
本申请实施例提供了一种目标跟踪方法、装置、介质以及设备,能够 有效地防止跟丢跟踪目标以及跟踪漂移等情况的发生,保证目标跟踪的准确度。
有鉴于此,本申请实施例第一方面提供了一种目标跟踪方法,所述方法包括:
服务器获取第一视频流,针对所述第一视频流中的视频帧执行如下数据处理,以实现在所述第一视频流中的目标跟踪,所述数据处理包括:
服务器根据目标检测模型和当前视频帧,检测得到所述当前视频帧中的候选区域;
服务器根据特征提取模型和所述候选区域,提取得到所述候选区域对应的深度特征,所述特征提取模型是端到端的神经网络模型,以图像作为输入,以图像中可运动体的深度特征作为输出;
服务器根据所述候选区域对应的深度特征和在前视频帧中跟踪到的目标的深度特征,计算所述候选区域对应的特征相似度;
服务器根据所述候选区域对应的特征相似度,确定所述当前视频帧中跟踪到的目标。
本申请实施例第二方面提供了一种目标跟踪方法,所述方法包括:
服务器对第一视频流中的目标进行跟踪,其中,所述第一视频流是第一摄像头拍摄到的;
在所述目标在所述第一视频流中消失后,所述服务器根据所述第一视频流中最后一次跟踪到的目标区域,从与所述第一摄像头相邻的摄像头中选择用于跨屏目标跟踪的第二摄像头;
所述服务器获取所述第二摄像头拍摄的第二视频流;
所述服务器在所述第二视频流中对所述目标进行跟踪。
本申请实施例第三方面提供了一种目标跟踪装置,所述装置包括一个或多个处理器,以及一个或多个存储程序单元的存储器,其中,程序单元由处理器执行,该程序单元包括:
获取模块,被设置为获取第一视频流;
处理模块,被设置为针对所述第一视频流中的视频帧执行如下数据处理,以实现在所述第一视频流中的目标跟踪;
所述处理模块包括:
检测子模块,被设置为根据目标检测模型和当前视频帧,检测得到所述当前视频帧中的候选区域;
特征提取子模块,被设置为根据特征提取模型和所述候选区域,提取得到所述候选区域对应的深度特征,所述特征提取模型是端到端的神经网络模型,以图像作为输入,以图像中可运动体的深度特征作为输出;
计算子模块,被设置为根据所述候选区域对应的深度特征和在前视频帧中跟踪到的目标的深度特征,计算所述候选区域对应的特征相似度;
确定子模块,被设置为根据所述候选区域对应的特征相似度,确定所述当前视频帧中跟踪到的目标。
本申请实施例第四方面提供了一种设备,所述设备包括处理器以及存储器:
所述存储器被设置为存储程序代码,并将所述程序代码传输给所述处理器;
所述处理器被设置为根据所述程序代码中的指令,执行如上述第一方面所述的目标跟踪方法的步骤。
本申请实施例第五方面提供了一种计算机可读存储介质,所述计算机可读存储介质被设置为存储程序代码,所述程序代码被设置为执行上述第一方面所述的目标跟踪方法。
本申请实施例第六方面提供了一种包括指令的计算机程序产品,当其在计算机上运行时,使得所述计算机执行上述第一方面所述的目标跟踪方法。
从以上技术方案可以看出,本申请实施例具有以下优点:
本申请实施例提供了一种目标跟踪方法,该目标跟踪方法利用目标检测模型在当前视频帧的整体范围内进行目标检测,以确定当前视频帧中存在的所有候选区域,进而基于所确定的各个候选区域确定跟踪目标,相比于相关技术中根据前一视频帧的目标区域确定当前视频帧的目标跟踪范围,并且仅在该目标跟踪范围内进行目标跟踪,本申请实施例中利用目标检测模型在视频帧的整体范围内确定候选区域,扩大了目标跟踪的范围,能够有效地防止发生因跟踪目标移动过快而跟丢跟踪目标的情况;另外,在本申请实施例提供的目标跟踪方法中,利用特征提取模型提取所确定的各个候选区域的深度特征,并基于各个候选区域的深度特征和在前视频帧中跟踪到的目标的深度特征确定目标,相比于相关技术中仅以形态特征为依据进行目标跟踪,本申请实施例中基于深度特征确定跟踪目标,能够保证所确定的跟踪目标更加准确,有效地防止发生跟踪漂移的情况。
附图说明
图1为本申请实施例中一种目标跟踪方法的应用场景示意图;
图2为本申请实施例中一种目标跟踪方法的流程示意图;
图3为本申请实施例中一种目标检测模型的工作效果示意图;
图4为本申请实施例中一种跨屏目标跟踪方法的流程示意图;
图5为本申请实施例中一种特征提取模型训练方法的流程示意图;
图6为本申请实施例中另一种目标跟踪方法的应用场景示意图;
图7为本申请实施例中一种目标跟踪装置的结构示意图;
图8为本申请实施例中另一种目标跟踪装置的结构示意图;
图9为本申请实施例中另一种目标跟踪装置的结构示意图;
图10为本申请实施例中另一种目标跟踪装置的结构示意图;
图11为本申请实施例中另一种目标跟踪装置的结构示意图;
图12为本申请实施例中一种目标跟踪设备的结构示意图;
图13为本申请实施例中另一种目标跟踪设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请实施例方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请实施例保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
相关的基于相关滤波器跟踪原理的跟踪方法,在跟踪目标的过程中,存在容易发生跟踪漂移以及跟丢跟踪目标的技术问题,针对相关技术中存在的技术问题,本申请实施例提供了一种目标跟踪方法。
下面先对本申请实施例提供的目标跟踪方法的核心技术思路进行介绍:
本申请实施例提供的目标跟踪方法中,基于目标检测模型和特征提取模型,在所获取的视频流包括的视频帧中进行目标跟踪。具体针对视频流 中的某一视频帧进行目标跟踪时,先利用目标检测模型在该视频帧的整体范围内进行检测,以获得该视频帧中存在的所有候选区域;然后利用特征提取模型对检测到的各个候选区域进行特征提取,以得到各个候选区域对应的深度特征;接下来,基于各个候选区域对应的深度特征以及在前视频帧中跟踪到的目标的深度特征,计算各个候选区域与跟踪目标之间的特征相似度;进而根据各个候选区域对应的特征相似度,确定该视频帧中的跟踪目标。
在本申请实施例提供的目标跟踪方法中,利用目标检测模型在当前视频帧的整体范围内进行目标检测,以确定当前视频帧中存在的所有候选区域,进而基于所确定的各个候选区域确定跟踪目标,相比于相关技术中根据前一视频帧的目标区域确定当前视频帧的目标跟踪范围,并且仅在该目标跟踪范围内进行目标跟踪,本申请实施例中利用目标检测模型在视频帧的整体范围内确定候选区域,扩大了目标跟踪的范围,能够有效地防止发生因跟踪目标移动过快而跟丢跟踪目标的情况;另外,在本申请实施例提供的目标跟踪方法中,利用特征提取模型提取所确定的各个候选区域的深度特征,并基于各个候选区域的深度特征和在前视频帧中跟踪到的目标的深度特征确定跟踪目标,相比于相关技术中仅以形态特征为依据进行目标跟踪,本申请实施例中基于深度特征确定跟踪目标,能够保证所确定的跟踪目标更加准确,有效地防止发生跟踪漂移的情况。
应理解,本申请实施例提供的目标跟踪方法可以应用于具有图像处理功能的设备,如终端设备、服务器等。其中,终端设备具体可以为计算机、智能手机、个人数字助理(Personal Digital Assitant,PDA)、平板电脑等;服务器具体可以为应用服务器、也可以为Web服务器,在实际应用部署时,该服务器可以为独立服务器,也可以为集群服务器,该服务器可以同时为多个终端设备提供的目标跟踪服务。
为了便于理解本申请实施例提供的技术方案,下面以服务器作为执行主体,结合实际应用场景对本申请实施例提供的目标跟踪方法进行介绍。
参见图1,图1为本申请实施例提供的目标跟踪方法的应用场景示意图。该应用场景中包括监控摄像机101和服务器102,其中,监控摄像机101用于将自身录制的视频流发送至服务器102,服务器102用于执行本申请实施例提供的目标跟踪方法,以在监控摄像机101发送的视频流包括的各视频帧中进行目标跟踪。
当用户需要在监控摄像机101录制的视频流中进行目标跟踪时,服务器102调取监控摄像机101拍摄的视频流,并针对该视频流中的各视频帧执行以下数据处理:服务器102先利用目标检测模型在当前视频帧的整体范围内进行检测,以获得该视频帧中存在的所有候选区域;服务器102然后利用特征提取模型提取当前视频帧中所有候选区域各自对应的深度特征,根据各候选区域各自对应的深度特征和在前视频帧中跟踪到的目标的深度特征,计算各候选区域对应的特征相似度;服务器102进而根据各候选区域对应的特征相似度,确定当前视频帧中跟踪到的目标。
需要说明的是,服务器102先利用目标检测模型在当前视频帧的整体范围内进行目标检测,确定该当前视频帧中存在的所有候选区域,进而基于所确定的所有候选区域进行目标跟踪,由此扩大了各个视频帧中的目标跟踪范围,能够有效地防止发生因跟踪目标移动过快而跟丢跟踪目标的情况;另外,服务器102还利用了特征提取模型提取各候选区域的深度特征,并基于各候选区域的深度特征以及在前视频帧跟踪到的目标的深度特征,确定当前视频帧中的跟踪目标,由于深度特征能够从更深层次反映跟踪目标所具有的特征,该深度特征不会因跟踪目标的形态等特征的改变而改变,因此,基于该深度特征进行目标跟踪,能够保证所确定的跟踪目标更加准确,有效地防止发生跟踪漂移的情况。
需要说明的是,上述图1所示场景仅为一种示例,在实际应用中,本申请实施例提供的目标跟踪方法还可以应用于终端设备,在此不对该目标跟踪方法的应用场景做任何具体限定。
下面通过实施例对本申请提供的目标跟踪方法进行介绍。
参见图2,图2为本申请实施例提供的一种目标跟踪方法的流程示意图。为了便于描述,本实施例以服务器作为执行主体进行描述,应理解,该目标跟踪方法的执行主体并不仅限于服务器,还可以应用于终端设备等具备图像处理功能的设备。
当服务器需要针对第一视频流进行目标跟踪时,获取该第一视频流,并针对该第一视频流中的视频帧执行如图2所示的数据处理流程,以实现跟踪该第一视频流中的目标。
在一种可能的实现方式中,服务器可以从视频流数据库中调取历史视频流作为第一视频流。具体实现时,服务器可以根据第一视频流对应的摄像头标签以及第一视频流的拍摄起止时间,从视频流数据库存储的历史视频流中调取该第一视频流,该视频数据库用于存储多个摄像头拍摄的视频流数据;进而,针对所获取的第一视频流中的视频帧执行图2所示的数据处理流程,以实现在该第一视频流中进行目标跟踪。
在另一种可能的实现方式中,服务器可以实时获取某个摄像头拍摄的视频流作为第一视频流。具体实现时,服务器可以向某个摄像头发起视频流获取请求,请求获取该摄像头实时拍摄的视频流作为第一视频流,相应地,该摄像头响应于服务器发起的获取请求,将自身实时拍摄的第一视频流发送至服务器,以使服务器针对该第一视频流中的视频帧执行图2所示的数据处理流程,实现在该第一视频流中进行目标跟踪。
应理解,服务器还可以采用其他方式获取第一视频流,在此不对第一视频流的具体获取方式做任何限定。
服务器获取到第一视频流后,针对该第一视频流中的各个视频帧执行图2所示的数据处理流程,如图2所示,该数据处理流程具体包括以下步骤:
步骤201:服务器根据目标检测模型和当前视频帧,检测得到所述当 前视频帧中的候选区域。
服务器针对第一视频流中的某一视频帧进行目标跟踪时,将该视频帧作为当前视频帧,并将该当前视频帧输入至目标检测模型中,目标检测模型在该当前视频帧的整体范围内进行对象检测,以获得该当前视频帧中存在的所有候选区域,候选区域为当前视频帧中各个检测对象所处的区域,各个候选区域包括的检测对象中可能存在需要跟踪的目标。
上述目标检测模型为端到端的神经网络,该目标检测模型以视频帧作为输入,以该视频帧中检测对象的边界框以及检测对象所属的类别作为输出。也就是说,将当前视频帧输入至该目标检测模型,目标检测模型通过对该当前视频帧做相应地处理,能够输出当前视频帧中各个检测对象的边界框以及各个检测对象所属的类别,各个检测对象的边界框所包围的区域即为候选区域。
应理解,目标检测模型能够检测出当前视频帧中所有的候选区域,每个候选区域中包括一个检测对象,该检测对象具体可以为人也可以为物体,即该目标检测模型能够检测各种类型的检测对象。
为了便于理解上述目标检测模型的工作效果,下面结合图3对该目标检测模型的输出结果进行示例性的说明。
如图3所示,将视频帧301输入至目标检测模型302中,目标检测模型302通过对视频帧301进行相应地处理,能够在视频帧301中标注出其中包括的各个检测对象的边界框,如图301所示,经目标检测模型302的处理后,在视频帧301中标注出边界框303、边界框304和边界框305,并且在边界框303的旁边标注出边界框303中的物体类别为路灯,在边界框304的旁边标注出边界框304中的物体类别为汽车,在边界框305的旁边标注出边界框305中的物体类别为交通信号灯。
应理解,上述图3所示的目标检测模型的输出结果仅为示例,在实际应用中,目标检测模型能够检测出该视频帧中所有的候选区域,为了便于 描述,图3中并未标注出目标检测模型所检测到的所有的候选区域。
在一种可能的实现方式中,上述目标检测模型中可以包括基础网络和辅助网络,该基础网络采用轻量级的卷积神经网络mobilenet,该辅助网络采用卷积核构成的检测层;该辅助网络的输入为基础网络的不同卷积层输出的特征图。
具体的,该目标检测模型是基于深度学习神经网络结构SSD构建而成的,深度学习神经网络SSD的核心在于采用卷积核预测一系列检测对象所属的类别以及检测对象所处的区域;此外,在该目标检测模型中,将深度学习神经网络结构SSD中的基础网络替换为轻量级的卷积神经网络mobilenet,由于该卷积神经网络mobilenet具有较快的处理速度,相应地,利用该目标检测模型进行目标检测时,也能够较快地检测出当前视频帧存在的候选区域。
应理解,本申请实施例提供的目标检测模型还可以基于其他神经网络结构构建而成,在此不对本申请实施例提供的目标检测模型的具体结构做任何限定。
步骤202:服务器根据特征提取模型和所述候选区域,提取得到所述候选区域对应的深度特征,所述特征提取模型是端到端的神经网络模型,以图像作为输入,以图像中可运动体的深度特征作为输出。
服务器利用目标检测模型检测出当前视频帧中存在的所有候选区域后,将该当前视频帧中的所有候选区域输入至自身运行的特征提取模型,该特征提取模型相应地提取各个候选区域对应的深度特征,该深度特征能够从深层次反映各个候选区域中的检测对象具备的特征,该深度特征对物体形变具有鲁棒性,其不会单纯地跟随检测对象形态等特征的改变而发生改变,也就是说,即使检测对象的形态发生改变,该深度特征仍然能够表征该检测对象。
上述特征提取模型是端到端的神经网络模型,以图像作为输入,以图 像中可运动体的深度特征作为输出。即采用该特征提取模型对当前视频帧中的各个候选区域进行特征提取时,将标注出各个候选区域的当前视频帧输入该特征提取模型,该特征提取模型相应地提取各个候选区域所具备的深度特征,进而,输出当前视频帧中各个可运动体的深度特征。
应理解,进行目标跟踪时,跟踪的目标通常为可运动体如人、动物、车辆等,不可运动体在通常情况下不会被作为跟踪的目标;相应地,特征提取模型无需输出不可运动体的深度特征,由此服务器后续也无需根据不可运动体的深度特征进行一系列的计算,一定程度上减少了服务器需要执行的工作量。
步骤203:服务器根据所述候选区域对应的深度特征和在前视频帧中跟踪到的目标的深度特征,计算所述候选区域对应的特征相似度。
服务器中的特征提取模型获取到各候选区域对应的深度特征后,根据各候选区域对应的深度特征以及在前视频帧中跟踪到的目标的深度特征,计算各候选区域对应的特征相似度,各候选区域对应的特征相似度即为各候选区域的深度特征与在前视频帧中跟踪到的目标的深度特征之间的相似度。
需要说明的是,上述在前视频帧指的是在当前视频帧之前,距离当前视频帧最近且已跟踪到目标的视频帧;例如,若在与当前视频帧相邻的前一帧视频帧中跟踪到目标,则直接将当前视频帧相邻的前一帧视频帧作为上述在前视频帧;若在与当前视频帧相邻的前一帧视频帧中没有跟踪到目标,则按照从后至前的时间顺序,继续判断该前一帧视频帧之前的视频帧中是否存在跟踪的目标,直到查找到存在跟踪的目标的视频帧,将查找到的视频帧作为上述在前视频帧;进而根据该视频帧中跟踪到的目标的深度特征以及当前视频帧中各候选区域对应的深度特征,计算各候选区域对应的深度特征与跟踪的目标的深度特征之间的特征相似度。
需要说明的是,若当前视频帧为第一视频流中的第一帧视频帧,用户可以点击第一视频帧中某一目标,相应地,服务器可以响应于用户的点击 操作,将该目标确定为在第一视频流中需要跟踪的目标,并利用特征提取模型提取该目标的深度特征,进而基于该目标的深度特征在后续视频帧中进行目标跟踪;此外,用户还可以将包含有需要跟踪的目标的图像上传至服务器,以使服务器利用特征提取模型根据上传的图像,提取其中所包括的需要跟踪的目标的深度特征,进而基于提取到的需要跟踪的目标的深度特征在第一视频流中进行目标跟踪。
应理解,服务器还可以采用其他方式确定需要跟踪的目标,并基于该目标的深度特征在第一视频流中进行目标跟踪,在此不对确定跟踪目标的具体方式做任何限定。
具体计算各候选区域对应的特征相似度时,服务器可以采用欧几里得距离(Eucledian Distance)算法、曼哈顿距离(Manhattan Distance)算法、明可夫斯基距离(Minkowski Distance)算法以及余弦相似度(Cosine Similarity)算法等算法,计算当前视频帧中各候选区域对应的深度特征向量与在前视频帧中跟踪到的目标的深度特征向量之间的相似度。
应理解,服务器还可以采用其他相似度计算方法,根据各候选区域对应的深度特征以及在前视频帧中跟踪到的目标的深度特征,计算各候选区域对应的特征相似度,在此不对用于计算特征相似度的算法做具体限定。
步骤204:服务器根据所述候选区域对应的特征相似度,确定所述当前视频帧中跟踪到的目标。
服务器计算获得当前视频帧中各个候选区域对应的特征相似度后,基于各个候选区域对应的特征相似度,确定当前视频帧中的需要跟踪的目标。由于候选区域对应的特征相似度能够表征该候选区域的深度特征与在前视频帧中跟踪到的目标的深度特征之间的相似度,因此,该特征相似度越大,则说明该候选区域的检测对象与在前视频帧中跟踪到的目标越相似,即该候选区域中所包括的检测对象为当前视频帧中需要跟踪的对象的可能性越大。
确定当前视频帧中的跟踪目标时,服务器可以根据候选区域各自对应的特征相似度,选择特征相似度最大的候选区域,作为当前视频帧的目标区域;进而根据该目标区域确定当前视频帧中跟踪到的目标。
具体的,服务器可以先根据当前视频帧中各个候选区域对应的特征相似度,对当前视频帧中各个候选区域对应的特征相似度按照大小顺序进行排序;由于候选区域对应的特征相似度越大,说明该候选区域中所包括的检测对象为需要跟踪的目标的可能性越大,因此,可以根据该特性相似度的排列顺序,从中选取特征相似度最大的候选区域,作为当前视频帧的目标区域;进而将目标区域中所包括的检测对象作为当前视频帧中需要跟踪的目标。
可选的,服务器还可以预先设定特征相似度的阈值,候选区域的特征相似度超过该阈值则说明该候选区域可能为目标区域,即该候选区域中所包括的检测对象可能为当前视频帧中需要跟踪的目标。应理解,该阈值可以根据实际情况进行设定,在此不对该阈值做具体限定。
在一些情况下,当前视频帧中可能存在多个特征相似度均超过上述阈值的候选区域,此时这些候选区域均有可能为目标区域。针对这种情况,本申请实施例提供了下述三种可能的实现方式,以从这多个超过阈值的候选区域中确定目标区域,并基于该目标区域进一步确定跟踪目标。
在第一种可能的实现方式中,服务器可以从多个特征相似度超过阈值的多个候选区域中,选择与在前视频帧中跟踪到的目标的运动方向最匹配的候选区域,作为当前视频帧的目标区域;根据该当前视频帧的目标区域确定当前视频中跟踪到的目标。
具体实现时,服务器可以先根据当前视频帧中各个候选区域对应的特征相似度,判断各个候选区域对应的特征相似度是否超过阈值,若存在多个特征相似度超过阈值的候选区域,服务器则根据在前视频帧中跟踪到的目标的运动方向,从这多个候选区域中确定目标区域。具体的,服务器可以将在当前视频帧之前的视频帧中跟踪到的目标所处的图像位置,输入至 位置坐标映射模型,利用位置坐标映射模型确定在当前视频帧之前的视频帧中跟踪到的目标的物理位置,然后根据在当前视频帧之前的视频帧中跟踪到的目标的物理位置,确定在前视频帧中跟踪到的目标的运动方向;进而,按照上述方法,利用位置坐标映射模型确定当前视频帧中多个超过阈值的候选区域的物理位置以及在前视频帧中跟踪到的目标的物理位置,根据多个超过阈值的候选区域的物理位置以及在前视频帧中跟踪到的目标的物理位置,确定当前视频帧中多个超过阈值的候选区域各自对应的运动方向,进而计算多个超过阈值的候选区域各自对应的运动方向与在前视频帧中跟踪到的目标的运动方向之间的匹配程度,最终确定与在前视频帧中跟踪到的目标的运动方向最匹配的候选区域作为目标区域,基于该目标区域确定当前视频帧中的跟踪目标。
应理解,确定在前视频帧中跟踪到的目标的运动方向时,需要选择与在前视频帧相距较近的多个连续的跟踪到目标的视频帧,根据这些视频帧中跟踪到的目标所处的位置确定目标的运动方向。
为了便于理解上述根据跟踪的目标的运动方向,在多个超过阈值的候选区域中确定目标区域的具体实现方式,下面对上述确定目标区域的具体实现过程进行举例说明:
假设当前视频帧为第一视频流中的第20帧视频帧,在该第20帧视频帧之前,距离该第20帧视频帧最近且包含跟踪到的目标的视频帧为第19帧视频帧,即在前视频帧为第19帧视频帧;服务器根据第17帧视频帧至第19帧视频帧中跟踪到的目标的物理位置,确定第19帧视频帧中跟踪到的目标的运动方向,作为第一方向;进而,服务器根据第20帧视频帧中各超过阈值的候选区域的物理位置以及第19帧视频帧中跟踪到的目标的物理位置,确定第20帧视频帧中各超过阈值的候选区域各自对应的运动方向,作为第二方向,即第20帧视频帧中每个超过阈值的候选区域分别对应一个第二方向,计算各个第二方向与第一方向的匹配程度,最终确定匹配程度最高的第二方向对应的候选区域为目标区域,基于该目标区域确 定第20帧视频帧中跟踪到的目标。
在第二种可能的实现方式中,服务器可以从多个特征相似度超过阈值的多个候选区域中,选择与在前视频帧中跟踪到的目标区域的物理位置距离最小的候选区域,作为当前视频帧的目标区域;进而根据该当前视频帧的目标区域确定当前视频帧中跟踪到的目标。
具体实现时,服务器可以根据多个特征相似度超过阈值的候选区域在当前视频帧中的图像位置,确定出这些候选区域的物理位置;同理,服务器可以根据在前视频帧中跟踪到的目标在该视频帧中的图像位置,确定出在前视频帧中跟踪到的目标的物理位置;然后,计算各个候选区域的物理位置与在前视频帧中跟踪到的目标的物理位置之间的距离,确定距离最小的候选区域作为当前视频帧中的目标区域,进而,将当前视频帧的目标区域中所包括的检测对象作为当前视频帧中跟踪到的目标。
例如,假设当前视频帧为第一视频流中的第20帧,与当前视频帧距离最近且包括跟踪到的目标的视频帧为第19帧视频帧,服务器根据第20帧视频帧中存在的两个特征相似度超过阈值的候选区域在第20帧视频帧中的图像位置,确定这两个候选区域对应的物理位置,服务器根据第19帧视频帧中跟踪到的目标的图像位置,确定第19帧视频帧中跟踪到的目标的物理位置;服务器计算两个候选区域对应的物理位置与第19帧中跟踪到的目标的物理位置之间的距离,确定距离最近的候选区域作为目标区域,将该目标区域中包括的检测对象作为第20帧视频帧中跟踪到的目标。
在第三种可能的实现方式中,服务器可以结合物理位置距离和跟踪到的运动方向两个参考因素,在多个特征相似度超过阈值的候选区域中选择目标区域。即,服务器从多个特征相似度超过阈值的候选区域中,选择与在前视频帧中跟踪到的目标的物理位置和运动方向最匹配的候选区域,作为当前视频帧的目标区域;即选择与在前视频帧中跟踪到的目标的距离最近且运动方向最相近的候选区域;进而,根据当前视频帧的目标区域确定当前视频帧中跟踪到的目标。
具体实现时,服务器可以先利用位置坐标映射模型,将当前视频帧中各个超过阈值的候选区域的图像位置转换为物理位置,将在前视频帧中跟踪到的目标的图像位置转换为物理位置;然后,基于各个超过阈值的候选区域的物理位置以及在前视频帧中跟踪到的目标的物理位置,确定各个超过阈值的候选区域对应的位移,该位移指的是根据候选区域的物理位置以及在前视频帧中跟踪到的目标的物理位置确定出的有向线段,该有向线段既能够表征候选区域与在前视频帧中跟踪到的目标之间的物理位置距离,又能够表征候选区域对应的运动方向。同理,服务器可以根据与在前视频帧相邻且处于在前视频帧之前的视频帧中跟踪到的目标所处位置,以及在前视频帧中跟踪到的目标所处的位置,确定在前视频帧中跟踪到的目标对应的位移。进而,计算当前视频帧中各候选区域对应的位移与在前视频帧中跟踪到的目标对应的位移之间的相似度,选取相似度最高的候选区域作为目标区域,基于该目标区域确定当前视频帧中跟踪到的目标。可选的,服务器还可以先根据上述第一种可能的实现方式中提供的确定跟踪到的目标的运动方向的方法,确定在前视频帧中跟踪到的目标的运动方向,进而,根据当前视频帧中多个特征相似度超过阈值的候选区域所处的位置,确定与跟踪到的目标的运动方向匹配的候选区域;若仅存在一个与跟踪到的目标的运动方匹配的候选区域,则可以直接将该候选区域确定为目标区域;若存在多个与跟踪到的目标的运动方向匹配的候选区域,则继续按照第二种可能的实现方式中提供的确定物理位置距离的方法,确定这多个与跟踪到的目标的运动方向匹配的候选区域与在前视频帧中跟踪到的目标之间的物理位置距离,进而,选取物理位置距离最小的候选区域作为目标区域,基于该目标区域确定当前视频帧中的跟踪目标。
可选的,服务器也可以先根据上述第二种可能的实现方式中提供的确定物理位置距离的方法,确定当前视频帧中多个特征相似度超过阈值的候选区域与在前视频帧中跟踪到的目标之间的物理位置距离,进而判断各候选区域与在前视频帧中跟踪到的目标之间的物理位置距离是否小于距离阈值,若仅存在一个小于距离阈值的候选区域,则可以直接将该候选区域 作为目标区域;若存在多个小于距离阈值的候选区域,则服务器继续按照第一种可能的实现方式中提供的确定跟踪到的目标的运动方向的方法,确定在前视频帧中跟踪到的目标的运动方向,进而,从多个小于距离阈值的候选区域中选取与该目标运动方向最匹配的候选区域作为目标区域,进而,基于该目标区域确定当前视频帧中的跟踪目标。
需要说明的是,在上述三种可能的实现方式中,服务器在根据候选区域的图像位置确定其对应的物理位置时,以及在根据在前视频帧中跟踪到的目标的图像位置确定其对应的物理位置时,可以基于位置坐标映射模型实现图像位置与物理位置之间的转换。
服务器将候选区域的图像位置输入至位置坐标映射模型,获取该位置坐标映射模型输出的候选区域的物理位置;以及将在前视频帧中跟踪到的目标区域的图像位置输入至该位置坐标映射模型,获取该位置坐标映射模型输出的在前视频帧中跟踪到的目标区域的物理位置。
具体实现时,服务器将候选区域的图像位置输入至该位置坐标映射模型后,该位置坐标映射模型对该候选区域的图像位置进行相应的处理,进而获得并输出该候选区域对应的物理位置;同理,服务器将在前视频帧中跟踪到的目标的图像位置输入至该位置坐标映射模型后,该位置坐标映射模型也会对该目标的图像位置进行相应地处理,进而获得并输入该目标对应的物理位置。
应理解,上述图像位置具体指的是候选区域或跟踪目标在视频帧中的像素位置坐标,上述物理位置具体指的是候选区域或跟踪目标在平面地图上对应的位置坐标。
需要说明的是,确定候选区域的图像位置时,可以将候选区域与地面的交点的像素位置坐标作为该候选区域的图像位置,也可以将候选区域的中心点在视频帧中的像素位置坐标作为该候选区域的图像位置,在此不对候选区域的图像位置做具体限定;同理,确定跟踪目标的图像位置时,可以将跟踪目标与其所在的视频帧中地面的交点的像素位置坐标作为跟踪 目标的图像坐标,也可以将该跟踪目标的中心点在该视频帧中的像素位置坐标作为跟踪目标的图像位置,在此也不对跟踪目标的图像位置做具体限定。
需要说明的是,上述位置坐标映射模型是基于坐标映射矩阵构建的,具体构建该位置坐标映射模型时,服务器根据标定图像上的至少四个位置点的位置坐标以及所述至少四个位置点在物理世界上的物理位置坐标,通过透视变换公式计算得到坐标映射矩阵,进而根据该坐标映射矩阵生成位置坐标映射模型。相应地,使用该位置坐标映射模型时,该位置坐标映射模型可以通过利用输入的图像位置坐标乘上该坐标映射矩阵,获得该图像位置坐标对应的物理位置坐标,即实现将视频帧中的图像位置转换为物理世界中的物理位置。
需要说明的是,由于不同的摄像头对应的坐标映射矩阵可能不同,因此,每个摄像头均会保存自身对应的坐标映射矩阵作为自身的属性,服务器构建位置坐标映射模型时,可以基于各个摄像头对应的坐标映射矩阵进行构建与摄像头对应的位置坐标映射模型。相应地,利用位置坐标映射模型定位某一视频帧的某个图像位置时,位置坐标映射模型可以调取该视频帧对应的摄像头的坐标映射矩阵,采用该坐标映射矩阵将图像位置转换为物理位置。应理解,利用该坐标映射矩阵的逆矩阵也可以构建位置坐标映射模型,利用该位置坐标映射模型,可以将物理世界中的物理位置映射为视频帧中的图像位置坐标,即利用该坐标映射矩阵以及坐标映射矩阵的逆矩阵,能够实现图像位置与物理位置之间的双向转换。
由于该位置坐标映射模型能够将视频帧中的图像位置转换为物理位置,因此,利用该位置坐标映射模型也可以根据第一视频流跟踪得到的目标的物理位置,在物理地图上绘制目标的运动轨迹,由此实现在物理地图上实时定位并显示跟踪到的目标所处的位置。
具体的,服务器可以先按时间顺序获取第一视频流中的各个包含有目标的视频帧,然后将这些视频帧中所包含的目标的图像位置依次输入至位 置坐标映射模型,相应地,位置坐标映射模型根据输入的目标的图像位置对应地输出各个视频帧中目标的图像位置对应的物理位置;进而按照视频帧的时间顺序,将各个视频帧中目标对应的物理位置标注在物理地图上,由此根据所标注的物理位置即可在物理地图上绘制目标的运动轨迹。
在本申请实施例提供的目标跟踪方法中,利用目标检测模型在当前视频帧的整体范围内进行目标检测,以确定当前视频帧中存在的所有候选区域,进而基于所确定的各个候选区域确定跟踪目标,相比于相关技术中根据前一视频帧的目标区域确定当前视频帧的目标跟踪范围,并且仅在该目标跟踪范围内进行目标跟踪,本申请实施例中利用目标检测模型在视频帧的整体范围内确定候选区域,扩大了目标跟踪的范围,能够有效地防止发生因跟踪目标移动过快而跟丢跟踪目标的情况;另外,在本申请实施例提供的目标跟踪方法中,利用特征提取模型提取所确定的各个候选区域的深度特征,并基于各个候选区域的深度特征和在前视频帧中跟踪到的目标的深度特征确定跟踪目标,相比于相关技术中仅以形态特征为依据进行目标跟踪,本申请实施例中基于深度特征确定跟踪目标,能够保证所确定的跟踪目标更加准确,有效地防止发生跟踪漂移的情况。
应理解,若第一视频流是第一摄像头拍摄到的,随着跟踪的目标的移动,该目标可能移动出第一摄像头所能拍摄的范围,即在该目标在第一摄像头拍摄的范围内消失,在第一摄像头拍摄的第一视频流中无法继续跟踪该目标。在这种情况下,本申请实施例提供的目标跟踪方法,还可以从与该第一摄像头相邻的摄像头中选择能够拍摄到该目标的第二摄像头,针对该第二摄像头拍摄的视频流继续进行目标跟踪,即实现跨屏目标跟踪。
下面结合图4,对本申请实施例提供的跨屏目标跟踪方法进行介绍。参见图4,图4为本申请实施例提供的跨屏目标跟踪方法的流程示意图。为了便于描述,本实施例仍以服务器作为执行主体进行描述,应理解,该跨屏目标跟踪方法的执行主体并不仅限于服务器,还可以应用于终端设备 等具备图像处理功能的设备。如图4所示,该跨屏目标跟踪方法包括以下步骤:
步骤401:服务器根据所述第一视频流中最后一次跟踪到的目标区域,从与所述第一摄像头相邻的摄像头中选择用于跨屏目标跟踪的第二摄像头。
若服务器在预设时间段内在第一视频流中检测不到需要跟踪的目标,或者,服务器检测发现需要跟踪的目标在第一摄像头所能够拍摄的图像边缘消失,则说明需要跟踪的目标可能移动至第一摄像头无法拍摄到的范围;此时,服务器需要根据第一视频流中最后一次跟踪到的目标所处的区域,从与第一摄像头相邻的摄像头中选择能够拍摄到需要跟踪的目标的第二摄像头,以在该第二摄像头拍摄的第二视频流继续进行目标跟踪,即实现跨屏跟踪。
根据第一视频流中最后一次跟踪到的目标区域,从与该第一摄像头相邻的摄像头中选择第二摄像头时,服务器可以先针对与该第一摄像头相邻的摄像头,根据该摄像头拍摄的视频流和目标检测模型,检测得到摄像头对应的候选区域。
具体实现时,服务器可以先根据第一摄像头所处的位置,确定位置与该第一摄像头所处位置相邻的摄像头;然后根据第一视频流中最后一次跟踪到目标的时刻,从与第一摄像头相邻的摄像头拍摄的视频流中选取视频帧,所选取的视频帧的拍摄时刻在第一视频流中最后一次跟踪到目标的时刻之后,且在最后一次跟踪到目标的相邻时段内,该相邻时段可以根据实际需求进行设定。
应理解,在一些情况下,与第一摄像头相邻的摄像头能够拍摄的范围与第一摄像头能够拍摄的范围之间可能存在一定的距离,需要跟踪的目标可能无法立刻从第一摄像头能够拍摄的范围移动至第二摄像头拍摄的范围,因此,在从与第一摄像头相邻的摄像头拍摄的视频流中选取视频帧时,可以从与第一摄像头相邻的各个摄像头拍摄的视频流中,选取出多个拍摄 时刻属于相邻时段的视频帧。
为了便于描述,下面将第一视频流中最后一次跟踪到目标的视频帧称为第一视频帧,将从第一摄像头相邻的各个摄像头拍摄的视频流中选取的视频帧统称为第二视频帧。
服务器从与第一摄像头相邻的摄像头拍摄的视频流中选取出第二视频帧后,将各个第二视频帧输入至目标检测模型,目标检测模型通过对各个第二视频帧进行相应地处理,检测得到各个第二视频帧中存在的候选区域,即检测得到与第一摄像头相邻的各个摄像头对应的候选区域。
检测得到与第一摄像头相邻的各个摄像头对应的候选区域后,服务器根据各个摄像头对应的候选区域与第一视频流中最后一次跟踪到的目标区域中的深度特征的相似度,选择相似度超过阈值的多个候选区域对应的摄像头作为候选摄像头。
具体实现时,服务器利用特征提取模型提取各个第二视频帧中各个候选区域的深度特征,并计算各第二视频帧中各个候选区域的深度特征与第一视频帧中目标区域的深度特征之间的特征相似度,判断各个候选区域对应的特征相似度是否超过阈值,将特征相似度超过阈值的各个候选区域对应的摄像头作为候选摄像头。基于各个候选区域的深度特征和第一视频帧中目标区域的深度特征,确定用于跨屏跟踪的第二摄像头,能够有效地防止因目标的形态发生变化或者因摄像头拍摄视角的改变,而造成跟丢目标的情况发生,即使在跨屏的情况下,也能保证对目标进行准确地跟踪。
为了便于进一步理解上述确定候选摄像头的具体实现过程,下面对上述确定候选摄像头的过程进行举例说明:
假设与第一摄像头相邻的摄像头为摄像头A、摄像头B和摄像头C,根据第一视频帧的拍摄时刻,从摄像头A、摄像头B和摄像头C拍摄的视频流中分别选取拍摄时刻与该第一视频帧拍摄时刻相邻的第二视频帧,假设从摄像头A拍摄的视频流中选取的第二视频帧为视频帧a,从摄像头 B拍摄的视频流中选取的第二视频帧为视频帧b,从摄像头C拍摄的视频流中选取的第二视频帧为视频帧c;服务器利用目标检测模型检测视频帧a、视频帧b和视频帧c中存在的候选区域,假设目标检测模型检测出视频帧a中存在候选区域a1、a2、a3和a4,检测出视频帧b中存在候选区域b1和b2,检测出视频帧c中存在候选区域c1。
然后,服务器利用特征提取模型提取视频帧a、视频帧b和视频帧c中存在的候选区域的深度特征,并计算视频帧a、视频帧b和视频帧c中各候选区域的深度特征与第一视频帧中目标区域的深度特征之间的特征相似度;进而,服务器根据各个第二视频帧中各个候选区域对应的特征相似度,确定相似度超过阈值的候选区域,假设相似度超过阈值的候选区域包括候选区域a3和候选区域c1,则服务器可以将候选区域a3对应的摄像头A以及候选区域c1对应的摄像头C作为候选摄像头。
应理解,若仅存在一个特征相似度超过阈值的候选区域,则可以直接将该候选区域对应的摄像头作为第二摄像头。
若根据候选区域对应的特征相似度确定出多个候选摄像头,则服务器可以进一步从候选摄像头中选择与第一视频流中最后一次跟踪到目标区域的物理位置和运动方向最匹配的候选区域,作为用于目标跟踪的第二摄像头。
具体实现时,服务器可以将第一视频帧中目标区域的图像位置输入至位置坐标映射模型,利用该位置坐标映射模型确定第一视频帧中目标区域的物理位置;并且,服务器利用该位置坐标映射模型,根据各第二视频帧中各个特征相似度超过阈值的候选区域的图像位置,确定各个候选区域的物理位置;计算各个候选区域的物理位置与第一视频帧中目标区域的物理位置之间的距离。
此外,服务器还可以根据第一视频流中与第一视频帧相邻的多个跟踪到目标的视频帧,确定跟踪的目标的运动方向;进而,根据各个第二视频帧中各个特征相似度超过阈值的候选区域的位置,确定各个特征相似度超 过阈值的候选区域所处的位置与跟踪的目标的运动方向是否匹配。
最终,结合各个候选区域的物理位置与第一视频帧中目标区域的物理位置之间的距离,以及第一视频流中跟踪到的目标的运动方向两种因素,确定物理位置距离较近,且与第一视频流中跟踪到的目标的运动方向相匹配的候选区域,将该候选区域对应的摄像头作为用于跨屏目标跟踪的第二摄像头。
应理解,服务器也可以仅根据各个候选区域的物理位置与第一视频帧中目标区域的物理位置之间的距离,确定用于目标跟踪的第二摄像头,即服务器可以直接确定与第一视频帧中目标区域的物理位置距离最近的候选区域,进而确定该候选区域对应的摄像头作为第二摄像头。
应理解,服务器也可以仅根据第一视频帧中跟踪的目标的运动方向,确定与该运动方向最匹配的候选区域,进而,确定该候选区域对应的摄像头作为第二摄像头。
也就是说,在确定用于跨屏跟踪的第二摄像头时,服务器可以仅根据第二视频帧中各候选区域的特征相似度,确定特征相似度最大的候选区域对应的摄像头作为第二摄像头;服务器也可以将特征相似度,与物理位置距离和/或跟踪的目标的运动方向结合起来,在第二视频帧中确定最有可能包括跟踪的目标的候选区域,进而,确定该候选区域对应的摄像头作为候选摄像头。
步骤402:服务器获取所述第二摄像头拍摄的第二视频流,针对所述第二视频流中的视频帧执行所述数据处理,以实现在所述第二视频流中的目标跟踪。
服务器确定出第二摄像头后,获取该第二摄像头拍摄的第二视频流,并针对该第二视频流包括的各个视频帧执行图2所示的目标跟踪方法,从而实现在第二视频流中进行目标跟踪。
应理解,在第二视频流中进行目标跟踪时,服务器也可以利用位置坐 标映射模型,将第二视频流中各视频帧中跟踪的目标的图像位置转换为物理位置,进而,服务器可以根据第一视频流以及第二视频流中跟踪到的目标的物理位置,在物理地图上绘制出跟踪到的目标的运动轨迹,即在跨屏跟踪的情况下,服务器也可以利用该位置坐标映射模型对在物理地图上绘制出跟踪到的目标的运动轨迹。
在本申请实施例提供的跨屏跟踪方法中,利用目标检测模型在与第一摄像头相邻的各个摄像头拍摄的视频帧中检测候选区域,然后,利用特征提取模型提取各个候选区域的深度特征,基于各个候选区域的深度特征与第一视频流中最后一次跟踪到的目标的深度特征,确定各个候选区域对应的特征相似度;进而,将各个候选区域对应的特征相似度,各个候选区域的物理位置与第一视频流中最后一次跟踪到的目标的物理位置之间的距离,以及第一视频流中跟踪到的目标的运动方向结合起来,确定用于跨屏跟踪的第二摄像头;进而,针对第二摄像头拍摄的第二视频流中包括的各视频帧执行上一实施例提供的目标跟踪方法,以实现在该第二视频流中进行目标跟踪。在上述跨屏跟踪的过程中,利用目标检测模型和特征提取模型确定用于跨屏跟踪的第二摄像头,以及在第二摄像头拍摄的第二视频流中进行目标跟踪,由此,能够保证较为准确地确定出用于跨屏跟踪的第二摄像头,并且在第二摄像头拍摄的第二视频流中能够在较大的跟踪范围内,以跟踪的目标的深度特征为依据进行目标跟踪,保证目标跟踪的准确度。
如上文所述,本申请实施例提供的目标跟踪方法的实现需要基于特征提取模型,根据视频帧中的各候选区域确定各候选区域对应的深度特征。由于在实际应用中需要跟踪的目标通常为人体,因此,可以基于人体再识别技术构建该特征提取模型,以使该特征提取模型能够相应地提取人体的深度特征。
下面结合附图对用于提取人体深度特征的特征提取模型的训练方法进行介绍。参见图5,图5为本申请实施例提供的特征提取模型的训练方 法的流程示意图。为了便于描述,本实施例仍以服务器作为执行主体进行描述,应理解,该训练方法的执行主体并不仅限于服务器,还可以应用于终端设备等具有模型训练功能的设备。如图5所示,该训练方法包括以下步骤:
步骤501:服务器获取图像样本,所述图像样本包括人体图像以及图像标签。
服务器在训练特征提取模型时,需要获取图像样本,以便基于所获取的图像样本对特征提取模型进行训练。服务器所获取的图像样本中通常包括人体图像以及与人体图像对应的图像标签,人体图像为包括人物的图像,图像标签为能够表征人体图像中人物的标签,例如,服务器所获取的人体图像为包括人物A的图像,那么与该人体图像对应的图像标签即为能表征该人体图像中存在人物A的标签。
应理解,训练该特征提取模型时通常需要获取大量的图像样本,以便基于这些图像样本能够训练出性能较好的特征提取模型。
需要说明的是,为了使得用于训练特征提取模型的图像样本更加丰富,服务器还可以利用基于人体姿态识别技术构建的生成式对抗网络,对获取的图像样本中的人体图像进行多姿态增广,以针对同一人物生成更多的人体图像,从而丰富图像样本。
步骤502:服务器构建深度卷积神经网络初始模型,利用所述图像样本对所述深度卷积神经网络初始模型进行训练,以训练得到满足训练结束条件的深度卷积神经网络模型,作为所述特征提取模型。
训练特征提取模型时,可以基于人体局部分割技术和特征学习技术,构建深度卷积神经网络初始模型;利用该深度卷积神经网络可以从图像样本包括的人体图像中提取人体深度特征,进而,根据具有相同标签的人体图像各自对应的人体深度特征的特征误差构建损失函数,基于该损失函数对深度卷积神经网络初始模型进行优化训练,以训练得到满足训练结束条 件的模型参数,将最终训练得到的深度卷积神经网络模型作为特征提取模型。
判断训练的模型是否满足训练结束条件时,服务器可以利用测试图像样本对训练后的模型进行验证,其中,训练后的模型是利用图像样本对深度卷积神经网络初始模型进行一轮或者多轮训练优化得到的模型;其中,测试图像样本中可以包括对应于同一测试图像标签的多个测试人体图像,测试图像样本中也可以包括对应于不同测试图像标签的多个测试人体图像。具体的,采用包括对应于同一测试图像标签的多个测试人体图像对训练后的模型进行验证时,可以将测试图像样本中包括的多个测试人体图像输入至该第一模型,利用该训练后的模型提取各个测试人体图像的人体深度特征,若各个测试人体图像对应的人体深度特征之间的特征相似度超过第一相似度阈值,则说明该第一模型的模型性能较好,已满足训练结束条件,可以根据该训练后的模型直接作为特征提取模型;若采用包括对应于不同测试图像标签的多个测试人体图像对第一模型进行验证时,可以将测试图像样本中包括的多个测试人体图像输入至该训练后的模型,利用该训练后的模型提取各个测试人体图像的人体深度特征,若各个测试人体图像对应的人体深度特征之间的特征相似度低于第二相似度阈值,则说明该第一模型的模型性能较好,已满足训练结束条件,可以将该训练后的模型直接作为特征提取模型。否则,表明该训练后的模型性能不够优异,还需要进一步训练。
应理解,上述第一相似度阈值大于第二相似度阈值,第一相似度阈值和第二相似度阈值可以根据实际情况进行设定,在此不对第一相似度阈值和第二相似度阈值做任何具体限定。
为了便于理解上述判断训练的模型是否满足训练结束条件的具体实现过程,下面对上述判断过程进行举例说明:
假设服务器利用测试图像样本A对经第一轮训练优化得到的深度卷积神经网络初始模型进行验证,测试图像样本A中包括对应于同一测试图 像标签的测试人体图像a1和测试人体图像a2,服务器将测试人体图像a1和测试人体图像a2输入至经第一轮训练优化得到的训练模型后,该模型相应地提取测试人体图像a1中的人体深度特征以及测试人体图像a2的人体深度特征,计算测试人体图像a1中的人体深度特征与测试人体图像a2中的人体深度特征之间的特征相似度,若该特征相似度大于第一相似度阈值,则说明模型识别准确度已达到目标,此时训练的模型已满足训练结束条件,可以将该模型作为特征提取模型;反之,若该特征相似度小于第一相似度阈值,则说明此时训练的模型的识别精确度还不能满足需求,还未满足训练结束条件,需要利用图像样本继续对模型进行训练优化。
应理解,在实际应用中,服务器还可以采用其他方式验证深度卷积神经网络初始模型是否满足训练结束条件,在此不对验证深度卷积神经网络初始模型做任何限定。
按照上述方法基于人体再识别技术构建并训练特征提取模型,能够保证训练得到的特征提取模型能够准确地提取出人体的深度特征,由此,保证基于该特征提取模型进行目标跟踪时,能够准确地确定需要跟踪的目标的深度特征以及目标检测模型所确定的各候选区域的深度特征,进而保证目标跟踪的准确性。
为了便于进一步理解本申请实施例提供的目标跟踪方法,下面结合在监控录像中跟踪目标的应用场景,对本申请实施例提供的目标跟踪方法进行介绍。
参见图6,图6为本申请实施例提供的目标跟踪方法的应用场景示意图。该应用场景中包括:第一摄像头601、跟踪服务器602以及第二摄像头603。
当安保人员需要在第一摄像头601实时拍摄的第一视频流中进行目标跟踪时,安保人员可以通过终端设备向跟踪服务器602发起相应的目标跟 踪请求,相应地,跟踪服务器602响应于该目标跟踪请求,实时地从第一摄像头601处获取该第一摄像头601拍摄的第一视频流,并针对第一视频流中的视频帧执行以下数据处理。
跟踪服务器602具体针对第一视频流中的某一视频帧进行目标跟踪时,将该视频帧作为当前视频帧,跟踪服务器602先利用目标检测模型在该当前视频帧的整体范围内进行检测对象的检测,以获得该当前视频帧中存在的所有候选区域,每个候选区域中均包含有一个检测对象;然后,跟踪服务器602利用特征提取模型提取当前视频帧中各个候选区域的深度特征;进而,跟踪服务器602根据各个候选区域对应的深度特征以及在该当前视频帧之前的视频帧中跟踪到的目标的深度特征,计算各个候选区域对应的深度特征与在前视频帧中跟踪到的目标的深度特征之间的特征相似度;最终,基于各个候选区域对应的特征相似度,确定当前视频帧中跟踪到的目标。
跟踪服务器602在确定当前视频帧中跟踪到的目标时,也可以利用位置坐标映射模型,确定当前视频帧中各个候选区域对应的物理位置以及在前视频帧中跟踪到的目标的物理位置,基于各个候选区域的物理位置与在前视频帧中跟踪到的目标的物理位置,计算各个候选区域的物理位置与在前视频帧中跟踪到的目标的物理位置之间的距离;进而,结合特征相似度与物理位置距离两个因素,确定当前视频帧中跟踪到的目标。
跟踪服务器602在确定当前视频帧中跟踪到的目标时,还可以根据在前视频帧中跟踪到的目标所处的位置,确定跟踪到的目标的运动方向,根据各个候选区域在当前视频帧中所处的位置,判断各个候选区域与跟踪到的目标的运动方向是否匹配;进而,结合特征相似度以及候选区域与跟踪到的目标的运动方向的匹配程度两个因素,确定当前视频帧中跟踪到的目标。
此外,跟踪服务器602在确定当前视频帧中跟踪到的目标时,还可以将上述特征相似度、物理位置距离以及与运动方向的匹配程度三个因素结 合起来,确定当前视频帧中跟踪到的目标。
由此,跟踪服务器602可以按照上述方法对第一视频流中的各个视频帧进行数据处理,从而实现在第一视频流中进行目标跟踪。
若跟踪服务器602检测发现跟踪的目标消失于第一摄像头能够拍摄的范围边缘,且在预设时间段内第一摄像头拍摄的第一视频流中均没有跟踪到该目标,则可认为所跟踪的目标移动至第一摄像头无法拍摄到的范围,相应地,跟踪服务器602开启跨屏目标跟踪,确定能够拍摄到需要跟踪的目标的第二摄像头603。
跟踪服务器602确定第二摄像头603时,需要先根据第一摄像头601所处的位置,确定与该第一摄像头601相邻的摄像头;进而根据第一摄像头601最后一次拍摄到需要跟踪的目标的时刻,从这些与第一摄像头601相邻的摄像头拍摄的视频流中提取第二视频帧,利用目标检测模型检测第二视频帧中存在的候选区域。
然后跟踪服务器602利用特征提取模型提取各个第二视频帧中各个候选区域的深度特征,根据各个候选区域的深度特征以及在第一视频流中最后一次跟踪到的目标的深度特征,计算各个候选区域对应的特征相似度,进而,选取特征相似度超过阈值的候选区域,确定特征相似度超过阈值的候选区域对应的摄像头为候选摄像头。
在仅存在一个特征相似度超过阈值的候选区域时,跟踪服务器602可以直接将该候选区域对应的摄像头作为第二摄像头;在存在多个特征相似度超过阈值的候选区域时,跟踪服务器602可以利用位置坐标映射模型,确定各个特征相似度超过阈值的候选区域的物理位置,进而根据各个候选区域的物理位置与在第一视频流中最后一次跟踪到的目标的物理位置,确定各候选区域与第一视频流中最后一次跟踪到目标的物理位置距离;此外,跟踪服务器602还可以确定第一视频流中最后一次跟踪到的目标的运动方向,判断各个超过阈值的候选区域所处的位置与目标的运动方向是否匹配;最终,在各个超过阈值的候选区域中选取物理位置距离最小,且与目标的 运动方向最匹配的候选区域,确定该候选区域对应的摄像头为第二摄像头603。
进而,跟踪服务器602可以按照上述在第一摄像头601拍摄的第一视频流中进行目标跟踪的方法,对第二摄像头602拍摄的第二视频流进行目标跟踪。
由于位置坐标映射模型能够将在视频帧中跟踪到的目标的图像位置转换为物理位置,因此,跟踪服务器602还可以利用位置坐标映射模型,将在第一视频流以及第二视频流中各个视频帧中跟踪到的目标的图像位置相应地转换为物理地图上的物理位置,并根据各视频帧中跟踪到的目标的物理位置在物理地图上绘制出该目标的运动轨迹,由此,便于安保人员根据物理地图实时更新显示的运动轨迹,及时合理地安排安保力量对该目标进行追踪拦截,同时也为事后调查回溯历史恶意人员作案轨迹提供了快速有力的帮助。
在实际应用中,视频监控系统中常常会包括多个摄像头,通过多个摄像头进行全方位视频监控,上述图6所示场景仅通过两个摄像头的跨屏跟踪描述了方案的实现过程,而基于多个摄像头实现目标跟踪时,其本质是上述目标跟踪方法的重复实现。
针对上文描述的目标跟踪方法,本申请实施例还提供了对应的目标跟踪装置,以便于这些方法在实际中的应用及实现。
参见图7,图7是与上文图2所示的方法对应的一种目标跟踪装置的结构示意图,该目标跟踪装置700包括一个或多个处理器,以及一个或多个存储程序单元的存储器,其中,程序单元由处理器执行,该程序单元包括:
获取模块710,被设置为获取第一视频流;
处理模块720,被设置为针对所述第一视频流中的视频帧执行如下数 据处理,以实现在所述第一视频流中的目标跟踪;
所述处理模块720包括:
检测子模块721,被设置为根据目标检测模型和当前视频帧,检测得到所述当前视频帧中的候选区域;
特征提取子模块722,被设置为根据特征提取模型和所述候选区域,提取得到所述候选区域对应的深度特征,所述特征提取模型是端到端的神经网络模型,以图像作为输入,以图像中可运动体的深度特征作为输出;
计算子模块723,被设置为根据所述候选区域对应的深度特征和在前视频帧中跟踪到的目标的深度特征,计算所述候选区域对应的特征相似度;
确定子模块724,被设置为根据所述候选区域对应的特征相似度,确定所述当前视频帧中跟踪到的目标。
可选的,在上述图7所示的目标跟踪装置的基础上,确定子模块724具体被设置为:
根据所述候选区域各自对应的特征相似度,选择特征相似度最大的候选区域,作为所述当前视频帧的目标区域;
根据所述目标区域确定所述当前视频帧中跟踪到的目标。
可选的,在上述图7所示的目标跟踪装置的基础上,确定子模块724具体被设置为:
根据所述候选区域各自对应的特征相似度,选择特征相似度超过阈值的多个候选区域;
从所述多个候选区域中选择与所述在前视频帧中跟踪到的目标的运动方向最匹配的候选区域,作为所述当前视频帧的目标区域;
根据所述当前视频帧的目标区域确定所述当前视频帧中跟踪到的目标。
可选的,在上述图7所示的目标跟踪装置的基础上,确定子模块724具体被设置为:
根据所述候选区域各自对应的特征相似度,选择特征相似度超过阈值的多个候选区域;
从所述多个候选区域中选择与所述在前视频帧中跟踪到的目标的物理位置距离最小的候选区域,作为所述当前视频帧的目标区域;
根据所述当前视频帧的目标区域确定所述当前视频帧中跟踪到的目标。
可选的,在上述图7所示的目标跟踪装置的基础上,确定子模块724具体被设置为:
根据所述候选区域各自对应的特征相似度,选择特征相似度超过阈值的多个候选区域;
从所述多个候选区域中,选择与所述在前视频帧中跟踪到的目标的物理位置和运动方向最匹配的候选区域,作为所述当前视频帧的目标区域;
根据所述当前视频帧的目标区域确定所述当前视频帧中跟踪到的目标。
可选的,在上述图7所示的目标跟踪装置的基础上,确定子模块724具体通过以下方式计算所述候选区域的物理位置以及所述在前视频帧中跟踪到的目标区域的物理位置:
将所述候选区域的图像位置输入位置坐标映射模型,获取所述位置坐标映射模型输出的所述候选区域的物理位置;以及,
将所述在前视频帧中跟踪到的目标区域的图像位置输入所述位置坐标映射模型,获取所述位置坐标映射模型输出的所述在前视频帧中跟踪到的目标区域的物理位置。
可选的,在图7所示的目标跟踪装置的基础上,参见图8,图8为本 申请实施例提供的另一种目标跟踪装置的结构示意图,该装置800还包括一个或多个处理器,以及一个或多个存储程序单元的存储器,其中,程序单元由处理器执行,该程序单元包括:
坐标映射矩阵计算模块801,被设置为根据标定图像上的至少四个位置点的位置坐标以及所述至少四个位置点在物理世界地面上的物理位置坐标,通过透视变换公式计算得到坐标映射矩阵;
模型生成模块802,被设置为根据所述坐标映射矩阵生成所述位置坐标映射模型。
可选的,在图7所示的目标跟踪装置的基础上,参见图9,图9为本申请实施例提供的另一种目标跟踪装置的结构示意图,该装置900还包括一个或多个处理器,以及一个或多个存储程序单元的存储器,其中,程序单元由处理器执行,该程序单元包括:
选择模块901,被设置为根据所述第一视频流中最后一次跟踪到的目标区域,从与第一摄像头相邻的摄像头中选择用于跨屏目标跟踪的第二摄像头,所述第一视频流是所述第一摄像头拍摄得到的;
跨屏跟踪模块902,被设置为获取所述第二摄像头拍摄的第二视频流,针对所述第二视频流中的视频帧执行所述数据处理,以实现在所述第二视频流中的目标跟踪。
可选的,在图9所示的目标跟踪装置的基础上,选择模块901具体被设置为:
针对与所述第一摄像头相邻的摄像头,根据所述摄像头拍摄的视频流和所述目标检测模型,检测得到所述摄像头对应的候选区域;
根据所述摄像头对应的候选区域与所述第一视频流中最后一次跟踪到的目标区域中的深度特征的特征相似度,选择特征相似度超过阈值的多个候选区域对应的所述摄像头,作为候选摄像头;
从所述候选摄像头中选择与所述第一视频流最后一次跟踪到的目标区域的物理位置和运动方向最匹配的候选区域,作为用于目标跟踪的第二摄像头。
可选的,在图7所示的目标跟踪装置的基础上,参见图10,图10为本申请实施例提供的另一种目标跟踪装置的结构示意图,该装置1000还包括一个或多个处理器,以及一个或多个存储程序单元的存储器,其中,程序单元由处理器执行,该程序单元包括:
绘制模块1001,被设置为根据所述第一视频流跟踪得到的目标的物理位置,在物理地图上绘制所述目标的运动轨迹。
可选的,在图7所示的目标跟踪装置的基础上,所述目标检测模型包括:
基础网络和辅助网络,所述基础网络采用轻量级的卷积神经网络mobilenet,所述辅助网络采用卷积核构成的检测层;所述辅助网络的输入为所述基础网络的不同卷积层输出的特征图。
可选的,在图7所示的目标跟踪装置的基础上,参见图11,图11为本申请实施例提供的另一种目标跟踪装置的结构示意图,该装置1100还包括一个或多个处理器,以及一个或多个存储程序单元的存储器,其中,程序单元由处理器执行,该程序单元包括:
图像样本获取模块1101,被设置为获取图像样本,所述图像样本包括人体图像以及图像标签;
模型训练模块1102,被设置为构建深度卷积神经网络初始模型,利用所述图像样本对所述深度卷积神经网络初始模型进行训练,以训练得到满足训练结束条件的深度卷积神经网络模型,作为所述特征提取模型。
在本申请实施例提供的目标跟踪装置中,利用目标检测模型在当前视频帧的整体范围内进行目标检测,以确定当前视频帧中存在的所有候选区域,进而基于所确定的各个候选区域确定跟踪目标,相比于相关技术中根 据前一视频帧的目标区域确定当前视频帧的目标跟踪范围,并且仅在该目标跟踪范围内进行目标跟踪,本申请实施例中利用目标检测模型在视频帧的整体范围内确定候选区域,扩大了目标跟踪的范围,能够有效地防止发生因跟踪目标移动过快而跟丢跟踪目标的情况;另外,在本申请实施例提供的目标跟踪装置中,利用特征提取模型提取所确定的各个候选区域的深度特征,并基于各个候选区域的深度特征和在前视频帧中跟踪到的目标的深度特征确定跟踪目标,相比于相关技术中仅以形态特征为依据进行目标跟踪,本申请实施例中基于深度特征确定跟踪目标,能够保证所确定的跟踪目标更加准确,有效地防止发生跟踪漂移的情况。此外,本申请实施例提供的目标跟踪装置同样可以可靠地应用于跨屏目标跟踪的场景下,因此,在跨屏目标跟踪的应用场景下,同样能够有效地防止发生跟丢跟踪目标或跟踪目标漂移的情况,保证目标跟踪的准确性。
本申请实施例还提供了一种目标跟踪设备,该设备具体可以为服务器,参见图12,图12是本申请实施例提供的一种目标跟踪设备的结构示意图,该服务器1200可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,CPU)1222(例如,一个或一个以上处理器)和存储器1232,一个或一个以上存储应用程序1242或数据1244的存储介质1230(例如一个或一个以上海量存储设备)。其中,存储器1232和存储介质1230可以是短暂存储或持久存储。存储在存储介质1230的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1222可以设置为与存储介质1230通信,在服务器1200上执行存储介质1230中的一系列指令操作。
服务器1200还可以包括一个或一个以上电源1226,一个或一个以上有线或无线网络接口1250,一个或一个以上输入输出接口1258,和/或,一个或一个以上操作系统1241,例如Windows ServerTM,Mac OS XTM, UnixTM,LinuxTM,FreeBSDTM等等。
上述实施例中由服务器所执行的步骤可以基于该图12所示的服务器结构。
其中,CPU 1222被设置为执行如下步骤:
获取第一视频流,针对所述第一视频流中的视频帧执行如下数据处理,以实现在所述第一视频流中的目标跟踪,所述数据处理包括:
根据目标检测模型和当前视频帧,检测得到所述当前视频帧中的候选区域;
根据特征提取模型和所述候选区域,提取得到所述候选区域对应的深度特征,所述特征提取模型是端到端的神经网络模型,以图像作为输入,以图像中可运动体的深度特征作为输出;
根据所述候选区域对应的深度特征和在前视频帧中跟踪到的目标的深度特征,计算所述候选区域对应的特征相似度;
根据所述候选区域对应的特征相似度,确定所述当前视频帧中跟踪到的目标。
可选的,CPU1222还可以执行本申请实施例中目标跟踪方法任一具体实现方式的方法步骤。
本申请实施例还提供了另一种目标跟踪设备,该目标跟踪设备可以为终端设备,如图13所示,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请实施例方法部分。该终端可以为包括手机、平板电脑、个人数字助理(英文全称:Personal Digital Assistant,英文缩写:PDA)、销售终端(英文全称:Point of Sales,英文缩写:POS)、车载电脑等任意终端设备,以终端为手机为例:
图13示出的是与本申请实施例提供的终端相关的手机的部分结构的 框图。参考图13,手机包括:射频(英文全称:Radio Frequency,英文缩写:RF)电路1310、存储器1320、输入单元1330、显示单元1340、传感器1350、音频电路1360、无线保真(英文全称:wireless fidelity,英文缩写:WiFi)模块1370、处理器1380、以及电源1390等部件。本领域技术人员可以理解,图13中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图13对手机的各个构成部件进行具体的介绍:
RF电路1310可被设置为收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器1380处理;另外,将设计上行的数据发送给基站。通常,RF电路1310包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(英文全称:Low Noise Amplifier,英文缩写:LNA)、双工器等。此外,RF电路1310还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(英文全称:Global System of Mobile communication,英文缩写:GSM)、通用分组无线服务(英文全称:General Packet Radio Service,GPRS)、码分多址(英文全称:Code Division Multiple Access,英文缩写:CDMA)、宽带码分多址(英文全称:Wideband Code Division Multiple Access,英文缩写:WCDMA)、长期演进(英文全称:Long Term Evolution,英文缩写:LTE)、电子邮件、短消息服务(英文全称:Short Messaging Service,SMS)等。
存储器1320可被设置为存储软件程序以及模块,处理器1380通过运行存储在存储器1320的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器1320可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1320可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘 存储器件、闪存器件、或其他易失性固态存储器件。
输入单元1330可被设置为接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元1330可包括触控面板1331以及其他输入设备1332。触控面板1331,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1331上或在触控面板1331附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板1331可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器1380,并能接收处理器1380发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1331。除了触控面板1331,输入单元1330还可以包括其他输入设备1332。具体地,其他输入设备1332可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元1340可被设置为显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元1340可包括显示面板1341,可选的,可以采用液晶显示器(英文全称:Liquid Crystal Display,英文缩写:LCD)、有机发光二极管(英文全称:Organic Light-Emitting Diode,英文缩写:OLED)等形式来配置显示面板1341。进一步的,触控面板1331可覆盖显示面板1341,当触控面板1331检测到在其上或附近的触摸操作后,传送给处理器1380以确定触摸事件的类型,随后处理器1380根据触摸事件的类型在显示面板1341上提供相应的视觉输出。虽然在图13中,触控面板1331与显示面板1341是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板1331与显示面板1341集成而实现手机的输入和输出功能。
手机还可包括至少一种传感器1350,比如光传感器、运动传感器以及 其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1341的亮度,接近传感器可在手机移动到耳边时,关闭显示面板1341和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路1360、扬声器1361,传声器1362可提供用户与手机之间的音频接口。音频电路1360可将接收到的音频数据转换后的电信号,传输到扬声器1361,由扬声器1361转换为声音信号输出;另一方面,传声器1362将收集的声音信号转换为电信号,由音频电路1360接收后转换为音频数据,再将音频数据输出处理器1380处理后,经RF电路1310以发送给比如另一手机,或者将音频数据输出至存储器1320以便进一步处理。
WiFi属于短距离无线传输技术,手机通过WiFi模块1370可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图13示出了WiFi模块1370,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器1380是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器1320内的软件程序和/或模块,以及调用存储在存储器1320内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器1380可包括一个或多个处理单元;优选的,处理器1380可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1380中。
手机还包括给各个部件供电的电源1390(比如电池),优选的,电源可以通过电源管理系统与处理器1380逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。此外,手机内还可以图形处理器(Graphics Processing Unit,GPU),特征提取模型和目标检测模型可以通过GPU运行,GPU与处理器1380相互通信,以实现本申请实施例提供的目标跟踪方法。当然,特征提取模型和目标检测模型也可以在处理器1380上运行以实现其功能。
在本申请实施例中,该终端所包括的处理器1380还具有以下功能:
获取第一视频流,针对所述第一视频流中的视频帧执行如下数据处理,以实现在所述第一视频流中的目标跟踪,所述数据处理包括:
根据目标检测模型和当前视频帧,检测得到所述当前视频帧中的候选区域;
根据特征提取模型和所述候选区域,提取得到所述候选区域对应的深度特征,所述特征提取模型是端到端的神经网络模型,以图像作为输入,以图像中可运动体的深度特征作为输出;
根据所述候选区域对应的深度特征和在前视频帧中跟踪到的目标的深度特征,计算所述候选区域对应的特征相似度;
根据所述候选区域对应的特征相似度,确定所述当前视频帧中跟踪到的目标。
可选的,处理器1380还可以执行本申请实施例中目标跟踪方法任一具体实现方式的方法步骤。
本申请实施例还提供一种计算机可读存储介质,被设置为存储程序代码,该程序代码被设置为执行前述各个实施例所述的一种目标跟踪方法中 的任意一种实施方式。
本申请实施例还提供一种包括指令的计算机程序产品,当其在计算机上运行时,使得计算机执行前述各个实施例所述的一种目标跟踪方法中的任意一种实施方式。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对相关技术做出贡献的部分或 者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文全称:Read-Only Memory,英文缩写:ROM)、随机存取存储器(英文全称:Random Access Memory,英文缩写:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请实施例的技术方案,而非对其限制;尽管参照前述实施例对本申请实施例进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
工业实用性
本申请实施例提供了一种目标跟踪方法,该目标跟踪方法利用目标检测模型在当前视频帧的整体范围内进行目标检测,以确定当前视频帧中存在的所有候选区域,进而基于所确定的各个候选区域确定跟踪目标,相比于相关技术中根据前一视频帧的目标区域确定当前视频帧的目标跟踪范围,并且仅在该目标跟踪范围内进行目标跟踪,本申请实施例中利用目标检测模型在视频帧的整体范围内确定候选区域,扩大了目标跟踪的范围,能够有效地防止发生因跟踪目标移动过快而跟丢跟踪目标的情况;另外,在本申请实施例提供的目标跟踪方法中,利用特征提取模型提取所确定的各个候选区域的深度特征,并基于各个候选区域的深度特征和在前视频帧中跟踪到的目标的深度特征确定目标,相比于相关技术中仅以形态特征为依据进行目标跟踪,本申请实施例中基于深度特征确定跟踪目标,能够保证所确定的跟踪目标更加准确,有效地防止发生跟踪漂移的情况。

Claims (24)

  1. 一种目标跟踪方法,包括:
    服务器获取第一视频流,针对所述第一视频流中的视频帧执行如下数据处理,以实现在所述第一视频流中的目标跟踪,所述数据处理包括:
    所述服务器根据目标检测模型和当前视频帧,检测得到所述当前视频帧中的候选区域;
    所述服务器根据特征提取模型和所述候选区域,提取得到所述候选区域对应的深度特征,所述特征提取模型是端到端的神经网络模型,以图像作为输入,以图像中可运动体的深度特征作为输出;
    所述服务器根据所述候选区域对应的深度特征和在前视频帧中跟踪到的目标的深度特征,计算所述候选区域对应的特征相似度;
    所述服务器根据所述候选区域对应的特征相似度,确定所述当前视频帧中跟踪到的目标。
  2. 根据权利要求1所述的方法,其中,所述服务器根据所述候选区域对应的特征相似度,确定所述当前视频帧中跟踪到的目标,包括:
    根据所述候选区域各自对应的特征相似度,选择特征相似度最大的候选区域,作为所述当前视频帧的目标区域;
    根据所述目标区域确定所述当前视频帧中跟踪到的目标。
  3. 根据权利要求1所述的方法,其中,所述服务器根据所述候选区域对应的特征相似度,确定所述当前视频帧中跟踪到的目标,包括:
    根据所述候选区域各自对应的特征相似度,选择特征相似度超过阈值的多个候选区域;
    从所述多个候选区域中选择与所述在前视频帧中跟踪到的目标的运动方向最匹配的候选区域,作为所述当前视频帧的目标区域;
    根据所述当前视频帧的目标区域确定所述当前视频帧中跟踪到的目标。
  4. 根据权利要求1所述的方法,其中,所述服务器根据所述候选区域对应的特征相似度,确定所述当前视频帧中跟踪到的目标,包括:
    根据所述候选区域各自对应的特征相似度,选择特征相似度超过阈值的多个候选区域;
    从所述多个候选区域中选择与所述在前视频帧中跟踪到的目标的物理位置距离最小的候选区域,作为所述当前视频帧的目标区域;
    根据所述当前视频帧的目标区域确定所述当前视频帧中跟踪到的目标。
  5. 根据权利要求1所述的方法,其中,所述服务器根据所述候选区域对应的特征相似度,确定所述当前视频帧中跟踪到的目标,包括:
    根据所述候选区域各自对应的特征相似度,选择特征相似度超过阈值的多个候选区域;
    从所述多个候选区域中,选择与所述在前视频帧中跟踪到的目标的物理位置和运动方向最匹配的候选区域,作为所述当前视频帧的目标区域;
    根据所述当前视频帧的目标区域确定所述当前视频帧中跟踪到的目标。
  6. 根据权利要求1所述的方法,其中,所述第一视频流是第一摄像头拍摄得到的,则在所述第一视频流中跟踪目标消失后,所述方法还包括:
    所述服务器根据所述第一视频流中最后一次跟踪到的目标区域,从与所述第一摄像头相邻的摄像头中选择用于跨屏目标跟踪的第二摄像头;
    所述服务器获取所述第二摄像头拍摄的第二视频流,针对所述第二视频流中的视频帧执行所述数据处理,以实现在所述第二视频流中的目标跟踪。
  7. 根据权利要求6所述的方法,其中,所述服务器根据从所述第一视频流中最后一次跟踪到的目标区域,从与所述第一摄像头相邻的摄像头中选择用于跨屏目标跟踪的第二摄像头,包括:
    针对与所述第一摄像头相邻的摄像头,根据所述摄像头拍摄的视频流和所述目标检测模型,检测得到所述摄像头对应的候选区域;
    根据所述摄像头对应的候选区域与所述第一视频流中最后一次跟踪到的目标区域中的深度特征的特征相似度,选择特征相似度超过阈值的多个候选区域对应的所述摄像头,作为候选摄像头;
    从所述候选摄像头中选择与所述第一视频流最后一次跟踪到的目标 的物理位置和运动方向最匹配的候选区域,作为用于目标跟踪的第二摄像头。
  8. 根据权利要求1至7任一项所述的方法,其中,所述方法还包括通过以下方式计算所述候选区域的物理位置以及所述在前视频帧中跟踪到的目标区域的物理位置:
    将所述候选区域的图像位置输入位置坐标映射模型,获取所述位置坐标映射模型输出的所述候选区域的物理位置;以及,
    将所述在前视频帧中跟踪到的目标区域的图像位置输入所述位置坐标映射模型,获取所述位置坐标映射模型输出的所述在前视频帧中跟踪到的目标的物理位置。
  9. 根据权利要求8所述的方法,其中,所述方法还包括:
    根据预设的标定图像上的至少四个位置点的位置坐标以及所述至少四个位置点在物理世界地面上的物理位置坐标,通过透视变换公式计算得到坐标映射矩阵;
    根据所述坐标映射矩阵生成所述位置坐标映射模型。
  10. 根据权利要求1至7任一项所述的方法,其中,所述方法还包括:
    所述服务器根据所述第一视频流跟踪到的目标的物理位置,在物理地图上绘制所述目标的运动轨迹。
  11. 根据权利要求1至7任一项所述的方法,其中,所述目标检测模型,包括:
    基础网络和辅助网络,所述基础网络采用轻量级的卷积神经网络mobilenet,所述辅助网络采用卷积核构成的检测层;所述辅助网络的输入为所述基础网络的不同卷积层输出的特征图。
  12. 根据权利要求1至7任一项所述的方法,其中,所述方法还包括:
    所述服务器获取图像样本,所述图像样本包括人体图像以及图像标签;
    所述服务器构建深度卷积神经网络初始模型,利用所述图像样本对所述深度卷积神经网络初始模型进行训练,以训练得到满足训练结束条件的深度卷积神经网络模型,作为所述特征提取模型。
  13. 根据权利要求1至7任一项所述的方法,其中,所述当前视频帧为所述第一视频流中位于第一帧视频帧之后的视频帧,在所述当前视频帧 为所述第一视频流中的第二帧视频帧的情况下,所述在前视频帧中跟踪到的目标的深度特征为利用所述特征提取模型提取的在所述第一帧视频帧中需要跟踪的目标的深度特征。
  14. 一种目标跟踪方法,包括:
    服务器对第一视频流中的目标进行跟踪,其中,所述第一视频流是第一摄像头拍摄到的;
    在所述目标在所述第一视频流中消失后,所述服务器根据所述第一视频流中最后一次跟踪到的目标区域,从与所述第一摄像头相邻的摄像头中选择用于跨屏目标跟踪的第二摄像头;
    所述服务器获取所述第二摄像头拍摄的第二视频流;
    所述服务器在所述第二视频流中对所述目标进行跟踪。
  15. 根据权利要求14所述的方法,其中,所述服务器根据从所述第一视频流中最后一次跟踪到的目标区域,从与所述第一摄像头相邻的摄像头中选择用于跨屏目标跟踪的第二摄像头,包括:
    针对与所述第一摄像头相邻的摄像头,根据所述摄像头拍摄的视频流和目标检测模型,检测得到所述摄像头对应的候选区域;
    根据特征提取模型和所述候选区域,提取得到所述候选区域对应的深度特征,所述特征提取模型是端到端的神经网络模型,以图像作为输入,以图像中可运动体的深度特征作为输出;
    根据所述候选区域对应的深度特征和在第一视频流中最后一次跟踪到的目标的深度特征,计算所述候选区域对应的特征相似度;
    根据所述候选区域对应的特征相似度,确定所述用于跨屏目标跟踪的第二摄像头。
  16. 根据权利要求15所述的方法,其中,所述根据所述候选区域对应的特征相似度,确定所述用于跨屏目标跟踪的第二摄像头包括:
    将与所述特征相似度超过阈值的候选区域对应的摄像头确定为所述第二摄像头。
  17. 根据权利要求15所述的方法,其中,所述根据所述候选区域对应的特征相似度,确定所述用于跨屏目标跟踪的第二摄像头包括:
    根据所述候选区域各自对应的特征相似度,选择特征相似度超过阈值的多个候选区域;
    从所述多个候选区域中选择与所述在第一视频流中最后一次跟踪到的目标的运动方向最匹配的候选区域,将与所述最匹配的候选区域对应的摄像头确定为所述第二摄像头。
  18. 根据权利要求15所述的方法,其中,所述根据所述候选区域对应的特征相似度,确定所述用于跨屏目标跟踪的第二摄像头包括:
    根据所述候选区域各自对应的特征相似度,选择特征相似度超过阈值的多个候选区域;
    从所述多个候选区域中选择与所述在第一视频流中最后一次跟踪到的目标的物理位置距离最小的候选区域,将与所述距离最小的候选区域对应的摄像头确定为所述第二摄像头。
  19. 根据权利要求15所述的方法,其中,所述根据所述候选区域对应的特征相似度,确定所述用于跨屏目标跟踪的第二摄像头包括:
    根据所述候选区域各自对应的特征相似度,选择特征相似度超过阈值的多个候选区域;
    从所述多个候选区域中,选择与所述在第一视频流中最后一次跟踪到的目标的物理位置和运动方向最匹配的候选区域,将与所述最匹配的候选区域对应的摄像头确定为所述第二摄像头。
  20. 根据权利要求14至19中任一项所述的方法,其中,所述方法还包括通过以下方式计算所述候选区域的物理位置以及所述在第一视频流中最后一次跟踪到的目标区域的物理位置:
    将所述候选区域的图像位置输入位置坐标映射模型,获取所述位置坐标映射模型输出的所述候选区域的物理位置;以及,
    将所述在第一视频流中最后一次跟踪到的目标区域的图像位置输入所述位置坐标映射模型,获取所述位置坐标映射模型输出的所述在第一视 频流中最后一次跟踪到的目标区域的物理位置。
  21. 根据权利要求14所述的方法,其中,所述服务器在所述第二视频流中对所述目标进行跟踪包括:针对所述第二视频流中的视频帧执行如下数据处理:
    根据目标检测模型和当前视频帧,检测得到所述当前视频帧中的候选区域;
    根据特征提取模型和所述候选区域,提取得到所述候选区域对应的深度特征,所述特征提取模型是端到端的神经网络模型,以图像作为输入,以图像中可运动体的深度特征作为输出;
    根据所述候选区域对应的深度特征和在前视频帧中跟踪到的目标的深度特征,计算所述候选区域对应的特征相似度;
    根据所述候选区域对应的特征相似度,确定所述当前视频帧中跟踪到的目标。
  22. 一种目标跟踪装置,包括一个或多个处理器,以及一个或多个存储程序单元的存储器,其中,所述程序单元由所述处理器执行,所述程序单元包括:
    获取模块,被设置为获取第一视频流;
    处理模块,被设置为针对所述第一视频流中的视频帧执行如下数据处理,以实现在所述第一视频流中的目标跟踪;
    所述处理模块包括:
    检测子模块,被设置为根据目标检测模型和当前视频帧,检测得到所述当前视频帧中的候选区域;
    特征提取子模块,被设置为根据特征提取模型和所述候选区域,提取得到所述候选区域对应的深度特征,所述特征提取模型是端到端的神经网络模型,以图像作为输入,以图像中可运动体的深度特征作为输出;
    计算子模块,被设置为根据所述候选区域对应的深度特征和在前视频帧中跟踪到的目标的深度特征,计算所述候选区域对应的特征相似度;
    确定子模块,被设置为根据所述候选区域对应的特征相似度,确定所述当前视频帧中跟踪到的目标。
  23. 一种设备,所述设备包括处理器以及存储器:
    所述存储器被设置为存储程序代码,并将所述程序代码传输给所述处理器;
    所述处理器被设置为根据所述程序代码中的指令执行权利要求1-13,或权利要求14-21任一项所述的目标跟踪方法。
  24. 一种计算机可读存储介质,所述计算机可读存储介质被设置为存储程序代码,所述程序代码被设置为执行权利要求1-13,或权利要求14-21任一项所述的目标跟踪方法。
PCT/CN2019/093793 2018-09-14 2019-06-28 目标跟踪方法、装置、介质以及设备 WO2020052319A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP19861095.8A EP3770854A4 (en) 2018-09-14 2019-06-28 TARGET MONITORING PROCESS, APPARATUS, SUPPORT AND DEVICE
US17/063,997 US20210019627A1 (en) 2018-09-14 2020-10-06 Target tracking method and apparatus, medium, and device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201811076284.7A CN109325967B (zh) 2018-09-14 2018-09-14 目标跟踪方法、装置、介质以及设备
CN201811076284.7 2018-09-14

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/063,997 Continuation US20210019627A1 (en) 2018-09-14 2020-10-06 Target tracking method and apparatus, medium, and device

Publications (1)

Publication Number Publication Date
WO2020052319A1 true WO2020052319A1 (zh) 2020-03-19

Family

ID=65265348

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/093793 WO2020052319A1 (zh) 2018-09-14 2019-06-28 目标跟踪方法、装置、介质以及设备

Country Status (5)

Country Link
US (1) US20210019627A1 (zh)
EP (1) EP3770854A4 (zh)
CN (1) CN109325967B (zh)
TW (1) TWI786313B (zh)
WO (1) WO2020052319A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111444875A (zh) * 2020-04-07 2020-07-24 珠海格力电器股份有限公司 一种人脸跟踪方法、装置、设备和计算机可读存储介质
CN111539986A (zh) * 2020-03-25 2020-08-14 西安天和防务技术股份有限公司 目标跟踪方法、装置、计算机设备和存储介质
CN111814752A (zh) * 2020-08-14 2020-10-23 上海木木聚枞机器人科技有限公司 室内定位实现方法、服务器、智能移动设备、存储介质
CN112101175A (zh) * 2020-09-09 2020-12-18 沈阳帝信人工智能产业研究院有限公司 基于局部图像的高速公路车辆检测及多属性特征提取方法
CN113723325A (zh) * 2021-09-03 2021-11-30 安徽大学绿色产业创新研究院 一种装配式预制构件的工装缺陷检测系统
CN114155255A (zh) * 2021-12-14 2022-03-08 成都索贝数码科技股份有限公司 一种基于特定人物时空轨迹的视频横屏转竖屏方法

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10740620B2 (en) * 2017-10-12 2020-08-11 Google Llc Generating a video segment of an action from a video
CN109325967B (zh) * 2018-09-14 2023-04-07 腾讯科技(深圳)有限公司 目标跟踪方法、装置、介质以及设备
JP6685619B1 (ja) * 2018-12-10 2020-04-22 三菱電機株式会社 物体認識装置および物体認識方法
CN109948611B (zh) * 2019-03-14 2022-07-08 腾讯科技(深圳)有限公司 一种信息区域确定的方法、信息展示的方法及装置
CN111754386B (zh) * 2019-03-26 2023-08-18 杭州海康威视数字技术股份有限公司 图像区域屏蔽方法、装置、设备及存储介质
CN110084642A (zh) * 2019-04-19 2019-08-02 哈尔滨新中新电子股份有限公司 基于目标检测和图像检索的菜品识别方法
CN110675369B (zh) * 2019-04-26 2022-01-14 深圳市豪视智能科技有限公司 联轴器失配检测方法及相关设备
CN110135365B (zh) * 2019-05-20 2021-04-06 厦门大学 基于幻觉对抗网络的鲁棒目标跟踪方法
CN110223325B (zh) * 2019-06-18 2021-04-27 北京字节跳动网络技术有限公司 对象跟踪方法、装置及设备
CN110490060B (zh) * 2019-07-10 2020-09-11 特斯联(北京)科技有限公司 一种基于机器学习硬件架构的安防前端视频设备
CN112215762A (zh) * 2019-07-12 2021-01-12 阿里巴巴集团控股有限公司 视频图像处理方法、装置及电子设备
CN112241968A (zh) * 2019-07-19 2021-01-19 上海高德威智能交通系统有限公司 一种目标跟踪的方法和装置
CN110503074B (zh) 2019-08-29 2022-04-15 腾讯科技(深圳)有限公司 视频帧的信息标注方法、装置、设备及存储介质
CN110781774A (zh) * 2019-10-10 2020-02-11 江苏理工学院 基于深度学习的平交路口智能引导系统和方法
CN110956646B (zh) * 2019-10-30 2023-04-18 北京迈格威科技有限公司 目标跟踪方法、装置、设备及存储介质
CN110866480B (zh) * 2019-11-07 2021-09-17 浙江大华技术股份有限公司 对象的跟踪方法及装置、存储介质、电子装置
US11043003B2 (en) 2019-11-18 2021-06-22 Waymo Llc Interacted object detection neural network
CN110930434B (zh) * 2019-11-21 2023-05-12 腾讯科技(深圳)有限公司 目标对象跟随方法、装置、存储介质和计算机设备
CN110930436B (zh) * 2019-11-27 2023-04-14 深圳市捷顺科技实业股份有限公司 一种目标跟踪方法及设备
CN111161311A (zh) * 2019-12-09 2020-05-15 中车工业研究院有限公司 一种基于深度学习的视觉多目标跟踪方法及装置
KR102311798B1 (ko) * 2019-12-12 2021-10-08 포항공과대학교 산학협력단 다중 객체 추적 방법 및 장치
CN113077511B (zh) * 2020-01-06 2022-06-10 魔门塔(苏州)科技有限公司 一种用于汽车的多相机目标匹配与跟踪方法及装置
CN111278197B (zh) * 2020-01-21 2022-06-24 浙江大华技术股份有限公司 路灯控制方法、装置、存储介质及电子装置
CN111339852B (zh) * 2020-02-14 2023-12-26 阿波罗智联(北京)科技有限公司 追踪方法、装置、电子设备和计算机可读存储介质
CN110930428B (zh) * 2020-02-19 2020-08-14 成都纵横大鹏无人机科技有限公司 目标跟踪方法、装置、电子设备及存储介质
KR20210116966A (ko) * 2020-03-18 2021-09-28 삼성전자주식회사 타겟 트래킹 방법 및 장치
CN111429477B (zh) * 2020-04-13 2022-08-26 展讯通信(上海)有限公司 目标追踪方法及装置、存储介质、计算机设备
CN111709978A (zh) * 2020-05-06 2020-09-25 广东康云科技有限公司 一种跨屏目标跟踪方法、系统、装置及存储介质
TWI721885B (zh) 2020-05-14 2021-03-11 雲云科技股份有限公司 具熱感應輔助之光影像生理監視系統
CN111612820B (zh) * 2020-05-15 2023-10-13 北京百度网讯科技有限公司 多目标跟踪方法、特征提取模型的训练方法和装置
CN111652903B (zh) * 2020-05-22 2023-09-08 重庆理工大学 一种自动驾驶场景下基于卷积关联网络的行人目标跟踪方法
CN111881827B (zh) * 2020-07-28 2022-04-26 浙江商汤科技开发有限公司 目标检测方法及装置、电子设备和存储介质
CN111988656A (zh) * 2020-07-28 2020-11-24 烽火通信科技股份有限公司 一种流媒体视频用户触摸信息传递的方法及系统
CN111967370B (zh) * 2020-08-12 2021-12-07 广州小鹏自动驾驶科技有限公司 一种交通灯识别的方法和装置
CN112183440A (zh) * 2020-10-13 2021-01-05 北京百度网讯科技有限公司 道路信息的处理方法、装置、电子设备和存储介质
CN112070807B (zh) * 2020-11-11 2021-02-05 湖北亿咖通科技有限公司 多目标跟踪方法和电子装置
CN112149762A (zh) * 2020-11-24 2020-12-29 北京沃东天骏信息技术有限公司 目标跟踪方法、目标跟踪装置及计算机可读存储介质
CN112291480B (zh) * 2020-12-03 2022-06-21 维沃移动通信有限公司 跟踪对焦方法、跟踪对焦装置、电子设备和可读存储介质
CN112464898A (zh) * 2020-12-15 2021-03-09 北京市商汤科技开发有限公司 事件检测方法及装置、电子设备和存储介质
CN112798811B (zh) * 2020-12-30 2023-07-28 杭州海康威视数字技术股份有限公司 速度测量方法、装置和设备
CN113011259A (zh) * 2021-02-09 2021-06-22 苏州臻迪智能科技有限公司 电子设备的操作方法
CN112950674B (zh) * 2021-03-09 2024-03-05 厦门市公安局 一种基于多种识别技术协同的跨摄像头轨迹跟踪方法、装置及存储介质
CN113312967B (zh) * 2021-04-22 2024-05-24 北京搜狗科技发展有限公司 一种检测方法、装置和用于检测的装置
CN113240656B (zh) * 2021-05-24 2023-04-07 浙江商汤科技开发有限公司 视觉定位方法及相关装置、设备
CN113506317B (zh) * 2021-06-07 2022-04-22 北京百卓网络技术有限公司 一种基于Mask R-CNN和表观特征融合的多目标跟踪方法
CN113409356A (zh) * 2021-06-23 2021-09-17 之江实验室 一种相似度计算方法和多目标跟踪方法
CN113470081B (zh) * 2021-07-21 2024-06-04 浙江大华技术股份有限公司 一种车辆跟踪方法、装置、计算机设备及存储介质
CN113705417B (zh) * 2021-08-23 2022-06-28 深圳市商汤科技有限公司 图像处理方法及装置、电子设备及计算机可读存储介质
CN113723286B (zh) * 2021-08-30 2023-08-11 上海大学 基于视频的扇形搜索车速检测方法
CN113822910A (zh) * 2021-09-30 2021-12-21 上海商汤临港智能科技有限公司 多目标跟踪方法、装置、电子设备及存储介质
CN114022510A (zh) * 2021-10-20 2022-02-08 浙江大立科技股份有限公司 一种基于内容检索的目标长时跟踪方法
CN114092516B (zh) * 2021-11-08 2024-05-14 国汽智控(北京)科技有限公司 一种多目标跟踪检测方法、装置、设备及介质
CN114155277B (zh) * 2021-11-24 2024-07-23 清华大学 一种基于视频目标追踪的微流体分析方法及装置
CN114708533A (zh) * 2022-03-24 2022-07-05 阿里云计算有限公司 目标跟踪方法、装置、设备及存储介质
CN115063750A (zh) * 2022-04-29 2022-09-16 京东方科技集团股份有限公司 区域位置更新方法、安防系统和计算机可读存储介质
CN116309710B (zh) * 2023-02-27 2024-07-09 荣耀终端有限公司 目标追踪方法和电子设备
CN116680630B (zh) * 2023-07-27 2023-10-13 成都雨航创科科技有限公司 基于振动和图像的人车运动侦测方法及装置
CN116758461B (zh) * 2023-08-10 2024-01-05 季华实验室 基于神经网络的排球比赛智能判罚方法、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102638675A (zh) * 2012-04-01 2012-08-15 安科智慧城市技术(中国)有限公司 一种利用多视点视频进行目标跟踪的方法和系统
CN104767911A (zh) * 2015-04-28 2015-07-08 腾讯科技(深圳)有限公司 图像处理方法及装置
US20180158210A1 (en) * 2015-08-26 2018-06-07 Digitalglobe, Inc. Synthesizing training data for broad area geospatial object detection
CN108257158A (zh) * 2018-03-27 2018-07-06 福州大学 一种基于循环神经网络的目标预测与跟踪方法
CN109325967A (zh) * 2018-09-14 2019-02-12 腾讯科技(深圳)有限公司 目标跟踪方法、装置、介质以及设备

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4195991B2 (ja) * 2003-06-18 2008-12-17 パナソニック株式会社 監視映像モニタリングシステム、監視映像生成方法、および監視映像モニタリングサーバ
CN102867311B (zh) * 2011-07-07 2015-11-25 株式会社理光 目标跟踪方法和目标跟踪设备
KR20150071504A (ko) * 2013-12-18 2015-06-26 한국전자통신연구원 카메라 추적 제어권 자동 전환 시스템 및 이의 카메라 추적 제어권 자동 전환 방법
US9443320B1 (en) * 2015-05-18 2016-09-13 Xerox Corporation Multi-object tracking with generic object proposals
CN106296725B (zh) * 2015-06-12 2021-10-19 富泰华工业(深圳)有限公司 运动目标实时检测与跟踪方法及目标检测装置
US10088549B2 (en) * 2015-06-25 2018-10-02 Appropolis Inc. System and a method for tracking mobile objects using cameras and tag devices
JP6658001B2 (ja) * 2016-01-27 2020-03-04 株式会社リコー 位置推定装置、プログラム、位置推定方法
US11258985B2 (en) * 2016-04-05 2022-02-22 Verint Systems Inc. Target tracking in a multi-camera surveillance system
US10402697B2 (en) * 2016-08-01 2019-09-03 Nvidia Corporation Fusing multilayer and multimodal deep neural networks for video classification
US11132809B2 (en) * 2017-01-26 2021-09-28 Samsung Electronics Co., Ltd. Stereo matching method and apparatus, image processing apparatus, and training method therefor
CN107862705B (zh) * 2017-11-21 2021-03-30 重庆邮电大学 一种基于运动特征和深度学习特征的无人机小目标检测方法
CN108509859B (zh) * 2018-03-09 2022-08-26 南京邮电大学 一种基于深度神经网络的无重叠区域行人跟踪方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102638675A (zh) * 2012-04-01 2012-08-15 安科智慧城市技术(中国)有限公司 一种利用多视点视频进行目标跟踪的方法和系统
CN104767911A (zh) * 2015-04-28 2015-07-08 腾讯科技(深圳)有限公司 图像处理方法及装置
US20180158210A1 (en) * 2015-08-26 2018-06-07 Digitalglobe, Inc. Synthesizing training data for broad area geospatial object detection
CN108257158A (zh) * 2018-03-27 2018-07-06 福州大学 一种基于循环神经网络的目标预测与跟踪方法
CN109325967A (zh) * 2018-09-14 2019-02-12 腾讯科技(深圳)有限公司 目标跟踪方法、装置、介质以及设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3770854A4 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111539986A (zh) * 2020-03-25 2020-08-14 西安天和防务技术股份有限公司 目标跟踪方法、装置、计算机设备和存储介质
CN111539986B (zh) * 2020-03-25 2024-03-22 西安天和防务技术股份有限公司 目标跟踪方法、装置、计算机设备和存储介质
CN111444875A (zh) * 2020-04-07 2020-07-24 珠海格力电器股份有限公司 一种人脸跟踪方法、装置、设备和计算机可读存储介质
CN111444875B (zh) * 2020-04-07 2024-05-03 珠海格力电器股份有限公司 一种人脸跟踪方法、装置、设备和计算机可读存储介质
CN111814752A (zh) * 2020-08-14 2020-10-23 上海木木聚枞机器人科技有限公司 室内定位实现方法、服务器、智能移动设备、存储介质
CN111814752B (zh) * 2020-08-14 2024-03-12 上海木木聚枞机器人科技有限公司 室内定位实现方法、服务器、智能移动设备、存储介质
CN112101175A (zh) * 2020-09-09 2020-12-18 沈阳帝信人工智能产业研究院有限公司 基于局部图像的高速公路车辆检测及多属性特征提取方法
CN112101175B (zh) * 2020-09-09 2024-05-10 沈阳帝信人工智能产业研究院有限公司 基于局部图像的高速公路车辆检测及多属性特征提取方法
CN113723325A (zh) * 2021-09-03 2021-11-30 安徽大学绿色产业创新研究院 一种装配式预制构件的工装缺陷检测系统
CN113723325B (zh) * 2021-09-03 2023-08-22 安徽大学绿色产业创新研究院 一种装配式预制构件的工装缺陷检测系统
CN114155255A (zh) * 2021-12-14 2022-03-08 成都索贝数码科技股份有限公司 一种基于特定人物时空轨迹的视频横屏转竖屏方法

Also Published As

Publication number Publication date
TWI786313B (zh) 2022-12-11
CN109325967A (zh) 2019-02-12
US20210019627A1 (en) 2021-01-21
EP3770854A1 (en) 2021-01-27
EP3770854A4 (en) 2021-08-04
CN109325967B (zh) 2023-04-07
TW202011268A (zh) 2020-03-16

Similar Documents

Publication Publication Date Title
WO2020052319A1 (zh) 目标跟踪方法、装置、介质以及设备
WO2020187153A1 (zh) 目标检测方法、模型训练方法、装置、设备及存储介质
CN109785368B (zh) 一种目标跟踪方法和装置
CN110321965B (zh) 物体重识别模型的训练方法、物体重识别的方法及装置
CN111417028B (zh) 信息处理方法、装置、存储介质及电子设备
CN109918975B (zh) 一种增强现实的处理方法、对象识别的方法及终端
CN110443190B (zh) 一种对象识别方法和装置
CN111209812B (zh) 目标人脸图片提取方法、装置及终端设备
CN108460817B (zh) 一种拼图方法及移动终端
CN109495616B (zh) 一种拍照方法及终端设备
CN109558000B (zh) 一种人机交互方法及电子设备
WO2015003606A1 (en) Method and apparatus for recognizing pornographic image
CN110555337B (zh) 一种指示对象的检测方法、装置以及相关设备
CN111582116A (zh) 一种视频抹除痕迹检测方法、装置、设备和存储介质
CN112995757B (zh) 视频剪裁方法及装置
CN110766081A (zh) 一种界面图像检测的方法、模型训练的方法以及相关装置
CN103105924A (zh) 人机交互方法和装置
CN110942022A (zh) 投篮数据的输出方法和电子设备
CN111738100B (zh) 一种基于口型的语音识别方法及终端设备
CN110083742B (zh) 一种视频查询方法和装置
WO2024055748A1 (zh) 一种头部姿态估计方法、装置、设备以及存储介质
WO2023137923A1 (zh) 基于姿态指导的行人重识别方法、装置、设备及存储介质
CN110046569B (zh) 一种无人驾驶数据处理方法、装置及电子设备
CN111681255B (zh) 一种对象识别方法和相关装置
CN114140864B (zh) 轨迹跟踪方法、装置、存储介质及电子设备

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: 19861095

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019861095

Country of ref document: EP

Effective date: 20201023

NENP Non-entry into the national phase

Ref country code: DE