A cursor positioning method and device pointing to a remote controller and a pointing remote controller

By judging the credibility of the local horizontal angle calculated by the UWB sensor in the pointing remote control and re-acquisition of data when it is untrusted, the cursor jump problem caused by the fluctuation of absolute horizontal angle data is solved, and more accurate cursor positioning is achieved and user experience is improved.

CN119573716BActive Publication Date: 2025-05-02HUAWEI TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510138834.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-02-08
Publication Date
2025-05-02
Estimated Expiration
2045-02-08

AI Technical Summary

Technical Problem

The absolute horizontal angle data will fluctuate violently when it is close to the FOV boundary, exceeds the FOV or is blocked by an obstacle, causing the cursor pointing to the remote control to jump, affecting the user's user experience.

Method used

By obtaining the relative heading angle solved by the IMU sensor and the local horizontal angle solved by the UWB sensor, and determining the credibility of the local horizontal angle before generating the absolute heading angle. If the horizontal angle at the local end is not trustworthy, re-acquire the data until it is trustworthy.

Benefits of technology

By eliminating untrusted local horizontal angle data, more accurate absolute heading angle generation is achieved, thereby improving the accuracy of pointing to the cursor position of the remote control, avoiding abnormal bounces of the cursor and improving user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119573716B_ABST
    Figure CN119573716B_ABST
Patent Text Reader

Abstract

The present application discloses a cursor positioning method, device and pointing remote control for a pointing remote control. The cursor positioning method for a pointing remote control comprises: respectively obtaining a relative heading angle and a local horizontal angle, wherein the local horizontal angle is the horizontal direction angle when standing at the pointing remote control end and rotating from the pointing direction of the pointing remote control to the horizontal direction angle of the line connecting the pointing remote control and the UWB box; determining whether the local horizontal angle is credible; if the local horizontal angle is credible, generating an absolute heading angle according to the local horizontal angle and the relative heading angle, and determining the cursor position of the pointing remote control based on the absolute heading angle; if the local horizontal angle is not credible, re-executing the steps of respectively obtaining the relative heading angle calculated by the IMU sensor and the local horizontal angle calculated by the UWB sensor, and determining whether the local horizontal angle is credible, until determining that the local horizontal angle is credible. The cursor positioning method for a pointing remote control makes the generated absolute heading angle more accurate, avoids the cursor jumping of the pointing remote control, and thus improves the user experience.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of pointing remote controls, and in particular to a cursor positioning method and device for a pointing remote control, and a pointing remote control. Background Art

[0002] The pointing remote control is an innovative remote control device that uses advanced positioning technology to achieve precise pointing and interactive operations. The pointing remote control mainly uses data fusion of two sensors, IMU (Inertial Measurement Unit) and UWB (UltraWide Band), to achieve positioning.

[0003] In the related technology, IMU can give a relative heading angle based on the initial power-on moment of the remote control as 0°, and UWB can give an absolute horizontal angle based on the connection between the remote control and the UWBBox receiver as 0° to the direction of the remote control. The relative heading angle output by IMU can be stably and accurately output at a high frequency of 100hz, and will not be affected by the external environment. The disadvantage is that the relative heading angle is the relative angle relative to the power-on moment of the remote control, and cannot sense the direction of the screen. The absolute horizontal angle output by UWB can sense the direction of the screen, but the output frequency of the absolute horizontal angle is 20hz, the data fluctuates greatly, and the absolute horizontal angle is limited by the range of FOV (Field of View). If the absolute horizontal angle is close to the FOV boundary or exceeds the FOV or is blocked by obstacles, the absolute horizontal angle data will fluctuate violently, causing the cursor pointing to the remote control to jump, affecting the user experience. Summary of the invention

[0004] The present application provides a cursor positioning method and device for a pointing remote control, and a pointing remote control, so as to solve the technical problem that when the absolute horizontal angle approaches the FOV boundary or exceeds the FOV or is blocked by an obstacle, the absolute horizontal angle data will fluctuate violently, causing the cursor of the pointing remote control to jump, thereby affecting the user experience.

[0005] In order to solve the above technical problems, in a first aspect, the present application provides a cursor positioning method for a pointing remote controller, wherein the pointing remote controller is equipped with an IMU sensor and a UWB sensor, and a cursor display end is equipped with a UWB box, and the method comprises:

[0006] Respectively obtain the relative heading angle solved by the IMU sensor and the local horizontal angle solved by the UWB sensor, wherein the relative heading angle is based on the initial power-on moment of the pointing remote control as 0°, and the local horizontal angle is the horizontal direction angle when standing at the pointing remote control end and rotating from the pointing direction of the pointing remote control to the line connecting the pointing remote control and the UWB box;

[0007] Determining whether the local horizontal angle is credible;

[0008] If the local horizontal angle is credible, generating an absolute heading angle according to the local horizontal angle and the relative heading angle, and determining a cursor position pointing to the remote controller based on the absolute heading angle;

[0009] If the local horizontal angle is not credible, the steps of respectively obtaining the relative heading angle calculated by the IMU sensor and the local horizontal angle calculated by the UWB sensor and the step of determining whether the local horizontal angle is credible are re-executed until it is determined that the local horizontal angle is credible.

[0010] In the above-mentioned cursor positioning method pointing to the remote control, firstly, the relative heading angle calculated by the IMU sensor and the local horizontal angle calculated by the UWB sensor are obtained, and then it is determined whether the local horizontal angle is credible; if the local horizontal angle is credible, the absolute heading angle is generated according to the local horizontal angle and the relative heading angle, and the cursor position pointing to the remote control is determined based on the absolute heading angle; if the local horizontal angle is not credible, the steps of respectively obtaining the relative heading angle calculated by the IMU sensor and the local horizontal angle calculated by the UWB sensor and the step of determining whether the local horizontal angle is credible are re-executed until it is determined that the local horizontal angle is credible. It can be seen that by judging whether the local horizontal angle is credible before generating the absolute heading angle, the unreliable local horizontal angle can be eliminated, and the generated absolute heading angle is more accurate by fusing the reliable local horizontal angle with the relative heading angle, thereby making the cursor position pointing to the remote control more accurate, avoiding abnormal jumping of the cursor pointing to the remote control, and improving the user experience.

[0011] In one embodiment, determining whether the local horizontal angle is credible includes:

[0012] Constructing a first original value array and a second original value array respectively, wherein the first original value array includes a numerical sequence of each frame of the relative heading angle sorted from near to far according to the update time, and the second original value array includes a numerical sequence of each frame of the local horizontal angle sorted from near to far according to the update time;

[0013] Constructing a first difference array and a second difference array according to the first original value array and the second original value array respectively, wherein the first difference array includes a difference sequence of the relative heading angles of two adjacent frames sorted from near to far according to update time, and the second difference array includes a difference sequence of the local horizontal angles of two adjacent frames sorted from near to far according to update time;

[0014] A third difference array is constructed according to the first difference array and the second difference array, wherein the values ​​in the third difference array are obtained by subtracting the corresponding values ​​of the first difference array and the second difference array in the order of update time from recent to far;

[0015] Obtaining a first preset number of data from the third difference value array according to the order of update time from recent to distant, and calculating a first variance, where the first variance is the variance corresponding to the first preset number of data;

[0016] If the first variance is greater than a first preset variance threshold, it is determined that the local horizontal angle is unreliable.

[0017] In one embodiment, determining whether the local horizontal angle is credible further includes:

[0018] Constructing a third original value array, the third original value array comprising a numerical sequence of each frame of the opposite end horizontal angle sorted from near to far according to the update time, the opposite end horizontal angle being a horizontal direction angle when standing at the end of the UWB box and rotating from the center line of the UWB box to the line connecting the pointing remote control and the UWB box;

[0019] Constructing a fourth difference value array according to the third original value array, wherein the fourth difference value array includes a difference sequence of the horizontal angles of the opposite end in two adjacent frames sorted from near to far according to update time;

[0020] Obtaining a second preset number of data from the fourth difference array according to the order of update time from recent to distant, and calculating a second variance, where the second variance is the variance corresponding to the second preset number of data;

[0021] If the second variance is greater than a second preset variance threshold, it is determined that the local horizontal angle is unreliable.

[0022] In one embodiment, determining whether the local horizontal angle is credible further includes:

[0023] Constructing a fourth original value array, the fourth original value array comprising a numerical sequence of two end distances of each frame sorted from near to far according to update time, the two end distances being a straight-line distance between the UWB box and the pointing remote control;

[0024] Constructing a fifth difference array according to the fourth original value array, wherein the fifth difference array includes a difference sequence of the distances between the two ends of two adjacent frames sorted from near to far according to update time;

[0025] Obtaining a third preset number of data from the fifth difference array according to the order of update time from recent to distant, and calculating a third difference, wherein the third difference is the variance corresponding to the third preset number of data;

[0026] If the third variance is greater than a third preset variance threshold, it is determined that the local horizontal angle is unreliable.

[0027] In one embodiment, determining whether the local horizontal angle is credible further includes:

[0028] Acquire a signal shielding identification value and a signal strength identification value from the UWB sensor;

[0029] If the signal blocking identification value indicates that there is an obstacle blocking the pointing remote control and the UWB box, or the signal strength identification value is not greater than a preset signal strength threshold, it is determined that the local horizontal angle is unreliable.

[0030] In one embodiment, determining whether the local horizontal angle is credible further includes:

[0031] Determine the data update time interval corresponding to the UWB sensor at the current moment;

[0032] If the data update time interval is greater than a preset time interval threshold, it is determined that the local horizontal angle is unreliable.

[0033] In one embodiment, determining whether the local horizontal angle is credible further includes:

[0034] If the first variance is not greater than the first preset variance threshold, and the second variance is not greater than the second preset variance threshold, and the third variance is not greater than the third preset variance threshold, and the signal blocking identification value indicates that there is no obstacle blocking the pointing remote control and the UWB box, and the signal strength identification value is greater than the preset signal strength threshold, and the data update time interval is not greater than the preset time interval threshold, then it is determined that the local horizontal angle is credible.

[0035] In one embodiment, if the local horizontal angle is not credible, re-executing the steps of respectively acquiring the relative heading angle calculated by the IMU sensor and the local horizontal angle calculated by the UWB sensor and the step of determining whether the local horizontal angle is credible until it is determined that the local horizontal angle is credible includes:

[0036] If the local horizontal angle is unreliable, reacquire the relative heading angle calculated by the IMU sensor and the local horizontal angle calculated by the UWB sensor;

[0037] The third difference array is updated according to the reacquired relative heading angle and the local horizontal angle, and the fourth difference array and the fifth difference array are updated at the same time;

[0038] Re-acquire a fourth preset number of data from the third difference array in the order of update time from recent to distant, and calculate a fourth variance, where the fourth variance is the variance corresponding to the fourth preset number of data;

[0039] Re-acquire a fifth preset number of data from the fourth difference array in the order of update time from recent to far, and calculate a fifth variance, where the fifth variance is the variance corresponding to the fifth preset number of data;

[0040] Re-acquire a sixth preset number of data from the fifth difference array according to the order of update time from recent to far, and calculate a sixth variance, where the sixth variance is the variance corresponding to the sixth preset number of data;

[0041] Obtaining the updated signal shielding identification value, the signal strength identification value and the data update time interval;

[0042] If the fourth variance is not greater than the fourth preset variance threshold, and the fifth variance is not greater than the fifth preset variance threshold, and the sixth variance is not greater than the sixth preset variance threshold, and the signal blocking identification value indicates that there is no obstacle blocking the pointing remote control and the UWB box, and the signal strength indication value is greater than the preset signal strength threshold, and the data update time interval is not greater than the preset time interval threshold, then it is determined that the local horizontal angle is credible.

[0043] In a second aspect, the present application provides a cursor positioning device for a pointing remote controller, wherein the pointing remote controller is equipped with an IMU sensor and a UWB sensor, and a cursor display end is equipped with a UWB box, and the device comprises:

[0044] An acquisition module is used to respectively acquire the relative heading angle solved by the IMU sensor and the local horizontal angle solved by the UWB sensor, wherein the relative heading angle is based on the initial power-on moment of the pointing remote control as 0°, and the local horizontal angle is the horizontal direction angle when standing at the pointing remote control end and rotating from the pointing direction of the pointing remote control to the line connecting the pointing remote control and the UWB box;

[0045] A credibility determination module, used to determine whether the local horizontal angle is credible;

[0046] a cursor position determination module, configured to generate an absolute heading angle according to the local horizontal angle and the relative heading angle if the credibility determination module determines that the local horizontal angle is credible, and determine the cursor position pointing to the remote controller based on the absolute heading angle;

[0047] The acquisition module is further configured to, if the credibility determination module determines that the local horizontal angle is not credible, re-execute the steps of respectively acquiring the relative heading angle resolved by the IMU sensor and the local horizontal angle resolved by the UWB sensor;

[0048] The credibility determination module is also used to re-execute the step of determining whether the local horizontal angle is credible after the acquisition module re-executes the step of respectively acquiring the relative heading angle calculated by the IMU sensor and the local horizontal angle calculated by the UWB sensor.

[0049] In a third aspect, the present application provides a pointing remote control, 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 cursor positioning method of the pointing remote control is implemented. BRIEF DESCRIPTION OF THE DRAWINGS

[0050] Figure 1 A schematic diagram of a flow chart of a method for positioning a cursor pointing to a remote controller according to an embodiment of the present application;

[0051] Figure 2 This is a schematic diagram of the structure of a cursor positioning device pointing to a remote controller according to an embodiment of the present application;

[0052] Figure 3 This is a schematic diagram of the structure of a pointing remote control shown in an embodiment of the present application;

[0053] Figure 4 A schematic diagram of the horizontal angle of the local end in the method for positioning a cursor pointing to a remote controller according to an embodiment of the present application;

[0054] Figure 5 This is a schematic diagram of the horizontal angle of the opposite end in the method for positioning a cursor pointing to a remote controller according to an embodiment of the present application. DETAILED DESCRIPTION

[0055] 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.

[0056] Please refer to Figure 1 , Figure 1A flowchart of a cursor positioning method for a pointing remote control provided in an embodiment of the present application. The cursor positioning method for a pointing remote control in an embodiment of the present application can be applied to a pointing remote control, wherein the pointing remote control is equipped with an IMU sensor and a UWB sensor, and a cursor display end is equipped with a UWB box, and the cursor display end can be a smart TV or a car screen.

[0057] like Figure 1 As shown, the cursor positioning method pointing to the remote controller of this embodiment includes steps S101 to S103, which are described in detail as follows:

[0058] Step S101: respectively obtain the relative heading angle calculated by the IMU sensor and the local horizontal angle calculated by the UWB sensor, wherein the relative heading angle is based on the initial power-on moment of the pointing remote controller as 0°. Figure 4 As shown, the local horizontal angle is the horizontal angle when standing at the pointing remote control end and rotating from the direction of the pointing remote control to the line connecting the pointing remote control and the UWB box.

[0059] In this step, the relative heading angle calculated by the IMU sensor can be output stably and will not be affected by the external environment. However, since the relative heading angle calculated by the IMU sensor is based on the 0° reference when the remote control is initially powered on, the screen direction of the cursor display end cannot be sensed. The local horizontal angle calculated by the UWB sensor can sense the screen direction of the cursor display end, but when approaching the FOV boundary or exceeding the FOV or being blocked by obstacles, the absolute horizontal angle data will fluctuate violently. If the relative heading angle calculated by the IMU sensor is directly fused with the local horizontal angle calculated by the UWB sensor, the cursor pointing to the remote control will jump, affecting the user experience.

[0060] Step S102: Determine whether the local horizontal angle is credible.

[0061] In this step, in order to avoid the jumping of the cursor pointing to the remote control, before fusing the relative heading angle calculated by the IMU sensor with the local horizontal angle calculated by the UWB sensor, determine whether the local horizontal angle is credible; if the local horizontal angle is credible, the relative heading angle calculated by the IMU sensor and the local horizontal angle calculated by the UWB sensor are fused; if the local horizontal angle is unreliable, the relative heading angle calculated by the IMU sensor and the local horizontal angle calculated by the UWB sensor are not fused.

[0062] In an optional embodiment, step S102 includes step S1021: constructing a first original value array N1 and a second original value array N2 respectively, the first original value array N1 includes a numerical sequence of each frame of the relative heading angle yaw sorted from near to far according to the update time {yaw_k, yaw_k-1, yaw_k-2, yaw_k-3, ...}, and the second original value array N2 includes a numerical sequence of each frame of the local horizontal angle azi sorted from near to far according to the update time {azi_k, azi_k-1, azi_k-2, azi_k-3, ...}; constructing a first difference array M1 and a second difference array M2 respectively according to the first original value array N1 and the second original value array N2, the first difference array M1 includes a difference sequence of relative heading angles yaw of two adjacent frames sorted from near to far according to the update time:

[0063] {(yaw_k)-(yaw_k-1),(yaw_k-1)-(yaw_k-2),(yaw_k-2)-(yaw_k-3),(yaw_k-3)-(yaw_k-4),...};

[0064] The second difference array M2 includes a difference sequence of the local horizontal angle azi of two adjacent frames sorted from near to far according to the update time:

[0065] {(azi_k)-(azi_k-1),(azi_k-1)-(azi_k-2),(azi_k-2)-(azi_k-3),(azi_k-3)-(azi_k-4),...};

[0066] The third difference array M3 is constructed according to the first difference array M1 and the second difference array M2. The values ​​in the third difference array M3 are obtained by subtracting the corresponding values ​​of the first difference array M1 and the second difference array M2 in the order of update time from recent to far, that is, the third difference data M3 includes a difference sequence:

[0067] {[(yaw_k)-(yaw_k-1)-(azi_k)+(azi_k-1)],[(yaw_k-1)-(yaw_k-2)-(azi_k-1)+(azi_k-2)],[(ya w_k-2)-(yaw_k-3)-(azi_k-2)+(azi_k-3)],[(yaw_k-3)-(yaw_k-4)-(azi_k-3)+(azi_k-4)],...};

[0068] A first preset number of data is obtained in the third difference array M3 according to the order of update time from near to far, and a first variance S1 is calculated, where the first variance S1 is the variance corresponding to the first preset number of data; if the first variance S1 is greater than the first preset variance threshold, it is determined that the local horizontal angle azi is unreliable.

[0069] It should be noted that, when the absolute horizontal angle azi approaches the FOV boundary or exceeds the FOV or is blocked by obstacles and other abnormal situations, the absolute horizontal angle azi will fluctuate violently, while the relative heading angle yaw will not fluctuate violently at this time. That is, when the absolute horizontal angle azi produces unreliable fluctuations, the relative heading angle yaw will not fluctuate synchronously; and when the absolute horizontal angle azi produces credible fluctuations, the relative heading angle yaw will fluctuate synchronously. In step S1021, the variance of the first difference array M1 can characterize the fluctuation of the relative heading angle yaw, the variance of the second difference array M2 can characterize the fluctuation of the absolute horizontal angle azi, and the first variance S1 can characterize the fluctuation correlation between the relative heading angle yaw and the absolute horizontal angle azi. If the first variance S1 is greater than the first preset variance threshold, it is considered that the fluctuation correlation between the relative heading angle yaw and the absolute horizontal angle azi is low, the absolute horizontal angle azi has produced unreliable fluctuations, and it is determined that the local horizontal angle azi is unreliable.

[0070] In an optional implementation, step S102 further includes step S1022: constructing a third original value array N3, the third original value array N3 including a numerical sequence of each frame of the opposite end horizontal angle dstazi sorted from near to far according to the update time:

[0071] {dstazi_k,dstazi_k-1,dstazi_k-2,dstazi_k-3,...};

[0072] like Figure 5 As shown, the opposite end horizontal angle dstazi is the horizontal angle when standing at the UWB box end and rotating from the center line of the UWB box to the horizontal direction angle pointing to the line connecting the remote control and the UWB box; the fourth difference array M4 is constructed according to the third original value array N3, and the fourth difference array M4 includes a difference sequence of the opposite end horizontal angle dstazi of two adjacent frames sorted from near to far according to the update time:

[0073] {(dstazi_k)-(dstazi_k-1),(dstazi_k-1)-(dstazi_k-2),(dstazi_k-2)-(dstazi_k-3), (dstazi_k-3)-(dstazi_k-4),...};

[0074] A second preset amount of data is obtained in the fourth difference array according to the order of update time from near to far, and a second variance S2 is calculated, where the second variance S2 is the variance corresponding to the second preset amount of data; if the second variance S2 is greater than the second preset variance threshold, it is determined that the local horizontal angle azi is unreliable.

[0075] It should be noted that when the absolute horizontal angle azi approaches the FOV boundary or exceeds the FOV or is blocked by obstacles, the opposite horizontal angle dstazi will also fluctuate violently. In step S1022, the fourth difference array M4 can characterize the fluctuation of the opposite horizontal angle dstazi. If the second variance S2 is greater than the second preset variance threshold, it is considered that the absolute horizontal angle azi has produced an unreliable fluctuation, and it is determined that the local horizontal angle azi is unreliable.

[0076] In an optional implementation, step S102 further includes step S1023: constructing a fourth original value array N4, the fourth original value array N4 includes a numerical sequence {rho_k, rho_k-1, rho_k-2, rho_k-3, ...} of each frame of the distance rho at both ends sorted from near to far according to the update time, and the distance rho at both ends is the straight-line distance between the UWB box and the pointing remote control; constructing a fifth difference array M5 according to the fourth original value array N4, the fifth difference array M5 includes a difference sequence of the distance rho at both ends of two adjacent frames sorted from near to far according to the update time:

[0077] {(rho_k)-(rho_k-1),(rho_k-1)-(rho_k-2),(rho_k-2)-(rho_k-3),(rho_k-3)-(rho_k-4),...};

[0078] A third preset number of data is obtained in the fifth difference array M5 according to the order of update time from near to far, and a third difference S3 is calculated, where the third difference S3 is the variance corresponding to the third preset number of data; if the third difference S3 is greater than the third preset variance threshold, it is determined that the local horizontal angle azi is unreliable.

[0079] It should be noted that when the absolute horizontal angle azi approaches the FOV boundary or exceeds the FOV or is blocked by obstacles, the distance rho at both ends will also fluctuate violently. In step S1023, the fifth difference array M5 can characterize the fluctuation of the distance rho at both ends. If the third variance S3 is greater than the third preset variance threshold, it is considered that the absolute horizontal angle azi has produced an unreliable fluctuation, and it is determined that the horizontal angle azi at this end is unreliable.

[0080] In an optional embodiment, step S102 also includes step S1024: obtaining a signal occlusion identification value Signal_occlusion and a signal strength identification value Signal_intensity from the UWB sensor; if the signal occlusion identification value Signal_occlusion indicates that there is an obstacle between the remote control and the UWB box, or the signal strength identification value Signal_intensity is not greater than a preset signal strength threshold, it is determined that the horizontal angle azi of the local end is unreliable.

[0081] It should be noted that the signal occlusion identification value Signal_occlusion and the signal strength identification value Signal_intensity can be directly obtained from the UWB sensor. When the signal occlusion identification value Signal_occlusion is 1, it indicates that there is an obstacle blocking the pointing remote control and the UWB box. At this time, the local horizontal angle azi is determined to be unreliable; when the signal occlusion identification value Signal_occlusion is 0, it indicates that there is no obstacle blocking the pointing remote control and the UWB box. The size of the signal strength identification value Signal_intensity can represent the signal strength of the UWB sensor. If the signal strength identification value Signal_intensity is not greater than the preset signal strength threshold, it is considered that the UWB sensor is working abnormally, and at this time, the local horizontal angle azi is determined to be unreliable; if the signal strength identification value Signal_intensity is greater than the preset signal strength threshold, the UWB sensor is considered to be working normally.

[0082] In an optional implementation, step S102 further includes step S1025: determining a data update time interval ts corresponding to the UWB sensor at the current moment; if the data update time interval ts is greater than a preset time interval threshold, determining that the local horizontal angle azi is unreliable.

[0083] It should be noted that the data update time interval ts can represent the time interval between two adjacent frames of data updated by the UWB sensor. If the data update time interval ts is greater than the preset time interval threshold, it indicates that the UWB sensor is working abnormally, and at this time, it is determined that the local horizontal angle azi is unreliable; if the data update time interval ts is not greater than the preset time interval threshold, it is considered that the UWB sensor is working normally.

[0084] In an optional implementation, if the first variance S1 is not greater than the first preset variance threshold, and the second variance S2 is not greater than the second preset variance threshold, and the third variance S3 is not greater than the third preset variance threshold, and the signal occlusion identification value Signal_occlusion indicates that there is no obstacle between the pointing remote control and the UWB box, and the signal strength identification value Signal_intensity is greater than the preset signal strength threshold, and the data update time interval ts is not greater than the preset time interval threshold, then it is determined that the local horizontal angle azi is credible. By combining the first variance S1, the second variance S2, the third variance S3, the signal occlusion identification value Signal_occlusion, the signal strength identification value Signal_intensity and the data update time interval ts, it is determined whether the local horizontal angle azi is credible, so that the determination of whether the local horizontal angle azi is credible is more comprehensive and accurate.

[0085] Step S103: if the local horizontal angle is credible, an absolute heading angle is generated according to the local horizontal angle and the relative heading angle, and a cursor position pointing to the remote controller is determined based on the absolute heading angle.

[0086] In this step, if step S102 determines that the local horizontal angle azi is credible, the local horizontal angle azi and the relative heading angle yaw can be used for data fusion to obtain an accurate absolute heading angle, and the cursor position pointing to the remote control is obtained based on the accurate absolute heading angle. At this time, the cursor position pointing to the remote control is more accurate and will not jump.

[0087] In an optional implementation, if step S102 determines that the local horizontal angle is not credible, then step S101 and step S102 are re-executed until it is determined that the local horizontal angle azi is credible. Specifically, if step S102 determines that the local horizontal angle azi is not credible, then the relative heading angle yaw solved by the IMU sensor and the local horizontal angle azi solved by the UWB sensor are re-acquired; the third difference array M3 is updated according to the re-acquired relative heading angle yaw and the local horizontal angle azi, and the fourth difference array M4 and the fifth difference array M5 are updated at the same time; the fourth preset number of data is re-acquired in the third difference array M3 according to the order of update time from near to far, and the fourth variance S4 is calculated, and the fourth variance S4 is the variance corresponding to the fourth preset number of data; the fifth preset number of data is re-acquired in the fourth difference array M4 according to the order of update time from near to far, and the fifth variance S5 is calculated, and the fifth variance S5 is the variance corresponding to the fifth preset number of data; the fifth difference array M5 is re-acquired in the fifth difference array M5 according to the order of update time from near to far A sixth preset number of data is obtained from group M5, and a sixth variance S6 is calculated, where the sixth variance S6 is the variance corresponding to the sixth preset number of data; an updated signal occlusion identification value Signal_occlusion, a signal strength identification value Signal_intensity and a data update time interval ts are obtained; if the fourth variance S4 is not greater than the fourth preset variance threshold, and the fifth variance S5 is not greater than the fifth preset variance threshold, and the sixth variance S6 is not greater than the sixth preset variance threshold, and the signal occlusion identification value Signal_occlusion indicates that there is no obstacle blocking the remote control and the UWB box, and the signal strength indication value Signal_intensity is greater than the preset signal strength threshold, and the data update time interval ts is not greater than the preset time interval threshold, then it is determined that the local horizontal angle azi is credible.

[0088] It should be noted that the abnormal situations such as the absolute horizontal angle azi approaching the FOV boundary or exceeding the FOV or being blocked by obstacles are mostly caused by accidental situations and will not continue. By updating the third difference array M3, the fourth difference array M4, the fifth difference array M5, the signal occlusion identification value Signal_occlusion, the signal strength identification value Signal_intensity and the data update time interval ts, the reliable local horizontal angle azi can be identified with the help of the fourth variance S4, the fifth variance S5, the sixth variance S6, the signal occlusion identification value Signal_occlusion, the signal strength identification value Signal_intensity and the data update time interval ts, and continue to perform data fusion through the reliable local horizontal angle azi and the relative heading angle yaw, so as to obtain an accurate absolute heading angle, and obtain the cursor position pointing to the remote control based on the accurate absolute heading angle.

[0089] Preferably, the first preset number, the second preset number, and the third preset number are all 10, and the fourth preset number, the fifth preset number, and the sixth preset number are all 5. The first preset number, the second preset number, and the third preset number are set to larger values, and the fourth preset number, the fifth preset number, and the sixth preset number are set to smaller values, so that when the pointing remote control encounters abnormal situations such as the absolute horizontal angle azi approaching the FOV boundary or exceeding the FOV or being blocked by obstacles, the untrustworthy local horizontal angle azi can be quickly eliminated, and when the abnormal situation disappears, the pointing remote control can use the credible local horizontal angle azi to quickly generate an accurate cursor position, thereby further improving the user experience.

[0090] In the above-mentioned cursor positioning method pointing to the remote control, firstly, the relative heading angle calculated by the IMU sensor and the local horizontal angle calculated by the UWB sensor are obtained, and then it is determined whether the local horizontal angle is credible; if the local horizontal angle is credible, the absolute heading angle is generated according to the local horizontal angle and the relative heading angle, and the cursor position pointing to the remote control is determined based on the absolute heading angle; if the local horizontal angle is not credible, the steps of respectively obtaining the relative heading angle calculated by the IMU sensor and the local horizontal angle calculated by the UWB sensor and the step of determining whether the local horizontal angle is credible are re-executed until it is determined that the local horizontal angle is credible. It can be seen that by judging whether the local horizontal angle is credible before generating the absolute heading angle, the unreliable local horizontal angle can be eliminated, and the generated absolute heading angle is more accurate by fusing the reliable local horizontal angle with the relative heading angle, thereby making the cursor position pointing to the remote control more accurate, avoiding abnormal jumping of the cursor pointing to the remote control, and improving the user experience.

[0091] In order to execute the cursor positioning method pointing to the remote control corresponding to the above method embodiment, so as to achieve the corresponding functions and technical effects. Figure 2 , Figure 2 A structural block diagram of a cursor positioning device for a pointing remote control provided in an embodiment of the present application is shown, wherein the pointing remote control is equipped with an IMU sensor and a UWB sensor, and a cursor display end is equipped with a UWB box, and the cursor display end may be a smart TV or a car screen.

[0092] For ease of description, only the parts related to this embodiment are shown. The cursor positioning device 20 pointing to the remote control provided in the embodiment of the present application includes:

[0093] An acquisition module 21 is used to respectively acquire the relative heading angle solved by the IMU sensor and the local horizontal angle solved by the UWB sensor, wherein the relative heading angle is based on the initial power-on moment of the pointing remote control as 0°, and the local horizontal angle is the horizontal direction angle when standing at the pointing remote control end and rotating from the pointing direction of the pointing remote control to the line connecting the pointing remote control and the UWB box;

[0094] A credibility determination module 22, used to determine whether the local horizontal angle is credible;

[0095] a cursor position determination module 23, configured to generate an absolute heading angle according to the local horizontal angle and the relative heading angle if the credibility determination module determines that the local horizontal angle is credible, and determine the cursor position pointing to the remote controller based on the absolute heading angle;

[0096] The acquisition module 21 is also used for, if the credibility determination module determines that the local horizontal angle is not credible, re-execute the steps of respectively acquiring the relative heading angle solved by the IMU sensor and the local horizontal angle solved by the UWB sensor;

[0097] The credibility determination module 22 is also used to re-execute the step of determining whether the local horizontal angle is credible after the acquisition module 21 re-executes the step of respectively acquiring the relative heading angle calculated by the IMU sensor and the local horizontal angle calculated by the UWB sensor.

[0098] The above-mentioned cursor positioning device 20 pointing to the remote control can implement the cursor positioning method pointing to the remote control 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 the present application can refer to the contents of the above-mentioned method embodiment, and will not be repeated in this embodiment.

[0099] Figure 3 This is a schematic diagram of the structure of a pointing remote control provided by an embodiment of the present application. Figure 3 As shown, the pointing remote controller 30 of this embodiment includes: at least one processor 31 ( Figure 3 Only one is shown in the figure), a memory 32 and a computer program 33 stored in the memory 32 and executable on the at least one processor 31, wherein the processor 31 implements the steps of any of the above method embodiments when executing the computer program 33.

[0100] Those skilled in the art will understand that Figure 3 It is only an example of the pointing remote control 30 and does not constitute a limitation on the pointing remote control 30. 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.

[0101] The processor 31 may be a microcontroller unit (MCU), 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 the processor may be any conventional processor, etc.

[0102] In some embodiments, the memory 32 may be an internal storage unit of the pointing remote controller 30. The memory 32 is used to store an operating system, an application program, a boot loader, data, and other programs, such as program codes of the computer program, etc. The memory 32 may also be used to temporarily store data that has been output or is to be output.

[0103] 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.

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

[0105] 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.

[0106] If the functions are implemented in the form of software function modules and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application can be essentially or partly embodied in the form of a software product that contributes to the prior art. The computer software product is stored in a storage medium and includes several instructions for a computer device to execute all or part of the steps of the methods described in the various embodiments of the present application. The aforementioned storage media include: 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 codes.

[0107] 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 method for positioning a cursor pointing to a remote controller, characterized in that: The pointing remote controller is equipped with an IMU sensor and a UWB sensor, and the cursor display end is equipped with a UWB box. The method includes: Respectively obtain the relative heading angle solved by the IMU sensor and the local horizontal angle solved by the UWB sensor, wherein the relative heading angle is based on the initial power-on moment of the pointing remote control as 0°, and the local horizontal angle is the horizontal direction angle when standing at the pointing remote control end and rotating from the pointing direction of the pointing remote control to the line connecting the pointing remote control and the UWB box; Determining whether the local horizontal angle is credible; If the local horizontal angle is credible, generating an absolute heading angle according to the local horizontal angle and the relative heading angle, and determining the cursor position pointing to the remote controller based on the absolute heading angle; If the local horizontal angle is not credible, re-performing the steps of respectively acquiring the relative heading angle calculated by the IMU sensor and the local horizontal angle calculated by the UWB sensor and determining whether the local horizontal angle is credible, until it is determined that the local horizontal angle is credible; Determining whether the local horizontal angle is credible includes: Constructing a first original value array and a second original value array respectively, wherein the first original value array includes a numerical sequence of each frame of the relative heading angle sorted from near to far according to the update time, and the second original value array includes a numerical sequence of each frame of the local horizontal angle sorted from near to far according to the update time; Constructing a first difference array and a second difference array according to the first original value array and the second original value array respectively, wherein the first difference array includes a difference sequence of the relative heading angles of two adjacent frames sorted from near to far according to update time, and the second difference array includes a difference sequence of the local horizontal angles of two adjacent frames sorted from near to far according to update time; A third difference array is constructed according to the first difference array and the second difference array, wherein the values ​​in the third difference array are obtained by subtracting the corresponding values ​​of the first difference array and the second difference array in the order of update time from recent to far; Obtaining a first preset number of data from the third difference value array according to the order of update time from recent to distant, and calculating a first variance, where the first variance is the variance corresponding to the first preset number of data; If the first variance is greater than a first preset variance threshold, it is determined that the local horizontal angle is unreliable.

2. The method for positioning a cursor pointing to a remote controller as claimed in claim 1, characterized in that: The determining whether the local horizontal angle is credible further includes: Constructing a third original value array, the third original value array comprising a numerical sequence of each frame of the opposite end horizontal angle sorted from near to far according to the update time, the opposite end horizontal angle being a horizontal direction angle when standing at the end of the UWB box and rotating from the center line of the UWB box to the line connecting the pointing remote control and the UWB box; Constructing a fourth difference value array according to the third original value array, wherein the fourth difference value array includes a difference sequence of the horizontal angles of the opposite end in two adjacent frames sorted from near to far according to update time; Obtaining a second preset number of data from the fourth difference array according to the order of update time from recent to distant, and calculating a second variance, where the second variance is the variance corresponding to the second preset number of data; If the second variance is greater than a second preset variance threshold, it is determined that the local horizontal angle is unreliable.

3. The method for positioning a cursor pointing to a remote controller as claimed in claim 2, characterized in that: The determining whether the local horizontal angle is credible further includes: Constructing a fourth original value array, the fourth original value array comprising a numerical sequence of two end distances of each frame sorted from near to far according to update time, the two end distances being a straight-line distance between the UWB box and the pointing remote control; Constructing a fifth difference array according to the fourth original value array, wherein the fifth difference array includes a difference sequence of the distances between the two ends of two adjacent frames sorted from near to far according to update time; Obtaining a third preset number of data from the fifth difference array according to the order of update time from recent to distant, and calculating a third difference, wherein the third difference is the variance corresponding to the third preset number of data; If the third variance is greater than a third preset variance threshold, it is determined that the local horizontal angle is unreliable.

4. The method for positioning a cursor pointing to a remote controller as claimed in claim 3, characterized in that: The determining whether the local horizontal angle is credible further includes: Acquire a signal shielding identification value and a signal strength identification value from the UWB sensor; If the signal blocking identification value indicates that there is an obstacle blocking the pointing remote control and the UWB box, or the signal strength identification value is not greater than a preset signal strength threshold, it is determined that the local horizontal angle is unreliable.

5. The method for positioning a cursor pointing to a remote controller as claimed in claim 4, characterized in that: The determining whether the local horizontal angle is credible further includes: Determine the data update time interval corresponding to the UWB sensor at the current moment; If the data update time interval is greater than a preset time interval threshold, it is determined that the local horizontal angle is unreliable.

6. The method for positioning a cursor pointing to a remote controller as claimed in claim 5, characterized in that: The determining whether the local horizontal angle is credible further includes: If the first variance is not greater than the first preset variance threshold, and the second variance is not greater than the second preset variance threshold, and the third variance is not greater than the third preset variance threshold, and the signal blocking identification value indicates that there is no obstacle blocking the pointing remote control and the UWB box, and the signal strength identification value is greater than the preset signal strength threshold, and the data update time interval is not greater than the preset time interval threshold, then it is determined that the local horizontal angle is credible.

7. The method for positioning a cursor pointing to a remote controller as claimed in claim 6, characterized in that: If the local horizontal angle is not credible, re-performing the steps of respectively acquiring the relative heading angle calculated by the IMU sensor and the local horizontal angle calculated by the UWB sensor and the step of determining whether the local horizontal angle is credible until it is determined that the local horizontal angle is credible includes: If the local horizontal angle is unreliable, reacquire the relative heading angle calculated by the IMU sensor and the local horizontal angle calculated by the UWB sensor; The third difference array is updated according to the reacquired relative heading angle and the local horizontal angle, and the fourth difference array and the fifth difference array are updated at the same time; Re-acquire a fourth preset number of data from the third difference array in the order of update time from recent to distant, and calculate a fourth variance, where the fourth variance is the variance corresponding to the fourth preset number of data; Re-acquire a fifth preset number of data from the fourth difference array in the order of update time from recent to far, and calculate a fifth variance, where the fifth variance is the variance corresponding to the fifth preset number of data; Re-acquire a sixth preset number of data from the fifth difference array according to the order of update time from recent to far, and calculate a sixth variance, where the sixth variance is the variance corresponding to the sixth preset number of data; Obtaining the updated signal shielding identification value, the signal strength identification value and the data update time interval; If the fourth variance is not greater than the fourth preset variance threshold, and the fifth variance is not greater than the fifth preset variance threshold, and the sixth variance is not greater than the sixth preset variance threshold, and the signal blocking identification value indicates that there is no obstacle blocking the pointing remote control and the UWB box, and the signal strength indication value is greater than the preset signal strength threshold, and the data update time interval is not greater than the preset time interval threshold, then it is determined that the local horizontal angle is credible.

8. A cursor positioning device pointing to a remote controller, characterized in that: The pointing remote controller is equipped with an IMU sensor and a UWB sensor, and the cursor display end is equipped with a UWB box. The device includes: An acquisition module is used to respectively acquire the relative heading angle solved by the IMU sensor and the local horizontal angle solved by the UWB sensor, wherein the relative heading angle is based on the initial power-on moment of the pointing remote control as 0°, and the local horizontal angle is the horizontal direction angle when standing at the pointing remote control end and rotating from the pointing direction of the pointing remote control to the line connecting the pointing remote control and the UWB box; a credibility determination module, configured to determine whether the local horizontal angle is credible, wherein the determining whether the local horizontal angle is credible comprises: constructing a first original value array and a second original value array respectively, wherein the first original value array comprises a numerical sequence of each frame of the relative heading angle sorted from near to far according to the update time, and the second original value array comprises a numerical sequence of each frame of the local horizontal angle sorted from near to far according to the update time; constructing a first difference value array and a second difference value array respectively according to the first original value array and the second original value array, wherein the first difference value array comprises a difference value sequence of the relative heading angle of two adjacent frames sorted from near to far according to the update time , the second difference array includes a difference sequence of the local horizontal angle of two adjacent frames sorted from near to far according to the update time; a third difference array is constructed according to the first difference array and the second difference array, and the values ​​in the third difference array are obtained by subtracting the corresponding values ​​of the first difference array and the second difference array according to the update time from near to far; a first preset number of data is obtained from the third difference array according to the update time from near to far, and a first variance is calculated, the first variance is the variance corresponding to the first preset number of data; if the first variance is greater than a first preset variance threshold, it is determined that the local horizontal angle is unreliable; a cursor position determination module, configured to generate an absolute heading angle according to the local horizontal angle and the relative heading angle if the credibility determination module determines that the local horizontal angle is credible, and determine the cursor position pointing to the remote controller based on the absolute heading angle; The acquisition module is further configured to, if the credibility determination module determines that the local horizontal angle is not credible, re-execute the steps of respectively acquiring the relative heading angle resolved by the IMU sensor and the local horizontal angle resolved by the UWB sensor; The credibility determination module is also used to re-execute the step of determining whether the local horizontal angle is credible after the acquisition module re-executes the step of respectively acquiring the relative heading angle calculated by the IMU sensor and the local horizontal angle calculated by the UWB sensor.

9. A pointing remote controller, characterized in that: The method comprises 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 method for positioning a cursor pointing to a remote controller as claimed in any one of claims 1 to 7 is implemented.

Citation Information

Patent Citations

  • Device and method for remote control and annotation associated with electronic device

    CN118355357A

  • Generation method for cursor position of remote controller and remote controller

    CN119011916A