WO2024099797A1 - Verfahren zum trainieren eines neuronalen netzwerks zum ermitteln von merkmalen von objekten für eine objektverfolgung - Google Patents

Verfahren zum trainieren eines neuronalen netzwerks zum ermitteln von merkmalen von objekten für eine objektverfolgung Download PDF

Info

Publication number
WO2024099797A1
WO2024099797A1 PCT/EP2023/080038 EP2023080038W WO2024099797A1 WO 2024099797 A1 WO2024099797 A1 WO 2024099797A1 EP 2023080038 W EP2023080038 W EP 2023080038W WO 2024099797 A1 WO2024099797 A1 WO 2024099797A1
Authority
WO
WIPO (PCT)
Prior art keywords
objects
sensor data
neural network
features
feature
Prior art date
Application number
PCT/EP2023/080038
Other languages
English (en)
French (fr)
Inventor
Tillmann Falck
Florian Drews
Florian Faion
Lars Rosenbaum
Koba Natroshvili
Claudius Glaeser
Original Assignee
Robert Bosch Gmbh
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 Robert Bosch Gmbh filed Critical Robert Bosch Gmbh
Publication of WO2024099797A1 publication Critical patent/WO2024099797A1/de

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/762Arrangements for image or video recognition or understanding using pattern recognition or machine learning using clustering, e.g. of similar faces in social networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • G06V20/58Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Definitions

  • the present disclosure relates to methods for training a neural network to determine features of objects for object tracking.
  • Object tracking can be achieved using features, so-called re-ID features.
  • re-ID features are typically often determined in a way that is “globally” and permanently unique (and not only within a scene in which object tracking is to be performed), which in turn limits the flexibility of their selection and thus impairs their use for object tracking.
  • a method for training a neural network for determining features of objects for object tracking comprising:
  • a neural network having a network architecture such that, when fed with a set of sensor data containing one sensor data item for each of a plurality of objects, the neural network determines a feature vector for each object dependent on all of the sensor data items;
  • each training data element having a first set of sensor data relating to a first state of an environment with a set of multiple objects and a second set of sensor data relating to a second state of the environment, wherein in the second state the positions of the objects are at least partially changed compared to the first state;
  • the neural network trained in this way can then be used to extract (re-ID) features (i.e. as a feature extractor), which are then used in the context of object tracking.
  • re-ID features
  • the approach described above e.g. in the embodiments described below
  • a scene context (in particular other objects in the same scene) is used for training (and, if necessary, for extracting re-ID features).
  • This allows scene-specific features to be used to associate measured values with object tracks.
  • re-ID features can be extracted that are better suited to the task of object tracking, which in turn has a positive effect on the overall performance of object tracking. Since the extraction of re-ID features is adapted to the specific requirements of object tracking, the methods can be implemented more computationally efficiently (e.g. using smaller neural networks).
  • a network architecture from a class of network architectures is used that is suitable for extracting scene-specific re-ID features.
  • Embodiment 1 is a method for training a neural network to determine features of objects for object tracking as described above.
  • Embodiment 2 is the method of embodiment 1, comprising configuring the neural network with a network architecture such that, when supplied with a set of sensor data containing a sensor data item for each of a plurality of objects, it performs the feature vector via processing in multiple stages, wherein at least one stage generates feature components for each of the objects, max-pools the feature components across the objects, and supplies the feature components and the result of max-pooling the feature components to the following stage.
  • the neural network determines a feature vector for each object depending on all of the sensor data elements, i.e. when determining a feature vector for an object, it takes the other objects into account,
  • the feature vectors are determined based on a local context (sensor data elements of the individual object) as well as a global context of the objects (result of max pooling across the objects).
  • a transformer network can be used.
  • Embodiment 3 is the method according to embodiment 1 or 2, wherein each training data element contains information about which object in the first state corresponds to which object in the second state, based on the determined features of the objects it is determined which objects in the first state correspond to which objects in the second state, and the loss is determined by comparing the information contained in the training data elements about which object in the first state corresponds to which object in the second state with the result of the determination based on the determined features which objects in the first state correspond to which objects in the second state.
  • the association of objects (e.g. in the form of an association matrix) can be provided as ground truth. This trains the neural network to select features that are particularly well suited to object tracking.
  • the result of determining, based on the features determined, which objects in the first state correspond to which objects in the second state is, for example, a soft association matrix.
  • Embodiment 4 is a method for tracking objects, comprising
  • Embodiment 5 is the method of embodiment 4, comprising acquiring sensor data from objects in a scene at the first time, grouping the objects into a plurality of first groups based on their spatial proximity, selecting one of the first groups as the first set of objects, acquiring sensor data from objects in the scene at the second time, grouping the objects into a plurality of second groups based on their spatial proximity, and selecting one of the second groups as the second set of objects, such that the second set of objects is the second group closest to the first set of objects within the scene.
  • Objects in scenes are thus treated as (local) clusters. This makes it easier to distinguish between features based on features, since not all objects in a scene need to be distinguished, but only those in a group.
  • Embodiment 6 is a data processing device (e.g. a control device) which is configured to carry out a method according to one of the embodiments 1 to 5.
  • a data processing device e.g. a control device
  • Embodiment 6 is a data processing device (e.g. a control device) which is configured to carry out a method according to one of the embodiments 1 to 5.
  • Embodiment 7 is a computer program having instructions that, when executed by a processor, cause the processor to perform a method according to any of embodiments 1 to 5.
  • Embodiment 8 is a computer-readable medium storing instructions that, when executed by a processor, cause the processor to perform a method according to any of Embodiments 1 to 5.
  • Figure 1 shows a vehicle
  • Figure 2 illustrates object tracking using Re-ID features.
  • Figure 3 illustrates the association of tracked objects with currently detected objects.
  • Figure 4 illustrates feature extraction according to an embodiment.
  • Figure 5 illustrates a feature extraction according to another embodiment.
  • Figure 6 shows a possible architecture of a neural network for Re-ID feature extraction.
  • Figure 7 shows an example of pedestrian trajectories that can be used to train a re-ID feature extractor.
  • Figure 8 shows how to form sets of positive Re-ID feature pairs and negative Re-ID feature pairs, on the basis of which different losses (cost functions) can be calculated for training a Re-ID feature extractor.
  • Figure 9 illustrates the procedure for training a re-ID feature extractor, where the loss is calculated based on a computed association between measurements of consecutive measurement times.
  • Figure 10 shows a flowchart illustrating a method for training a neural network to determine features of objects for object tracking.
  • Figure 1 shows a (e.g. autonomous) vehicle 101.
  • the vehicle 101 for example a car or truck, is provided with a vehicle control device 102.
  • the vehicle control device 102 includes data processing components, e.g., a processor (e.g., a CPU (central processing unit)) 103 and a memory 104 for storing control software according to which the vehicle control device 102 operates and data processed by the processor 103.
  • a processor e.g., a CPU (central processing unit)
  • memory 104 for storing control software according to which the vehicle control device 102 operates and data processed by the processor 103.
  • the stored control software includes instructions that, when executed by the processor, cause the processor 103 to implement one or more neural networks 107.
  • the data stored in memory 104 may include, for example, image data captured by one or more cameras 105.
  • the one or more cameras 105 may, for example, capture one or more grayscale or color photographs of the surroundings of the vehicle 101.
  • the vehicle control device 102 can determine based on the image data whether and which objects, e.g. fixed objects such as traffic signs or road markings or moving objects such as pedestrians, animals and other vehicles, are present in the surroundings of the vehicle 101.
  • objects e.g. fixed objects such as traffic signs or road markings or moving objects such as pedestrians, animals and other vehicles.
  • Image data is only an example of sensor data and data from other sensors (ultrasound, LiDAR, etc.) can also be used.
  • the vehicle 101 can then be controlled by the vehicle control device 102 according to the results of the object determination.
  • the vehicle control device 102 can control an actuator 106 (eg a brake) to control the speed of the vehicle, eg to brake the vehicle.
  • an actuator 106 eg a brake
  • the tracking of objects is implemented, for example, with recursive filters (e.g. Kalman filters), which carry out three processing steps: prediction, association and updating.
  • recursive filters e.g. Kalman filters
  • existing objects are first predicted to the current measurement time using motion models.
  • Current measurements e.g. object detection in camera images
  • the predicted objects are corrected using the associated measurements in an update step.
  • the association of measurements with object tracks is particularly important, since incorrect associations lead to inaccurate object tracks or even the loss of object tracks.
  • the basis for the association is distance metrics, which map the proximity of measurements and tracked objects in a feature space. Metrics used are, for example, the Euclidean distance or the Mahalanobis distance. Geometric features such as the object position, object size or object speed are typically used to calculate the distance.
  • measurements are assigned to tracked objects using an association algorithm.
  • association algorithms are the Hungarian algorithm or various forms of the nearest neighbor algorithm. Due to the significant influence of the geometric features, problems mainly arise when measurements and objects cannot be clearly associated with one another in these dimensions (e.g. groups of pedestrians standing close together, inaccurate predictions due to longer periods of occlusion, etc.). These problems during the association can be mitigated or completely prevented by adding suitable features.
  • Features are considered suitable if they support a clear association of measurements with objects. These can be, for example, view-based features that describe the appearance of the objects (example: if only one pedestrian in a group of pedestrians is wearing a red jacket, then the red jacket is a good feature for tracking this pedestrian).
  • re-identification features for short
  • object tracking e.g. in surveillance systems for train stations, airports or pedestrian zones
  • Figure 2 illustrates object tracking using Re-ID features.
  • measured values 203 (which are determined from sensor data, e.g. camera data 201 by preprocessing 202) are enriched with re-ID features obtained from feature extraction 206 to form extended measured values 207 before association 204 with tracked objects 205, so that the subsequent association 204 (and in particular the distance calculation) can be carried out both on the basis of the geometric features and on the basis of the re-ID features.
  • detected objects (corresponding to the measured values 203) are associated with the prediction 208 of tracked objects 205 (and then an update 209 of the tracked objects 205 is carried out). This provides tracking information 210 (e.g. in the form of trajectories) about the detected objects as output.
  • Figure 3 illustrates the association of tracked objects 301 with currently detected (“measured”) objects 302 (from measured values 305, e.g. detections as object bounding boxes) via a distance calculation 303 using an association algorithm 304.
  • the distance calculation can be based on the typically used geometric features (position, size, speed, etc.) and/or re-ID features.
  • the re-ID features are typically extracted using deep neural networks (e.g. one of the neural networks 107).
  • the basis for training corresponding networks are large annotated data sets that contain numerous objects (e.g. people) with a large number of views per object.
  • the aim of the training is to find suitable weights for the neural network so that a feature space suitable for re-identifying the objects is created (into which the neural network maps inputs (e.g. views of objects)), i.e. different views of the same object (e.g. the same person) should be mapped to features (feature vectors) that have a small distance in the feature space. , whereas the distances to feature vectors onto which views of other objects are mapped should be maximized.
  • a feature mapping (feature extraction) trained in this way is suitable for recognizing objects from a large database and can therefore also be helpful for association during tracking.
  • Re-ID features for use during object tracking should have the following properties:
  • Scene-specific features The features should be suitable for distinguishing objects from other objects within the same scene. For this to happen, it is not necessary for an object to be distinguishable from all objects (including other scenes). However, typical methods for extracting re-ID features only do the latter. With reference to the previous example: If a person is the only one in a scene wearing a red jacket, the red jacket is a good feature for distinguishing the person from other people in the scene. However, a red jacket is definitely not a good feature for distinguishing a person from all other people in the world. This means that other features than those for classic re-ID applications can be suitable for tracking applications. In addition, the features for one and the same person can differ scene-specifically. Depending on the scene context, in one case it may be the red jacket, and a little later perhaps the umbrella being carried (e.g. if a second person wearing a red jacket enters the scene).
  • Constancy over a short period of time When tracking objects, objects only need to be recognized over a short time horizon. Typically only from one measurement point to the next (a few milliseconds). In the case of occlusions, it may be necessary to recognize objects within a few seconds. This means that the re-ID feature for an object only needs to be almost constant within this short period of time, but not over minutes, hours or days. For example, a person only needs to be recognized within a scene and distinguished from other people. If the same person appears again in another scene, it is not necessary to know that it is the same person.
  • an approach is provided that enables improved object tracking by improving the association of measured values (eg, object detections) to object tracks (i.e., tracked objects) and thus improved object tracking.
  • measured values e.g, object detections
  • object tracks i.e., tracked objects
  • An improvement in object tracking is reflected in more accurate object trajectories, fewer track breaks and fewer object losses.
  • Re-ID features are used (e.g. as described with reference to Figures 1 to 3).
  • the training and extraction of the Re-ID features are tailored to the specific requirements for feature extraction (as described above).
  • a method for extracting Re-ID features during tracking, specific network architectures for Re-ID feature extractors and methods for training suitable Re-ID feature extractors are provided.
  • Common methods for extracting re-ID features train corresponding deep neural networks on large annotated data sets with the aim of being able to distinguish different views of an object (e.g. a person) from views of other objects (e.g. all other people).
  • a fully trained neural network is then applied to each detected object individually in order to generate re-ID features for this object, i.e., if, for example, five people were detected in a scene, the network is executed five times independently (once for each detection).
  • Figure 4 illustrates feature extraction according to an embodiment.
  • a re-ID feature extractor 401 neural network
  • This procedure enables the feature extractor 401 to to extract scene-specific features - ie features which are particularly well suited to distinguishing or recognizing the measured values of the scene (in the example to distinguish between the five people).
  • red jacket if only one person in the scene is wearing a red jacket, the red jacket will be a good feature for recognition. If there are several people wearing red jackets in the scene, the feature extractor will use other features to distinguish or identify the red jackets.
  • Figure 5 illustrates feature extraction according to another embodiment.
  • measured values of a scene 501 are first grouped into clusters 502, 503 (whispered) and then feature extraction 504, 505 is carried out for each cluster 502, 503.
  • This has the advantage that the re-ID feature extraction can be concentrated on the measured values for which there is a high risk of false association (e.g. groups of pedestrians standing close together).
  • the red jacket Even if there are two people with red jackets in a scene, a red jacket can be a suitable feature for distinguishing recognition from the other people (and thus recognition), e.g. if the two people with red jackets are far away from each other (e.g. on different sides of the road) and thus belong to different clusters 502, 503.
  • the re-ID feature extraction takes into account a weighting of the measured values.
  • the weights should reflect how strongly individual measured values should be distinguishable from other measured values.
  • the re-ID feature extraction can then concentrate on the extraction of suitable distinguishing features. Weights can, for example, be specified in pairs (between all measured values), so that each weight indicates how important it is to distinguish between the two measured values.
  • the weights reflect, for example, the separability based on the geometric features (such as position, extent, speed), ie poorly separable measured values receive a high weight.
  • pairwise weights are 1 for all pairs of measured values of the same cluster, 0 otherwise.
  • a neural network for Re-ID feature extraction uses an architecture that satisfies the following properties:
  • the input can contain any number N of measured values in the form of N input data vectors (which can also be viewed as input feature vectors). Measured values can, for example, be detections of pedestrians, whose input vectors contain, for example, associated raw sensor data (image pixels, LiDAR point clouds, radar reflections, etc.) or quantities derived from them.
  • the N measured values can be entered in any order, i.e. the calculation of the Re-ID features is independent of the order.
  • the output of the network is N Re-ID feature vectors, where N is the number of input measurements.
  • Figure 6 shows a possible architecture of a neural network for Re-ID feature extraction.
  • the input of the network is the measured values 601 (e.g. pedestrian detections).
  • the measured values are unordered (because the order should be irrelevant for the extracted features).
  • Each measured value is characterized by certain properties in the form of an input data vector (e.g. raw sensor data for the detections such as image pixels, LiDAR points, radar reflections or data derived from them).
  • the output 605 of the network corresponds to the calculated Re-ID feature vectors (i.e. one feature vector for each measured value of the input 601).
  • the first layer 602 processes the data of each measurement value independently of each other using a measurement-wise fully meshed layer (ID-conv).
  • This layer is characterized by a weight matrix M and a bias vector b.
  • the same weight matrix M and the same bias vector b are used for each measurement value (so-called weight sharing).
  • the output of such ID-conv layers is a new representation of the measurement-wise data (measurement-specific local feature vectors).
  • An ID-conv layer thus operates locally, in which only the features within a measurement value are combined with one another (local context). In the example, an ID-conv layer extracts individual features for each pedestrian (e.g. regarding their shape, color, etc.).
  • a pooling layer 603 which reduces the measured value-based features to a single (so-called global) feature.
  • the maximum of the features of the first hidden layer is calculated (global max pooling).
  • Such a pooling layer aggregates information across multiple measured values, which allows dependencies between the measured values (global context) to be mapped, i.e. the pooling layer 603 allows the features previously extracted individually for each pedestrian to be combined with one another and put into relation.
  • the global feature vector can be appended to the measured value-specific local feature vectors.
  • Subsequent ID-conv layers 604 (similar to the first layer 602, possibly together with a respective max-pooling layer 603) can therefore also use the global context in their measured value-wise feature extraction.
  • Features that distinguish the individual pedestrians can be highlighted.
  • the architecture shown in Figure 6 is a concrete implementation that can be modified in many ways.
  • a generalized basic architecture can be described as follows: • The input is an unordered list of measured values.
  • the output of the network architecture is a list of Re-ID feature vectors (one output vector per input measured value).
  • the architecture uses any number of layers on which a measurement-wise extraction of (local) features is carried out.
  • weight-sharing is implemented in the measurement-wise feature extraction.
  • the architecture includes at least one global pooling layer, which combines the local features extracted on a measured value basis into a global feature vector.
  • further pooling operators can be used after the various measured value feature extraction layers.
  • the pooling layers use the max pooling operator.
  • other pooling operators e.g. average pooling are also conceivable.
  • the architecture uses at least one concatenation module (append), which merges global (pooled) feature vectors with the local (measurement-wise) feature vectors.
  • Global feature vector The pooled feature vector can be further processed as desired before concatenation to the local feature vectors, e.g. using fully meshed layers.
  • Sequence (Local or global) features from earlier layers can also be used directly in later layers, e.g. with the help of so-called skip connections.
  • the training of the Re-ID feature extractor is based on data sets in which trajectories of objects are annotated. This means that objects are annotated at individual measurement times and an association exists between the measurement times (e.g. using object IDs).
  • Figure 7 shows an example in which trajectories 701 to 705 of pedestrians are shown, which can be used to train a re-ID feature extractor.
  • the pedestrians marked with “+” refer to the same sensor measurement time.
  • annotations of the pedestrians at earlier and later measurement times are shown.
  • Figure 8 shows the formation of sets of positive re-ID feature pairs 801 and negative re-ID feature pairs 802, on the basis of which various losses (cost functions) can be calculated for training a re-ID feature extractor 803.
  • the re-ID feature extraction is applied to at least two consecutive measurement times and the set of positive pairs 801 and the set of negative pairs 802 are formed from the resulting re-ID feature vectors.
  • Positive pairs correspond to two feature vectors that describe the same object (e.g. a pedestrian) at different measurement times.
  • Negative pairs correspond to two feature vectors that describe different objects (e.g. two different pedestrians) at the same or different measurement times. Whether feature vectors describe different or the same object is known for the training data of the training dataset (through appropriate annotation of the input data vectors that the training dataset contains).
  • the weights of the neural network are adapted in such a way that the distance between the feature vectors of positive pairs is reduced (ideally minimized), whereas the distance between the feature vectors of negative pairs is increased (ideally maximized).
  • This can be implemented, for example, using backpropagation of a suitable loss (cost function) and gradient descent.
  • a cost function is used as a contrastive loss, triplet loss, multiclass N-pair loss or constellation loss are used.
  • the training of the neural network is done as follows:
  • the above training steps 1) to 5) can be repeated as often as desired.
  • the weights of the neural network are adapted on the basis of a loss which reflects the quality of the association between measured values of two consecutive time steps.
  • Figure 9 illustrates the procedure for training a re-ID feature extractor, where the loss is calculated based on a computed association between measurements of consecutive measurement times.
  • the re-ID feature vectors 901, 902 of the measured values are first extracted for two consecutive time steps, then a distance matrix 903 is calculated and on this basis a soft association matrix 905 is calculated by a differentiable association module 904 (e.g. Deep Hungarian Network).
  • Soft here means that its entries (association values) approximate the binary entries (ie 0 or 1) of a real association matrix.
  • a loss 907 can be calculated, on the basis of which the network weights can be adjusted by backpropagation and gradient descent 908. It should be noted that this loss also penalizes if different features are assigned to the same object or if different features are assigned to different objects, since the soft association matrix then shows small association values for the same objects or high association values for different objects.
  • Figure 10 shows a flowchart 1000 illustrating a method for training a neural network to determine features of objects for object tracking.
  • a neural network is configured with a network architecture (i.e., a neural network is provided with such an architecture) such that, when fed with a set of sensor data containing one sensor data item for each of a plurality of objects, it determines a feature vector for each object depending on all of the sensor data items.
  • a network architecture i.e., a neural network is provided with such an architecture
  • a training data set is generated with a plurality of training data elements, wherein each training data element comprises a first set of sensor data relating to a first state of an environment with a set of multiple objects and a second set of sensor data relating to a second state of the environment, wherein in the second state the positions of the objects are at least partially changed compared to the first state.
  • features of the objects are determined by feeding the first set of sensor data to the neural network and features of the objects are determined by feeding the second set of sensor data to the neural network.
  • a loss is determined which, for each training data item, for each object, represents a deviation between the feature determined by the neural network for the object from the first set of sensor data and the feature determined by the neural network for the object from the second set of sensor data. and penalizes a lack of deviation between the feature determined by the neural network for the object from the first set of sensor data and, for each other of the objects, the feature determined by the neural network for the other object from the second set of sensor data.
  • the neural network is trained to reduce the loss.
  • 1003, 1004 and 1005 can take place repeatedly in alternation, for example the loss is determined for batches of training data elements (i.e. the training data set can, for example, have batches each with a plurality of training data elements (of the described form), for each of which a loss is generated and the neural network is trained for each batch to reduce the respective loss).
  • the loss is determined for batches of training data elements (i.e. the training data set can, for example, have batches each with a plurality of training data elements (of the described form), for each of which a loss is generated and the neural network is trained for each batch to reduce the respective loss).
  • the method of Figure 10 may be performed by one or more computers having one or more data processing units.
  • data processing unit may be understood as any type of entity that enables the processing of data or signals.
  • the data or signals may be handled according to at least one (i.e., one or more than one) specific function performed by the data processing unit.
  • a data processing unit may comprise or be formed from an analog circuit, a digital circuit, a logic circuit, a microprocessor, a microcontroller, a central processing unit (CPU), a graphics processing unit (GPU), a digital signal processor (DSP), a programmable gate array (FPGA) integrated circuit, or any combination thereof.
  • Any other way of implementing the respective functions described in more detail herein may also be understood as a data processing unit or logic circuit arrangement.
  • One or more of the method steps described in detail here can be carried out (e.g. implemented) by a data processing unit through one or more special functions that are performed by the data processing unit.
  • the method is therefore particularly computer-implemented.
  • the neural network after training, can be applied to sensor data obtained from at least one sensor to obtain features that are then used for object tracking.
  • the result of the object tracking can then be used to control a robotic device.
  • the neural network is used to generate a control signal for a robotic device by feeding it with sensor data concerning the robotic device and/or its environment.
  • robotic device can be understood as referring to any technical system (having a mechanical part whose movement is controlled), such as a computer-controlled machine, a vehicle, a household appliance, a power tool, a manufacturing machine, a personal assistant or an access control system.
  • Various embodiments may receive and use sensor data from various sensors such as video, radar, LiDAR, ultrasound, motion, thermal imaging, etc.

Landscapes

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

Abstract

Gemäß verschiedenen Ausführungsformen wird ein Verfahren zum Trainieren eines neuronalen Netzwerks zum Ermitteln von Merkmalen von Objekten für eine Objektverfolgung bereitgestellt, aufweisend Erzeugen eines Trainingsdatensatzes mit einer Vielzahl von Trainingsdatenelementen, wobei jedes Trainingsdatenelement einen ersten Satz von Sensordaten bezüglich eines ersten Zustands einer Umgebung mit einer Menge von mehreren Objekten und einen zweiten Satz von Sensordaten bezüglich eines zweiten Zustands der Umgebung, wobei in dem zweiten Zustand die Positionen der Objekte gegenüber dem ersten Zustand zumindest teilweise verändert sind, aufweist, Ermitteln von Merkmalen der Objekte durch Zuführen des ersten Satzes von Sensordaten zu dem neuronalen Netzwerk und Ermitteln von Merkmalen der Objekte durch Zuführen des zweiten Satzes von Sensordaten zu dem neuronalen Netzwerk, Ermitteln eines Verlust abhängig von den erzeugten Merkmalen und Trainieren des neuronalen Netzwerks zum Verringern des Verlusts.

Description

Beschreibung
Titel
Verfahren zum Trainieren eines neuronalen Netzwerks zum Ermiteln von Merkmalen von Objekten für eine Objektverfolgung
Stand der Technik
Die vorliegende Offenbarung bezieht sich auf Verfahren zum Trainieren eines neuronalen Netzwerks zum Ermiteln von Merkmalen von Objekten für eine Objektverfolgung.
Eine umfassende Erkennung des Umfelds eines Fahrzeugs bildet die Grundlage für Fahrerassistenzsysteme und automatisierte Fahrfunktionen. Der Detektion, Klassifikation und Verfolgung (Tracking) von Objekten, wie z.B. anderen Verkehrsteilnehmern, kommt dabei eine besondere Bedeutung zu. Heutzutage wird eine Vielzahl an Sensoren zur Erfassung des Fahrzeugumfelds eingesetzt. Dazu zählen z.B. Kameras, Radare, LiDAR oder Ultraschallsysteme.
Das Tracking von Objekten kann über Merkmale, sogenannte Re-ID-Merkmale, erfolgen. Jedoch werden diese typischerweise oft so ermitelt, dass sie „global“ und dauerhaft eindeutig sind (und nicht nur innerhalb einer Szene, in der eine Objektverfolgung durchgeführt werden soll), was umgekehrt die Flexibilität ihrer Auswahl einschränkt und somit ihre Verwendung für die Objektverfolgung beeinträchtigt.
Es sind deshalb effektivere Herangehensweisen für die Merkmalsextraktion für die Objektverfolgung wünschenswert. Offenbarung der Erfindung
Gemäß verschiedenen Ausführungsformen wird ein Verfahren zum Trainieren eines neuronalen Netzwerks zum Ermitteln von Merkmalen von Objekten für eine Objektverfolgung bereitgestellt, aufweisend:
• Konfigurieren eines neuronalen Netzwerks mit einer Netzwerkarchitektur, sodass es, wenn ihm ein Satz von Sensordaten zugeführt wird, der für jedes mehrerer Objekte ein Sensordatenelement enthält, für jedes Objekt abhängig von allen der Sensordatenelemente einen Merkmalsvektor ermittelt;
• Erzeugen eines Trainingsdatensatzes mit einer Vielzahl von Trainingsdatenelementen, wobei jedes Trainingsdatenelement einen ersten Satz von Sensordaten bezüglich eines ersten Zustands einer Umgebung mit einer Menge von mehreren Objekten und einen zweiten Satz von Sensordaten bezüglich eines zweiten Zustands der Umgebung, wobei in dem zweiten Zustand die Positionen der Objekte gegenüber dem ersten Zustand zumindest teilweise verändert sind, aufweist;
• Für jedes Trainingsdatenelement, o Ermitteln von Merkmalen der Objekte durch Zuführen des ersten Satzes von Sensordaten zu dem neuronalen Netzwerk und o Ermitteln von Merkmalen der Objekte durch Zuführen des zweiten Satzes von Sensordaten zu dem neuronalen Netzwerk;
• Ermitteln eines Verlust, der, für jedes Trainingsdatenelement, für jedes Objekt eine Abweichung zwischen dem Merkmal, das von dem neuronalen Netzwerk für das Objekt aus dem ersten Satz von Sensordaten ermittelt wurde, und dem Merkmal, das von dem neuronalen Netzwerk für das Objekt aus dem zweiten Satz von Sensordaten ermittelt wurde, bestraft und eine mangelnde Abweichung zwischen dem Merkmal, das von dem neuronalen Netzwerk für das Objekt aus dem ersten Satz von Sensordaten ermittelt wurde, und, für jedes andere der Objekte, dem Merkmal, das von dem neuronalen Netzwerk für das andere Objekt aus dem zweiten Satz von Sensordaten ermittelt wurde, bestraft; und
• Trainieren des neuronalen Netzwerks zum Verringern des Verlusts.
Das so trainierte neuronale Netz(werk) kann dann zur Extraktion von (Re-ID-)Merkmalen (also als Merkmalsextraktor) verwendet werden, die dann im Rahmen eines Objekttrackings eingesetzt werden. Die oben beschriebene Herangehensweise (z.B. in den unten beschriebenen Ausführungsformen) ermöglicht eine verbesserte Assoziation von Messwerten zu Objekttracks, was sich vorteilhaft auf die Gesamtperfbrmanz der Objekttrackings auswirkt, d.h. Objekte können genauer verfolgt werden, es treten weniger Trackabrisse auf und weniger Objekte gehen verloren (werden übersehen).
Gemäß der oben beschriebenen Herangehensweise ist vorgesehen, dass zum Training (und ggf. zur Extraktion von Re-ID-Merkmalen) ein Szenenkontext (insbesondere andere Objekte der gleichen Szene) verwendet wird. Dies erlaubt, dass szenenspezifische Merkmale zur Assoziation von Messwerten zu Objekttracks genutzt werden können. Damit verbunden können Re-ID-Merkmale extrahiert werden, welche besser für die Aufgabe des Objekttrackings geeignet sind, was sich wiederum positiv auf die Gesamtperformanz des Objekttrackings niederschlägt. Da die Extraktion der Re-ID- Merkmale auf die spezifischen Anforderungen des Objekttrackings angepasst ist, können die Verfahren recheneffizienter (z.B. durch kleinere neuronale Netze) umgesetzt werden. Es wird eine Netzwerkarchitektur einer Klasse von Netzwerkarchitekturen eingesetzt, welche zur Extraktion von szenenspezifischen Re-ID-Merkmalen geeignet ist.
Im Folgenden werden verschiedene Ausführungsbeispiele angegeben.
Ausführungsbeispiel 1 ist ein Verfahren zum Trainieren eines neuronalen Netzwerks zum Ermitteln von Merkmalen von Objekten für eine Objektverfolgung, wie oben beschrieben.
Ausführungsbeispiel 2 ist das Verfahren nach Ausführungsbeispiel 1, aufweisend Konfigurieren des neuronalen Netzwerks mit einer Netzwerkarchitektur, sodass es, wenn ihm ein Satz von Sensordaten, der für jedes mehrerer Objekte ein Sensordatenelement enthält, zugeführt wird, den Merkmalsvektor über eine Verarbeitung in mehreren Stufen durchführt, wobei mindestens eine Stufe für jedes der Objekte Merkmalskomponenten erzeugt, ein Max-Pooling der Merkmalskomponenten über die Objekte durchgeführt wird und die Merkmalskomponenten sowie das Ergebnis des Max-Poolings der Merkmalskomponenten der folgenden Stufe zugeführt werden.
Auf diese Weise wird erreicht, dass das neuronale Netz für jedes Objekt abhängig von allen der Sensordatenelemente einen Merkmalsvektor ermittelt, d.h. dass es bei der Ermittlung eines Merkmalsvektors für ein Objekt die anderen Objekte berücksichtigt, also die Merkmalsvektoren auf der Grundlage eines lokalen Kontexts (Sensordatenelemente des einzelnen Objekts) als auch eines globalen Kontexts der Objekte (Ergebnis des Max-Pooling über die Objekte) ermittelt. Alternativ dazu kann ein Transformer-Netzwerk eingesetzt werden.
Ausführungsbeispiel 3 ist das Verfahren nach Ausführungsbeispiel 1 oder 2, wobei jedes Trainingsdatenelement eine Information darüber enthält, welches Objekt in dem ersten Zustand welchem Objekt in dem zweiten Zustand entspricht, anhand der ermittelten Merkmale der Objekte ermittelt wird, welche Objekte in dem ersten Zustand welchen Objekten in dem zweiten Zustand entsprechen und der Verlust durch Vergleich der in den Trainingsdatenelementen enthaltenden Informationen darüber, welches Objekt in dem ersten Zustand welchem Objekt in dem zweiten Zustand entspricht, mit dem Ergebnis der Ermittlung anhand der ermittelten Merkmale, welche Objekte in dem ersten Zustand welchen Objekten in dem zweiten Zustand entsprechen, ermittelt wird.
Als Ground Truth kann also die Assoziierung von Objekten (z.B. in Form einer Assoziationsmatrix) vorgesehen werden. Damit wird das neuronale Netzwerk so trainiert, dass es Merkmale auswählt, die speziell für eine Objektverfolgung gut geeignet sind. Das Ergebnis der Ermittlung anhand der ermittelten Merkmale, welche Objekte in dem ersten Zustand welchen Objekten in dem zweiten Zustand entsprechen, ist beispielsweise eine Soft-Assoziationsmatrix.
Ausführungsbeispiel 4 ist ein Verfahren zum Verfolgen von Objekten, aufweisend
• Erfassen von Sensordaten einer ersten Menge von Objekten zu einem ersten Zeitpunkt;
• Erfassen von Sensordaten einer zweiten Menge von Objekten zu einem zweiten Zeitpunkt;
• Zuführen der Sensordaten der ersten Menge von Objekten zu dem gemäß einem der Ausführungsbeispiele 1 bis 3 trainierten neuronalen Netzwerk zum Erzeugen erster Merkmale;
• Zuführen der Sensordaten der zweiten Menge von Objekte zu dem trainierten neuronalen Netzwerk zum Erzeugen zweiter Merkmale; und
• Paarweises Assoziieren von Objekten der ersten Menge von Objekten der zweiten Menge anhand der ersten Merkmale und der zweiten Merkmale. Ausführungsbeispiel 5 ist das Verfahren nach Ausführungsbeispiel 4, aufweisend Erfassen von Sensordaten von Objekten in einer Szene zu dem ersten Zeitpunkt, Gruppieren der Objekte zu mehreren ersten Gruppen anhand ihrer örtlichen Nähe, Auswählen einer der ersten Gruppen als die erste Menge von Objekten, Erfassen von Sensordaten von Objekten in der Szene zu dem zweiten Zeitpunkt, Gruppieren der Objekte zu mehreren zweite Gruppen anhand ihrer örtlichen Nähe und Auswählen einer der zweiten Gruppen als die zweite Menge von Objekten, so dass die zweite Menge von Objekten diejenige zweite Gruppe ist, die er ersten Menge von Objekten innerhalb der Szene am nächsten liegt.
Objekte in Szenen werden somit als (örtliche) Cluster behandelt. Dies erleichtert die Unterscheidung der Merkmale anhand der Merkmale, da nicht alle Objekte in einer Szene unterschieden werden brauchen, sondern lediglich diejenigen einer Gruppe.
Ausfuhrungsbeispiel 6 ist eine Datenverarbeitungseinrichtung (z.B. eine Steuereinrichtung), die eingerichtet ist, ein Verfahren nach einem der Ausfuhrungsbeispiel 1 bis 5 durchzuführen.
Ausfuhrungsbeispiel 7 ist ein Computerprogramm mit Befehlen, die, wenn sie durch einen Prozessor ausgeführt werden, bewirken, dass der Prozessor ein Verfahren nach einem der Ausführungsbeispiele 1 bis 5 durchführt.
Ausführungsbeispiel 8 ist ein computerlesbares Medium, das Befehle speichert, die, wenn sie durch einen Prozessor ausgeführt werden, bewirken, dass der Prozessor ein Verfahren nach einem der Ausführungsbeispiel 1 bis 5 durchführt.
In den Zeichnungen beziehen sich ähnliche Bezugszeichen im Allgemeinen auf dieselben Teile in den ganzen verschiedenen Ansichten. Die Zeichnungen sind nicht notwendigerweise maßstäblich, wobei die Betonung stattdessen im Allgemeinen auf die Darstellung der Prinzipien der Erfindung gelegt wird. In der folgenden Beschreibung werden verschiedene Aspekte mit Bezug auf die folgenden Zeichnungen beschrieben.
Figur 1 zeigt ein Fahrzeug.
Figur 2 veranschaulicht die Objektverfolgung mittels Re-ID-Merkmalen. Figur 3 veranschaulicht die Assoziation von getrackten Objekten mit aktuell erfassten Objekten.
Figur 4 veranschaulicht eine Merkmalsextraktion gemäß einer Ausfuhrungsform.
Figur 5 veranschaulicht eine Merkmalsextraktion gemäß einer weiteren Ausfuhrungsform .
Figur 6 zeigt eine mögliche Architektur eines neuronalen Netzes für die Re-ID- Merkmalsextraktion.
Figur 7 zeigt ein Beispiel, in welchem Trajektorien von Fußgängern dargestellt sind, die zum Training eines Re-ID-Merkmalsextraktors genutzt werden können.
Figur 8 zeigt zum Bilden von Mengen positiver Re-ID-Merkmalspaare und negativer Re- ID-Merkmalspaare, auf deren Basis verschiedene Verluste (Kostenfunktionen) zum Training einen Re-ID-Merkmalsextraktors berechnet werden können.
Figur 9 veranschaulicht ein das Vorgehen zum Training eines Re-ID-Merkmalsextraktors, wobei der Verlust auf Grundlage einer berechneten Assoziation zwischen Messwerten aufeinanderfolgender Messzeitpunkte berechnet wird.
Figur 10 zeigt ein Ablaufdiagramm, das ein Verfahren zum Trainieren eines neuronalen Netzwerks zum Ermitteln von Merkmalen von Objekten für eine Objektverfolgung veranschaulicht.
Die folgende ausführliche Beschreibung bezieht sich auf die begleitenden Zeichnungen, die zur Erläuterung spezielle Details und Aspekte dieser Offenbarung zeigen, in denen die Erfindung ausgefuhrt werden kann. Andere Aspekte können verwendet werden und strukturelle, logische und elektrische Änderungen können durchgefuhrt werden, ohne vom Schutzbereich der Erfindung abzuweichen. Die verschiedenen Aspekte dieser Offenbarung schließen sich nicht notwendigerweise gegenseitig aus, da einige Aspekte dieser Offenbarung mit einem oder mehreren anderen Aspekten dieser Offenbarung kombiniert werden können, um neue Aspekte zu bilden. Im Folgenden werden verschiedene Beispiele genauer beschrieben.
Figur 1 zeigt ein (z.B. autonomes) Fahrzeug 101.
Im Beispiel von Figur 1 ist das Fahrzeug 101, beispielsweise ein PKW oder LKW, mit einer Fahrzeugsteuereinrichtung 102 versehen.
Die Fahrzeugsteuereinrichtung 102 weist Datenverarbeitungskomponenten auf, z.B. einen Prozessor (z.B. eine CPU (Zentraleinheit)) 103 und einen Speicher 104 zum Speichern von Steuersoftware, gemäß der die Fahrzeugsteuereinrichtung 102 arbeitet, und Daten, die von dem Prozessor 103 verarbeitet werden.
Beispielsweise weist die gespeicherte Steuerungssoftware (Computerprogramm) Anweisungen auf, die, wenn der Prozessor sie ausfuhrt, bewirken, dass der Prozessor 103 ein oder mehrere neuronale Netzwerke 107 implementiert.
Die im Speicher 104 gespeicherten Daten können beispielsweise Bilddaten beinhalten, die von einer oder mehreren Kameras 105 erfasst werden. Die eine oder die mehreren Kameras 105 können beispielsweise ein oder mehrere Graustufen- oder Farbfotos der Umgebung des Fahrzeugs 101 aufhehmen.
Die Fahrzeugsteuereinrichtung 102 kann basierend auf den Bilddaten ermitteln, ob und welche Objekte, z.B. feste Objekte wie Verkehrszeichen oder Straßenmarkierungen oder bewegliche Objekte wie Fußgänger, Tiere und andere Fahrzeuge in der Umgebung des Fahrzeugs 101 vorhanden sind.
Bilddaten dienen hier nur als Beispiel für Sensordaten und es können auch Daten von anderen Sensoren (Ultraschall, LiDAR etc.) verwendet werden.
Das Fahrzeug 101 kann dann von der Fahrzeugsteuereinrichtung 102 gemäß den Ergebnissen der Objektbestimmung gesteuert werden. So kann die Fahrzeugsteuereinrichtung 102 beispielsweise einen Aktuator 106 (z.B. eine Bremse) steuern, um die Geschwindigkeit des Fahrzeugs zu steuern, z.B. um das Fahrzeug zu bremsen. Dazu ist es typischerweise wünschenswert, Objekte nicht nur zu detektieren, sondern auch zu verfolgen (tracken), beispielsweise um ihre spätere Position vorherzusagen, indem betrachtet wird, wie sie sich in der Vergangenheit bewegt haben und um ein konsistentes Verständnis der aktuellen (Verkehrs-)Situation zu gewinnen.
Die Verfolgung (Tracking) von Objekten wird beispielsweise mit rekursiven Filtern (z.B. Kalman Filter) umgesetzt, welche drei Verarbeitungsschritte durchführen: Prädiktion, Assoziation und Aktualisierung. Bei der Prädiktion werden bestehende Objekte zunächst mit Hilfe von Bewegungsmodellen auf den aktuellen Messzeitpunkt prädiziert. Anschließend werden aktuelle Messungen (beispielsweise Objektdetektion in Kamerabildem) mit den prädizierten Objekten assoziiert. Abschließend erfolgt eine Korrektur der prädizierten Objekte mit Hilfe der assoziierten Messungen in einem Update-Schritt. Insbesondere der Assoziation von Messungen zu Objekttracks kommt eine wichtige Bedeutung zu, da fehlerhafte Assoziationen zu ungenauen Objekttracks oder gar dem Verlust von Objekttracks führen. Grundlage für die Assoziation bilden Distanzmetriken, welche die Nähe von Messungen und verfolgten Objekten in einem Merkmalsraum abbilden. Verwendete Metriken sind z.B. die Euklidische Distanz oder die Mahalanobis-Distanz. Typischerweise werden für die Distanzberechnung geometrische Merkmale wie die Objektposition, Objektgröße oder Objektgeschwindigkeit genutzt. Anschließend werden auf Grundlage der berechneten Distanzen mit Hilfe eines Assoziationsalgorithmus Messwerte zu getrackten Objekten zugeordnet. Beispiele für solche Algorithmen sind der Ungarische Algorithmus oder verschiedene Ausprägungen des Nearest-Neighbor- Algorithmus. Aufgrund des maßgeblichen Einflusses der geometrischen Merkmale treten Probleme hauptsächlich dann auf, wenn Messungen und Objekte in diesen Dimensionen nicht eindeutig miteinander assoziiert werden können (z.B. eng zusammenstehende Fußgängergruppen, ungenaue Prädiktionen aufgrund von längeren Verdeckungen, usw.). Genannte Probleme während der Assoziation können durch die Hinzunahme geeigneter Merkmale abgemildert oder ganz verhindert werden. Merkmale gelten hierbei als geeignet, wenn sie eine eindeutige Assoziation von Messungen zu Objekten unterstützen. Dies können beispielsweise ansichtsbasierte Merkmale sein, welche die Erscheinung der Objekte beschreiben (Beispiel: Wenn nur ein Fußgänger aus einer Fußgängergruppe eine rote Jacke trägt, dann ist die rote Jacke ein gutes Merkmal um diesen Fußgänger zu verfolgen.). Die Extraktion sogenannter Re-Identifikationsmerkmale (kurz Re-ID-Merkmale) wird zur Unterstützung des Objekttrackings angewandt z.B. in Überwachungssystemen für Bahnhöfe, Flughäfen oder Fußgängerzonen angewandt, um Personen in verschiedenen Kameras auch über längere Zeiträume wiedererkennen zu können.
Figur 2 veranschaulicht die Objektverfolgung mittels Re-ID-Merkmalen.
Dazu werden Messwerte 203 (die aus Sensordaten, z.B. Kameradaten 201 durch eine Vorverarbeitung 202 ermittelt werden) vor der Assoziation 204 mit getackten Objekten 205 mit aus einer Merkmalsextraktion 206 gewonnenen Re-ID-Merkmalen zu erweiterten Messwerten 207 angereichert, so dass die anschließende Assoziation 204 (und insbesondere die Distanzberechnung) sowohl auf Basis der geometrischen Merkmale als auch auf Basis der Re-ID-Merkmale erfolgen kann. Aktuell erfasste Objekte (entsprechend der Messwerte 203) werden hierbei mit der Prädiktion 208 getackter Objekte 205 assoziiert (und anschließend eine Aktualisierung 209 der getackten Objekte 205 durchgeführt). Dies liefert als Ausgabe Verfolgungsinformationen 210 (z.B. in Form von Trajektorien) über die erfassten Objekte.
Figur 3 veranschaulicht die Assoziation von getackten Objekten 301 mit aktuell erfassten („gemessenen“) Objekten 302 (aus Messwerten 305, z.B. Detektionen als Objekt-Bounding-Boxes) über eine Distanzberechnung 303 mittels eines Assoziationsalgorithmus 304. Die Distanzberechnung kann dabei auf den typischerweise verwendeten geometrischen Merkmalen (Position, Größe, Geschwindigkeit, usw.) und/oder Re-ID-Merkmalen basieren.
Die Re-ID-Merkmale werden typischerweise mit Hilfe von tiefen neuronalen Netzen extrahiert (z.B. eines der neuronale Netze 107). Grundlage für das Training entsprechender Netze sind große annotierte Datensätze, welche zahlreiche Objekte (z.B. Personen) mit einer Vielzahl von Ansichten pro Objekt enthalten. Ziel des Trainings ist es, geeignete Gewichte für das neuronale Netz zu finden, so dass ein für die Re- Identifikation der Objekte geeigneter Merkmalsraum geschaffen wird (in den das neuronale Netz Eingaben (z.B. Ansichten von Objekten) abbildet), d.h. verschiedene Ansichten des gleichen Objektes (z.B. der gleichen Person) sollen auf Merkmale (Merkmalsvektoren) abgebildet werden, die eine geringe Distanz im Merkmalsraum aufweisen, wohingegen die Distanzen zu Merkmalsvektoren, auf die Ansichten anderer Objekte abgebildet werden, maximiert werden sollen.
Eine so trainierte Merkmalsabbildung (Merkmalsextraktion) eignet sich, um Objekte aus einer großen Datenbank wieder zu erkennen und kann damit auch für die Assoziation während des Trackings hilfreich sein.
Im Detail sollen Re-ID-Merkmale für die Verwendung während des Objekttrackings folgende Eigenschaften aufweisen:
• Szenenspezifische Merkmale: Die Merkmale sollen geeignet sein, um Objekte von anderen Objekten innerhalb der gleichen Szene unterscheiden zu können. Dafür ist es nicht notwendig, dass ein Objekt von allen Objekten (auch anderer Szenen) unterscheidbar ist. Typische Verfahren zur Extraktion von Re-ID-Merkmalen leisten allerdings nur Letzteres. Mit Bezug auf das vorhergehende Beispiel: Falls eine Person als einzige in einer Szene eine rote Jacke trägt, ist die rote Jacke ein gutes Merkmal, um die Person von anderen Personen der Szene zu unterscheiden. Eine rote Jacke ist aber bestimmt kein gutes Merkmal, um eine Person von allen anderen Personen auf der Welt zu unterscheiden. Das bedeutet, dass für Tracking-Anwendungen andere Merkmale als bei klassischen Re-ID -Anwendungen geeignet sein können. Darüber hinaus können sich die Merkmale für ein und dieselbe Person szenenspezifisch unterscheiden. Je nach Szenenkontext kann es in einem Fall die rote Jacke sein, wenig später evtl, der getragene Regenschirm (z.B. falls eine zweite Person mit roter Jacke die Szene betritt).
• Konstanz über kurzen Zeitraum: Bei der Objektverfolgung müssen Objekte nur über einen geringen zeitlichen Horizont wiedererkannt werden. Typischerweise nur von einem Messzeitpunkt zum nächsten (wenige Millisekunden). Im Fall von Verdeckungen kann es notwendig sein, Objekte in wenigen Sekunden wiedererkennen zu müssen. Damit ist es nur notwendig, dass das Re-ID-Merkmal für ein Objekt nahezu konstant innerhalb dieses geringen Zeitraums ist, nicht aber über Minuten, Stunden, oder Tage. Eine Person muss beispielsweise nur innerhalb einer Szene wiedererkannt und von anderen Personen unterschieden werden. Wenn die gleiche Person in einer anderen Szene wieder auftaucht, ist es nicht notwendig zu wissen, dass es sich um dieselbe Person handelt. In Hinblick auf die obigen gewünschten Eigenschaften einer Merkmalsextraktion (d.h. (d.h. Anforderungen an die Merkmalsextraktion) wird gemäß verschiedenen Ausführungsformen eine Herangehensweise bereitgestellt, die eine verbesserte Objektverfolgung durch eine Verbesserung der Assoziation von Messwerten (z.B. Objektdetektionen) zu Objekttracks (also verfolgten Objekten) und damit ein verbessertes Objekttracking ermöglicht. Eine Verbesserung des Objekttrackings spiegelt sich in genaueren Objekttrajektorien, weniger Trackabrissen und weniger Objektverlusten wider.
Für die Verbesserung der Assoziation während des Objekttrackings werden Re-ID- Merkmale genutzt (z.B. wie mit Bezug auf die Figuren 1 bis 3 beschrieben). Das Training und die Extraktion der Re-ID-Merkmale werden jedoch auf die spezifischen Anforderungen an die Merkmalsextraktion (wie oben beschrieben) ausgerichtet. Insbesondere werden gemäß verschiedenen Ausführungsformen ein Verfahren zur Extraktion von Re-ID-Merkmalen während des Trackings, spezifische Netzwerkarchitekturen für Re-ID-Merkmalsextraktoren und Verfahren zum Training geeigneter Re-ID-Merkmalsextraktoren bereitgestellt.
Übliche Verfahren zur Extraktion von Re-ID -Merkmalen trainieren entsprechende tiefe neuronale Netze auf großen annotierten Datensätzen mit dem Ziel, verschiedene Ansichten eines Objektes (z.B. einer Person) von Ansichten anderer Objekte (z.B. aller anderen Personen) abgrenzen zu können. Ein fertig trainiertes neuronales Netz wird dann auf jedes detektierte Objekt individuell angewandt, um für dieses Objekt Re-ID- Merkmale zu generieren, d.h., wenn beispielsweise fünf Personen in einer Szene detektiert wurden, wird das Netz fünf Mal unabhängig voneinander ausgeführt (einmal für jede Detektion).
Im Gegensatz dazu ist gemäß verschiedenen Ausführungsformen ein Ansatz vorgesehen, wie er in Figur 4 veranschaulicht ist.
Figur 4 veranschaulicht eine Merkmalsextraktion gemäß einer Ausführungsform.
Hier wird ein Re-ID-Merkmalsextraktor 401 (neuronales Netz) genutzt, welcher eine Vielzahl von Messwerten (z.B. Detektionen) 402 als Eingabe nutzt und für die Vielzahl von Messwerten 402 zugehörige Re-ID-Merkmalsvektoren 403 als Ausgabe generiert. Durch dieses Vorgehen wird es dem Merkmalsextraktor 401 ermöglicht, szenenspezifische Merkmale zu extrahieren - d.h. Merkmale, welche besonders gut zur Unterscheidung bzw. Wiedererkennung der Messwerte der Szene geeignet sind (im Beispiel zur Unterscheidung der fünf Personen).
Dies impliziert, dass der Szenenkontext bei der Extraktion der Merkmale eine große Rolle spielt. Mit Bezug auf das obige Beispiel der roten Jacke: Wenn nur eine Person in der Szene eine rote Jacke trägt, wird die rote Jacke ein gutes Merkmal zur Wiedererkennung sein. Befinden sich mehrere Personen mit roten Jacken in der Szene, wird der Merkmalsextraktor andere Merkmale zur Unterscheidung bzw.
Wiedererkennung der Personen heranziehen (z.B. Haarfarbe, getragener Regenschirm, etc.).
Figur 5 veranschaulicht eine Merkmalsextraktion gemäß einer weiteren Ausführungsform .
Gemäß der Ausfuhrungsform von Figur 5 werden Messwerte einer Szene 501 zunächst zu Clustern 502, 503 gruppiert (geflüstert werden und anschließend erfolgt eine Merkmalsextraktion 504, 505 pro Cluster 502, 503. Dies hat den Vorteil, dass die Re-ID- Merkmalsextraktion auf die Messwerte konzentriert erfolgen kann, bei welchen ein hohes Risiko einer Falschassoziation besteht (z.B. eng zusammenstehende Fußgängergruppen). Mit Bezug auf das obige Beispiel der roten Jacke: Auch wenn es in einer Szene zwei Personen mit roten Jacken gibt, kann eine rote Jacke ein geeignetes Merkmal zur Unterscheidung Wiedererkennung von den anderen Personen (und damit Wiedererkennung) sein, z.B. wenn die zwei Personen mit roten Jacken weit entfernt voneinander sind (z.B. auf unterschiedlichen Fahrbahnseiten) und damit zu unterschiedlichen Clustern 502, 503 gehören.
Gemäß einer weiteren Ausführungsform ist vorgesehen, dass die Re-ID- Merkmalsextraktion eine Gewichtung der Messwerte berücksichtigt. Im Detail sollen die Gewichte widerspiegeln, wie stark einzelne Messwerte von anderen Messwerten unterscheidbar sein sollen. Die Re-ID-Merkmalsextraktion kann sich dann auf die Extraktion geeigneter Unterscheidungsmerkmale konzentrieren. Gewichte können beispielsweise paarweise (zwischen allen Messwerten) angegeben werden, so dass jedes Gewicht angibt, wie wichtig eine Unterscheidung der beiden Messwerte ist. Die Gewichte spiegeln beispielsweise die Trennbarkeit auf Basis der geometrischen Merkmale (wie Position, Ausdehnung, Geschwindigkeit) wider, d.h. schlecht trennbare Messwerte erhalten ein hohes Gewicht. Das mit Bezug auf Figur 5 beschriebene kann als Spezialfall einer solchen Gewichtung gesehen (bzw. implementiert) werden: paarweise Gewichte sind 1 für alle Paare von Messwerten des gleichen Clusters, 0 andernfalls.
Gemäß verschiedenen Ausführungsformen wird für ein neuronales Netz zur Re-ID- Merkmalsextraktion (das in oben genannter Weise angewandt werden soll) eine Architektur verwendet, die folgende Eigenschaften erfüllt:
• Die Eingabe kann eine beliebige Anzahl N an Messwerten in Form von N Eingabedatenvektoren (die auch als Eingabemerkmalsvektoren angesehen werden können) enthalten. Messwerte können beispielsweise Detektionen von Fußgängern sein, deren Eingabevektoren beispielsweise zugehörige Sensorrohdaten (Bildpixel, LiDAR-Punktwolken, Radar Reflektionen, usw.) oder daraus abgeleitete Größen enthalten.
• Die N Messwerte können in beliebiger Reihenfolge eingegeben werden, d.h. die Berechnung der Re-ID-Merkmale ist unabhängig von der Reihenfolge.
• Die Ausgabe des Netzes sind N Re-ID-Merkmalsvektoren, wobei N der Anzahl der Eingangsmesswerte entspricht.
Figur 6 zeigt eine mögliche Architektur eines neuronalen Netzes für die Re-ID- Merkmalsextraktion.
Die Eingabe des Netzes sind die Messwerte 601 (z.B. Fußgängerdetektionen). Die Messwerte sind ungeordnet (weil die Reihenfolge für die extrahierten Merkmale irrelevant sein soll). Jeder Messwert wird durch bestimmte Eigenschaften in Form eines Eingabedatenvektors charakterisiert (z.B. Sensorrohdaten für die Detektionen wie Bildpixel, LiDAR-Punkte, Radar Reflektionen oder daraus abgeleitete Daten). Die Ausgabe 605 des Netzes entspricht den berechneten Re-ID-Merkmalsvektoren (d.h. ein Merkmalsvektor für jeden Messwert der Eingabe 601).
Die erste Schicht 602 prozessiert die Daten jedes Messwertes unabhängig voneinander mit Hilfe einer Messwert-weisen vollvermaschten Schicht (ID-conv). Diese Schicht wird durch eine Gewichtsmatrix M und einen Bias-Vektor b charakterisiert. Um von der Eingabe-Repräsentation (Messwertdaten) zur ersten versteckten Schicht zu gelangen, wird für jeden Messwert die gleiche Gewichtsmatrix M und der gleiche Bias-Vektor b verwendet (sog. weight-sharing). Die Ausgabe solcher ID-conv Schichten ist eine neue Darstellung der Messwert-weisen Daten (Messwert-spezifische lokale Merkmalsvektoren). Eine ID-conv Schicht operiert somit lokal, in dem lediglich die Merkmale innerhalb eines Messwertes miteinander kombiniert werden (lokaler Kontext). Im Beispiel extrahiert eine ID-conv Schicht für jeden Fußgänger individuelle Merkmale (z.B. bezüglich deren Form, Farbe, etc.).
Es folgt eine Pooling-Schicht 603, die die Messwert- weisen Merkmale auf ein einziges (sog. globales) Merkmal reduziert. Im dargestellten Beispiel wird das Maximum der Merkmale der ersten versteckten Schicht berechnet (globales Max-Pooling). Durch so eine Pooling-Schicht wird Information über mehrere Messwerte hinweg aggregiert, wodurch Abhängigkeiten zwischen den Messwerten (globaler Kontext) abgebildet werden kann, d.h. die Pooling-Schicht 603 erlaubt es, die zuvor für jeden Fußgänger individuell extrahierten Merkmale, miteinander zu kombinieren und in Relation zu setzen.
Um diese globale Beziehung zwischen den Merkmalen in der weiteren Berechnung zu nutzen, kann der globale Merkmalsvektor an die Messwert-spezifischen lokalen Merkmalsvektoren angehängt werden (append). Nachfolgende ID-conv Schichten 604 (ähnlich der ersten Schicht 602, ggf. zusammen mit einer jeweiligen Max-Pooling- Schicht 603) können bei ihrer Messwert-weisen Merkmalsextraktion folglich auch auf den globalen Kontext zurückgreifen. Im Beispiel: Es können Merkmale, welche die einzelnen Fußgänger unterscheiden, hervorgehoben werden.
Wie in Figur 6 dargestellt ist es möglich, dass mehrere ID-conv + Pooling + Append Verarbeitungsblöcke aneinandergereiht werden, um letztendlich komplexe Re-ID- Merkmalsvektoren 605 zu extrahieren.
Bei der in Figur 6 gezeigten Architektur handelt es sich um eine konkrete Realisierung, welche sich vielfältig abwandeln lässt. Eine generalisierte Basisarchitektur lässt sich wie folgt beschreiben: • Als Eingabe dient eine ungeordnete Liste von Messwerten. Ausgabe der Netzarchitektur ist eine Liste von Re-ID-Merkmalsvektoren (ein Ausgangsvektor pro Eingangsmesswert).
• Die Architektur nutzt eine beliebige Anzahl von Schichten auf, auf welche eine Messwert-weise Extraktion von (lokalen) Merkmalen durchfuhren. In einer Ausgestaltung wird ein weight-sharing bei der Messwert-weisen Merkmalsextraktion umgesetzt.
• Die Architektur beinhaltet mindestens eine globale Pooling-Schicht, welche die Messwert-weise extrahierten lokalen Merkmale zu einem globalen Merkmalsvektor kombiniert. Darüber hinaus können weitere Pooling Operatoren nach den verschiedenen Messwert-weisen Merkmalsextraktionsschichten verwendet werden. In einer Ausführungsform verwenden die Pooling-Schichten den Max-Pooling- Operator. Andere Pooling-Operatoren (beispielsweise Ave rage-Pooling) sind jedoch auch denkbar.
• Die Architektur verwendet mindestens ein Konkatenierungsmodul (append), welches globale (gepoolte) Merkmalsvektoren mit den lokalen (Messwert-weisen) Merkmalsvektoren zusammenfuhrt.
Für die beschriebene Basisarchitektur sind verschiedene Erweiterungen möglich, wie zum Beispiel:
• Globaler Merkmalsvektor: Der gepoolte Merkmalsvektor kann vor der Konkatenierung an die lokalen Merkmalsvektoren beliebig weiterverarbeitet werden, z.B. mit Hilfe von vollvermaschten Schichten.
• Reihenfolge: Auch in späteren Schichten können (lokale oder globale) Merkmale aus früheren Schichten direkt verwendet werden, z.B. mit Hilfe von sogenannten Skip- Connections.
Grundlage das Training des Re-ID-Merkmalsextraktors sind Datensätze, in welchen Trajektorien von Objekten annotiert sind. Dies bedeutet, dass Objekte in individuellen Messzeitpunkten annotiert sind und eine Assoziation zwischen den Messzeitpunkten (z.B. mittels Objekt-IDs) existiert.
Figur 7 zeigt ein Beispiel, in welchem Trajektorien 701 bis 705 von Fußgängern dargestellt sind, die zum Training eines Re-ID-Merkmalsextraktors genutzt werden können. Die mit ”+” gekennzeichneten Fußgänger beziehen sich auf den gleichen Sensormesszeitpunkt. Darüber hinaus sind Annotationen der Fußgänger zu früheren und späteren Messzeitpunkten dargestellt.
Figur 8 zeigt zum Bilden von Mengen positiver Re-ID-Merkmalspaare 801 und negativer Re-ID-Merkmalspaare 802, auf deren Basis verschiedene Verluste (Kostenfunktionen) zum Training einen Re-ID-Merkmalsextraktors 803 berechnet werden können.
Wie in Figur 8 dargestellt, ist für das Training gemäß verschiedenen Ausführungsformen vorgesehen, dass die Re-ID-Merkmalsextraktion auf mindestens zwei aufeinanderfolgende Messzeitpunkte angewandt wird und aus den daraus resultierenden Re-ID-Merkmalsvektoren die Menge von positiven Paaren 801 und die Menge von negativen Paaren 802 gebildet werden.
Positive Paare entsprechen jeweils zwei Merkmalsvektoren, welche das gleiche Objekt (z.B. einen Fußgänger) zu unterschiedlichen Messzeitpunkten beschreiben. Negative Paare entsprechen jeweils zwei Merkmalsvektoren, welche unterschiedliche Objekte (z.B. zwei unterschiedliche Fußgänger) zum gleichen oder zu unterschiedlichen Messzeitpunkten beschreiben. Ob Merkmalsvektoren unterschiedliche oder das gleiche Objekt beschreiben, ist für die Trainingsdaten des Trainingsdatensatzes (durch entsprechende Annotation der Eingabedatenvektoren, die der Trainingsdatensatz enthält) bekannt.
Wenn dieses Vorgehen auf eine Vielzahl von kurzen Sequenzen (d.h. aufeinanderfolgende Messzeitpunkte) des annotierten Trainingsdatensatzes angewendet wird, können große Mengen an positiven und negativen Paaren generiert werden.
Beim Training werden die Gewichte des neuronalen Netzes in der Art adaptiert, dass die Distanz zwischen den Merkmalsvektoren von positiven Paaren reduziert (idealerweise minimiert) wird, wohingegen eine Distanz zwischen den Merkmalsvektoren von negativen Paaren erhöht (idealerweise maximiert) wird. Dies kann beispielsweise mit Hilfe von Rückpropagation eines geeigneten Verlusts (Kostenfunktion) und Gradientenabstieg umgesetzt werden. Beispielsweise wird ein als Kostenfunktion ein konstrastiver Verlust, Triplet-Verlust, Multiclass-N-Pair-Verlust oder Konstellationsverlust verwendet.
Das Training des neuronalen Netzes erfolgt also beispielsweise wie folgt:
1) Generierung mehrerer Sequenzen bestehend aus zwei oder mehr Messzeitpunkten
2) Berechnung der Re-ID-Merkmalsvektoren durch Anwendung des neuronalen Netzes
3) Generierung von positiven und negativen Paaren der berechneten Re-ID- Merkmalsvektoren
4) Berechnung des Verlusts
5) Adaption der Netzwerkgewichte durch Rückpropagation des Verlusts und Gradientenabstieg.
Die obigen Trainingsschritte 1) bis 5) können beliebig oft wiederholt werden.
Gemäß einer weiteren Ausführungsform ist vorgesehen, dass die Gewichte des neuronalen Netzes auf Grundlage eines Verlusts, welcher die Güte der Assoziation zwischen Messwerten zweier aufeinanderfolgender Zeitschritte widerspiegelt, adaptiert werden.
Figur 9 veranschaulicht ein das Vorgehen zum Training eines Re-ID-Merkmalsextraktors, wobei der Verlust auf Grundlage einer berechneten Assoziation zwischen Messwerten aufeinanderfolgender Messzeitpunkte berechnet wird.
Dazu werden für zwei aufeinanderfolgende Zeitschritte zunächst die Re-ID- Merkmalsvektoren 901, 902 der Messwerte extrahiert, anschließend eine Distanzmatrix 903 berechnet und auf deren Basis durch ein differenzierbares Assoziationsmodul 904 (z.B. Deep Hungarian Network) eine Soft-Assoziationsmatrix 905 berechnet. ’’Soft” bezeichnet hierbei, dass ihre Einträge (Assoziationswerte) die binären Einträge (d.h. 0 bzw. 1) einer realen Assoziationsmatrix annähern. Schließlich kann durch einen Vergleich der Soft-Assoziationsmatrix mit der realen Assoziationsmatrix (die durch die Labels, d.h. Annotationen, des Trainingsdatensatzes bekannt ist) ein Verlust 907 berechnet werden, auf dessen Grundlage durch Rückpropagation und Gradientenabstieg 908 die Netzwerkgewichte angepasst werden können. Es sollte beachtet werden, dass auch dieser Verlust es bestraft, wenn dem gleichen Objekt unterschiedliche Merkmale zu geordnet werden bzw. unterschiedlichen Objekte abweichende Merkmale zugeordnet werden, da dann die Soft-Assoziationsmatrix entsprechend für gleiche Objekte kleine Assoziationswerte aufweist bzw. für unterschiedliche Objekte hohe Assoziationswerte aufweist.
Zusammengefasst wird gemäß verschiedenen Ausführungsformen ein Verfahren bereitgestellt, wie in Figur 10 dargestellt.
Figur 10 zeigt ein Ablaufdiagramm 1000, das ein Verfahren zum Trainieren eines neuronalen Netzwerks zum Ermitteln von Merkmalen von Objekten für eine Objektverfolgung veranschaulicht.
In 1001 wird ein neuronales Netzwerk mit einer Netzwerkarchitektur konfiguriert (d.h. ein neuronales Netz mit einer solchen Architektur bereitgestellt), sodass es, wenn ihm ein Satz von Sensordaten zugeführt wird, der für jedes mehrerer Objekte ein Sensordatenelement enthält, für jedes Objekt abhängig von allen der Sensordatenelemente einen Merkmalsvektor ermittelt.
In 1002 wird ein Trainingsdatensatzes mit einer Vielzahl von Trainingsdatenelementen erzeugt, wobei jedes Trainingsdatenelement einen ersten Satz von Sensordaten bezüglich eines ersten Zustands einer Umgebung mit einer Menge von mehreren Objekten und einen zweiten Satz von Sensordaten bezüglich eines zweiten Zustands der Umgebung, wobei in dem zweiten Zustand die Positionen der Objekte gegenüber dem ersten Zustand zumindest teilweise verändert sind, aufweist.
In 1003 werden für jedes Trainingsdatenelement, Merkmale der Objekte durch Zuführen des ersten Satzes von Sensordaten zu dem neuronalen Netzwerk ermittelt und Merkmale der Objekte durch Zuführen des zweiten Satzes von Sensordaten zu dem neuronalen Netzwerk ermittelt.
In 1004 wird ein Verlust ermittelt, der, für jedes Trainingsdatenelement, für jedes Objekt eine Abweichung zwischen dem Merkmal, das von dem neuronalen Netzwerk für das Objekt aus dem ersten Satz von Sensordaten ermittelt wurde, und dem Merkmal, das von dem neuronalen Netzwerk für das Objekt aus dem zweiten Satz von Sensordaten ermittelt wurde, bestraft und eine mangelnde Abweichung zwischen dem Merkmal, das von dem neuronalen Netzwerk für das Objekt aus dem ersten Satz von Sensordaten ermittelt wurde, und, für jedes andere der Objekte, dem Merkmal, das von dem neuronalen Netzwerk für das andere Objekt aus dem zweiten Satz von Sensordaten ermittelt wurde, bestraft.
In 1005 wird das neuronale Netzwerk zum Verringern des Verlusts trainiert.
Hierbei können 1003, 1004 und 1005 wiederholt im Wechsel stattfinden, beispielsweise wird der Verlust für Batches von Trainingsdatenelemente ermittelt (d.h. der Trainingsdatensatz kann beispielsweise Batches mit jeweils einer Vielzahl von Trainingsdatenelementen (der beschriebenen Form) aufweisen, für die jeweils ein Verlust erzeugt wird und das neuronale Netzwerk wird für jeden Batch zum Verringern des jeweiligen Verlusts trainiert).
Das Verfahren von Figur 10 kann durch einen oder mehrere Computer mit einer oder mehreren Datenverarbeitungseinheiten durchgefiihrt werden. Der Begriff „Datenverarbeitungseinheit“ kann als irgendein Typ von Entität verstanden werden, die die Verarbeitung von Daten oder Signalen ermöglicht. Die Daten oder Signale können beispielsweise gemäß mindestens einer (d.h. einer oder mehr als einer) speziellen Funktion behandelt werden, die durch die Datenverarbeitungseinheit durchgefiihrt wird. Eine Datenverarbeitungseinheit kann eine analoge Schaltung, eine digitale Schaltung, eine Logikschaltung, einen Mikroprozessor, einen Mikrocontroller, eine Zentraleinheit (CPU), eine Graphikverarbeitungseinheit (GPU), einen Digitalsignalprozessor (DSP), eine integrierte Schaltung einer programmierbaren Gatteranordnung (FPGA) oder irgendeine Kombination davon umfassen oder aus dieser ausgebildet sein. Irgendeine andere Weise zum Implementieren der jeweiligen Funktionen, die hierin genauer beschrieben werden, kann auch als Datenverarbeitungseinheit oder Logikschaltungsanordnung verstanden werden. Es können ein oder mehrere der im Einzelnen hier beschriebenen Verfahrensschritte durch eine Datenverarbeitungseinheit durch eine oder mehrere spezielle Funktionen ausgefiihrt (z. B. implementiert) werden, die durch die Datenverarbeitungseinheit durchgeführt werden.
Das Verfahren ist also gemäß verschiedenen Ausführungen insbesondere computerimplementiert. Das neuronale Netz kann nach dem Training auf Sensordaten angewendet werden, die von mindestens einem Sensor ermittelt werden, um Merkmale zu erhalten, die dann für eine Objektverfolgung verwendet werden. Das Ergebnis der Objektverfolgung kann dann zur Steuerung einer Robotervorrichtung verwendet werden.
Beispielsweise wird das neuronale Netz nach dem Training zum Erzeugen eines Steuersignals für eine Robotervorrichtung eingesetzt, indem man ihm Sensordaten bzgl. der Robotervorrichtung und/oder seiner Umgebung zufuhrt. Der Begriff „Robotervorrichtung“ kann als sich auf irgendein technisches System (mit einem mechanischen Teil, dessen Bewegung gesteuert wird) beziehend verstanden werden, wie z. B. eine computergesteuerte Maschine, ein Fahrzeug, ein Haushaltsgerät, ein Elektrowerkzeug, eine Fertigungsmaschine, einen persönlichen Assistenten oder ein Zugangssteuersystem .
Verschiedene Ausführungsformen können Sensordaten von verschiedenen Sensoren wie z. B. Video, Radar, LiDAR, Ultraschall, Bewegung, Wärmeabbildung usw. empfangen und verwenden.
Obwohl spezielle Ausführungsformen hier dargestellt und beschrieben wurden, wird vom Fachmann auf dem Gebiet erkannt, dass die speziellen Ausführungsformen, die gezeigt und beschrieben sind, gegen eine Vielfalt von alternativen und/oder äquivalenten Implementierungen ausgetauscht werden können, ohne vom Schutzbereich der vorliegenden Erfindung abzuweichen. Diese Anmeldung soll irgendwelche Anpassungen oder Variationen der speziellen Ausführungsformen abdecken, die hier erörtert sind. Daher ist beabsichtigt, dass diese Erfindung nur durch die Ansprüche und die Äquivalente davon begrenzt ist.

Claims

Ansprüche
1. Verfahren zum Trainieren eines neuronalen Netzwerks zum Ermitteln von Merkmalen von Objekten für eine Objektverfolgung, aufweisend: Konfigurieren eines neuronalen Netzwerks mit einer Netzwerkarchitektur, sodass es, wenn ihm ein Satz von Sensordaten zugeführt wird, der für jedes mehrerer Objekte ein Sensordatenelement enthält, für jedes Objekt abhängig von allen der Sensordatenelemente einen Merkmalsvektor ermittelt; Erzeugen eines Trainingsdatensatzes mit einer Vielzahl von Trainingsdatenelementen, wobei jedes Trainingsdatenelement einen ersten Satz von Sensordaten bezüglich eines ersten Zustands einer Umgebung mit einer Menge von mehreren Objekten und einen zweiten Satz von Sensordaten bezüglich eines zweiten Zustands der Umgebung, wobei in dem zweiten Zustand die Positionen der Objekte gegenüber dem ersten Zustand zumindest teilweise verändert sind, aufweist;
Für jedes Trainingsdatenelement,
Ermitteln von Merkmalen der Objekte durch Zufuhren des ersten Satzes von Sensordaten zu dem neuronalen Netzwerk und
Ermitteln von Merkmalen der Objekte durch Zuführen des zweiten Satzes von Sensordaten zu dem neuronalen Netzwerk;
Ermitteln eines Verlust, der, für jedes Trainingsdatenelement, für jedes Objekt eine Abweichung zwischen dem Merkmal, das von dem neuronalen Netzwerk für das Objekt aus dem ersten Satz von Sensordaten ermittelt wurde, und dem Merkmal, das von dem neuronalen Netzwerk für das Objekt aus dem zweiten Satz von Sensordaten ermittelt wurde, bestraft und eine mangelnde Abweichung zwischen dem Merkmal, das von dem neuronalen Netzwerk für das Objekt aus dem ersten Satz von Sensordaten ermittelt wurde, und, für jedes andere der Objekte, dem Merkmal, das von dem neuronalen Netzwerk für das andere Objekt aus dem zweiten Satz von Sensordaten ermittelt wurde, bestraft; und Trainieren des neuronalen Netzwerks zum Verringern des Verlusts. Verfahren nach Anspruch 1, aufweisend Konfigurieren des neuronalen Netzwerks mit einer Netzwerkarchitektur, sodass es, wenn ihm ein Satz von Sensordaten, der für jedes mehrerer Objekte ein Sensordatenelement enthält, zugeführt wird, den Merkmalsvektor über eine Verarbeitung in mehreren Stufen durchfährt, wobei mindestens eine Stufe für jedes der Objekte Merkmalskomponenten erzeugt, ein Max-Pooling der Merkmalskomponenten über die Objekte durchgeführt wird und die Merkmalskomponenten sowie das Ergebnis des Max-Poolings der Merkmalskomponenten der folgenden Stufe zugeführt werden. Verfahren nach Anspruch 1 oder 2, wobei jedes Trainingsdatenelement eine Information darüber enthält, welches Objekt in dem ersten Zustand welchem Objekt in dem zweiten Zustand entspricht, anhand der ermittelten Merkmale der Objekte ermittelt wird, welche Objekte in dem ersten Zustand welchen Objekten in dem zweiten Zustand entsprechen und der Verlust durch Vergleich der in den Trainingsdatenelementen enthaltenden Informationen darüber, welches Objekt in dem ersten Zustand welchem Objekt in dem zweiten Zustand entspricht, mit dem Ergebnis der Ermittlung anhand der ermittelten Merkmale, welche Objekte in dem ersten Zustand welchen Objekten in dem zweiten Zustand entsprechen, ermittelt wird. Verfahren zum Verfolgen von Objekten, aufweisend:
Erfassen von Sensordaten einer ersten Menge von Objekten zu einem ersten Zeitpunkt;
Erfassen von Sensordaten einer zweiten Menge von Objekten zu einem zweiten Zeitpunkt;
Zuführen der Sensordaten der ersten Menge von Objekten zu dem gemäß einem der Ansprüche 1 bis 3 trainierten neuronalen Netzwerk zum Erzeugen erster Merkmale;
Zuführen der Sensordaten der zweiten Menge von Objekte zu dem trainierten neuronalen Netzwerk zum Erzeugen zweiter Merkmale; und
Paarweises Assoziieren von Objekten der ersten Menge von Objekten der zweiten Menge anhand der ersten Merkmale und der zweiten Merkmale. Verfahren nach Anspruch 4, aufweisend Erfassen von Sensordaten von Objekten in einer Szene zu dem ersten Zeitpunkt, Gruppieren der Objekte zu mehreren ersten Gruppen anhand ihrer örtlichen Nähe, Auswählen einer der ersten Gruppen als die erste Menge von Objekten, Erfassen von Sensordaten von Objekten in der Szene zu dem zweiten Zeitpunkt, Gruppieren der Objekte zu mehreren zweite Gruppen anhand ihrer örtlichen Nähe und Auswählen einer der zweiten Gruppen als die zweite Menge von Objekten, so dass die zweite Menge von Objekten diejenige zweite Gruppe ist, die er ersten Menge von Objekten innerhalb der Szene am nächsten liegt. Datenverarbeitungseinrichtung, die eingerichtet ist, ein Verfahren nach einem der Ansprüche 1 bis 5 durchzufuhren. Computerprogramm mit Befehlen, die, wenn sie durch einen Prozessor ausgeführt werden, bewirken, dass der Prozessor ein Verfahren nach einem der Ansprüche 1 bis 5 durchführt. Computerlesbares Medium, das Befehle speichert, die, wenn sie durch einen Prozessor ausgeführt werden, bewirken, dass der Prozessor ein Verfahren nach einem der Ansprüche 1 bis 5 durchführt.
PCT/EP2023/080038 2022-11-10 2023-10-27 Verfahren zum trainieren eines neuronalen netzwerks zum ermitteln von merkmalen von objekten für eine objektverfolgung WO2024099797A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102022211915.0 2022-11-10
DE102022211915.0A DE102022211915A1 (de) 2022-11-10 2022-11-10 Verfahren zum Trainieren eines neuronalen Netzwerks zum Ermitteln von Merkmalen von Objekten für eine Objektverfolgung

Publications (1)

Publication Number Publication Date
WO2024099797A1 true WO2024099797A1 (de) 2024-05-16

Family

ID=88600451

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2023/080038 WO2024099797A1 (de) 2022-11-10 2023-10-27 Verfahren zum trainieren eines neuronalen netzwerks zum ermitteln von merkmalen von objekten für eine objektverfolgung

Country Status (2)

Country Link
DE (1) DE102022211915A1 (de)
WO (1) WO2024099797A1 (de)

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
LABIT-BONIS CLAIRE ET AL: "Fast Tracking-by-Detection of Bus Passengers with Siamese CNNs", 2019 16TH IEEE INTERNATIONAL CONFERENCE ON ADVANCED VIDEO AND SIGNAL BASED SURVEILLANCE (AVSS), IEEE, 18 September 2019 (2019-09-18), pages 1 - 8, XP033642096, DOI: 10.1109/AVSS.2019.8909843 *
WOJKE NICOLAI ET AL: "Simple Online and Realtime Tracking with a Deep Association Metric", ARXIV (CORNELL UNIVERSITY), 21 March 2017 (2017-03-21), Ithaca, XP093119617, Retrieved from the Internet <URL:https://arxiv.org/pdf/1703.07402.pdf> [retrieved on 20240115] *
YIFU ZHANG ET AL: "FairMOT: On the Fairness of Detection and Re-Identification in Multiple Object Tracking", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY 14853, 19 October 2021 (2021-10-19), XP091062999, DOI: 10.1007/S11263-021-01513-4 *

Also Published As

Publication number Publication date
DE102022211915A1 (de) 2024-05-16

Similar Documents

Publication Publication Date Title
EP2368216B1 (de) Verfahren und einrichtung zur analyse von umgebungsobjekten und/oder umgebungsszenen, wie zur objekt- und szenenklassensegmentierung
DE102014210820B4 (de) Verfahren zum Nachweis von großen und Passagierfahrzeugen von festen Kameras
DE112017001311T5 (de) System und Verfahren zum Trainieren eines Objektklassifikators durch maschinelles Lernen
DE112019007762T5 (de) Verfahren zum Trainieren eines generativen kontradiktorischen Netzes, modifiziertes Bildgenerierungsmodul und System zum Detektieren von Merkmalen in einem Bild
EP3557487B1 (de) Generieren von validierungsdaten mit generativen kontradiktorischen netzwerken
DE102019209644A1 (de) Verfahren zum Trainieren eines neuronalen Netzes
DE112017007724T5 (de) System und Verfahren zur Verfolgung von Objekten in einer zeitlichen Sequenz von digitalen Bildern
DE102012000459A1 (de) Verfahren zur Objektdetektion
DE102020200503A1 (de) Verfahren zum Generieren von gelabelten Daten, insbesondere für das Training eines neuronalen Netzes, mittels Verbesserung initialer Label
DE102018220274A1 (de) Verfahren zum gemeinsamen Detektieren, Verfolgen und Klassifizieren von Objekten
WO2021063572A1 (de) Vorrichtung und verfahren zum verarbeiten von daten eines neuronalen netzes
EP2483834B1 (de) Verfahren und Vorrichtung zum Erkennen einer Fehldetektion eines Objekts in einem Bild
DE102008036219A1 (de) Verfahren zur Erkennung von Objekten im Umfeld eines Fahrzeugs
EP4078238A1 (de) Verfahren und vorrichtung zum robustifizieren von sensordaten gegen adversariale störungen
EP2359308B1 (de) Vorrichtung zur erzeugung und/oder verarbeitung einer objektsignatur, überwachungsvorrichtung, verfahren und computerprogramm
WO2024099797A1 (de) Verfahren zum trainieren eines neuronalen netzwerks zum ermitteln von merkmalen von objekten für eine objektverfolgung
EP4118620A1 (de) Verfahren und vorrichtung zum verarbeiten von bildern
DE102020208080A1 (de) Erkennung von Objekten in Bildern unter Äquivarianz oder Invarianz gegenüber der Objektgröße
DE102019215912A1 (de) Verfahren und vorrichtung zum computer-implementierten betreiben eines neuronalen netzwerks
DE102022001208A1 (de) Verfahren zur Prädiktion von Trajektorien von Objekten
DE102006012477A1 (de) Bewertungsvorrichtung, Verfahren und Computerprogramm
WO2023222343A1 (de) Verfahren zum steuern einer robotervorrichtung
DE102022132217A1 (de) Personenerkennung
DE102022200353A1 (de) Verfahren zum Erzeugen von Daten zum Trainieren eines auf künstlicher Intelligenz basierenden Objekterkennungsverfahrens
DE102022121839A1 (de) Texterkennung basierend auf einem verzeichneten Kamerabild

Legal Events

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

Ref document number: 23798446

Country of ref document: EP

Kind code of ref document: A1