Display method, display device, head-up display system, equipment and medium
By using the high-accurate attitude data of the vehicle positioning unit to correct the error of the inertial measurement unit, the accurate jitter compensation of the image in the head-up display system is achieved, and the problem of information not corresponding to the real scene when the vehicle is unstable is solved, which improves driving safety.
Patent Information
- Application Number
- CN202410115033.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-01-26
- Publication Date
- 2025-07-29
AI Technical Summary
When the vehicle is not moving smoothly in the existing head-up display system, there may be a relative displacement difference between the projected information and the real scene, resulting in the image not corresponding to the real environment, and the manual adjustment is inefficient and unreliable.
The positioning unit of the vehicle provides highly accurate attitude data, estimates the error of the inertial measurement unit, and performs error correction, and ensures the matching of the image with the real environment through attitude resolution and jitter compensation.
It improves the matching degree between the image and the real environment, reduces the delay, ensures timely compensation of the image, and improves driving safety.
Smart Images

Figure CN120386503A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of display technologies, and particularly to a display method, a display device, a head-up display system, an electronic device, and a computer-readable storage medium. Background Art
[0002] A head-up display device (HUD) can project driving-related information such as speed and navigation onto a display device to form an image, enabling a driver to view the relevant information without turning or lowering their head, thus assisting the driver to drive more efficiently and safely. Summary of the Invention
[0003] This application provides a display method, a display device, a head-up display system, an electronic device, and a computer-readable storage medium.
[0004] In a first aspect, this application provides a display method, which includes: estimating an error based on first attitude data of a positioning unit of a vehicle within a first preset time and first measurement data of an inertial measurement unit of the vehicle's head-up display system within the first preset time to determine a first error of the inertial measurement unit; correcting the second measurement data of the inertial measurement unit within a second preset time according to the first error to obtain corrected measurement data; performing attitude calculation on the corrected measurement data to obtain first target attitude data; and performing jitter compensation on a to-be-displayed image corresponding to the second preset time according to the first target attitude data to obtain a target image for display in the head-up display system.
[0005] In a second aspect, this application provides a display device, which includes: an estimation module for estimating an error based on first attitude data of a positioning unit of a vehicle within a first preset time and first measurement data of an inertial measurement unit of the vehicle's head-up display system within the first preset time to determine a first error of the inertial measurement unit; a correction module for correcting the second measurement data of the inertial measurement unit within a second preset time according to the first error to obtain corrected measurement data; a calculation module for performing attitude calculation on the corrected measurement data to obtain first target attitude data; and a compensation module for performing jitter compensation on a to-be-displayed image corresponding to the second preset time according to the first target attitude data to obtain a target image for display in the head-up display system.
[0006] In a third aspect, the present application provides a head-up display system, which includes: the inertial measurement unit, configured to obtain measurement information of a vehicle and send the measurement information to the display unit; and the display unit, configured to use the display method according to any one of the embodiments of the present application to obtain a target image based on the measurement information and display the target image.
[0007] In a fourth aspect, the present application provides an electronic device, which includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores one or more computer programs executable by the at least one processor, and the one or more computer programs are executed by the at least one processor so that the at least one processor can execute the above display method.
[0008] In a fifth aspect, the present application provides a computer-readable storage medium, on which a computer program is stored, wherein the computer program implements the above display method when executed by a processor.
[0009] In the embodiments provided by the present application, considering that the positioning unit of the vehicle can provide first attitude data with relatively high accuracy, therefore, the first attitude data can be used as reference data to determine the error of the inertial measurement unit of the head-up display system of the vehicle, and based on the determined error, error correction is performed on the measurement data of the inertial measurement unit, so that relatively accurate target attitude data can be obtained based on the corrected measurement data, and accurate jitter compensation can be performed on the image to be displayed based on the target attitude data, thereby improving the matching degree between the target image and the real environment; and, since the inertial measurement unit has a high output frequency, therefore, the obtained target attitude data also has a high frequency, so that the image can be jitter-compensated in a timely manner; in addition, since the inertial measurement unit is a head-up display system end unit, therefore, compared with non-head-up display system end units, the transmission duration of the measurement data is reduced, and the time delay is also correspondingly reduced, which can effectively alleviate the situation where the displayed image is out of sync with the actual information of the vehicle due to the time delay.
[0010] It should be understood that the content described in this part is not intended to identify the key or important features of the embodiments of the present application, nor is it used to limit the scope of the present application. Other features of the present application will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0011] The drawings are used to provide a further understanding of the present application, and constitute a part of the specification. They are used together with the embodiments of the present application to explain the present application, and do not constitute a limitation to the present application. By describing the detailed exemplary embodiments with reference to the drawings, the above and other features and advantages will become more obvious to those skilled in the art. In the drawings:
[0012] Figure 1 The flowchart of a display method provided by an embodiment of the present application.
[0013] Figure 2 The schematic diagram of an attitude angle provided by an embodiment of the present application.
[0014] Figure 3 The schematic diagram for estimating a first error provided by an embodiment of the present application.
[0015] Figure 4 The schematic diagram of a display method provided by an embodiment of the present application.
[0016] Figure 5 The schematic diagram of a display method provided by an embodiment of the present application.
[0017] Figure 6 The block diagram of a display device provided by an embodiment of the present application.
[0018] Figure 7 The block diagram of a head-up display system provided by an embodiment of the present application.
[0019] Figure 8 The block diagram of an electronic device provided by an embodiment of the present application. Detailed implementation manners
[0020] To enable those skilled in the art to better understand the technical solutions of the present application, the following provides descriptions of exemplary embodiments of the present application with reference to the accompanying drawings. Various details of the embodiments of the present application are included to facilitate understanding, and they should be considered merely exemplary. Therefore, those of ordinary skill in the art should recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of the present application. Similarly, for clarity and conciseness, descriptions of well-known functions and structures are omitted below.
[0021] Without conflict, the embodiments of the present application and the features in the embodiments can be combined with each other.
[0022] As used herein, the term "and / or" includes any and all combinations of one or more related listed items.
[0023] The terms used in this document are only for describing specific embodiments and are not intended to limit this application. As used herein, the singular forms "a" and "the" are also intended to include the plural forms unless the context clearly indicates otherwise. It will also be understood that when the terms "comprises" and / or "consists of" are used in this specification, it specifies the presence of the described features, integers, steps, operations, elements and / or components, but does not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components and / or their groups. "Connected" or "coupled" and similar terms are not limited to physical or mechanical connections, but may include electrical connections, whether direct or indirect.
[0024] Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art. It will also be understood that terms such as those defined in common dictionaries should be interpreted as having a meaning consistent with their meaning in the context of the relevant art and this application, and will not be interpreted as having an idealized or overly formal meaning unless expressly so defined herein.
[0025] In order to provide a higher driving experience for the driver of a vehicle, a head-up display system can be configured for the vehicle to project some dial information, navigation information, environmental information, etc. into the driver's field of view area, so that the driver can view the above information without having to lower their head, improving driving safety.
[0026] However, when the vehicle is driving unevenly and there are bumps (for example, when the vehicle drives over a speed bump or a pothole), the attitude of the vehicle will change. Since the head-up display system remains relatively stationary with respect to the vehicle, there may be a relative displacement difference between the projected information and the actual scene outside the vehicle, resulting in a problem that the head-up display image does not correspond to the actual environment. For example, when the front wheels of the vehicle just drive onto the speed bump, the front of the vehicle rises as a whole. At this time, the driver's field of view is actually above the actual scene; correspondingly, when the rear wheels of the vehicle drive off the speed bump, the front of the vehicle drops as a whole. At this time, the driver's field of view is actually below the actual scene.
[0027] In the related art, it is usually relied on the subjective judgment of the human eye on the HUD display content to adjust the display position and angle to ensure that the driver can view the clear head-up display content in the normal driving posture. However, due to the influence of individual differences, it is easy to cause inconsistent calibration results of the display content, and the accuracy and reliability cannot be guaranteed, and standardization and reproducibility cannot be achieved, and the manual operation efficiency is also relatively low.
[0028] In view of this, embodiments of the present application provide a display method, a display device, a head-up display system, an electronic device, and a computer-readable storage medium.
[0029] In an embodiment of the present application, considering that the positioning unit of the vehicle can provide first attitude data with relatively high accuracy, therefore, the first attitude data can be used as reference data to determine the error of the inertial measurement unit of the vehicle's head-up display system, and based on the determined error, the measurement data of the inertial measurement unit can be corrected for errors. As a result, relatively accurate target attitude data can be obtained according to the corrected measurement data, and accurate jitter compensation can be performed on the image to be displayed based on the target attitude data, thereby improving the matching degree between the target image and the real environment. Moreover, since the inertial measurement unit has a high output frequency, the obtained target attitude data also has a high frequency, so that the image can be jitter-compensated in a timely manner. In addition, since the inertial measurement unit is an end unit of the head-up display system, compared with non-head-up display system end units, the transmission duration of the measurement data is reduced, and the time delay is also correspondingly reduced, which can effectively alleviate the situation where the displayed image is out of sync with the actual information of the vehicle due to the time delay.
[0030] It should be noted that the head-up display system in the embodiment of the present application includes any one of a head-up display device based on the front windshield (Windshield-HUD, W-HUD) and an augmented reality head-up display device (Augmented Reality-HUD, AR-HUD), etc., and the embodiment of the present application does not limit this. That is, the embodiment of the present application can perform jitter compensation on the image to be displayed of any type of head-up display system to obtain a target image that is relatively well-matched with the real environment.
[0031] The display method according to the embodiment of the present application can be executed by an electronic device such as a terminal device or a server. The terminal device can be a user equipment (UE), a mobile device, a terminal, a cellular phone, a cordless phone, a personal digital assistant (PDA), a handheld device, a computing device, a vehicle-mounted device, a wearable device, etc., and the method can be implemented by the processor calling computer-readable program instructions stored in the memory. The server can be an independent physical server, a server cluster composed of multiple servers, or a cloud server capable of performing cloud computing.
[0032] In a first aspect, an embodiment of the present application provides a display method.
[0033] Figure 1 The flowchart of a display method provided for the embodiment of the present application is shown in reference to Figure 1 . The display method may include the following steps.
[0034] In step S11, error estimation is performed based on the first attitude data of the positioning unit of the vehicle within the first preset time and the first measurement data of the inertial measurement unit of the head-up display system of the vehicle within the first preset time, to determine the first error of the inertial measurement unit.
[0035] In step S12, based on the first error, error correction is performed on the second measurement data of the inertial measurement unit within the second preset time to obtain corrected measurement data.
[0036] In step S13, attitude calculation is performed on the corrected measurement data to obtain the first target attitude data.
[0037] In step S14, based on the first target attitude data, jitter compensation is performed on the image to be displayed corresponding to the second preset time to obtain a target image for display in the head-up display system.
[0038] In the embodiment of the present application, a positioning unit is provided in the vehicle, and relatively accurate first attitude data can be obtained through the positioning unit. In addition, an inertial measurement unit (Inertial Measurement Unit, IMU) is provided in the head-up display system of the vehicle. The first measurement data of the vehicle can be obtained through the inertial measurement unit, and the first error of the inertial measurement unit can be estimated based on the first attitude data as the reference data. Thus, error correction is performed on the second measurement data of the inertial measurement unit according to the first error to obtain relatively accurate corrected measurement data, and the first target attitude data of the vehicle is obtained by performing attitude calculation on the corrected measurement data. Then, jitter compensation is performed on the image to be displayed based on the first target attitude data, so as to obtain an accurate target image that can be displayed in the head-up display system, making the target image correspond to the real scene.
[0039] Moreover, since the inertial measurement unit has a high output frequency, the first target attitude data can also have a high output frequency, and jitter compensation can be performed on the image to be displayed in a timely manner. Also, the inertial measurement unit in the embodiment of the present application is a head-up display system end unit. Therefore, compared with non-head-up display system end units (for example, Advanced Driver Assistance System (ADAS)), the transmission duration of the measurement data is reduced, and the time delay is also correspondingly reduced, thereby effectively alleviating the situation where the displayed image is out of sync with the actual information of the vehicle due to the time delay.
[0040] The display method of the embodiment of the present application will be further described below.
[0041] In some alternative implementation manners, the vehicle includes a transportation means that can be used for freight or passenger transportation, which can be tools such as vehicles, ships, etc., and the embodiments of the present application do not limit this. In the embodiments of the present application, a positioning unit is provided in the vehicle, and this positioning unit can obtain the first attitude data of the vehicle. At the same time, an inertial measurement unit is provided in the head-up display system of the vehicle, and this inertial measurement unit can obtain first measurement data such as the angular velocity and / or acceleration of the vehicle. Since both the first attitude data and the first measurement data are data used to reflect the attitude of the same vehicle, the two should represent the same or relatively similar vehicle attitude. However, the inertial measurement unit usually has certain errors, so the data measured by it has poor accuracy and there is a need for error correction. Further, considering that the first attitude data of the positioning unit is relatively accurate, it can be regarded as the reference attitude data, and the inertial measurement unit is error-estimated according to the first attitude data and the first measurement data, so as to determine the first error of the inertial measurement unit, so that the data measured by the inertial measurement unit can be error-corrected based on the first error subsequently.
[0042] In some alternative implementation manners, the positioning unit refers to a modular unit with positioning functions, which can obtain the positioning information of the vehicle and transmit the positioning information to other functional units of the vehicle or functional units outside the vehicle, so that these functional units can perform further information processing based on the positioning information. Among them, the positioning information can include position data and attitude data, etc. The position data is data that can reflect the position where the vehicle is located, and the attitude data is data that can reflect the attitude of the vehicle.
[0043] For example, the positioning unit can be a high-precision positioning box (Positioning Box, PBOX), which can process high-precision sensor signals, Global Navigation Satellite System (GNSS) data / Real-time kinematic (RTK) data / Precise Point Positioning (PPP) data, and vehicle chassis data, etc. through corresponding positioning algorithms, and then obtain relatively accurate first attitude data.
[0044] In some alternative implementation manners, the first attitude data can be characterized by attitude angles, that is, the first attitude data includes the attitude angles of the vehicle.
[0045] For example, if the positioning unit is in a preset vehicle coordinate system, the first attitude data of the vehicle includes the first pitch angle, the first yaw angle, and the first roll angle of the vehicle in this vehicle coordinate system.
[0046] In some alternative implementations, an inertial measurement unit in a head-up display system of a vehicle can collect first measurement data of the vehicle, and the first measurement data can include angular velocity data and / or acceleration data of the vehicle. After performing certain data processing on these first measurement data, second attitude data of the vehicle can be obtained, and the second attitude data can also reflect the attitude of the vehicle.
[0047] Exemplarily, the inertial measurement unit includes a three-axis gyroscope. Correspondingly, the first measurement data includes the three-axis angular velocity of the vehicle. After performing processing such as integration on the three-axis angular velocity respectively, second attitude data of the vehicle can be obtained, including a second pitch angle, a second yaw angle, and a second roll angle.
[0048] It should be noted that for an inertial measurement unit, it usually converts an electrical signal (for example, a voltage signal) into a corresponding measurement result after a series of calculations. Therefore, there may be certain errors, resulting in inaccurate second attitude data. For example, the gyroscope may have scale factor errors and zero offsets, resulting in inaccurate first measurement data. After performing processing such as integration on the first measurement data, this error may be further amplified, resulting in worse accuracy of the second attitude data.
[0049] In summary, although both the first attitude data and the second attitude data are attitude data of the vehicle, due to their different data sources and corresponding different data processing methods, they may not be exactly the same. Moreover, since the positioning unit has high accuracy and the first attitude data is obtained by the positioning unit, the first attitude data can be regarded as data with relatively high accuracy. Therefore, the first attitude data of the positioning unit can be used as the reference attitude data to determine whether there is an error in the inertial measurement unit of the head-up display system. If there is an error, the specific error magnitude of the inertial measurement unit can also be determined based on the first attitude data, and then the inertial measurement unit can be error-corrected, so that accurate attitude data of the vehicle can be obtained according to the measurement data of the inertial measurement unit subsequently, and jitter compensation can be performed on the image to be displayed according to the accurate attitude data, thereby obtaining a target image that can be displayed in the head-up display system.
[0050] It should be noted that the inertial measurement unit in the embodiment of the present application is a functional unit disposed in the head-up display system of the vehicle and belongs to the head-up display system end unit. Compared with non-head-up display system end units such as ADAS, the transmission path between the inertial measurement unit and other functional units in the head-up display system is shorter, and the required transmission duration is also correspondingly shorter. Therefore, the time delay caused by too long data transmission time can be effectively reduced.
[0051] In some alternative implementation manners, in step S11, error estimation is performed based on the first attitude data of the positioning unit of the vehicle within the first preset time and the first measurement data of the inertial measurement unit of the head-up display system of the vehicle within the first preset time to determine the first error of the inertial measurement unit, which may include: for any time step within the first preset time, determining the first attitude change data corresponding to the time step according to the first attitude data corresponding to the time step and the first attitude data corresponding to the previous time step; for any time step within the first preset time, determining the second attitude change data corresponding to the time step according to the first measurement data corresponding to the time step; and performing error estimation based on the first attitude change data and the second attitude change data to determine the first error of the inertial measurement unit. Wherein, the time step is a relatively small time period set in advance (for example, the time step may be 1 second).
[0052] In summary, within the first preset time, for each time step, the first attitude change data corresponding to the positioning unit and corresponding to the time step can be obtained, and the second attitude change data corresponding to the inertial measurement unit and corresponding to the time step can also be obtained. If the first measurement data measured by the inertial measurement unit is accurate, the second attitude change data should be the same as or relatively close to the first attitude change data; conversely, if the first measurement data measured by the inertial measurement unit is inaccurate, the difference between the second attitude change data and the first attitude change data is relatively large, and this part of the attitude difference can be understood as being caused by the error of the inertial measurement unit. Therefore, error estimation can be performed on the inertial measurement unit according to the first attitude change data and the second attitude change data, so as to determine the first error of the inertial measurement unit.
[0053] It should be noted that, in some alternative implementation manners, the positioning unit of the vehicle and the inertial measurement unit of the head-up display system may use different coordinate systems. Therefore, it is necessary to first convert the two to the same coordinate system before data comparison. Among them, the coordinate system where the positioning unit of the vehicle is located can be converted to the coordinate system of the inertial measurement unit, or the coordinate system of the inertial measurement unit can be converted to the coordinate system of the positioning unit, or the coordinate systems of the positioning unit and the inertial measurement unit can be converted to another third coordinate system. The embodiments of the present application do not limit this.
[0054] Exemplarily, the first attitude data is characterized using a first coordinate system corresponding to the positioning unit, and the first measurement data is characterized using a second coordinate system corresponding to the inertial measurement unit; before determining the second attitude change data corresponding to the time step according to the first measurement data corresponding to the time step and the first measurement data corresponding to the previous time step, the method further includes: converting the first measurement data from the second coordinate system to the first coordinate system to determine the second attitude change data based on the converted first measurement data.
[0055] For example, the installation position of the inertial measurement unit is fixed, and three installation angle information can be obtained. Therefore, the first measurement data of the inertial measurement unit can be converted to the first coordinate system of the positioning unit through the following formula:
[0056]
[0057] Among them, the first coordinate system adopts a right-front-up coordinate system (v system), the second coordinate system adopts a defined coordinate system (b system), R2, R1, and R3 all represent rotation matrices, y represents the roll angle (i.e., the rotation angle around the Y axis), x represents the pitch angle (i.e., the rotation angle around the X axis), and z represents the heading angle (i.e., the rotation angle around the Z axis).
[0058] It should be noted that the above is only an example for the first coordinate system and the second coordinate system, and the embodiments of the present application are not limited thereto. Moreover, other coordinate system conversion methods are similar and will not be elaborated here.
[0059] In some alternative implementation manners, error estimation is performed based on the first attitude change data and the second attitude change data to determine the first error of the inertial measurement unit, including: obtaining attitude difference data corresponding to each time step according to the first attitude change data and the second attitude change data corresponding to each time step; determining the first error of the inertial measurement unit according to the attitude difference data corresponding to each time step.
[0060] In some alternative implementation manners, the first error of the inertial measurement unit may include various error parameters such as scale factor error and zero bias error. Determining the first error is essentially determining various error parameters such as scale factor error and zero bias error.
[0061] In some alternative implementation manners, the first error can be characterized in a model-based manner. For example, the error model of the first error can be characterized as: w = (I + K g )w′ + ε. Among them, w represents the first measurement data, w′ represents the true value of the first measurement data, I represents noise, K gLet \(\delta\) represent the scale factor error and \(\varepsilon\) represent the zero bias error. Estimating the first error of the inertial measurement unit essentially involves solving for the various error parameters therein. This modeled representation of the first error establishes a connection between the various error parameters and the true measurement values through mathematical operation relationships, thereby enabling a more intuitive and convenient display of the correlation relationships between the various error parameters included in the first error, as well as the correlation relationships between the various error parameters and the true measurement values, providing an important basis for solving the various error parameters.
[0062] It should be noted that the above representation of the first error is only an example, and the embodiments of the present application are not limited thereto.
[0063] For example, a total of N time steps (\(N\geq1\) and N is an integer) are included from the first preset time \(t_0\) to \(t_N\). For the first time step \(t_0 - t_1\), the first attitude data at time \(t_1\) is obtained as the first attitude data corresponding to the first time step, and by performing a difference operation based on the first attitude data at time \(t_1\) and the initial attitude data at the initial time \(t_0\), the first attitude change data \(ac_{11}\) corresponding to the first time step can be obtained; in addition, by performing operations such as integration on the first measurement data corresponding to the first time step, the second attitude change data \(ac_{21}\) corresponding to the first time step can be obtained.
[0064] For the second time step \(t_1 - t_2\), the first attitude data at time \(t_2\) is obtained as the first attitude data corresponding to the second time step, and by performing a difference operation based on the first attitude data at time \(t_2\) and the first attitude data of the first time step (i.e., the first attitude data at time \(t_1\)), the first attitude change data \(ac_{12}\) corresponding to the second time step can be obtained; in addition, by performing operations such as integration on the first measurement data corresponding to the second time step, the second attitude change data \(ac_{22}\) corresponding to the second time step can be obtained.
[0065] By analogy, the first attitude change data \(ac_{1N}\) and the second attitude change data \(ac_{2N}\) corresponding to the Nth time step can be obtained.
[0066] Furthermore, for the \(i\)th time step (\(1\leq i\leq N\)), by calculating the difference between the first attitude change data \(ac_{1i}\) and the second attitude change data \(ac_{2i}\), the attitude difference data \(\Delta ac_i\) corresponding to the \(i\)th time step can be obtained. This attitude difference data \(\Delta ac_i\) is caused by the error of the inertial measurement unit.
[0067] If the error model of the inertial measurement unit is expressed as: w = F(k1, k2, …, km; w’), where w represents the first measurement data, w’ represents the true value of the first measurement data (i.e., the first measurement data without error), k1, k2, …, km are m error parameters to be solved, and F() represents a function about the error parameters. After obtaining more first measurement data and attitude difference data, substituting these data into the above error model for simultaneous operations can obtain the specific values of each error parameter, which is equivalent to identifying each error of the inertial measurement unit, thereby obtaining the first error of the inertial measurement unit.
[0068] Exemplarily, for the 1st time step, if the first measurement data is w1 and the corresponding true value is w1’, then since ac11 - ac21 = Δac1, and ac21 = ∫(w1)dt, w1 = F(k1, k2, …, km; w1’), therefore, substituting the corresponding first measurement data, first attitude data, and attitude difference data, etc. into this error model, we can get:
[0069] ac11 - ∫{F(k1, k2, …, km; w1’)}dt = Δac1
[0070] where ∫{}dt represents integration over the corresponding time step.
[0071] Similarly, for the i-th time step, if the first measurement data is wi and the corresponding true value is wi’, then since ac1i - ac2i = Δaci, and ac2i = ∫(wi)dt, wi = F(k1, k2, …, km; wi’), therefore, substituting the corresponding first measurement data, first attitude data, and attitude difference data, etc. into this error model, we can get:
[0072] ac1i - ∫{F(k1, k2, …, km; wi’)}dt = Δaci
[0073] Theoretically, after obtaining multiple above equations, a system of equations can be obtained by simultaneously solving multiple equations, and by solving this system of equations, the specific values of each error parameter can be obtained, thereby clarifying the first error of the inertial measurement unit.
[0074] It should be noted that the time step is essentially the time interval for determining the attitude difference data. If the time step is short, the accuracy of error correction is relatively high; if the time step is long, the calculation amount can be reduced. In practical applications, a suitable time step (e.g., 1 second) can be selected according to experience, statistical data, simulation data, etc., and the embodiments of the present application do not limit this.
[0075] In summary, whether it is the first attitude change data or the second attitude change data, they are essentially data used to reflect the changes in the attitude of the vehicle over time. The attitude difference data represents the difference between the attitude changes determined by two different functional units, namely the positioning unit and the inertial measurement unit, and this difference can be considered to be caused by the error of the inertial measurement unit. By further analyzing and processing the attitude difference data, the error of the inertial measurement unit can be identified, providing an important basis for subsequent error correction.
[0076] Taking a gyroscope as an example, the process of determining the first error will be elaborated below.
[0077] In some optional implementation manners, the first attitude data includes a first attitude angle, the first measurement data includes first angular velocity data, and the attitude change data includes the degree of attitude angle change; correspondingly, according to the first attitude data corresponding to the time step and the first attitude data corresponding to the previous time step, determining the first attitude change data corresponding to the time step includes: performing a difference process on the first attitude angle corresponding to the time step and the first attitude angle corresponding to the previous time step to obtain the degree of the first attitude angle change corresponding to the time step; determining the second attitude change data corresponding to the time step according to the first measurement data corresponding to the time step, including: performing an integration process on the first angular velocity data corresponding to the time step to obtain the degree of the second attitude angle change corresponding to the time step.
[0078] That is to say, for a gyroscope, the first measurement data is data about angular velocity. By performing an integration operation on the angular velocity, the change in the attitude angle can be obtained, which is equivalent to determining the degree of the second attitude angle change. Comparing it with the corresponding degree of the first attitude angle change, the degree of attitude angle difference can be obtained, and this degree of attitude angle difference can be regarded as the difference angle caused by the error of the gyroscope.
[0079] Figure 2 This is a schematic diagram of an attitude angle provided by an embodiment of the present application. Refer to Figure 2 , within the first time step, taking α0 as the initial attitude angle, the positioning unit measures that the attitude angle of the vehicle changes from α0 to α11, and the corresponding degree of the first attitude angle change ac11 is (α11 - α0). The inertial measurement unit measures that the attitude angle of the vehicle changes from α0 to α21, and the corresponding degree of the second attitude angle change ac21 is (α21 - α0). Therefore, the corresponding degree of attitude angle difference △ac1 can be determined as [(α21 - α0) - (α11 - α0)] = α21 - α11, as shown by △α1 in Figure 2 .
[0080] At the second time step, with α11 as the initial attitude angle, the positioning unit measures that the attitude angle of the vehicle changes from α11 to α12, and the corresponding first attitude angle change degree ac12 is (α12 - α11). The inertial measurement unit measures that the attitude angle of the vehicle changes from α11 to α22, and the corresponding second attitude angle change degree ac22 is (α22 - α21). Therefore, the corresponding attitude angle difference degree △ac2 can be determined as [(α22 - α11) - (α12 - α11)] = α22 - α12, as shown in Figure 2 △α2 shown in
[0081] And so on. For each time step, the positioning unit can obtain the first attitude angle change degree of the vehicle, and the gyroscope can also obtain the second attitude angle change degree of the vehicle, and determine the corresponding attitude angle difference degree according to the difference between the two.
[0082] In some optional implementation manners, the first error of the gyroscope may include at least one of the following: zero bias error, scale factor error. For a gyroscope, its output value usually needs to be multiplied by a scale factor to be converted into an angular velocity. If the scale factor is inaccurate, there is a scale factor error; the zero bias error of the gyroscope is the error caused by the zero bias. The zero bias refers to the deviation value between the measured value output by the gyroscope and the true value when the gyroscope is in a stationary state.
[0083] Exemplarily, the error model of the gyroscope can be characterized as w = k1×w’ + k2, where w represents the first measurement data (for example, angular velocity data) measured by the gyroscope, w’ represents the true value corresponding to the first measurement data, k1 represents the scale factor error, and k2 represents the zero bias error. For the attitude angle difference degree of each time step, it is all caused by the difference between w and w’, and this difference is only related to the error parameter k1 and the error parameter k2. Therefore, after obtaining multiple attitude angle difference degrees, the values of k1 and k2 can be estimated through some optimization algorithms, so as to obtain the first error of the gyroscope.
[0084] Exemplarily, for the first time step, since the corresponding first attitude change data ac11 is relatively accurate data determined by the positioning unit, therefore, a relatively accurate first measurement data w1” can be estimated according to the first attitude change data ac11 corresponding to the first time step, and w1” is regarded as the true measurement data w1’ of the gyroscope. Further, since ac11 - ac21 = △ac1, and ac21 = ∫(w1)dt, w1 = k1×w1’ + k2, w1’ = w1”, therefore, combining the above multiple formulas, we can get:
[0085] ac11 - ∫(w1)dt = ac11 - ∫(k1×w1’ + k2)dt = ac11 - ∫(k1×w1” + k2)dt = △ac1
[0086] That is: ac11 - ∫(k1×w1” + k2)dt = △ac1, where only k1 and k2 are error parameters to be solved, and other parameters are known.
[0087] Similarly, for the second time step, it is also considered that the corresponding first attitude change data ac12 is relatively accurate data determined by the positioning unit. Therefore, based on the first attitude change data ac12 corresponding to the second time step, a relatively accurate first measurement data w2” can be estimated, and w2” is regarded as the true measurement data w2’ of the gyroscope. Further, since ac12 - ac22 = △ac2, and ac22 = ∫(w2)dt, w2 = k1×w2’ + k2, w2’ = w2”, thus, combining the above multiple formulas, we can obtain:
[0088] ac12 - ∫(w2)dt = ac12 - ∫(k1×w2’ + k2)dt = ac12 - ∫(k1×w2” + k2)dt = △ac2
[0089] That is: ac12 - ∫(k1×w2” + k2)dt = △ac2, where only k1 and k2 are error parameters to be solved, and other parameters are known.
[0090] By simultaneously solving ac11 - ∫(k1×w1” + k2)dt = △ac1 and ac12 - ∫(k1×w2” + k2)dt = △ac2, the values of k1 and k2 can be obtained, thereby clarifying the first error of the gyroscope.
[0091] For example, assume that the time step is 0.5 seconds, and for the first time step, the value of the first attitude angle change degree ac11 is 3°, and the value of the second attitude angle change degree ac21 is 3.55°. The attitude angle difference degree is 3.55° - 3° = 0.55°. First, based on the first attitude angle change degree ac11, it can be considered that the attitude angle of the vehicle has changed by 3° within the first time step. Therefore, it can be estimated that the true angular velocity w1” of the vehicle should be (3° / 0.5) = 6°. That is to say, if the gyroscope has no first error, the true value w1’ of the first measurement data measured by it should also be 6°. Substituting it into ac11 - ∫(k1×w1” + k2)dt = △ac1, we can obtain Equation (1):
[0092] 3° - (k1×6° + k2)×0.5 = 0.55° (1)
[0093] Among them, the integration of the first measurement data at the 1st time step is simplified to a simple multiplication operation.
[0094] For the 2nd time step, the value of the first attitude angle change degree ac11 is 4°, and the value of the second attitude angle change degree ac21 is 4.65°. The attitude angle difference degree is 4.65° - 4° = 0.65°. First, according to the first attitude angle change degree ac12, it can be considered that the attitude angle of the vehicle changes by 4° within the 1st time step. Therefore, it can be estimated that the true angular velocity w1” of the vehicle should be (4° / 0.5) = 8°. That is to say, if there is no first error in the gyroscope, the true value w2’ of the first measurement data measured by it should also be 8°. Substituting it into ac12 - ∫(k1 × w2” + k2)dt = △ac2, the formula (2) can be obtained:
[0095] 4° - (k1 × 8° + k2) × 0.5 = 0.65° (2)
[0096] By simultaneously solving formula (1) and formula (2), k1 = 1.1 and k2 = 0.5 can be obtained. Thus, it can be known that the scale factor error of the gyroscope is 1.1 and the zero bias error is 0.5.
[0097] Within the 3rd time step and subsequent time steps, the first measurement data of these time steps can be corrected based on the already determined scale factor error and zero bias error. In addition, the first attitude data and the first measurement data of these time steps can also be used to continue the error estimation, which is not limited in the embodiments of the present application.
[0098] In some alternative implementation manners, the first error of the inertial measurement unit can also be estimated by means of curve fitting or the like.
[0099] Figure 3 This is a schematic diagram for estimating a first error provided by the embodiments of the present application. Referring to Figure 3 , for the 1st time step, a relatively accurate first measurement data w1” can be estimated according to the corresponding first attitude change data ac11. Regarding this first measurement data w1” as the true measurement value w1’ of the inertial measurement unit, and plotting the true measurement value w1’ and the corresponding first measurement data w1 in a preset coordinate system, the scatter point p1 corresponding to the 1st time step is obtained. Among them, the coordinate system uses the true measurement value w’ as the horizontal axis and the first measurement data w as the vertical axis.
[0100] For the second time step, a relatively accurate first measurement data w2” can be estimated according to the corresponding first attitude change data ac12. This first measurement data w2” is regarded as the true measurement value w2’ of the inertial measurement unit, and the true measurement value w2’ and the corresponding first measurement data w2 are plotted in a preset coordinate system to obtain a scatter point p2 corresponding to the second time step.
[0101] And so on, for the i-th time step, a relatively accurate first measurement data wi” can be estimated according to the corresponding first attitude change data ac1i. This first measurement data wi” is regarded as the true measurement value wi’ of the inertial measurement unit, and the true measurement value wi’ and the corresponding first measurement data wi are plotted in a preset coordinate system to obtain a scatter point pi.
[0102] Furthermore, by fitting the above-mentioned multiple scatter points into corresponding curves, a line corresponding to wi = k1×wi’ + k2 can be obtained. The error parameter k1 can be determined according to the slope of this line, and the error parameter k2 can be determined according to the intersection position of this line and the w-axis, thereby clarifying the first error of the inertial measurement unit.
[0103] Furthermore, considering that the first error of the inertial measurement unit may remain unchanged or change slightly within a period of time, therefore, it is not necessary to continuously estimate the error of the inertial measurement unit. Instead, the error calibration can be performed first according to the already estimated first error, and the first error of the inertial measurement unit can be re-estimated when necessary.
[0104] In some optional implementation manners, the error of the inertial measurement unit is estimated according to the first attitude data of the positioning unit of the vehicle within the first preset time and the first measurement data of the inertial measurement unit of the head-up display system of the vehicle within the first preset time, and the first error of the inertial measurement unit is determined, including: under the condition of meeting the preset conditions, estimating the error according to the first attitude data and the first measurement data within the first preset time to determine the first error of the inertial measurement unit; wherein, the preset conditions include at least one of the following: being in the initial startup stage, the attitude accuracy rate being lower than the preset accuracy rate threshold, and receiving an error estimation request.
[0105] In other words, the error of the inertial measurement unit in the head-up display system can be estimated when the vehicle or the head-up display system is in the initial startup stage, or the error of the inertial measurement unit can be estimated when it is determined that the attitude accuracy rate of the vehicle is low, or the error of the inertial measurement unit can be estimated in response to an error estimation request.
[0106] It should be noted that the above is only an example of the preset conditions, and the embodiments of the present application are not limited thereto.
[0107] In some alternative implementation manners, after obtaining the first error of the inertial measurement unit, in step S12, the second measurement data of the inertial measurement unit within a second preset time can be corrected for error according to the first error, so as to obtain corrected and accurate measurement data (i.e., corrected measurement data).
[0108] Exemplarily, determining the first error of the inertial measurement unit includes a scale factor error k1 and a bias error k2. Assuming that the second measurement data is w1, then it can be determined that w1 = k1×w1'+k2. Based on this, the corrected measurement data w1'=(w1 - k2) / k1 can be solved.
[0109] It should be noted that the second preset time is a time period after the first preset time. That is, after estimating the first error within the first preset time, the second measurement data within the second preset time can be corrected for error. Generally, the shorter the time interval between the second preset time and the first preset time, the smaller the possibility of change in the first error. Therefore, the better the effect of error correction. As the time interval between the second preset time and the first preset time increases, the possibility of change in the first error increases. Therefore, the accuracy of the corrected measurement data obtained by correcting the error based on the first error may also decrease accordingly, resulting in a corresponding deterioration in the error correction effect. The time interval between the second preset time and the first preset time refers to the time period between the start time of the second preset time and the end time of the first preset time. For example, if the first preset time corresponds to the time period from t1 to t2, and the second preset time corresponds to the time period from t3 to t4, then the time interval between the second preset time and the first preset time corresponds to the time period between t2 and t3, where t1 < t2, t3 < t4, and t2 < t3.
[0110] In some alternative implementation manners, the first preset time corresponds to the i-th time step, and the second preset time corresponds to the (i + 1)-th time step; or, the first preset time corresponds to the j-th to the (j + n)-th time steps, and the second preset time corresponds to the (j + n + 1)-th to the (j + m)-th time steps; where i, j, and n are all integers greater than or equal to 1, and m is an integer and m≥n + 1.
[0111] It can be seen therefrom that the first error determined in the previous time step can be used to calibrate the error of the second measurement data in the current time step; the first error determined in the previous time step can also be used to calibrate the error of the second measurement data in the current and several subsequent time steps; the first error determined in several previous time steps can also be used to calibrate the error of the second measurement data in the current time step; in addition, the first error determined in several previous time steps can also be used to calibrate the error of the second measurement data in the current and multiple subsequent time steps. The embodiments of the present application do not limit this.
[0112] In some alternative implementations, after obtaining the calibrated measurement data, in step S13, attitude calculation can be performed on the calibrated measurement data to obtain the first target attitude data, and in step S14, jitter compensation can be performed on the image to be displayed corresponding to the second preset time according to the first target attitude data to obtain the target image for display in the head-up display system.
[0113] Exemplarily, performing attitude calculation on the calibrated measurement data to obtain the first target attitude data includes: for the i-th time step, integrating the calibrated measurement data corresponding to this time step to obtain the target attitude change data corresponding to the i-th time step, and according to the first target attitude data of the (i - 1)-th time step and the target attitude change data corresponding to the i-th time step, the first target attitude data corresponding to the i-th time step can be obtained. Among them, the first target attitude data of the first time step is obtained according to the target attitude change data corresponding to the first time step and the initial attitude data.
[0114] For example, the calibrated measurement data includes calibrated angular velocity data, and the initial attitude angle is α0. Then, for the first time step, by integrating its calibrated angular velocity data w1, the target angle change degree △β1 can be obtained, so as to determine the target angle degree corresponding to the first time step as α0 + △β1; for the second time step, by integrating its calibrated angular velocity data w2, the target angle change degree △β2 can be obtained, so as to determine the target angle degree corresponding to the second time step as α0 + △β1 + △β2. And so on, the target angle degrees of each time step can be obtained.
[0115] It should be noted that the above methods for attitude calculation are only examples, and the embodiments of the present application are not limited thereto.
[0116] As described above, after obtaining the first target attitude data, jitter compensation can be performed on the image to be displayed based on the first target attitude data.
[0117] In some alternative implementations, the image to be displayed includes multiple image elements. When performing jitter compensation, the configuration information of at least some of the image elements can be adjusted, where the configuration information includes at least one of the size, position, and angle of the image elements.
[0118] In some alternative implementation manners, in step S14, performing jitter compensation on the image to be displayed corresponding to the second preset time according to the first target attitude data to obtain a target image for display in the head-up display system may include: determining target image elements and the compensation amount of the target image elements according to the first target attitude data, adjusting the configuration information of the corresponding target image elements according to the compensation amount to implement jitter compensation for the target image elements, and displaying the target image elements after jitter compensation in the head-up display system to obtain a target image corresponding to the real scene. Among them, the target image elements refer to the image elements that need to be jitter-compensated, and the compensation amount includes at least one of a size compensation amount, a position compensation amount, and an angle compensation amount.
[0119] Exemplarily, for the image elements of some dial data (such as vehicle speed), it only needs to be displayed in the head-up display system, and it is not required to correspond to the positions of some objects or facilities in the real scene. Therefore, when performing jitter compensation, jitter compensation may not be performed on this part of the image elements to reduce the data processing amount. For the image elements of some navigation indication data, it is required to correspond to the positions of the objects or facilities in the real scene. Therefore, this part of the image elements belongs to the target image elements and needs to be jitter-compensated. For example, if it is determined according to the first target attitude data that the attitude of the vehicle is that the vehicle head is raised and the raising angle is α, then control the image elements corresponding to the navigation indication data to move in the opposite direction by α to implement jitter compensation for the image elements and make their display positions correspond to the corresponding elements in the real scene.
[0120] It should be noted that the image to be displayed may be an Augmented Reality (AR) image or other types of images, and the embodiments of the present application do not limit this. And for an AR image, it is usually required to be integrated with the real road conditions, and the accuracy requirement for the vehicle attitude is relatively high. In some related technologies, vehicle attitude data is usually output through an ADAS system, etc. Since the transmission path between the ADAS system and the head-up display system is long and the time delay is large, it may cause the vehicle attitude data to not match the actual scene. Moreover, the output frequency of the ADAS system is low and it cannot output high-frequency attitude data. In the embodiments of the present application, the inertial measurement unit in the head-up display system does not have the problem of large time delay, and can also output high-frequency attitude data. And because of error calibration, the accuracy of the high-frequency and low-time-delay attitude data output by it is also relatively high, so that timely and accurate jitter compensation can be performed on the AR image to be displayed, and true AR display can be realized.
[0121] In some alternative implementation manners, when performing jitter compensation, the motion scene of the vehicle may also be combined to make the jitter compensation more accurate and obtain a target image that better matches the real scene.
[0122] In some alternative implementation manners, in step S13, according to the first target attitude data, performing jitter compensation on the to-be-displayed image corresponding to the second preset time to obtain a target image for display in the head-up display system may include: obtaining vehicle motion data of the vehicle within the second preset time; determining a motion scenario of the vehicle within the second preset time according to the vehicle motion data; determining a jitter compensation strategy according to the motion scenario and the first target attitude data; and performing jitter compensation on the to-be-displayed image according to the jitter compensation strategy to obtain the target image. The vehicle motion data is data for reflecting the motion condition of the vehicle, and may include vehicle body data (for example, odometer data, steering wheel angle data, etc.), map data (for example, slope data, etc.), and angular velocity data and acceleration data of an inertial measurement unit, etc., which are not limited in the embodiments of the present application.
[0123] In some alternative implementation manners, the to-be-displayed image includes a plurality of image elements. Correspondingly, the jitter compensation strategy includes adjusting the configuration information of at least some of the image elements, and the configuration information includes at least one of the size, position, and angle of the image element.
[0124] Exemplarily, the image elements in the to-be-displayed image include a navigation arrow element, a speed limit sign element, a preceding vehicle prompt element, etc. The jitter strategy may adjust at least one of the size, position, and angle of any one of the above image elements, so that the position of the adjusted image element is consistent with that of the corresponding element in the real world, and the situation that the position of the image element in the displayed image is inconsistent with that of the corresponding element in the real world due to jitter such as bumps during the driving of the vehicle is avoided.
[0125] For example, obtaining the slope data of the vehicle within the second preset time, determining that the vehicle is in a climbing motion scenario (for example, the process of driving out of an underground garage to the ground) according to the slope data, and determining that the slope is β; at the same time, determining that the attitude of the vehicle is that the vehicle head is raised, and the raising angle is α according to the first target attitude data. Based on this, it is possible to control the image element corresponding to the navigation indication data to move in the opposite direction by β - α to implement jitter compensation for the image element. Among them, controlling the image element corresponding to the navigation indication data to move in the opposite direction by β - α can, on the one hand, avoid the driver's line of sight from rising due to climbing and being unable to observe the visual field area below β from the horizontal plane, and on the other hand, perform adaptive jitter compensation for the raised attitude of the vehicle head, so that the image element corresponds to the element in the real scenario, and more accurate jitter compensation is achieved. It should be noted that if the motion scenario of the vehicle is not considered and the image element is directly moved in the opposite direction by -α, it may cause the image element to be located in the driver's visual blind area, making it impossible for the driver to observe the image element.
[0126] It can be seen from this that the motion scenario of the vehicle can be accurately identified through multi-source sensor data. When performing jitter compensation, the motion scenario is equivalent to the pre-input data, and a more accurate jitter compensation strategy can be generated.
[0127] In the embodiment of the present application, by performing jitter compensation on the image to be displayed, it is equivalent to performing pre-matching shifting and calibration on the remote display screen of the HUD, ensuring that the information in the far-field display remains relatively stationary with the real scene, achieving spatial alignment between the remote screen and the vehicle, so that during the movement of the vehicle, the remote screen is not interfered by the motion scenario, effectively alleviating the problem of the screen jumping randomly. Especially for AR-HUD, a true augmented reality display effect can be achieved.
[0128] In some optional implementation manners, after obtaining the first target attitude data, data verification can also be performed on the first target attitude data to determine whether the first target attitude data is accurate.
[0129] In some optional implementation manners, the method may further include: performing data verification on the first target attitude data according to the vehicle motion data within a second preset time and the second measurement data of the inertial measurement unit, obtaining a data verification result, and the data verification result is used to reflect the sensor fault information of the vehicle.
[0130] Among them, the vehicle motion data can be obtained through sensors such as an odograph (ODOgraph, ODO) and a steering wheel angle sensor. And since the vehicle motion data includes data obtained from sensor devices other than the inertial measurement unit, which is not exactly the same as the source data of the first target attitude data (i.e., the second measurement data used for attitude calculation), therefore, through this method, data verification can be performed on the first target attitude data and the corresponding data verification result can be obtained.
[0131] In some optional implementation manners, if the data verification result indicates that the first target attitude data passes the verification, it means that the sensors of the vehicle have not failed. If the data verification result indicates that the first target attitude data fails to pass the verification, it means that the sensors of the vehicle may have failed, and the specific sensors with failures and their failure reasons can be further determined to formulate corresponding fault handling solutions.
[0132] In some optional implementation manners, performing data verification on the first target attitude data according to the vehicle motion data within a second preset time and the second measurement data of the inertial measurement unit, obtaining a data verification result, includes: performing attitude calculation according to the vehicle motion data and the second measurement data to obtain a second target attitude data; obtaining a data verification result according to the first target attitude data and the second target attitude data.
[0133] Exemplarily, if the difference between the first target attitude data and the second target attitude data is less than or equal to the first preset threshold, it is considered that the first target attitude data passes the verification; otherwise, it is considered that the first target attitude data fails the verification. The first preset threshold can be determined according to experience, statistical data, simulation data, verification requirements, etc., and the embodiments of the present application do not limit this.
[0134] In some alternative implementation manners, the second target attitude data can be obtained by means of Kalman filtering.
[0135] Exemplarily, the second measurement data includes second angular velocity data and second acceleration data, and the vehicle motion data includes vehicle acceleration data; correspondingly, attitude calculation is performed according to the vehicle motion data and the second measurement data to obtain the second target attitude data, including: obtaining acceleration difference data according to the difference between the second acceleration data and the vehicle acceleration data; performing Kalman filtering processing on the acceleration difference data and the second angular velocity data to obtain the second target attitude data.
[0136] Among them, the Kalman filtering method belongs to an optimal estimation algorithm, which can be used for signal denoising and filtering of gyroscopes. By performing weighted fusion on the gyroscope output signal and other sensor signals (for example, the acceleration data output by the accelerometer), more accurate and stable attitude data can be obtained.
[0137] In some alternative implementation manners, the attitude calculation method based on the Kalman filtering method mainly utilizes the relationship between the system dynamics model (for example, the attitude dynamics model of the carrier) and the sensor measurement values, and fuses the measurement data at multiple moments in a recursive manner to obtain a more accurate attitude calculation result. In attitude calculation, the system state can be represented as the attitude angle or direction of an object. Through the system dynamics model, the state at the next moment can be predicted, and by fusing the current measurement value and the predicted value, the optimal state estimation result can be obtained. The two most important processing processes in the attitude calculation based on the Kalman filtering method are the prediction process and the update process. Among them, the prediction process refers to predicting the state and error covariance at the next moment based on the system dynamics model, using the state estimation and control input at the previous moment; the update process refers to updating the state estimation and error covariance according to the current measurement value and the predicted value by calculating the Kalman gain.
[0138] Exemplarily, first, two attitude angles are calculated through different sensors, that is, a first attitude angle is calculated through the second angular velocity data, and a second attitude angle is calculated through the acceleration difference data.
[0139]
[0140] where θ gyrorepresents the first attitude angle, w y represents the second angular velocity data, θ acc represents the second attitude angle, a x 、a y and a z are the acceleration difference data in the three coordinate axis directions.
[0141] Then, substitute the above attitude angles into the Kalman formula:
[0142]
[0143] where k represents the sequence number of the moment, Y k represents the system state, is the prior estimate of the system state, is the prior error covariance matrix, P k is the error covariance matrix, K k is the Kalman gain, is the attitude angle after fusion, Q and R are both adjustable parameters, Q represents the degree of trust, the larger Q is, the lower the degree of trust in is, R represents the degree of trust in Y k the larger R is, the lower the degree of trust in Y k is.
[0144] By performing iterative calculations in the above manner, the optimal estimate of the target angle can be obtained, that is, the second target attitude data can be obtained.
[0145] It should be noted that, in addition to judging whether the first target attitude data passes the verification by comparing the second target attitude data with the first target attitude data, it is also possible to directly compare the vehicle motion data with the calibrated measurement data of the inertial measurement unit, and data verification can also be achieved in this way. For example, the vehicle motion data includes the pitch angle of the vehicle, and its value is vaw1, and the value of the pitch angle of the vehicle in the calibrated measurement data is yaw2. If the difference between yaw1 and yaw2 is less than or equal to the second preset threshold, it is considered that the calibrated measurement data passes the verification, otherwise it is considered that the calibrated measurement data fails the verification. Among them, the second preset threshold can be determined according to experience, statistical data, simulation data, verification requirements, etc., and the embodiments of the present application do not limit this.
[0146] In some alternative implementation manners, after obtaining the data verification result by performing data verification according to the first target attitude data and the second target attitude data, the method may further include: selecting one of the first target attitude data and the second target attitude data according to the data verification result to perform jitter compensation on the image to be displayed corresponding to the second preset time, and obtaining the target image.
[0147] Exemplarily, according to the data verification result, selecting one of the first target attitude data and the second target attitude data to perform jitter compensation on the to-be-displayed image corresponding to the second preset time includes: when the data verification result is that the first target attitude data passes the verification, performing jitter compensation on the to-be-displayed image corresponding to the second preset time based on the first target attitude data; when the data verification result is that the first target attitude data fails to pass the verification, performing jitter compensation on the to-be-displayed image corresponding to the second preset time based on the second target attitude data.
[0148] It can be seen from this that if it is determined through the data verification result that the first target attitude data is inaccurate, the second target attitude data can be used to perform jitter compensation on the to-be-displayed image until the first target attitude data passes the data verification again, and then continue to use the first target attitude data for jitter compensation, so as to ensure that the jitter compensation for the to-be-displayed image is always accurate and improve the accuracy of the target image.
[0149] It should be noted that when the first target attitude data fails to pass the verification, the first attitude data of the positioning unit can also be used to perform jitter compensation on the to-be-displayed image corresponding to the second preset time. In other words, when the first target attitude data cannot be used, as long as the data that can accurately reflect the vehicle attitude can be used to perform jitter compensation on the to-be-displayed image to continuously provide the driver with an accurate head-up display image.
[0150] In some optional implementation manners, when it is determined that the preset verification condition is satisfied, the first target attitude data can be verified. For example, a data verification time period can be set, and every time this data verification time period is reached, it is determined that the preset verification condition is satisfied and data verification starts to be executed. It is also possible to determine that the preset verification condition is satisfied and start to execute data verification when the accuracy rate of the display image is lower than the preset image accuracy rate threshold. It is also possible to execute data verification when a verification request is received. The embodiments of the present application do not limit this.
[0151] The following combines Figure 4 and Figure 5 to expand and illustrate the display method of the embodiments of the present application.
[0152] Figure 4 is a schematic diagram of a display method provided by an embodiment of the present application. Referring to Figure 4 , the time dimension t includes multiple time steps. Among them, t0 is the initial moment, t0 to t1 corresponds to the first time step, t1 to t2 corresponds to the first time step,..., ti-1 to ti corresponds to the i-th time step, and so on. Assume that the initial attitude data at the moment t0 is a0.
[0153] For the first time step, the angular velocity data measured by the gyroscope is Rw1. After performing coordinate transformation on it, the angular velocity data w1 is obtained. Integrating this angular velocity data and combining it with the initial attitude data a0, the second attitude data a21 at time t1 can be obtained. At the same time, through the positioning unit of the vehicle, the first attitude data a11 of the vehicle at time t1 can be obtained. Performing a difference operation on a11 and a0 can obtain the first attitude change data ac11 corresponding to the first time step. Similarly, performing a difference operation on a21 and a0 can obtain the second attitude change data ac21 corresponding to the first time step, and the difference between ac11 and ac21 is the attitude difference data △ac1 corresponding to the first time step. This attitude difference data △ac1 is caused by the error of the inertial measurement unit. Therefore, based on this attitude difference data, the first error of the gyroscope can be estimated, and the angular velocity data of the second time step can be error-corrected based on this first error.
[0154] For the second time step, the angular velocity data measured by the gyroscope is Rw2. First, use the first error estimated in the first time step to correct the error of Rw2. After obtaining the corrected angular velocity data, perform coordinate transformation on this corrected angular velocity data to obtain the angular velocity data w2. Based on the angular velocity data w2, attitude calculation is performed to obtain the second attitude data a22 at time t2. At the same time, through the positioning unit of the vehicle, the first attitude data a12 of the vehicle at time t2 can be obtained. Performing a difference operation on a12 and a11 can obtain the first attitude change data ac12 corresponding to the second time step. Similarly, performing a difference operation on a22 and a21 can obtain the second attitude change data ac22 corresponding to the second time step, and the difference between ac12 and ac22 is the attitude difference data △ac2 corresponding to the second time step. This attitude difference data △ac2 is caused by the error of the inertial measurement unit. Therefore, based on this attitude difference data, the first error of the gyroscope can be estimated, and the angular velocity data of the third time step can be error-corrected based on this first error.
[0155] For the i-th time step, the angular velocity data measured by the gyroscope is Rwi. First, the error correction of Rwi is performed using the first error estimated at the (i-1)-th time step. After obtaining the corrected angular velocity data, the coordinate system transformation is then performed on the corrected angular velocity data to obtain the angular velocity data wi. Based on the angular velocity data wi, the attitude calculation is carried out to obtain the second attitude data a2i at time ti. At the same time, through the positioning unit of the vehicle, the first attitude data a1i of the vehicle at time ti can be obtained. By performing the difference operation on a1i and a1(i-1), the first attitude change data ac1i corresponding to the i-th time step can be obtained. Similarly, by performing the difference operation on a2i and a2(i-1), the second attitude change data ac2i corresponding to the i-th time step can be obtained, and the difference between ac1i and ac2i is the attitude difference data △aci corresponding to the i-th time step. This attitude difference data △aci is caused by the error of the inertial measurement unit. Therefore, based on this attitude difference data, the first error of the gyroscope can be estimated, and the error correction of the angular velocity data at the (i+1)-th time step is performed based on this first error.
[0156] It should be noted that within the second time step, the angular velocity data Rw2 is equivalent to the second measurement data, and the angular velocity data w2 is equivalent to the corrected measurement data. The second attitude data a22 is obtained through attitude calculation based on the corrected angular velocity data. Therefore, the second attitude data a22 is equivalent to the first target attitude data, and the jitter compensation of the image to be displayed corresponding to the second time step can be performed using a22 to obtain the target image corresponding to the second time step. Similarly, within the i-th time step, the angular velocity data Rwi is equivalent to the second measurement data, and the angular velocity data wi is equivalent to the corrected measurement data. The second attitude data a2i is obtained through attitude calculation based on the corrected angular velocity data. Therefore, the second attitude data a2i is equivalent to the first target attitude data, and the jitter compensation of the image to be displayed corresponding to the i-th time step can be performed using a2i to obtain the target image corresponding to the i-th time step.
[0157] It can be seen from this that within each time step, the first error of the inertial measurement unit is estimated, and the error correction of the measurement data at the subsequent time step is performed based on the first error estimated at the previous time step. Thus, the attitude calculation is carried out based on the measurement data after error calibration, and the attitude data obtained from the attitude calculation is output externally. Furthermore, the jitter compensation of the image to be displayed can be performed using these attitude data.
[0158] Figure 5 Schematic diagram of a display method provided by an embodiment of this application. Refer to Figure 5, based on the obtained vehicle motion data and the three-axis angular velocity and three-axis acceleration measured by the inertial measurement unit at the HUD end, the motion scenario of the vehicle is identified to determine the motion scenario of the vehicle, providing an important basis for generating the jitter compensation strategy in the subsequent steps.
[0159] In addition, according to the three-axis angular velocity of the inertial measurement unit and the installation information of the inertial measurement unit, after data preprocessing such as coordinate system conversion, the first measurement data in the same coordinate system as the positioning unit of the vehicle can be obtained. Combining the initial attitude data provided by the positioning unit, attitude calculation is performed for each time step, and the second attitude change data corresponding to each time step is obtained according to the attitude calculation result. For the positioning unit, the first attitude change data corresponding to each time step can also be obtained. Then, taking the first attitude change data as the reference data, combining the attitude difference data between the second attitude change data and the first attitude change data, the error of the inertial measurement unit is estimated to obtain the first error corresponding to the current time step. In the next time step, for the second measurement data to be processed, based on the first error determined in the previous time step, the second measurement data is first error-corrected, then the coordinate system of the error-corrected second measurement data is converted, and then attitude calculation is performed according to the data after coordinate system conversion, so as to obtain more accurate first target attitude data.
[0160] In some optional implementation manners, the positioning unit generates the first attitude data with a timestamp, transmits the first attitude data through a data link (the transmission may introduce a certain time delay), and sends it to the head-up display system end for latching; at the same time, the first measurement data measured by the inertial measurement unit and with a timestamp is also cached. Select the first attitude data at a certain moment as the initial attitude, determine an appropriate time step, use a recursive algorithm to estimate the first error of the inertial measurement unit in each time step, and after obtaining an accurate and reasonable first error, correct the second measurement data of the inertial measurement unit in the next time step to obtain corrected measurement data. By performing attitude calculation on the corrected measurement data, the first target attitude data can be obtained. And because the output frequency of the inertial measurement unit is high and it belongs to the unit at the head-up display system end with a small transmission delay, therefore, high-frequency and low-delay first target attitude data can be obtained. Further, after obtaining the first target attitude data, the jitter compensation can also be performed on the image to be displayed corresponding to the second preset time according to the first target attitude data to obtain the target image for display in the head-up display system. Repeating the above data processing process in each time step can obtain an accurate target image.
[0161] In addition, based on the vehicle motion data and the three-axis angular velocity and three-axis acceleration measured by the inertial measurement unit, after data processing through the Kalman filtering algorithm, second target attitude data can be obtained, and the first target attitude data can be verified based on the second target attitude data. When the first target attitude data passes the verification, a jitter compensation strategy is generated based on the first target attitude data and the motion scenario of the vehicle, and the jitter compensation is performed on the image to be displayed of the display device in the head-up display system based on this jitter compensation strategy to obtain an accurate target image; when the first target attitude data fails to pass the verification, a jitter compensation strategy can be generated based on the first attitude data of the positioning unit and the motion scenario of the vehicle, and the jitter compensation is performed on the image to be displayed of the display device in the head-up display system based on this jitter compensation strategy to obtain an accurate target image.
[0162] It should be noted that, in some alternative implementation manners, a dedicated fixing tooling can be designed to fix the industrial camera at the optimal measurement position to accurately capture the display area of the head-up display system and its environmental reference marks, thereby improving the repeatability and calibration accuracy and reducing the error of manual operation.
[0163] It can be understood that the above-mentioned various method embodiments mentioned in this application can be combined with each other to form a combined embodiment without violating the principle logic. Due to space limitations, this application will not elaborate further. Those skilled in the art can understand that in the above methods of the specific implementation manner, the specific execution order of each step should be determined according to its function and possible internal logic.
[0164] In a second aspect, an embodiment of this application provides a display device.
[0165] Figure 6 It is a block diagram of a display device provided by an embodiment of this application.
[0166] Referring to Figure 6 , an embodiment of this application provides a display device, and the display device 600 may include the following modules.
[0167] An estimation module 601, configured to perform error estimation based on the first attitude data of the positioning unit of the vehicle within a first preset time and the first measurement data of the inertial measurement unit of the head-up display system of the vehicle within the first preset time, and determine the first error of the inertial measurement unit;
[0168] A correction module 602, configured to perform error correction on the second measurement data of the inertial measurement unit within a second preset time according to the first error to obtain corrected measurement data;
[0169] A solution module 603, configured to perform attitude solution on the corrected measurement data to obtain first target attitude data;
[0170] A compensation module 604, configured to perform jitter compensation on a to-be-displayed image corresponding to a second preset time according to first target attitude data, so as to obtain a target image for display in a head-up display system.
[0171] In some optional implementation manners, when the estimation module 601 performs error estimation according to first attitude data of a positioning unit of a vehicle within a first preset time and first measurement data of an inertial measurement unit of the head-up display system of the vehicle within the first preset time to determine a first error of the inertial measurement unit, the following operations may be performed:
[0172] For any time step within the first preset time, determine first attitude change data corresponding to the time step according to the first attitude data corresponding to the time step and the first attitude data corresponding to the previous time step;
[0173] For any time step within the first preset time, determine second attitude change data corresponding to the time step according to the first measurement data corresponding to the time step;
[0174] Perform error estimation according to the first attitude change data and the second attitude change data to determine the first error of the inertial measurement unit.
[0175] In some optional implementation manners, the first attitude data includes a first attitude angle, the first measurement data includes first angular velocity data, and the attitude change data includes an attitude angle change degree; correspondingly, determining first attitude change data corresponding to the time step according to the first attitude data corresponding to the time step and the first attitude data corresponding to the previous time step includes:
[0176] Perform a difference process on the first attitude angle corresponding to the time step and the first attitude angle corresponding to the previous time step to obtain a first attitude angle change degree corresponding to the time step;
[0177] Determining second attitude change data corresponding to the time step according to the first measurement data corresponding to the time step includes:
[0178] Perform an integration process on the first angular velocity data corresponding to the time step to obtain a second attitude angle change degree corresponding to the time step.
[0179] In some optional implementation manners, performing error estimation according to the first attitude change data and the second attitude change data to determine the first error of the inertial measurement unit includes:
[0180] Obtain attitude difference data corresponding to each time step according to the first attitude change data and the second attitude change data corresponding to each time step;
[0181] Determine the first error of the inertial measurement unit according to the attitude difference data corresponding to each time step.
[0182] In some alternative implementations, the inertial measurement unit includes at least a gyroscope, and the first error of the gyroscope includes at least one of the following: bias error, scale factor error.
[0183] In some alternative implementations, when the estimation module 601 estimates the error based on the first attitude data of the vehicle's positioning unit within the first preset time and the first measurement data of the inertial measurement unit of the vehicle's head-up display system within the first preset time to determine the first error of the inertial measurement unit, it can be used to perform the following:
[0184] When the preset conditions are met, estimate the error based on the first attitude data and the first measurement data within the first preset time to determine the first error of the inertial measurement unit;
[0185] Among them, the preset conditions include at least one of the following: being in the initial startup stage, the attitude accuracy rate being lower than the preset accuracy rate threshold, receiving an error estimation request.
[0186] In some alternative implementations, the second measurement data includes second angular velocity data, and the corrected measurement data includes corrected angular velocity data; correspondingly, when the correction module 602 corrects the second measurement data of the inertial measurement unit within the second preset time according to the first error to obtain the corrected measurement data, it can be used to perform the following:
[0187] Correct the second angular velocity data within the second preset time according to the first error to obtain the corrected angular velocity data.
[0188] In some alternative implementations, the first preset time corresponds to the i-th time step, and the second preset time corresponds to the (i + 1)-th time step; or, the first preset time corresponds to the j-th to the (j + n)-th time steps, and the second preset time corresponds to the (j + n + 1)-th to the (j + m)-th time steps; where i, j, and n are all integers greater than or equal to 1, and m is an integer and m ≥ n + 1.
[0189] In some alternative implementations, when the compensation module 604 performs jitter compensation on the image to be displayed corresponding to the second preset time according to the first target attitude data to obtain the target image for display in the head-up display system, it can be used to perform the following:
[0190] Obtain the vehicle motion data of the vehicle within the second preset time;
[0191] Determine the motion scenario of the vehicle at the second preset time according to the vehicle motion data;
[0192] Determine a jitter compensation strategy according to the motion scenario and the first target attitude data;
[0193] Perform jitter compensation on the image to be displayed according to the jitter compensation strategy to obtain a target image.
[0194] In some alternative implementation manners, the image to be displayed includes a plurality of image elements; the jitter compensation strategy includes adjusting the configuration information of at least some of the image elements, and the configuration information includes at least one of the size, position, and angle of the image elements.
[0195] In some alternative implementation manners, the display device 600 may also be used to perform the following:
[0196] Perform data verification on the first target attitude data according to the vehicle motion data and the second measurement data of the inertial measurement unit within a second preset time to obtain a data verification result, and the data verification result is used to reflect the sensor fault information of the vehicle.
[0197] In some alternative implementation manners, performing data verification on the first target attitude data according to the vehicle motion data and the second measurement data of the inertial measurement unit within a second preset time to obtain a data verification result includes:
[0198] Perform attitude calculation according to the vehicle motion data and the second measurement data to obtain a second target attitude data;
[0199] Obtain a data verification result according to the first target attitude data and the second target attitude data.
[0200] In some alternative implementation manners, after performing data verification according to the first target attitude data and the second target attitude data to obtain a data verification result, the display device 600 may also be used to perform the following:
[0201] Select one of the first target attitude data and the second target attitude data according to the data verification result to perform jitter compensation on the image to be displayed corresponding to the second preset time to obtain a target image.
[0202] In some alternative implementation manners, selecting one of the first target attitude data and the second target attitude data according to the data verification result to perform jitter compensation on the image to be displayed corresponding to the second preset time includes:
[0203] In the case where the data verification result is that the first target attitude data passes the verification, perform jitter compensation on the image to be displayed corresponding to the second preset time based on the first target attitude data;
[0204] In the case where the data verification result indicates that the first target attitude data fails the verification, perform jitter compensation on the image to be displayed corresponding to the second preset time based on the second target attitude data.
[0205] In the embodiments of the present application, considering that the positioning unit of the vehicle can provide first attitude data with relatively high accuracy, therefore, the first attitude data can be used as the reference data. The error of the inertial measurement unit of the vehicle's head-up display system is determined by the estimation module, and the measurement data of the inertial measurement unit is corrected for error based on the determined error by the correction module. The attitude of the corrected measurement data is solved by the solution module to obtain relatively accurate target attitude data, and the compensation module is used to accurately perform jitter compensation on the image to be displayed based on the target attitude data, improving the matching degree between the target image and the real environment. Among them, since the inertial measurement unit has a high output frequency, the obtained target attitude data also has a high frequency, so that the image can be jitter-compensated in a timely manner; in addition, since the inertial measurement unit is an end unit of the head-up display system, compared with non-head-up display system end units, the transmission duration of the measurement data is reduced, and the time delay is also correspondingly reduced, which can effectively alleviate the situation where the displayed image is not synchronized with the actual information of the vehicle due to the time delay.
[0206] Each module in the above display device can be implemented in whole or in part by software, hardware, and their combination. The above modules can be embedded in the processor of the computer device in hardware form or independent of it, or stored in the memory of the computer device in software form, so that the processor can call and execute the operations corresponding to the above respective modules.
[0207] In a third aspect, embodiments of the present application provide a head-up display system.
[0208] Figure 7 It is a block diagram of a head-up display system provided by an embodiment of the present application.
[0209] Refer to Figure 7 , embodiments of the present application provide a head-up display system. The head-up display system 700 may include: an inertial measurement unit 701 and a display unit 702; wherein, the inertial measurement unit 701 is configured to obtain measurement information of the vehicle and send the measurement information to the display unit 702; the display unit 702 is configured to use the display method in any one of the embodiments of the present application to obtain a target image according to the measurement information and display the target image.
[0210] In some optional implementation manners, the measurement information of the vehicle obtained by the inertial measurement unit may include angular velocity data and / or acceleration data. For example, the measurement information may include the first measurement data and the second measurement data mentioned in the display method of the embodiments of the present application.
[0211] In some alternative implementation manners, within a first preset time, an inertial measurement unit collects first measurement data of a vehicle and sends the first measurement data to a display unit; the display unit receives the first measurement data, and performs error estimation based on first attitude data of a positioning unit of the vehicle within the first preset time and the first measurement data, so as to determine a first error of the inertial measurement unit. Within a second preset time, the inertial measurement unit collects second measurement data of the vehicle and sends the second measurement data to the display unit; the display unit corrects the error of the second measurement data according to the first error to obtain corrected measurement data, performs attitude resolution on the corrected measurement data to obtain first target attitude data, and performs jitter compensation on a to-be-displayed image corresponding to the second preset time according to the first target attitude data to obtain a target image for display in a head-up display system.
[0212] In an embodiment of the present application, by arranging an inertial measurement unit in a head-up display system, on the one hand, the high output frequency of the inertial measurement unit can be utilized to obtain high-frequency first target attitude data, so that image jitter compensation can be performed in a timely manner; on the other hand, since the inertial measurement unit is an end unit of the head-up display system, compared with a non-head-up display system end unit, the transmission duration of measurement data is reduced, and the time delay is also correspondingly reduced, which can effectively alleviate the situation that the displayed image is not synchronized with the actual information of the vehicle due to the time delay; in addition, since the cost of the inertial measurement unit is relatively low, accurate jitter compensation of the image can be achieved at a relatively low cost.
[0213] In some embodiments of the present disclosure, the functions or modules included in the device or system provided in the embodiments of the present disclosure can be used to execute the methods described in the above method embodiments. The specific implementation and technical effects can refer to the descriptions of the above method embodiments. For the sake of brevity, they will not be elaborated here.
[0214] In addition, the present application also provides an electronic device and a computer-readable storage medium, both of which can be used to implement any one of the display methods provided by the present application. The corresponding technical solutions and descriptions can refer to the corresponding records in the method part and will not be elaborated here.
[0215] Figure 8 It is a block diagram of an electronic device provided in an embodiment of the present application.
[0216] Refer to Figure 8, embodiments of the present application provide an electronic device, which includes: at least one processor 801; at least one memory 802, and one or more I / O interfaces 803, connected between the processor 801 and the memory 802; wherein, the memory 802 stores one or more computer programs executable by at least one processor 801, and the one or more computer programs are executed by at least one processor 801, so that at least one processor 801 can execute the above display method.
[0217] Each module in the above electronic device can be implemented in whole or in part by software, hardware, and their combination. The above modules can be embedded in or independent of the processor in the computer device in the form of hardware, or stored in the memory in the computer device in the form of software, so that the processor can call and execute the operations corresponding to the above modules.
[0218] Embodiments of the present application also provide a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor / processing core, the above display method is implemented. The computer-readable storage medium can be a volatile or non-volatile computer-readable storage medium.
[0219] Embodiments of the present application also provide a computer program product, including computer-readable code, or a non-volatile computer-readable storage medium carrying the computer-readable code. When the computer-readable code runs in the processor of the electronic device, the processor in the electronic device executes the above display method.
[0220] Those of ordinary skill in the art can understand that all or some of the steps in the methods disclosed above, and the functional modules / units in the systems and devices can be implemented as software, firmware, hardware, and their appropriate combinations. In the hardware implementation, the division between the functional modules / units mentioned above does not necessarily correspond to the division of physical components; for example, a physical component can have multiple functions, or a function or step can be executed by several physical components in cooperation. Some physical components or all physical components can be implemented as software executed by a processor, such as a central processing unit, a digital signal processor, or a microprocessor, or implemented as hardware, or implemented as an integrated circuit, such as an application-specific integrated circuit. Such software can be distributed on a computer-readable storage medium, which can include a computer storage medium (or non-transitory medium) and a communication medium (or transitory medium).
[0221] As is well known to those of ordinary skill in the art, the term computer storage medium includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storing information such as computer-readable program instructions, data structures, program modules, or other data. Computer storage media includes, but is not limited to, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM), static random access memory (SRAM), flash memory or other memory technologies, portable compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical disc storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store the desired information and that can be accessed by a computer. Additionally, as is well known to those of ordinary skill in the art, communication media typically embodies computer-readable program instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transmission mechanism, and can include any information delivery media.
[0222] The computer-readable program instructions described herein can be downloaded to each computing / processing device from a computer-readable storage medium or can be downloaded to an external computer or external storage device through a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. The network can include copper transmission cables, optical fiber transmission, wireless transmission, routers, firewalls, switches, gateway computers, and / or edge servers. A network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in a computer-readable storage medium in each computing / processing device.
[0223] The computer program instructions for performing the operations of the present application may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-related instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages such as Smalltalk, C++, etc., and conventional procedural programming languages such as the "C" language or similar programming languages. The computer-readable program instructions may be executed entirely on the user's computer, partially on the user's computer, executed as a stand-alone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., through the Internet using an Internet service provider). In some embodiments, by using the status information of the computer-readable program instructions to customize an electronic circuit, such as a programmable logic circuit, a field programmable gate array (FPGA), or a programmable logic array (PLA), the electronic circuit can execute the computer-readable program instructions to implement various aspects of the present application.
[0224] The computer program product described herein may be implemented specifically in the form of hardware, software, or a combination thereof. In an alternative embodiment, the computer program product is specifically embodied as a computer storage medium. In another alternative embodiment, the computer program product is specifically embodied as a software product, such as a Software Development Kit (SDK), etc.
[0225] Aspects of the present application are described herein with reference to the flowcharts and / or block diagrams of methods, apparatuses (systems), and computer program products according to embodiments of the present application. It should be understood that each block of the flowcharts and / or block diagrams, and the combinations of blocks in the flowcharts and / or block diagrams, can be implemented by computer-readable program instructions.
[0226] These computer-readable program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, or other programmable data processing apparatus to produce a machine such that the instructions, when executed by the processor of the computer or other programmable data processing apparatus, create means for implementing the functions / acts specified in one or more boxes of the flowchart and / or block diagram. These computer-readable program instructions may also be stored in a computer-readable storage medium that causes a computer, a programmable data processing apparatus, and / or other devices to function in a particular manner, such that the computer-readable medium storing the instructions comprises a manufacture including instructions that implement various aspects of the functions / acts specified in one or more boxes of the flowchart and / or block diagram.
[0227] The computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices so that a series of operational steps are performed on the computer, other programmable data processing apparatus, or other devices to produce a computer-implemented process such that the instructions executed on the computer, other programmable data processing apparatus, or other devices implement the functions / acts specified in one or more boxes of the flowchart and / or block diagram.
[0228] The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present application. In this regard, each box in the flowchart or block diagram may represent a module, a segment of code, or a portion of an instruction, and the module, segment of code, or portion of an instruction includes one or more executable instructions for implementing the specified logical function. In some alternative implementations, the functions noted in the boxes may occur out of the order noted in the figures. For example, two consecutive boxes may, in fact, be executed substantially in parallel, or they may sometimes be executed in the reverse order, depending on the functions involved. It should also be noted that each box in the block diagrams and / or flowcharts, and combinations of boxes in the block diagrams and / or flowcharts, can be implemented by a dedicated hardware-based system that performs the specified functions or acts, or by a combination of dedicated hardware and computer instructions.
[0229] Example embodiments have been disclosed herein, and although specific terms are employed, they are used in a generic and descriptive sense only and not for purposes of limitation. In some instances, it will be apparent to those skilled in the art that, unless otherwise explicitly stated, features, characteristics, and / or elements described in connection with a particular embodiment may be used separately or in combination with other embodiments. Accordingly, those skilled in the art will appreciate that various forms and details may be changed without departing from the scope of the present application as set forth by the appended claims.
Claims
1. A display method, characterized in that, The method includes: Performing error estimation based on the first attitude data of the positioning unit of the vehicle within a first preset time and the first measurement data of the inertial measurement unit of the head-up display system of the vehicle within the first preset time, and determining the first error of the inertial measurement unit; Performing error correction on the second measurement data of the inertial measurement unit within a second preset time according to the first error to obtain corrected measurement data; Performing attitude calculation on the corrected measurement data to obtain first target attitude data; Performing jitter compensation on the to-be-displayed image corresponding to the second preset time according to the first target attitude data to obtain a target image for display in the head-up display system.
2. The method according to claim 1, wherein The performing error estimation based on the first attitude data of the positioning unit of the vehicle within a first preset time and the first measurement data of the inertial measurement unit of the head-up display system of the vehicle within the first preset time, and determining the first error of the inertial measurement unit includes: For any time step within the first preset time, determining first attitude change data corresponding to the time step according to the first attitude data corresponding to the time step and the first attitude data corresponding to the previous time step; For any time step within the first preset time, determining second attitude change data corresponding to the time step according to the first measurement data corresponding to the time step; Performing error estimation according to the first attitude change data and the second attitude change data to determine the first error of the inertial measurement unit.
3. The method according to claim 2, characterized in that, The first attitude data includes a first attitude angle, the first measurement data includes first angular velocity data, and the attitude change data includes attitude angle change degrees; The determining first attitude change data corresponding to the time step according to the first attitude data corresponding to the time step and the first attitude data corresponding to the previous time step includes: Performing difference processing on the first attitude angle corresponding to the time step and the first attitude angle corresponding to the previous time step to obtain first attitude angle change degrees corresponding to the time step; The determining second attitude change data corresponding to the time step according to the first measurement data corresponding to the time step includes: Performing integration processing on the first angular velocity data corresponding to the time step to obtain second attitude angle change degrees corresponding to the time step.
4. The method according to claim 2, wherein The performing error estimation according to the first attitude change data and the second attitude change data to determine the first error of the inertial measurement unit includes: Obtaining attitude difference data corresponding to each time step according to the first attitude change data and the second attitude change data corresponding to each time step; Determining the first error of the inertial measurement unit according to the attitude difference data corresponding to each time step.
5. The method according to any one of claims 1-4, characterized in that, The inertial measurement unit includes at least a gyroscope, and the first error of the gyroscope includes at least one of the following: zero bias error, scale factor error.
6. The method according to claim 1, wherein Performing error estimation based on the first attitude data of the positioning unit of the vehicle within a first preset time and the first measurement data of the inertial measurement unit of the head-up display system of the vehicle within the first preset time to determine the first error of the inertial measurement unit, including: When the preset conditions are met, performing error estimation based on the first attitude data and the first measurement data within the first preset time to determine the first error of the inertial measurement unit; Wherein, the preset conditions include at least one of the following: being in the initial startup phase, the attitude accuracy rate being lower than a preset accuracy rate threshold, and receiving an error estimation request.
7. The method according to claim 1, wherein The second measurement data includes second angular velocity data, and the calibrated measurement data includes calibrated angular velocity data; Performing error correction on the second measurement data of the inertial measurement unit within a second preset time according to the first error to obtain calibrated measurement data, including: Performing error correction on the second angular velocity data within the second preset time according to the first error to obtain the calibrated angular velocity data.
8. The method according to claim 1 or 7, characterized in that, The first preset time corresponds to the i-th time step, and the second preset time corresponds to the (i + 1)-th time step; or, the first preset time corresponds to the j-th to (j + n)-th time steps, and the second preset time corresponds to the (j + n + 1)-th to (j + m)-th time steps; Wherein, i, j, and n are all integers greater than or equal to 1, and m is an integer and m ≥ n + 1.
9. The method according to claim 1, characterized in that, Performing jitter compensation on the image to be displayed corresponding to the second preset time according to the first target attitude data to obtain a target image for display in the head-up display system, including: Obtaining the vehicle motion data of the vehicle within the second preset time; Determining the motion scenario of the vehicle within the second preset time according to the vehicle motion data; Determining a jitter compensation strategy according to the motion scenario and the first target attitude data; Performing jitter compensation on the image to be displayed according to the jitter compensation strategy to obtain the target image.
10. The method according to claim 9, characterized in that, The image to be displayed includes a plurality of image elements; The jitter compensation strategy includes adjusting the configuration information of at least some of the image elements, and the configuration information includes at least one of the size, position, and angle of the image elements.
11. The method according to claim 1, wherein The method further includes: Performing data verification on the first target attitude data according to the vehicle motion data within the second preset time and the second measurement data of the inertial measurement unit to obtain a data verification result, and the data verification result is used to reflect the sensor fault information of the vehicle.
12. The method according to claim 11, wherein Performing data verification on the first target attitude data according to the vehicle motion data within the second preset time and the second measurement data of the inertial measurement unit to obtain a data verification result, including: Performing attitude solution according to the vehicle motion data and the second measurement data to obtain a second target attitude data; Obtaining the data verification result according to the first target attitude data and the second target attitude data.
13. The method according to claim 12, wherein After obtaining the data verification result according to the first target attitude data and the second target attitude data, the method further includes: According to the data verification result, select one of the first target attitude data and the second target attitude data to perform jitter compensation on the image to be displayed corresponding to the second preset time, so as to obtain the target image.
14. The method according to claim 13, wherein The step of, according to the data verification result, selecting one of the first target attitude data and the second target attitude data to perform jitter compensation on the image to be displayed corresponding to the second preset time includes: When the data verification result indicates that the first target attitude data passes the verification, perform jitter compensation on the image to be displayed corresponding to the second preset time based on the first target attitude data; When the data verification result indicates that the first target attitude data fails to pass the verification, perform jitter compensation on the image to be displayed corresponding to the second preset time based on the second target attitude data.
15. A display device, characterized in that, The device includes: An estimation module, configured to perform error estimation based on the first attitude data of the vehicle's positioning unit within a first preset time and the first measurement data of the vehicle's head-up display system's inertial measurement unit within the first preset time, and determine the first error of the inertial measurement unit; A correction module, configured to perform error correction on the second measurement data of the inertial measurement unit within a second preset time according to the first error to obtain corrected measurement data; A solution module, configured to perform attitude solution on the corrected measurement data to obtain first target attitude data; A compensation module, configured to perform jitter compensation on the image to be displayed corresponding to the second preset time according to the first target attitude data to obtain a target image for display in the head-up display system.
16. A head-up display system, characterized in that, The system at least includes: an inertial measurement unit and a display unit; The inertial measurement unit is configured to obtain measurement information of the vehicle and send the measurement information to the display unit; The display unit is configured to use the display method according to any one of claims 1-14, obtain a target image according to the measurement information, and display the target image.
17. An electronic device, characterized in that, It includes: At least one processor; And A memory communicatively connected to the at least one processor; wherein, The memory stores one or more computer programs executable by the at least one processor, and the one or more computer programs are executed by the at least one processor so that the at least one processor can execute the display method according to any one of claims 1-14.
18. A computer-readable storage medium having a computer program stored thereon, characterized in that, The computer program, when executed by the processor, implements the display method according to any one of claims 1-14.