WO2021122340A1 - Verfahren und vorrichtung zum erzeugen und bereitstellen einer datenbank mit darin hinterlegten sensordatenpatches zur verwendung beim quilting - Google Patents

Verfahren und vorrichtung zum erzeugen und bereitstellen einer datenbank mit darin hinterlegten sensordatenpatches zur verwendung beim quilting Download PDF

Info

Publication number
WO2021122340A1
WO2021122340A1 PCT/EP2020/085652 EP2020085652W WO2021122340A1 WO 2021122340 A1 WO2021122340 A1 WO 2021122340A1 EP 2020085652 W EP2020085652 W EP 2020085652W WO 2021122340 A1 WO2021122340 A1 WO 2021122340A1
Authority
WO
WIPO (PCT)
Prior art keywords
sensor data
database
data
patches
sensor
Prior art date
Application number
PCT/EP2020/085652
Other languages
English (en)
French (fr)
Inventor
Peter Schlicht
Fabian HÜGER
Original Assignee
Volkswagen Aktiengesellschaft
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 Volkswagen Aktiengesellschaft filed Critical Volkswagen Aktiengesellschaft
Priority to EP20829549.3A priority Critical patent/EP4078433A1/de
Publication of WO2021122340A1 publication Critical patent/WO2021122340A1/de

Links

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • G06F18/24133Distances to prototypes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • 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

Definitions

  • the invention relates to a method and a device for generating and providing a database with sensor data patches stored therein for use in quilting.
  • the invention also relates to an assistance system for a vehicle as well as a computer program and a data carrier signal.
  • Machine learning for example based on neural networks, has great potential for use in modern driver assistance systems and automated vehicles.
  • Functions based on deep neural networks process sensor data (e.g. from cameras, radar or lidar sensors) in order to derive relevant information from it.
  • sensor data e.g. from cameras, radar or lidar sensors
  • This information includes, for example, a type and a position of objects in the surroundings of the motor vehicle, a behavior of the objects or a road geometry or topology.
  • CNN convolutional neural networks
  • CNN convolutional neural networks
  • CNN convolutional neural networks
  • input data e.g. image data
  • CNN convolutional neural networks
  • the convolution network independently develops feature maps based on filter channels that process the input data locally in order to derive local properties. These feature cards are then processed again by further filter channels, which derive more valuable feature cards from them.
  • the deep neural network On the basis of this information compressed from the input data, the deep neural network finally derives its decision and makes it available as output data.
  • a method and a device for recognizing anomalies in sensor data are known from US 2019/0135300 A1.
  • the method includes, for example, obtaining the first sensor data from a first sensor and the second sensor data from a second sensor, the first sensor of a first sensor type being different from a second sensor type of the second sensor; Generating first encoded sensor data based on the first sensor data and second encoded sensor data based on the second sensor data; Generating a contextual fused sensor data representation of the first and second sensor data based on the first and second encoded sensor data; Generating the first and second reconstructed sensor data based on the contextual representation of the merged sensor data; Determining a deviation estimate based on the first and second reconstructed sensor data, the deviation estimate being representative of a deviation between: (a) the first reconstructed sensor data and (b) the first sensor data; and detecting an anomaly in the deviation estimate, the anomaly indicating an error associated with the first sensor.
  • An anomaly can be detected, for example, by means of an auto-
  • the invention is based on the object of creating a method and a device for generating and providing a database with sensor data patches stored therein for use in quilting, with which sensor data can be improved and robustized against adversarial attacks.
  • a method for generating and providing a database with sensor data patches stored therein for use in quilting, with several output domain databases being made available and / or being accessed, with sensor data being stored in each of the several output domain databases, which are stored by means of sensors that are calibrated to one another were recorded, with sensor data from the A plurality of output domain databases are obtained, a number parameter and a size parameter being obtained, a number of sensor data patches determined by the number parameter being generated from the received sensor data, each with a size specified by the size parameter being generated and stored in the database, the number being based on the multiple Initial domain databases is split, and the generated database is provided.
  • a device for generating and providing a database with stored sensor data patches for use in quilting comprising a data processing device, the data processing device being set up to provide and / or access multiple output domain databases, sensor data being stored in each of the multiple output domain databases which were recorded by sensors calibrated to one another, furthermore to obtain sensor data from the multiple output domain databases, to obtain a number parameter and a size parameter, and to generate a number of sensor data patches specified by the number parameter, each with a size specified by the size parameter, from the sensor data obtained and to be stored in the database, and in this case to divide the number proportionally to the several output data domain databases, and to have the database generated ready ll.
  • the method and the device make it possible to generate and provide a database as a starting point for quilting sensor data.
  • the database can be provided in a data domain-agnostic manner, since several output data domains or associated output domain databases are used from which sensor data for generating sensor data patches are obtained, in particular received.
  • Sensor data patches are generated from the sensor data obtained and stored in the database.
  • a sensor data patch can also be referred to as a data block.
  • the sensor data patches in particular form subsymbolic subsets of the sensor data.
  • the sensor data patches have a size that is determined by the size parameter.
  • the size defines an image section or a number of picture elements that a sensor data patch should contain, for example image sections with a size of 8x8 picture elements each.
  • the number parameter defines a number (e.g. 10000, 100000 etc.) of sensor data patches in the database.
  • sensor data are proportionally used from all output domain databases in order to create the sensor data patches.
  • the generated database is then made available. The provided The database can then be used in a quilting step to replace or reconstruct sensor data of the same type from a plurality of sensors piece by piece and thereby to robustize them against adversarial disturbances.
  • One advantage of the method and the device is that a database can be created for use in quilting sensor data that are assigned to different data domains.
  • a database can be created for use in quilting sensor data that are assigned to different data domains.
  • the method and the device are used in particular to provide a database for a quilting method for robustizing sensor data against adversarial disturbances.
  • the provision of the starting domain databases can include receiving and / or recording the sensor data contained therein by means of an interface and / or by means of sensors and generating the starting domain databases from the received and / or recorded sensor data.
  • the output domain databases include, in particular, sensor data from the same sensors or sensor combinations, for example, in each case sensor data from a sensor combination of a camera and a lidar sensor.
  • the provision of the generated database can include loading the generated database into a storage device of a robustification device for robustizing sensor data against adversarial disturbances.
  • a data packet comprising the database generated is transmitted to the robustification device and loaded there into the storage device.
  • a vehicle is in particular a motor vehicle.
  • a vehicle can also be another land, rail, water, air or space vehicle, for example a drone or an air taxi.
  • the method and the device can also be used in other areas of application, for example in industrial production or in robotics.
  • Quilting refers in particular to the piece-wise replacement of sensor data, which can also be referred to as piece-wise reconstruction of the sensor data.
  • image quilting is also used in connection with image data.
  • a lot of replaced Sensor data forms a reconstruction data domain or is included in a reconstruction data domain. If, for example, images from a camera are involved, the camera image is divided into several partial sections. For this purpose, small, rectangular image sections (also known as patches) can be defined.
  • the individual partial or image sections are compared with partial sections, hereinafter referred to as sensor data patches, which are stored in the database. The comparison takes place on the basis of a distance measure which is defined, for example, via a Euclidean distance on picture element vectors.
  • a partial or image section is linearized as a vector.
  • a distance is then determined using a vector standard, for example using the L2 standard.
  • the partial or image excerpts from the recorded sensor data are each replaced by the closest or most similar sensor data patch from the database. It can be provided here that a minimum distance must be maintained or that at least no identity may exist between the partial section from the sensor data and the sensor data patch. If the sensor data have a different form (eg lidar data) or a different format, the piece-by-piece replacement takes place in an analogous manner. The piece-by-piece replacement takes place for all partial sections of the recorded sensor data, so that replaced or reconstructed sensor data are then available. After the piece-wise replacement, that is to say after the quilting, an effect of the adversarial disturbances in the replaced or reconstructed sensor data is eliminated or at least reduced.
  • the database generated by means of the method described in this disclosure is used in a method for robustizing sensor data against adversarial disturbances, with sensor data being obtained from at least one sensor, the sensor data obtained from the at least one sensor in each case by means of quilting based on the generated in the Sensor data patches stored in the database are replaced piece by piece, the piece-by-piece replacement being carried out in particular in such a way that each replaced sensor data from different sensors (if any) are plausible to one another, and the piece-wise replaced sensor data are output.
  • the method for robustification is carried out in particular by means of an associated robustification device.
  • a robustification device is used for this purpose for robustizing sensor data against adversarial disturbances, comprising a computing device and a storage device, the computing device being set up to receive sensor data from at least one sensor, the sensor data obtained from the at least one sensor each by quilting on the basis of the in to replace sensor data patches stored in the database generated piece by piece, and the piece by piece replacement in particular in this way perform that each replaced sensor data of different sensors (if available) are plausible to each other, and output the piece-wise replaced sensor data.
  • a “plausibility” of replaced sensor data is intended to mean in particular that the replaced sensor data are physically plausible to one another.
  • a probability that the respectively replaced sensor data in the respective cross-sensor combination would also occur under real conditions, i.e. in the real world, should be as large as possible (in the sense of e.g. a maximum likelihood).
  • the replaced sensor data of the at least two sensors should be selected in such a way that the probability that these sensor data would also actually occur in this combination is maximized.
  • a plausibility between the respectively replaced sensor data means that a viewed image section in the replaced camera data and a locally and temporally corresponding sub-section from the replaced lidar data are selected in such a way that the Sensor data are consistent with one another, i.e. they are physically free of contradictions to one another.
  • the at least two sensors are a camera and a lidar sensor
  • the partial sections of the sensor data are each replaced in such a way that each replaced image section corresponds to a replaced partial section of the lidar data, as this is very likely also when simultaneously capturing Sensor data of the camera and the lidar sensor would result.
  • the sensor data or the sensors with which the sensor data stored in the output domain databases were recorded are, in particular, calibrated with respect to one another in terms of location and time, so that the sensor data of the sensors correspond to one another in terms of location and time or have common reference points in terms of time and location.
  • the sensor data originate in particular from sensors of different types, for example from a camera and a lidar or radar sensor.
  • the sensor data are physically plausible to one another, that is, the sensor data do not physically contradict one another.
  • the respective sensors or sensor data are selected as a function of a planned application scenario for the database generated.
  • the database is also generated on the basis of recorded sensor data from a camera (and a lidar sensor).
  • the sensor data recorded or stored in the initial domain databases are, in particular, definitely free from or less heavily burdened with potential adverse disturbances.
  • the sensor data can in principle be one-dimensional or multidimensional, in particular two-dimensional.
  • the sensor data can be two-dimensional camera images from a camera and two-dimensional or three-dimensional lidar data from a lidar sensor.
  • the sensor data patches can also be referred to as data blocks.
  • the sensor data patches in particular form subsymbolic subsets of the sensor data recorded or stored in the initial domain databases.
  • a data domain should in particular denote a total of sensor data which correspond to a specific context or whose data are similar in at least one property with regard to their origin.
  • a context can be, for example, a geographical context, e.g. a data domain can include data from one city, whereas a different data domain comprises data from another city, etc.
  • Such a context can also be a data creation paradigm (e.g. real-world sensor impressions, simulation data, synthetic or synthetically modified sensor data ).
  • the output data domains that are mapped by the output domain databases are, in particular, data domains in the context of automated driving.
  • Such can in particular be recorded sensor data (measurement data) from different application scenarios of an automated vehicle with and without basic truth, homologation data and / or simulation data as well as sensor data recorded in a vehicle fleet (which, for example, also include or depict rare events and / or typical error situations).
  • the sensor data recorded or stored in the output data domain databases are those sensor data that are recorded for a function for automated or partially automated driving of a vehicle and / or for driver assistance of the vehicle and / or for environment detection or for environment perception were.
  • a vehicle is in particular a motor vehicle. In principle, however, the vehicle can also be another land, air, water, rail or space vehicle, for example a drone or an air taxi.
  • An adversarial perturbation is, in particular, a deliberately made disruption of the input data of a neural network, for example provided in the form of sensor data, in which semantic content in the input data is not changed, but the disruption leads to the neuronal Net a wrong one Result inferred, that is, for example, a misclassification or an incorrect semantic segmentation of the input data undertakes.
  • a neural network is in particular a deep neural network, in particular a convolutional neural network (CNN).
  • the neural network is or is trained, for example, on a function for automated or partially automated driving of a vehicle and / or for perception of the surroundings, for example on the perception of pedestrians or other objects in captured camera images.
  • the method can be carried out as a computer-implemented method.
  • the method can be carried out by means of a data processing device.
  • the data processing device comprises in particular at least one computing device and at least one storage device.
  • a computer program is also created, comprising instructions which, when the computer program is executed by a computer, cause the computer to carry out the method steps of the disclosed method in accordance with any of the described embodiments.
  • a data carrier signal is also created that transmits the aforementioned computer program.
  • Parts of the device in particular the data processing device, can be designed individually or collectively as a combination of hardware and software, for example as program code that is executed on a microcontroller or microprocessor.
  • the selection of a partial section from the sensor data in order to generate a sensor data patch from the selected partial section can take place in different ways.
  • the sensor data patches are generated randomly, that is to say for example by means of a Monte Carlo method, from the sensor data obtained.
  • the provision of the database generated includes loading the database generated into a storage device of a robustification device of an assistance system of at least one vehicle, wherein the robustification device is set up to replace acquired sensor data of at least one sensor piece by piece with the aid of the sensor data patches stored in the database by means of quilting, so that the replaced sensor data are robustized against adversarial disturbances.
  • the database is created and made available, for example, by means of a central server.
  • the database generated is then transmitted to a robustification device of an assistance system of at least one vehicle, for example via appropriately designed wired or wireless communication interfaces, and loaded into a storage device of the robustification device.
  • the replaced sensor data are supplied to a function for the automated or partially automated driving of the vehicle and / or for a perception of the surroundings.
  • the function can work more reliably based on the replaced sensor data.
  • the function Based on the supplied, replaced sensor data, the function generates at least one control signal and / or evaluation signal and makes this available.
  • the sensor data in the multiple output domain databases are at least partially marked or marked with at least one property information item, with at least one property parameter being obtained, and with the generation of the sensor data patches for the database taking into account the received at least one property parameter and the at least one item of property information is carried out.
  • the sensor data patches generated are marked with property information as a function of the at least one property parameter.
  • the at least one property parameter specifies in particular which property information is used or is provided for marking a sensor data patch, in particular in the form of at least one piece of patch property information assigned to it in the database.
  • Property information or patch property information can also be referred to as a “tag”.
  • the sensor data patches can be specifically marked with (patch) property information, as a result of which a search in the database generated can be accelerated during an application phase when replacing piece by piece by means of quilting.
  • Property information can include, for example, sensor properties (resolution, alignment, sensor model, etc.) of the sensors by means of which the sensor data were recorded.
  • Property information can include, for example, a point in time or time segment and / or a local desertification within the time segment in the sensor data, for example a typical pixel position (e.g. in x, y coordinates).
  • the typical pixel position can be calculated in the sensor data using statistical methods, for example. In this way, localization priorities can be created which can accelerate a search for suitable sensor data patches in a subsequent use of the database.
  • property information can also include a point in time (time of day, day of the week, month, season, etc.) and / or a location (e.g. a geographical position) at which or at which the sensor data was recorded.
  • a point in time time of day, day of the week, month, season, etc.
  • a location e.g. a geographical position
  • Property information can also describe the respective sensor data in more detail in terms of content, for example in that the property information includes a ground truth about the sensor data or a part thereof and / or context information about the sensor data or a part thereof.
  • a basic truth describes in particular which objects are mapped in the sensor data and / or how the sensor data are semantically segmented. In this way, semantic priorities can be provided which can accelerate a search for suitable sensor data patches in a subsequent use of the database.
  • Context information describes a context in which the sensor data was recorded (e.g. a weather, a time of day, a weekday, a month, a season, a season, a traffic situation, such as motorway, country road, city traffic, etc., road users, critical situations, etc. .). This allows context priorities to be created which can accelerate a search for suitable sensor data patches in a subsequent use of the database.
  • Property information can also be generated or provided on the basis of vehicle data; for example, vehicle data can be collected while the sensor data is being captured, with which the captured sensor data are then marked or from which property information is derived. Vehicle data can be queried and / or received via a controller area network (CAN) bus, for example become.
  • CAN controller area network
  • Property information can also include typical properties of sensor data or a partial section from sensor data of a sensor used in parallel or at the same time.
  • a sensor data patch for a camera image of a camera can be marked as property information with a sensor data patch of a lidar sensor that is typical for this. This allows geometric priors to be provided so that when a suitable sensor data patch is found in the database to replace a partial section of a camera image using the property information assigned by way of the marking in the database, an associated sensor data patch for the lidar sensor can be made available immediately.
  • sensor data patches that are physically plausible to one another can be provided for several sensors in this way.
  • the sensor data patches are generated from the sensor data as a function of the at least one property information item with which the sensor data are marked. For this purpose, partial excerpts of those sensor data are selected or used to which the property information is assigned that is predetermined by the at least one property parameter. As a result, only specific sensor data or sensor data filtered according to specific property information can be obtained or queried from the initial domain databases. For example, it can be provided that the sensor data used to generate the sensor data patches must have been recorded in the following context: winter, Mondays, “pedestrians present”. Corresponding property parameters are then specified for this scenario and the sensor data are retrieved and obtained as a function of the specified property parameters. Sensor data patches are then generated from the sensor data obtained by extracting partial sections from the sensor data and storing them as sensor data patches in the database. The sensor data patches generated in this way can then also be marked with the associated property information.
  • a distribution of properties is specified via the at least one property parameter, which the sensor data patches stored in the database are to have.
  • statistical distributions can be specified using mean values and standard deviations. This is done accordingly Generation of the sensor data patches from the received sensor data taking into account the given distribution.
  • the at least one property parameter comprises a regulatory specification.
  • a regulatory stipulation is, for example, a stipulation by a legislator that specifies how a database that is used in quilting to robustize sensor data must be designed or what criteria it must meet. For example, it can be provided that a proportion of sensor data patches is specified that originates from sensor data that depict traffic signs or faces, etc.
  • Another example is a specification for the existence of a specific context that must be mapped by the database created. Such a context can be, for example, the specification that properties or features of a play street, a cycle path and / or a zebra crossing must be mapped in the database using appropriate sensor data patches. In this way, it can be achieved that regulatory requirements, which serve to ensure or increase security, are taken into account when generating the database.
  • a reconstruction quality parameter is obtained, the reconstruction quality parameter specifying an average distance between sensor data and sensor data replaced piece by piece by means of the generated database on the basis of the generated database, and the generation of the sensor data patches being carried out taking into account the reconstruction quality parameter obtained.
  • the average distance can be determined, for example, with the aid of a distance measure that represents a partial section of the sensor data replaced with a sensor data patch and the original partial section in each case linearized as vectors and using a vector standard, for example the L2 standard, determines a distance between these vectors.
  • a distance determined in this way is averaged over a predetermined amount of sensor data so that an average value is formed.
  • the average distance can then be changed, for example, by adding and / or removing sensor data patches to / from the database.
  • a data domain distance parameter is obtained, with a respective proportion of the sensor data patches generated from the plurality of output domain databases depending on the received data
  • Data domain distance parameter is set. This can help one through quilting with the reconstruction data domains formed by the sensor data patches of the database are approximated in terms of their properties to the output data domains mapped in the output domain databases. In simple terms, a distance to an output data domain can be reduced by increasing a proportion of the sensor data from this output data domain when generating the sensor data patches. A domain distance between the respective output data domains and the reconstruction data domain of the sensor data replaced by means of the sensor data patches is determined by means of a suitable domain distance measure. Methods that can be used to determine a data domain distance are described below.
  • the database is optimized with regard to at least one optimization criterion.
  • a nature or a composition of the database is changed iteratively until the at least optimization criterion is met.
  • Parameters that can be changed for optimization are, for example, a size of the sensor data patches, a number of sensor data patches in the database, a respective share of sensor data from different output data domains or output data domain databases, a strength of the influence of property information when generating the sensor data patches and / or a Selection of the distance measure (s) and / or selection method when generating the sensor data patches for the database and / or when selecting sensor data patches stored in the database during quilting.
  • One optimization criterion is, for example, a predetermined domain distance between the output data domains mapped via the output domain databases and the reconstruction data domain generated by means of quilting with the replaced sensor data.
  • a data domain distance measure for example, statistical properties or statistical characteristic values of data sets formed from sensor data of a known data domain and a data set of the reconstruction data domain formed from replaced sensor data can be determined and compared with one another.
  • camera images for example, color value histograms over the camera images and replaced camera images or the respective partial excerpts or sensor data patches can be compared with one another.
  • a data domain and the reconstruction data domain can then be based on the respectively determined statistical properties or characteristic values of the associated Data sets are compared with one another and from this the data domain distance measure can be determined.
  • the data domain distance measure between data sets from two data domains can be calculated, for example, from a difference between the respectively associated statistical characteristic values.
  • the data domain distance measure is determined on the basis of a respective distribution of features in the data sets of the data domains formed from the original or replaced sensor data.
  • features are extracted from the respective sensor data or the partial excerpts from the sensor data, the statistical distributions of which are then compared with one another in pairs for a data set of a data domain and a data set of the reconstruction data domain.
  • the data domain distance measure is then determined from the comparison result, for example by forming the difference between statistical characteristic values of the respective statistical distributions.
  • the features can originate, for example, from dimension reduction methods and / or be provided by kernel functions and / or feature maps of a (deep) neural network. Classification results of a (deep) neural network can also be used as features.
  • the statistical distributions of the features are then compared with one another for the data sets of the data domains by means of statistical characteristic values, such as expected values etc., and defined as the data domain distance between pairs of data sets of the data domains.
  • Cross Domain Retrieval a sampled k-NN confusion
  • three sets of features are created, one set of features each from the original or replaced data sets of the two data domains to be compared, as well as a mixed set of features from both data domains. All three records are drawn randomly from the respective data of the data records (e.g. 1000 samples per record). Then, for each sample of the data domain-specific records, the k-nearest neighbors in the mixed record are searched for, and how many of them originate from the other data domain are counted. The determined numbers can then be used as a data domain distance measure.
  • a reconstruction quality can also be an optimization criterion.
  • a reconstruction quality here denotes a similarity or a distance between sensor data and the associated replaced sensor data.
  • An optimization criterion can also be a robustness effect. Such a robustness effect quantifies a robustification that was achieved by means of quilting with the help of the created database of sensor data of a target data domain that is provided to a neural network or a selection of neural networks (in particular to provide a function for automated driving).
  • An optimization criterion can also be a performance effect.
  • a performance effect can quantify an effect of sensor data robustized by quilting with the aid of the database generated.
  • both adversarially disturbed sensor data and sensor data that has been replaced piece by piece with the help of the database are fed to a (deep) neural network or a selection of (deep) neural networks (in particular to provide a function for automated driving) and the effect is obtained by comparing the results quantified.
  • a functional performance accuracy of the prediction, intersection over union, false-positive or false-negative detection rate, etc.
  • a generalization ability functional quality under previously unseen contexts
  • the respective measured values for a neural network or a selection of neural networks are measured with the supply of sensor data as well as sensor data that is replaced piece by piece, and the performance effect is quantified in this way.
  • Domain invariance in the reconstruction can also be an optimization criterion.
  • a domain invariance is characterized here by the smallest possible distance between different reconstruction data domains among different output data domains.
  • An optimization criterion can also be a domain invariance for a selection of (deep) neural networks, i.e. the same performance and robustness of (deep) neural networks (especially for providing a function for automated driving) on different reconstruction data domains formed from replaced sensor data.
  • the optimization criterion is or is being determined by regulatory requirements. This can be, for example, a minimum size of the sensor data patches, a minimum robustness that is achieved during quilting with the aid of the database generated and / or a maximum latency when using the database when reconstructing the sensor data, that is to say during quilting.
  • the at least one optimization criterion comprises a runtime property of the database during quilting.
  • a runtime property can be improved, for example, in that typical combinations of sensor data patches, that is to say that frequently occur when quilting sensor data, are determined in advance and kept ready for the reconstruction or quilting of the sensor data.
  • Search indices can also be set up, which accelerate a quick search of the database for a sensor data patch with the smallest distance to a partial section of the recorded sensor data.
  • the database can be hashed efficiently for parameters that are highly relevant for the reconstruction.
  • the hashing tables determined are stored in the database so that a subsequent search in the database can be accelerated.
  • Voronoi cells can be determined for the reconstruction, i.e. partial sections in the sensor data which are always replaced by a certain sensor data patch during the reconstruction or during quilting.
  • the specific Voronoi cells or specific subsections are marked accordingly in the database and / or stored separately.
  • additional information is stored in the database that describes or specifies the properties of the database or properties of sensor data patches stored in the database. This makes it easier to use the database for quilting.
  • the properties are stored in the form of metadata.
  • a distance measure is determined which defines a distance between the partial sections to be replaced in the sensor data and the sensor data patches, and is stored in the database. This distance measure defines how a distance between the partial sections and the sensor data is to be measured. It is provided here that the same distance measure is used both when the database is generated and when the database is subsequently used when quilting or reconstructing sensor data.
  • the partial sections of the sensor data and the stored sensor data patches can be displayed as vectors.
  • Vector norms such as the LP metrics, for example the L2 norm, are then particularly suitable as distance measures.
  • a distance cannot be defined on the basis of specific sensor data patches, but rather on the basis of a selection of sufficiently similar sensor data patches.
  • a selection method for selecting sensor data patches from the database is established and stored in the database. This selection method is queried from the database when the database is used and then used to select the sensor data patches.
  • optimization of the database with regard to a predefined optimization criterion can be supported, since the optimization can also include a choice or a change in the selection method.
  • An exemplary selection method is “Nearest Neighbor”, which means that the sensor data patch that is closest in terms of a distance is always selected.
  • a sensor data patch can be selected as a function of property information (see above) and / or using probabilistic methods.
  • a sensor data patch can be selected from a set of sensor data patches that are sufficiently close with respect to a distance, for example by means of the Monte Carlo method. Which sensor data patches are taken into account is defined, for example, via a predetermined limit value for the distance.
  • a data domain distance between respective output data domains of the output domain databases and a reconstruction data domain formed by means of quilting based on sensor data patches stored in the database is determined and stored in the database.
  • databases for specific data domains of sensor data can be generated and made available in a targeted manner.
  • An assessment of a database that has been created can also take place via the data domain distance.
  • an optimization of the database with regard to an optimization criterion that contains the smallest possible data domain distance to one or more output data domains can be supported.
  • the domain distance measures already described above can be used as the domain distance measure.
  • an assistance system for a vehicle comprising at least one robustification device, with a computing device and a storage device, the robustification device being set up to do so by means of a method to obtain and / or receive database generated according to one of the described embodiments and to store it in the storage device, and to replace acquired sensor data piece by piece with the help of the sensor data patches stored in the database by means of quilting, so that the replaced sensor data are robustized against adverse disturbances.
  • the assistance system has a control device, the control device being set up to provide at least one function for automated or partially automated driving of the vehicle and / or for perception of the surroundings, the assistance system being set up to perform the at least one function to supply the replaced sensor data. Based on the supplied, replaced sensor data, the function generates at least one control signal and / or evaluation signal and makes this available.
  • Fig. 1 is a schematic representation of an embodiment of the device for
  • Fig. 2 is a schematic representation to illustrate embodiments of the
  • the device 1 shows a schematic representation of an embodiment of the device 1 for generating and providing a database 40 with sensor data patches 60 stored therein for use in quilting.
  • the device 1 comprises a data processing device 2, which comprises a computing device 3 and a storage device 4.
  • the device 1 carries out the method described in this disclosure for generating a database 40 with sensor data patches 60 stored therein for use in quilting.
  • Parts of the device 1, in particular the data processing device 2 can be designed individually or collectively as a combination of hardware and software, for example as program code that is executed on a microcontroller or microprocessor.
  • the data processing device 2 provides several output domain databases 10, 11.
  • the initial domain databases 10, 11 are in particular stored in the storage device 4.
  • the data processing device 2 can access the multiple output domain databases 10, 11 if these are provided, for example, by an external device.
  • Starting domain databases 10, 11 are each stored with sensor data 20, 21 that were recorded by sensors calibrated to one another.
  • the respective sensor data 20, 21 are, in particular, sensor data 20, 21 of a plurality of sensors which are calibrated with respect to one another in terms of time and location.
  • the sensors can be, for example, a camera and a lidar sensor calibrated for this purpose. However, other and in particular further sensors can also be provided. It can be provided that the
  • the data processing device 10, 11 receives the output data domain databases 10, 11 or the sensor data 20, 21 stored therein for this purpose via an input interface 5 and stores them in the storage device 4.
  • the computing device 3 receives, in particular receives, for example via the input interface 5, a number parameter 30 and a size parameter 31. Furthermore, the computing device 3 retrieves sensor data 20, 21 from the output domain databases 10, 11.
  • the computing device 3 initializes a database 40 in the storage device 40 and uses the received sensor data 20, 21 to generate a number of sensor data patches 60 defined by the number parameter 30, each with a size predetermined by the size parameter 31. Provision is made here for the number to be divided proportionally between the multiple output data domain databases 10, 11.
  • a sensor data patch 60 is in particular a partial section from the received sensor data 20, 21. If the sensor data 20, 21 is, for example, a camera image, then a sensor data patch 60 corresponds to an image section from the camera image, for example with 8x8 picture elements (pixels). If the sensor data 20, 21 are, for example, two-dimensional lidar data, then a sensor data patch 60 corresponds to a partial section from the lidar data, for example with 8 ⁇ 8 data points.
  • the generated sensor data patches 60 are stored in the database 40 by the computing device 3.
  • Sensor data patches 60 which are composed of sensor data 20, 21 that correspond to one another in terms of time and location (for example a camera image and herewith corresponding lidar data) are generated, in particular, are stored linked to one another in the database 40.
  • the database 40 generated is provided by the computing device 3; for example, the database 40 can be output as a data packet via an output interface 6.
  • the database 40 is then fed in particular to a robustification device 70 of an assistance system 300 of a vehicle (not shown), which replaces sensor data 72 acquired by means of quilting piece by piece, so that the replaced sensor data 73 are robustized against adverse disturbances.
  • the database 40 is loaded into a storage device (not shown) of the robustification device 70, for example.
  • the replaced sensor data 73 can be fed to a control unit 51 of the assistance system 300.
  • the control device 51 provides a function for automated and / or partially automated driving of the vehicle and / or for perception of the surroundings.
  • the replaced sensor data 73 are fed to the function. Based on the replaced sensor data 73, the function generates, for example, a control signal 52 or an evaluation signal 53.
  • the sensor data 20, 21 in the multiple output domain databases 10, 11 are at least partially marked or marked with at least one property information item 12, 13, at least one property parameter 32 being received from the computing device 3, for example via the input interface 5 becomes.
  • the generation of the sensor data patches 60 for the database 40 is then carried out taking into account the obtained at least one property parameter 32 and the at least one property information item 12, 13. In particular, this can be used to determine which property information 12, 13 is accepted as patch property information 14 or is assigned to the sensor data patches 60 generated in the database 40.
  • the at least one property parameter 32 can be used to specify which properties the generated sensor data patches 60 must have in order, for example, to map predefined property distributions (with regard to a context, weather, critical situations, etc.) in the database 40.
  • the at least one property parameter 32 comprises a regulatory specification.
  • the computing device 2 has a
  • the reconstruction quality parameter 33 specifies an average distance between sensor data 72 and sensor data 73 replaced piece by piece by means of quilting on the basis of the database 40 generated, and the sensor data patches 60 are generated taking into account the reconstruction quality parameter 33 obtained.
  • the sensor data 72, 73 for determining the average distance or a reconstruction quality are fed to the computing device 3.
  • the average distance or the reconstruction quality can also be determined by the robustification device 70 and fed to the computing device 3.
  • an average distance or a reconstruction quality is determined for each iteration step of an optimization method for optimizing the database 40.
  • the reconstruction quality is then compared with the reconstruction parameter 33 obtained and the procedure for generating the sensor data patches 60 is changed as a function of a deviation.
  • the size and / or the number of the sensor data patches 60 and / or a proportion of the output data domains etc. can be changed for optimization.
  • the computing device 2 receives a data domain distance parameter 34, for example via the input interface 5, a respective proportion of the sensor data patches 60 generated from the multiple output domain databases 10, 11 being determined as a function of the data domain distance parameter 34 obtained. If a reconstruction data domain formed from the sensor data patches 60 after quilting is to have a smaller / larger data domain distance to one of the output data domains mapped in the output domain databases 10, 11, the associated proportion of the output data domain is correspondingly reduced / increased when the sensor data patches 60 are generated.
  • the database 40 is optimized with regard to at least one optimization criterion 35.
  • the optimization criterion 35 can include, for example, one or more of the following criteria: a predetermined domain distance, a reconstruction quality, a robustness effect, a performance effect, a domain invariance.
  • a predetermined domain distance for example, the size and / or the number of the sensor data patches 60 and / or a proportion of the output data domains 10, 11 and / or an influence of property information 12, 13 or a property parameter 32 and / or distance dimensions and / or selection method etc. change.
  • the at least one optimization criterion 35 includes a runtime property of the database 40 during quilting.
  • the computing device 2 can, for example, efficiently hashing the database 40 compiled from the sensor data patches 60, so that a search can be accelerated during a subsequent quilting in the robustification device 70.
  • FIG. 2 shows a schematic representation to clarify embodiments of the method for generating and providing a database 40 with sensor data patches stored therein for use in quilting.
  • a method step 100 the method for generating a database 40 with sensor data patches stored therein for use in quilting is carried out in one of the embodiments described in this disclosure.
  • the initial domain databases 10, 11, 15, 16 are used here. These include, for example, sensor data with basic truth, sensor data without basic truth and simulated sensor data for different data domains.
  • one property parameter with at least one regulatory stipulation 17 is taken into account.
  • a proportion of sensor data patches is specified that originates from sensor data that depict traffic signs or faces, etc.
  • a regulatory stipulation 17 for the existence of a specific context e.g. play street, zebra crossing, etc.
  • the result of method step 100 is the database 40 with the sensor data patches contained therein.
  • the database 40 is loaded into a storage device of a robustification device 70 of an assistance system, which is arranged in a vehicle 50.
  • the robustification device 70 robustizes sensor data 72 acquired by sensors 71 with the aid of the sensor data patches stored in the database 40 by replacing them piece by piece by means of quilting.
  • the replaced sensor data 73 which are also called reconstructed sensor data are then fed to a (deep) neural network 74, which in particular provides a function for the automated or partially automated driving of the vehicle 50 and / or for driver assistance of the vehicle 50 and / or for a perception and / or perception of the surroundings.
  • the neural network 74 is provided by means of a control device 51 (cf. FIG. 1) of the assistance system of the vehicle 50.
  • the neural network 74 generates at least one control signal 52 (FIG. 1) and / or evaluation signal 53 (FIG. 1) and provides this.
  • an actuator system of the vehicle 50 can be controlled and / or based on the at least one evaluation signal, a further (higher-value) evaluation can take place.
  • the (deep) neural network 74 was previously trained in a training step 200 on the basis of training data obtained from the initial data domain databases 10, 11, 15.
  • the advantage of the method and the device is that a database can be generated and provided as a basis for a safety and robustness-oriented reconstruction of sensor data by means of quilting.

Abstract

Verfahren und Vorrichtung zum Erzeugen einer Datenbank mit darin hinterlegten Sensordatenpatches zur Verwendung beim Quilting Die Erfindung betrifft ein Verfahren zum Erzeugen einer Datenbank (40) mit darin hinterlegten Sensordatenpatches (60) zur Verwendung beim Quilting, wobei mehrere Ausgangsdomänendatenbanken (11,12,15,16) bereitgestellt werden und/oder auf diese zugegriffen wird, wobei in den mehreren Ausgangsdomänendatenbanken (11,12,15,16) jeweils Sensordaten (20,21) hinterlegt sind, die mittels zueinander kalibrierter Sensoren erfasst wurden, wobei Sensordaten (20,21) aus den mehreren Ausgangsdomänendatenbanken (11,12,15,16) erhalten werden, wobei ein Anzahlparameter (30) und ein Größenparameter (31) erhalten werden, wobei aus den erhaltenen Sensordaten (20,21) eine durch den Anzahlparameter (30) festgelegte Anzahl von Sensordatenpatches (60) jeweils mit einer durch den Größenparameter (31) vorgegebenen Größe erzeugt und in der Datenbank (40) hinterlegt wird, wobei die Anzahl anteilig auf die mehreren Ausgangsdatendomänendatenbanken (11,12,15,16) aufgeteilt wird, und wobei die erzeugte Datenbank (40) bereitgestellt wird. Ferner betrifft die Erfindung eine Vorrichtung (1) zum Erzeugen einer Datenbank (40) mit darin hinterlegten Sensordatenpatches (60) zur Verwendung beim Quilting.

Description

Beschreibung
Verfahren und Vorrichtung zum Erzeugen und Bereitstellen einer Datenbank mit darin hinterlegten Sensordatenpatches zur Verwendung beim Quilting
Die Erfindung betrifft ein Verfahren und eine Vorrichtung zum Erzeugen und Bereitstellen einer Datenbank mit darin hinterlegten Sensordatenpatches zur Verwendung beim Quilting. Ferner betrifft die Erfindung ein Assistenzsystem für ein Fahrzeug sowie ein Computerprogramm und ein Datenträgersignal.
Maschinelles Lernen, beispielsweise auf Grundlage von Neuronalen Netzen, hat großes Potenzial für eine Anwendung in modernen Fahrerassistenzsystemen und automatisiert fahrenden Kraftfahrzeugen. Auf tiefen Neuronalen Netzen basierende Funktionen verarbeiten hierbei Sensordaten (zum Beispiel von Kameras, Radar- oder Lidarsensoren), um hieraus relevante Informationen abzuleiten. Diese Informationen umfassen zum Beispiel eine Art und eine Position von Objekten in einem Umfeld des Kraftfahrzeugs, ein Verhalten der Objekte oder eine Fahrbahngeometrie oder -topologie.
Unter den Neuronalen Netzen haben sich insbesondere Faltungsnetze (engl. Convolutional Neural Networks, CNN) als besonders geeignet für Anwendungen in der Bildverarbeitung erwiesen. Faltungsnetze extrahieren in unüberwachter Form stufenweise verschiedene hochwertige Merkmale aus Eingangsdaten (z.B. Bilddaten). Das Faltungsnetz entwickelt hierbei während einer Trainingsphase eigenständig Merkmalskarten basierend auf Filterkanälen, die die Eingangsdaten lokal verarbeiten, um hierdurch lokale Eigenschaften abzuleiten. Diese Merkmalskarten werden dann erneut von weiteren Filterkanälen verarbeitet, die daraus höherwertigere Merkmalskarten ableiten. Auf Grundlage dieser derart aus den Eingangsdaten verdichteten Informationen leitet das tiefe Neuronale Netz schließlich seine Entscheidung ab und stellt diese als Ausgangsdaten bereit.
Während Faltungsnetze klassische Ansätze an funktionaler Genauigkeit übertreffen, besitzen diese jedoch auch Nachteile. So können beispielsweise auf adversarialen Störungen in den Sensordaten/Eingangsdaten basierende Angriffe dazu führen, dass trotz eines semantisch nicht veränderten Inhalts in den erfassten Sensordaten eine Fehlklassifizierung bzw. eine falsche semantische Segmentierung erfolgt. Aus Chuan Guo et al. , Countering Adversarial Images Using Input Transformations, axViv: 1711.00117v3 [cs.CV], 25. Jan. 2018, https://arxiv.org/pdf/1711.00117.pdf, ist ein Quilting-Verfahren zum Beseitigen von adversarialen Störungen in Bilddaten bekannt.
Aus US 2019/0135300 A1 sind ein Verfahren und eine Vorrichtung zum Erkennen von Anomalien in Sensordaten bekannt. Das Verfahren umfasst beispielsweise das Erhalten der ersten Sensordaten von einem ersten Sensor und der zweiten Sensordaten von einem zweiten Sensor, wobei der erste Sensor eines ersten Sensortyps sich von einem zweiten Sensortyp des zweiten Sensors unterscheidet; Erzeugen von ersten codierten Sensordaten basierend auf den ersten Sensordaten und zweiten codierten Sensordaten basierend auf den zweiten Sensordaten; Erzeugen einer kontextbezogenen verschmolzenen Sensordatendarstellung der ersten und zweiten Sensordaten basierend auf den ersten und zweiten codierten Sensordaten; Erzeugen der ersten und zweiten rekonstruierten Sensordaten basierend auf der kontextbezogenen Darstellung der verschmolzenen Sensordaten; Bestimmen einer Abweichungsschätzung basierend auf den ersten und zweiten rekonstruierten Sensordaten, wobei die Abweichungsschätzung repräsentativ für eine Abweichung zwischen: (a) den ersten rekonstruierten Sensordaten und (b) den ersten Sensordaten ist; und Erfassen einer Anomalie in der Abweichungsschätzung, wobei die Anomalie einen Fehler anzeigt, der dem ersten Sensor zugeordnet ist. Das Erkennen einer Anomalie kann beispielsweise mittels eines Autoencoders erfolgen.
Der Erfindung liegt die Aufgabe zu Grunde, ein Verfahren und eine Vorrichtung zum Erzeugen und Bereitstellen einer Datenbank mit darin hinterlegten Sensordatenpatches zur Verwendung beim Quilting zu schaffen, mit der Sensordaten verbessert gegen adversariale Angriffe robustifiziert werden können.
Die Aufgabe wird erfindungsgemäß durch ein Verfahren mit den Merkmalen des Patentanspruchs 1 und eine Vorrichtung mit den Merkmalen des Patentanspruchs 10 gelöst. Vorteilhafte Ausgestaltungen der Erfindung ergeben sich aus den Unteransprüchen.
Insbesondere wird ein Verfahren zum Erzeugen und Bereitstellen einer Datenbank mit darin hinterlegten Sensordatenpatches zur Verwendung beim Quilting zur Verfügung gestellt, wobei mehrere Ausgangsdomänendatenbanken bereitgestellt werden und/oder auf diese zugegriffen wird, wobei in den mehreren Ausgangsdomänendatenbanken jeweils Sensordaten hinterlegt sind, die mittels zueinander kalibrierter Sensoren erfasst wurden, wobei Sensordaten aus den mehreren Ausgangsdomänendatenbanken erhalten werden, wobei ein Anzahlparameter und ein Größenparameter erhalten werden, wobei aus den erhaltenen Sensordaten eine durch den Anzahlparameter festgelegte Anzahl von Sensordatenpatches jeweils mit einer durch den Größenparameter vorgegebenen Größe erzeugt und in der Datenbank hinterlegt wird, wobei die Anzahl anteilig auf die mehreren Ausgangsdomänendatenbanken aufgeteilt wird, und wobei die erzeugte Datenbank bereitgestellt wird.
Ferner wird insbesondere eine Vorrichtung zum Erzeugen und Bereitstellen einer Datenbank mit darin hinterlegten Sensordatenpatches zur Verwendung beim Quilting geschaffen, umfassend eine Datenverarbeitungseinrichtung, wobei die Datenverarbeitungseinrichtung dazu eingerichtet ist, mehrere Ausgangsdomänendatenbanken bereitzustellen und/oder auf diese zuzugreifen, wobei in den mehreren Ausgangsdomänendatenbanken jeweils Sensordaten hinterlegt sind, die mittels zueinander kalibrierter Sensoren erfasst wurden, ferner Sensordaten aus den mehreren Ausgangsdomänendatenbanken zu erhalten, einen Anzahlparameter und einen Größenparameter zu erhalten, und aus den erhaltenen Sensordaten eine durch den Anzahlparameter festgelegte Anzahl von Sensordatenpatches jeweils mit einer durch den Größenparameter vorgegebenen Größe zu erzeugen und in der Datenbank zu hinterlegen, und hierbei die Anzahl anteilig auf die mehreren Ausgangsdatendomänendatenbanken aufzuteilen, und die erzeugte Datenbank bereitzustellen.
Das Verfahren und die Vorrichtung ermöglichen es, eine Datenbank als Ausgangspunkt für ein Quilting von Sensordaten zu erzeugen und bereitzustellen. Hierbei kann das Bereitstellen der Datenbank insbesondere auf datendomänenagnostische Weise durchgeführt werden, da mehrere Ausgangsdatendomänen bzw. zugehörige Ausgangsdomänendatenbanken verwendet werden, aus denen Sensordaten zum Erzeugen von Sensordatenpatches erhalten, insbesondere empfangen, werden. Aus den erhaltenen Sensordaten werden Sensordatenpatches erzeugt und in der Datenbank hinterlegt. Ein Sensordatenpatch kann auch als Datenblock bezeichnet werden. Die Sensordatenpatches bilden insbesondere subsymbolische Teilmengen der Sensordaten aus. Die Sensordatenpatches weisen hierbei eine durch den Größenparameter festgelegte Größe auf. Handelt es sich bei den Sensordaten beispielsweise um Kamerabilder einer Kamera, so definiert die Größe einen Bildausschnitt bzw. eine Bildelementanzahl, die ein Sensordatenpatch beinhalten soll, z.B. Bildausschnitte mit einer Größe von jeweils 8x8 Bildelementen. Der Anzahlparameter legt eine Anzahl (z.B. 10000, 100000 etc.) von Sensordatenpatches in der Datenbank fest. Insbesondere werden aus allen Ausgangsdomänendatenbanken anteilig Sensordaten verwendet, um die Sensordatenpatches zu erstellen. Die erzeugte Datenbank wird anschließend bereitgestellt. Die bereitgestellte Datenbank kann dann in einem Quiltingschritt dazu verwendet werden, gleichartige Sensordaten mehrerer Sensoren stückweise zu ersetzen bzw. zu rekonstruieren und hierdurch gegen adversariale Störungen zu robustifizieren.
Ein Vorteil des Verfahrens und der Vorrichtung ist, dass eine Datenbank für eine Verwendung beim Quilting von Sensordaten geschaffen werden kann, die unterschiedlichen Datendomänen zugeordnet sind. Insbesondere ist es möglich, neue Datendomänen mit einzubeziehen, sodass nach dem Durchführen des in dieser Offenbarung beschriebenen Verfahrens auch für die neue Datendomäne Sensordatenpatches in der Datenbank bereitgestellt werden können.
Das Verfahren und die Vorrichtung werden insbesondere dazu verwendet, eine Datenbank für ein Quilting-Verfahren zum Robustifizieren von Sensordaten gegen adversariale Störungen bereitzustellen.
Das Bereitstellen der Ausgangsdomänendatenbanken kann ein Empfangen und/oder Erfassen der darin enthaltenen Sensordaten mittels einer Schnittstelle und/oder mittels Sensoren und ein Erzeugen der Ausgangsdomänendatenbanken aus den empfangenen und/oder erfassten Sensordaten umfassen. Die Ausgangsdomänendatenbanken umfassen insbesondere Sensordaten der gleichen Sensoren bzw. Sensorkombinationen, zum Beispiel jeweils Sensordaten einer Sensorkombination aus einer Kamera und einem Lidarsensor.
Das Bereitstellen der erzeugten Datenbank kann ein Einladen der erzeugten Datenbank in eine Speichereinrichtung einer Robustifizierungsvorrichtung zum Robustifizieren von Sensordaten gegen adversariale Störungen umfassen. Hierzu wird insbesondere ein die erzeugte Datenbank umfassendes Datenpaket an die Robustifizierungsvorrichtung übermittelt und dort in die Speichereinrichtung eingeladen.
Ein Fahrzeug ist insbesondere ein Kraftfahrzeug. Ein Fahrzeug kann grundsätzlich jedoch auch ein anderes Land-, Schienen-, Wasser-, Luft- oder Raumfahrzeug sein, beispielsweise eine Drohne oder ein Lufttaxi. Grundsätzlich können das Verfahren und die Vorrichtung jedoch auch auf anderen Anwendungsgebieten eingesetzt werden, beispielsweise in der industriellen Produktion oder in der Robotik.
Quilting bezeichnet insbesondere das stückweise Ersetzen von Sensordaten, welches auch als stückweise Rekonstruktion der Sensordaten bezeichnet werden kann. Im Zusammenhang mit Bilddaten wird auch der Begriff „Image-Quilting“ verwendet. Eine Menge von ersetzten Sensordaten bildet eine Rekonstruktionsdatendomäne aus bzw. ist von einer Rekonstruktionsdatendomäne umfasst. Handelt es sich beispielsweise um Bilder einer Kamera, so wird das Kamerabild in mehrere Teilausschnitte unterteilt. Hierzu können kleine, rechteckige Bildausschnitte (auch als Patches bezeichnet) definiert werden. Die einzelnen Teil- bzw. Bildausschnitte werden mit Teilausschnitten, nachfolgend als Sensordatenpatches bezeichnet, verglichen, die in der Datenbank hinterlegt sind. Der Vergleich erfolgt auf Grundlage eines Abstandsmaßes, welches beispielsweise über einen euklidischen Abstand auf Bildelementvektoren definiert ist. Hierzu wird ein Teil- bzw. Bildausschnitt als Vektor linearisiert. Das Bestimmen eines Abstands erfolgt dann über eine Vektornorm, beispielsweise über die L2- Norm. Die Teil- bzw. Bildausschnitte aus den erfassten Sensordaten werden jeweils durch den nächstliegenden bzw. ähnlichsten Sensordatenpatch aus der Datenbank ersetzt. Es kann hierbei vorgesehen sein, dass ein Mindestabstand eingehalten werden muss bzw. dass zumindest keine Identität zwischen dem Teilausschnitt aus den Sensordaten und dem Sensordatenpatch vorliegen darf. Haben die Sensordaten eine andere Form (z.B. Lidardaten) bzw. ein anderes Format, so erfolgt das stückweise Ersetzen in analoger Weise. Das stückweise Ersetzen erfolgt für alle Teilausschnitte der erfassten Sensordaten, sodass anschließend ersetzte bzw. rekonstruierte Sensordaten vorliegen. Nach dem stückweise Ersetzen, das heißt nach dem Quilting, ist eine Wirkung der adversarialen Störungen in den ersetzten bzw. rekonstruierten Sensordaten beseitigt oder zumindest verringert.
Insbesondere wird die mittels des in dieser Offenbarung beschriebenen Verfahrens erzeugte Datenbank in einem Verfahren zum Robustifizieren von Sensordaten gegen adversariale Störungen verwendet, wobei Sensordaten von mindestens einem Sensor erhalten werden, wobei die erhaltenen Sensordaten des mindestens einen Sensors jeweils mittels Quilting auf Grundlage der in der erzeugten Datenbank hinterlegten Sensordatenpatches stückweise ersetzt werden, wobei das stückweise Ersetzen insbesondere derart durchgeführt wird, dass jeweils ersetzte Sensordaten unterschiedlicher Sensoren (sofern vorhanden) zueinander plausibel sind, und wobei die stückweise ersetzten Sensordaten ausgegeben werden. Das Verfahren zum Robustifizieren wird insbesondere mittels einer zugehörigen Robustifizierungsvorrichtung durchgeführt. Insbesondere wird hierzu eine Robustifizierungsvorrichtung zum Robustifizieren von Sensordaten gegen adversariale Störungen verwendet, umfassend eine Recheneinrichtung und eine Speichereinrichtung, wobei die Recheneinrichtung dazu eingerichtet ist, Sensordaten von mindestens einem Sensor zu erhalten, die erhaltenen Sensordaten des mindestens einen Sensors jeweils durch Quilting auf Grundlage der in der erzeugten Datenbank hinterlegten Sensordatenpatches stückweise zu ersetzen, und das stückweise Ersetzen insbesondere derart durchzuführen, dass jeweils ersetzte Sensordaten unterschiedlicher Sensoren (sofern vorhanden) zueinander plausibel sind, und die stückweise ersetzten Sensordaten auszugeben.
Eine „Plausibilität“ von ersetzten Sensordaten soll hierbei insbesondere bedeuten, dass die ersetzten Sensordaten physikalisch zueinander plausibel sind. Insbesondere soll hierbei eine Wahrscheinlichkeit, dass die jeweils ersetzten Sensordaten in der jeweiligen sensorübergreifenden Kombination auch unter realen Bedingungen, das heißt in der realen Welt, auftreten würden, (im Sinne z.B. einer Maximum-Likelihood) möglichst groß sein. Einfach ausgedrückt sollen die ersetzten Sensordaten der mindestens zwei Sensoren derart gewählt sein, dass die Wahrscheinlichkeit, dass diese Sensordaten in dieser Kombination auch real auftreten würden, maximiert ist. Handelt es sich beispielsweise bei unterschiedlichen Sensoren um eine Kamera und einen Lidarsensor, so bedeutet eine Plausibilität zwischen den jeweils ersetzten Sensordaten, dass ein betrachteter Bildausschnitt in den ersetzten Kameradaten und ein örtlich und zeitlich hiermit korrespondierender Teilausschnitt aus den ersetzten Lidardaten derart gewählt sind, dass die Sensordaten zueinander konsistent, das heißt physikalisch widerspruchsfrei zueinander, sind. Im vorgenannten Beispiel, in dem die mindestens zwei Sensoren eine Kamera und ein Lidarsensor sind, werden die Teilausschnitte der Sensordaten jeweils derart ersetzt, dass jeder ersetzte Bildausschnitt jeweils mit einem ersetzten Teilausschnitt der Lidardaten korrespondiert, wie dieser sich mit großer Wahrscheinlichkeit auch beim zeitgleichen Erfassen von Sensordaten der Kamera und des Lidarsensors ergeben würde.
Bei mehreren unterschiedlichen Sensoren sind die Sensordaten bzw. die Sensoren, mit denen die in den Ausgangsdomänendatenbanken hinterlegten Sensordaten erfasst wurden, insbesondere örtlich und zeitlich zueinander kalibriert, sodass die Sensordaten der Sensoren örtlich und zeitlich miteinander korrespondieren bzw. gemeinsame zeitliche und örtliche Bezugspunkte aufweisen. Bei mehreren Sensoren, stammen die Sensordaten insbesondere von Sensoren unterschiedlicher Art, beispielsweise von einer Kamera und einem Lidar- oder Radarsensor. Insbesondere sind die Sensordaten zueinander physikalisch plausibel, das heißt die Sensordaten widersprechen sich physikalisch nicht. Die jeweiligen Sensoren bzw. Sensordaten werden in Abhängigkeit eines geplanten Anwendungsszenarios der erzeugten Datenbank gewählt. Soll die Datenbank beispielsweise zum stückweisen Ersetzen von Sensordaten einer Kamera (und eines Lidarsensors) eingesetzt werden, so wird die Datenbank auch auf Grundlage von erfassten Sensordaten einer Kamera (und eines Lidarsensors) erzeugt. Die erfassten bzw. in den Ausgangsdomänendatenbanken hinterlegten Sensordaten sind insbesondere mit Sicherheit frei von oder weniger stark belastet mit potentiellen adversarialen Störungen. Die Sensordaten können prinzipiell eindimensional oder mehrdimensional, insbesondere zweidimensional, sein. Beispielsweise können die Sensordaten zweidimensionale Kamerabilder einer Kamera und zweidimensionale oder dreidimensionale Lidardaten eines Lidarsensors sein.
Die Sensordatenpatches können auch als Datenblöcke bezeichnet werden. Die Sensordatenpatches bilden insbesondere subsymbolische Teilmengen der erfassten bzw. in den Ausgangsdomänendatenbanken hinterlegten Sensordaten aus.
Eine Datendomäne soll insbesondere eine Gesamtheit von Sensordaten bezeichnen, die mit einem bestimmten Kontext korrespondieren bzw. deren Daten sich hinsichtlich ihres Ursprungs in mindestens einer Eigenschaft ähnlich sind. Ein solcher Kontext kann beispielsweise ein geographischer Kontext sein, z.B. kann eine Datendomäne Daten einer Stadt umfassen, eine hiervon verschiedene Datendomäne umfasst hingegen Daten einer anderen Stadt etc. Ein solcher Kontext kann auch ein Datenerstellungsparadigma sein (z.B. Echtweltsensoreindrücke, Simulationsdaten, synthetische oder synthetisch veränderte Sensordaten).
Die Ausgangsdatendomänen, die von den Ausgangsdomänendatenbanken abgebildet werden, sind insbesondere Datendomänen im Kontext des automatisierten Fahrens. Solche können insbesondere erfasste Sensordaten (Messdaten) aus verschiedenen Anwendungsszenarien eines automatisiert gefahrenen Fahrzeugs mit und ohne Grundwahrheit, Homologationsdaten und/oder Simulationsdaten sowie in einer Fahrzeugflotte erfasste Sensordaten (welche beispielsweise auch seltene Ereignisse und/oder typische Fehlersituationen umfassen bzw. abbilden) sein. Insbesondere ist vorgesehen, dass die erfassten bzw. in den Ausgangsdatendomänendatenbanken hinterlegten Sensordaten solche Sensordaten sind, die für eine Funktion für das automatisierte oder teilautomatisierte Fahren eines Fahrzeugs und/oder für eine Fahrerassistenz des Fahrzeugs und/oder für eine Umfelderfassung bzw. für eine Umfeldwahrnehmung erfasst wurden. Ein Fahrzeug ist insbesondere ein Kraftfahrzeug. Prinzipiell kann das Fahrzeug jedoch auch ein anderes Land-, Luft-, Wasser-, Schienen- oder Raumfahrzeug sein, beispielsweise eine Drohne oder ein Lufttaxi.
Eine adversariale Störung (engl adversarial perturbation) ist insbesondere eine gezielt vorgenommene Störung der, beispielsweise in Form von Sensordaten bereitgestellten, Eingangsdaten eines Neuronalen Netzes, bei der ein semantischer Inhalt in den Eingangsdaten zwar nicht verändert wird, die Störung jedoch dazu führt, dass das Neuronale Netz ein falsches Ergebnis inferiert, das heißt beispielsweise eine Fehlklassifikation oder eine falsche semantische Segmentierung der Eingangsdaten vornimmt.
Ein Neuronales Netz ist insbesondere ein tiefes Neuronales Netz, insbesondere ein Faltungsnetz (engl. Convolutional Neural Network, CNN). Das Neuronale Netz wird oder ist beispielsweise auf eine Funktion zum automatisierten oder teilautomatisierten Fahren eines Fahrzeugs und/oder zur Umfeldwahrnehmung trainiert, beispielsweise auf eine Wahrnehmung von Fußgängern oder anderen Objekten in erfassten Kamerabildern.
Das Verfahren kann als computerimplementiertes Verfahren ausgeführt werden. Insbesondere kann das Verfahren mittels einer Datenverarbeitungseinrichtung ausgeführt werden. Die Datenverarbeitungseinrichtung umfasst insbesondere mindestens eine Recheneinrichtung und mindestens eine Speichereinrichtung.
Es wird insbesondere auch ein Computerprogramm geschaffen, umfassend Befehle, die bei der Ausführung des Computerprogramms durch einen Computer diesen veranlassen, die Verfahrensschritte des offenbarten Verfahrens gemäß einer beliebigen der beschriebenen Ausführungsformen auszuführen.
Darüber hinaus wird insbesondere auch ein Datenträgersignal geschaffen, das das vorgenannte Computerprogramm überträgt.
Teile der Vorrichtung, insbesondere die Datenverarbeitungseinrichtung, können einzeln oder zusammengefasst als eine Kombination von Hardware und Software ausgebildet sein, beispielsweise als Programmcode, der auf einem Mikrocontroller oder Mikroprozessor ausgeführt wird.
Das Auswählen eines Teilausschnittes aus den Sensordaten, um aus dem ausgewählten Teilausschnitt einen Sensordatenpatch zu erzeugen, kann auf unterschiedliche Weisen erfolgen. In einer einfachen Ausführungsform werden die Sensordatenpatches zufällig, das heißt beispielsweise mittels eines Monte-Carlo-Verfahrens, aus den erhaltenen Sensordaten erzeugt.
In einer Ausführungsform ist vorgesehen, dass das Bereitstellen der erzeugten Datenbank ein Einladen der erzeugten Datenbank in eine Speichereinrichtung einer Robustifizierungsvorrichtung eines Assistenzsystems mindestens eines Fahrzeugs umfasst, wobei die Robustifizierungsvorrichtung dazu eingerichtet ist, erfasste Sensordaten mindestens eines Sensors mit Hilfe der in der Datenbank hinterlegten Sensordatenpatches mittels Quilting stückweise zu ersetzen, sodass die ersetzten Sensordaten gegen adversariale Störungen robustifiziert sind.
Es kann hierbei vorgesehen sein, dass das Erzeugen und Bereitstellen der Datenbank beispielsweise mittels eines zentralen Servers erfolgt. Die erzeugte Datenbank wird im Rahmen des Bereitstellens dann an eine Robustifizierungsvorrichtung eines Assistenzsystems mindestens eines Fahrzeugs übermittelt, beispielsweise über entsprechend ausgebildete drahtgebundene oder drahtlose Kommunikationsschnittstellen, und in eine Speichereinrichtung der Robustifizierungsvorrichtung geladen.
In einer weiterbildenden Ausführungsform ist vorgesehen, dass die ersetzten Sensordaten einer Funktion für das automatisierte oder teilautomatisierte Fahren des Fahrzeugs und/oder für eine Umfeldwahrnehmung zugeführt werden. Die Funktion kann ausgehend von den ersetzten Sensordaten zuverlässiger arbeiten. Die Funktion erzeugt ausgehend von den zugeführten ersetzten Sensordaten mindestens ein Steuersignal und/oder Auswertesignal und stellt dieses bereit.
In einer Ausführungsform ist vorgesehen, dass die Sensordaten in den mehreren Ausgangsdomänendatenbanken zumindest teilweise mit mindestens einer Eigenschaftsinformation markiert sind oder markiert werden, wobei mindestens ein Eigenschaftsparameter erhalten wird, und wobei das Erzeugen der Sensordatenpatches für die Datenbank unter Berücksichtigung des erhaltenen mindestens einen Eigenschaftsparameters und der mindestens einen Eigenschaftsinformation durchgeführt wird. Insbesondere ist vorgesehen, dass die erzeugten Sensordatenpatches in Abhängigkeit des mindestens einen Eigenschaftsparameters mit einer Eigenschaftsinformation markiert werden. Der mindestens eine Eigenschaftsparameter gibt hierbei insbesondere vor, welche Eigenschaftsinformationen zum Markieren eines Sensordatenpatches, insbesondere in Form von mindestens einer diesem in der Datenbank zugeordneten Patcheigenschaftsinformation, verwendet werden bzw. vorgesehen sind. Eine Eigenschaftsinformation bzw. eine Patcheigenschaftsinformation kann auch als „Tag“ bezeichnet werden. Hierdurch können die Sensordatenpatches gezielt mit (Patch-)Eigenschaftsinformationen markiert werden, wodurch sich eine Suche in der erzeugten Datenbank während einer Anwendungsphase beim stückweise Ersetzen mittels Quilting beschleunigen lässt. Eine Eigenschaftsinformation kann beispielsweise Sensoreigenschaften (Auflösung, Ausrichtung, Sensormodell etc.) der Sensoren umfassen, mittels derer die Sensordaten erfasst wurden.
Eine Eigenschaftsinformation kann beispielsweise einen Zeitpunkt bzw. Zeitschnitt und/oder eine lokale Verödung innerhalb des Zeitschnitts in den Sensordaten umfassen, beispielsweise eine typische Pixelposition (z.B. in x,y-Koordinaten). Die typische Pixelposition kann beispielsweise über statistische Verfahren in den Sensordaten berechnet werden. Hierdurch können Lokalisierungsprioren geschaffen werden, die eine Suche nach geeigneten Sensordatenpatches bei einer nachfolgenden Anwendung der Datenbank beschleunigen können.
Ferner kann eine Eigenschaftsinformation auch einen Zeitpunkt (Tageszeit, Wochentag, Monat, Jahreszeit etc.) und/oder einen Ort (z.B. eine geographische Position) umfassen, zu dem bzw. an dem die Sensordaten jeweils erfasst wurden.
Eine Eigenschaftsinformation kann die jeweiligen Sensordaten auch inhaltlich näher beschreiben, beispielsweise indem die Eigenschaftsinformation eine Grundwahrheit (engl ground truth) zu den Sensordaten oder einem Teilausschnitt hiervon und/oder eine Kontextinformation zu den Sensordaten oder einem Teilausschnitt hiervon umfasst. Eine Grundwahrheit beschreibt insbesondere, welche Objekte in den Sensordaten abgebildet sind und/oder wie die Sensordaten semantisch segmentiert sind. Hierdurch können semantische Prioren bereitgestellt werden, die eine Suche nach geeigneten Sensordatenpatches bei einer nachfolgenden Anwendung der Datenbank beschleunigen können. Eine Kontextinformation beschreibt einen Kontext, in dem die Sensordaten erfasst wurden (z.B. eine Witterung, eine Tageszeit, ein Wochentag, einen Monat, eine Jahreszeit, eine Saison, eine Verkehrssituation, wie z.B. Autobahn, Landstraße, Stadtverkehr etc., Verkehrsteilnehmer, kritische Situationen etc.). Hierdurch können Kontextprioren geschaffen werden, die eine Suche nach geeigneten Sensordatenpatches bei einer nachfolgenden Anwendung der Datenbank beschleunigen können.
Eine Eigenschaftsinformation kann auch ausgehend von Fahrzeugdaten erzeugt bzw. bereitgestellt werden, beispielsweise können Fahrzeugdaten während eines Erfassens der Sensordaten erhoben werden, mit denen die erfassten Sensordaten anschließend markiert werden oder aus denen Eigenschaftsinformationen abgeleitet werden. Fahrzeugdaten können beispielsweise über einen Controller Area Network-(CAN)-Bus abgefragt und/oder empfangen werden. Durch Vorgabe des mindestens einen Eigenschaftsparameters kann vorgegeben werden, mit welchen Eigenschaftsinformationen die erzeugten Sensordatenpatches markiert werden sollen.
Eine Eigenschaftsinformation kann auch typische Eigenschaften von Sensordaten oder einem Teilausschnitt aus Sensordaten eines parallel bzw. zeitgleich verwendeten Sensors umfassen. So kann beispielsweise ein Sensordatenpatch für ein Kamerabild einer Kamera als Eigenschaftsinformation mit einem hierzu typischen Sensordatenpatch eines Lidarsensors markiert sein. Hierdurch können geometrische Prioren bereitgestellt werden, sodass beim Auffinden eines geeigneten Sensordatenpatches in der Datenbank zum Ersetzen eines Teilausschnitts eines Kamerabildes über die im Wege der Markierung in der Datenbank zugeordnete Eigenschaftsinformation sofort ein zugehöriges Sensordatenpatch für den Lidarsensor bereitgestellt werden kann. Insbesondere können auf diese Weise physikalisch zueinander plausible Sensordatenpatches für mehrere Sensoren bereitgestellt werden.
Es kann ferner vorgesehen sein, dass das Erzeugen der Sensordatenpatches aus den Sensordaten in Abhängigkeit der mindestens einen Eigenschaftsinformation erfolgt, mit der die Sensordaten markiert sind. Hierzu werden Teilausschnitte derjenigen Sensordaten ausgewählt bzw. verwendet, denen die Eigenschaftsinformationen zugeordnet sind, die durch den mindestens einen Eigenschaftsparameter vorgegebenen sind. Hierdurch können nur bestimmte bzw. nach bestimmten Eigenschaftsinformationen gefilterte Sensordaten aus den Ausgangsdomänendatenbanken erhalten bzw. abgefragt werden. Beispielsweise kann vorgesehen sein, dass die zum Erzeugen der Sensordatenpatches verwendeten Sensordaten im folgenden Kontext erfasst worden sein müssen: Winter, montags, „Fußgänger vorhanden“. Entsprechende Eigenschaftsparameter werden für dieses Szenario dann vorgegeben und die Sensordaten werden in Abhängigkeit der vorgegebenen Eigenschaftsparameter abgerufen und erhalten. Aus diesen erhaltenen Sensordaten werden dann Sensordatenpatches erzeugt, indem Teilausschnitte aus den Sensordaten entnommen und als Sensordatenpatches in der Datenbank hinterlegt werden. Die derart erzeugten Sensordatenpatches können dann ebenfalls mit den zugehörigen Eigenschaftsinformationen markiert werden.
Es kann ferner vorgesehen sein, dass eine Verteilung von Eigenschaften über den mindestens einen Eigenschaftsparameter vorgegeben wird, die die in der Datenbank hinterlegten Sensordatenpatches aufweisen sollen. Beispielsweise können statistische Verteilungen über Mittelwerte und Standardabweichungen vorgegeben werden. Entsprechend erfolgt das Erzeugen der Sensordatenpatches aus den erhaltenen Sensordaten unter Berücksichtigung der vorgegebenen Verteilung.
In einer Ausführungsform ist vorgesehen, dass der mindestens eine Eigenschaftsparameter eine regulatorische Vorgabe umfasst. Eine solche regulatorische Vorgabe ist beispielsweise eine Vorgabe eines Gesetzgebers, die festlegt, wie eine Datenbank, die beim Quilting zum Robustifizieren von Sensordaten verwendet wird, beschaffen sein muss bzw. welche Kriterien diese erfüllen muss. Beispielsweise kann vorgesehen sein, dass ein Anteil an Sensordatenpatches vorgegeben ist, der von Sensordaten stammt, die Verkehrsschilder oder Gesichter etc. abbilden. Ein weiteres Beispiel ist eine Vorgabe für das Vorhandensein eines bestimmten Kontextes, der von der erzeugten Datenbank abgebildet werden muss. Ein solcher Kontext kann beispielsweise die Vorgabe sein, dass Eigenschaften bzw. Merkmale eine Spielstraße, eines Fahrradweges und/oder eines Zebrastreifens über entsprechende Sensordatenpatches in der Datenbank abgebildet sein muss. Hierdurch kann erreicht werden, dass regulatorische Vorgaben, die einer Sicherstellung oder Erhöhung einer Sicherheit dienen, beim Erzeugen der Datenbank berücksichtigt werden.
In einer Ausführungsform ist vorgesehen, dass ein Rekonstruktionsqualitätsparameter erhalten wird, wobei der Rekonstruktionsqualitätsparameter einen durchschnittlichen Abstand zwischen Sensordaten und mittels Quilting auf Grundlage der erzeugten Datenbank stückweise ersetzten Sensordaten vorgibt, und wobei das Erzeugen der Sensordatenpatches unter Berücksichtigung des erhaltenen Rekonstruktionsqualitätsparameters durchgeführt wird. Hierdurch lässt sich die Datenbank unter der Bedingung erstellen, dass eine vorgegebene Rekonstruktionsqualität der Sensordaten beim Quilting erreicht wird. Der durchschnittliche Abstand kann beispielsweise mit Hilfe eines Abstandsmaßes bestimmt werden, das einen mit einem Sensordatenpatch ersetzten Teilausschnitt der Sensordaten und den ursprünglichen Teilausschnitt jeweils linearisiert als Vektoren darstellt und mittels einer Vektornorm, beispielsweise der L2-Norm, einen Abstand zwischen diesen Vektoren bestimmt. Ein derart bestimmter Abstand wird über eine vorgegebene Menge an Sensordaten gemittelt, sodass ein Durchschnittswert gebildet wird. Der durchschnittliche Abstand kann dann beispielsweise durch Hinzufügen und/oder Entfernen von Sensordatenpatches zur/von der Datenbank verändert werden.
In einer Ausführungsform ist vorgesehen, dass ein Datendomänendistanzparameter erhalten wird, wobei ein jeweiliger Anteil der erzeugten Sensordatenpatches aus den mehreren Ausgangsdomänendatenbanken in Abhängigkeit des erhaltenen
Datendomänendistanzparameters festgelegt wird. Hierdurch kann eine durch Quilting mit Hilfe der Sensordatenpatches der Datenbank gebildete Rekonstruktionsdatendomäne bezüglich ihrer Eigenschaften an die in den Ausgangsdomänendatenbanken abgebildeten Ausgangsdatendomänen angenähert werden. Einfach ausgedrückt kann ein Abstand zu einer Ausgangsdatendomäne dadurch verringert werden, dass ein Anteil der Sensordaten aus dieser Ausgangsdatendomäne beim Erzeugen der Sensordatenpatches erhöht wird. Eine Domänendistanz zwischen den jeweiligen Ausgangsdatendomänen und der Rekonstruktionsdatendomäne der mittels der Sensordatenpatches ersetzten Sensordaten wird hierbei mittels eines geeigneten Domänendistanzmaßes bestimmt. Verfahren, die zum Bestimmen einer Datendomänendistanz verwendet werden können, werden weiter unten beschrieben.
In einer Ausführungsform ist vorgesehen, dass die Datenbank im Hinblick auf mindestens ein Optimierungskriterium optimiert wird. Insbesondere wird eine Beschaffenheit bzw. eine Zusammensetzung der Datenbank hierbei iterativ solange verändert, bis das mindestens Optimierungskriterium erfüllt ist. Parameter, die zum Optimieren verändert werden können, sind beispielsweise eine Größe der Sensordatenpatches, eine Anzahl der Sensordatenpatches in der Datenbank, ein jeweiliger Anteil von Sensordaten aus verschiedenen Ausgangsdatendomänen bzw. Ausgangsdatendomänendatenbanken, eine Stärke eines Einflusses von Eigenschaftsinformationen beim Erzeugen der Sensordatenpatches und/oder eine Wahl des oder der Abstandsmaße und/oder Auswahlverfahren beim Erzeugen der Sensordatenpatches für die Datenbank und/oder beim Auswählen von in der Datenbank hinterlegten Sensordatenpatches beim Quilting.
Ein Optimierungskriterium ist beispielsweise eine vorgegebene Domänendistanz zwischen den über die Ausgangsdomänendatenbanken abgebildeten Ausgangsdatendomänen und der über die mittels des Quilting durch die ersetzten Sensordaten erzeugte Rekonstruktionsdatendomäne.
Als Datendomänendistanzmaß können beispielsweise statistische Eigenschaften bzw. statistische Kennwerte von aus Sensordaten gebildeten Datensätzen einer bekannten Datendomäne und eines aus ersetzten Sensordaten gebildeten Datensatzes der Rekonstruktionsdatendomäne bestimmt und miteinander verglichen werden. Bei Kamerabildern können beispielsweise Farbwerthistogramme über die Kamerabilder und ersetzten Kamerabilder oder die jeweiligen Teilausschnitte bzw. Sensordatenpatches miteinander verglichen werden. Eine Datendomäne und die Rekonstruktionsdatendomäne können dann auf Grundlage der jeweils bestimmten statistischen Eigenschaften bzw. Kennwerte der zugehörigen Datensätze miteinander verglichen werden und hieraus das Datendomänendistanzmaß bestimmt werden. Das Datendomänendistanzmaß zwischen Datensätzen von zwei Datendomänen kann beispielsweise aus einer Differenz zwischen den jeweils zugehörigen statistischen Kennwerten berechnet werden.
Ferner kann vorgesehen sein, das Datendomänendistanzmaß auf Grundlage einer jeweiligen Verteilung von Merkmalen in den aus den ursprünglichen bzw. ersetzten Sensordaten gebildeten Datensätzen der Datendomänen zu bestimmen. Hierzu werden aus den jeweiligen Sensordaten oder den Teilausschnitten aus den Sensordaten Merkmale extrahiert, deren statistische Verteilungen dann paarweise für einen Datensatz einer Datendomäne und einem Datensatz der Rekonstruktionsdatendomäne miteinander verglichen werden. Aus dem Vergleichsergebnis wird dann das Datendomänendistanzmaß bestimmt, beispielsweise durch Differenzbildung zwischen statistischen Kennwerten der jeweiligen statistischen Verteilungen. Die Merkmale können beispielsweise aus Dimensionsreduktionsverfahren stammen und/oder von Kernelfunktionen und/oder von Merkmalskarten eines (tiefen) Neuronalen Netzes bereitgestellt werden. Auch Klassifikationsergebnisse eines (tiefen) Neuronalen Netzes können als Merkmale verwendet werden. Die statistischen Verteilungen der Merkmale werden dann mittels statistischer Kennwerte, wie z.B. Erwartungswerten etc., für die Datensätze der Datendomänen miteinander verglichen und als Datendomänendistanz zwischen Paaren von Datensätzen der Datendomänen definiert.
Es sind darüber hinaus auch komplexere Verfahren möglich, um ausgehend von den extrahierten Merkmalen zu der Datendomänendistanz zu gelangen, beispielsweise eine gesampelte k-NN-Konfusion (engl. „Cross Domain Retrieval“). Hierbei werden drei Sätze an Merkmalen erstellt, je ein Satz von Merkmalen aus den ursprünglichen bzw. ersetzten Datensätzen der zu vergleichenden zwei Datendomänen sowie ein gemischter Satz mit Merkmalen aus beiden Datendomänen. Alle drei Sätze werden zufällig aus den jeweiligen Daten der Datensätze gezogen (z.B. 1000 Samples pro Satz). Anschließend werden für jedes Sample der datendomänenspezifischen Sätze die k-nächsten Nachbarn im gemischten Satz gesucht und gezählt, wie viele davon aus der jeweils anderen Datendomäne stammen. Die bestimmten Anzahlen können dann als Datendomänendistanzmaß verwendet werden.
Ein Optimierungskriterium kann ferner eine Rekonstruktionsqualität sein. Eine Rekonstruktionsqualität bezeichnet hierbei eine Ähnlichkeit bzw. einen Abstand zwischen Sensordaten und den zugehörigen ersetzten Sensordaten. Ein Optimierungskriterium kann auch eine Robustheitswirkung sein. Eine solche Robustheitswirkung quantifiziert eine Robustifizierung, die mit Hilfe der erstellten Datenbank an Sensordaten einer Zieldatendomäne, die einem Neuronalen Netz oder einer Auswahl von Neuronalen Netzen (insbesondere zum Bereitstellen einer Funktion für das automatisierte Fahren) bereitgestellt werden, mittels Quilting erzielt wurde.
Ein Optimierungskriterium kann auch eine Performanzwirkung sein. Eine solche Performanzwirkung kann eine Wirkung einer durch Quilting mit Hilfe der erzeugten Datenbank robustifizierten Sensordaten quantifizieren. Hierzu werden einem (tiefen) Neuronalen Netz oder einer Auswahl von (tiefen) Neuronalen Netzen (insbesondere zum Bereitstellen einer Funktion für das automatisierte Fahren) sowohl adversarial gestörte als auch mit Hilfe der erzeugten Datenbank stückweise ersetzte Sensordaten zugeführt und die Wrkung über einen Vergleich der Ergebnisse quantifiziert. Auch kann eine funktionale Performanz (Genauigkeit der Vorhersage, Intersection over Union, Falsch-Positiv- oder Falsch-Negativ-Detektionsrate etc.) oder eine Generalisierungsfähigkeit (funktionale Güte unter bisher ungesehenen Kontexten) als Optimierungskriterium verwendet werden. Hierfür werden die jeweiligen Messwerte für ein Neuronales Netz oder eine Auswahl von Neuronalen Netzen unter Zuführung von Sensordaten als auch stückweise ersetzten Sensordaten gemessen und darüber die Performanzwirkung quantifiziert.
Ein Optimierungskriterium kann auch eine Domäneninvarianz bei der Rekonstruktion sein. Eine Domäneninvarianz ist hierbei charakterisiert durch einen möglichst geringen Abstand zwischen verschiedenen Rekonstruktionsdatendomänen unter verschiedenen Ausgangsdatendomänen.
Ein Optimierungskriterium kann auch eine Domäneninvarianz für eine Auswahl von (tiefen) Neuronalen Netzen sein, das heißt eine möglichst gleiche Performanz und Robustheit von (tiefen) Neuronalen Netzen (insbesondere zum Bereitstellen einer Funktion für das automatisierte Fahren) auf verschiedenen aus ersetzten Sensordaten gebildeten Rekonstruktionsdatendomänen.
Ferner ist es möglich, dass das Optimierungskriterium durch regulatorische Vorgaben festgelegt ist oder festgelegt wird. Dies können beispielsweise eine Mindestgröße der Sensordatenpatches, eine Mindestrobustheit, die beim Quilting mit Hilfe der erzeugten Datenbank erzielt wird und/oder eine Maximallatenz beim Verwenden der Datenbank beim Rekonstruieren der Sensordaten, das heißt beim Quilting, sein. ln einer weiterbildenden Ausführungsform ist vorgesehen, dass das mindestens eine Optimierungskriterium eine Laufzeiteigenschaft der Datenbank beim Quilting umfasst. Eine Laufzeiteigenschaft kann beispielsweise verbessert werden, indem typische, das heißt beim Quilting von Sensordaten häufig auftretende, Kombinationen von Sensordatenpatches im Voraus bestimmt und für die Rekonstruktion bzw. das Quilting der Sensordaten bereitgehalten werden. Weiter kann ein Aufbau von Suchindizes erfolgen, die ein schnelles Durchsuchen der Datenbank nach einem Sensordatenpatch mit dem geringsten Abstand zu einem Teilausschnitt aus erfassten Sensordaten beschleunigt. Beispielsweise kann ein effizientes Hashing der Datenbank für Parameter, die für die Rekonstruktion hochrelevant sind, erfolgen. Die ermittelten Hashing-Tabellen werden in der Datenbank hinterlegt, sodass eine nachfolgende Suche in der Datenbank beschleunigt werden kann. Weiter können Voronoi-Zellen für die Rekonstruktion bestimmt werden, also Teilausschnitte in den Sensordaten, die bei der Rekonstruktion bzw. beim Quilting immer durch ein bestimmtes Sensordatenpatch ersetzt werden. Die bestimmten Voronoi-Zellen bzw. bestimmten Teilausschnitte werden in der Datenbank entsprechend markiert und/oder gesondert hinterlegt.
Es kann vorgesehen sein, dass zusätzlich Informationen in der Datenbank hinterlegt werden, die Eigenschaften der Datenbank bzw. Eigenschaften von in der Datenbank hinterlegten Sensordatenpatches beschreiben oder spezifizieren. Dies erleichtert eine Anwendung der Datenbank beim Quilting. Insbesondere sind die Eigenschaften in Form von Metadaten hinterlegt. Durch das Hinterlegen der Eigenschaften der Datenbank kann die Datenbank gezielt für ein Anwendungsszenario ausgewählt und bereitgestellt werden.
In einer Ausführungsform ist vorgesehen, dass ein Abstandsmaß festgelegt wird, welches einen Abstand zwischen zu ersetzenden Teilausschnitten in den Sensordaten und den Sensordatenpatches festlegt, und in der Datenbank hinterlegt wird. Dieses Abstandsmaß legt fest, wie ein Abstand zwischen den Teilausschnitten und den Sensordaten gemessen werden soll. Hierbei ist vorgesehen, dass sowohl beim Erzeugen der Datenbank als auch bei einer nachfolgenden Anwendung der Datenbank beim Quilting bzw. Rekonstruieren von Sensordaten das gleiche Abstandsmaß verwendet wird. Beispielsweise können die Teilausschnitte der Sensordaten und die hinterlegten Sensordatenpatches als Vektoren dargestellt werden. Als Abstandsmaße eignen sich dann insbesondere Vektornormen wie die LP-Metriken, beispielsweise die L2-Norm. Ferner ist auch eine Verwendung von anderen, insbesondere gröberen, Abstandsmaßen möglich. Beispielsweise kann ein Abstand nicht ausgehend von konkreten Sensordatenpatches, sondern ausgehend einer Auswahl von hinreichend ähnlichen Sensordatenpatches definiert sein. In einer Ausführungsform ist vorgesehen, dass ein Auswahlverfahren zum Auswählen von Sensordatenpatches aus der Datenbank festgelegt wird und in der Datenbank hinterlegt wird. Dieses Auswahlverfahren wird beim Anwenden der Datenbank aus der Datenbank abgefragt und anschließend zum Auswählen der Sensordatenpatches verwendet. Hierdurch kann insbesondere eine Optimierung der Datenbank im Hinblick auf ein vorgegebenes Optimierungskriterium (siehe oben) unterstützt werden, da die Optimierung auch eine Wahl bzw. einen Wechsel des Auswahlverfahrens umfassen kann. Ein beispielhaftes Auswahlverfahren ist „Nearest Neighbor“, das heißt es wird stets der in Bezug auf ein Abstandsmaß nächstliegende Sensordatenpatch ausgewählt. Ferner kann ein Sensordatenpatch in Abhängigkeit von Eigenschaftsinformationen (siehe oben) und/oder über probabilistische Verfahren ausgewählt werden. Zum Beispiel kann ein Sensordatenpatch aus einer Menge von bezüglich eines Abstands hinreichend nahen Sensordatenpatches, beispielsweise mittels des Monte-Carlo-Verfahrens, ausgewählt werden. Welche Sensordatenpatches hierbei berücksichtigt werden, wird beispielsweise über einen vorgegebenen Grenzwert für den Abstand definiert.
In einer Ausführungsform ist vorgesehen, dass eine Datendomänendistanz zwischen jeweiligen Ausgangsdatendomänen der Ausgangsdomänendatenbanken und eine über die mittels Quilting ausgehend von in der Datenbank hinterlegten Sensordatenpatches gebildete Rekonstruktionsdatendomäne bestimmt wird und in der Datenbank hinterlegt wird. Hierdurch kann erreicht werden, dass gezielt Datenbanken für bestimmte Datendomänen von Sensordaten erzeugt und bereitgestellt werden können. Über die Datendomänendistanz kann ferner eine Bewertung einer erstellten Datenbank erfolgen. Hierdurch kann eine Optimierung der Datenbank im Hinblick auf ein Optimierungskriterium, das eine möglichst geringe Datendomänendistanz zu einer oder mehreren Ausgangsdatendomänen beinhaltet, unterstützt werden. Als Domänendistanzmaß können die bereits voranstehend beschriebenen Domänendistanzmaße verwendet werden.
Weitere Merkmale zur Ausgestaltung der Vorrichtung ergeben sich aus der Beschreibung von Ausgestaltungen des Verfahrens. Die Vorteile der Vorrichtung sind hierbei jeweils die gleichen wie bei den Ausgestaltungen des Verfahrens.
Ferner wird auch ein Assistenzsystem für ein Fahrzeug geschaffen, umfassend mindestens eine Robustifizierungsvorrichtung, mit einer Recheneinrichtung und einer Speichereinrichtung, wobei die Robustifizierungsvorrichtung dazu eingerichtet ist, eine mittels eines Verfahrens gemäß einer der beschriebenen Ausführungsformen erzeugte Datenbank zu erhalten und/oder zu empfangen und in der Speichereinrichtung zu hinterlegen, und erfasste Sensordaten mit Hilfe der in der Datenbank hinterlegten Sensordatenpatches mittels Quilting stückweise zu ersetzen, sodass die ersetzten Sensordaten gegen adversariale Störungen robustifiziert sind.
In einer Ausführungsform des Assistenzsystems ist vorgesehen, dass das Assistenzsystem ein Steuergerät aufweist, wobei das Steuergerät dazu eingerichtet ist, mindestens eine Funktion zum automatisierten oder teilautomatisierten Fahren des Fahrzeugs und/oder zur Umfeldwahrnehmung bereitzustellen, wobei das Assistenzsystem dazu eingerichtet ist, der mindestens einen Funktion die ersetzten Sensordaten zuzuführen. Die Funktion erzeugt ausgehend von den zugeführten ersetzten Sensordaten mindestens ein Steuersignal und/oder Auswertesignal und stellt dieses bereit.
Nachfolgend wird die Erfindung anhand bevorzugter Ausführungsbeispiele unter Bezugnahme auf die Figuren näher erläutert. Hierbei zeigen:
Fig. 1 eine schematische Darstellung einer Ausführungsform der Vorrichtung zum
Erzeugen und Bereitstellen einer Datenbank mit darin hinterlegten Sensordatenpatches zur Verwendung beim Quilting;
Fig. 2 eine schematische Darstellung zur Verdeutlichung von Ausführungsformen des
Verfahrens zum Erzeugen und Bereitstellen einer Datenbank mit darin hinterlegten Sensordatenpatches zur Verwendung beim Quilting.
In Fig. 1 ist eine schematische Darstellung einer Ausführungsform der Vorrichtung 1 zum Erzeugen und Bereitstellen einer Datenbank 40 mit darin hinterlegten Sensordatenpatches 60 zur Verwendung beim Quilting gezeigt. Die Vorrichtung 1 umfasst eine Datenverarbeitungseinrichtung 2, die eine Recheneinrichtung 3 und eine Speichereinrichtung 4 umfasst. Die Vorrichtung 1 führt das in dieser Offenbarung beschriebene Verfahren zum Erzeugen einer Datenbank 40 mit darin hinterlegten Sensordatenpatches 60 zur Verwendung beim Quilting aus.
Teile der Vorrichtung 1, insbesondere die Datenverarbeitungseinrichtung 2, können einzeln oder zusammengefasst als eine Kombination von Hardware und Software ausgebildet sein, beispielsweise als Programmcode, der auf einem Mikrocontroller oder Mikroprozessor ausgeführt wird. Die Datenverarbeitungseinrichtung 2 stellt mehrere Ausgangsdomänendatenbanken 10, 11 bereit. Die Ausgangsdomänendatenbanken 10, 11 sind insbesondere in der Speichereinrichtung 4 hinterlegt. Alternativ kann die Datenverarbeitungseinrichtung 2 auf die mehreren Ausgangsdomänendatenbanken 10, 11 zugreifen, wenn diese beispielsweise von einer externen Einrichtung bereitgestellt werden. In den mehreren
Ausgangsdomänendatenbanken 10, 11 sind jeweils Sensordaten 20, 21 hinterlegt, die mittels zueinander kalibrierter Sensoren erfasst wurden. Hierbei handelt es sich bei den jeweiligen Sensordaten 20, 21 insbesondere um Sensordaten 20, 21 mehrerer Sensoren, die zeitlich und örtlich zueinander kalibriert sind. Die Sensoren können beispielsweise eine Kamera und ein hierzu kalibrierter Lidarsensor sein. Es können aber auch andere und insbesondere weitere Sensoren vorgesehen sein. Es kann vorgesehen sein, dass die
Datenverarbeitungseinrichtung 10, 11 die Ausgangsdatendomänendatenbanken 10, 11 bzw. die darin hinterlegten Sensordaten 20, 21 hierfür über eine Eingangsschnittstelle 5 empfängt und in der Speichereinrichtung 4 hinterlegt.
Die Recheneinrichtung 3 erhält, insbesondere empfängt, beispielsweise über die Eingangsschnittstelle 5, einen Anzahlparameter 30 und einen Größenparameter 31. Ferner ruft die Recheneinrichtung 3 Sensordaten 20, 21 aus den Ausgangsdomänendatenbanken 10, 11 ab.
Die Recheneinrichtung 3 initialisiert eine Datenbank 40 in der Speichereinrichtung 40 und erzeugt aus den erhaltenen Sensordaten 20, 21 eine durch den Anzahlparameter 30 festgelegte Anzahl von Sensordatenpatches 60 jeweils mit einer durch den Größenparameter 31 vorgegebenen Größe. Es ist hierbei vorgesehen, die Anzahl anteilig auf die mehreren Ausgangsdatendomänendatenbanken 10, 11 aufzuteilen. Ein Sensordatenpatch 60 ist hierbei insbesondere jeweils ein Teilausschnitt aus den erhaltenen Sensordaten 20, 21. Handelt es sich bei den Sensordaten 20, 21 beispielsweise um ein Kamerabild, so entspricht ein Sensordatenpatch 60 einem Bildausschnitt aus dem Kamerabild, beispielsweise mit 8x8 Bildelementen (Pixeln). Handelt es sich bei den Sensordaten 20, 21 beispielsweise um zweidimensionale Lidardaten, so entspricht ein Sensordatenpatch 60 einem Teilausschnitt aus den Lidardaten, beispielsweise mit 8x8 Datenpunkten.
Die erzeugten Sensordatenpatches 60 werden von der Recheneinrichtung 3 in der Datenbank 40 hinterlegt. Sensordatenpatches 60, die aus miteinander zeitlich und örtlich korrespondierenden Sensordaten 20, 21 (z.B. einem Kamerabild und hiermit korrespondierenden Lidardaten) erzeugt wurden, werden insbesondere miteinander verknüpft in der Datenbank 40 hinterlegt.
Die erzeugte Datenbank 40 wird von der Recheneinrichtung 3 bereitgestellt, beispielsweise kann die Datenbank 40 über eine Ausgangsschnittstelle 6 als Datenpaket ausgegeben werden. Die Datenbank 40 wird anschließend insbesondere einer Robustifizierungsvorrichtung 70 eines Assistenzsystems 300 eines Fahrzeugs (nicht gezeigt) zugeführt, die mittels Quilting erfasste Sensordaten 72 stückweise ersetzt, sodass die ersetzten Sensordaten 73 gegen adversariale Störungen robustifiziert sind. Die Datenbank 40 wird hierzu beispielsweise in eine Speichereinrichtung (nicht gezeigt) der Robustifizierungsvorrichtung 70 geladen. Die ersetzten Sensordaten 73 können einem Steuergerät 51 des Assistenzsystems 300 zugeführt werden.
Das Steuergerät 51 stellt eine Funktion zum automatisierten und/oder teilautomatisierten Fahren des Fahrzeugs und/oder zur Umfeldwahrnehmung bereit. Der Funktion werden die ersetzten Sensordaten 73 zugeführt. Die Funktion erzeugt ausgehend von den ersetzten Sensordaten 73 beispielsweise eine Steuersignal 52 oder ein Auswertesignal 53.
Es kann vorgesehen sein, dass die Sensordaten 20, 21 in den mehreren Ausgangsdomänendatenbanken 10, 11 zumindest teilweise mit mindestens einer Eigenschaftsinformation 12, 13 markiert sind oder markiert werden, wobei mindestens ein Eigenschaftsparameter 32, beispielsweise über die Eingangsschnittstelle 5, von der Recheneinrichtung 3 erhalten wird. Das Erzeugen der Sensordatenpatches 60 für die Datenbank 40 wird dann unter Berücksichtigung des erhaltenen mindestens einen Eigenschaftsparameters 32 und der mindestens einen Eigenschaftsinformation 12, 13 durchgeführt. Insbesondere kann hierüber festgelegt werden, welche Eigenschaftsinformationen 12, 13 als Patcheigenschaftsinformationen 14 übernommen bzw. den erzeugten Sensordatenpatches 60 in der Datenbank 40 zugeordnet werden. Ferner kann über den mindestens einen Eigenschaftsparameter 32 auch eine Vorgabe erfolgen, welche Eigenschaften die erzeugten Sensordatenpatches 60 aufweisen müssen, um beispielsweise vorgegebene Eigenschaftsverteilungen (bezüglich eines Kontextes, einer Witterung, kritischer Situationen etc.) in der Datenbank 40 abzubilden.
Hierbei kann insbesondere vorgesehen sein, dass der mindestens eine Eigenschaftsparameter 32 eine regulatorische Vorgabe umfasst.
Es kann vorgesehen sein, dass die Recheneinrichtung 2 einen
Rekonstruktionsqualitätsparameter 33, beispielsweise über die Eingangsschnittstelle 5, erhält, wobei der Rekonstruktionsqualitätsparameter 33 einen durchschnittlichen Abstand zwischen Sensordaten 72 und mittels Quilting auf Grundlage der erzeugten Datenbank 40 stückweise ersetzten Sensordaten 73 vorgibt, und wobei das Erzeugen der Sensordatenpatches 60 unter Berücksichtigung des erhaltenen Rekonstruktionsqualitätsparameters 33 durchgeführt wird. Hierzu werden die Sensordaten 72, 73 zum Bestimmen des durchschnittlichen Abstands bzw. einer Rekonstruktionsqualität der Recheneinrichtung 3 zugeführt. Alternativ können der durchschnittliche Abstand bzw. die Rekonstruktionsqualität auch von der Robustifizierungsvorrichtung 70 bestimmt werden und der Recheneinrichtung 3 zugeführt werden.
Hierbei ist insbesondere vorgesehen, dass ein durchschnittlicher Abstand bzw. eine Rekonstruktionsqualität für jeden Iterationsschritt eines Optimierungsverfahrens zum Optimieren der Datenbank 40 bestimmt wird. Die Rekonstruktionsqualität wird anschließend mit dem erhaltenen Rekonstruktionsparameter 33 verglichen und in Abhängigkeit einer Abweichung wird das Vorgehen beim Erzeugen der Sensordatenpatches 60 geändert. Zum Optimieren können beispielsweise die Größe und/oder die Anzahl der Sensordatenpatches 60 und/oder ein Anteil der Ausgangsdatendomänen etc. verändert werden.
In einer Ausführungsform ist vorgesehen, dass die Recheneinrichtung 2 einen Datendomänendistanzparameter 34, beispielsweise über die Eingangsschnittstelle 5, erhält, wobei ein jeweiliger Anteil der erzeugten Sensordatenpatches 60 aus den mehreren Ausgangsdomänendatenbanken 10, 11 in Abhängigkeit des erhaltenen Datendomänendistanzparameters 34 festgelegt wird. Soll eine aus den Sensordatenpatches 60 nach dem Quilting gebildete Rekonstruktionsdatendomäne eine geringere/größere Datendomänendistanz zu einer der in den Ausgangsdomänendatenbanken 10, 11 abgebildeten Ausgangsdatendomänen aufweisen, so wird der zugehörige Anteil der Ausgangsdatendomäne entsprechend beim Erzeugen der Sensordatenpatches 60 verringert/erhöht.
Es kann vorgesehen sein, dass die Datenbank 40 im Hinblick auf mindestens ein Optimierungskriterium 35 optimiert wird. Das Optimierungskriterium 35 kann beispielsweise eines oder mehrere der folgenden Kriterien umfassen: eine vorgegebene Domänendistanz, eine Rekonstruktionsqualität, eine Robustheitswirkung, eine Performanzwirkung, eine Domäneninvarianz. Zum Optimieren kann die Recheneinrichtung 2 beispielsweise die Größe und/oder die Anzahl der Sensordatenpatches 60 und/oder einen Anteil der Ausgangsdatendomänen 10, 11 und/oder einen Einfluss von Eigenschaftsinformationen 12, 13 bzw. eines Eigenschaftsparameters 32 und/oder Abstandsmaße und/oder Auswahlverfahren etc. verändern.
Weiterbildend kann vorgesehen sein, dass das mindestens eine Optimierungskriterium 35 eine Laufzeiteigenschaft der Datenbank 40 beim Quilting umfasst. Hierzu kann die Recheneinrichtung 2 beispielsweise ein effizientes Hashing der aus den Sensordatenpatches 60 zusammengestellten Datenbank 40 durchführen, sodass eine Suche bei einem nachfolgenden Quilting in der Robustifizierungsvorrichtung 70 beschleunigt werden kann.
In Fig. 2 ist eine schematische Darstellung zur Verdeutlichung von Ausführungsformen des Verfahrens zum Erzeugen und Bereitstellen einer Datenbank 40 mit darin hinterlegten Sensordatenpatches zur Verwendung beim Quilting gezeigt.
In einem Verfahrensschritt 100 wird das Verfahren zum Erzeugen einer Datenbank 40 mit darin hinterlegten Sensordatenpatches zur Verwendung beim Quilting in einer der in dieser Offenbarung beschriebenen Ausführungsformen ausgeführt. Hierbei werden die Ausgangsdomänendatenbanken 10, 11, 15, 16 verwendet. Diese umfassen beispielsweise für unterschiedliche Datendomänen Sensordaten mit Grundwahrheit, Sensordaten ohne Grundwahrheit und simulierte Sensordaten.
Beim Durchführen des Verfahrensschritts 100 wird insbesondere ein Eigenschaftsparameter mit mindestens einer regulatorischen Vorgabe 17 berücksichtigt. Beispielsweise kann vorgesehen sein, dass ein Anteil an Sensordatenpatches vorgegeben ist, der von Sensordaten stammt, die Verkehrsschilder oder Gesichter etc. abbilden. Ein weiteres Beispiel ist eine regulatorische Vorgabe 17 für das Vorhandensein eines bestimmten Kontextes (z.B. Spielstraße, Zebrastreifen etc.), der von der Datenbank 40 abgebildet werden muss.
Ergebnis des Verfahrensschritts 100 ist die Datenbank 40 mit darin enthaltenen Sensordatenpatches. Die Datenbank 40 wird in eine Speichereinrichtung einer Robustifizierungsvorrichtung 70 eines Assistenzsystems, die in einem Fahrzeug 50 angeordnet ist, geladen.
Die Robustifizierungsvorrichtung 70 robustifiziert von Sensoren 71 erfasste Sensordaten 72 mit Hilfe der in der Datenbank 40 hinterlegten Sensordatenpatches durch stückweises Ersetzen mittels Quilting. Die ersetzten Sensordaten 73, welche auch als rekonstruierte Sensordaten bezeichnet werden können, werden anschließend einem (tiefen) Neuronalen Netz 74 zugeführt, das insbesondere eine Funktion für das automatisierte oder teilautomatisierte Fahren des Fahrzeugs 50 und/oder für eine Fahrerassistenz des Fahrzeugs 50 und/oder für eine Umfeldwahrnehmung und/oder Umfelderfassung bereitstellt. Das Neuronale Netz 74 wird mittels eines Steuergeräts 51 (vgl. Fig. 1) des Assistenzsystems des Fahrzeugs 50 bereitgestellt. Das Neuronale Netz 74 erzeugt ausgehend von den ersetzten Sensordaten 73 mindestens ein Steuersignal 52 (Fig. 1) und/oder Auswertungssignal 53 (Fig. 1) und stellt dieses bereit. Beispielsweise kann ausgehend von dem mindestens einen Steuersignal eine Aktorik des Fahrzeugs 50 gesteuert werden und/oder ausgehend von dem mindestens einen Auswertungssignal eine weitere (höherwertige) Auswertung erfolgen.
Das (tiefe) Neuronale Netz 74 wurde vorher in einem Trainingsschritt 200 auf Grundlage von Trainingsdaten trainiert, die aus den Ausgangsdatendomänendatenbanken 10, 11, 15 gewonnen wurden.
Der Vorteil des Verfahrens und der Vorrichtung ist, dass eine Datenbank als Grundlage für eine sicherheits- und robustheitsorientierte Rekonstruktion von Sensordaten mittels Quilting erzeugt und bereitgestellt werden kann.
Bezugszeichenliste
Vorrichtung
Datenverarbeitungseinrichtung
Recheneinrichtung
Speichereinrichtung
Eingangsschnittstelle
Ausgangsschnittstelle
Ausgangsdomänendatenbank
Ausgangsdomänendatenbank
Eigenschaftsinformation
Eigenschaftsinformation
Patcheigenschaftsinformation
Ausgangsdomänendatenbank
Ausgangsdomänendatenbank regulatorische Vorgabe
Sensordaten
Sensordaten
Anzahlparameter
Größenparameter
Eigenschaftsparameter
Rekonstruktionsqualitätsparameter
Datendomänendistanzparameter
Optimierungskriterium
Datenbank
Fahrzeug
Steuergerät
Sensordatenpatch
Robustifizierungsvorrichtung
Sensoren erfasste Sensordaten ersetzte/rekonstruierte Sensordaten Neuronales Netz
Verfahrensschritt (Erzeugen der Datenbank) 200 Trainingsschritt 300 Assistenzsystem

Claims

Patentansprüche
1. Verfahren zum Erzeugen und Bereitstellen einer Datenbank (40) mit darin hinterlegten Sensordatenpatches (60) zur Verwendung beim Quilting, wobei mehrere Ausgangsdomänendatenbanken (11,12,15,16) bereitgestellt werden und/oder auf diese zugegriffen wird, wobei in den mehreren
Ausgangsdomänendatenbanken (11,12,15,16) jeweils Sensordaten (20,21) hinterlegt sind, die mittels zueinander kalibrierter Sensoren erfasst wurden, wobei Sensordaten (20,21) aus den mehreren
Ausgangsdomänendatenbanken (11,12,15,16) erhalten werden, wobei ein Anzahlparameter (30) und ein Größenparameter (31) erhalten werden, wobei aus den erhaltenen Sensordaten (20,21) eine durch den Anzahlparameter (30) festgelegte Anzahl von Sensordatenpatches (60) jeweils mit einer durch den
Größenparameter (31) vorgegebenen Größe erzeugt und in der Datenbank (40) hinterlegt wird, wobei die Anzahl anteilig auf die mehreren
Ausgangsdomänendatenbanken (11,12,15,16) aufgeteilt wird, und wobei die erzeugte Datenbank (40) bereitgestellt wird.
2. Verfahren nach Anspruch 1 , dadurch gekennzeichnet, dass das Bereitstellen der erzeugten Datenbank (40) ein Einladen der erzeugten Datenbank (40) in eine Speichereinrichtung einer Robustifizierungsvorrichtung (70) eines Assistenzsystems (300) mindestens eines Fahrzeugs (50) umfasst, wobei die Robustifizierungsvorrichtung (70) dazu eingerichtet ist, erfasste Sensordaten (72) mindestens eines Sensors (71) mit Hilfe der in der Datenbank (40) hinterlegten Sensordatenpatches (60) mittels Quilting stückweise zu ersetzen, sodass die ersetzten Sensordaten (73) gegen adversariale Störungen robustifiziert sind.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass die ersetzten Sensordaten (73) einer Funktion für das automatisierte oder teilautomatisierte Fahren des Fahrzeugs (50) und/oder für eine Umfeldwahrnehmung zugeführt werden.
4. Verfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass die Sensordaten (20,21) in den mehreren Ausgangsdomänendatenbanken (11,12,15,16) zumindest teilweise mit mindestens einer Eigenschaftsinformation (12,13) markiert sind oder markiert werden, wobei mindestens ein Eigenschaftsparameter (32) erhalten wird, und wobei das Erzeugen der Sensordatenpatches (60) für die Datenbank (40) unter Berücksichtigung des erhaltenen mindestens einen Eigenschaftsparameters (32) und der mindestens einen Eigenschaftsinformation (12,13) durchgeführt wird.
5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass der mindestens eine Eigenschaftsparameter (32) eine regulatorische Vorgabe (17) umfasst.
6. Verfahren nach einem der vorangegangenen Ansprüche, dadurch gekennzeichnet, dass ein Rekonstruktionsqualitätsparameter (33) erhalten wird, wobei der Rekonstruktionsqualitätsparameter (33) einen durchschnittlichen Abstand zwischen Sensordaten (72) und mittels Quilting auf Grundlage der erzeugten Datenbank (40) stückweise ersetzten Sensordaten (73) vorgibt, und wobei das Erzeugen der Sensordatenpatches (60) unter Berücksichtigung des erhaltenen Rekonstruktionsqualitätsparameters (33) durchgeführt wird.
7. Verfahren nach einem der vorangegangenen Ansprüche, dadurch gekennzeichnet, dass ein Datendomänendistanzparameter (34) erhalten wird, wobei ein jeweiliger Anteil der erzeugten Sensordatenpatches (60) aus den mehreren Ausgangsdomänendatenbanken (11,12,15,16) in Abhängigkeit des erhaltenen Datendomänendistanzparameters (34) festgelegt wird.
8. Verfahren nach einem der vorangegangenen Ansprüche, dadurch gekennzeichnet, dass die Datenbank (40) im Hinblick auf mindestens ein Optimierungskriterium (35) optimiert wird.
9. Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass das mindestens eine Optimierungskriterium (35) eine Laufzeiteigenschaft der Datenbank (40) beim Quilting umfasst.
10. Vorrichtung (1) zum Erzeugen und Bereitstellen einer Datenbank (40) mit darin hinterlegten Sensordatenpatches (60) zur Verwendung beim Quilting, umfassend eine Datenverarbeitungseinrichtung (2), wobei die Datenverarbeitungseinrichtung (2) dazu eingerichtet ist, mehrere Ausgangsdomänendatenbanken (11,12,15,16) bereitzustellen und/oder auf diese zuzugreifen, wobei in den mehreren Ausgangsdomänendatenbanken (11,12,15,16) jeweils Sensordaten (20,21) hinterlegt sind, die mittels zueinander kalibrierter Sensoren erfasst wurden, ferner Sensordaten (20,21) aus den mehreren
Ausgangsdomänendatenbanken (11,12,15,16) zu erhalten, einen Anzahlparameter (30) und einen Größenparameter (31) zu erhalten, und aus den erhaltenen Sensordaten (20,21) eine durch den Anzahlparameter (30) festgelegte Anzahl von Sensordatenpatches (60) jeweils mit einer durch den
Größenparameter (31) vorgegebenen Größe zu erzeugen und in der Datenbank (40) zu hinterlegen, und hierbei die Anzahl anteilig auf die mehreren
Ausgangsdatendomänendatenbanken (10,11,15,16) aufzuteilen, und die erzeugte Datenbank (40) bereitzustellen.
11. Vorrichtung nach Anspruch 10, dadurch gekennzeichnet, dass das Bereitstellen der erzeugten Datenbank (40) ein Einladen der erzeugten Datenbank (40) in eine Speichereinrichtung einer Robustifizierungsvorrichtung (70) eines Assistenzsystems (300) mindestens eines Fahrzeugs (50) umfasst, wobei die Robustifizierungsvorrichtung (70) dazu eingerichtet ist, erfasste Sensordaten (72) mindestens eines Sensors (71) mit Hilfe der in der Datenbank (40) hinterlegten Sensordatenpatches (60) mittels Quilting stückweise zu ersetzen, sodass die ersetzten Sensordaten (73) gegen adversariale Störungen robustifiziert sind.
12. Assistenzsystem (300) für ein Fahrzeug (50), umfassend mindestens einen Sensor (71) und mindestens eine Robustifizierungsvorrichtung (70), mit einer Recheneinrichtung und einer Speichereinrichtung, wobei die Robustifizierungsvorrichtung (70) dazu eingerichtet ist, eine mittels eines Verfahrens gemäß einem der Ansprüche 1 bis 9 erzeugte Datenbank (40) zu erhalten und/oder zu empfangen und in der Speichereinrichtung zu hinterlegen, und erfasste Sensordaten (72) des mindestens eines Sensors (71) mit Hilfe der in der Datenbank (40) hinterlegten Sensordatenpatches (60) mittels Quilting stückweise zu ersetzen, sodass die ersetzten Sensordaten (73) gegen adversariale Störungen robustifiziert sind.
13. Assistenzsystem (300) nach Anspruch 12, gekennzeichnet durch ein Steuergerät (51), wobei das Steuergerät (51) dazu eingerichtet ist, mindestens eine Funktion zum automatisierten oder teilautomatisierten Fahren des Fahrzeugs (50) und/oder zur Umfeldwahrnehmung bereitzustellen, wobei das Assistenzsystem (300) dazu eingerichtet ist, der mindestens einen Funktion die ersetzten Sensordaten (73) zuzuführen.
14. Computerprogramm, umfassend Befehle, die bei der Ausführung des Computerprogramms durch einen Computer diesen veranlassen, die Verfahrensschritte des Verfahrens nach einem beliebigen der Ansprüche 1 bis 9 auszuführen.
15. Datenträgersignal, das das Computerprogramm nach Anspruch 14 überträgt.
PCT/EP2020/085652 2019-12-17 2020-12-10 Verfahren und vorrichtung zum erzeugen und bereitstellen einer datenbank mit darin hinterlegten sensordatenpatches zur verwendung beim quilting WO2021122340A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP20829549.3A EP4078433A1 (de) 2019-12-17 2020-12-10 Verfahren und vorrichtung zum erzeugen und bereitstellen einer datenbank mit darin hinterlegten sensordatenpatches zur verwendung beim quilting

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102019219924.0A DE102019219924B4 (de) 2019-12-17 2019-12-17 Verfahren und Vorrichtung zum Erzeugen und Bereitstellen einer Datenbank mit darin hinterlegten Sensordatenpatches zur Verwendung beim Quilting
DE102019219924.0 2019-12-17

Publications (1)

Publication Number Publication Date
WO2021122340A1 true WO2021122340A1 (de) 2021-06-24

Family

ID=74068256

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2020/085652 WO2021122340A1 (de) 2019-12-17 2020-12-10 Verfahren und vorrichtung zum erzeugen und bereitstellen einer datenbank mit darin hinterlegten sensordatenpatches zur verwendung beim quilting

Country Status (3)

Country Link
EP (1) EP4078433A1 (de)
DE (1) DE102019219924B4 (de)
WO (1) WO2021122340A1 (de)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190135300A1 (en) 2018-12-28 2019-05-09 Intel Corporation Methods and apparatus for unsupervised multimodal anomaly detection for autonomous vehicles
US20190220003A1 (en) * 2019-03-27 2019-07-18 Intel Corporation Collaborative 3-d environment map for computer-assisted or autonomous driving vehicles

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190135300A1 (en) 2018-12-28 2019-05-09 Intel Corporation Methods and apparatus for unsupervised multimodal anomaly detection for autonomous vehicles
US20190220003A1 (en) * 2019-03-27 2019-07-18 Intel Corporation Collaborative 3-d environment map for computer-assisted or autonomous driving vehicles

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
CHUAN GUO ET AL.: "Countering Adversarial Images Using Input Transformations", AXVIV:1711.00117V3 [CS.CV, 25 January 2018 (2018-01-25), Retrieved from the Internet <URL:https://arxiv.org/pdf/1711.00117.pdf>
CHUAN GUO ET AL: "Countering Adversarial Images using Input Transformations", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY 14853, 31 October 2017 (2017-10-31), XP081307843 *
ROFAIL MARK ET AL: "Multi-Modal Deep Learning for Vehicle Sensor Data Abstraction and Attack Detection", 2019 IEEE INTERNATIONAL CONFERENCE OF VEHICULAR ELECTRONICS AND SAFETY (ICVES), IEEE, 4 September 2019 (2019-09-04), pages 1 - 7, XP033664653, DOI: 10.1109/ICVES.2019.8906405 *

Also Published As

Publication number Publication date
EP4078433A1 (de) 2022-10-26
DE102019219924B4 (de) 2022-02-17
DE102019219924A1 (de) 2021-06-17

Similar Documents

Publication Publication Date Title
WO2020249758A1 (de) Verfahren und generator zum erzeugen von gestörten eingangsdaten für ein neuronales netz
EP4078238A1 (de) Verfahren und vorrichtung zum robustifizieren von sensordaten gegen adversariale störungen
DE102019208735B4 (de) Verfahren zum Betreiben eines Fahrassistenzsystems eines Fahrzeugs und Fahrerassistenzsystem für ein Fahrzeug
DE102008036219A1 (de) Verfahren zur Erkennung von Objekten im Umfeld eines Fahrzeugs
DE102019219924B4 (de) Verfahren und Vorrichtung zum Erzeugen und Bereitstellen einer Datenbank mit darin hinterlegten Sensordatenpatches zur Verwendung beim Quilting
WO2021122337A1 (de) Verfahren und vorrichtung zum erkennen einer entfremdung einer sensordatendomäne von einer referenzdatendomäne
EP4049186A1 (de) Verfahren zum robustifizieren eines neuronalen netzes gegen adversariale störungen
WO2021122339A1 (de) Verfahren und vorrichtung zum robustifizieren eines neuronalen netzes gegen adversariale störungen
EP3973466A1 (de) Verfahren zum funktionsspezifischen robustifizieren eines neuronalen netzes
EP3973458A1 (de) Verfahren zum betreiben eines tiefen neuronalen netzes
DE102019217952A1 (de) Verfahren und Vorrichtung zum Bereitstellen eines Trainingsdatensatzes zum Trainieren einer KI-Funktion auf eine unbekannte Datendomäne
DE102019219926A1 (de) Verfahren und Vorrichtung zum Trainieren eines Neuronalen Netzes
DE102020213058A1 (de) Verfahren und Vorrichtung zum teilautomatisierten oder vollautomatisierten Steuern eines Fahrzeugs
DE102022201161A1 (de) Objektklassifizierung mit einem einstufigen metabasierten Objektdetektor unter Verwendung von Klassenprototypen
DE102020203705A1 (de) Plausibilisierung der Ausgabe neuronaler Klassifikatornetzwerke anhand von Zusatzinformationen über Merkmale
DE102021206377A1 (de) Robusteres überwachtes Training für Bildklassifikatoren
DE102022104399A1 (de) Verfahren und Prozessorschaltung zum Ermitteln von Trainingsdatensätzen für ein Training eines Modells des maschinellen Lernens
EP3985565A1 (de) Verfahren und vorrichtung zum überprüfen eines beim teilautomatisierten oder vollautomatisierten steuern eines fahrzeugs verwendeten ki-basierten informationsverarbeitungssystems
DE102021214552A1 (de) Verfahren zum Evaluieren eines trainierten tiefen neuronalen Netz
DE102020208737A1 (de) Verfahren und Vorrichtung zum Bewerten und Zertifizieren einer Robustheit eines KI-basierten Informationsverarbeitungssystems
DE102022208480A1 (de) Verfahren zum Evaluieren eines trainierten tiefen neuronalen Netzes
DE102022110233A1 (de) Computer-implementiertes verfahren zur auswahl von trainingsdatensätzen aus einer vielzahl von datensätzen
DE102019213458A1 (de) Verfahren zum Komprimieren eines Neuronalen Netzes
DE102021206190A1 (de) Verfahren zur Erkennung von Objekten gesuchter Typen in Kamerabildern
DE102019213459A1 (de) Verfahren zum Komprimieren eines Neuronalen Netzes

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2020829549

Country of ref document: EP

Effective date: 20220718