CN114820700A - Object tracking method and device - Google Patents

Object tracking method and device Download PDF

Info

Publication number
CN114820700A
CN114820700A CN202210355951.5A CN202210355951A CN114820700A CN 114820700 A CN114820700 A CN 114820700A CN 202210355951 A CN202210355951 A CN 202210355951A CN 114820700 A CN114820700 A CN 114820700A
Authority
CN
China
Prior art keywords
track
objects
determining
image frame
tracking
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
CN202210355951.5A
Other languages
Chinese (zh)
Other versions
CN114820700B (en
Inventor
路金诚
张伟
谭啸
孙昊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202210355951.5A priority Critical patent/CN114820700B/en
Publication of CN114820700A publication Critical patent/CN114820700A/en
Application granted granted Critical
Publication of CN114820700B publication Critical patent/CN114820700B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • G06T7/248Analysis of motion using feature-based methods, e.g. the tracking of corners or segments involving reference images or patches
    • 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
    • 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/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/30241Trajectory

Abstract

The disclosure provides an object tracking method and device, relates to the technical field of artificial intelligence, in particular to the technical field of deep learning and computer vision, and can be applied to scenes such as image processing, target tracking and the like. The specific implementation scheme is as follows: the method comprises the steps of obtaining object characteristics of a first object in a first image frame, wherein the first image frame is obtained by a first device. And acquiring object characteristics and global identification of a plurality of second objects, wherein the second objects are objects entering the acquisition area of the first equipment from the acquisition area of the second equipment. A target object is determined among the plurality of second objects based on the object features of the first object and the object features of the plurality of second objects. And determining the global identification of the target object as the global identification of the first object, and determining the movement track of the first object across the equipment according to the global identification. The technical scheme of the disclosure realizes the cross-device continuous tracking of the object.

Description

Object tracking method and device
Technical Field
The present disclosure relates to the field of deep learning and computer vision technologies in the field of artificial intelligence technologies, and in particular, to an object tracking method and apparatus.
Background
At present, target tracking plays a great role in intelligent transportation, and the main task of target tracking is to locate a target, maintain the identification of the target and record the track of the target.
In order to realize continuous target tracking across devices, it is necessary to provide a method for tracking an object across devices.
Disclosure of Invention
The disclosure provides an object tracking method and device.
According to a first aspect of the present disclosure, there is provided an object tracking method, including:
acquiring object characteristics of a first object in a first image frame, wherein the first image frame is acquired by first equipment;
acquiring object characteristics and global identifications of a plurality of second objects, wherein the second objects are objects entering an acquisition area of the first equipment from an acquisition area of second equipment;
determining a target object in the plurality of second objects according to the object characteristics of the first object and the object characteristics of the plurality of second objects;
and determining the global identification of the target object as the global identification of the first object, and determining the movement track of the first object across equipment according to the global identification.
According to a second aspect of the present disclosure, there is provided an object tracking apparatus including:
the first acquisition module is used for acquiring object features of a first object in a first image frame, wherein the first image frame is acquired by first equipment;
the second acquisition module is used for acquiring object characteristics and global identifiers of a plurality of second objects, wherein the second objects enter the acquisition area of the first equipment from the acquisition area of the second equipment;
a first determining module, configured to determine a target object among the plurality of second objects according to the object feature of the first object and the object features of the plurality of second objects;
and the second determination module is used for determining the global identification of the target object as the global identification of the first object, and determining the movement track of the first object across the equipment according to the global identification.
According to a third aspect of the present disclosure, there is provided an electronic device comprising:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein the content of the first and second substances,
the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of the first aspect.
According to a fourth aspect of the present disclosure, there is provided a non-transitory computer readable storage medium having stored thereon computer instructions for causing the computer to perform the method of the first aspect.
According to a fifth aspect of the present disclosure, there is provided an object tracking system comprising: the system comprises at least one computing unit, a message middleware unit and a track processing unit, wherein each computing unit is provided with corresponding shooting equipment;
the computing unit is used for determining the global identification of the object shot by the corresponding shooting equipment;
the message middleware unit is used for determining a storage queue corresponding to each of a plurality of shooting devices according to image frames acquired by the plurality of shooting devices, wherein the storage queue is used for storing object information of objects entering the shooting range of the shooting devices from the shooting ranges of the rest shooting devices;
the track processing unit is used for determining the movement track of the object across the equipment according to the global identification of the object.
According to a sixth aspect of the present disclosure, there is provided a computer program product comprising: a computer program, stored in a readable storage medium, from which at least one processor of an electronic device can read the computer program, execution of the computer program by the at least one processor causing the electronic device to perform the method of the first aspect.
The technology according to the present disclosure solves the problem that only single device tracking can be achieved for a tracked object.
It should be understood that the statements in this section do not necessarily identify key or critical features of the embodiments of the present disclosure, nor do they limit the scope of the present disclosure. Other features of the present disclosure will become apparent from the following description.
Drawings
The drawings are included to provide a better understanding of the present solution and are not to be construed as limiting the present disclosure. Wherein:
fig. 1 is a scene schematic diagram of an object tracking method provided in an embodiment of the present disclosure;
FIG. 2 is a flowchart of an object tracking method provided by an embodiment of the present disclosure;
fig. 3 is a second flowchart of an object tracking method provided in the embodiment of the present disclosure;
fig. 4 is a schematic diagram of an implementation of determining a bounding box of a first object according to an embodiment of the present disclosure;
fig. 5 is a schematic diagram illustrating an implementation of determining a sub-image of a first object according to an embodiment of the present disclosure;
fig. 6 is a schematic diagram illustrating an implementation of determining a matching object of a first object according to an embodiment of the present disclosure;
fig. 7 is a schematic diagram of an implementation of determining a second object according to an embodiment of the present disclosure;
FIG. 8 is a schematic diagram illustrating an implementation of a store queue according to an embodiment of the present disclosure;
fig. 9 is a flowchart three of an object tracking method provided by the embodiment of the present disclosure;
FIG. 10 is a schematic illustration of determining a distance traveled provided by an embodiment of the present disclosure;
fig. 11 is a schematic structural diagram of an object tracking system provided in an embodiment of the present disclosure;
FIG. 12 is a schematic diagram of an object tracking apparatus according to an embodiment of the disclosure;
FIG. 13 is a block diagram of an electronic device for implementing an object tracking method of an embodiment of the present disclosure.
Detailed Description
Exemplary embodiments of the present disclosure are described below with reference to the accompanying drawings, in which various details of the embodiments of the disclosure are included to assist understanding, and which are to be considered as merely exemplary. Accordingly, those of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope and spirit of the present disclosure. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
In order to better understand the technical solution of the present disclosure, the related art of the present disclosure is described below.
At present, target tracking plays a great role in intelligent transportation, and the main task of target tracking is to locate a target, maintain the identification of the target and record the track of the target. The target tracking can be widely applied to the fields of robot navigation, intelligent monitoring video, industrial detection, aerospace, automatic driving and the like.
It will be appreciated that target tracking is typically the tracking of a target in a given video. Wherein target tracking may include single target tracking, such as tracking a single target in a given video. And target tracking may also include multi-target tracking, such as tracking multiple targets simultaneously in a given video.
In the prior art, most target tracking methods only maintain target tracks under a single device, and cannot achieve continuous tracking across devices. However, continuous tracking across devices can obtain the complete track of a target under the shooting visual field of a plurality of devices, and the method can play a great role in road management of cities, high speeds and the like and digital twin scenes.
Therefore, to solve the problems in the prior art, the present disclosure provides an object tracking method, which can achieve continuous tracking of a target across devices. In a possible implementation manner, the device in this embodiment may be, for example, a camera, or other devices with a shooting function, and in an actual implementation process, a specific implementation of the device may be selected and set according to an actual requirement, which is not limited by this disclosure.
Taking a device as a camera as an example, a system structure of the object tracking method in the present disclosure is described with reference to fig. 1, where fig. 1 is a scene schematic diagram of the object tracking method provided in the embodiment of the present disclosure.
As shown in fig. 1, in a cross-device object tracking implementation scenario, multiple cameras and a server are included. The camera and the server can communicate with each other.
The camera can shoot images, the shot images are sent to the server, and the server conducts target continuous tracking across the cameras based on the images shot by the multiple cameras. The server in the present disclosure may be a local server, and may also be a cloud server, which is not limited herein.
Based on the above description, the object tracking method in the present disclosure is described below with reference to specific embodiments. Fig. 2 is a flowchart of an object tracking method according to an embodiment of the present disclosure.
As shown in fig. 2, the method includes:
s201, acquiring object characteristics of a first object in a first image frame, wherein the first image frame is acquired by first equipment.
In this embodiment, the first device performs image capturing within its own visual field range, thereby acquiring a first image frame. The first device may be any device for target tracking, for example, a camera disposed in a road, or a camera disposed in a building, or may also be a camera, and the like, which is not limited in this embodiment.
And it will be appreciated that the first device will take a video, including a plurality of image frames in the video taken by the first device, and in one possible implementation the same operation will be performed for each image frame taken by the first device. Therefore, the first image frame may be any one image frame acquired by the first device, and the embodiment does not limit the first image frame.
In the first image frame, a first object may be included, where the first object may be, for example, a vehicle, or may also be a pedestrian, or may also be an animal, and so on, and all objects that need to be tracked may be determined as the first object in this embodiment.
And in a possible implementation, a plurality of objects to be tracked may be included in the first image frame, and then each object may be processed separately, where the first object is taken as an example for description, and the implementation of the other objects is similar.
In one possible implementation, for example, feature extraction may be performed on the first image frame to determine an object feature of the first object in the first image frame. The object feature of the first object may be, for example, feature extraction performed by the feature extraction model on the first object in the first image frame, and the obtained feature vector, feature matrix, and the like.
S202, acquiring object characteristics and global identification of a plurality of second objects, wherein the second objects are objects entering an acquisition area of the first equipment from an acquisition area of the second equipment.
And a second device is further present in this embodiment, where the first device and the second device may be adjacently disposed devices, that is, an object may enter the acquisition area of the first device after leaving the acquisition area of the second device, where a space may exist between the acquisition area of the first device and the acquisition area of the second device. The first device and the second device may be devices having a shooting function, and therefore the acquisition region in this embodiment may also be understood as a shooting region.
The second object in this embodiment is an object that enters the acquisition area of the first device from the acquisition area of the second device.
In this embodiment, a second object entering the acquisition area of the first device from the acquisition area of the second device may be determined, and the number of the second objects may be multiple. Thus, object features of a plurality of second objects may be obtained, and a global identification of the plurality of second objects may be obtained.
The global identification is an identification marked for the object in the process of tracking the object, and the global identification of one object is always unique in the process of tracking the object once. The specific setting mode of the global identifier may be selected according to actual requirements, which is not limited in this embodiment.
S203, determining a target object in the plurality of second objects according to the object characteristics of the first object and the object characteristics of the plurality of second objects.
It is understood that the first object is an object currently existing in the acquisition area of the first device, and the second object is an object entering the acquisition area of the first device from the acquisition area of the second device, then in a plurality of second objects, there is a possibility that the current first object exists. Say a vehicle a, enters the acquisition area of the first device from the acquisition area of the second device, then the vehicle a is the second object. Meanwhile, the vehicle a is currently captured in the first image frame, and the vehicle a may be the first object in the present embodiment, that is, the first object may exist in the second object described above, which is essentially a movement of an object from one area to another area.
Therefore, in the embodiment, after determining the object feature of the first object and the object features of the plurality of second objects, the target object may be determined in the plurality of second objects, wherein the similarity between the object feature of the target object and the object feature of the first object is greater than or equal to the preset threshold. Then the target object in the second object can be determined, which is in fact the same object as the current first object.
S204, determining the global identification of the target object as the global identification of the first object, and determining the movement track of the first object across the equipment according to the global identification.
Since it is determined that the target object and the first object are actually one object, the global identity of the target object may be determined as the global identity of the first object. The same global identification is always kept in the tracking process aiming at the same object. And then a cross-device movement trajectory of the first object may be determined based on the global identification.
In one possible implementation, after determining the global identifier of the object, a unique identifier may be performed on the object, and then, according to the unique identifier, the previous movement of the object is determined, and then the movement of the object is continuously tracked, so as to determine the movement track of the first object across the devices.
The object tracking method provided by the embodiment of the disclosure comprises the following steps: the method comprises the steps of obtaining object characteristics of a first object in a first image frame, wherein the first image frame is obtained by a first device. And acquiring object characteristics and global identification of a plurality of second objects, wherein the second objects are objects entering the acquisition area of the first equipment from the acquisition area of the second equipment. A target object is determined among the plurality of second objects based on the object features of the first object and the object features of the plurality of second objects. And determining the global identification of the target object as the global identification of the first object, and determining the movement track of the first object across the equipment according to the global identification. The method comprises the steps of matching according to object features of a first object shot by first equipment and object features of a plurality of second objects shot by second equipment, determining a target object similar to the first object features in the plurality of second objects, further determining that the target object and the first object are the same object, giving a global identification of the target object to the first object to achieve the purpose of giving the same identification to the same object under different equipment at different moments, and then determining a movement track of the first object across the equipment according to the unique identification of the first object to achieve continuous tracking of the objects across the equipment.
For the reader to more deeply understand the implementation principle of the present disclosure, the embodiment shown in fig. 2 is now further detailed in conjunction with fig. 3 to 8 below. Fig. 3 is a second flowchart of the object tracking method provided by the embodiment of the present disclosure, fig. 4 is an implementation schematic diagram of determining a bounding box of a first object provided by the embodiment of the present disclosure, fig. 5 is an implementation schematic diagram of determining a sub-image of the first object provided by the embodiment of the present disclosure, fig. 6 is an implementation schematic diagram of determining a matching object of the first object provided by the embodiment of the present disclosure, fig. 7 is an implementation schematic diagram of determining a second object provided by the embodiment of the present disclosure, and fig. 8 is an implementation schematic diagram of a storage queue provided by the embodiment of the present disclosure.
As shown in fig. 3, the method includes:
s301, processing the first image frame according to the target detection network, and determining a surrounding frame including the first object in the first image frame.
In this embodiment, the first device may capture a plurality of first image frames, and the server may obtain the plurality of first image frames obtained by the first device, and then perform similar processing on all the plurality of first image frames, which is described below with reference to any one of the first image frames as an example.
Based on the above description it may be determined that the first object may be included in the first image frame, since the object feature subsequently needs to be acquired for the first object, so that currently, for example, the object detection may be performed first for the first image frame.
In one possible implementation, the first image frame may be processed, for example, according to an object detection network, to determine a bounding box including the first object in the first image frame.
For example, as can be understood by referring to fig. 4, as shown in fig. 4, a first image frame 401 currently exists, and a car, which is a first object in the present embodiment, exists in the first image frame 401. For example, the first image frame 401 may be input to an object detection network, and the object detection network outputs a detection result, which specifically includes the bounding box 402 including the first object determined in the first image frame.
And in an alternative implementation, the target detection network may also output a category of the first object, i.e., "car" in fig. 4, and a detection confidence of the first object, i.e., "1.00" in fig. 4. The category of the first object may be, for example, a binary category of an automobile or a non-automobile, or the category of the first object may also be a fine category of an automobile, a truck, a passenger car, a pedestrian, and the like. The target detection network may be any detection model, and the specific implementation of the target detection network is not limited in this embodiment, and the target detection network may be selected according to actual requirements.
It should be further noted that, if a plurality of objects may be included in the first image frame, the object detection network may output the bounding box, the category, and the confidence of each object when outputting the object detection network. However, the processing manners for the objects are similar, so only the processing procedure of the first object is described below, and the implementation manner of each object is not described again.
S302, a partial image surrounded by the surrounding frame in the first image frame is determined as a sub-image of the first object.
After determining the bounding box comprising the first object in the first image frame, for example, a partial image enclosed by the bounding box in the first image frame may be determined as a sub-image of the first object, where the sub-image only comprises the first object.
For example, as can be understood with reference to fig. 5, referring to fig. 5, in a first image frame 501, a bounding box of a first object is 502, and a partial image, which is surrounded by the bounding box of the first object 501 in the first image frame 501, is divided, so as to obtain a sub-image 503 of the first object.
S303, processing the sub-image of the first object according to the feature extraction network to obtain the object feature of the first object.
After determining the sub-image of the first object, the sub-image of the first object may be processed by a feature extraction network, and referring to fig. 5, the sub-image 503 of the first object may be input to the feature extraction network, and the feature extraction network outputs the object features of the first object. The selection of the feature extraction network may be selected and set according to actual requirements, which is not particularly limited in this embodiment.
It should be noted that, in this embodiment, the sub-image of the first object is determined, and then feature extraction is performed on the sub-image of the first object, so as to obtain the object feature of the first object. Compared with the method for extracting the characteristics of the first object directly aiming at the first image frame, the method can effectively ensure the accuracy and the processing speed of the obtained object characteristics of the first object.
S304, acquiring the position information of the first object in the first image frame.
And, the present embodiment may also acquire position information of the first object in the first image frame. The position information may be, for example, coordinates of four corner points of a bounding box of the first object in the first image frame, or may also be coordinates of a center point of the bounding box of the first object in the first image frame. The present embodiment does not limit the specific implementation of the position information, as long as the position information can reflect the position of the first object in the first image frame.
And S305, acquiring object characteristics and position information of a plurality of third objects in a previous image frame of the first image frame.
In this embodiment, it is necessary to implement cross-device tracking on the first object, and in a possible implementation manner, for example, a single-device tracking may be performed on the first object under the current device first, so as to ensure that the presence of the first object is stably and effectively detected.
And it can be understood that when the camera is shooting, it will continuously shoot for a long time, and the first image frame has the adjacent last image frame. To enable single device tracking of the first object, in one possible implementation, for example, a previous image frame to the first image frame may be acquired first.
If a plurality of third objects exist in the previous image frame, object features and position information of the plurality of third objects in the previous image frame may be acquired.
Here, the implementation manner of determining the object features and the location information of the multiple third objects in the previous image frame of the first image frame is similar to the implementation manner of determining the object features and the location information for the first object in the first image frame described above, and is not described herein again.
S306, determining a matching object in the plurality of third objects according to the object feature and the position information of the first object and the object features and the position information of the plurality of third objects, wherein the similarity between the object feature of the matching object and the object feature of the first object is greater than or equal to a preset threshold value, and the position information of the matching object and the position information of the first object meet a preset position relation.
It will be appreciated that the first image frame and a previous image frame to the first image frame are adjacent image frames, and then an object present in the previous image frame will also be present in the first image frame as long as it does not leave the acquisition area of the first device.
For example, as can be understood by referring to fig. 6, as shown in fig. 6, there are two adjacent image frames currently, wherein 602 is a first image frame, and 601 is a previous image frame adjacent to the first image frame.
In connection with fig. 6 it may be determined that the vehicle 605 and the vehicle 606 are included in the first image frame 602 and that the vehicle 603 and the vehicle 604 are included in the last image frame 601 of the first image frame. It can be appreciated from the figures that vehicle 605 and vehicle 603 are actually the same vehicle, and that vehicle 606 and vehicle 604 are actually the same vehicle, but at different positions in the image frames at different times.
In the present embodiment, it is necessary to determine a matching object of the first object among the plurality of third objects in the previous image frame. The matching object here is actually the same object as the first object.
Specifically, the object feature and the position information of the first object and the object features and the position information of the plurality of third objects are determined. A matching object may currently be determined among the plurality of third objects based on the object feature and the location information of the first object and the object feature and the location information of the plurality of third objects.
In one possible implementation manner, the similarity between the object feature of the matching object and the object feature of the first object is greater than or equal to a preset threshold, and the position information of the matching object and the position information of the first object satisfy a preset position relationship.
The preset position relationship may be, for example, that the matching object is located in front of the first object, or the matching object is located behind the first object, or the position distance between the matching object and the first object meets a preset distance interval, and so on.
Then in the example of fig. 6, if the vehicle 605 in the first image frame 602 is the first object, the vehicle 603 and the vehicle 604 are the third objects in the last image frame 601 of the first image frame. Then, based on the above-described manner, it can be determined that the vehicle 603 is a matching object corresponding to the current first object, for example. For another example, assuming that the vehicle 606 in the first image frame 602 is the first object, it may be determined that the vehicle 604 is the matching object corresponding to the current first object.
S307, acquiring the tracking identification of the matched object, and determining the tracking identification of the matched object as the tracking identification of the first object.
After determining the matching object, a tracking identifier of the matching object may be obtained, where the tracking identifier is an identifier within a range of a single device for distinguishing between multiple objects photographed by the single device.
For example, under the first device, the tracking of the object identifies the presence of the vehicle 1, the vehicle 2, the vehicle 3, the vehicle 4, the vehicle 5. Under the second device, the tracking identifier of the object may also be present in vehicle 1, vehicle 2, vehicle 3, vehicle 4, vehicle 5. However, the vehicle 1 under the first apparatus and the vehicle 1 under the second apparatus are independent of each other, and the same vehicle is not necessarily indicated. That is, tracking identifiers are identified for objects under a single device, whereas the global identifiers introduced above are identified for objects across devices.
When the tracking identifier of the matching object is obtained, for example, it may be determined whether the tracking identifier of the matching object is stored in the preset storage space.
In a possible implementation manner, if the tracking identifier of the matching object is stored, it indicates that the matching object is identified according to the image frame acquired by the first device, so that the tracking identifier of the object is determined. For such a situation, the tracking identifier of the matching object may be directly obtained from the preset storage space.
In another possible implementation manner, if the tracking identifier of the matching object does not exist in the preset storage space, it indicates that the object has not been recognized before according to the image frame acquired by the first device, that is, the object is currently recognized under the first device for the first time, in this case, a new tracking identifier needs to be allocated to the matching object, so as to determine the tracking identifier of the matching object.
The specific implementation of the tracking identifier may be selected according to actual requirements, for example, the tracking identifier may be sequentially incremented by the vehicle 1, the vehicle 2, and the vehicle 3, or may also be the vehicle a, the vehicle b, the vehicle c, and the like. As long as it is possible to distinguish between a plurality of objects under the first device.
Since the matching object and the first object are essentially the same object located in adjacent image frames, after determining the tracking identity of the matching object, the tracking identity of the matching object may be determined as the tracking identity of the first object, thereby enabling tracking of the first object under the first device.
Based on the above description, it can be determined that the first object in the present embodiment is also likely to be recognized within the range of the first device for the first time. In another possible implementation, if it is determined that there is no matching object of the first object in the previous image frame of the first image frame, a new tracking identifier may be directly assigned to the first object.
S308, if the first object is identified in the continuous N image frames acquired by the first equipment according to the tracking identification of the first object, acquiring object characteristics and global identifications of a plurality of second objects from the storage queue.
After determining the tracking identity of the first object, it may be determined whether the first object is recognized in each of N consecutive image frames acquired by the first device according to the tracking identity of the first object. Wherein N is an integer of 1 or more.
Assuming that the tracking identifier of the first object is the vehicle 1, the number of first image frames that continuously identify the vehicle of the vehicle 1 may be determined according to the tracking identifier of the vehicle 1, and if the determined number is N, that is, the first object is identified in the N continuous image frames acquired by the first device, it may be determined that the first object has been continuously tracked in the acquisition area of the first device, and then only the determination of the global identifier may be performed for the first object.
Or, if it is determined that the number of first image frames in which the first object is continuously recognized is equal to or less than N, it is necessary to determine whether the first object is continuously tracked based on the object recognition result in the subsequent image frame, and when it is determined that the first object is continuously tracked, perform the subsequent processing.
It should be noted that, after the first object is determined to be continuously tracked, the global identifier is determined for the first object, which can effectively avoid that the subsequent unnecessary processing for determining the global identifier is caused by the object false detection or the very short-time lens obstacle, so as to reduce the subsequent unnecessary data processing amount when determining the global identifier of the object, and further improve the object tracking efficiency.
Specifically, when determining the global identifier of the first object, a second object needs to be determined, where the second object enters the acquisition area of the first device from the acquisition area of the second device, and the second device and the first device may be, for example, cameras that are shot adjacently.
The second device and the second object may be further described in detail with reference to fig. 7, assuming that the first device and the second device are both cameras, as shown in fig. 7, assuming that a first camera 701 and a second camera 702 currently exist, wherein an acquisition area of the first camera 701 may be, for example, shown as 703 in fig. 7, and an acquisition area of the second camera 702 may be, for example, shown as 704 in fig. 7. The first camera 701 and the second camera 702 are cameras for adjacent shooting.
Assume that at some point in time, the vehicle is traveling as shown at 70a, and the vehicle is located within the acquisition area of the second device 702. And at some later point in time, the vehicle is within the acquisition area of the first device 701 as shown in the driving situation diagram 70b of the vehicle. The vehicle is the object that enters the acquisition area of the first device from the acquisition area of the second device and thus the object can be determined to be the second object corresponding to the first device 701.
When determining the second object, in a possible implementation manner, for example, object features and global identifiers of a plurality of second objects may be stored in a storage queue corresponding to the first device, where relevant information stored in the storage queue may be determined by the server and stored in the storage queue. In this embodiment, the object characteristics and the global identifier of the plurality of second objects may be obtained from the storage queue.
S309, determining a target object in the plurality of second objects according to the object characteristics of the first object and the object characteristics of the plurality of second objects.
After determining the first object and the object features, in this embodiment, matching may be performed according to the object features of the first object and the object features of the plurality of second objects, and an object having a similarity greater than or equal to a preset threshold with the object features of the first object is determined as the target object.
In one possible implementation manner, if it is determined that there are a plurality of second objects having similarity greater than or equal to a preset threshold with respect to the object feature of the first object, for example, the second object having the highest similarity may be determined as the target object.
For example, as described in further detail with reference to fig. 8, as shown in fig. 8, assuming that the object feature of the second object a, the object feature of the second object b, the object feature of the second object c, and so on exist in the storage queue currently, the similarity may be sequentially calculated according to the object feature of the first object and the object features of the plurality of second objects, so as to obtain the feature similarity between the first object and the plurality of second objects.
Assuming that the similarity of the second object b with the object feature of the first object is greater than or equal to a preset threshold, the second object b may be determined as the target object. Or, assuming that the similarity between the second object b and the second object c and the object feature of the first object is greater than or equal to a preset threshold, and assuming that the similarity between the features of the second object c is maximum, the second object c may be determined as the target object.
In a possible implementation manner, after the target object matching the first object is determined, it indicates that the target object (i.e., the second object) has been identified in the acquisition area of the first device, and then matching processing is not required to be performed on the second object subsequently, so that the related information of the target object can be deleted from the storage queue.
S310, determining the global identification of the target object as the global identification of the first object.
After determining the target object, a global identification of the target object may be obtained, and the global identification of the target object is determined as the global identification of the first object.
The implementation manner of obtaining the global identifier of the target object is similar to the above-described implementation manner of obtaining the tracking identifier of the matching object.
In a possible implementation manner, if the global identifier of the target object is stored in the preset storage space, it indicates that the target object is identified (no matter which device is), so that the global identifier of the target object is determined. For such a situation, the global identifier of the target object may be directly obtained from the preset storage space.
In another possible implementation manner, if the global identifier does not exist in the preset storage space, it indicates that no matter which device has previously recognized the object, that is, the object is currently recognized for the first time, in this case, a new global identifier needs to be allocated to the target object, so as to determine the global identifier of the target object.
The specific implementation of the global identifier may be selected according to actual requirements, for example, the specific implementation of the global identifier may be sequentially increased by the vehicles 1, 2, and 3, or may also be the vehicles a, b, and c, and the like. As long as it is possible to distinguish between different objects under a plurality of devices.
And similarly, if it is determined that the target object corresponding to the first object does not exist in the plurality of second objects of the storage queue, a new global identifier may be directly allocated to the first object.
S311, according to the global identification, a first track associated with the global identification is obtained, wherein the first track is a continuous moving track of the first object passing through at least one device before the first device.
After determining the global identification of the first object, the movement track of the first object can be determined according to the global identification.
In a possible implementation manner, before the first device captures the first object, multiple devices may capture the first object, and then the first object leaves corresponding movement tracks in an acquisition area of each device, where the movement tracks are associated with the global identifier. A first track associated with the global identifier may be obtained according to the global identifier, where the first track is a continuous moving track of the first object under at least one device that the first object passes through before the first device.
And S312, determining a second track of the first object under the first device according to the image frame acquired by the first device.
And the first object still moves under the current first device to form a moving track, and then a second track of the first object under the first device can be determined according to the image frame acquired by the first device. In a possible implementation manner, if there is a preset conversion relationship between the position in the image frame and the position in the real scene, for example, the position of the first object in the image frame acquired by the first device may be determined, and the position of the first object in the real scene is determined according to the preset conversion relationship, and then the second trajectory of the first object under the first device is determined according to the plurality of image frames.
And S313, determining a movement track of the first object across the equipment according to the first track and the second track.
The first track and the second track are both the movement tracks of the first object, and then the movement track of the first object across the equipment can be determined according to the first track and the second track.
In a possible implementation manner, if the first track and the second track are continuous tracks, splicing the first track and the second track to obtain a cross-device moving track of the first object; alternatively, the first and second electrodes may be,
if the first track and the second track are discontinuous tracks, carrying out interpolation processing according to the first track and the second track to obtain an interpolation track between the first track and the second track; and sequentially splicing according to the first track, the interpolation track and the second track to obtain the cross-equipment moving track of the first object.
It is to be understood that, when determining the movement track of the first object across the devices, it may be after the journey of the first object is completed, and based on the above-described process, the movement track of the first object is determined. Alternatively, the moving track of the first object may be determined in real time from the acquired image frames during the driving of the first object based on the above-described process.
After determining the movement trajectory of the first object, the movement trajectory of the first object may be displayed on a graphical user interface, for example.
It should be noted that, what has been described above is an implementation manner of determining a movement trajectory across devices for a single first object, and actually, an implementation manner for multiple objects is similar, that is, it is enough to perform processing for multiple objects separately, so that in this disclosure, tracking of multiple objects across devices can be actually achieved.
The object tracking method provided by the embodiment of the disclosure comprises the following steps: the method comprises the steps of performing target detection on a first image frame acquired by first equipment, determining a bounding box of a first object in the first image frame, further determining a sub-image of the first object according to the bounding box of the first object, and performing characteristic extraction on the sub-image, so as to determine the object characteristic of the first object, thereby improving the accuracy of determining the object characteristic of the first object and the processing efficiency. And determining a matching object of the first object in the plurality of third objects by matching the first object in the current first image frame with the plurality of third objects in the last image frame of the first image frame, and then determining the tracking identifier of the matching object as the tracking identifier of the first object, thereby realizing the tracking of the first object under the first device based on the tracking identifier. And subsequently, according to the tracking identifier, when the continuous tracking of the first object is determined, determining the global identifier for the first image, thereby effectively avoiding unnecessary operation of determining the global identifier for the object which is detected by mistake and occurs accidentally. And when the global identification is determined, object features and global identifications of a plurality of second objects are acquired from the storage queue, wherein the second objects are objects entering the acquisition area of the first device from the acquisition area of the second device, so that target objects matched with the first objects can be determined in the plurality of second objects, the global identifications of the target objects are determined as the global identifications of the first objects, and the tracks of the first objects under the passing devices can be further determined according to the global identifications of the first objects, and then the moving tracks of the first objects across the devices can be obtained through splicing, so that the continuous tracking of the first objects across the devices can be effectively realized.
Based on the above embodiments, it can be understood that when the first object is matched with a plurality of second objects, the relevant information of the plurality of second objects can be obtained from the storage queue corresponding to the first device, so as to determine the target object. Accordingly, before obtaining the related information of the second objects from the storage queue, the server needs to determine the second objects and store the related information of the second objects in the storage queue, so as to be able to satisfy the subsequent matching process. The following describes an implementation of determining the second object by the server in conjunction with a specific embodiment.
Fig. 9 is a third flowchart of the object tracking method provided in the embodiment of the present disclosure, and fig. 10 is a schematic diagram of determining a travel distance provided in the embodiment of the present disclosure.
As shown in fig. 9, the method includes:
and S901, acquiring the positions of a plurality of fourth objects in a second image frame, wherein the second image frame is acquired by a second device.
In this embodiment, the second device may also capture a plurality of image frames, and the image frames acquired by the second device are referred to as second image frames herein. It is also understood that the second device may capture a plurality of second image frames, and the following operations are performed for each second image frame, and the implementation manner for each second image frame is similar, so that only the processing procedure for a single second image frame is described below, and the description of the rest is omitted.
In the present embodiment, a plurality of objects may be included in the second image frame, where the object included in the second image frame is made a fourth object.
In one possible implementation, the server may determine the respective positions of a plurality of fourth objects in the second image frame, where the positions of the fourth objects are determined, and similar to the implementation of determining the objects in the first image frame described above, the positions of the fourth objects in the second image frame may be determined by determining the bounding box of the fourth objects. For specific implementation, reference may be made to the above description, and details are not described herein.
S902, determining the driving distance of the fourth object from the acquisition area of the second device according to the position of the fourth object, the movement information of the fourth object and the acquisition area of the second device, wherein the movement information comprises at least one of the following: a moving speed of the fourth object, a moving direction of the fourth object.
After determining the position of the fourth object, in this embodiment, movement information of the fourth object may also be determined, where the movement information of the fourth object may include at least one of the following: a moving direction of a moving speed of the fourth object. And it will be appreciated that at different times, the direction of movement of the object and the speed of movement of the object may both be different, only the speed and position corresponding to the time of the current second image frame being acquired.
And in this embodiment, the acquisition area of the second device may also be determined.
After determining the information, a distance that the fourth object needs to travel away from the current acquisition area of the second device may be determined according to the position of the fourth object, the movement information of the fourth object, and the acquisition area of the second device. More colloquially, that is to say, determining how far the fourth object needs to travel, will leave the acquisition area of the second device.
The implementation of determining the travel distance is described herein with reference to fig. 10, and as shown in fig. 10, it is assumed that a second device 1002 currently exists, and the acquisition area of the second device 1002 is 1004 shown in fig. 10. And assuming that the fourth object is the vehicle shown in fig. 10, the position of the fourth object is currently shown as 1005 in fig. 10, that is, the center point position of the vehicle. And the moving direction to which the fourth object moves is the direction indicated by the arrow a in fig. 10. Then based on the acquisition area of the second device, the position of the fourth object, the moving speed of the fourth object, and the moving direction of the fourth object, the driving distance d that the fourth object needs to travel to leave the acquisition area 1004 of the second device can be determined, that is, the vehicle will leave the acquisition area of the second device after the driving distance d.
Fig. 10 is merely an exemplary illustration, and in an actual implementation process, the position of the fourth object may also be, for example, a position of a vehicle head, a position of a vehicle tail, and the like, which is not limited in this embodiment. The movement information of the fourth object may include, for example, a movement acceleration in addition to the movement speed and the movement direction described above, and the embodiment does not limit the movement information of the fourth object, and the movement information may be selected according to actual requirements, and all information related to the movement of the fourth object may be used as the movement information in the embodiment.
And S903, when the driving distance is determined to be smaller than the preset distance, determining an object to enter an acquisition area of the first equipment in the plurality of fourth objects as a second object according to the setting information of the equipment and the moving directions of the plurality of fourth objects.
After determining the travel distance of the fourth object from the acquisition area of the second device, for example, the travel distance may be compared with a preset distance, and when determining that the travel distance is less than the preset distance, it may be determined that the fourth object is about to leave the acquisition area of the second device. It will be appreciated that a fourth object leaving the acquisition area of the second device will necessarily enter the acquisition area of another device.
Therefore, in a possible implementation manner, for example, the device corresponding to each fourth object may be determined according to the setting information of the device and the current moving directions of the plurality of fourth objects, where the corresponding device refers to that the fourth object enters the acquisition area of the fourth object later.
Meanwhile, since the present embodiment describes that the corresponding second object is determined for the first device, an object to enter the acquisition area of the first device among the plurality of fourth objects may be determined as the second object.
For example, there currently exist 3 fourth objects, which are the fourth object x, the fourth object y and the fourth object z. Wherein the fourth object x and the fourth object y enter the acquisition area of the first device after leaving the acquisition area of the second device. And the fourth object z will enter the acquisition area of the rest of the devices (not the first device), so that it can be determined that the fourth object x and the fourth object y are the second objects in the 3 fourth objects.
And S904, storing the object characteristics and the global identification of the second object into a storage queue corresponding to the first device.
After the second object is determined, the object feature and the global identifier of the second object may be obtained, and it is understood that the current second object has left the obtaining area of the second device, and therefore, the corresponding feature extraction and global identifier determination operations have been performed before (in the same manner as the above implementation), so that the object feature and the global identifier of the second object may be directly obtained here.
And then storing the object characteristics and the global identification of the second object into a storage queue corresponding to the first device.
In a possible implementation, there may also be a certain distance between the first device and the second device. That is, it may take some time for the second object to leave the acquisition area of the second device and enter the acquisition area of the first device. Therefore, the server can also estimate the driving time required for the second object to enter the acquisition area of the first device according to the movement information of the second object and the spacing distance between the first device and the acquisition area of the second device.
And then when the driving time reaches a long time, the related information of the second object is stored in the storage queue, so that the information of the second object is prevented from being stored in the storage queue too early, and unnecessary matching processing is performed when object matching is performed on the first object, and the data processing amount for determining the global identifier of the first object is reduced.
It should be further noted that, in this embodiment, the operation of determining the second object and storing the information related to the second object in the storage queue is performed in real time for each second image frame acquired by the second device. The second object in the store queue is continually updated.
According to the object tracking method provided by the embodiment of the disclosure, a plurality of fourth objects in a second image frame acquired by a second device are determined, then, according to the positions of the fourth objects, the movement information of the fourth objects and the acquisition area of the second device, the driving distance which the fourth objects need to travel when exiting from the acquisition area of the second device is determined, then, the driving distance is compared with the preset distance, and when the fourth objects are determined to exit from the acquisition area of the second device, according to the setting information of the device and the movement direction of the fourth objects, the corresponding devices of the fourth objects which are to enter the acquisition area are determined. And then determining an object to enter the acquisition area of the first device as a second object corresponding to the first device, storing object characteristics and a global identifier of the second object in a storage queue corresponding to the first device, so that the object to enter the acquisition area of the first device from the acquisition area of the second device can be effectively determined, storing information of the object in the storage queue, and performing pre-identification work of the cross-device object, thereby quickly and effectively determining a target object matched with the first object in a subsequent implementation process, and realizing cross-device object tracking.
It will be appreciated that the above embodiments, all described in the context of standing at the first device, describe a process for tracking a first object in the first device. Meanwhile, when describing an object to enter the first device, only a second object entering the acquisition area of the first device from the acquisition area of the second device is also described. However, in the actual implementation process, the processing procedure of the server for each device is similar, the above operation is performed for each device, and when determining an object to enter an acquisition area of a certain device, the determination is performed according to the object acquired by the rest of the devices.
Accordingly, there is also provided in the present disclosure an object tracking system comprising: the system comprises at least one computing unit, a message middleware unit and a track processing unit, wherein each computing unit is provided with corresponding shooting equipment;
the computing unit is used for determining the global identification of the object shot by the corresponding shooting equipment;
the message middleware unit is used for determining a storage queue corresponding to each of the plurality of shooting devices according to the image frames acquired by the plurality of shooting devices, and the storage queue is used for storing object information of objects entering the shooting range of the shooting devices from the shooting ranges of the rest of the shooting devices;
the track processing unit is used for determining the movement track of the object across the equipment according to the global identification of the object.
It should be noted that the object tracking system in this embodiment may be implemented by using the object tracking method and the object tracking apparatus described in each embodiment in this disclosure.
The shooting device may be a camera, or the like, and the embodiment does not limit the specific implementation of the shooting device, and any device that can be used for image shooting may be used as the shooting device in the embodiment.
Based on the above description, the object tracking system provided by the embodiment of the present disclosure is further described in detail in a form of an overall structure with reference to fig. 11.
Fig. 11 is a schematic structural diagram of an object tracking system according to an embodiment of the present disclosure.
As shown in fig. 11, fig. 11 illustrates a framework of the object tracking system proposed by the present disclosure. The whole processing system comprises at least one computing unit, a message middleware unit and a track processing unit.
Each device corresponds to one computing unit, each computing unit comprises three parts, namely target detection, single-device tracking and cross-device tracking.
In each computing unit, the target detection unit may be implemented by, for example, a convolutional neural network, and the network structure may be, for example, PPYOLO-V2 (a target detection network), that is, the target detection network described above. The input of the target detection network is a single-frame image frame, and the image frame is an image frame acquired by a device corresponding to the current computing unit. And the output of the target detection network is the bounding box location, the category, and the confidence score of the object on the image frame.
And processing by the single device tracking unit can be performed based on the result of the target detection unit, and in the processing process of the single device tracking unit, the image frame of a single frame and the result of target detection are input, and the tracking identifier of each object under the current device is output.
Specifically, a small graph formed by enclosing each object may be input into a convolutional neural network (i.e., the feature extraction network described in the above embodiment), so as to obtain object features of the object, where the object features may be, for example, ReID feature vectors, which represent appearance information of the object, and position information of the object may be determined. And then, combining the object characteristics and the position information, and performing correlation matching on the detection result of the current image frame and the tracking result of the previous image frame, so as to endow the same object with the same tracking identifier. For the specific implementation herein, reference may be made to the above description of determining the matching object of the first object, and details are not described here. Wherein, ReiD is pedestrian Re-identification (Person Re-identification)
And the input of the cross-device tracking unit comprises two parts, wherein one part is the object tracking result under the current device, the other part is the object tracking result under other devices which are subscribed from the message middleware and can enter the acquisition area of the device at the current time.
In the tracking result of the cross-device tracking on the current device, the partial object (such as the first object) which does not obtain the global identification is matched with the object (such as the second object) under other devices which may enter the field of view of the device.
In one possible implementation manner, for example, a similarity between object features may be determined, then a second object whose similarity with the object features of the first object is greater than or equal to a preset threshold is determined as a target object, and then a global identifier of the target object is determined as a global identifier of the first object.
Or performing hungarian matching according to the cosine distance of the object features, setting a preset threshold (for example, 0.3) of the similarity, and then regarding the matching pairs with the cosine similarity distance smaller than the threshold in the matching result as the same object, thereby determining the global identity given to the global identity.
And besides the above-described computing unit, the message middleware unit needs to process the multi-target tracking result output by the computing unit, for example, the tracking result that the current time slot may enter the downstream shooting device may be distributed to the computing unit of the corresponding shooting device according to the image frames shot by the multiple shooting devices and the topology information of the road, and may be stored in the storage queue corresponding to the shooting device, for example.
And objects that do not reappear beyond a certain time can be removed from the storage queue to avoid unnecessary object matching each time.
It should be further noted that the message middleware unit in this embodiment is equivalent to a centralized processing center of information of each shooting device, and after determining the global identifier and the tracking result of the object, for example, the computing unit of each shooting device may transmit the global identifier and the tracking result of the object to the message middleware unit, and then the message middleware unit may further transmit the global identifier and the tracking result of the object to the trajectory processing unit.
The track processing unit may then, for example, obtain the global identifier and tracking result of the object from the message middleware unit, and then record the complete track of each object according to the global identifier and tracking result of the object, and for the interval area between the devices, the track may be supplemented by interpolation. And then, for example, the moving track of the object can be output to the front end for real-time visual display, so as to achieve the purpose of digital twinning.
And it can be understood that each of the computing unit, the message middleware unit, and the trace processing unit described above can be understood as a logic unit inside the server, that is, each of the operations described above is completed by taking the server as a main execution unit.
In summary, the object tracking method provided by the embodiment of the present disclosure can identify the same object as the same global identifier in multiple devices, so as to maintain a complete track of the same object under the multiple devices.
Fig. 12 is a schematic structural diagram of an object tracking apparatus according to an embodiment of the present disclosure. As shown in fig. 12, the object tracking apparatus 1200 of the present embodiment may include: a first obtaining module 1201, a second obtaining module 1202, a first determining module 1203, a second determining module 1204, and a processing module 1205.
A first obtaining module 1201, configured to obtain an object feature of a first object in a first image frame, where the first image frame is obtained by a first device;
a second obtaining module 1202, configured to obtain object features and global identifiers of a plurality of second objects, where the second objects enter an obtaining area of the first device from an obtaining area of a second device;
a first determining module 1203, configured to determine a target object in the plurality of second objects according to the object features of the first object and the object features of the plurality of second objects;
a second determining module 1204, configured to determine the global identifier of the target object as the global identifier of the first object, and determine, according to the global identifier, a movement trajectory of the first object across devices.
In a possible implementation manner, the second determining module 1204 is specifically configured to:
acquiring a first track associated with the global identifier according to the global identifier, wherein the first track is a continuous moving track of the first object under at least one device passing by the first device;
determining a second track of the first object under the first device according to the image frame acquired by the first device;
and determining a movement track of the first object across the equipment according to the first track and the second track.
In a possible implementation manner, the second determining module 1204 is specifically configured to:
if the first track and the second track are continuous tracks, splicing the first track and the second track to obtain a cross-equipment moving track of the first object; alternatively, the first and second electrodes may be,
if the first track and the second track are discontinuous tracks, performing interpolation processing according to the first track and the second track to obtain an interpolation track between the first track and the second track; and sequentially splicing according to the first track, the interpolation track and the second track to obtain the cross-equipment moving track of the first object.
In a possible implementation manner, the first obtaining module 1201 is specifically configured to:
processing the first image frame according to an object detection network, determining a bounding box in the first image frame that includes the first object;
determining a partial image formed by the surrounding frame in the first image frame as a sub-image of the first object;
and processing the sub-image of the first object according to a feature extraction network to obtain the object feature of the first object.
In a possible implementation manner, the second determining module 1204 is further configured to:
after acquiring an object feature of a first object in a first image frame, acquiring position information of the first object in the first image frame;
acquiring object characteristics and position information of a plurality of third objects in a last image frame of the first image frame;
and determining the tracking identification of the first object according to the object characteristics and the position information of the first object and the object characteristics and the position information of the plurality of third objects.
In a possible implementation manner, the second determining module 1204 is specifically configured to:
determining a matching object among the plurality of third objects based on the object feature and the location information of the first object and the object features and the location information of the plurality of third objects,
wherein the similarity between the object feature of the matching object and the object feature of the first object is greater than or equal to a preset threshold, and the position information of the matching object and the position information of the first object satisfy a preset position relationship;
and acquiring the tracking identifier of the matched object, and determining the tracking identifier of the matched object as the tracking identifier of the first object.
In a possible implementation manner, the second obtaining module 1202 is specifically configured to:
if the first object is determined to be recognized in the N continuous image frames acquired by the first equipment according to the tracking identification of the first object, acquiring object characteristics and global identifications of a plurality of second objects from a storage queue;
wherein N is an integer greater than or equal to 1.
In a possible implementation manner, the apparatus further includes: a processing module 1205;
the processing module 1205 is configured to:
before the object features and the global identifications of the second objects are obtained, obtaining the positions of fourth objects in a second image frame, wherein the second image frame is obtained by the second device;
determining a driving distance of the fourth object from the acquisition area of the second device according to the position of the fourth object, the movement information of the fourth object and the acquisition area of the second device, wherein the movement information comprises at least one of the following: a moving speed of the fourth object, a moving direction of the fourth object;
when the driving distance is determined to be smaller than the preset distance, determining an object to enter an acquisition area of the first equipment in the plurality of fourth objects as a second object according to the setting information of the equipment and the moving directions of the plurality of fourth objects;
and storing the object characteristics and the global identification of the second object into a storage queue corresponding to the first equipment.
The invention provides an object tracking method and device, relates to the technical field of artificial intelligence, in particular to the technical field of deep learning and computer vision, and can be applied to scenes such as image processing, target tracking and the like so as to achieve the purpose of realizing cross-equipment object tracking.
It should be noted that the head model in this embodiment is not a head model for a specific user, and cannot reflect personal information of a specific user. It should be noted that the two-dimensional face image in the present embodiment is from a public data set.
In the technical scheme of the disclosure, the collection, storage, use, processing, transmission, provision, disclosure and other processing of the personal information of the related user are all in accordance with the regulations of related laws and regulations and do not violate the good customs of the public order.
The present disclosure also provides an electronic device, a readable storage medium, and a computer program product according to embodiments of the present disclosure.
According to an embodiment of the present disclosure, the present disclosure also provides a computer program product comprising: a computer program, stored in a readable storage medium, from which at least one processor of the electronic device can read the computer program, the at least one processor executing the computer program causing the electronic device to perform the solution provided by any of the embodiments described above.
Fig. 13 shows a schematic block diagram of an example electronic device 1300 that can be used to implement embodiments of the present disclosure. Electronic devices are intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers. The electronic device may also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions, are meant to be examples only, and are not meant to limit implementations of the disclosure described and/or claimed herein.
As shown in fig. 13, the apparatus 1300 includes a computing unit 1301 that can perform various appropriate actions and processes according to a computer program stored in a Read Only Memory (ROM)1302 or a computer program loaded from a storage unit 1308 into a Random Access Memory (RAM) 1303. In the RAM 1303, various programs and data necessary for the operation of the device 1300 can also be stored. The calculation unit 1301, the ROM1302, and the RAM 1303 are connected to each other via a bus 1304. An input/output (I/O) interface 1305 is also connected to bus 1304.
A number of components in the device 1300 connect to the I/O interface 1305, including: an input unit 1306 such as a keyboard, a mouse, or the like; an output unit 1307 such as various types of displays, speakers, and the like; storage unit 1308, such as a magnetic disk, optical disk, or the like; and a communication unit 1309 such as a network card, modem, wireless communication transceiver, etc. The communication unit 1309 allows the device 1300 to exchange information/data with other devices through a computer network such as the internet and/or various telecommunication networks.
Computing unit 1301 may be a variety of general and/or special purpose processing components with processing and computing capabilities. Some examples of computing unit 1301 include, but are not limited to, a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), various specialized Artificial Intelligence (AI) computing chips, various computing units running machine learning model algorithms, a Digital Signal Processor (DSP), and any suitable processor, controller, microcontroller, and so forth. The calculation unit 1301 performs the respective methods and processes described above, such as the object tracking method. For example, in some embodiments, the object tracking method may be implemented as a computer software program tangibly embodied on a machine-readable medium, such as storage unit 1308. In some embodiments, some or all of the computer program may be loaded onto and/or installed onto device 1300 via ROM1302 and/or communications unit 1309. When the computer program is loaded into the RAM 1303 and executed by the computing unit 1301, one or more steps of the object tracking method described above may be performed. Alternatively, in other embodiments, the computing unit 1301 may be configured to perform the object tracking method in any other suitable manner (e.g., by means of firmware).
Various implementations of the systems and techniques described here above may be implemented in digital electronic circuitry, integrated circuitry, Field Programmable Gate Arrays (FPGAs), Application Specific Integrated Circuits (ASICs), Application Specific Standard Products (ASSPs), system on a chip (SOCs), Complex Programmable Logic Devices (CPLDs), computer hardware, firmware, software, and/or combinations thereof. These various embodiments may include: implemented in one or more computer programs that are executable and/or interpretable on a programmable system including at least one programmable processor, which may be special or general purpose, receiving data and instructions from, and transmitting data and instructions to, a storage system, at least one input device, and at least one output device.
Program code for implementing the methods of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general purpose computer, special purpose computer, or other programmable data processing apparatus, such that the program codes, when executed by the processor or controller, cause the functions/operations specified in the flowchart and/or block diagram to be performed. The program code may execute entirely on the machine, partly on the machine, as a stand-alone software package partly on the machine and partly on a remote machine or entirely on the remote machine or server.
In the context of this disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
To provide for interaction with a user, the systems and techniques described here can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to a user; and a keyboard and a pointing device (e.g., a mouse or a trackball) by which a user can provide input to the computer. Other kinds of devices may also be used to provide for interaction with a user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form, including acoustic, speech, or tactile input.
The systems and techniques described here can be implemented in a computing system that includes a back-end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front-end component (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such back-end, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local Area Networks (LANs), Wide Area Networks (WANs), and the Internet.
The computer system may include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. The Server can be a cloud Server, also called a cloud computing Server or a cloud host, and is a host product in a cloud computing service system, so as to solve the defects of high management difficulty and weak service expansibility in the traditional physical host and VPS service ("Virtual Private Server", or simply "VPS"). The server may also be a server of a distributed system, or a server incorporating a blockchain.
It should be understood that various forms of the flows shown above may be used, with steps reordered, added, or deleted. For example, the steps described in the present disclosure may be executed in parallel, sequentially, or in different orders, as long as the desired results of the technical solutions disclosed in the present disclosure can be achieved, and the present disclosure is not limited herein.
The above detailed description should not be construed as limiting the scope of the disclosure. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions may be made in accordance with design requirements and other factors. Any modification, equivalent replacement, and improvement made within the spirit and principle of the present disclosure should be included in the scope of protection of the present disclosure.

Claims (20)

1. An object tracking method, comprising:
acquiring object characteristics of a first object in a first image frame, wherein the first image frame is acquired by first equipment;
acquiring object characteristics and global identifications of a plurality of second objects, wherein the second objects are objects entering an image acquisition area of the first equipment from an image acquisition area of second equipment;
determining a target object in the plurality of second objects according to the object characteristics of the first object and the object characteristics of the plurality of second objects;
and determining the global identification of the target object as the global identification of the first object, and determining the movement track of the first object across equipment according to the global identification.
2. The method of claim 1, wherein determining a cross-device movement trajectory of the first object from the global identification comprises:
acquiring a first track associated with the global identifier according to the global identifier, wherein the first track is a continuous moving track of the first object under at least one device passing by the first device;
determining a second track of the first object under the first device according to the image frame acquired by the first device;
and determining a movement track of the first object across the equipment according to the first track and the second track.
3. The method of claim 2, wherein determining a cross-device movement trajectory of the first object from the first trajectory and the second trajectory comprises:
if the first track and the second track are continuous tracks, splicing the first track and the second track to obtain a cross-equipment moving track of the first object; alternatively, the first and second electrodes may be,
if the first track and the second track are discontinuous tracks, performing interpolation processing according to the first track and the second track to obtain an interpolation track between the first track and the second track; and sequentially splicing according to the first track, the interpolation track and the second track to obtain the cross-equipment moving track of the first object.
4. The method of any of claims 1-3, wherein acquiring an object feature of a first object in a first image frame comprises:
processing the first image frame according to an object detection network, determining a bounding box in the first image frame that includes the first object;
determining a partial image formed by the surrounding frame in the first image frame as a sub-image of the first object;
and processing the sub-image of the first object according to a feature extraction network to obtain the object feature of the first object.
5. The method of any of claims 1-4, after acquiring an object feature of a first object in a first image frame, the method further comprising:
acquiring position information of the first object in the first image frame;
acquiring object characteristics and position information of a plurality of third objects in a last image frame of the first image frame;
and determining the tracking identification of the first object according to the object characteristics and the position information of the first object and the object characteristics and the position information of the plurality of third objects.
6. The method of claim 5, wherein determining the tracking identity of the first object from the object features and location information of the first object and the object features and location information of the plurality of third objects comprises:
determining a matching object among the plurality of third objects based on the object feature and the location information of the first object and the object features and the location information of the plurality of third objects,
wherein the similarity between the object feature of the matching object and the object feature of the first object is greater than or equal to a preset threshold, and the position information of the matching object and the position information of the first object satisfy a preset position relationship;
and acquiring the tracking identifier of the matched object, and determining the tracking identifier of the matched object as the tracking identifier of the first object.
7. The method of claim 6, wherein the obtaining object features and global identification of a plurality of second objects comprises:
if the first object is determined to be recognized in the N continuous image frames acquired by the first equipment according to the tracking identification of the first object, acquiring object characteristics and global identifications of a plurality of second objects from a storage queue;
wherein N is an integer greater than or equal to 1.
8. The method of claim 6 or 7, wherein prior to said obtaining object features and global identification of a plurality of second objects, the method further comprises:
acquiring positions of a plurality of fourth objects in a second image frame, wherein the second image frame is acquired by the second equipment;
determining a driving distance of the fourth object from the acquisition area of the second device according to the position of the fourth object, the movement information of the fourth object and the acquisition area of the second device, wherein the movement information comprises at least one of the following: a moving speed of the fourth object, a moving direction of the fourth object;
when the driving distance is determined to be smaller than the preset distance, determining an object to enter an acquisition area of the first equipment in the plurality of fourth objects as a second object according to the setting information of the equipment and the moving directions of the plurality of fourth objects;
and storing the object characteristics and the global identification of the second object into a storage queue corresponding to the first equipment.
9. An object tracking apparatus, comprising:
the first acquisition module is used for acquiring object features of a first object in a first image frame, wherein the first image frame is acquired by first equipment;
the second acquisition module is used for acquiring object characteristics and global identifiers of a plurality of second objects, wherein the second objects enter the acquisition area of the first equipment from the acquisition area of the second equipment;
a first determining module, configured to determine a target object in the plurality of second objects according to the object features of the first object and the object features of the plurality of second objects, where a similarity between the object feature of the target object and the object feature of the first object is greater than or equal to a preset threshold;
and the second determination module is used for determining the global identification of the target object as the global identification of the first object, and determining the movement track of the first object across the equipment according to the global identification.
10. The apparatus of claim 9, wherein the second determining module is specifically configured to:
acquiring a first track associated with the global identifier according to the global identifier, wherein the first track is a continuous moving track of the first object under at least one device passing by the first device;
determining a second track of the first object under the first device according to the image frame acquired by the first device;
and determining a movement track of the first object across the equipment according to the first track and the second track.
11. The apparatus of claim 10, wherein the second determining module is specifically configured to:
if the first track and the second track are continuous tracks, splicing the first track and the second track to obtain a cross-equipment moving track of the first object; alternatively, the first and second electrodes may be,
if the first track and the second track are discontinuous tracks, performing interpolation processing according to the first track and the second track to obtain an interpolation track between the first track and the second track; and sequentially splicing according to the first track, the interpolation track and the second track to obtain the cross-equipment moving track of the first object.
12. The apparatus according to any one of claims 9 to 11, wherein the first obtaining module is specifically configured to:
processing the first image frame according to an object detection network, determining a bounding box in the first image frame that includes the first object;
determining a partial image formed by the surrounding frame in the first image frame as a sub-image of the first object;
and processing the sub-image of the first object according to a feature extraction network to obtain the object feature of the first object.
13. The apparatus of any of claims 9-12, the second determining module further to:
after acquiring an object feature of a first object in a first image frame, acquiring position information of the first object in the first image frame;
acquiring object characteristics and position information of a plurality of third objects in a last image frame of the first image frame;
and determining the tracking identification of the first object according to the object characteristics and the position information of the first object and the object characteristics and the position information of the plurality of third objects.
14. The apparatus of claim 13, wherein the second determining module is specifically configured to:
determining a matching object among the plurality of third objects based on the object feature and the location information of the first object and the object features and the location information of the plurality of third objects,
wherein the similarity between the object feature of the matching object and the object feature of the first object is greater than or equal to a preset threshold, and the position information of the matching object and the position information of the first object satisfy a preset position relationship;
and acquiring the tracking identifier of the matched object, and determining the tracking identifier of the matched object as the tracking identifier of the first object.
15. The apparatus of claim 14, wherein the second obtaining module is specifically configured to:
if the first object is determined to be recognized in the N continuous image frames acquired by the first equipment according to the tracking identification of the first object, acquiring object characteristics and global identifications of a plurality of second objects from a storage queue;
wherein N is an integer greater than or equal to 1.
16. The apparatus of claim 14 or 15, wherein the apparatus further comprises: a processing module;
the processing module is configured to:
before the object features and the global identifications of the second objects are obtained, obtaining the positions of fourth objects in a second image frame, wherein the second image frame is obtained by the second device;
determining a driving distance of the fourth object from the acquisition area of the second device according to the position of the fourth object, the movement information of the fourth object and the acquisition area of the second device, wherein the movement information comprises at least one of the following: a moving speed of the fourth object, a moving direction of the fourth object;
when the driving distance is determined to be smaller than the preset distance, determining an object to enter an acquisition area of the first equipment in the plurality of fourth objects as a second object according to the setting information of the equipment and the moving directions of the plurality of fourth objects;
and storing the object characteristics and the global identification of the second object into a storage queue corresponding to the first equipment.
17. An electronic device, comprising:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein the content of the first and second substances,
the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-8.
18. A non-transitory computer readable storage medium having stored thereon computer instructions for causing the computer to perform the method of any one of claims 1-8.
19. An object tracking system, comprising: the system comprises at least one computing unit, a message middleware unit and a track processing unit, wherein each computing unit is provided with corresponding shooting equipment;
the computing unit is used for determining the global identification of the object shot by the corresponding shooting equipment;
the message middleware unit is used for determining a storage queue corresponding to each of a plurality of shooting devices according to image frames acquired by the plurality of shooting devices, wherein the storage queue is used for storing object information of objects entering the shooting range of the shooting devices from the shooting ranges of the rest shooting devices;
the track processing unit is used for determining the movement track of the object across the equipment according to the global identification of the object.
20. A computer program product comprising a computer program which, when executed by a processor, carries out the steps of the method of any one of claims 1 to 8.
CN202210355951.5A 2022-04-06 2022-04-06 Object tracking method and device Active CN114820700B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210355951.5A CN114820700B (en) 2022-04-06 2022-04-06 Object tracking method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210355951.5A CN114820700B (en) 2022-04-06 2022-04-06 Object tracking method and device

Publications (2)

Publication Number Publication Date
CN114820700A true CN114820700A (en) 2022-07-29
CN114820700B CN114820700B (en) 2023-05-16

Family

ID=82532020

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210355951.5A Active CN114820700B (en) 2022-04-06 2022-04-06 Object tracking method and device

Country Status (1)

Country Link
CN (1) CN114820700B (en)

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150312529A1 (en) * 2014-04-24 2015-10-29 Xerox Corporation System and method for video-based determination of queue configuration parameters
CN106023084A (en) * 2016-05-27 2016-10-12 浙江工业大学 Initial iteration control signal extraction method based on time scale transform
US20180204346A1 (en) * 2015-07-17 2018-07-19 Koninklijke Philips N.V. Device and method for determining a position of a mobile device in relation to a subject
US20180330171A1 (en) * 2017-05-10 2018-11-15 Fotonation Limited Methods for detecting, identifying and displaying object information with a multi-camera vision system
US20180330175A1 (en) * 2017-05-10 2018-11-15 Fotonation Limited Multi-camera vision system and method of monitoring
WO2019183235A1 (en) * 2018-03-21 2019-09-26 Second Spectrum, Inc. Methods and systems of spatiotemporal pattern recognition for video content development
CN110428448A (en) * 2019-07-31 2019-11-08 腾讯科技(深圳)有限公司 Target detection tracking method, device, equipment and storage medium
CN110443828A (en) * 2019-07-31 2019-11-12 腾讯科技(深圳)有限公司 Method for tracing object and device, storage medium and electronic device
CN110532962A (en) * 2019-08-30 2019-12-03 上海秒针网络科技有限公司 Detection method and device, storage medium and the electronic device of track
US10867380B1 (en) * 2019-07-01 2020-12-15 Sas Institute Inc. Object and data point tracking to control system in operation
US20210056715A1 (en) * 2019-08-20 2021-02-25 Boe Technology Group Co., Ltd. Object tracking method, object tracking device, electronic device and storage medium
US20210073539A1 (en) * 2018-02-24 2021-03-11 Beijing Tusen Weilai Technology Co., Ltd. Port area monitoring method and system and central control system
US20210110168A1 (en) * 2019-10-10 2021-04-15 Beijing Baidu Netcom Science Technology Co., Ltd. Object tracking method and apparatus
WO2021114702A1 (en) * 2019-12-10 2021-06-17 中国银联股份有限公司 Target tracking method, apparatus and system, and computer-readable storage medium

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150312529A1 (en) * 2014-04-24 2015-10-29 Xerox Corporation System and method for video-based determination of queue configuration parameters
US20180204346A1 (en) * 2015-07-17 2018-07-19 Koninklijke Philips N.V. Device and method for determining a position of a mobile device in relation to a subject
CN106023084A (en) * 2016-05-27 2016-10-12 浙江工业大学 Initial iteration control signal extraction method based on time scale transform
US20180330171A1 (en) * 2017-05-10 2018-11-15 Fotonation Limited Methods for detecting, identifying and displaying object information with a multi-camera vision system
US20180330175A1 (en) * 2017-05-10 2018-11-15 Fotonation Limited Multi-camera vision system and method of monitoring
US20210073539A1 (en) * 2018-02-24 2021-03-11 Beijing Tusen Weilai Technology Co., Ltd. Port area monitoring method and system and central control system
WO2019183235A1 (en) * 2018-03-21 2019-09-26 Second Spectrum, Inc. Methods and systems of spatiotemporal pattern recognition for video content development
US10867380B1 (en) * 2019-07-01 2020-12-15 Sas Institute Inc. Object and data point tracking to control system in operation
CN110443828A (en) * 2019-07-31 2019-11-12 腾讯科技(深圳)有限公司 Method for tracing object and device, storage medium and electronic device
CN110428448A (en) * 2019-07-31 2019-11-08 腾讯科技(深圳)有限公司 Target detection tracking method, device, equipment and storage medium
US20210343027A1 (en) * 2019-07-31 2021-11-04 Tencent Technology (Shenzhen) Company Limited Object tracking method and apparatus, storage medium and electronic device
US20210056715A1 (en) * 2019-08-20 2021-02-25 Boe Technology Group Co., Ltd. Object tracking method, object tracking device, electronic device and storage medium
CN110532962A (en) * 2019-08-30 2019-12-03 上海秒针网络科技有限公司 Detection method and device, storage medium and the electronic device of track
US20210110168A1 (en) * 2019-10-10 2021-04-15 Beijing Baidu Netcom Science Technology Co., Ltd. Object tracking method and apparatus
WO2021114702A1 (en) * 2019-12-10 2021-06-17 中国银联股份有限公司 Target tracking method, apparatus and system, and computer-readable storage medium

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
张静;王文杰;: "基于多信息融合的多目标跟踪方法研究", 计算机测量与控制 *
焦珊珊;李云波;陈佳林;潘志松;: "多目标跨摄像头跟踪技术", 国防科技 *

Also Published As

Publication number Publication date
CN114820700B (en) 2023-05-16

Similar Documents

Publication Publication Date Title
US11643076B2 (en) Forward collision control method and apparatus, electronic device, program, and medium
CN111292531B (en) Tracking method, device and equipment of traffic signal lamp and storage medium
CN112785625B (en) Target tracking method, device, electronic equipment and storage medium
CN113392794B (en) Vehicle line crossing identification method and device, electronic equipment and storage medium
CN112528786A (en) Vehicle tracking method and device and electronic equipment
CN111723768A (en) Method, device, equipment and storage medium for vehicle weight recognition
CN111291650A (en) Automatic parking assistance method and device
CN113177968A (en) Target tracking method and device, electronic equipment and storage medium
CN111402609A (en) Special lane driving reminding method, device, equipment and storage medium
CN111161325A (en) Three-dimensional multi-target tracking method based on Kalman filtering and LSTM
CN113705417B (en) Image processing method and device, electronic equipment and computer readable storage medium
CN115953434B (en) Track matching method, track matching device, electronic equipment and storage medium
CN115641359B (en) Method, device, electronic equipment and medium for determining movement track of object
CN112699754A (en) Signal lamp identification method, device, equipment and storage medium
CN111950507A (en) Data processing and model training method, device, equipment and medium
CN115147809B (en) Obstacle detection method, device, equipment and storage medium
CN114429631B (en) Three-dimensional object detection method, device, equipment and storage medium
CN114820700B (en) Object tracking method and device
CN115719436A (en) Model training method, target detection method, device, equipment and storage medium
CN112802347B (en) Method, device and equipment for determining running speed of vehicle passing through traffic intersection
CN114495049A (en) Method and device for identifying lane line
CN113591569A (en) Obstacle detection method, obstacle detection device, electronic apparatus, and storage medium
CN113516013A (en) Target detection method and device, electronic equipment, road side equipment and cloud control platform
CN115909173B (en) Object tracking method, tracking model training method, device, equipment and medium
CN115049725A (en) Display method, display device, electronic equipment and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant