[go: up one dir, main page]

CN113465632B - Sensor calibration method, device, equipment and medium - Google Patents

Sensor calibration method, device, equipment and medium Download PDF

Info

Publication number
CN113465632B
CN113465632B CN202111029335.2A CN202111029335A CN113465632B CN 113465632 B CN113465632 B CN 113465632B CN 202111029335 A CN202111029335 A CN 202111029335A CN 113465632 B CN113465632 B CN 113465632B
Authority
CN
China
Prior art keywords
sensor
deviation value
dimensional
target
calibrating
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202111029335.2A
Other languages
Chinese (zh)
Other versions
CN113465632A (en
Inventor
张建明
乔振
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing LLvision Technology Co ltd
Original Assignee
Beijing LLvision Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing LLvision Technology Co ltd filed Critical Beijing LLvision Technology Co ltd
Priority to CN202111029335.2A priority Critical patent/CN113465632B/en
Publication of CN113465632A publication Critical patent/CN113465632A/en
Application granted granted Critical
Publication of CN113465632B publication Critical patent/CN113465632B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C25/00Manufacturing, calibrating, cleaning, or repairing instruments or devices referred to in the other groups of this subclass

Landscapes

  • Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Gyroscopes (AREA)

Abstract

The invention provides a method, a device, equipment and a medium for calibrating a sensor, wherein the method comprises the following steps: acquiring three-dimensional attitude information detected by a target sensor, wherein the target sensor comprises an acceleration sensor, a geomagnetic sensor and a gyroscope; reading a calibration offset of the target sensor from a memory; the calibration deviation value is a deviation value which is obtained by calibrating the three-dimensional posture information of the target sensor according to the posture filtering algorithm and accords with preset precision; and calibrating the three-dimensional posture information according to the posture filtering algorithm by the calibration deviation value to obtain the three-dimensional posture information of the target. By reading the calibration offset of the target sensor from memory, calibration efficiency is improved.

Description

Sensor calibration method, device, equipment and medium
Technical Field
The present invention relates to the field of sensors, and in particular, to a method, apparatus, device, and medium for calibrating a sensor.
Background
Currently, some head display devices or handles related to Virtual Reality (VR), augmented Reality (Augmented Reality, AR) and the like generally calculate the displacement of the device by detecting the rotation of the head in different directions, that is, detecting the angle value of the rotation of the device on X, Y, Z three axes, and direct a specific portion in the panoramic image to follow the head for displaying. However, before using these devices, it is generally necessary to implement initial positioning by using a 3-rotation-angle degree of freedom (3 Degree of freedom, abbreviated as 3 DOF) mode, that is, acceleration 6 plane calibration, gyroscope rest calibration, and geomagnetic 8-word calibration. However, these calibrations typically require a recalibration pass after each power up, which is relatively time consuming.
Disclosure of Invention
The invention provides a calibration method, a device, equipment and a medium for a sensor, which improve the calibration efficiency by reading a calibration deviation value of a target sensor from a memory.
In a first aspect, the present invention provides a method for calibrating a sensor, comprising: acquiring three-dimensional attitude information detected by a target sensor, wherein the target sensor comprises an acceleration sensor, a geomagnetic sensor and a gyroscope; reading a calibration offset of the target sensor from a memory; the calibration deviation value is a deviation value which is obtained by calibrating the three-dimensional posture information of the target sensor according to the posture filtering algorithm and accords with preset precision; and calibrating the three-dimensional posture information according to the posture filtering algorithm by the calibration deviation value to obtain the three-dimensional posture information of the target.
According to the calibration method of the sensor provided by the invention, the calibration deviation value which is obtained by calibrating the three-dimensional posture information of the target sensor according to the posture filtering algorithm and meets the preset precision comprises the following steps: acquiring three-dimensional attitude information detected by the target sensor; calibrating the three-dimensional attitude information according to an attitude filtering algorithm to obtain target three-dimensional attitude information and the calibration deviation value; judging whether the calibration deviation value reaches a preset precision; if the calibration deviation value reaches the preset precision, storing the calibration deviation value into the memory; and if the calibration deviation value does not reach the preset precision, acquiring the three-dimensional attitude information detected by the target sensor.
According to the calibration method of the sensor provided by the invention, after the three-dimensional attitude information detected by the target sensor is obtained, the method further comprises the following steps: performing coordinate transformation on the three-dimensional posture information detected by the target sensor to obtain three-dimensional posture information under a coordinate system of the target sensor installation equipment; the step of calibrating the three-dimensional posture information according to the posture filtering algorithm by the calibration deviation value to obtain target three-dimensional posture information comprises the following steps: according to the gesture filtering algorithm, calibrating the three-dimensional gesture information after coordinate transformation through the calibration deviation value to obtain the target three-dimensional gesture information; the step of calibrating the three-dimensional posture information according to a posture filtering algorithm to obtain target three-dimensional posture information and the calibration deviation value comprises the following steps: and calibrating the three-dimensional posture information after coordinate transformation according to a posture filtering algorithm to obtain the target three-dimensional posture information and the calibration deviation value.
In a second aspect, the invention further provides a calibration device of a sensor, which comprises a first processing module, a second processing module and a third processing module, wherein the first processing module is used for acquiring three-dimensional posture information detected by a target sensor, and the target sensor comprises an acceleration sensor, a geomagnetic sensor and a gyroscope; a second processing module for reading the calibration offset of the target sensor from memory; the calibration deviation value is a deviation value which is obtained by calibrating the three-dimensional posture information of the target sensor according to the posture filtering algorithm and accords with preset precision; and the third processing module is used for calibrating the three-dimensional posture information according to a posture filtering algorithm through the calibration deviation value to obtain target three-dimensional posture information.
In a third aspect, the present invention also provides a head-mounted device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, the processor implementing the steps of the method of calibrating a sensor as described in any of the above when the program is executed.
In a fourth aspect, the invention also provides a non-transitory computer readable storage medium having stored thereon a computer program which, when executed by a processor, implements the steps of a method of calibrating a sensor as described in any of the above.
According to the calibration method, the device, the equipment and the medium of the sensor, the three-dimensional attitude information detected by the target sensor is obtained, and the target sensor comprises an acceleration sensor, a geomagnetic sensor and a gyroscope; reading a calibration offset of the target sensor from the memory; the calibration deviation value is a deviation value which is obtained by calibrating three-dimensional posture information of the target sensor according to a posture filtering algorithm and accords with preset precision; and calibrating the three-dimensional posture information through the calibration deviation value according to the posture filtering algorithm to obtain the three-dimensional posture information of the target. It can be seen that the calibration deviation value of the corresponding target sensor read from the memory is a deviation value which accords with the preset precision and is obtained by calibrating the three-dimensional posture information before, so that the target sensor does not need to be recalibrated every time later, but the stored calibration deviation value is directly called, and the three-dimensional posture information of the target can be obtained more quickly and accurately.
Drawings
In order to more clearly illustrate the invention or the technical solutions of the prior art, the following description will briefly explain the drawings used in the embodiments or the description of the prior art, and it is obvious that the drawings in the following description are some embodiments of the invention, and other drawings can be obtained according to the drawings without inventive effort for a person skilled in the art.
FIG. 1 is a flow diagram of some embodiments of a method of calibrating a sensor provided in accordance with the present invention;
FIG. 2a is a schematic diagram of a sensor configuration for a method of calibrating a sensor in accordance with the present invention;
FIG. 2b is a flow chart of an application scenario of the sensor calibration method according to the present invention;
FIG. 2c is a flow chart of an application scenario pertaining to the initialization step of FIG. 2 b;
FIG. 2d is a flowchart of an application scenario of the updated geomagnetic data of FIG. 2 b;
FIG. 2e is a flow chart of an application scenario with respect to updating IMU data of FIG. 2 b;
FIG. 3 is a schematic diagram of some embodiments of a calibration device for a sensor provided in accordance with the present invention;
fig. 4 is a schematic structural diagram of a head-mounted device provided according to the present invention.
Detailed Description
For the purpose of making the objects, technical solutions and advantages of the present invention more apparent, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings, and it is apparent that the described embodiments are some embodiments of the present invention, not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the invention without making any inventive effort, are intended to be within the scope of the invention.
It should be noted that, for convenience of description, only the portions related to the present invention are shown in the drawings. Embodiments of the invention and features of the embodiments may be combined with each other without conflict.
It should be noted that the terms "first," "second," and the like herein are merely used for distinguishing between different devices, modules, or units and not for limiting the order or interdependence of the functions performed by such devices, modules, or units.
It should be noted that references to "one", "a plurality" and "a plurality" in this disclosure are intended to be illustrative rather than limiting, and those skilled in the art will appreciate that "one or more" is intended to be construed as "one or more" unless the context clearly indicates otherwise.
The names of messages or information interacted between the devices in the embodiments of the present invention are for illustrative purposes only and are not intended to limit the scope of such messages or information.
The invention will be described in detail below with reference to the drawings in connection with embodiments.
Referring to fig. 1, fig. 1 is a flow chart illustrating some embodiments of a method for calibrating a sensor according to the present invention. As shown in fig. 1, the calibration method of the sensor comprises the following steps:
And step 101, acquiring three-dimensional attitude information detected by a target sensor, wherein the target sensor comprises an acceleration sensor, a geomagnetic sensor and a gyroscope.
In some embodiments, the sensor is a detection device, which can sense the measured information and convert the sensed information into an electric signal or other information output in a required form according to a certain rule so as to meet the requirements of information transmission, processing, storage, display, recording, control and the like. The target sensor may also include a temperature sensor, a pressure sensor, and the like. The three-dimensional pose information represents sampled values of the target sensor in three dimensions. Taking an example that the target sensor includes an acceleration sensor, a geomagnetic sensor and a gyroscope, the three-dimensional posture information may include sampling values of the acceleration sensor, the geomagnetic sensor and the gyroscope in three dimensions, namely, x, y and z directions. Among them, an acceleration sensor is a sensor that converts acceleration into an electrical signal, and can be used to measure acceleration force (i.e., force of an object acting on the object during acceleration). The unit of the measuring range of the acceleration sensor is the gravity acceleration g, g represents the gravity acceleration of the earth 0 elevation, 1g is equal to 9.8 n/kg and also equal to 9.8 m/s, the acceleration sensor measures the inertial force in the x, y and z axes, namely three components of the inertial force vector, the data in each axis represents the acceleration measurement value in the direction, for example, the sampling value of the acceleration sensor can be: x=0.996460, y=0.015085, z= -0.078857 in units of: m/s 2. The gyroscope can be a micro-electromechanical system gyroscope, the gyroscope is a device for measuring angular velocity, the gyroscope can sense the rotation angular velocity of one or more shafts, and can accurately sense complex movement actions in free space, and the units are rad/s, namely radian per second. The gyroscope can measure angular velocities from 3 axes, i.e. angular values at a certain instant in the x, y, z axes, such as: x= -0.488281, y= -0.663757, z= 0.305176, in units of: rad/s, negative sign indicates that the device is rotating in the opposite direction. Geomagnetic sensors are sensors that can measure the intensity and direction of an ambient magnetic field, and the values output by x, y, and z axes can be values of the magnetic induction intensity or magnetic flux density of the respective angles detected by the sensors in three directions of space. Therefore, magnetic components of the ambient magnetic field strength in each direction are detected in three directions of x, y, and z, such as: x= -8, y= 42, z= -17, the units are uT (micro tesla), the magnetic induction intensity is a vector, the tesla count value is negative, i.e. the magnetic field direction is opposite to the reference direction. Geomagnetic sensors may require the use of magnetic fields in three directions to detect an ambient magnetic field in space.
As an example, the structure of the object sensor may refer to fig. 2a, and as shown in fig. 2a, the object sensor may include an acceleration sensor, a geomagnetic sensor, and a gyroscope, where an inertial navigation system (Inertial measurement unit, abbreviated as IMU) is a device for measuring three-axis attitude angles and accelerations of an object. Typically IMUs include gyroscopes and accelerometers. The IMU may be connected to a micro control unit (Microcontroller Unit, MCU) processor through a serial peripheral interface (SERIAL PERIPHERAL INTERFACE, SPI) and geomagnetism may be connected to the MCU processor through an integrated circuit bus (Inter-INTEGRATED CIRCUIT, I2C).
Step 102, reading a calibration deviation value of a target sensor from a memory; the calibration deviation value is a deviation value which is obtained by calibrating three-dimensional posture information of the target sensor according to a posture filtering algorithm and meets preset precision.
In some embodiments, the memory may be a semiconductor memory, a magnetic surface memory, or the like, such as FALSH, ROM. The invention does not limit the read-write function, storage mode and the like of the memory. Still taking the above example, the calibration Offset value (also referred to as Offset value) may be a calibration Offset value including the corresponding acceleration sensor, geomagnetic sensor, and gyroscope. The attitude filtering algorithm can be a complementary filter, a Kalman filter and the like, and the invention does not limit the selection of the attitude filtering algorithm. The calibration deviation value is a deviation value which is obtained by calibrating the three-dimensional posture information of the target sensor according to a posture filtering algorithm and meets preset precision. As an example, when calibrating the target sensor for the first time, the acquired three-dimensional posture information is input into a posture filtering algorithm to obtain a calibration deviation value, if the calibration deviation value accords with the preset precision, the calibration deviation value is stored in a memory, if the calibration deviation value does not accord with the preset precision, the three-dimensional posture information is acquired from the new time, and the three-dimensional posture information acquired from the new time and the calibration deviation value output last time are input into the posture filtering algorithm together until the calibration deviation value accords with the preset precision is obtained.
And step 103, calibrating the three-dimensional posture information through the calibration deviation value according to the posture filtering algorithm to obtain the three-dimensional posture information of the target.
In some embodiments, as an example, the three-dimensional posture information is calibrated by using the calibration deviation value, that is, the calibration deviation value and the three-dimensional posture information may be input into a posture filtering algorithm, and the three-dimensional posture information of the target may be calculated according to a system state matrix, a system error characteristic and a model of the algorithm itself established by the posture filtering algorithm.
According to the calibration method of the sensor disclosed by some embodiments of the invention, three-dimensional attitude information detected by a target sensor is obtained, wherein the target sensor comprises an acceleration sensor, a geomagnetic sensor and a gyroscope; reading a calibration offset of the target sensor from the memory; the calibration deviation value is a deviation value which is obtained by calibrating three-dimensional posture information of the target sensor according to a posture filtering algorithm and accords with preset precision; and calibrating the three-dimensional posture information through the calibration deviation value according to the posture filtering algorithm to obtain the three-dimensional posture information of the target. It can be seen that the calibration deviation value of the corresponding target sensor read from the memory is a deviation value which accords with the preset precision and is obtained by calibrating the three-dimensional posture information before, so that the target sensor does not need to be recalibrated every time later, but the stored calibration deviation value is directly called, and the three-dimensional posture information of the target can be obtained more quickly and accurately.
In some optional implementations, the calibrating the three-dimensional posture information of the target sensor according to the posture filtering algorithm to obtain the calibration deviation value meeting the preset precision includes: acquiring three-dimensional attitude information detected by a target sensor; calibrating the three-dimensional attitude information according to an attitude filtering algorithm to obtain target three-dimensional attitude information and a calibration deviation value; judging whether the calibration deviation value reaches a preset precision; if the calibration deviation value reaches the preset precision, storing the calibration deviation value into a memory; and if the calibration deviation value does not reach the preset precision, acquiring the three-dimensional attitude information detected by the target sensor.
In some embodiments, before the calibration deviation value meeting the preset precision is obtained, the detected three-dimensional posture information needs to be sent to the posture filtering algorithm for calibration, so as to obtain the target three-dimensional posture information and the calibration deviation value, at this time, the calibration deviation value may not be optimal, so that it needs to be judged whether the calibration deviation value reaches the preset precision, if the calibration deviation value does not reach the preset precision, the obtained target three-dimensional posture information and the calibration deviation value need to be sent to the posture filtering algorithm again for calibration until the calibration deviation value reaches the preset precision, and the calibration deviation value is stored. The stored procedure may be as shown in the following code. Firstly, defining three variables of an acceleration sensor, a geomagnetic sensor and a gyroscope, judging whether parameters are stored in the three variables in advance, if so, directly reading the parameters from a memory, if not, judging whether the parameters meet preset precision after the parameters corresponding to the variables are obtained, if so, storing the parameters, changing a storage flag bit to indicate the stored parameters, and if not, carrying out recalibration. By setting the preset precision, the calibration deviation value stored in the memory is ensured to calibrate the three-dimensional posture information more accurately, and the calibration deviation value is directly read from the memory, so that the calibration speed of the three-dimensional posture information can be accelerated.
void store_biases(void)
{
Variable/(defining the stored sensor offset
static sensor_biases_t acc_bias;
static sensor_biases_t gyr_bias;
static sensor_biases_t mag_bias;
The stored flag is typically written only once
static uint8_t biases_stored = 0;
If there is not already stored
if(!biases_stored)
{
The accuracy value of acceleration reaches the optimum
if(output.acc_accuracy_flag == 3)
{ memcpy(acc_bias.bias_q16,output.acc_bias_q16,sizeof(acc_bias.bias_q16);
acc_bias.is_saved = 1;
}
The accuracy value of the angular velocity reaches an optimum +.
if(output.gyr_accuracy_flag == 3)
{
memcpy(gyr_bias.bias_q16,output.gyr_bias_q16,sizeof(gyr_bias.bias_q16);
gyr_bias.is_saved = 1;
}
If geomagnetic sensor is used +.
#if USE_MAG
The accuracy value of the geomagnetic data reaches the optimum value
if (output.mag_accuracy_flag == 3)
{
memcpy(mag_bias.bias_q16,output.mag_bias_q16,sizeof(mag_bias.bias_q16);
mag_bias.is_saved = 1;
}
#else
The offset value is set to all 0 × without using geomagnetic sensor
memset(mag_bias.bias_q16, 0, sizeof(mag_bias.bias_q16));
mag_bias.is_saved = 1;
#endif
All three groups of data of/acc gyro mag have reached the preservation condition
if ((acc_bias.is_saved == 1) && (gyr_bias.is_saved == 1) && (mag_bias.is_saved == 1)) {
Write of/offset to flash memory
store_biases_in_flash(acc_bias.bias_q16, gyr_bias.bias_q16, mag_bias.bias_q16);
Setting storage flag
biases_stored = 1;
}
}
}
As an example, when the calibration deviation value already exists in the memory, the calibration process of the three-dimensional posture information may be as shown in fig. 2b, after the initialization (specific initialization step refers to fig. 2 c), if the frame flag is empty, the geomagnetic sensor may collect data at fixed time, after the collected geomagnetic data is polled, the collected geomagnetic data and the calibration deviation value of the corresponding geomagnetic sensor read from the memory are sent to a filtering algorithm, the target three-dimensional posture information of the corresponding geomagnetic sensor is obtained (specific step of obtaining the target three-dimensional posture information of the corresponding geomagnetic sensor may refer to fig. 2 d), then the collected IMU (i.e. acceleration sensor and gyroscope) data is polled, the collected IMU data and the calibration deviation value of the corresponding IMU sensor read from the memory are sent to the filtering algorithm, the target three-dimensional posture information of the corresponding IMU sensor is obtained (specific step of obtaining the target three-dimensional posture information of the corresponding IMU sensor may refer to fig. 2 e), and finally the target three-dimensional posture information is sent to the upper computer.
In some optional implementations, after acquiring the three-dimensional pose information detected by the target sensor, further includes: coordinate transformation is carried out on the three-dimensional attitude information detected by the target sensor, so that three-dimensional attitude information under a coordinate system of the target sensor mounting equipment is obtained; according to the attitude filtering algorithm, calibrating the three-dimensional attitude information through the calibration deviation value to obtain target three-dimensional attitude information, including: according to the gesture filtering algorithm, calibrating the three-dimensional gesture information after coordinate transformation through a calibration deviation value to obtain target three-dimensional gesture information; calibrating the three-dimensional attitude information according to an attitude filtering algorithm to obtain target three-dimensional attitude information and a calibration deviation value, wherein the method comprises the following steps: and calibrating the three-dimensional posture information after coordinate transformation according to a posture filtering algorithm to obtain target three-dimensional posture information and a calibration deviation value. And the three-dimensional attitude information is subjected to coordinate transformation, and the coordinates are unified, so that the calculation is convenient.
Referring to fig. 3, fig. 3 is a schematic structural diagram of some embodiments of a calibration device for a sensor according to the present invention, and as a method for implementing the method shown in the foregoing drawings, some embodiments of a calibration device for a sensor are provided, which correspond to the embodiments of the methods shown in fig. 1, and the device may be applied to various electronic or head-mounted devices.
As shown in fig. 3, the calibration device 300 of the sensor of some embodiments includes a first processing module 301, a second processing module 302, and a third processing module 303: the first processing module 301 is configured to obtain three-dimensional gesture information detected by a target sensor, where the target sensor includes an acceleration sensor, a geomagnetic sensor, and a gyroscope; a second processing module 302 for reading the calibration offset of the target sensor from the memory; the calibration deviation value is a deviation value which is obtained by calibrating three-dimensional posture information of the target sensor according to a posture filtering algorithm and accords with preset precision; and the third processing module 303 is configured to calibrate the three-dimensional posture information according to the posture filtering algorithm by using the calibration deviation value, so as to obtain the three-dimensional posture information of the target.
In an alternative implementation of some embodiments, the second processing module 302 further includes: the detection unit is used for acquiring the three-dimensional attitude information detected by the target sensor; the calibration unit is used for calibrating the three-dimensional posture information according to the posture filtering algorithm to obtain target three-dimensional posture information and a calibration deviation value; the judging unit is used for judging whether the calibration deviation value reaches the preset precision; if the calibration deviation value reaches the preset precision, storing the calibration deviation value into a memory; and if the calibration deviation value does not reach the preset precision, acquiring the three-dimensional attitude information detected by the target sensor.
In an alternative implementation of some embodiments, the apparatus 300 further comprises: the fourth processing module is used for carrying out coordinate transformation on the three-dimensional posture information detected by the target sensor to obtain three-dimensional posture information under a coordinate system of the target sensor installation equipment; the third processing module is further configured to: according to the gesture filtering algorithm, calibrating the three-dimensional gesture information after coordinate transformation through a calibration deviation value to obtain target three-dimensional gesture information; the calibration unit is also for: and calibrating the three-dimensional posture information after coordinate transformation according to a posture filtering algorithm to obtain target three-dimensional posture information and a calibration deviation value.
It will be appreciated that the modules described in the apparatus 300 correspond to the various steps in the method described with reference to fig. 1. Thus, the operations, features and advantages described above for the method are equally applicable to the apparatus 300 and the modules and units contained therein, and are not described here again.
Fig. 4 illustrates a schematic structural diagram of a head-mounted device, as shown in fig. 4, which may include: processor 410, communication interface (Communications Interface) 420, memory 430, and communication bus 440, wherein processor 410, communication interface 420, and memory 430 communicate with each other via communication bus 440. The processor 410 may invoke logic instructions in the memory 430 to perform a method of calibrating a sensor, the method comprising: acquiring three-dimensional attitude information detected by a target sensor, wherein the target sensor comprises an acceleration sensor, a geomagnetic sensor and a gyroscope; reading a calibration offset of the target sensor from the memory; the calibration deviation value is a deviation value which is obtained by calibrating three-dimensional posture information of the target sensor according to a posture filtering algorithm and accords with preset precision; and calibrating the three-dimensional posture information through the calibration deviation value according to the posture filtering algorithm to obtain the three-dimensional posture information of the target.
In some application scenarios, the head-mounted device may also include an object sensor that detects three-dimensional pose information of the head-mounted device. The headset may also be one of smart glasses and a smart helmet.
Further, the logic instructions in the memory 430 described above may be implemented in the form of software functional units and may be stored in a computer-readable storage medium when sold or used as a stand-alone product. Based on this understanding, the technical solution of the present invention may be embodied in essence or a part contributing to the prior art or a part of the technical solution in the form of a software product stored in a storage medium, including several instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the above-described method of the various embodiments of the present invention. And the aforementioned storage medium includes: a usb disk, a removable hard disk, a Read-Only Memory (ROM), a random access Memory (RAM, random Access Memory), a magnetic disk, or an optical disk, or other various media capable of storing program codes.
In another aspect, the present invention also provides a computer program product comprising a computer program stored on a non-transitory computer readable storage medium, the computer program comprising program instructions which, when executed by a computer, enable the computer to perform a method of calibrating a sensor provided by the methods described above, the method comprising: acquiring three-dimensional attitude information detected by a target sensor, wherein the target sensor comprises an acceleration sensor, a geomagnetic sensor and a gyroscope; reading a calibration offset of the target sensor from the memory; the calibration deviation value is a deviation value which is obtained by calibrating three-dimensional posture information of the target sensor according to a posture filtering algorithm and accords with preset precision; and calibrating the three-dimensional posture information through the calibration deviation value according to the posture filtering algorithm to obtain the three-dimensional posture information of the target.
In yet another aspect, the present invention also provides a non-transitory computer readable storage medium having stored thereon a computer program which, when executed by a processor, is implemented to perform a method of calibrating a sensor provided by the above methods, the method comprising: acquiring three-dimensional attitude information detected by a target sensor, wherein the target sensor comprises an acceleration sensor, a geomagnetic sensor and a gyroscope; reading a calibration offset of the target sensor from the memory; the calibration deviation value is a deviation value which is obtained by calibrating three-dimensional posture information of the target sensor according to a posture filtering algorithm and accords with preset precision; and calibrating the three-dimensional posture information through the calibration deviation value according to the posture filtering algorithm to obtain the three-dimensional posture information of the target.
The apparatus embodiments described above are merely illustrative, wherein the elements described above as separate elements may or may not be physically separate, and the elements shown as elements may or may not be physical elements, may be located in one place, or may be distributed over a plurality of network elements. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of this embodiment. Those of ordinary skill in the art will understand and implement the present invention without undue burden.
From the above description of the embodiments, it will be apparent to those skilled in the art that the embodiments may be implemented by means of software plus necessary general hardware platforms, or of course may be implemented by means of hardware. Based on this understanding, the foregoing technical solution may be embodied essentially or in a part contributing to the prior art in the form of a software product, which may be stored in a computer readable storage medium, such as ROM/RAM, a magnetic disk, an optical disk, etc., including several instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to execute the respective embodiments or some parts of the methods described above for the embodiments.
Finally, it should be noted that: the above embodiments are only for illustrating the technical solution of the present invention, and are not limiting; although the invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical scheme described in the foregoing embodiments can be modified or some technical features thereof can be replaced by equivalents; such modifications and substitutions do not depart from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims (10)

1. A method of calibrating a sensor, the method comprising:
acquiring three-dimensional attitude information detected by a target sensor, wherein the target sensor comprises an acceleration sensor, a geomagnetic sensor and a gyroscope;
Judging whether a calibration deviation value of the target sensor exists in a memory, and if so, reading the calibration deviation value of the target sensor from the memory; the calibration deviation value is a deviation value which is obtained by calibrating the three-dimensional posture information of the target sensor according to a posture filtering algorithm and accords with preset precision;
According to the attitude filtering algorithm, calibrating the three-dimensional attitude information through the calibration deviation value to obtain target three-dimensional attitude information;
Reading a calibration deviation value of the target sensor from the memory, and calibrating the three-dimensional posture information according to the posture filtering algorithm by using the calibration deviation value to obtain target three-dimensional posture information, wherein the method specifically comprises the following steps of:
When the calibration deviation value of the geomagnetic sensor exists in the memory is determined, after initialization, if a frame mark is empty, the geomagnetic sensor can collect data at fixed time, after the collected geomagnetic data is polled, the collected geomagnetic data and the calibration deviation value of the corresponding geomagnetic sensor read from the memory are sent into a filtering algorithm, and target three-dimensional attitude information of the corresponding geomagnetic sensor is obtained;
Then sending collected data of the acceleration sensor and data of the gyroscope and calibration deviation values of the corresponding acceleration sensor and gyroscope read from a memory into a filtering algorithm to obtain target three-dimensional attitude information of the corresponding acceleration sensor and gyroscope;
Wherein, after the three-dimensional gesture information detected by the target sensor is obtained, the method further comprises:
Performing coordinate transformation on the three-dimensional posture information detected by the target sensor to obtain three-dimensional posture information under a coordinate system of the target sensor installation equipment;
The step of calibrating the three-dimensional posture information according to the posture filtering algorithm by the calibration deviation value to obtain target three-dimensional posture information comprises the following steps:
and calibrating the three-dimensional posture information after coordinate transformation according to the posture filtering algorithm by using the calibration deviation value to obtain the three-dimensional posture information of the target.
2. The method for calibrating a sensor according to claim 1, wherein the calibrating the three-dimensional attitude information of the target sensor according to the attitude filtering algorithm includes:
Acquiring three-dimensional attitude information detected by the target sensor;
calibrating the three-dimensional attitude information according to an attitude filtering algorithm to obtain target three-dimensional attitude information and the calibration deviation value;
Judging whether the calibration deviation value reaches a preset precision;
if the calibration deviation value reaches the preset precision, storing the calibration deviation value into the memory;
and if the calibration deviation value does not reach the preset precision, acquiring the three-dimensional attitude information detected by the target sensor.
3. The method for calibrating a sensor according to claim 2, wherein the calibrating the three-dimensional posture information according to a posture filtering algorithm to obtain target three-dimensional posture information and the calibration deviation value comprises:
And calibrating the three-dimensional posture information after coordinate transformation according to a posture filtering algorithm to obtain the target three-dimensional posture information and the calibration deviation value.
4. A calibration device for a sensor, the device comprising:
The first processing module is used for acquiring three-dimensional attitude information detected by a target sensor, wherein the target sensor comprises an acceleration sensor, a geomagnetic sensor and a gyroscope;
The second processing module is used for judging whether the calibration deviation value of the target sensor exists in the memory, and if so, reading the calibration deviation value of the target sensor from the memory; the calibration deviation value is a deviation value which is obtained by calibrating the three-dimensional posture information of the target sensor according to a posture filtering algorithm and accords with preset precision;
the third processing module is used for calibrating the three-dimensional posture information through the calibration deviation value according to the posture filtering algorithm to obtain target three-dimensional posture information;
the second processing module is specifically configured to:
When the calibration deviation value of the geomagnetic sensor exists in the memory is determined, after initialization, if a frame mark is empty, the geomagnetic sensor can collect data at fixed time, and after the collected geomagnetic data is polled, the collected geomagnetic data and the calibration deviation value of the corresponding geomagnetic sensor read from the memory are sent into a filtering algorithm;
Sending collected acceleration sensor data and gyroscope data and calibration deviation values of the corresponding acceleration sensor and gyroscope read from a memory into a filtering algorithm;
the third processing module is specifically configured to:
According to the attitude filtering algorithm, calibrating geomagnetic data of the geomagnetic sensor through a calibration deviation value of the geomagnetic sensor to obtain target three-dimensional attitude information of the corresponding geomagnetic sensor;
Calibrating the data of the acceleration sensor and the data of the gyroscope respectively through the calibration deviation values of the acceleration sensor and the gyroscope to obtain target three-dimensional attitude information of the corresponding acceleration sensor and gyroscope;
Wherein the first processing module is further configured to:
Performing coordinate transformation on the three-dimensional posture information detected by the target sensor to obtain three-dimensional posture information under a coordinate system of the target sensor installation equipment;
The third processing module is further configured to:
and calibrating the three-dimensional posture information after coordinate transformation according to the posture filtering algorithm by using the calibration deviation value to obtain the three-dimensional posture information of the target.
5. The calibration device of the sensor of claim 4, wherein the second processing module further comprises:
the detection unit is used for acquiring the three-dimensional attitude information detected by the target sensor;
The calibration unit is used for calibrating the three-dimensional posture information according to a posture filtering algorithm to obtain target three-dimensional posture information and the calibration deviation value;
The judging unit is used for judging whether the calibration deviation value reaches the preset precision; if the calibration deviation value reaches the preset precision, storing the calibration deviation value into the memory; and if the calibration deviation value does not reach the preset precision, acquiring the three-dimensional attitude information detected by the target sensor.
6. The calibration device for a sensor of claim 5, further comprising:
The fourth processing module is used for carrying out coordinate transformation on the three-dimensional posture information detected by the target sensor to obtain three-dimensional posture information under the coordinate system of the target sensor installation equipment;
The third processing module is further configured to: according to the gesture filtering algorithm, calibrating the three-dimensional gesture information after coordinate transformation through the calibration deviation value to obtain the target three-dimensional gesture information;
The calibration unit is further configured to: and calibrating the three-dimensional posture information after coordinate transformation according to a posture filtering algorithm to obtain the target three-dimensional posture information and the calibration deviation value.
7. A head-mounted device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, characterized in that the processor implements the steps of the method of calibrating a sensor according to any of claims 1-3 when the program is executed.
8. The head-mounted device of claim 7, further comprising the target sensor, the target sensor detecting three-dimensional pose information of the head-mounted device.
9. The head-mounted device of claim 7 or 8, comprising one of smart glasses and a smart helmet.
10. A non-transitory computer readable storage medium, on which a computer program is stored, characterized in that the computer program, when executed by a processor, implements the steps of the method of calibrating a sensor according to any of claims 1 to 3.
CN202111029335.2A 2021-09-03 2021-09-03 Sensor calibration method, device, equipment and medium Active CN113465632B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111029335.2A CN113465632B (en) 2021-09-03 2021-09-03 Sensor calibration method, device, equipment and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111029335.2A CN113465632B (en) 2021-09-03 2021-09-03 Sensor calibration method, device, equipment and medium

Publications (2)

Publication Number Publication Date
CN113465632A CN113465632A (en) 2021-10-01
CN113465632B true CN113465632B (en) 2024-06-18

Family

ID=77868094

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111029335.2A Active CN113465632B (en) 2021-09-03 2021-09-03 Sensor calibration method, device, equipment and medium

Country Status (1)

Country Link
CN (1) CN113465632B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114064337B (en) * 2021-11-16 2024-11-15 杭州丰禾测控技术有限公司 A correction method, device, equipment and storage medium for inclinometric azimuth data
CN114034318B (en) * 2021-11-23 2024-07-02 歌尔科技有限公司 Calibration control method, device and equipment for loudspeaker box and readable storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102865881A (en) * 2012-03-06 2013-01-09 武汉大学 Quick calibration method for inertial measurement unit
CN105043385A (en) * 2015-06-05 2015-11-11 北京信息科技大学 Self-adaption Kalman filtering method for autonomous navigation positioning of pedestrians
CN108700941A (en) * 2016-05-13 2018-10-23 谷歌有限责任公司 For in reality environment to the method and apparatus of prospective component

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10241215B2 (en) * 2015-11-19 2019-03-26 Agjunction Llc Sensor alignment calibration
CN109059913B (en) * 2018-08-27 2021-08-03 立得空间信息技术股份有限公司 Zero-delay integrated navigation initialization method for vehicle-mounted navigation system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102865881A (en) * 2012-03-06 2013-01-09 武汉大学 Quick calibration method for inertial measurement unit
CN105043385A (en) * 2015-06-05 2015-11-11 北京信息科技大学 Self-adaption Kalman filtering method for autonomous navigation positioning of pedestrians
CN108700941A (en) * 2016-05-13 2018-10-23 谷歌有限责任公司 For in reality environment to the method and apparatus of prospective component

Also Published As

Publication number Publication date
CN113465632A (en) 2021-10-01

Similar Documents

Publication Publication Date Title
CN103776451B (en) A MEMS-based high-precision three-dimensional attitude inertial measurement system and measurement method
CN104898681B (en) A kind of quadrotor attitude acquisition method for approximately finishing card quaternary number using three ranks
CN105588567B (en) A kind of attitude heading reference system and method for autoelectrinic compass calibration assist type
CN109696183A (en) The scaling method and device of Inertial Measurement Unit
EP3491334B1 (en) Method and system for calibrating components of an inertial measurement unit (imu) using scene-captured data
CN108318027B (en) Method and device for determining attitude data of carrier
EP2914966B1 (en) A method for aligning a mobile device surface with the coordinate system of a sensor
CN110567491B (en) Initial alignment method and device of inertial navigation system and electronic equipment
CN113465632B (en) Sensor calibration method, device, equipment and medium
US20230204619A1 (en) Method and system for automatic factory calibration
WO2023186136A1 (en) Wireless capsule positioning apparatus, and method and apparatus for positioning magnetic field sensor
JP7025215B2 (en) Positioning system and positioning method
CN107402007A (en) A kind of method for improving miniature AHRS modules precision and miniature AHRS modules
CN110530356B (en) Pose information processing method, device, equipment and storage medium
EP2930467A1 (en) A system and method for sensing the inclination of a moving platform with respect to gravity
EP3073226B1 (en) Continuous calibration of an inertial system
CN115120967A (en) Target positioning method, device, storage medium and terminal
CN113008271B (en) Mathematical model construction method for calibrating 3D rotation difference, calibration method and device thereof
CN114964214B (en) Extended Kalman filtering attitude calculation method of attitude heading reference system
US12259760B2 (en) Lid angle detection
CN117782152A (en) Calibration method and device based on double mechanical arms
CN118057120A (en) Method and apparatus for estimating device pose
KR20110056185A (en) Posture Estimation Method and Apparatus Using Li-Algebra and Kalman Filters
CN115931001A (en) Inertial measurement unit calibration method and device, computer equipment and storage medium
Kannan et al. Adaptive sensor fusion technology for mobile and wearable applications

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant