Sensor calibration parameter management system, method and device, computer readable storage medium and computer program product

The sensor calibration parameter management system solves the problems of low efficiency and error-prone management of external parameters in autonomous vehicles, realizes efficient and dynamic external parameter management, supports real-time updates and convenient queries, and improves the accuracy of data fusion and system performance.

CN120670626APending Publication Date: 2025-09-19MUSHROOM CHELIAN INFORMATION TECH CO LTD
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202510782947.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-06-12
Publication Date
2025-09-19

AI Technical Summary

Technical Problem

The management of sensor external parameters in existing autonomous vehicles is inefficient, prone to errors, requires repeated development, has poor data consistency, lacks dynamic management capabilities, and cannot meet real-time update requirements.

Method used

A sensor calibration parameter management system is adopted, including a calibration parameter loading module, a registration module and an external service module. The calibration parameter management class is designed using an object-oriented programming language, a multi-tree structure is used to store and manage sensor calibration parameters, and query and modification services are provided through callback functions.

Benefits of technology

It realizes dynamic and efficient management of sensor external parameters, improves development ease and efficiency, supports real-time updates without system restart, and ensures the accuracy and convenience of data fusion.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120670626A_ABST
    Figure CN120670626A_ABST
Patent Text Reader

Abstract

The invention discloses a sensor calibration parameter management system, method and device, a computer readable storage medium and a computer program product, and the system comprises a calibration parameter loading module which is used for reading and analyzing a sensor calibration parameter file to obtain a sensor calibration parameter; the calibration parameter registration module is used for registering the sensor calibration parameters into a predefined calibration parameter storage structure; and the external service module is used for externally providing sensor calibration parameter services based on a predefined calibration parameter storage structure, and the sensor calibration parameter services comprise at least one of a calibration parameter query service and a modification service. According to the method, the external parameter file of the vehicle end is read at a time and registered into the predefined storage structure, dynamic and efficient management of the external parameter file is achieved, the situation that the same parameter file needs to be loaded to multiple modules or processes is avoided, and development usability and efficiency are improved. In addition, external parameter addition, deletion, modification and checking functions are provided for the outside, so that downstream external parameter use is facilitated.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of sensor calibration technology, and in particular to a management system, method, device, computer-readable storage medium, and computer program product for sensor calibration parameters. Background Art

[0002] With the rapid development of autonomous driving technology, multiple types of sensors are integrated into autonomous vehicles, including but not limited to LiDAR, cameras, millimeter-wave radar, inertial measurement units (IMUs), and global positioning systems (GPS). These sensors perceive the surrounding environment and provide the autonomous driving system with rich environmental information, forming the foundation for realizing autonomous driving functions.

[0003] However, due to differences in the installation positions, angles, and coordinate system definitions of different sensors, the relative pose relationships between the sensors must be accurately determined before multi-sensor data fusion. This is known as extrinsic parameters. Extrinsic parameters describe the spatial transformation relationship between sensors, including rotation and translation information, and are an indispensable part of the data fusion algorithm.

[0004] Currently, autonomous vehicles commonly use external parameter files to record the external parameter values ​​of all sensors. These external parameter files are typically generated and calibrated before the vehicle leaves the factory or after the sensors are installed, and are stored as part of the vehicle configuration. However, with the continuous development of autonomous driving technology and the increasing complexity of application scenarios, this traditional external parameter management method has gradually exposed the following problems:

[0005] 1) Inefficient and error-prone:

[0006] When each process on an autonomous vehicle needs to obtain extrinsic parameters between two sensors, it typically needs to read the extrinsic parameter files separately and parse them to obtain the required extrinsic parameter values. Due to the large number of processes involved, this method of reading individual files is inefficient and prone to inaccurate extrinsic parameter values ​​due to file reading or parsing errors, which in turn affects data fusion and the performance of the autonomous driving system.

[0007] 2) Repeated development and waste of resources:

[0008] When different processes or modules need to obtain external parameters, they often need to repeatedly develop file reading and parsing code, which not only increases the development workload, but also leads to code redundancy and waste of resources.

[0009] 3) Data consistency issues:

[0010] During data recording, in addition to the recorded sensor data, an external reference file is also required to record the external reference state at the time of recording. However, since the external reference file is stored separately from the sensor data, it is easy to cause the sensor data and the external reference file to not match during data playback or processing, which in turn affects the accuracy and reliability of data analysis.

[0011] 4) Lack of dynamic management capabilities:

[0012] Traditional external parameter management methods typically only support static external parameter configuration and cannot dynamically adjust based on the vehicle's actual operating status or the real-time status of sensors. This is clearly insufficient in scenarios where real-time external parameter updates are required, such as when a sensor fails or is replaced.

[0013] Therefore, how to efficiently and dynamically manage the external parameters of numerous sensors has become an important issue that needs to be urgently addressed in the field of autonomous driving technology. Summary of the Invention

[0014] Embodiments of the present application provide a sensor calibration parameter management system, method, device, computer-readable storage medium, and computer program product to achieve dynamic and efficient management of multiple sensor calibration parameters.

[0015] The embodiments of this application adopt the following technical solutions:

[0016] In a first aspect, an embodiment of the present application provides a sensor calibration parameter management system, the sensor calibration parameter management system comprising: a calibration parameter loading module, a calibration parameter registration module, and an external service module, wherein:

[0017] The calibration parameter loading module is used to read the sensor calibration parameter file and parse it to obtain the sensor calibration parameters;

[0018] The calibration parameter registration module is used to register the parsed sensor calibration parameters into a predefined calibration parameter storage structure;

[0019] The external service module is used to provide sensor calibration parameter services externally based on the sensor calibration parameters stored in the predefined calibration parameter storage structure. The sensor calibration parameter services include at least one of calibration parameter query services and calibration parameter modification services.

[0020] Optionally, the calibration parameter registration module is further used to:

[0021] Design a calibration parameter management class using an object-oriented programming language, wherein the calibration parameter management class includes external parameter values ​​and timestamps from any source sensor coordinate system to any target sensor coordinate system;

[0022] Based on the calibration parameter management class, instantiating the parsed sensor calibration parameters in the calibration parameter management class;

[0023] Register the instantiated calibration parameter management class to the predefined calibration parameter storage structure.

[0024] Optionally, the calibration parameter registration module is further used to:

[0025] The instantiated calibration parameter management class is registered in a predefined multi-tree data structure, each node in the multi-tree corresponds to an instantiated calibration parameter management class, and the name of the node is the name of each source sensor coordinate system.

[0026] Optionally, the external service module is further configured to:

[0027] Provide calibration parameter query service in the form of callback function;

[0028] Based on the calibration parameter query service, receiving a calibration parameter query request;

[0029] In response to the calibration parameter query request, a predefined calibration parameter storage structure is queried for sensor calibration parameters corresponding to the calibration parameter query request.

[0030] Optionally, the external service module is further configured to:

[0031] Provide calibration parameter modification service in the form of callback function;

[0032] Based on the calibration parameter modification service, receiving a calibration parameter modification request;

[0033] In response to the calibration parameter modification request, the sensor calibration parameters corresponding to the calibration parameter modification request stored in a predefined calibration parameter storage structure are modified.

[0034] Optionally, the sensor calibration parameter management system further includes a broadcasting module, wherein the broadcasting module is configured to:

[0035] The sensor calibration parameters stored in the predefined calibration parameter storage structure are broadcasted at a preset broadcast frequency, so that the sensor data and the sensor calibration parameters are recorded synchronously when data is recorded.

[0036] In a second aspect, an embodiment of the present application further provides a method for managing sensor calibration parameters, the method comprising:

[0037] Read the sensor calibration parameter file and parse it to obtain the sensor calibration parameters;

[0038] Register the parsed sensor calibration parameters into the predefined calibration parameter storage structure;

[0039] Based on the sensor calibration parameters stored in the predefined calibration parameter storage structure, a sensor calibration parameter service is provided externally, wherein the sensor calibration parameter service includes at least one of a calibration parameter query service and a calibration parameter modification service.

[0040] In a third aspect, an embodiment of the present application further provides a device, including:

[0041] A processor; and a memory arranged to store computer-executable instructions, wherein when the executable instructions are executed, the processor executes any of the aforementioned sensor calibration parameter management methods.

[0042] In a fourth aspect, an embodiment of the present application further provides a computer-readable storage medium having a computer program / instruction stored thereon, which, when executed by a processor, implements any of the aforementioned sensor calibration parameter management methods.

[0043] In a fifth aspect, an embodiment of the present application further provides a computer program product, comprising a computer program / instruction, which, when executed by a processor, implements any of the aforementioned methods for managing sensor calibration parameters.

[0044] At least one of the above-mentioned technical solutions adopted in the embodiments of the present application can achieve the following beneficial effects: the sensor calibration parameter management system of the embodiments of the present application includes a calibration parameter loading module, a calibration parameter registration module, and an external service module. The calibration parameter loading module is used to read the sensor calibration parameter file and parse it to obtain the sensor calibration parameters; the calibration parameter registration module is used to register the parsed sensor calibration parameters into a predefined calibration parameter storage structure; the external service module is used to provide sensor calibration parameter services to the outside world based on the sensor calibration parameters stored in the predefined calibration parameter storage structure. The sensor calibration parameter service includes at least one of a calibration parameter query service and a calibration parameter modification service. The sensor calibration parameter management system of the embodiments of the present application realizes dynamic and efficient management of the external parameter files by reading the external parameter files on the vehicle side at one time and registering them into the predefined storage structure, avoiding the situation where multiple modules or processes need to load the same parameter file separately, thereby improving the ease of use and efficiency of development. In addition, by providing the function of dynamically updating external parameters, the calibration program or calibration personnel can update the external parameter values ​​online without changing the parameter file and restarting the intelligent driving system. By providing the function of dynamically querying external parameters, users can query the relative external parameters between any two sensors at any time, which improves the convenience of using external parameters. BRIEF DESCRIPTION OF THE DRAWINGS

[0045] The drawings described herein are used to provide a further understanding of the present application and constitute a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application and do not constitute an improper limitation on the present application. In the drawings:

[0046] Figure 1 This is a structural diagram of a sensor calibration parameter management system according to an embodiment of the present application;

[0047] Figure 2 This is a schematic diagram of a calibration parameter management class in an embodiment of the present application;

[0048] Figure 3 A flow chart of a method for managing sensor calibration parameters according to an embodiment of the present application;

[0049] Figure 4 This is a structural diagram of a device in an embodiment of the present application. DETAILED DESCRIPTION

[0050] To make the purpose, technical solutions, and advantages of this application more clear, the technical solutions of this application will be clearly and completely described below in conjunction with the specific embodiments of this application and the corresponding drawings. Obviously, the embodiments described are only part of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.

[0051] The following describes in detail the technical solutions provided by various embodiments of the present application in conjunction with the accompanying drawings.

[0052] The present application embodiment provides a sensor calibration parameter management system, such as Figure 1 As shown, a structural schematic diagram of a sensor calibration parameter management system in an embodiment of the present application is provided, wherein the sensor calibration parameter management system includes: a calibration parameter loading module, a calibration parameter registration module, and an external service module, wherein the calibration parameter loading module is used to read and parse a sensor calibration parameter file to obtain sensor calibration parameters; the calibration parameter registration module is used to register the parsed sensor calibration parameters into a predefined calibration parameter storage structure; the external service module is used to provide sensor calibration parameter services to the outside based on the sensor calibration parameters stored in the predefined calibration parameter storage structure, wherein the sensor calibration parameter services include at least one of a calibration parameter query service and a calibration parameter modification service.

[0053] The sensor calibration parameter management system of the embodiment of the present application mainly includes a calibration parameter loading module, a calibration parameter registration module and an external service module.

[0054] The calibration parameter loading module is primarily responsible for reading files storing various sensor calibration parameters. This file can be in a variety of formats, such as YAML, JSON, XML, or a custom binary format, depending on the system design requirements. The module locates the calibration parameter file using the file path or configuration information and reads it using the corresponding file reading interface.

[0055] After reading the calibration parameter file, the file contents need to be parsed to extract the calibration parameters for each sensor. This parsing process may involve string manipulation and data structure conversion to ensure that the raw data in the file is converted into a format that can be used within the system. The parsed calibration parameters may include sensor position, orientation, and extrinsic parameter matrices, depending on the sensor type and system requirements.

[0056] The calibration parameter registration module predefines a calibration parameter storage structure for storing parsed sensor calibration parameters. This storage structure can be a data structure (such as a tree structure) or a database table, and can be flexibly configured based on actual needs. The calibration parameter registration module registers the parsed sensor calibration parameters into the predefined storage structure. The registration process primarily involves associating the parameters with the sensor's unique identifier (such as the sensor ID or name) to facilitate subsequent query and modification operations.

[0057] The external service module defines sensor calibration parameter service interfaces based on a predefined calibration parameter storage structure. These interfaces include calibration parameter query and modification interfaces, and can be further expanded based on actual needs. When an external system or module needs to query a sensor's calibration parameters, it can send a request to the external service module through the query interface. When a sensor's calibration parameters need to be modified, it can send a request to the external service module through the modification interface.

[0058] The sensor calibration parameter management system of the embodiment of the present application realizes dynamic and efficient management of external parameter files by reading the external parameter files on the vehicle side at one time and registering them into a predefined storage structure, avoiding the situation where multiple modules or processes need to load the same parameter file separately, thereby improving the ease of development and development efficiency. In addition, by providing the function of dynamically updating external parameters, the calibration program or calibration personnel can update the external parameter values ​​online without changing the parameter files and restarting the intelligent driving system. By providing the function of dynamically querying external parameters, users can query the relative external parameters between any two sensors at any time, which improves the convenience of using external parameters.

[0059] In some embodiments of the present application, the calibration parameter registration module is also used to: design a calibration parameter management class using an object-oriented programming language, wherein the calibration parameter management class contains external parameter values ​​and timestamps from any source sensor coordinate system to any target sensor coordinate system; based on the calibration parameter management class, instantiate the parsed sensor calibration parameters in the calibration parameter management class; and register the instantiated calibration parameter management class in a predefined calibration parameter storage structure.

[0060] Use object-oriented programming languages ​​(such as C++, Java, etc.) to design a calibration parameter management class, such as a TF (Tranform) class, to manage the calibration parameters of the sensor. Figure 2 As shown, a schematic diagram of a calibration parameter management class in an embodiment of the present application is provided. The data members in the calibration parameter management class mainly include:

[0061] 1) Extrinsic parameter value: Define a data structure in the class to store the extrinsic parameter value from any source sensor coordinate system to any target sensor coordinate system. This extrinsic parameter value is usually a 4x4 transformation matrix (Matrix4d) containing rotation and translation information.

[0062] 2) Timestamp: Add a timestamp data member to record the broadcast time of the external parameter value so as to judge its timeliness later.

[0063] The calibration parameter loading module has read and parsed the sensor calibration parameter file, obtaining the extrinsic parameter values ​​and timestamps for each sensor. Based on the parsed parameters, a TF class instance is created for each sensor coordinate transformation to be managed. During instantiation, the parsed extrinsic parameter values ​​and timestamps are set to the corresponding instance. A predefined calibration parameter storage structure, such as a tree structure or database table, is used to store and manage these TF class instances.

[0064] Through object-oriented design, sensor calibration parameters are encapsulated in a class for unified management and operation. These class instances are organized and managed using a predefined storage structure, improving parameter search and access efficiency. The calibration parameter management class flexibly represents extrinsic parameter values ​​from any source sensor coordinate system to any target sensor coordinate system, supporting a variety of sensor combinations and configurations. The class encapsulation and storage structure reduce the complexity of parameter management and minimize the potential for errors. The object-oriented design also makes the system easily extensible, facilitating the addition of new sensor types and the modification of existing extrinsic parameter management logic.

[0065] In some embodiments of the present application, the calibration parameter registration module is also used to: register the instantiated calibration parameter management class into a predefined multi-tree data structure, each node in the multi-tree corresponds to an instantiated calibration parameter management class, and the name of the node is the name of each source sensor coordinate system.

[0066] In the calibration parameter registration module, you can select a multitree as the data structure for storing instantiated calibration parameter management classes. A multitree is a tree structure in which each node can have multiple children, making it suitable for representing hierarchical or complex data. Registering a TF class object with a predefined multitree data structure involves inserting individual nodes into the multitree.

[0067] Each node in the multitree corresponds to an instantiated TF class object. This object contains the extrinsic parameter values ​​from a source sensor coordinate system to other target sensor coordinate systems, as well as the timestamp of the extrinsic parameter value broadcast. The node name is set to the name of each source sensor coordinate system, so that the calibration parameters related to a specific source sensor can be quickly located by the node name. Of course, in real-world scenarios, vehicles and other equipment may have many coordinate systems. If you want to find the extrinsic parameters between any two coordinate systems, you can convert the extrinsic parameters using the connection relationship.

[0068] During the registration process, the corresponding node in the multitree can be traversed or searched according to the name of the source sensor coordinate system. If the node already exists, its associated TF class object is updated; if the node does not exist, a new node is created and inserted into the appropriate position of the multitree. The insertion position of the new node is usually determined based on the construction rules of the multitree or application requirements. For example, the structure of the multitree can be organized according to certain attributes of the source sensor coordinate system (such as type, installation location, etc.) for more efficient query and management. The instantiated TF class object is associated with the found or newly created node to complete the registration process.

[0069] When a sensor's calibration parameters change, the corresponding node can be found by name and its associated TF class object can be updated. Similarly, if a sensor is removed or no longer needs to be managed, the corresponding node can be deleted from the multitree. The multitree structure supports efficient traversal and query operations. Algorithms such as depth-first search (DFS) and breadth-first search (BFS) can be used to traverse the entire multitree to find the calibration parameters of a specific source sensor coordinate system.

[0070] By registering the instantiated calibration parameter management class in a multitree and using the source sensor coordinate system name as the node name, this embodiment of the application can quickly locate the calibration parameters associated with a specific source sensor, improving query efficiency. The multitree structure supports the dynamic addition, deletion, and update of nodes, allowing the system to flexibly respond to changes in the number of sensors or adjustments to calibration parameters.

[0071] The multi-tree structure provides a hierarchical organization for centralized management and maintenance of sensor calibration parameters. Node names also provide an intuitive understanding of the sensor information associated with each node. Complex application scenarios like autonomous driving often require managing calibration parameters for a large number of sensors, potentially with complex relationships between them. The multi-tree structure effectively supports the calibration parameter management needs in such complex scenarios.

[0072] In some embodiments of the present application, the external service module is also used to: provide a calibration parameter query service in the form of a callback function; receive a calibration parameter query request based on the calibration parameter query service; and in response to the calibration parameter query request, query the sensor calibration parameters corresponding to the calibration parameter query request in a predefined calibration parameter storage structure.

[0073] The external service module designs and implements one or more callback functions that can be used to handle calibration parameter query requests. A callback function is a programming mechanism that allows a predefined function to be automatically called when a specific event occurs (such as receiving a query request). A clear interface or function signature is defined to receive relevant information about the query request, such as the source sensor name and the target sensor name (if a specific coordinate system transformation is required). This information is passed as parameters to the callback function.

[0074] The external service module can establish a mechanism to receive calibration parameter query requests from other modules or systems. For example, it can be implemented through network communication (such as TCP / IP, UDP, etc.), inter-process communication (such as shared memory, message queues, etc.) or function calls. After receiving the query request, the external service module needs to parse the request content and extract key query parameters, such as the source sensor name. Based on the parsed query parameters, the external service module searches for the corresponding sensor calibration parameters in the predefined calibration parameter storage structure (such as the multi-branch tree mentioned earlier). This mainly involves operations such as traversing the tree structure and comparing node names. After finding the corresponding calibration parameters, the external service module returns the results to the requester through a callback function. The returned result can be a structure or object containing information such as external parameter values ​​and timestamps.

[0075] Providing query services through callback functions can make query request processing more timely and efficient. The callback function is executed immediately after receiving the request, reducing intermediate links and waiting time. The callback function mechanism enables the external service module to flexibly adapt to different query requirements. Different callback functions can be defined to handle different types of query requests or return different query results based on different request parameters. The use of callback functions can reduce the coupling between system modules. The sender and receiver of the query request (i.e., the external service module) do not need to directly call each other's functions or access each other's data structures. Instead, they communicate and interact through callback functions.

[0076] When adding new query functionality or modifying existing query logic, this can be accomplished by defining new callback functions or modifying the implementation of existing callback functions. This design makes system expansion and maintenance more convenient and flexible. For application scenarios that require frequent queries of calibration parameters (such as real-time data fusion in autonomous driving systems), the callback function approach can provide faster and more stable query services, thereby improving user experience and system performance.

[0077] In some embodiments of the present application, the external service module is also used to: provide calibration parameter modification service in the form of a callback function; receive a calibration parameter modification request based on the calibration parameter modification service; and modify the sensor calibration parameters corresponding to the calibration parameter modification request stored in a predefined calibration parameter storage structure in response to the calibration parameter modification request.

[0078] The external service module also designs and implements a callback function specifically for processing calibration parameter modification requests. The callback function must clearly state that its function is to receive modification request parameters and perform modification operations. The function signature should include parameters for receiving information related to the modification request, such as sensor identifiers (such as source sensor name, ID, etc.), new calibration parameter values ​​(such as new external parameter matrices, timestamps, etc.). Register the designed callback function with the system so that the system can correctly call the callback function when it receives a calibration parameter modification request. This mainly involves binding the callback function to a specific request type or event so that the system can recognize and trigger the corresponding processing logic.

[0079] The external service module establishes a mechanism for receiving calibration parameter modification requests. This mechanism can implement request reception based on network communication protocols (such as HTTP or custom protocols). Upon receiving a modification request, the external service module first parses the request to extract key information, such as the sensor identifier and the new calibration parameter value. It then verifies the request, checking for correct formatting, the validity of the sensor identifier, and whether the new calibration parameter value conforms to the specified range and format. If the request fails verification, an appropriate error message is returned to the requester.

[0080] Based on the parsed sensor identifier, the corresponding sensor calibration parameter node is searched in the predefined calibration parameter storage structure (such as the multi-branch tree mentioned earlier). This process also involves traversing the tree structure, comparing node names or identifiers, and other operations to accurately find the location of the parameter that needs to be modified. After finding the target parameter node, the calibration parameter value stored in the node is updated to the new value provided in the request. During the modification process, relevant information about the modification operation, such as the modification time, the modifier (if the system has user management function), etc., can be recorded for subsequent auditing and tracing.

[0081] After the parameter modification is complete, the external service module returns the modification results to the requester via a callback function. The returned result may include information such as whether the modification was successful and the modified parameter value. If the modification fails, the corresponding error reason should be returned, such as storage structure access failure, parameter conflict, etc.

[0082] The embodiment of the present application provides a function of dynamically updating external parameters, so that the calibration program or calibration personnel can update the external parameter values ​​online without changing the parameter file and restarting the intelligent driving system.

[0083] By providing modification services in the form of callback functions, the corresponding processing logic can be triggered immediately after receiving a modification request, reducing intermediate links and waiting time, enabling the system to quickly respond to parameter modification requirements, ensuring that sensor calibration parameters can be updated in a timely manner, and meeting the needs of application scenarios with high real-time requirements such as autonomous driving.

[0084] The callback function mechanism enables the external service module to flexibly adapt to different modification request types and processing logic. When adding new modification functionality or modifying existing modification logic, simply define a new callback function or modify the implementation of an existing callback function, without requiring a large-scale reconstruction of the entire external service module, reducing the difficulty of system expansion and maintenance.

[0085] Using callback functions to separate the calibration parameter modification service processing logic from the request receiving and sending mechanism reduces the coupling between the system modules. The sender and receiver of the request (i.e., the external service module) do not need to directly understand each other's specific implementation details. They only need to interact through callback functions, making the system more modular and easier to maintain.

[0086] In some embodiments of the present application, the sensor calibration parameter management system also includes a broadcast module, which is used to broadcast the sensor calibration parameters stored in the predefined calibration parameter storage structure according to a preset broadcast frequency, so as to synchronously record the sensor data and sensor calibration parameters when recording data.

[0087] The sensor calibration parameter management system of the embodiment of the present application also includes a broadcast module, which can determine the appropriate broadcast frequency based on the specific application scenarios and needs of the system. For example, in an autonomous driving scenario, the real-time requirements for sensor calibration parameters are high, and a higher broadcast frequency may be required, such as dozens of times per second or even higher; while in some industrial monitoring scenarios with relatively low real-time requirements, the broadcast frequency can be appropriately reduced, such as several times per second. The preset broadcast frequency can be configured and managed through configuration files, database records, or system interface settings, so that the broadcast frequency can be flexibly adjusted in different scenarios.

[0088] The broadcast module uses a timer or similar mechanism to periodically trigger broadcast operations based on a preset broadcast frequency. Each time a broadcast operation is triggered, the broadcast module retrieves all currently stored sensor calibration parameters from a predefined calibration parameter storage structure (such as the multitree mentioned above). This primarily involves traversing the storage structure, extracting the calibration parameters from each node, and organizing them in a specific format for subsequent broadcast processing.

[0089] The acquired sensor calibration parameters are encapsulated into a data packet suitable for transmission. The data packet format can be designed based on the system's communication protocol and requirements. For example, it can include information such as the parameter type, value, and timestamp. The data packet is then broadcast through the system's internal communication mechanisms (such as inter-process communication and network communication).

[0090] In the autonomous driving scenario, there will be middleware on the vehicle side, and each module can communicate through the middleware. The external parameter dynamic management system is also the same. After the TFTree data is periodically broadcast through the middleware, any module can receive the TFTree data. Of course, no module can receive it.

[0091] During data recording, the broadcast module can broadcast TFTree data (including all external parameters) at a set frequency. When recording data, the external parameters can be recorded directly, so that the data and external parameters are all in one data package. Compared with the existing solution that can only record one data package and copy an additional external parameter file, this simplifies the operation process and is less prone to errors.

[0092] By periodically broadcasting TFTree and recording it alongside other sensor data, the need for additional copies of external parameter files and manual alignment and processing errors caused by separating data and parameter files are avoided. During subsequent data processing, the required sensor data and corresponding external parameter information can be directly obtained from the recorded data, eliminating the need for tedious file search and matching operations. This greatly simplifies the data processing process and helps improve the accuracy of data processing and analysis, avoiding erroneous results caused by data and parameter asynchrony. For example, in multi-sensor fusion algorithms, accurate external parameter information is key to achieving precise sensor data fusion.

[0093] The present application also provides a method for managing sensor calibration parameters, such as Figure 3 As shown, a flow chart of a method for managing sensor calibration parameters in an embodiment of the present application is provided. The method for managing sensor calibration parameters includes the following steps S310 to S330:

[0094] Step S310, reading the sensor calibration parameter file and parsing it to obtain the sensor calibration parameters;

[0095] Step S320, registering the parsed sensor calibration parameters into a predefined calibration parameter storage structure;

[0096] Step S330: providing a sensor calibration parameter service based on the sensor calibration parameters stored in the predefined calibration parameter storage structure, wherein the sensor calibration parameter service includes at least one of a calibration parameter query service and a calibration parameter modification service.

[0097] It can be understood that each step of the above-mentioned sensor calibration parameter management method can be executed by the sensor calibration parameter management system provided in the aforementioned embodiments. The relevant explanations about the sensor calibration parameter management system are applicable to the sensor calibration parameter management method and will not be repeated here.

[0098] Figure 4 This is a schematic diagram of the structure of a device in the embodiment of the present application. Figure 4 As shown, the device includes one or more processors (or processing units), may further include one or more memories coupled to the processors, and may further include a communication module coupled to the processors.

[0099] The communication module can be used to communicate with other devices or apparatuses, such as sending or receiving data and / or signals. The communication module can include at least one communication module for communication. The communication module can include any interface necessary for communicating with other devices. Exemplarily, the communication module can be a transceiver, circuit, bus, module, or other type of communication module.

[0100] The processor may include, but is not limited to, at least one of the following: a general-purpose computer, a special-purpose computer, a microcontroller, a digital signal processor (DSP), or one or more of a controller-based multi-core controller architecture. A device may have multiple processors, such as application-specific integrated circuit chips, which are time-slave to a clock synchronized with a main processor.

[0101] The memory may include one or more non-volatile memories and one or more volatile memories. Examples of non-volatile memories include, but are not limited to, at least one of the following: read-only memory (ROM), erasable programmable read-only memory (EPROM), flash memory, hard disk, compact disc (CD), digital video disc (DVD), or other magnetic storage and / or optical storage. Examples of volatile memories include, but are not limited to, at least one of the following: random access memory (RAM), or other volatile memories that do not persist during a power outage.

[0102] A computer program includes computer-executable instructions that are executed by an associated processor. The program may be stored in ROM. The processor may perform any suitable actions and processes by loading the program into RAM.

[0103] The possible implementation of the present application can be realized by means of a program, so that the communication device can perform any process discussed in the above embodiments. The possible implementation of the present application can also be realized by hardware or by a combination of software and hardware.

[0104] In some embodiments, the program may be tangibly contained in a computer-readable storage medium that may be included in the device (such as in a memory) or other storage device accessible by the device. The program may be loaded from the computer-readable storage medium into RAM for execution. The computer-readable storage medium may include any type of tangible non-volatile memory, such as ROM, EPROM, flash memory, hard disk, CD, DVD, etc.

[0105] The present application also provides a computer-readable storage medium having computer instructions or program codes stored thereon, which, when executed by a processor, causes the processor to perform the methods and functions described in any of the above embodiments. A computer-readable medium may be any tangible medium containing or storing a program for or related to an instruction execution system, apparatus, or device. A computer-readable medium may be a computer-readable signal medium or a computer-readable storage medium. Computer-readable media may include, but are not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatuses, or devices, or any suitable combination thereof. The computer-readable storage medium may be any available medium that a computer can access, or a data storage device such as a server or data center that includes one or more available media integrated therein. More detailed examples of computer-readable storage media include electrical connections with one or more wires, magnetic media (e.g., magnetic disks, floppy disks, hard disks, tapes, magnetic storage devices), optical media (e.g., optical storage devices, DVDs), semiconductor media (e.g., solid-state drives), random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), or any suitable combination thereof.

[0106] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The embodiments of the present application also provide at least one computer program product tangibly stored on a non-transitory computer-readable storage medium. The computer program product includes one or more computer-executable instructions, such as instructions included in a program module, which are executed in a device on a real or virtual processor of the target to perform the processes, methods and functions involved in any of the above embodiments. When the computer program instructions are loaded and executed on a computer, the process or function according to the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from one website, computer, server or data center to another website, computer, server or data center via a wired (e.g., coaxial cable, optical fiber, digital subscriber line) or wireless (e.g., infrared, wireless, microwave, etc.) method.

[0107] The present application also provides a computer program product, including a computer program or instructions, which, when run on a computer, causes the computer to perform the processes, methods, and functions in the above-described embodiments. Typically, a program module includes routines, programs, libraries, objects, classes, components, data structures, etc. that perform specific tasks or implement specific abstract data types. In various embodiments, the functions of the program modules can be combined or divided between program modules as needed. The machine executable instructions for the program modules can be executed in local or distributed devices. In distributed devices, the program modules can be located in local and remote storage media.

[0108] In general, various embodiments of the present application can be implemented in hardware or dedicated circuits, software, logic, or any combination thereof. Some aspects can be implemented in hardware, while other aspects can be implemented in firmware or software, which can be executed by a controller, microprocessor, or other computing device. Although various aspects of the embodiments of the present disclosure are shown and described as block diagrams, flow charts, or using some other graphical representation, it should be understood that the blocks, devices, systems, techniques, or methods described herein can be implemented as, by way of non-limiting example, hardware, software, firmware, dedicated circuits or logic, general-purpose hardware or a controller or other computing device, or some combination thereof.

[0109] It should be noted that although the embodiments of the present application are described above in conjunction with the accompanying drawings, the above embodiments are not independent of each other, and they can also be combined to obtain other embodiments. The methods, situations, categories, and divisions of the embodiments in the embodiments of the present application are only for the convenience of description and should not constitute special limitations. The features of the various methods, categories, situations, and embodiments can be combined with each other when they are logical. The various embodiments of the present application can be combined arbitrarily to achieve different technical effects. The embodiments of the present application no longer list various combinations.

[0110] In addition, although the operations of the method of the present disclosure are described in a particular order in the accompanying drawings, this does not require or imply that these operations must be performed in this particular order, or that all the operations shown must be performed to achieve the desired result. On the contrary, the steps depicted in the flowchart can change the order of execution. Additionally or alternatively, certain steps can be omitted, multiple steps can be combined into one step, and / or one step can be decomposed into multiple steps. It should also be noted that the features and functions of two or more devices according to the present disclosure can be embodied in one device. Conversely, the features and functions of a device described above can be further divided into being embodied by multiple devices.

[0111] It should also be noted that the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, commodity, or apparatus that includes a series of elements includes not only those elements but also other elements not explicitly listed, or includes elements inherent to such process, method, commodity, or apparatus. In the absence of further limitations, an element defined by the phrase "comprises a ..." does not exclude the presence of other identical elements in the process, method, commodity, or apparatus that includes the element.

[0112] The foregoing is merely an embodiment of the present application and is not intended to limit the present application. For those skilled in the art, the present application may have various changes and variations. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present application should all be included within the scope of the claims of the present application.

Claims

1. A sensor calibration parameter management system, characterized in that: The sensor calibration parameter management system includes: a calibration parameter loading module, a calibration parameter registration module and an external service module, wherein: The calibration parameter loading module is used to read the sensor calibration parameter file and parse it to obtain the sensor calibration parameters; The calibration parameter registration module is used to register the parsed sensor calibration parameters into a predefined calibration parameter storage structure; The external service module is used to provide sensor calibration parameter services externally based on the sensor calibration parameters stored in the predefined calibration parameter storage structure. The sensor calibration parameter services include at least one of calibration parameter query services and calibration parameter modification services.

2. The sensor calibration parameter management system according to claim 1, characterized in that: The calibration parameter registration module is also used for: Design a calibration parameter management class using an object-oriented programming language, wherein the calibration parameter management class includes external parameter values ​​and timestamps from any source sensor coordinate system to any target sensor coordinate system; Based on the calibration parameter management class, instantiating the parsed sensor calibration parameters in the calibration parameter management class; Register the instantiated calibration parameter management class to the predefined calibration parameter storage structure.

3. The sensor calibration parameter management system according to claim 2, characterized in that: The calibration parameter registration module is also used for: The instantiated calibration parameter management class is registered in a predefined multi-tree data structure, each node in the multi-tree corresponds to an instantiated calibration parameter management class, and the name of the node is the name of each source sensor coordinate system.

4. The sensor calibration parameter management system according to claim 1, characterized in that: The external service module is also used to: Provide calibration parameter query service in the form of callback function; Based on the calibration parameter query service, receiving a calibration parameter query request; In response to the calibration parameter query request, a predefined calibration parameter storage structure is queried for sensor calibration parameters corresponding to the calibration parameter query request.

5. The sensor calibration parameter management system according to claim 1, characterized in that: The external service module is also used to: Provide calibration parameter modification service in the form of callback function; Based on the calibration parameter modification service, receiving a calibration parameter modification request; In response to the calibration parameter modification request, the sensor calibration parameters corresponding to the calibration parameter modification request stored in a predefined calibration parameter storage structure are modified.

6. The sensor calibration parameter management system according to claim 1, characterized in that: The sensor calibration parameter management system further includes a broadcast module, which is configured to: The sensor calibration parameters stored in the predefined calibration parameter storage structure are broadcasted at a preset broadcast frequency, so that the sensor data and the sensor calibration parameters are recorded synchronously when data is recorded.

7. A method for managing sensor calibration parameters, characterized in that: The method for managing sensor calibration parameters includes: Read the sensor calibration parameter file and parse it to obtain the sensor calibration parameters; Register the parsed sensor calibration parameters into the predefined calibration parameter storage structure; Based on the sensor calibration parameters stored in the predefined calibration parameter storage structure, a sensor calibration parameter service is provided externally, wherein the sensor calibration parameter service includes at least one of a calibration parameter query service and a calibration parameter modification service.

8. A device comprising: processor; and a memory arranged to store computer-executable instructions, which, when executed, cause the processor to perform the sensor calibration parameter management method according to claim 7.

9. A computer-readable storage medium having a computer program / instruction stored thereon, characterized in that: When the computer program / instructions are executed by a processor, the method for managing sensor calibration parameters according to claim 7 is implemented.

10. A computer program product comprising a computer program / instructions, characterized in that When the computer program / instructions are executed by a processor, the method for managing sensor calibration parameters according to claim 7 is implemented.

Citation Information

Cited By

  • Intelligent detection method, system and equipment for core control board of distribution network hot-line work robot and storage medium

    CN120949754A