The present invention relates to systems and methods for reliably detecting motion control of mobile devices executing virtual tour applications.
Many mobile devices, including computer tablets and smartphones, rely on either one or more motion detecting devices such as gyroscopes, accelerometers and/or magnetometers, to detect motion of the device in the X, Y and/or Z axes for executing software applications.
Conventionally, gyroscopic technology enable these devices to measure their own angles of rotation across X, Y and Z axes. In some devices though, the inclusion of gyroscopic technology is cost-prohibitive and/or consumes excessive battery power. Hence, some devices, especially the smaller devices, such as smartphones, rely on a combination of magnetometer and accelerometer data values (from integrated technologies), to yield a similar spatial understanding of the mobile device's angles of rotation. However, magnetometers are often unreliable when used near any device or structure that may itself be magnetized and/or generates an electromagnetic field.
It is therefore apparent that an urgent need exists for reliably processing data values from magnetometers embedded in mobile devices. This improved processing of data values enables these devices to provide reliable angular data values that a mobile device application such as a virtual tour application can rely on to produce a smooth flowing display.
To achieve the foregoing and in accordance with the present invention, systems and methods for motion control detection is provided. In particular, the systems and methods for reliably detecting motion control of mobile devices executing virtual tour applications.
In one embodiment, a computerized mobile device is configured to reliably detect angular rotations of the mobile device. The mobile device includes a magnetometer for generating directional values representing the respective angular rotations. The mobile device detects abrupt change(s) in additional directional values relative to the prior directional values, and if an abrupt change in an additional directional value is detected, then an appropriate weight is assigned to the additional data value.
In some embodiments, in addition to generating directional values, the magnetometer may also generate corresponding magnitude values. The mobile device evaluates the corresponding magnitude values and if an amplitude of a magnitude value is greater than a threshold, then the mobile device decreases a confidence value associated with the corresponding directional value.
Note that the various features of the present invention described above may be practiced alone or in combination. These and other features of the present invention will be described in more detail below in the detailed description of the invention and in conjunction with the following figures.
In order that the present invention may be more clearly ascertained, some embodiments will now be described, by way of example, with reference to the accompanying drawings, in which:
a is a graph which exemplifies the signal produced by a mobile device as it is rotated about the Z-Axis without the presence of magnetic interference and the resulting data which is yielded when device acceleration is applied as a means of modulation; and
b is a graph which exemplifies the signal produced by a mobile device as it is rotated about the Z-Axis without the presence of magnetic interference and the resulting data which is yielded when device acceleration and direction of magnetic signal are applied together as a means of modulation.
The present invention will now be described in detail with reference to several embodiments thereof as illustrated in the accompanying drawings. In the following description, numerous specific details are set forth in order to provide a thorough understanding of embodiments of the present invention. It will be apparent, however, to one skilled in the art, that embodiments may be practiced without some or all of these specific details. In other instances, well known process steps and/or structures have not been described in detail in order to not unnecessarily obscure the present invention. The features and advantages of embodiments may be better understood with reference to the drawings and discussions that follow.
The present invention relates to systems and methods for reliably detecting motion control of mobile devices executing virtual tour (herein after also referred to as “VT”) applications. Note that the term “mobile device” is intended to include all portable electronic devices including cellular phones, computerized tablets, cameras, and hand-held gaming devices. To facilitate discussion,
In this embodiment, mobile device 100 includes an accelerometer (not shown) which typically measures linear motion along X-Y, X-Z and Y-Z planes, and a magnetometer (not shown) which typically measures rotation around X-Axis 102, Y-Axis 103 and Z-Axis 104.
Suitable accelerometers and magnetometers for mobile device 100 are commercially available from a variety of manufacturers including ST Electronics Ltd of Berkshire, United Kingdom, AKM Semiconductor Inc. of San Jose, Calif., and InvenSense Inc. of Sunnyvale, Calif.
While a magnetometer is a relatively inexpensive and accurate method for measuring relative and/or absolute angular rotations relative to the Earth's magnetic field, magnetometer readings can be easily corrupted from interferences caused by magnetized structures or devices, or from electromagnetic fields generated by electrical/electronic devices such as electric motors and cathode ray displays. These interferences and disturbances can cause the magnetometer to generate erroneous values by altering the magnetometer's primary point of reference which is based on the normal (magnetic) North-South orientation of the Earth's magnetic field.
For example, as illustrated in
The generally more reliable nature of accelerometer values makes them suitable for use in modulating the motion conveyed by mobile device 100's magnetometer. The onset of linear acceleration may indicate that rotational motion is occurring, while the absence of acceleration may indicate that the device is likely stationary—and thus any suggestion of large motions from mobile device 100's magnetometer without the presence of acceleration may be treated as erroneous and not conveyed to the user. In other words, significant changes from the magnetometer without acceleration may indicate a false reading which can be ignored.
Hence many possible motion detection strategies, e.g., acceleration detection techniques for mobile device 100 can be implemented, including the following exemplary techniques, alone and in combination, to reliably recognize a significant change in motion of mobile device 100.
In some embodiments, as illustrated by the flow diagram
One possible presumption is that abrupt differences in rotational direction value (magnetic bearing) are likely caused by external magnetic interferences—as opposed to actual sudden rotational acceleration in mobile device 100. Accordingly, the trust given to a specific magnetometer data value can be assigned in the form of an appropriate weight (up to, for example, a maximum of 100%) depending on its variance from the plurality of preceding directional values (step 330). If trust is relatively high, then the most recent directional value from the magnetometer can be used (step 350). Conversely, if trust is relatively low, then the directional value may revert to the last trusted heading based on the previous directional value(s) and/or the weighted most recent directional value (step 340). An exemplary illustrative pseudo-code follows:
As discussed above and illustrated by the graph 410 of
Referring to both the modulated magnetometer directional signal 516 of
These exemplary directional values illustrate how magnetometer of mobile device 100 can be greatly influenced by the presence of the magnetized structure 480 when reporting headings (see directional data points 535, 555). Hence, by leveraging the rate of acceleration as provided by accelerometer of mobile device 100 to moderate magnetometer directional values, a much more reliable heading may be ascertained.
In some embodiments as illustrated by the flow diagram of
Accordingly, if the total signal from the magnetometer is less than a given threshold, then trust weight is increased (up to for example 100%) (step 630). Conversely if the magnitude value(s) is greater than a specified threshold, trust is decreased (reduced to, for example, a minimum of 0%) and a significant change is recognized (step 640). The weights can be stored and compared for a moving finite time window (for example an approximately 500 milliseconds time window). The specific gains that affect the rate the trust is changed are based on the data rate of the magnetometer of mobile device 100. Exemplary pseudo-code follows:
In sum, as illustrated by chart 510, several of the large data spikes, e.g. spike 535, in the magnetic heading (caused by magnetic interference of object 480) are almost entirely reduced, while other un-modulated or lightly-modulated spikes continue to be recognized. Hence, this technique should also provide reliable directional values in the absence of magnetic interference. Based on these exemplary results, this technique should not cause significantly misleading readings in the presence of magnetic interference, but should be able to significantly reduce the large fluctuations associated with magnetic interference(s).
The above-described approaches may be adapted for other sensors (such as an accelerometer measuring acceleration). Another exemplary pseudo-code follows:
When exclusively employing the technique described above (acceleration modulated readings), false positives can have a higher likelihood of occurring.
When both techniques as described above are employed in combination, (acceleration modulated readings combined with direction of magnetic field moderated rotation), the exemplary results 700b as shown in
In sum, the present invention provides systems and methods for reliably detecting motion control of mobile devices executing virtual tour applications. The advantages of such a system include partial immunity from external magnetic interferences caused by the environment or other devices, and the ability to consistently generate smooth viewing experiences within virtual tours.
While this invention has been described in terms of several embodiments, there are alterations, modifications, permutations, and substitute equivalents, which fall within the scope of this invention. It should also be noted that there are many alternative ways of implementing the methods and apparatuses of the present invention, for example in hardware and/or in software or combinations thereof. It is therefore intended that the following appended claims be interpreted as including all such alterations, modifications, permutations, and substitute equivalents as fall within the true spirit and scope of the present invention.
This non-provisional application claims the benefit of provisional application No. 61/584,171 filed on Jan. 6, 2012, entitled “Systems and Methods for Reliable Motion Control of Virtual Tour Applications”, which application is incorporated herein in its entirety by this reference.
Number | Date | Country | |
---|---|---|---|
61584171 | Jan 2012 | US |