Remote controller key jitter elimination method and device, equipment and storage medium

By locking the cursor position of the remote control and using the dynamic angle tracking and capturing algorithm, the problem of cursor jitter when the remote control button is pressed is solved, and the smooth transition and stability of the cursor position is achieved, improving the user experience.

CN119865198APending Publication Date: 2025-04-22GUANGDONG SENEASY INTELLIGENT TECH CO LTD
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202411787587.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-06
Publication Date
2025-04-22

AI Technical Summary

Technical Problem

When the remote control presses the button, the cursor will cause obvious jitter on the display device, resulting in poor user experience.

Method used

By detecting the button status of the remote control, locking the cursor position, and using the dynamic angle tracking and capture algorithm, smoothing the cursor position until the real-time pitch angle is reached.

Benefits of technology

It effectively eliminates the jitter phenomenon when the key is pressed, prevents the cursor from jumping or position suddenly, and improves the user's experience of using the remote control.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119865198A_ABST
    Figure CN119865198A_ABST
Patent Text Reader

Abstract

The invention discloses a remote controller key jitter elimination method, device and equipment and a storage medium, and the method comprises the steps: when detecting that a key is pressed down, locking a cursor position of a remote controller, and obtaining a first pitch angle of the remote controller at a moment before the key is pressed down; when it is detected that the key is lifted, a first difference value between the first pitch angle and a second pitch angle is calculated, and the second pitch angle is the pitch angle of the remote controller when the key is lifted; and if the first difference value is greater than a preset difference value, determining a target transition angle of the remote controller by using a dynamic angle tracking and capturing algorithm, adjusting the cursor position until a second difference value between the target transition angle and a real-time pitch angle of the remote controller is not greater than the preset difference value, and adjusting the cursor position based on the real-time pitch angle. According to the application, the jitter phenomenon caused by pressing the key can be effectively eliminated, and meanwhile, the cursor position is smoothly transited to the real-time angle of the remote controller from the locking angle, so that cursor jumping or position mutation is effectively prevented, and the use experience is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of remote control technology, and in particular to a remote control button debouncing method, device, equipment and storage medium. Background Art

[0002] When the remote control is in use, when the user holds the remote control and presses a button, the remote control will usually move downward for a certain distance due to the pressure. The cursor of the remote control on display devices such as TV screens or car screens will shake significantly, resulting in a poor user experience. Summary of the invention

[0003] The present application provides a remote control button de-jittering method, device, equipment and storage medium to solve the technical problem that the remote control cursor will produce obvious jitter when pressing a button.

[0004] In order to solve the above technical problems, in a first aspect, an embodiment of the present application provides a remote control button debouncing method, comprising: When it is detected that a button of the remote controller is pressed, the display unit is controlled to lock the cursor position of the remote controller corresponding to the cursor on the display unit, and obtain the first pitch angle corresponding to the remote controller at a moment before the button is pressed; When it is detected that a key is lifted, a first difference between the first pitch angle and a second pitch angle is calculated, where the second pitch angle is the pitch angle of the remote controller at a corresponding moment when the key is lifted; If the first difference is greater than a preset difference, a preset dynamic angle tracking and capturing algorithm is used to determine a target transition angle of the remote controller, and based on the target transition angle, the display unit is controlled to adjust a cursor position of the remote controller until a second difference between the target transition angle and the real-time pitch angle of the remote controller is no greater than a preset difference; If the second difference is not greater than the preset difference, the display unit is controlled to adjust the cursor position of the remote controller based on the real-time pitch angle.

[0005] In some embodiments, the method of determining the target transition angle of the remote controller by using a preset dynamic angle tracking and capturing algorithm, and controlling the display unit to adjust the cursor position of the remote controller based on the target transition angle until a second difference between the target transition angle and the real-time pitch angle of the remote controller is not greater than the preset difference, comprises: Based on a preset transition angle and a real-time angular velocity of the remote controller, capturing a target transition angle of the remote controller; Based on the target transition angle, controlling the display unit to adjust a cursor position of the remote controller, and determining a second difference between the target transition angle and the real-time pitch angle; If the second difference is greater than the preset difference, updating the target transition angle in real time based on the target transition angle and the real-time angular velocity of the remote controller; Based on the updated target transition angle, continue to control the display unit to adjust the cursor position of the remote controller, and return to the step of determining the second difference between the target transition angle and the real-time pitch angle until the second difference is no greater than the preset difference.

[0006] In some embodiments, capturing a target transition angle of the remote controller based on a preset transition angle and a real-time angular velocity of the remote controller includes: Based on a preset update strategy, updating the real-time angular velocity to obtain a target angular velocity; The target angular velocity is superimposed on the preset transition angle to obtain the target transition angle.

[0007] In some embodiments, updating the real-time angular velocity based on a preset update strategy to obtain a target angular velocity includes: If the preset transition angle is smaller than the real-time pitch angle and the real-time angular velocity is larger than the preset value, or the preset transition angle is larger than the real-time pitch angle and the real-time angular velocity is smaller than the preset value, amplifying the real-time angular velocity based on a preset magnification to obtain a target angular velocity; If the preset transition angle is greater than the real-time pitch angle and the real-time angular velocity is greater than the preset value, or the preset transition angle is less than the real-time pitch angle and the real-time angular velocity is less than the preset value, the real-time angular velocity is reduced based on a preset reduction ratio to obtain a target angular velocity.

[0008] In some embodiments, before capturing the target transition angle of the remote controller based on the preset transition angle and the real-time angular velocity of the remote controller, the method further includes: Determining whether the real-time angular velocity of the remote controller is a preset velocity value; If the real-time angular velocity is not the preset velocity value, entering the step of capturing the target transition angle of the remote controller based on the preset transition angle and the real-time angular velocity of the remote controller; If the real-time angular velocity is the preset velocity value, the process returns to the step of determining whether the real-time angular velocity of the remote controller is the preset velocity value.

[0009] In some embodiments, after calculating the difference between the first pitch angle and the second pitch angle when detecting that the key is lifted, the method further includes: If the difference is not greater than the preset difference, the cursor position is unlocked, and based on the second pitch angle, the display unit is controlled to adjust the cursor position of the remote controller.

[0010] In some embodiments, during the process from when the key is pressed to when the key is released, the display unit is controlled to keep locking the cursor position.

[0011] In a second aspect, an embodiment of the present application provides a remote control button debounce method, comprising: A locking module, configured to control the display unit to lock the cursor position of the remote control corresponding to the display unit when detecting that a button of the remote control is pressed, and to obtain a first pitch angle corresponding to the remote control at a moment before the button is pressed; a calculation module, configured to calculate a first difference between the first pitch angle and a second pitch angle when detecting that a key is lifted, wherein the second pitch angle is a pitch angle of the remote controller at a corresponding moment when the key is lifted; a tracking module, configured to determine a target transition angle of the remote controller by using a preset dynamic angle tracking and capturing algorithm if the first difference is greater than a preset difference, and control the display unit to adjust a cursor position of the remote controller based on the target transition angle until a second difference between the target transition angle and the real-time pitch angle of the remote controller is not greater than the preset difference; An adjustment module is configured to control the display unit to adjust a cursor position of the remote controller based on the real-time pitch angle if the second difference is not greater than a preset difference.

[0012] In a third aspect, an embodiment of the present application provides an electronic device, comprising a processor and a memory, wherein the memory is used to store a computer program, and when the computer program is executed by the processor, the remote control button debouncing method as described in the first aspect is implemented.

[0013] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, it implements the remote control button debouncing method as described in the first aspect.

[0014] Compared with the prior art, this application has at least the following beneficial effects: This application locks the cursor position when a button is pressed, effectively eliminating the jitter caused by pressing the button; then through a dynamic angle tracking and capture algorithm, the cursor position is smoothly transitioned from the locked angle to the real-time angle of the remote control, effectively preventing cursor jumping or sudden position changes, thereby improving the user experience when using the remote control. BRIEF DESCRIPTION OF THE DRAWINGS

[0015] Figure 1 A schematic diagram of the flow of a remote control button debounce method according to an embodiment of the present application; Figure 2 A schematic diagram of a remote control holding posture shown in an embodiment of the present application; Figure 3 This is a schematic diagram of the angle relationship between the remote control and the TV screen shown in an embodiment of the present application; Figure 4 This is a schematic diagram of the application scenario flow of the remote control button debouncing method shown in an embodiment of the present application; Figure 5 A schematic diagram of a scene of a dynamic pursuit model shown in an embodiment of the present application; Figure 6 This is a structural block diagram of a remote control button debouncing device shown in an embodiment of the present application; Figure 7 This is a structural block diagram of an electronic device shown in an embodiment of the present application. DETAILED DESCRIPTION

[0016] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0017] As described in the background art, when a user presses a button on a remote controller, the cursor on the remote controller on a display device such as a TV screen or a car screen will vibrate noticeably. Figure 2 and Figure 3 As shown in the figure, when the pointing remote control is in use, when the button is pressed, the remote control will rotate downward at an angle of α with the rotation axis O as the fulcrum. When the button is clicked, the remote control rotates upward to the original angle with O as the fulcrum. The vertical movement distance y of the pointing remote control on the TV screen is calculated by trigonometric function based on the remote control pitch angle data pitch sensed by the IMU and the distance d from the remote control to the screen to obtain y=d×tan(pitch). The click action often produces a rapid pitch angle change in a relatively short period of time, so there will be an obvious jitter process reflected on the screen cursor, resulting in a poor user experience.

[0018] To this end, an embodiment of the present application provides a remote control button de-jittering method. When an instruction to press a remote control button is sensed, the pitch angle data calculated for the y-axis movement of the cursor will be locked at the angle data at the moment before the button was pressed, thereby reducing the cursor jitter. After the button is released, the dynamic angle capture function is used to smoothly transition to the real-time pitch angle, thereby improving the user experience of the pointing remote control.

[0019] Please refer to Figure 1 , Figure 1The flowchart of a remote control button debounce method provided in an embodiment of the present application is shown in FIG. The remote control button debounce method in an embodiment of the present application can be applied to electronic devices, including directional remote control devices such as remote controllers, air mice, and wireless game controllers. Figure 1 As shown, the remote control button debounce method of this embodiment includes steps S101 to S104, which are described in detail as follows: Step S101, when it is detected that a button of the remote controller is pressed, the display unit is controlled to lock the cursor position of the remote controller corresponding to the cursor on the display unit, and obtain the first pitch angle corresponding to the remote controller at a moment before the button is pressed.

[0020] In this step, since the remote control will move downward when a button is pressed, the cursor position of the remote control on the display unit is immediately locked at the first pitch angle corresponding to the moment before the button is pressed, thereby effectively eliminating the cursor jitter caused by the remote control being pressed. At the same time, the first pitch angle is obtained as the starting point for smoothly transitioning the cursor position to the position corresponding to the real-time posture of the remote control, thereby improving the smoothness of the cursor position transition.

[0021] Wherein, during the process from when the key is pressed to when the key is released, the display unit is controlled to keep locking the cursor position.

[0022] Step S102, when it is detected that a key is lifted, calculating a first difference between the first pitch angle and a second pitch angle, where the second pitch angle is the pitch angle of the remote controller at a corresponding moment when the key is lifted.

[0023] In this step, the difference between the first pitch angle of the remote control when the button is pressed and the second pitch angle of the remote control when the button is released is calculated to identify whether the distance between the locked cursor position and the theoretical cursor position corresponding to the current posture of the remote control is too large. When the distance is too large, the cursor transition will jump or move instantly, so the cursor transition process needs to be controlled within the transition distance range that cannot be directly observed by the naked eye, so as to avoid jumping or moving during the cursor transition process.

[0024] Step S103: If the first difference is greater than a preset difference, a preset dynamic angle tracking and capture algorithm is used to determine the target transition angle of the remote control, and based on the target transition angle, the display unit is controlled to adjust the cursor position of the remote control until the second difference between the target transition angle and the real-time pitch angle of the remote control is no greater than a preset difference.

[0025] In this step, when the first difference between the first pitch angle of the remote control when the button is pressed and the second pitch angle of the remote control when the button is released is greater than the preset difference, it means that the distance between the locked cursor position and the theoretical cursor position corresponding to the real-time posture of the remote control is too large, and directly adjusting the cursor position will cause jumping or teleportation. Therefore, this step performs angle tracking transition through a dynamic angle tracking capture algorithm to gradually transition the cursor position to the theoretical cursor position corresponding to the real-time posture of the remote control in a way that is imperceptible to the naked eye. Specifically, the target transition angle is determined each time, and the transition is performed at the target transition angle.

[0026] Step S104: If the second difference is not greater than a preset difference, controlling the display unit to adjust the cursor position of the remote controller based on the real-time pitch angle.

[0027] In this step, when the difference between the target transition angle and the real-time pitch angle is not greater than the preset difference, it means that there will be no visible jump or teleportation when directly transitioning to the real-time position, so the cursor position is directly adjusted to the position corresponding to the real-time pitch angle.

[0028] In some embodiments, the step S103 includes: Based on a preset transition angle and a real-time angular velocity of the remote controller, capturing a target transition angle of the remote controller; Based on the target transition angle, controlling the display unit to adjust a cursor position of the remote controller, and determining a second difference between the target transition angle and the real-time pitch angle; If the second difference is greater than the preset difference, updating the target transition angle in real time based on the target transition angle and the real-time angular velocity of the remote controller; Based on the updated target transition angle, continue to control the display unit to adjust the cursor position of the remote controller, and return to the step of determining the second difference between the target transition angle and the real-time pitch angle until the second difference is no greater than the preset difference.

[0029] In this embodiment, the dynamic angle tracking and capture algorithm uses a preset transition angle as the starting transition angle, updates the target transition angle through multiple iterations, and makes the cursor transition a short distance at the target transition angle each time until the last target transition angle is no greater than the real-time pitch angle, then the transition is performed directly at the real-time pitch angle, thereby effectively avoiding the jumping or teleportation of the cursor transition.

[0030] In some embodiments, capturing a target transition angle of the remote controller based on a preset transition angle and a real-time angular velocity of the remote controller includes: Based on a preset update strategy, updating the real-time angular velocity to obtain a target angular velocity; The target angular velocity is superimposed on the preset transition angle to obtain the target transition angle.

[0031] In this embodiment, since the angular velocity of the pitch angle may change when the remote controller moves, that is, the angle change is a non-uniform process, when the angular velocity increases, the cursor cannot catch up with the cursor position of the actual pitch angle when transitioning at a uniform speed, resulting in new user experience problems. Therefore, this embodiment updates the angular velocity of the cursor during transition to increase or decrease the cursor transition speed, ensuring that the cursor can catch up with the cursor position corresponding to the actual pitch angle within a reasonable time, thereby ensuring the user experience.

[0032] It is understandable that the target transition angle update process may also refer to the target transition angle capture process described above, which will not be described in detail herein.

[0033] Optionally, the updating of the target angular velocity includes: If the preset transition angle is smaller than the real-time pitch angle and the real-time angular velocity is larger than the preset value, or the preset transition angle is larger than the real-time pitch angle and the real-time angular velocity is smaller than the preset value, amplifying the real-time angular velocity based on a preset magnification to obtain a target angular velocity; If the preset transition angle is greater than the real-time pitch angle and the real-time angular velocity is greater than the preset value, or the preset transition angle is less than the real-time pitch angle and the real-time angular velocity is less than the preset value, the real-time angular velocity is reduced based on a preset reduction ratio to obtain a target angular velocity.

[0034] In this optional embodiment, if the preset transition angle is smaller than the real-time pitch angle and the real-time angular velocity is larger than the preset value, or if the preset transition angle is larger than the real-time pitch angle and the real-time angular velocity is smaller than the preset value, it means that the cursor transition speed is smaller than the angle change speed of the remote control, so the real-time angular velocity is amplified, and then the amplified angular velocity is superimposed on the preset transition angle or the target transition angle, so that the cursor transition speed is greater than the angle change speed of the remote control, ensuring that the cursor catches up with the cursor position corresponding to the real-time pitch angle of the remote control.

[0035] If the preset transition angle is greater than the real-time pitch angle and the real-time angular velocity is greater than the preset value, or if the preset transition angle is less than the real-time pitch angle and the real-time angular velocity is less than the preset value, it means that the cursor transition speed may be too fast (may be noticed by the naked eye), so the real-time angular velocity is reduced, and then the reduced angular velocity is superimposed on the preset transition angle or the target transition angle, so that the cursor transition speed returns to a more normal speed, thereby ensuring the visual smoothness of the cursor transition.

[0036] In some embodiments, before capturing the target transition angle of the remote controller based on the preset transition angle and the real-time angular velocity of the remote controller, the method further includes: Determining whether the real-time angular velocity of the remote controller is a preset velocity value; If the real-time angular velocity is not the preset velocity value, entering the step of capturing the target transition angle of the remote controller based on the preset transition angle and the real-time angular velocity of the remote controller; If the real-time angular velocity is the preset velocity value, the process returns to the step of determining whether the real-time angular velocity of the remote controller is the preset velocity value.

[0037] In this embodiment, the preset speed value is 0. When the real-time angular velocity is not 0, it indicates that the angle of the remote control is accelerating or decelerating, so the step of capturing the target transition angle of the remote control based on the preset transition angle and the real-time angular velocity of the remote control is entered; when the real-time angular velocity is 0, it indicates that the angle of the remote control remains unchanged, and the process returns to the step of determining whether the real-time angular velocity of the remote control is the preset speed value to perform the next angular velocity determination. When the angle of the remote control changes, the process enters the step of capturing the target transition angle of the remote control based on the preset transition angle and the real-time angular velocity of the remote control.

[0038] In some embodiments, after step S102, the following steps are further included: If the difference is not greater than the preset difference, the cursor position is unlocked, and based on the second pitch angle, the display unit is controlled to adjust the cursor position of the remote controller.

[0039] In this embodiment, when a first difference between a first pitch angle of the remote control when a button is pressed and a second pitch angle of the remote control when the button is released is not greater than a preset difference, it indicates that the distance between the locked cursor position and the theoretical cursor position corresponding to the real-time posture of the remote control is sufficient to directly adjust the cursor position without jumping or teleporting, so the cursor position is adjusted directly at the second pitch angle.

[0040] As an example but not a limitation, this embodiment shows an application scenario of remote control button debounce, such as Figure 4 and Figure 5As shown, when the remote control button is not clicked, the input pitch angle pitch_input used to calculate the y value (indicating the pitch angle used to calculate the vertical movement of the cursor pointing to the remote control on the screen) is equal to the real-time dynamic pitch angle pitch solved by the imu (indicating the real-time pitch angle data output by the IMU sensor). When the remote control button is pressed, the input pitch angle pitch_input locks the pitch angle at the moment before the button is pressed as the locked angle lock_pitch (indicating the locked pitch angle used for jitter reduction processing), which can prevent the cursor from moving downward due to the continued downward movement of the remote control angle; after the remote control button click action is completed, the lock_pitch angle is still maintained as the input, eliminating the upward movement of the cursor caused by the remote control's head-up action when the remote control lifts up the button to complete the click.

[0041] Determine the difference Δ between the locked pitch angle and the current real-time pitch angle data (represented by lock_pitch – pitch, the difference between the locked angle and the real-time pitch angle output by the current IMU after the button click action is completed). If |Δ|<0.01°, it means that the locked pitch angle and the current real-time pitch angle pitch are very close, and the input pitch angle pitch_input can be directly switched to the dynamic pitch angle pitch; if |Δ|>=0.01°, it means that the difference between the locked pitch angle and the dynamic pitch angle is large, and directly switching to the dynamic pitch angle will cause the cursor to jump, so the locked pitch angle needs to be smoothly transitioned to the dynamic pitch angle. At this time, dynamic angle capture is turned on, and the locked pitch angle is converted to the transition pitch angle; Dynamic angle tracking is started based on the current dynamic pitch angle angular velocity pth_vel (indicating the real-time pitch angle velocity). If the current angular velocity is 0, the current transition angle data is maintained; if the pitch angle velocity pth_vel is not 0, the difference dp between the transition angle trans_ang (indicating the intermediate transition angle used to transition from lock_pitch to the real-time pitch angle pitch) and the current dynamic pitch angle pitch is calculated. At this point, a dynamic pursuit model can be established, such as Figure 5 As shown, the dynamic pursuit model can be divided into four situations, with the premise that the speed direction of A needs to be the same as the speed direction of B: Case 1: B's distance is greater than A's and B moves to the right. If A wants to catch up with B, A should move in the same direction as B and at a faster speed than B. Here, Va=1.1Vb is set; Case 2: B's distance is greater than A's distance and B moves to the left. If A wants to meet B, A should move in the same direction as B and at a lower speed than B. Here, Va=0.9Vb is set; Case 3: B's distance is smaller than A's distance and B moves to the right. If A wants to meet B, A should move in the same direction as B and at a lower speed than B. Here, Va=0.9Vb is set. Case 4: B's distance is smaller than A's and B moves to the left. If A wants to catch up with B, A should move in the same direction as B and at a faster speed than B. Here, Va=1.1Vb is set. Similarly, the transition angle smoothly transitions to the real-time dynamic angle using the same catch-up model. dp (indicating the difference between the transition pitch angle and the real-time pitch angle) is less than 0 and the pitch angle velocity is greater than 0, the angular velocity needs to be amplified; dp is less than 0 and the pitch angle velocity is less than 0, the angular velocity needs to be reduced; dp is greater than 0 and the pitch angle velocity is greater than 0, the angular velocity needs to be reduced; dp is greater than 0 and the pitch angle velocity is less than 0, the angular velocity needs to be amplified. Calculate the difference between the transition angle and the current dynamic pitch angle. If the difference is less than 0.01°, it is considered that the transition has been completed. If the difference is greater than 0.01°, the dynamic angle capture continues. After the angle capture is completed, the input pitch angle is switched to the real-time dynamic pitch angle pitch_input=pitch calculated by the imu. At this point, the de-jittering and dynamic angle capture are completed, and the remote control button de-jitter function is completed.

[0042] This embodiment can effectively eliminate the problem of pointing remote control cursor jitter caused by button clicking. At the same time, the dynamic angle tracking algorithm can smoothly complete the angle transition from the locked angle to the real-time dynamic angle, prevent sudden changes in the cursor position, and improve the user experience of the pointing remote control.

[0043] In order to execute the remote control button debounce method corresponding to the above method embodiment, to achieve the corresponding functions and technical effects. Figure 6 , Figure 6 The structural block diagram of a remote control button debouncing device provided in an embodiment of the present application is shown. For the convenience of explanation, only the parts related to the present embodiment are shown. The remote control button debouncing device provided in an embodiment of the present application includes: The locking module 601 is used to control the display unit to lock the cursor position of the remote control corresponding to the display unit when it is detected that a button of the remote control is pressed, and obtain the first pitch angle corresponding to the remote control at the moment before the button is pressed; A calculation module 602, configured to calculate a first difference between the first pitch angle and a second pitch angle when a key is detected to be lifted, wherein the second pitch angle is a pitch angle of the remote controller at a corresponding moment when the key is lifted; A tracking module 603 is configured to determine a target transition angle of the remote controller by using a preset dynamic angle tracking and capturing algorithm if the first difference is greater than a preset difference, and control the display unit to adjust a cursor position of the remote controller based on the target transition angle until a second difference between the target transition angle and the real-time pitch angle of the remote controller is not greater than the preset difference; The adjustment module 604 is configured to control the display unit to adjust the cursor position of the remote controller based on the real-time pitch angle if the second difference is not greater than a preset difference.

[0044] In some embodiments, the tracking module 603 includes: A capture submodule, used to capture a target transition angle of the remote controller based on a preset transition angle and a real-time angular velocity of the remote controller; a first control submodule, configured to control the display unit to adjust a cursor position of the remote controller based on the target transition angle, and determine a second difference between the target transition angle and the real-time pitch angle; an updating submodule, configured to update the target transition angle in real time based on the target transition angle and the real-time angular velocity of the remote controller if the second difference is greater than the preset difference; The second control submodule is used to continue controlling the display unit to adjust the cursor position of the remote control based on the updated target transition angle, and return to the step of determining the second difference between the target transition angle and the real-time pitch angle until the second difference is no greater than the preset difference.

[0045] In some embodiments, the capture submodule comprises: An updating unit, configured to update the real-time angular velocity based on a preset updating strategy to obtain a target angular velocity; A superposition unit is used to superimpose the target angular velocity onto the preset transition angle to obtain the target transition angle.

[0046] In some embodiments, the updating unit is specifically configured to: If the preset transition angle is smaller than the real-time pitch angle and the real-time angular velocity is larger than the preset value, or the preset transition angle is larger than the real-time pitch angle and the real-time angular velocity is smaller than the preset value, amplifying the real-time angular velocity based on a preset magnification to obtain a target angular velocity; If the preset transition angle is greater than the real-time pitch angle and the real-time angular velocity is greater than the preset value, or the preset transition angle is less than the real-time pitch angle and the real-time angular velocity is less than the preset value, the real-time angular velocity is reduced based on a preset reduction ratio to obtain a target angular velocity.

[0047] In some embodiments, the tracking module 603 further includes: A determination submodule, used to determine whether the real-time angular velocity of the remote controller is a preset velocity value; Entering a submodule, for entering the step of capturing a target transition angle of the remote controller based on a preset transition angle and the real-time angular velocity of the remote controller if the real-time angular velocity is not the preset velocity value; The loop submodule is used to return to the step of determining whether the real-time angular velocity of the remote controller is the preset velocity value if the real-time angular velocity is the preset velocity value.

[0048] In some embodiments, the apparatus further comprises: A release module is used to release the lock on the cursor position if the difference is not greater than the preset difference, and control the display unit to adjust the cursor position of the remote controller based on the second pitch angle.

[0049] In some embodiments, during the process from when the key is pressed to when the key is released, the display unit is controlled to keep locking the cursor position.

[0050] The above-mentioned remote control button debouncing device can implement the remote control button debouncing method of the above-mentioned method embodiment. The optional items in the above-mentioned method embodiment are also applicable to this embodiment and will not be described in detail here. The rest of the contents of the embodiment of this application can refer to the contents of the above-mentioned method embodiment, and will not be repeated in this embodiment.

[0051] Figure 7 This is a schematic diagram of the structure of an electronic device provided by an embodiment of the present application. Figure 7 As shown, the electronic device 7 of this embodiment includes: at least one processor 70 ( Figure 7 Only one is shown in the figure), a memory 71, and a computer program 72 stored in the memory 71 and executable on the at least one processor 70, wherein the processor 70 implements the steps of any of the above method embodiments when executing the computer program 72.

[0052] The electronic device 7 may be a directional remote control device such as a remote controller, an air mouse, or a wireless game controller. The electronic device may include but is not limited to a processor 70 and a memory 71. Those skilled in the art will appreciate that Figure 7 It is only an example of the electronic device 7 and does not constitute a limitation on the electronic device 7. It may include more or fewer components than shown in the figure, or a combination of certain components, or different components. For example, it may also include input and output devices, network access devices, etc.

[0053] The processor 70 may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor, etc.

[0054] In some embodiments, the memory 71 may be an internal storage unit of the electronic device 7, such as a hard disk or memory of the electronic device 7. In other embodiments, the memory 71 may also be an external storage device of the electronic device 7, such as a plug-in hard disk, a smart memory card (Smart Media Card, SMC), a secure digital (Secure Digital, SD) card, a flash card (Flash Card), etc. equipped on the electronic device 7. Further, the memory 71 may also include both an internal storage unit of the electronic device 7 and an external storage device. The memory 71 is used to store an operating system, an application program, a boot loader (BootLoader), data, and other programs, such as the program code of the computer program, etc. The memory 71 may also be used to temporarily store data that has been output or is to be output.

[0055] In addition, an embodiment of the present application further provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps in any of the above method embodiments are implemented.

[0056] An embodiment of the present application provides a computer program product. When the computer program product is run on an electronic device, the electronic device implements the steps in the above-mentioned method embodiments when executing the computer program product.

[0057] In several embodiments provided in the present application, it is understood that each box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the module, a program segment or a part of a code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from that marked in the accompanying drawings. For example, two consecutive boxes can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved.

[0058] If the function is implemented in the form of a software function module and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application can essentially or in other words, the part that contributes to the prior art or the part of the technical solution can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for an electronic device to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk and other media that can store program code.

[0059] The specific embodiments described above further describe the purpose, technical solutions and beneficial effects of the present application in detail. It should be understood that the above description is only a specific embodiment of the present application and is not intended to limit the scope of protection of the present application. It is particularly pointed out that for those skilled in the art, any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included in the scope of protection of the present application.

Claims

1. A remote control button debounce method, characterized in that: include: When it is detected that a button of the remote controller is pressed, the display unit is controlled to lock the cursor position of the remote controller corresponding to the cursor on the display unit, and obtain the first pitch angle corresponding to the remote controller at a moment before the button is pressed; When it is detected that a key is lifted, a first difference between the first pitch angle and a second pitch angle is calculated, where the second pitch angle is the pitch angle of the remote controller at a corresponding moment when the key is lifted; If the first difference is greater than a preset difference, a preset dynamic angle tracking and capturing algorithm is used to determine a target transition angle of the remote controller, and based on the target transition angle, the display unit is controlled to adjust a cursor position of the remote controller until a second difference between the target transition angle and the real-time pitch angle of the remote controller is no greater than a preset difference; If the second difference is not greater than the preset difference, the display unit is controlled to adjust the cursor position of the remote controller based on the real-time pitch angle.

2. The remote control button debounce method according to claim 1, characterized in that: The method of using a preset dynamic angle tracking and capturing algorithm to determine a target transition angle of the remote controller, and controlling the display unit to adjust a cursor position of the remote controller based on the target transition angle until a second difference between the target transition angle and the real-time pitch angle of the remote controller is not greater than the preset difference, comprises: Based on a preset transition angle and a real-time angular velocity of the remote controller, capturing a target transition angle of the remote controller; Based on the target transition angle, controlling the display unit to adjust a cursor position of the remote controller, and determining a second difference between the target transition angle and the real-time pitch angle; If the second difference is greater than the preset difference, updating the target transition angle in real time based on the target transition angle and the real-time angular velocity of the remote controller; Based on the updated target transition angle, continue to control the display unit to adjust the cursor position of the remote controller, and return to the step of determining the second difference between the target transition angle and the real-time pitch angle until the second difference is no greater than the preset difference.

3. The remote control button debounce method according to claim 2, characterized in that: The capturing of the target transition angle of the remote controller based on the preset transition angle and the real-time angular velocity of the remote controller comprises: Based on a preset update strategy, updating the real-time angular velocity to obtain a target angular velocity; The target angular velocity is superimposed on the preset transition angle to obtain the target transition angle.

4. The remote controller button debounce method according to claim 3, characterized in that: The updating of the real-time angular velocity based on a preset updating strategy to obtain a target angular velocity includes: If the preset transition angle is smaller than the real-time pitch angle and the real-time angular velocity is larger than the preset value, or the preset transition angle is larger than the real-time pitch angle and the real-time angular velocity is smaller than the preset value, amplifying the real-time angular velocity based on a preset magnification to obtain a target angular velocity; If the preset transition angle is greater than the real-time pitch angle and the real-time angular velocity is greater than the preset value, or the preset transition angle is less than the real-time pitch angle and the real-time angular velocity is less than the preset value, the real-time angular velocity is reduced based on a preset reduction ratio to obtain a target angular velocity.

5. The remote controller button debounce method according to claim 2, characterized in that: Before capturing the target transition angle of the remote controller based on the preset transition angle and the real-time angular velocity of the remote controller, the method further includes: Determining whether the real-time angular velocity of the remote controller is a preset velocity value; If the real-time angular velocity is not the preset velocity value, entering the step of capturing the target transition angle of the remote controller based on the preset transition angle and the real-time angular velocity of the remote controller; If the real-time angular velocity is the preset velocity value, the process returns to the step of determining whether the real-time angular velocity of the remote controller is the preset velocity value.

6. The remote controller button debounce method according to claim 1, wherein: After calculating the difference between the first pitch angle and the second pitch angle when detecting that the key is lifted, the method further includes: If the difference is not greater than the preset difference, the cursor position is unlocked, and based on the second pitch angle, the display unit is controlled to adjust the cursor position of the remote controller.

7. The remote controller button debounce method according to claim 1, characterized in that: During the process from when the key is pressed to when the key is released, the display unit is controlled to keep locking the cursor position.

8. A remote control button debounce method, characterized in that: include: A locking module, configured to control the display unit to lock the cursor position of the remote control corresponding to the display unit when detecting that a button of the remote control is pressed, and to obtain a first pitch angle corresponding to the remote control at a moment before the button is pressed; a calculation module, configured to calculate a first difference between the first pitch angle and a second pitch angle when detecting that a key is lifted, wherein the second pitch angle is a pitch angle of the remote controller at a corresponding moment when the key is lifted; a tracking module, configured to determine a target transition angle of the remote controller by using a preset dynamic angle tracking and capturing algorithm if the first difference is greater than a preset difference, and control the display unit to adjust a cursor position of the remote controller based on the target transition angle until a second difference between the target transition angle and the real-time pitch angle of the remote controller is not greater than the preset difference; An adjustment module is configured to control the display unit to adjust a cursor position of the remote controller based on the real-time pitch angle if the second difference is not greater than a preset difference.

9. An electronic device, characterized in that: It includes a processor and a memory, the memory is used to store a computer program, and when the computer program is executed by the processor, the remote control button debouncing method as described in any one of claims 1 to 7 is implemented.

10. A computer-readable storage medium, characterized in that: It stores a computer program, which, when executed by a processor, implements the remote control button debouncing method as described in any one of claims 1 to 7.

Citation Information

Cited By

  • Method and system for improving accuracy of click operation pointing to remote controller

    CN120812331A