METHOD, COMPUTER PROGRAM, DEVICE AND SYSTEM FOR TRACKING A TARGET OBJECT
Patent Information
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- BULL SA
- Filing Date
- 2022-04-11
- Publication Date
- 2026-05-13
AI Technical Summary
Existing object tracking solutions based on deep learning models are energy-intensive and require significant computing resources, limiting their deployment in real-world applications.
A method for tracking a target object by processing only a portion of images in a stream at a detection frequency lower than the capture frequency, using a tracking phase that skips images between iterations, reducing energy and computing requirements while maintaining performance.
The method achieves efficient and less resource-intensive object tracking with similar performance to current solutions, by processing only selected images and estimating object positions between unprocessed frames.
Description
[0001] The present invention relates to a method for tracking a target object in images taken by at least one camera. It also relates to a computer program, a device, and a system implementing such a method.
[0002] The field of the invention is generally the field of tracking objects from images captured by cameras, also called tracking in English, and in particular in real time. State of the art
[0003] Cities are increasingly equipping themselves with CCTV cameras, the number of which is growing faster than the number of human operators. Tracking a target object, such as a person or a vehicle, is very difficult. If the operator is disturbed, they can lose track of the target object, and finding it again can be particularly tedious. Tracking multiple target objects simultaneously is even more challenging.
[0004] We are familiar with tracking solutions based on deep learning models, particularly re-identification models. These solutions aim to process images from a stream of images from one or more cameras to identify the target object, and more generally, all moving objects, within each image of that stream. Typically, each image in the stream is first processed by an object detector, such as one implementing the RESNET50 model, to identify at least one object and its position within the image. Then, each object is identified by comparing its visual signature with those of objects identified in previously processed images.Thus, the same target object can be identified in all the images in which it appears, and a trajectory, or tracklet, of that object can be determined by following its movement within each image, and therefore within the imaged scene. Documents US2022 / 004768A1, EP3839816A1, and CA3156840A1 describe different approaches for object tracking based on image analysis.
[0005] However, these solutions are complex, energy-intensive, and require significant computing resources. These drawbacks limit their deployment in the real world.
[0006] One object of the present invention is to remedy at least one of the drawbacks of the prior art.
[0007] Another aim of the invention is to offer an object tracking solution that is less energy-intensive and requires less computing resources, while offering similar or even identical performance to current solutions. Description of the invention
[0008] The invention proposes to achieve at least one of the aforementioned goals by a method of tracking a target object in a stream of images captured by a camera at a capture frequency, F c, said method comprising several iterations of a tracking phase implemented individually for several images, called processed, of said stream of images, and comprising the following steps: detection in the processed image of at least one object and its position, and identification of said target object among the at least one object detected in said processed image; characterized in that said monitoring phase is carried out at a detection frequency, F s , lower than said capture frequency F c , so that two images processed during two successive iterations of the tracking phase are separated from at least one unprocessed image to which said tracking phase is not applied.
[0009] Thus, the invention proposes to track a target object by processing only a portion of the images in the image stream captured by the camera. In other words, the invention proposes to forgo processing all the images in the image stream and instead process only certain images within it. Therefore, the solution proposed by the present invention is less energy-intensive and requires fewer computing resources compared to current solutions that attempt to process all the images in an image stream.
[0010] Furthermore, the inventor of this application has observed that processing only a portion of the images does not significantly reduce tracking performance. Indeed, the inventor has noted that the capture frequency of current cameras is such that the movement of a target object can be accurately and reliably deduced and tracked from only a portion of the images forming a stream of images captured by the camera. This observation is even more true when the target object's speed is low, such as that of humans.
[0011] In this application, "object" or "target object" means any type of object, such as a human, an animal, a car, etc.
[0012] In this application, "tracklet" means a set of at least one image, or image area, belonging to the same object and captured by a camera.
[0013] As is known, the appearance distance between two images can be calculated by generating a digital signature for each of the images, for example by an intelligent model such as a neural network, and then calculating the distance, Euclidean or cosine, between these two digital signatures.
[0014] By "camera" we mean any type of image acquisition device, such as any type of RGB, LIDAR, thermal, 3D camera, etc.
[0015] A "processed image" refers to an image in the image stream to which the tracking phase has been applied. In contrast, an "unprocessed image" refers to an image in the image stream to which the tracking phase has not been applied.
[0016] According to embodiments, the method according to the invention may include a step of estimating the position of the target object at a time between the times of capture of two processed images during two successive iterations of the tracking phase, as a function of the positions of said target object in said processed images.
[0017] Such an estimate can be made according to any predetermined relationship.
[0018] According to implementation examples, the position of the target object at a given instant can be determined according to a linear displacement law. In other words, the target object is considered to move linearly between its positions detected in two processed images. Thus, for each instant between the capture times of the processed images, the position of the target object is determined along the linear trajectory connecting the positions of the target object in said processed images.
[0019] For example, let P1 and P2 be the positions of the target object on two processed images IM1 and IM2 captured respectively at times T1 and T2. The position of the target object at each intermediate time TIi lies between times T1 and T2, such that T1 <TI i <T2 peut être déterminée en estimant que l'objet cible s'est déplacé linéairement, et à vitesse constante, entre les positions P1 et P2 pendant la durée (T2-T1).
[0020] Using the same principle, it is also possible to determine the position of the target object in an unprocessed image, captured between the capture times of two processed images during two successive iterations of the tracking phase, based on the positions of the target object detected in said processed images.
[0021] According to non-limiting embodiments, the frequency of execution of the follow-up phase can be determined based on a number of images separating the processed images.
[0022] For example, the tracking phase can be implemented for each image every N image(s), with N≥2, and preferably N≥20, so that two successive iterations of the detection phase are applied to two images separated, in time, by at least one image, and in particular by N unprocessed images.
[0023] The number N can, in no way limitingly, be determined according to the camera's capture frequency, and more generally according to the image capture frequency in the image stream.
[0024] In this case, the tracking phase can be performed for a processed image IM1. The next image to be processed by the next iteration of the tracking phase will be image IMN. For example, if N=20, the processed images will be images IM1, IM21, IM41, etc. captured by the camera.
[0025] According to non-limiting embodiments, the frequency of execution of the follow-up phase can be determined as a function of a duration separating moments of capture of processed images.
[0026] Following non-limiting examples, the tracking phase can be carried out for each image captured every DUR seconds.
[0027] For example, the time interval (DUR) between two processed images during two successive iterations of the tracking phase can be between 1 and 5 seconds, and in particular between 2 and 3 seconds. The DUR is not necessarily an integer. In this case, the tracking phase can be performed for a processed image IM1 captured at time T1. The next image to be processed by the next iteration of the tracking phase will be the image captured at time T2 such that T2 = T1 + DUR, and so on.
[0028] Depending on the embodiment, the image stream can be captured prior to the first iteration of the detection phase so that the tracking of the target object is not carried out in real time.
[0029] In this case, tracking the target object can be done in an image database, for example as part of a search in the recent past.
[0030] According to embodiments, the method according to the invention can be implemented to achieve real-time tracking of the target object.
[0031] In this case, the method according to the invention may further include a step of transmitting each processed image from the camera to a tracking device.
[0032] A particularly advantageous, but by no means limiting, feature is that only processed images can be transmitted to the tracking device. Thus, images captured by the camera but not processed during the tracking phase are not transmitted to the tracking device. This allows the invention to reduce the amount of data transmitted from the camera to the tracking device, and therefore consumes less communication resources.
[0033] According to embodiments that are particularly advantageous in the context of real-time monitoring, the transmission of a processed image from the camera to the monitoring device can be carried out on request from said monitoring device.
[0034] In this case, the tracking device sends a request to the camera asking it to capture an image at time T1 and transmit it. The tracking device then processes the received image. Then, as time T2 approaches, corresponding to the time of capture of the next image to be processed, the tracking device sends a request to the camera asking it to capture a new image at time T2 and transmit it, and so on.
[0035] Alternatively, an image capture plan can be transmitted to the camera, for example by the tracking device, said capture plan indicating several, or even all, of the moments of image capture to be processed, for example at the beginning of the tracking phase.
[0036] Following embodiments that are particularly advantageous in the context of real-time monitoring, the camera can be arranged to capture only the processed images.
[0037] In other words, the camera can be activated only for capturing images that will be processed during the tracking phase, and deactivated the rest of the time. Thus, if two images successively processed by the tracking phase are captured at times T1 and T2, the camera can be activated at times T1 and T2 to capture and transmit the processed images to the tracking device, and deactivated between times T1 and T2. This saves energy, reduces camera fatigue, and increases its lifespan.
[0038] Advantageously, the detection step can be carried out by an artificial intelligence model, and in particular by a neural network, previously trained to detect the presence of an object in an image.
[0039] Such a model could be a convolutional neural network, such as RESNET50, trained to detect objects in an image and indicate their position. Neural networks for detecting objects and their positions in images are well known to those skilled in the art, and will therefore not be described in further detail here for the sake of brevity.
[0040] The position of an object in an image can, for example, correspond to the center of a rectangle surrounding that object in the image. Of course, it is possible to determine the position in other ways, such as by taking a corner of that rectangle, and so on.
[0041] The step of identifying a target object on a processed image includes the following steps: for each object detected on said processed image, calculation of a spatial distance between the position of said object and the position of the target object detected on a previously processed image, spatial filtering of objects according to said calculated distances and a predetermined spatial distance threshold value, SDS, calculation of an appearance distance between a visual signature of the target object detected on the previously processed image and a visual signature of each object retained after the filtering step, and identification of the target object according to said appearance distances.
[0042] The SDS spatial distance threshold value can be determined by testing.
[0043] More specifically, the SDS can be determined based on the target object, in particular based on a dimension of the object and / or a velocity of the target object.
[0044] According to the invention, the SDS is proportional to the width of the target object in the processed images, such that: SDS = K * L with L being the width of the target object and K a multiplier coefficient.
[0045] Following implementation examples, the multiplier K can be a function of the frequency, or rate, of the tracking phase iteration. Indeed, the inventor observed that a target object cannot move more than K times its own width between two iterations of the tracking phase.
[0046] According to examples of implementation, K is a real number such that K=k*D, with ; D is the duration, in seconds, separating the capture times of two images processed during two successive iterations of the tracking phase, and k is a real number.
[0047] Following examples of implementation 1≤k≤2
[0048] The appearance distance can be the Euclidean distance or the cosine distance between two visual signatures of two objects.
[0049] At least one visual signature can be generated by an artificial intelligence model, and in particular by a neural network, previously trained for this purpose. Neural networks for generating a visual signature of an object are well known to those skilled in the art and will therefore not be described in further detail here.
[0050] According to another aspect of the invention, a computer program is proposed comprising executable instructions which, when executed by a computer device, implement all the steps of the method, according to the invention, of tracking a target object.
[0051] The computer program can be in any computer language, such as for example machine language, C, C++, JAVA, Python, etc.
[0052] According to another aspect of the invention, a target object tracking device is proposed comprising means configured to implement all the steps of the method, according to the invention, of tracking a target object.
[0053] The device according to the invention can be any type of device such as a server, a computer, a tablet, a calculator, a processor, a computer chip, programmed to implement the method according to the invention, for example by the computer program according to the invention.
[0054] According to another aspect of the invention, a system for tracking a target object is proposed, comprising: at least one camera with a frame rate of capture of an image stream F c, and a device for tracking a target object according to the invention.
[0055] At least one camera can be local or remote to the processing device. In the latter case, the camera can communicate with the processing device via a wired or wireless communication network, such as the Internet.
[0056] In the case where the system includes several cameras, these can be distributed in space, for example within a place, such as a train station or an airport, or in a city, or even along a traffic route. Description of the figures and methods of realization
[0057] Other advantages and features will become apparent upon examination of the detailed description of non-limiting embodiments and the accompanying drawings, in which: there FIGURE 1 is a schematic representation of a non-limiting example of a method according to the invention for tracking a target object; the FIGURE 2is a schematic representation of another non-limiting embodiment of a method according to the invention for tracking a target object; the FIGURE 3 is a schematic representation of a non-limiting example embodiment of a device according to the invention; and the FIGURE 4 is a schematic representation of a non-limiting example embodiment of a system according to the invention.
[0058] It is understood that the embodiments described below are by no means exhaustive. In particular, variants of the invention may be conceived comprising only a selection of the features described below, isolated from the other features described, if this selection of features is sufficient to confer a technical advantage or to differentiate the invention from the prior art. This selection includes at least one preferably functional feature without structural details, or with only a portion of the structural details if this portion alone is sufficient to confer a technical advantage or to differentiate the invention from the prior art.
[0059] In particular, all the variants and embodiments described can be combined with each other if there are no technical obstacles to this combination.
[0060] In the figures and in the rest of the description, elements common to several figures retain the same reference.
[0061] There FIGURE 1 is a schematic representation of a non-limiting example embodiment of a method according to the present invention for real-time tracking of a target object.
[0062] The 100 process of the FIGURE 1 can be used for real-time tracking of any type of target object such as humans, animals, cars, etc. from an image stream from one or more cameras.
[0063] In the following, and without loss of generality, it is assumed that the image stream originates from, or was obtained from, a single camera. In the following, and without loss of generality, it is assumed that the method is used for the real-time tracking of a target individual.
[0064] Process 100 includes a step 102 of obtaining an image to be processed, denoted IM1, for a capture instant T1.
[0065] Following an example implementation, the IM1 image can be received automatically. For example, before the start of tracking, a tracking plan, indicating the times for capturing the images to be processed, can be communicated to the camera, for example, by a tracking device. The camera can then acquire an image at each time indicated in the tracking plan and automatically transmit it to the tracking device implementing the tracking.
[0066] Alternatively, and as represented on the FIGURE 1Step 102 may include a step 104 of sending a request to the camera to capture the IM1 image at time T1, for example, by the tracking device. This request may be sent to the camera as time T1 approaches. At time T1, the camera may capture the IM1 image during a step 106. The captured IM1 image may be transmitted to the tracking device, via a wired or wireless connection, possibly via a private or public communication network, such as the Internet.
[0067] According to yet another alternative, the camera can capture images at a capture frequency Fc. In this case, steps 104 and 106 are replaced by a step, not shown, requesting the image captured at time T1. The camera, or an intermediate server where the images are stored, can then communicate the image captured at time T1 to the tracking device during step 108.
[0068] The process 100 may include a follow-up phase 110 performed for the IM1 image obtained during step 102.
[0069] The follow-up phase 110 includes a step 112 of receiving the image to be processed, IM1 captured at time T1.
[0070] The IM1 image is processed in a detection step (step 114) to detect at least one object present in the image and its position. This detection can be performed using solutions well-known to those skilled in the art, such as the RESNET50 model. Step 114 therefore provides a list of at least one detected object, along with its position and the image area associated with each object.
[0071] During step 116, a spatial distance DS j is calculated between each detected object and the position of the target object detected during a previous iteration of the tracking phase 110. Thus, step 116 provides a spatial distance DS j between each object detected in the image and the target object detected in the processed image during the immediately preceding iteration. When it is the first iteration of the tracking phase, each detected object is a new object, and a new tracklet is associated with that newly detected object.
[0072] In step 118, a filter is applied to the spatial distances DS j to retain only objects whose spatial distance DS j is less than or equal to a predefined spatial distance threshold, SDS. The purpose of this step 118 is to eliminate objects detected in the IM1 image that are located in positions the target object cannot occupy, given its previously detected position. Therefore, step 118 only provides a list of at least one object located in positions the target object can occupy at time T1, unless the target object is not visible.
[0073] In step 120, an appearance signature, or visual signature, is determined for each object not eliminated by the spatial filtering of step 118. The determination of each object's visual signature can be performed using solutions well-known to those skilled in the art, such as a neural network previously trained for this purpose, taking as input the area of the image corresponding to that object. Step 120 therefore provides a visual signature for each object that has passed the spatial filtering of step 118.
[0074] In step 122, a visual distance DV k is calculated between each object that has passed spatial filtering and the target object, based on the signature of said object and the target object. This distance can be a Euclidean distance or a cosine distance.
[0075] In step 124, the target object is identified based on the visual distances calculated in step 122. Specifically, the target object corresponds to the one among the objects detected in the image to be processed, and for which: the visual distance DV k is the smallest, and the visual distance DV k is less than a predetermined SRI re-identification threshold.
[0076] The position of the target object in the processed image IM1 is then stored, during step 126, in association with the time T1 of capture of the processed image IM1. The tracking phase 110 for image IM1 is complete and can be repeated for a new image, denoted IM2.
[0077] According to the present invention, the IM2 image processed during a subsequent iteration is not the image that immediately follows the IM1 image, so that the camera can capture, or captures, at least one image, called unprocessed, between the IM1 and IM2 images and which is not processed during a tracking phase.
[0078] According to an embodiment shown in the FIGURE 1 A predetermined duration DUR is imposed between time T1 and time T2, corresponding to the moment of image capture IM2, such that T2 = T1 + DUR. In all cases, the duration DUR is chosen such that DUR > 1 / Fc, where Fc is the frequency at which the camera can capture, or is capturing, images. Following a non-limiting example, DUR = 2 s.
[0079] To do this, process 100 may include, following the tracking phase 110, a timing step 130 until time T2 is reached. When time T2 is reached, or is about to be reached, process 100 is repeated for an image IM2 captured at time T2, and so on.
[0080] According to another embodiment, not shown in the FIGURE 1 , the process 100, and in particular the tracking phase 110, can be repeated every N images, with N≥2, so that the camera captures, or is able to capture, between the IM1 and IM2 images processed by two successive iterations of the process 100 and in particular of the tracking phase 110, at least one intermediate image which will not be processed by the tracking phase 110.
[0081] Following a non-limiting example of implementation, N=20 images.
[0082] Thus, regardless of the embodiment, process 100, and in particular tracking phase 110, is carried out at a detection frequency Fd lower than the capture frequency Fc at which the camera captures, or is configured to capture, or is capable of capturing, images. This reduces the number of images processed, thereby decreasing the computing and communication resources required for the tracking device to transfer and process the images.
[0083] The SDS spatial distance threshold can be defined in any suitable way, for example, by testing. According to exemplary embodiments, the SDS spatial distance threshold can be defined as a function of the dimensions of the target object. According to the invention, the SDS spatial distance threshold is proportional to the width of the target object in the image, such that: SDS = K * L with L being the width of the target object and K a multiplier coefficient.
[0084] According to embodiment examples, the multiplier K can be a function of the frequency, or iteration rate, of the tracking phase 110. Indeed, the inventor observed that a target object generally does not move more than K times its own width. According to embodiment examples, K is a real number such that K = k * D , With : Let D be the duration, in seconds, separating the capture times of two processed images during two successive iterations of the tracking phase, in particular D=DUR, or D=IM2-IM1; and k a real number. Following implementation examples, 1≤k≤2
[0085] Optionally, the method 100 may further include a step 140 for estimating the position of the target object at a time when no image has been processed, and which occurs between the capture times of two processed images during two successive iterations of the tracking phase. This estimation can be performed based on the positions of the target object detected in said processed images.
[0086] According to embodiment examples, the position of the target object can be estimated according to a linear displacement law, at constant velocity. For example, let P1 and P2 be the positions of the target object in two processed images IM1 and IM2 captured respectively at times T1 and T2. The position of the target object at each time TIi lies between times T1 and T2, such that T1 <TIi<T2 peut être déterminée en estimant que l'objet cible s'est déplacé linéairement, et à vitesse constante, entre les positions P1 et P2 pendant la durée (T2-T1).
[0087] Step 140 can be carried out during the implementation of process 100, for example between two iterations of the follow-up phase 110. Alternatively, step 140 can be carried out after the implementation of all the iterations of the follow-up phase 110.
[0088] In the example described with reference to the FIGURE 1 The method 100 performs real-time tracking of a target object. Of course, the method according to the invention can alternatively be used for tracking a target object not in real time, but in a stream of images captured before the execution of the method according to the invention.
[0089] There FIGURE 2 is a schematic representation of a non-limiting example embodiment of a method according to the present invention for tracking a target object within a previously captured image stream.
[0090] The 200 process of the FIGURE 2It can be used for tracking any type of target object such as humans, animals, cars, etc. In the following, and without loss of generality, it is assumed that the method is used for tracking a target person within an image stream.
[0091] The image stream can be a stream of images captured by one or more cameras, at a capture frequency Fc. For example, the image stream can be a stream of images captured by a single camera at a capture frequency Fc.
[0092] The process 200 includes a step 202 for obtaining an image to be processed, denoted IM1, for a capture time T1. This image IM1 is requested, for example, in step 202 from a server where the image stream is stored. In step 206, the requested image IM1 is transmitted to the tracking device.
[0093] Phase 202 of obtaining the IM1 image is followed by the IM1 image processing phase 110.
[0094] Then, process 200 is repeated for a new image to be processed, IM2, captured at time T2. As indicated above with reference to the FIGURE 1 The image IM2 is chosen such that at least one unprocessed image separates the image IM1 and the image IM2. Following one embodiment, the image IM2 is chosen such that IM2 = IM1 + N, so that process 200 is repeated every N images captured within the image stream. Alternatively, the image IM2 is chosen such that T2 = T1 + DUR, so that the images IM2 and IM1 are separated in time by a duration DUR greater than the duration 1 / Fc separating the capture times of two consecutive images in the image stream.
[0095] Process 200 may optionally include step 140, similar to process 100 of the FIGURE 1 .
[0096] There FIGURE 3is a schematic representation of a non-limiting example embodiment of a tracking device according to the invention.
[0097] Device 300 can be used to implement a tracking method according to the invention, and in particular method 100 of the FIGURE 1 or process 200 of the FIGURE 2 .
[0098] Device 300 includes a module 302 for receiving images to be processed from: either from a database, remote or local to said tracking device 300, in particular in the context of a search and tracking of a target object in a previously captured image stream; or from one or more cameras, for example surveillance cameras, in particular in the context of real-time tracking of a target object.
[0099] Device 300 further includes a module 304 for detecting at least one object, and its position, in a processed image received by module 302. This detection module 304 can be configured to run an artificial intelligence model, and in particular a neural network, previously trained to detect the presence of an object in an image. Such a model can be a convolutional neural network, such as RESNET50, trained to detect objects in an image and indicate their position.
[0100] The device 300 further includes a module 306 for identifying the target object among the objects detected by the detection module 304 in the processed image. This identification module 304 can be configured to perform the following operations: For each object detected on the processed image, calculation of a spatial distance between the position of said object and the position of the target object detected on a previously processed image, spatial filtering of objects according to said calculated distances and a threshold value of spatial distance, SDS, calculation of an appearance distance between a visual signature of the target object detected on the previous image and a visual signature of each object detected on the processed image and retained after the filtering step, and identification of the target object according to said appearance distances.
[0101] Module 306 is specifically configured to implement steps 116-124 of processes 100 or 200 of FIGURES 1 Or 2 .
[0102] Device 300 further includes a module 308 for requesting images to be processed from the database or at least one camera. This module 308 is configured so that two processed images from an image stream are separated from at least one unprocessed image from said image stream: either by imposing a time delay between the capture times of two consecutively processed images; or by imposing a predetermined number of unprocessed intermediate images between two consecutively processed images.
[0103] At least one of the 302-308 modules can be independent of the other 302-308 modules. At least two of the 302-308 modules can be integrated within the same module.
[0104] Each module 302-308 can be: a hardware module, such as an electronic component like a processor, electronic chip, calculator, computer, server, etc.; or a software module, such as a computer application or program, executed by an electronic component like a processor, electronic chip, calculator, etc.
[0105] Device 300 can be at least a server, a computer, a processor, or an electronic chip.
[0106] Device 300 can be at least one computer program, or virtual machine, run by a server, computer, processor, or electronic chip, etc.
[0107] There FIGURE 4 is a schematic representation of a non-limiting example embodiment of a system according to the invention for real-time tracking of a target object.
[0108] System 400 can be used to implement a tracking method according to the invention, and in particular method 100 of the FIGURE 1 .
[0109] The 400 system can be used to track a target object of any type, and in particular a target person, from at least one video stream originating from N 4021-402n cameras of said 400 system, distributed in space and forming a 404 camera network, with n ≥ 1. Alternatively, the 400 system can be used to track a target object of any type, and in particular a target person, from a video stream stored in a database (not shown in the diagram). FIGURE 4 ).
[0110] The system 400 further comprises a tracking device according to the invention 406, such as, for example, the device 300 of the FIGURE 3 .
[0111] Device 406 can be local to cameras 402 1 -402 n or remote from cameras 402 1 -402 n.
[0112] The 406 device can be connected to each of the 402 1 -402 n cameras via a wired or wireless connection.
[0113] Of course, the invention is not limited to the examples that have just been described.
Claims
1. A method (100;200) for tracking a target object in an image stream captured by a camera (4021-402n), at a capture frequency, Fc, said method (100;200) comprising several iterations of a tracking phase (110), implemented individually for several images, called processed images, of said image stream, and comprising the following steps: - detecting (114) at least one object, and its position, in the processed image, and - identifying (116-124) said target object among the at least one object detected in said processed image; said tracking phase (110) being carried out at a detection frequency, Fs, lower than said capture frequency Fc, so that two images processed during two successive iterations of the tracking phase are separated by at least one non-processed image to which said tracking phase is not applied; the step of identifying a target object in a processed image comprising the following steps: - for each object detected in said processed image, calculating (116) a spatial distance between the position of said object and the position of the target object detected on a previously processed image, - spatial filtering (116; 118) of the objects based on said calculated distances and a predetermined spatial distance threshold value, SDS - calculating (120; 122) an appearance distance between a visual signature of the target object detected on the previously processed image and a visual signature of each object retained after the filtering step, and - identifying (124) the target object based on said appearance distances; said SDS value being proportional to the width of the target object on said processed image, such that: SDS = K * L where L is the width of the target object and K is a multiplier coefficient.
2. The method (100;200) according to the preceding claim, characterized in that it comprises a step (140) of estimating the position of the target object at a time located between the capture times of two processed images during two successive iterations of the tracking phase, based upon the positions of said target object in said processed images.
3. The method (100;200) according to any one of the preceding claims, characterized in that the tracking phase (110) is implemented for each image every N image(s), where N≥2, and preferentially N≥20, so that two successive iterations of the tracking phase (110) are applied to two images separated, over time, from at least one image, and in particular from N images, which are not processed.
4. The method (100; 200) according to any one of claims 1 or 2, characterized in that the tracking phase is carried out for each image captured every DUR seconds.
5. The method (200) according to any one of the preceding claims, characterized in that the image stream is captured prior to the first iteration of the tracking phase (110) so that the target object is not tracked in real time.
6. The method (100) according to any one of claims 1 to 4, characterized in that it is implemented to carry out real-time tracking of the target object, said method (100) further comprising a step (106) of transmitting each processed image from the camera (4021-402n) to a tracking device (300; 406)7. The method (100) according to the preceding claim, characterized in that the step (106) of transmitting a processed image from the camera (4021-402n) to the tracking device (300; 406) is carried out at the request of said tracking device (300; 406).
8. The method (100) according to any one of claims 6 or 7, characterized in that the camera (4021-402n) is arranged to capture only the processed images.
9. The method (100; 200) according to any one of the preceding claims, characterized in that the detection step (114) is carried out by an artificial intelligence model, and in particular by a neural network, previously trained to detect the presence of an object in an image.
10. A computer program comprising executable instructions, which, when they are executed by a computer apparatus, implement all the steps of the tracking method (100;200) according to any one of the preceding claims.
11. A device (300;406) for tracking a target object comprising means configured to implement all the steps of the tracking method (100;200) according to any one of claims 1 to 9.
12. A system (400) for tracking a target object comprising: - at least one camera (4021-402n) with an image stream capture frequency, Fc, and - a device (300;406) according to the preceding claim.