Gyro time-delay optimization processing method and system, and related device
By digitally filtering, integrating, and Gaussian filtering the angular velocity data from the gyroscope sensor, and performing partitioned integration for different delay conditions, the gyroscope's delay processing is optimized, solving the delay problem caused by filtering and enhancing the anti-shake effect of the optical image stabilizer.
Patent Information
- Application Number
- PCT/CN2024/084189
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-03-27
- Publication Date
- 2025-10-02
AI Technical Summary
In the prior art, the time delay caused by filtering the angular velocity data of the gyroscope affects the anti-shake effect of the optical image stabilizer.
By obtaining the angular velocity data of the gyroscope sensor and performing digital filtering, integral calculation and Gaussian filtering, partition integration processing is performed for integer and non-integer delays, and the angular velocity data is optimized to reduce the delay caused by filter sampling.
It achieves zero or near-zero-delay gyroscope angular velocity data output, improving the anti-shake effect of the optical image stabilizer.
Smart Images

Figure CN2024084189_02102025_PF_FP_ABST
Abstract
Description
Gyroscope delay optimization processing method, system and related equipment Technical Field
[0001] The present invention relates to a data processing method, and in particular to a gyroscope delay optimization processing method, system and related equipment. Background Art
[0002] A gyroscope is an inertial sensing device used to measure and control the angular motion of an object in relative inertial space. In an optical image stabilizer (OIS), the gyroscope is used to monitor the current lens shake in real time, thereby determining angular velocity in both pitch and yaw. In an OIS system, the angular velocity data obtained by the gyroscope is processed through a digital filter (usually a simple IIR filter, such as a Butterworth filter) to retain only the frequency information of interest or need by the developer or the corresponding hardware. Technical issues
[0003] In related technologies, since the sampling frequency of angular velocity data is much higher than the cutoff frequency of the digital filter (generally 30Hz), unnecessary delay will be introduced to the signal during the filtering process, which will directly affect the anti-shake effect of the OIS system.
[0004] Therefore, it is necessary to propose a gyroscope delay optimization processing method to solve the above problems. Technical Solutions
[0005] The technical problem to be solved by the present invention is to provide an optimization processing method, system and related equipment capable of reducing unnecessary delays caused by filtering sampling.
[0006] To solve the above technical problems, in a first aspect, the present invention provides a method for optimizing gyroscope delay, the method comprising the following steps:
[0007] S101, obtaining first angular velocity data w(k) collected by a gyroscope sensor, where k is a positive integer;
[0008] S102, digitally filtering the angular velocity data to obtain second angular velocity data w(k)' with a delay of γ, and performing integration calculation on the second angular velocity data w(k)' to obtain a first angular velocity scalar;
[0009] S103: Acquire an angular velocity vector of a preset length including the first angular velocity data collected by a gyroscope sensor, and perform Gaussian filtering and integral calculation on the angular velocity vector to obtain a second angular velocity scalar;
[0010] S104: Add the first angular velocity scalar and the second angular velocity scalar to obtain optimized angular velocity data θ(k).
[0011] Furthermore, if the delay γ is an integer, the preset length is γ+1, and the angular velocity vector is [w(k-γ), ..., w(k-1), w(k)].
[0012] Furthermore, if the delay γ is a non-integer, the delay γ is rounded up to obtain a constant n, the preset length is n+1, and the angular velocity vector is [w(kn), ..., w(k-1), w(k)].
[0013] Furthermore, in step S103, the angular velocity vector [w(kn), ..., w(k-1), w(k)] is divided into integer intervals and non-integer intervals according to the constant n and the delay γ. During the integral calculation process, the integral of the first integer interval in the angular velocity vector is multiplied by a preset ratio to obtain the integral of the first non-integer interval.
[0014] In a second aspect, the present invention further provides a gyroscope delay optimization processing system, comprising:
[0015] A data acquisition module, configured to acquire first angular velocity data w(k) collected by a gyroscope sensor, where k is a positive integer;
[0016] a first processing module, configured to perform digital filtering on the angular velocity data to obtain second angular velocity data w(k)' with a delay of γ, and perform integral calculation on the second angular velocity data w(k)' to obtain a first angular velocity scalar;
[0017] a second processing module, configured to obtain an angular velocity vector of a preset length including the first angular velocity data collected by the gyroscope sensor, and perform Gaussian filtering and integral calculation on the angular velocity vector to obtain a second angular velocity scalar;
[0018] The optimization module is configured to add the first angular velocity scalar and the second angular velocity scalar to obtain optimized angular velocity data θ(k).
[0019] In a third aspect, the present invention further provides a computer device comprising: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps in the above-mentioned method for optimizing the gyroscope delay when executing the computer program.
[0020] In a fourth aspect, the present invention further provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps in the above-mentioned method for optimizing the processing of gyroscope delay. Beneficial effects
[0021] Compared to related technologies, the present invention's method for optimizing gyroscope delay includes the following steps: S101: obtaining first angular velocity data w(k) collected by a gyroscope sensor, where k is a positive integer; S102: digitally filtering the angular velocity data to obtain second angular velocity data w(k)' with a delay of γ, and integrating the second angular velocity data w(k)' to obtain a first angular velocity scalar; S103: obtaining an angular velocity vector of a preset length including the first angular velocity data collected by the gyroscope sensor, and sequentially performing Gaussian filtering and integration on the angular velocity vector to obtain a second angular velocity scalar; S104: adding the first angular velocity scalar and the second angular velocity scalar to obtain optimized angular velocity data θ(k). By processing metadata and performing scalar addition based on the delay of filtered sampling, and performing partitioned integration for non-integer delays, the present invention minimizes the impact of filtered sampling on the obtained gyroscope angular velocity data, achieving delay-free data output. BRIEF DESCRIPTION OF THE DRAWINGS
[0022] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for describing the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. Those skilled in the art can also derive other drawings based on these drawings without inventive work, among which:
[0023] FIG1 is a flowchart of the steps of a method for optimizing gyroscope delay provided by an embodiment of the present invention;
[0024] FIG2 is a schematic diagram showing a comparison of angular velocity data waveforms provided by an embodiment of the present invention;
[0025] FIG3 is a schematic diagram showing an enlarged comparison of angular velocity data waveforms provided by an embodiment of the present invention;
[0026] FIG4 is a schematic structural diagram of a gyroscope delay optimization processing system 200 provided in an embodiment of the present invention;
[0027] FIG5 is a schematic diagram of the structure of a computer device provided by an embodiment of the present invention. Modes for Carrying Out the Invention
[0028] The following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of the present invention.
[0029] Please refer to FIG1 , which is a flowchart of the steps of a method for optimizing gyroscope delay provided by an embodiment of the present invention. The optimization method includes the following steps:
[0030] S101 : Acquire first angular velocity data w(k) collected by a gyroscope sensor, where k is a positive integer.
[0031] S102 : Digitally filter the angular velocity data to obtain second angular velocity data w(k)′ with a delay of γ, and perform integration calculation on the second angular velocity data w(k)′ to obtain a first angular velocity scalar.
[0032] S103: Acquire an angular velocity vector of a preset length including the first angular velocity data collected by a gyroscope sensor, and perform Gaussian filtering and integral calculation on the angular velocity vector to obtain a second angular velocity scalar.
[0033] In the embodiment of the present invention, whether the delay γ is an integer is discussed in two cases.
[0034] If the delay γ is an integer, the preset length is γ+1, and the angular velocity vector is [w(k-γ), ..., w(k-1), w(k)]. In this case, step S103 performs Gaussian filtering and integral calculation according to the current angular velocity vector in the order thereof;
[0035] If the delay γ is a non-integer, the delay γ is rounded up to obtain a constant n, and the preset length is n+1. For example, when the value of the delay γ is 2.3, it is rounded up to obtain a constant n of 3, and the angular velocity vector is [w(kn), ..., w(k-1), w(k)]. In this case, step S103 divides the angular velocity vector [w(kn), ..., w(k-1), w(k)] into integer intervals and non-integer intervals based on the constant n and the delay γ. During the integral calculation process, the integral of the first integer interval in the angular velocity vector is multiplied by a preset ratio to obtain the integral of the first non-integer interval. This preset ratio can be designed according to actual needs, with the purpose of ensuring that the integral range of this non-integer interval is consistent with the remaining integer intervals through the preset ratio.
[0036] S104: Add the first angular velocity scalar and the second angular velocity scalar to obtain optimized angular velocity data θ(k).
[0037] As shown in Figures 2 and 3, Figure 2 shows a waveform comparison diagram between the optimized angular velocity data θ(k) obtained by adding the first angular velocity scalar and the second angular velocity scalar, equivalent to the compensated data, and the ideal delay-free data and uncompensated data. Figure 3 is an enlarged view of the waveform in Figure 2. It can be seen that the optimized angular velocity data θ(k) after compensation according to the embodiment of the present invention basically coincides with the ideal delay-free data, while the uncompensated data has a greater delay than the ideal delay-free data. This demonstrates the effectiveness of the gyroscope delay optimization method proposed in the embodiment of the present invention.
[0038] Compared to related technologies, the present invention's method for optimizing gyroscope delay includes the following steps: S101, obtaining first angular velocity data w(k) collected by a gyroscope sensor, where k is a positive integer; S102, digitally filtering the angular velocity data to obtain second angular velocity data w(k)' with a delay of γ, and integrating the second angular velocity data w(k)' to obtain a first angular velocity scalar; S103, obtaining an angular velocity vector of a preset length including the first angular velocity data collected by the gyroscope sensor, and sequentially performing Gaussian filtering and integration on the angular velocity vector to obtain a second angular velocity scalar; S104, adding the first angular velocity scalar and the second angular velocity scalar to obtain optimized angular velocity data θ(k). The present invention processes metadata based on the delay of filtered sampling and performs scalar addition, and performs partitioned integration for non-integer delays, so that the obtained gyroscope angular velocity data can minimize the impact of filtered sampling and achieve delay-free data output.
[0039] An embodiment of the present invention further provides a system. Please refer to FIG4 , which is a schematic diagram of a gyroscope delay optimization processing system 200 provided by an embodiment of the present invention. The gyroscope delay optimization processing system 200 includes:
[0040] The data acquisition module 201 is used to acquire first angular velocity data w(k) collected by the gyroscope sensor, where k is a positive integer;
[0041] A first processing module 202 is configured to digitally filter the angular velocity data to obtain second angular velocity data w(k)' with a delay of γ, and perform integral calculation on the second angular velocity data w(k)' to obtain a first angular velocity scalar;
[0042] a second processing module 203 configured to obtain an angular velocity vector of a preset length including the first angular velocity data collected by the gyroscope sensor, and perform Gaussian filtering and integral calculation on the angular velocity vector to obtain a second angular velocity scalar;
[0043] The optimization module 204 is configured to add the first angular velocity scalar and the second angular velocity scalar to obtain optimized angular velocity data θ(k).
[0044] The gyroscope delay optimization processing system 200 can implement the steps in the gyroscope delay optimization processing method in the above embodiment and can achieve the same technical effects. Please refer to the description in the above embodiment and will not be repeated here.
[0045] An embodiment of the present invention further provides a computer device. Please refer to Figure 5, which is a structural diagram of the computer device provided by an embodiment of the present invention. The computer device 300 includes: a memory 302, a processor 301, and a computer program stored in the memory 302 and executable on the processor 301.
[0046] The processor 301 calls the computer program stored in the memory 302 to execute the steps of the method provided in the embodiment of the present invention. Referring to FIG1 , the method specifically includes the following steps:
[0047] S101 : Acquire first angular velocity data w(k) collected by a gyroscope sensor, where k is a positive integer.
[0048] S102 : Digitally filter the angular velocity data to obtain second angular velocity data w(k)′ with a delay of γ, and perform integration calculation on the second angular velocity data w(k)′ to obtain a first angular velocity scalar.
[0049] S103: Acquire an angular velocity vector of a preset length including the first angular velocity data collected by a gyroscope sensor, and perform Gaussian filtering and integral calculation on the angular velocity vector to obtain a second angular velocity scalar.
[0050] If the delay γ is an integer, the preset length is γ+1, and the angular velocity vector is [w(k-γ), ..., w(k-1), w(k)].
[0051] If the delay γ is a non-integer, the delay γ is rounded up to obtain a constant n, the preset length is n+1, and the angular velocity vector is [w(kn), ..., w(k-1), w(k)].
[0052] In step S103, the angular velocity vector [w(kn), ..., w(k-1), w(k)] is divided into integer intervals and non-integer intervals according to the constant n and the delay γ. During the integral calculation process, the integral of the first integer interval in the angular velocity vector is multiplied by a preset ratio to obtain the integral of the first non-integer interval.
[0053] S104: Add the first angular velocity scalar and the second angular velocity scalar to obtain optimized angular velocity data θ(k).
[0054] The computer device 300 provided in the embodiment of the present invention can implement the steps in the gyroscope delay optimization processing method in the above embodiment and can achieve the same technical effects. Please refer to the description in the above embodiment and will not be repeated here.
[0055] An embodiment of the present invention further provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the various processes and steps in the gyroscope delay optimization processing method provided in the embodiment of the present invention are implemented, and the same technical effects can be achieved. To avoid repetition, they will not be described here.
[0056] Those skilled in the art will appreciate that all or part of the processes in the above-described method embodiments can be implemented by instructing the relevant hardware through a computer program. The program can be stored in a computer-readable storage medium, and when executed, the program can include the processes in the above-described method embodiments. The storage medium can be a magnetic disk, an optical disk, a read-only memory (ROM), or a random access memory (RAM).
[0057] It should be noted that, in this document, the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, article, or apparatus comprising a series of elements includes not only those elements but also other elements not explicitly listed, or elements inherent to such process, method, article, or apparatus. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of other identical elements in the process, method, article, or apparatus comprising the element.
[0058] Through the above description of the embodiments, those skilled in the art will clearly understand that the methods of the above embodiments can be implemented using software plus the necessary general-purpose hardware platform. Of course, hardware can also be used, but in many cases the former is the more preferred implementation method. Based on this understanding, the technical solution of the present invention, or the portion that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, or optical disk) and includes a number of instructions for enabling a terminal (such as a mobile phone, computer, server, air conditioner, or network device) to execute the methods described in the various embodiments of the present invention.
[0059] The embodiments of the present invention are described above in conjunction with the accompanying drawings. What is disclosed is only a preferred embodiment of the present invention. However, the present invention is not limited to the above-mentioned specific implementation methods. The above-mentioned specific implementation methods are merely illustrative and not restrictive. Under the guidance of the present invention, ordinary technicians in this field can also make many forms and equivalent changes without departing from the scope of protection of the purpose of the present invention and the claims, which are all within the protection of the present invention.
Claims
1. A method for optimizing gyroscope delay, characterized in that: The optimization processing method comprises the following steps: S101, obtaining first angular velocity data w(k) collected by a gyroscope sensor, where k is a positive integer; S102, digitally filtering the angular velocity data to obtain second angular velocity data w(k)' with a delay of γ, and performing integration calculation on the second angular velocity data w(k)' to obtain a first angular velocity scalar; S103: Acquire an angular velocity vector of a preset length including the first angular velocity data collected by a gyroscope sensor, and perform Gaussian filtering and integral calculation on the angular velocity vector to obtain a second angular velocity scalar; S104: Add the first angular velocity scalar and the second angular velocity scalar to obtain optimized angular velocity data θ(k).
2. The method for optimizing gyroscope delay according to claim 1, wherein: If the delay γ is an integer, the preset length is γ+1, and the angular velocity vector is [w(k-γ), ..., w(k-1), w(k)].
3. The method for optimizing gyroscope delay according to claim 1, wherein: If the delay γ is a non-integer, the delay γ is rounded up to obtain a constant n, the preset length is n+1, and the angular velocity vector is [w(kn), ..., w(k-1), w(k)].
4. The method for optimizing gyroscope delay according to claim 3, wherein: In step S103, the angular velocity vector [w(kn), ..., w(k-1), w(k)] is divided into integer intervals and non-integer intervals according to the constant n and the delay γ. During the integral calculation process, the integral of the first integer interval in the angular velocity vector is multiplied by a preset ratio to obtain the integral of the first non-integer interval.
5. A gyroscope delay optimization processing system, characterized in that: include: A data acquisition module, configured to acquire first angular velocity data w(k) collected by a gyroscope sensor, where k is a positive integer; a first processing module, configured to perform digital filtering on the angular velocity data to obtain second angular velocity data w(k)' with a delay of γ, and perform integral calculation on the second angular velocity data w(k)' to obtain a first angular velocity scalar; a second processing module, configured to obtain an angular velocity vector of a preset length including the first angular velocity data collected by the gyroscope sensor, and perform Gaussian filtering and integral calculation on the angular velocity vector to obtain a second angular velocity scalar; The optimization module is configured to add the first angular velocity scalar and the second angular velocity scalar to obtain optimized angular velocity data θ(k).
6. A computer device, characterized in that: include: A memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the computer program, the steps of the method for optimizing the gyroscope delay as claimed in any one of claims 1 to 4 are implemented.
7. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the method for optimizing gyroscope delay according to any one of claims 1 to 4 are implemented.
Citation Information
Patent Citations
Method and device for resolving gesture of six-axis motion sensor
CN107543546A
Gyroscope filtering denoising method
CN109186571A
Robot IMU angle measurement method and device, computer equipment and storage medium
CN113108790A
Implementation method and system for temperature drift compensation of gyroscope based on digital filtering mode
CN115420306A
Electronic apparatus and control method thereof
US20200232796A1