Data transmission method, device and equipment for automatic driving worldsim simulation and medium
By introducing data collectors, message middleware and simulation servers into the autonomous driving simulation system, real-time data transmission is achieved using instant or cached sending mechanisms, the problem of difficulty in real-time data transmission is solved, and the efficiency of data transmission is improved and timely.
Patent Information
- Application Number
- CN202411534462.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-30
- Publication Date
- 2025-02-21
AI Technical Summary
It is difficult for traditional transmission methods to effectively realize the transmission of real-time data during autonomous driving simulation.
The simulation target data of the autonomous driving system is obtained through the data collector and sent to the message middleware. The message middleware sends data to the simulation server according to the determined data sending mechanism (instant sending mechanism or cache sending mechanism), and finally pushes data from the simulation server to the front-end service.
It realizes the effective transmission of real-time data during the autonomous driving simulation process, ensuring that front-end developers can understand the development status of the autonomous driving system in real time and promptly discover and analyze potential problems.
Smart Images

Figure CN119496821A_ABST
Abstract
Description
Technical Field
[0001] Embodiments of the present disclosure relate to the technical field of data transmission, and in particular, to a data transmission method, apparatus, device and medium suitable for use in worldsim simulation of autonomous driving. Background Art
[0002] Autonomous driving simulation can accelerate model iteration by simulating real environments and physical laws, providing safe and efficient data collection and testing methods. With the help of some game engines, simulation software can simulate a variety of sensor data and complex scenarios for reproducing problems, integration testing, training models, etc.
[0003] During the simulation process, timely transmission of simulation data to the front-end service can help front-end developers understand the development status of each module in the autonomous driving system in real time, which is conducive to analyzing potential problems in the autonomous driving system. However, traditional transmission methods are difficult to effectively realize the transmission of real-time data during simulation. Summary of the invention
[0004] The embodiments described herein provide a data transmission method, apparatus, device, and medium for autonomous driving worldsim simulation, which overcome the above-mentioned problems.
[0005] In a first aspect, according to the content of the present disclosure, a data transmission method for autonomous driving worldsim simulation is provided, comprising:
[0006] The data collector obtains first simulation target data of the autonomous driving system and sends the first simulation target data to the message middleware, wherein the autonomous driving system supports operation in multiple mirror environments, and the first simulation target data includes: vehicle operation information, obstacle operation information, camera-captured images, and lidar point clouds;
[0007] After receiving the first simulation target data, the message middleware determines a corresponding data sending mechanism, and sends the first simulation target data to the simulation server based on the data sending mechanism, wherein the data sending mechanism is used to describe the sending method of the first simulation target data sent by the message middleware to the simulation server, and the data sending mechanism includes: an immediate sending mechanism and a cache sending mechanism;
[0008] After receiving the first simulation target data, the simulation server pushes the first simulation target data to the front-end service.
[0009] Optionally, the data collector acquires first simulation target data of the autonomous driving system, including:
[0010] The data collector obtains initial simulation operation data of the autonomous driving system;
[0011] The data collector compresses the initial simulation running data based on the data type corresponding to the initial simulation running data;
[0012] The data collector performs binary serialization on the initial simulation running data to obtain the first simulation target data;
[0013] The binary serialization means converting the storage form of the initial simulation running data into binary before performing sequence splicing.
[0014] Optionally, the message middleware determines a corresponding data sending mechanism, including:
[0015] The message middleware stores the first simulation target data in an intermediate buffer area, wherein the intermediate buffer area stores a plurality of simulation operation simulation data;
[0016] The message middleware determines a data sending mechanism corresponding to the first simulation target data based on a storage sequence of the first simulation target data in the plurality of simulation running simulation data;
[0017] Alternatively, the message middleware determines a data sending mechanism corresponding to the first simulation target data based on a priority level of the first simulation target data in the plurality of simulation running simulation data;
[0018] Alternatively, the message middleware determines a data sending mechanism corresponding to the first simulation target data based on a capacity proportion of the first simulation target data in a plurality of simulation running simulation data.
[0019] Optionally, the simulation server pushes the first simulation target data to the front-end service, including:
[0020] The simulation server stores the first simulation target data in a service buffer area;
[0021] When the simulation server determines that the current time has reached the data sending time, the simulation server pushes the first simulation target data to the front-end service.
[0022] Optionally, also include:
[0023] The simulation server obtains the data output frequency of the autonomous driving system;
[0024] If the simulation server determines that the data output frequency of the autonomous driving system is greater than the preset transmission frequency, the cache capacity of the service cache area is increased;
[0025] If the simulation server determines that the data output frequency of the autonomous driving system is greater than the preset transmission frequency, the cache capacity of the service cache area is reduced.
[0026] Optionally, also include:
[0027] The simulation server receives a data viewing request for second simulation target data sent by the front-end service;
[0028] The simulation server determines the completion progress of receiving the second simulation target data in response to the data viewing request;
[0029] The simulation server displays the second simulation target data to the front-end service based on the progress of receiving the second simulation target data.
[0030] Optionally, the simulation server displays the second simulation target data to the front-end service based on the completion progress of receiving the second simulation target data, including:
[0031] If the simulation server determines that the receiving progress of the second simulation target data is completed, the simulation server displays the second simulation target data to the front-end service;
[0032] If the simulation server determines that the reception progress of the second simulation target data is incomplete, it predicts the remaining data based on the partial data of the second simulation target data that has been transmitted, and displays the partial data of the second simulation target data that has been transmitted and the predicted remaining data to the front-end service.
[0033] In a second aspect, according to the content of the present disclosure, a data transmission device for worldsim simulation of autonomous driving is provided, comprising:
[0034] An acquisition module is used to acquire first simulation target data of an autonomous driving system, wherein the autonomous driving system supports operation in multiple mirror environments, and the first simulation target data includes: vehicle operation information, obstacle operation information, camera-captured images, and lidar point clouds;
[0035] A sending module, used to determine a corresponding data sending mechanism; based on the data sending mechanism, the first simulation target data is sent to the push module, the data sending mechanism is used to describe the sending method of the first simulation target data, and the data sending mechanism includes: an instant sending mechanism and a cache sending mechanism;
[0036] The push module is used to push the first simulation target data to the front-end service.
[0037] In a third aspect, a computer device is provided, including a memory and a processor, wherein a computer program is stored in the memory, and when the processor executes the computer program, the steps of the data transmission method for autonomous driving worldsim simulation in any of the above embodiments are implemented.
[0038] In a fourth aspect, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the steps of the data transmission method for autonomous driving worldsim simulation in any of the above embodiments are implemented.
[0039] The data transmission method for worldsim simulation of autonomous driving provided by the embodiment of the present application, the data collector obtains the first simulation target data of the autonomous driving system, and sends the first simulation target data to the message middleware, the autonomous driving system supports multiple mirror environments, the first simulation target data includes: vehicle operation information, obstacle operation information, camera image and lidar point cloud; after receiving the first simulation target data, the message middleware determines the corresponding data sending mechanism, and sends the first simulation target data to the simulation server based on the data sending mechanism, the data sending mechanism is used to describe the sending method of the message middleware to send the first simulation target data to the simulation server, the data sending mechanism includes: instant sending mechanism and cache sending mechanism; after receiving the first simulation target data, the simulation server pushes the first simulation target data to the front-end service. In this way, the real-time data in the simulation process of the autonomous driving system is obtained through the time collector, and the real-time data is sent to the simulation server through the data sending mechanism of the message middleware, so that the simulation server can send real-time data to the front-end service and realize the effective transmission of simulation real-time data.
[0040] The above description is only an overview of the technical solution of the embodiment of the present application. In order to more clearly understand the technical means of the embodiment of the present application, it can be implemented in accordance with the contents of the specification. In order to make the above and other purposes, features and advantages of the embodiment of the present application more obvious and easy to understand, the specific implementation methods of the present application are listed below. BRIEF DESCRIPTION OF THE DRAWINGS
[0041] In order to more clearly illustrate the technical solutions of the embodiments of the present disclosure, the drawings of the embodiments will be briefly described below. It should be noted that the drawings described below only relate to some embodiments of the present disclosure, but are not intended to limit the present disclosure, wherein:
[0042] Figure 1 It is a flow chart of a data transmission method for autonomous driving worldsim simulation provided by the present disclosure.
[0043] Figure 2It is a structural schematic diagram of a data transmission device for autonomous driving worldsim simulation provided by the present invention.
[0044] Figure 3 It is a structural schematic diagram of a computer device provided by the present disclosure.
[0045] It should be noted that the elements in the drawings are schematic and not drawn to scale. DETAILED DESCRIPTION
[0046] In order to make the purpose, technical solution and advantages of the embodiments of the present disclosure clearer, the technical solution of the embodiments of the present disclosure will be clearly and completely described below in conjunction with the accompanying drawings. Obviously, the described embodiments are part of the embodiments of the present disclosure, rather than all of the embodiments. Based on the described embodiments of the present disclosure, all other embodiments obtained by those skilled in the art without creative work also fall within the scope of protection of the present disclosure.
[0047] Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by a person skilled in the art to which the subject matter of the present disclosure belongs. It will be further understood that terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with their meaning in the context of the specification and the relevant art, and will not be interpreted in an idealized or overly formal form unless otherwise explicitly defined herein. As used herein, a statement that two or more parts are "connected" or "coupled" together shall mean that the parts are joined together directly or through one or more intermediate components.
[0048] Reference to "embodiments" herein means that a particular feature, structure, or characteristic described in conjunction with the embodiments may be included in at least one embodiment of the present application. The appearance of the phrase "embodiments" in various locations in the specification does not necessarily refer to the same embodiment, nor is it an independent or alternative embodiment that is mutually exclusive with other embodiments. It is explicitly and implicitly understood by those skilled in the art that the embodiments described herein may be combined with other embodiments.
[0049] The term "and / or" in this article is only a description of the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can mean: A exists, A and B exist at the same time, and B exists. In addition, the character " / " in this article generally indicates that the associated objects before and after are in an "or" relationship. Terms such as "first" and "second" are only used to distinguish one component (or a part of a component) from another component (or another part of a component).
[0050] In the description of the present application, unless otherwise specified, "plurality" means more than two (including two), and similarly, "multiple groups" means more than two groups (including two).
[0051] In order to enable those skilled in the art to better understand the solution of the present application, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the accompanying drawings.
[0052] Figure 1 is a flow chart of a data transmission method for worldsim simulation of autonomous driving provided by an embodiment of the present disclosure, such as Figure 1 As shown, the specific process of the data transmission method for autonomous driving worldsim simulation includes:
[0053] S110. The data collector obtains first simulation target data of the autonomous driving system and sends the first simulation target data to the message middleware.
[0054] Among them, the autonomous driving system can support the operation of multiple mirror environments, such as Autoware ROS, Apollo cyberRT, etc.
[0055] The first simulation target data is the real-time data in the process of simulating the autonomous driving system based on the worldsim simulation system. The first simulation target data includes: vehicle operation information, obstacle operation information, camera images and lidar point cloud.
[0056] The vehicle's own operation information may include but is not limited to: vehicle simulation coordinates, vehicle simulation speed, vehicle simulation steering wheel angle, vehicle simulation braking strength, etc. Obstacle operation information may include but is not limited to: virtual obstacle coordinates, virtual obstacle moving speed, virtual obstacle predicted driving trajectory, etc. Camera images may include but are not limited to: image information output by camera sensors, such as color, size, image type, etc. Lidar point cloud may include but is not limited to: lidar scanned coordinate data, including three-dimensional coordinates and intensity, etc.
[0057] It should be noted that the vehicle's own operation information, obstacle operation information, camera images and lidar point cloud included in the first simulation target data are stored in a binary sequence to facilitate effective machine recognition and transmission.
[0058] In some embodiments, the data collector obtains first simulation target data of the autonomous driving system, including:
[0059] The data collector obtains the initial simulation running data of the autonomous driving system; the data collector compresses the initial simulation running data based on the data type corresponding to the initial simulation running data; the data collector performs binary serialization representation on the initial simulation running data to obtain the first simulation target data.
[0060] Among them, binary serialization means converting the storage form of the initial data of the simulation run into binary before splicing the sequence. For example, traverse the fields that need to be transferred in the current frame data, determine the type of each field, and write the type information, convert the basic data type to the corresponding variable-length encoding, write the byte length of the string type and then write the data, and finally splice all the data.
[0061] The data collector compresses the initial data of the simulation run based on the data type corresponding to the initial data of the simulation run, which may include: if the data type corresponding to the initial data of the simulation run is a picture type, HEVC (High Efficiency Video Coding) is used for image encoding to improve compression efficiency; if the data type corresponding to the initial data of the simulation run is a lidar point cloud type, Voxel Grid Filter is used to reduce the number of point clouds for compression. In addition, if the data type corresponding to the initial data of the simulation run is other text types, data compression is not required, and binary serialization is directly performed to reduce the data volume.
[0062] Therefore, by compressing the initial simulation running data of different data types, the data compression efficiency can be effectively guaranteed, and binary serialization can be performed so that the first simulation target data obtained can participate in subsequent data transmission in a small volume, thereby facilitating the improvement of data transmission efficiency.
[0063] S120. After receiving the first simulation target data, the message middleware determines a corresponding data sending mechanism, and sends the first simulation target data to the simulation server based on the data sending mechanism.
[0064] The data sending mechanism is used to describe the sending method of the message middleware to send the first simulation target data to the simulation server, and the data sending mechanism includes: an immediate sending mechanism and a cache sending mechanism. The immediate sending mechanism means that the message middleware sends the first simulation target data to the simulation server after receiving the first simulation target data. The cache sending mechanism means that the message middleware caches the first simulation target data first after receiving it, and then sends it later.
[0065] In some embodiments, the message middleware determines the corresponding data sending mechanism, including:
[0066] The message middleware stores the first simulation target data in an intermediate cache area, in which a plurality of simulation running simulation data are stored; the message middleware determines the data sending mechanism corresponding to the first simulation target data based on the storage sequence of the first simulation target data in the plurality of simulation running simulation data; or, the message middleware determines the data sending mechanism corresponding to the first simulation target data based on the priority level of the first simulation target data in the plurality of simulation running simulation data; or, the message middleware determines the data sending mechanism corresponding to the first simulation target data based on the capacity proportion of the first simulation target data in the plurality of simulation running simulation data.
[0067] Among them, the storage sequence can intuitively reflect the arrangement position of the first simulation target data in multiple simulation running simulation data. The message middleware determines the data sending mechanism corresponding to the first simulation target data based on the storage sequence of the first simulation target data in multiple simulation running simulation data, which may include: if the storage sequence of the first simulation target data in multiple simulation running simulation data is 1 (that is, it means that the first simulation target data is the first batch of data to be sent in multiple simulation running simulation data), then the data sending mechanism corresponding to the first simulation target data is determined to be an immediate sending mechanism; if the storage sequence of the first simulation target data in multiple simulation running simulation data is not 1, then the data sending mechanism corresponding to the first simulation target data is determined to be a cache sending mechanism.
[0068] The message middleware determines the data sending mechanism corresponding to the first simulation target data based on the priority level of the first simulation target data in multiple simulation running simulation data, which may include: if the priority level of the first simulation target data in multiple simulation running simulation data (the level can be determined in advance based on the data type / data amount) is the first priority level, then the data sending mechanism corresponding to the first simulation target data is determined to be an immediate sending mechanism; if the priority level of the first simulation target data in multiple simulation running simulation data is not the first priority level, then the data sending mechanism corresponding to the first simulation target data is determined to be a cache sending mechanism.
[0069] The message middleware determines the data sending mechanism corresponding to the first simulation target data based on the capacity proportion of the first simulation target data in multiple simulation running simulation data, which may include: if the capacity proportion of the first simulation target data in multiple simulation running simulation data is greater than or equal to a preset capacity threshold (that is, it means that the data transmission capacity of the first simulation target data is large), then the data sending mechanism corresponding to the first simulation target data is determined to be an instant sending mechanism; if the capacity proportion of the first simulation target data in multiple simulation running simulation data is less than the preset capacity threshold (that is, it means that the data transmission capacity of the first simulation target data is small), then the data sending mechanism corresponding to the first simulation target data is determined to be a cache sending mechanism.
[0070] Thus, by determining the data sending mechanism through the storage sequence of the first simulation target data in multiple simulation running simulation data, all cached data can be sent sequentially in turn, by determining the data sending mechanism through the priority level of the first simulation target data in multiple simulation running simulation data, data with higher priority levels in the cached data can be transmitted first, and by determining the data sending mechanism through the capacity ratio of the first simulation target data in multiple simulation running simulation data, large-capacity data in the cached data can be transmitted first, thereby avoiding the long transmission time of large-capacity data affecting the timely viewing of simulation data.
[0071] S130. After receiving the first simulation target data, the simulation server pushes the first simulation target data to the front-end service.
[0072] After receiving the first simulation target data, the simulation server may push the first simulation target data to the front-end service in real time, or may push the first simulation target data to the front-end service at a scheduled time.
[0073] In some embodiments, the simulation server pushes the first simulation target data to the front-end service, including:
[0074] The simulation server stores the first simulation target data in the service buffer area; when the simulation server determines that the current time has reached the data transmission time, it pushes the first simulation target data to the front-end service. Thus, by setting the timed data transmission mode, the transmission resource loss is reduced.
[0075] In addition, the simulation server stores the first simulation target data in the service cache area; when it is determined that the data cache capacity in the service cache area is greater than or equal to the preset cache capacity threshold, the first simulation target data is pushed to the front-end service. Thus, the problem of multiple small data transmissions affecting the loss of transmission resources can be avoided.
[0076] In this embodiment, the data collector obtains the first simulation target data of the autonomous driving system and sends the first simulation target data to the message middleware. The autonomous driving system supports multiple mirror environments. The first simulation target data includes: vehicle operation information, obstacle operation information, camera images and lidar point cloud; after receiving the first simulation target data, the message middleware determines the corresponding data sending mechanism and sends the first simulation target data to the simulation server based on the data sending mechanism. The data sending mechanism is used to describe the sending method of the message middleware to send the first simulation target data to the simulation server. The data sending mechanism includes: instant sending mechanism and cache sending mechanism; after receiving the first simulation target data, the simulation server pushes the first simulation target data to the front-end service. In this way, the real-time data in the simulation process of the autonomous driving system is obtained through the time collector, and the real-time data is sent to the simulation server through the data sending mechanism of the message middleware, which facilitates the simulation server to send real-time data to the front-end service and realizes the effective transmission of simulation real-time data.
[0077] In some embodiments, the present embodiment further includes:
[0078] The simulation server obtains the data output frequency of the autonomous driving system; if the simulation server determines that the data output frequency of the autonomous driving system is greater than the preset transmission frequency, the cache capacity of the service cache area is increased; if the simulation server determines that the data output frequency of the autonomous driving system is greater than the preset transmission frequency, the cache capacity of the service cache area is reduced.
[0079] The data output frequency of the autonomous driving system is used to dynamically adjust the cache capacity of the service cache area, so as to reasonably schedule the capacity allocation among multiple cache areas. At the same time, the data transmission frequency of pushing real-time data to the front-end service can be adjusted by adjusting the cache capacity of the service cache area.
[0080] In addition, if after increasing the cache capacity of the service cache area, the simulation server determines that the current capacity of the service cache area exceeds the preset maximum capacity, the current capacity of the service cache area is adjusted to the preset maximum capacity, thereby avoiding the problem that the data transmission frequency is too high due to excessive capacity, thereby affecting data display.
[0081] In some embodiments, the present embodiment further includes:
[0082] The simulation server receives a data viewing request for the second simulation target data sent by the front-end service; the simulation server determines the progress of receiving the second simulation target data in response to the data viewing request; the simulation server displays the second simulation target data to the front-end service based on the progress of receiving the second simulation target data.
[0083] Among them, the reception completion progress of the second simulation target data is used to describe whether the simulation server has received all the data of the second simulation target data. If all the data of the second simulation target data is received, the reception completion progress of the second simulation target data is determined to be completed; if all the data of the second simulation target data is not received, the reception completion progress of the second simulation target data is determined to be incomplete.
[0084] Thus, the simulation server can effectively display the second simulation target data to the front-end service through the progress of receiving the second simulation target data.
[0085] In some embodiments, the simulation server displays the second simulation target data to the front-end service based on the progress of receiving the second simulation target data, including:
[0086] If the simulation server determines that the reception completion progress of the second simulation target data is completed, the second simulation target data will be displayed to the front-end service; if the simulation server determines that the reception completion progress of the second simulation target data is not completed, the remaining data will be predicted based on the partial data of the second simulation target data that has been transmitted, and the partial data of the second simulation target data that has been transmitted and the predicted remaining data will be displayed to the front-end service.
[0087] Among them, predicting the remaining data based on the partial data of the second simulation target data that has been transmitted may include: interpolating and supplementing the partial data of the second simulation target data that has been transmitted to predict the remaining data of the second simulation target data.
[0088] Therefore, if the simulation server determines that the reception progress of the second simulation target data is incomplete, all the data of the second simulation target data is completed by data interpolation and supplementation, so as to facilitate the display of complete and smooth second simulation target data to the front-end service and avoid data jamming during the display process due to incomplete data.
[0089] Figure 2 A structural schematic diagram of a data transmission device for autonomous driving worldsim simulation provided in this embodiment, the data transmission device for autonomous driving worldsim simulation may include: an acquisition module 210, a sending module 220 and a push module 230.
[0090] The acquisition module 210 is used to acquire the first simulation target data of the autonomous driving system. The autonomous driving system supports operation in multiple mirror environments. The first simulation target data includes: vehicle operation information, obstacle operation information, camera images and lidar point cloud.
[0091] The sending module 220 is used to determine the corresponding data sending mechanism; based on the data sending mechanism, the first simulation target data is sent to the push module. The data sending mechanism is used to describe the sending method of the first simulation target data. The data sending mechanism includes: an instant sending mechanism and a cache sending mechanism.
[0092] The push module 230 is used to push the first simulation target data to the front-end service.
[0093] In this embodiment, optionally, the acquisition module 210 is specifically configured to:
[0094] Acquire initial simulation data of the autonomous driving system; compress the initial simulation data based on the data type corresponding to the initial simulation data; perform binary serialization on the initial simulation data to obtain first simulation target data; wherein the binary serialization is used to convert the storage form of the initial simulation data into binary before performing sequence splicing.
[0095] In this embodiment, optionally, the sending module 220 is specifically configured to:
[0096] The first simulation target data is stored in an intermediate buffer area, wherein a plurality of simulation running simulation data are stored in the intermediate buffer area; based on the storage sequence of the first simulation target data in the plurality of simulation running simulation data, a data sending mechanism corresponding to the first simulation target data is determined; or, based on the priority level of the first simulation target data in the plurality of simulation running simulation data, a data sending mechanism corresponding to the first simulation target data is determined; or, based on the capacity proportion of the first simulation target data in the plurality of simulation running simulation data, a data sending mechanism corresponding to the first simulation target data is determined.
[0097] In this embodiment, optionally, the push module 230 is specifically used to:
[0098] The first simulation target data is stored in the service buffer area; when it is determined that the current time has reached the data sending time, the first simulation target data is pushed to the front-end service.
[0099] In this embodiment, optionally, it also includes: an adjustment module.
[0100] The acquisition module 210 is also used to obtain the data output frequency of the automatic driving system.
[0101] The adjustment module is used to increase the cache capacity of the service cache area if it is determined that the data output frequency of the autonomous driving system is greater than the preset transmission frequency; if it is determined that the data output frequency of the autonomous driving system is greater than the preset transmission frequency, then reduce the cache capacity of the service cache area.
[0102] In this embodiment, optionally, it also includes: a receiving module, a determining module and a display module.
[0103] The receiving module is used to receive a data viewing request for the second simulation target data sent by the front-end service.
[0104] The determination module is used to determine the completion progress of receiving the second simulation target data in response to the data viewing request.
[0105] The display module is used to display the second simulation target data to the front-end service based on the reception completion progress of the second simulation target data.
[0106] In this embodiment, the display module is optionally used to:
[0107] If it is determined that the reception completion progress of the second simulation target data is completed, the second simulation target data is displayed to the front-end service; if it is determined that the reception completion progress of the second simulation target data is not completed, the remaining data is predicted based on the partial data of the second simulation target data that has been transmitted, and the partial data of the second simulation target data that has been transmitted and the predicted remaining data are displayed to the front-end service.
[0108] The data transmission device for worldsim simulation of autonomous driving provided in the present disclosure can execute the above method embodiments. Its specific implementation principles and technical effects can be found in the above method embodiments, and the present disclosure will not repeat them here.
[0109] The present application also provides a computer device. Figure 3 , Figure 3 This is a basic structural block diagram of the computer device in this embodiment.
[0110] The computer device includes a memory 310 and a processor 320 that are connected to each other through a system bus. It should be noted that the figure only shows a computer device with a memory 310 and a processor 320, but it should be understood that it is not required to implement all the components shown, and more or fewer components can be implemented instead. Among them, those skilled in the art can understand that the computer device here is a device that can automatically perform numerical calculations and / or information processing according to pre-set or stored instructions, and its hardware includes but is not limited to microprocessors, application specific integrated circuits (Application Specific Integrated Circuit, ASIC), programmable gate arrays (Field-Programmable Gate Array, FPGA), digital processors (Digital Signal Processor, DSP), embedded devices, etc.
[0111] Computer devices can be computing devices such as desktop computers, notebooks, PDAs, and cloud servers. Computer devices can interact with users through keyboards, mice, remote controls, touch pads, or voice control devices.
[0112] The memory 310 includes at least one type of readable storage medium, and the readable storage medium includes a non-volatile memory or a volatile memory, for example, a flash memory, a hard disk, a multimedia card, a card-type memory (for example, an SD or DX memory, etc.), a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), a programmable read-only memory (PROM), a magnetic memory, a magnetic disk, an optical disk, etc., and the RAM may include a static RAM or a dynamic RAM. In some embodiments, the memory 310 may be an internal storage unit of a computer device, for example, a hard disk or a memory of the computer device. In other embodiments, the memory 310 may also be an external storage device of the computer device, such as a plug-in hard disk, a smart media card (SMC), a secure digital (SD) card, or a flash card (FlashCard) equipped on the computer device. Of course, the memory 310 may also include both the internal storage unit of the computer device and its external storage device. In this embodiment, the memory 310 is generally used to store the operating system and various application software installed on the computer device, such as the program code of the above method. In addition, the memory 310 may also be used to temporarily store various data that have been output or are to be output.
[0113] The processor 320 is generally used to perform the overall operation of the computer device. In this embodiment, the memory 310 is used to store program codes or instructions, the program code includes computer operation instructions, and the processor 320 is used to execute the program codes or instructions stored in the memory 310 or process data, such as running the program code of the above method.
[0114] In this article, the bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus, etc. The bus system can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one thick line is used in the figure, but it does not mean that there is only one bus or one type of bus.
[0115] Another embodiment of the present application also provides a computer-readable medium, which may be a computer-readable signal medium or a computer-readable medium. A processor in a computer reads a computer-readable program code stored in the computer-readable medium, so that the processor can execute the functional actions specified in each step or a combination of steps in the above method; and generate a device for implementing the functional actions specified in each block or a combination of blocks in the block diagram.
[0116] Computer-readable media include but are not limited to electronic, magnetic, optical, electromagnetic, infrared memory or semiconductor systems, devices or apparatuses, or any appropriate combination of the foregoing, the memory is used to store program codes or instructions, the program codes include computer operating instructions, and the processor is used to execute the program codes or instructions of the above methods stored in the memory.
[0117] For the definitions of memory and processor, please refer to the description of the aforementioned computer device embodiment and will not be repeated here.
[0118] In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic, for example, the division of modules or units is only a logical function division, and there may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.
[0119] Each functional unit or module in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.
[0120] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions to enable a computer device (which can be a personal computer, server, or network device, etc.) or a processor (processor) to perform all or part of the steps of each embodiment method of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (Read-Only Memory, ROM), random access memory (Random Access Memory, RAM), disk or optical disk and other media that can store program code.
[0121] In the claims, any reference symbols placed between brackets shall not be construed as limiting the claims. The word "comprising" described in the present application does not exclude the presence of elements or steps not listed in the claims. The word "a" or "an" preceding an element does not exclude the presence of a plurality of such elements. The present application can be implemented with the aid of hardware comprising several different elements and with the aid of a suitably programmed computer. In a unit claim that lists a number of devices, several units of these devices may be embodied by the same hardware item. The use of first, second, and third, etc. does not indicate any order, and these words may be interpreted as names. The steps in the above embodiments, unless otherwise specified, should not be understood as limitations on the order of execution.
[0122] The above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application.
Claims
1. A data transmission method for autonomous driving worldsim simulation, characterized in that: include: The data collector obtains first simulation target data of the autonomous driving system and sends the first simulation target data to the message middleware, wherein the autonomous driving system supports operation in multiple mirror environments, and the first simulation target data includes: vehicle operation information, obstacle operation information, camera-captured images, and lidar point clouds; After receiving the first simulation target data, the message middleware determines a corresponding data sending mechanism, and sends the first simulation target data to the simulation server based on the data sending mechanism, wherein the data sending mechanism is used to describe the sending method of the first simulation target data sent by the message middleware to the simulation server, and the data sending mechanism includes: an immediate sending mechanism and a cache sending mechanism; After receiving the first simulation target data, the simulation server pushes the first simulation target data to the front-end service.
2. The method according to claim 1, characterized in that The data collector acquires first simulation target data of the automatic driving system, including: The data collector obtains initial simulation operation data of the autonomous driving system; The data collector compresses the initial simulation running data based on the data type corresponding to the initial simulation running data; The data collector performs binary serialization on the initial simulation running data to obtain the first simulation target data; The binary serialization means converting the storage form of the initial simulation running data into binary before performing sequence splicing.
3. The method according to claim 1, characterized in that The message middleware determines a corresponding data sending mechanism, including: The message middleware stores the first simulation target data in an intermediate buffer area, wherein the intermediate buffer area stores a plurality of simulation operation simulation data; The message middleware determines a data sending mechanism corresponding to the first simulation target data based on a storage sequence of the first simulation target data in the plurality of simulation running simulation data; Alternatively, the message middleware determines a data sending mechanism corresponding to the first simulation target data based on a priority level of the first simulation target data in the plurality of simulation running simulation data; Alternatively, the message middleware determines a data sending mechanism corresponding to the first simulation target data based on a capacity proportion of the first simulation target data in a plurality of simulation running simulation data.
4. The method according to claim 1, characterized in that The simulation server pushes the first simulation target data to the front-end service, including: The simulation server stores the first simulation target data in a service buffer area; When the simulation server determines that the current time has reached the data sending time, the simulation server pushes the first simulation target data to the front-end service.
5. The method according to claim 4, characterized in that Also includes: The simulation server obtains the data output frequency of the autonomous driving system; If the simulation server determines that the data output frequency of the autonomous driving system is greater than the preset transmission frequency, the cache capacity of the service cache area is increased; If the simulation server determines that the data output frequency of the autonomous driving system is greater than the preset transmission frequency, the cache capacity of the service cache area is reduced.
6. The method according to claim 1, characterized in that Also includes: The simulation server receives a data viewing request for the second simulation target data sent by the front-end service; The simulation server determines the completion progress of receiving the second simulation target data in response to the data viewing request; The simulation server displays the second simulation target data to the front-end service based on the progress of receiving the second simulation target data.
7. The method according to claim 6, characterized in that The simulation server displays the second simulation target data to the front-end service based on the progress of receiving the second simulation target data, including: If the simulation server determines that the receiving progress of the second simulation target data is completed, the simulation server displays the second simulation target data to the front-end service; If the simulation server determines that the reception progress of the second simulation target data is incomplete, it predicts the remaining data based on the partial data of the second simulation target data that has been transmitted, and displays the partial data of the second simulation target data that has been transmitted and the predicted remaining data to the front-end service.
8. A data transmission device for worldsim simulation of autonomous driving, characterized in that: include: An acquisition module is used to acquire first simulation target data of an autonomous driving system, wherein the autonomous driving system supports operation in multiple mirror environments, and the first simulation target data includes: vehicle operation information, obstacle operation information, camera-captured images, and lidar point clouds; A sending module, used to determine a corresponding data sending mechanism; based on the data sending mechanism, the first simulation target data is sent to the push module, the data sending mechanism is used to describe the sending method of the first simulation target data, and the data sending mechanism includes: an instant sending mechanism and a cache sending mechanism; The push module is used to push the first simulation target data to the front-end service.
9. A computer device, characterized in that: The method comprises a memory and a processor, wherein a computer program is stored in the memory, and when the processor executes the computer program, the data transmission method for worldsim simulation of autonomous driving as described in any one of claims 1 to 7 is implemented.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the data transmission method for autonomous driving worldsim simulation as described in any one of claims 1 to 7 is implemented.
Citation Information
Patent Citations
Data transmission method and device
CN107005461A
Service-oriented automatic driving simulation system, method and computer program product
CN117034437A
Remote log data sending method and device, equipment and storage medium
CN117614945A
Monitoring data sending method and device of application program, equipment and medium
CN117978699A