CN103674025B - 一种智能终端位移计算方法和装置 - Google Patents
一种智能终端位移计算方法和装置 Download PDFInfo
- Publication number
- CN103674025B CN103674025B CN201310733329.4A CN201310733329A CN103674025B CN 103674025 B CN103674025 B CN 103674025B CN 201310733329 A CN201310733329 A CN 201310733329A CN 103674025 B CN103674025 B CN 103674025B
- Authority
- CN
- China
- Prior art keywords
- acceleration information
- intelligent terminal
- acceleration
- threshold value
- judged result
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/20—Instruments for performing navigational calculations
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/10—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
- G01C21/12—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
- G01C21/16—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Automation & Control Theory (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Combined Controls Of Internal Combustion Engines (AREA)
Abstract
本发明提供一种智能终端位移计算方法和装置,所述方法包括:获取智能终端的加速度数据;根据获取的所述智能终端的加速度数据和预先设置的阈值,判断所述智能终端是否处于运动状态,得到一判断结果;当判断结果指示智能终端处于运动状态时,采集所述智能终端的加速度数据;去除采集的所述加速度数中的噪声数据,得到所述加速度数据的预处理数据;对所述预处理数据进行计算,得到智能终端的位移数据。本发明提供的智能终端位移计算方法和装置,通过先去除所述智能终端的加速度数据中的噪声数据,然后根据得到的预处理数据对所述智能终端的位移进行计算,避免了直接对采集的加速度数据进行处理,导致位移的计算结果出现偏差的缺陷。
Description
技术领域
本发明涉及计算处理领域,具体涉及一种智能终端位移计算方法和装置。
背景技术
智能终端是目前终端的发展趋势。智能终端上集成了陀螺仪、加速度计等多种传感器,通过自有的操作系统进行底层调用,为其他应用程序提供数据。
现有的智能终端位移计算方法是通过智能终端加速度传感器的敏感元件将测试点的加速度信号转换为相应的电信号,进入前置放大电路,经过信号调理电路改善信号的信噪比,再进行模数转换得到数字信号,最后送入智能终端系统,系统再进行智能终端运动数据的存储和显示。通过加速度传感器实时采集加速度信号,通过数字信号处理算出智能终端的位移数据。
现有技术的不足之处在于:在现有的智能终端设备中,直接对采集的加速度数据进行计算,由于加速度数据中有很多噪声数据(采集的加速度数据中的小于设定阈值的数据被称作噪声数据),会导致位移的计算结果出现偏差,且出现的偏差通过累积会逐渐增大,所以在使用一段时间后,想要获得更精确的加速度数据时会比较困难,如果不及时校正,这将成为系统误差的一个主要来源;而且,出现的偏差会对根据获得的位移数据所做的数据处理产生不利的影响,往往会导致数据处理的结果会有更大的偏差或者对数据的处理结果并不能达到当初对数据进行处理的目的。
发明内容
为克服上述缺陷,本发明提供一种智能终端位移计算方法和装置。
第一方面,本发明实施例提供一种智能终端位移计算方法,所述方法包括如下步骤:
获取智能终端的加速度数据;
根据获取的所述智能终端的加速度数据和预先设置的阈值,判断所述智能终端是否处于运动状态,得到一判断结果;
当判断结果指示智能终端处于运动状态时,采集所述智能终端的加速度数据;
去除采集的所述加速度数中的噪声数据,得到所述加速度数据的预处理数据;
对所述预处理数据进行计算,得到智能终端的位移数据。
优选地,所述方法还包括:
通过测量得到用于判定所述智能终端是否处于运动状态的阈值。
优选地,所述通过测量得到用于判定所述智能终端是否处于运动状态的阈值具体包括:
记录静止状态时所述智能终端的加速度数据振幅的波峰值和波谷值;
取所述波峰值和所述波谷值中的较大值作为判断所述智能终端运动状态的阈值。
优选地,所述根据获取的所述智能终端的加速度数据和预先设定的阈值,判断所述智能终端是否处于运动状态,得到一判断结果具体包括:
当有连续第一预设数量的所述智能终端的加速度数据大于阈值时,则判定所述智能终端处于运动状态;否则判定所述智能终端处于非运动状态;
其中,所述第一预设数量为正整数。
优选地,所述去除采集的所述加速度数中的噪声数据,得到所述加速度数据的预处理数据具体包括:
判断获取的加速度数据是否小于阈值,得到一判断结果;
若判断结果指示加速度数据小于阈值,则根据已有的加速度数据,对小于阈值的加速度数据进行校准,得到校准后的加速度数据。
优选地,所述智能终端的运动包括加速过程和减速过程;所述方法还包括:
判断所述加速过程的加速度数据和所述减速过程的加速度数据的频率差异是否在一定范围内,得到一判断结果;
若判断结果指示所述加速过程的加速度数据和所述减速过程的加速度数据的频率差异不在一定范围内,则采用插值的方式使所述加速过程的加速度数据和所述减速过程的加速度数据的频率差异在一定范围内。
优选地,在所述采用插值的方式使所述加速过程的加速度数据和所述减速过程的加速度数据的频率差异在一定范围中:
删除接受插值的加速度数据中峰值所在区域的新增插值点。
优选地,所述方法还包括:
判断所述加速过程的加速度数据和所述减速过程的加速度数据的振幅差异是否在一定范围内,得到一判断结果;
若判断结果指示所述加速过程的加速度数据和所述减速过程的加速度数据的振幅差异不在一定范围内,则以振幅大的加速度数据为标准,对振幅小的加速度数据进行规范化处理,使所述加速过程的加速度数据和所述减速过程的加速度数据的振幅差异在一定范围内;
对加速度数据进行滤波处理,得到所述加速度数据的预处理数据。
优选地,所述方法还包括:
若判断结果指示有连续第二预设数量的加速度数据小于阈值,则返回所述智能终端运动状态的判断步骤;
其中,所述第二预设数量为正整数。
第二方面,本发明实施例提供一种智能终端位移计算装置,其特征在于,所述装置包括:
获取模块,用于获取智能终端的加速度数据;
判断模块,用于根据获取的所述智能终端的加速度数据和预先设置的阈值,判断所述智能终端是否处于运动状态,得到一判断结果;
采集模块,用于当判断结果指示智能终端处于运动状态时,采集所述智能终端的加速度数据;
处理模块,用于去除采集的所述加速度数中的噪声数据,得到所述加速度数据的预处理数据;
计算模块,用于对所述预处理数据进行计算,得到智能终端的位移数据。
优选地,所述装置还包括:
测量模块,用于通过测量得到用于判定所述智能终端是否处于运动状态的阈值。
优选地,所述测量模块具体用于:
记录静止状态时所述智能终端的加速度数据振幅的波峰值和波谷值;
取所述波峰值和所述波谷值中的较大值作为判断所述智能终端运动状态的阈值。
优选地,所述判断模块具体用于:
当有连续第一预设数量的所述智能终端的加速度数据大于阈值时,则判定所述智能终端处于运动状态;否则判定所述智能终端处于非运动状态;
其中,所述第一预设数量为正整数。
优选地,所述处理模块具体用于:
判断获取的加速度数据是否小于阈值,得到一判断结果;
若判断结果指示加速度数据小于阈值,则根据已有的加速度数据,对小于阈值的加速度数据进行校准,得到校准后的加速度数据。
优选地,所述智能终端的运动包括加速过程和减速过程;所述处理模块还用于:
判断所述加速过程的加速度数据和所述减速过程的加速度数据的频率差异是否在一定范围内,得到一判断结果;
若判断结果指示所述加速过程的加速度数据和所述减速过程的加速度数据的频率差异不在一定范围内,则采用插值的方式使所述加速过程的加速度数据和所述减速过程的加速度数据的频率差异在一定范围内。
优选地,在所述采用插值的方式使所述加速过程的加速度数据和所述减速过程的加速度数据的频率差异在一定范围中:
删除接受插值的加速度数据中峰值所在区域的新增插值点。
优选地,所述处理模块还用于:
判断所述加速过程的加速度数据和所述减速过程的加速度数据的振幅差异是否在一定范围内,得到一判断结果;
若判断结果指示所述加速过程的加速度数据和所述减速过程的加速度数据的振幅差异不在一定范围内,则以振幅大的加速度数据为标准,对振幅小的加速度数据进行规范化处理,使所述加速过程的加速度数据和所述减速过程的加速度数据的振幅差异在一定范围内;
对加速度数据进行滤波处理,得到所述加速度数据的预处理数据。
优选地,所述处理模块还用于:
若判断结果指示有连续第二预设数量的加速度数据小于阈值,则返回所述判断模块;
其中,所述第二预设数量为正整数。
本发明实施例提供的智能终端位移计算方法和装置,通过先去除所述智能终端的加速度数据中的噪声数据,然后根据得到的预处理数据对所述智能终端的位移进行计算,避免了直接对采集的加速度数据进行处理,导致位移的计算结果出现偏差的缺陷;将计算结果的偏差降至最低,准确及时的得到所述智能终端的位移数据,为更多的人机交互应用提供可靠的数据来源;而且,尽可能的减小了由于位移数据出现偏差导致的后续数据处理所产生的不利影响,最大限度的使对数据处理的结果达到当初对数据进行处理的目的。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1表示智能终端位移计算方法的实施例流程图。
图2表示智能终端位移计算方法又一实施例的流程图。
图3表示智能终端位移计算方法又一实施例中加速度数据阈值的选取与运动条件判定。
图4表示智能终端位移计算方法又一实施例中加速度数据的选定条件与终止条件。
图5表示智能终端位移计算方法又一实施例中校准后的加速度轨迹图。
图6表示图5的加速度数据对应的位移数据图。
图7表示图5的加速度数据进行插值处理后的轨迹图。
图8表示图7的加速度数据进行巴特沃斯滤波后的加速度轨迹图。
图9表示图8计算的智能终端位移数据图。
图10表示智能终端位移计算方法又一实施例中频率相同振幅不同的加速度数据轨迹图。
图11表示图10中计算后的位移数据图。
图12表示图10中规范化后的加速度数据轨迹图。
图13表示图12经过巴特沃斯滤波后的加速度数据轨迹图。
图14表示根据图13计算的位移数据。
图15表示为智能终端位移计算装置的实施例示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
一种智能终端位移计算方法的流程图如图1所示,所述方法包括如下步骤:
步骤100.获取智能终端的加速度数据;
步骤101.根据获取的所述智能终端的加速度数据和预先设置的阈值,判断所述智能终端是否处于运动状态,得到一判断结果;
步骤102.当判断结果指示智能终端处于运动状态时,采集所述智能终端的加速度数据;
步骤103.去除采集的所述加速度数中的噪声数据,得到所述加速度数据的预处理数据;
步骤104.对所述预处理数据进行计算,得到智能终端的位移数据。
进一步地,智能终端包括但不限于:移动终端、便携式计算机和游戏机(如Wii、PS3等)。
通过先去除所述智能终端的加速度数据中的噪声数据,然后根据得到的预处理数据对所述智能终端的位移进行计算,避免了直接对采集的加速度数据进行处理,导致位移的计算结果出现偏差的缺陷。
本实施例提出的智能终端位移计算方法可以应用于各种应用场合,如:相机中的图像防抖、汽车的定位、智能终端的游戏体验和存储设备跌落保护等功能,简要说明如下:
在利用智能终端进行游戏的过程中,通过获取智能终端的加速度数据对智能终端的位移数据进行计算,根据得到的智能终端位移数据,向玩家提供诸如运动跟踪、手势识别及控制器定位等多种人机交互功能,增加了玩家在游戏的过程中的游戏体验。
在对存储设备进行跌落保护时,通过获取存储设备的加速度数据对智能终端的位移数据进行计算,根据得到的存储设备位移数据,判断存储设备是否处于跌落状态,当存储设备处于跌落状态时,对存储设备提供有效的保护。
现有的智能终端在采用固定阈值对本身的运动状态进行判断,会使对智能终端运动状态的判断不准确,从而导致采集的数据出现误差。
在本实施例中,所述方法还包括:通过测量得到用于判定所述智能终端是否处于运动状态的阈值。
具体地,所述通过测量得到用于判定所述智能终端是否处于运动状态的阈值具体包括:
记录静止状态时所述智能终端的加速度数据振幅的波峰值和波谷值;
取所述波峰值和所述波谷值中的较大值作为判断所述智能终端运动状态的阈值。
通过上述操作,可根据实际测量的阈值对智能终端的运动状态进行判断,增加了对智能终端的运动状态判断的准确性,并降低了采集的加速度数据的准误差。
现有的智能终端在根据设定的阈值对智能终端的运动状态进行判断时,当获取的一加速度数据超过设定的阈值时,就会认为智能终端处于运动状态,但有时会造成运动状态的误判断,从而影响智能终端对位移数据的计算,造成位移数据的计算结果不正确。
在本实施例中,所述根据获取的所述智能终端的加速度数据和预先设定的阈值,判断所述智能终端是否处于运动状态,得到一判断结果具体包括:
当有连续第一预设数量的所述智能终端的加速度数据大于阈值时,则判定所述智能终端处于运动状态;否则判定所述智能终端处于非运动状态;
其中,所述第一预设数量为正整数。
进一步地,所述第一预设数量为大于等于3的正整数。
通过上述操作,只有在连续第一预设数量的加速度数据大于阈值时,才会断定智能终端处于运动状态,对所述智能终端是否处于运动状态的判断更准确,保证了位移数据计算的准确性。
现有的智能终端的运动过程是由加速过程和减速过程组成的,在由加速过程向减速过程的转变过程中,会有多个加速度数据(噪声数据)小于设定的阈值,如果将噪声数据放入运动轨迹中计算智能终端的位移,会使计算结果造成很大误差。
在本实施例中,所述去除采集的所述加速度数中的噪声数据,得到所述加速度数据的预处理数据具体包括:
判断获取的加速度数据是否小于阈值,得到一判断结果;
若判断结果指示加速度数据小于阈值,则根据已有的加速度数据,对小于阈值的加速度数据进行校准,得到校准后的加速度数据。
通过上述的操作,在进行位移数据计算前,将加速度数据中的噪声数据进行校准,以保证智能终端位移数据的准确性。
在根据运动轨迹进行位移的计算时,若智能终端运动的加速过程和减速过程的频率不相同,那么会使加速过程和减速过程中采样点的数量不同,从而导致计算位移的误差。
在本实施例中,所述方法还包括:
判断所述加速过程的加速度数据和所述减速过程的加速度数据的频率差异是否在一定范围内,得到一判断结果;
若判断结果指示所述加速过程的加速度数据和所述减速过程的加速度数据的频率差异不在一定范围内,则采用插值的方式使所述加速过程的加速度数据和所述减速过程的加速度数据的频率差异在一定范围内。
进一步地,加速过程的加速度数据和所述减速过程的加速度数据的频率差异在百分之五以内说明二者没有差异。
通过上述的操作,使智能终端运动的加速过程和减速过程的频率尽可能一致,以避免智能终端运动的加速过程和减速过程的频率不一致造成计算得到的位移数据的误差。
在进行插值的过程中,如果接受插值的加速度数据在峰值所在区域也进行插值的话,那么可能会出现多个峰值,而在一次加速或者减速的过程中,加速度数据只能出现一次峰值,如果出现多次峰值那么就会对计算数据造成影响。
在本实施例中,在采用插值的方式使所述加速过程的加速度数据和所述减速过程的加速度数据的频率差异在一定范围中:
删除接受插值的加速度数据中峰值所在区域的新增插值点。
通过上述的操作,在运动的加速或者减速的过程中,加速度数据只会出现一次峰值,避免了在运动的加速或者减速的过程中出现多次峰值而造成的位移数据偏差。
在现有的位移数据的计算过程中,若运动的加速过程和减速过程的振幅不相同,那么会进一步加剧计算位移的误差。
在本实施例中,所述方法还包括:
判断所述加速过程的加速度数据和所述减速过程的加速度数据的振幅差异是否在一定范围内,得到一判断结果;
若判断结果指示所述加速过程的加速度数据和所述减速过程的加速度数据的振幅差异不在一定范围内,则以振幅大的加速度数据为标准,对振幅小的加速度数据进行规范化处理,使所述加速过程的加速度数据和所述减速过程的加速度数据的振幅差异在一定范围内;
对加速度数据进行滤波处理,得到所述加速度数据的预处理数据。
进一步地,加速过程的加速度数据和所述减速过程的加速度数据的振幅差异在百分之五以内说明二者没有差异。
通过上述的操作,尽量减小加速过程的加速度数据和所述减速过程的加速度数据的振幅差异,以进一步减小计算的位移数据误差。
进一步地,所述方法还包括:
若判断结果指示有连续第二预设数量的加速度数据小于阈值,则返回所述智能终端运动状态的判断步骤;
其中,所述第二预设数量为正整数。
通过上述的操作,可以快速方便的结束加速度数据的获取,并进行后续的计算步骤。
通过以下实施例对智能终端位移计算方法作进一步描述。
智能终端位移计算方法的又一实施例如图2所示,所述方法包括如下步骤:
1.系统初始化后获取智能终端的陀螺仪数据。
具体地,由于智能终端不同,阈值可能不同,如果采用固定阈值可能导致误差的产生,因此需要一种方法来确定针对当前终端的阈值。
在本实施例中,采用如下方式确定智能终端的运动状态的阈值:
将设备平放在桌面保持不动,记录3秒数据(图3所示3秒校准区间),得到此时间段内加速度数据振幅的波峰和波估值,取波峰和波谷绝对值中的较大值作为阈值alpha(图3中阈值alpha),阈值以下认为是噪声,超过阈值认为可能有运动产生;
2.加速度数据连续三次超过次阈值,即判断为人为的运动产生;三次连续的加速度数据分别记为x1、x2和x3。包括以下步骤:
a.首先判断当前是否为加速度数据获取模式,若是,转到步骤3,否则执行b;
b.获取加速度计一组输出;
c.判断加速度数据是否大于阈值;
d.若大于阈值,判断x1是否为空,若为空,将加速度数据赋值到x1,转到b,若不为空,转到e;
e.判断x2是否为空,若为空,将加速度数据赋值到x2,转到b,若不为空,转到f;
f.判断x3是否为空,若为空,将加速度数据赋值到x3,转到步骤3(图3中连续三帧加速度大于阈值);
g.若小于阈值,返回b。
3.将x1、x2和x3加入到向量X中作为初始值,其中,X中保存加速度数据,表示智能终端的运动轨迹。将大于阈值的加速度数据逐个加入到X中,直到连续三帧加速度数据小于阈值时候退出。两次之内的加速度小于阈值时设置两个临时存储变量y1和y2,用来存储小于阈值的加速度;包括以下步骤:
a.首先判断当前是否为轨迹获取模式,若是,执行b,否则,启动轨迹获取模式,将步骤2中的三个加速度数据加入到向量X中;
b.获取加速度计的一组输出;
c.判断加速度数据是否大于阈值;
d.若小于阈值,判断y1是否为空,若为空,将加速度数据赋值到y1,转到a,若不为空,转到e;
e.判断y2是否为空,若为空,将加速度数据赋值到y2,转到a,若不为空,将y1和y2清空,关闭轨迹获取模式,转到步骤4(图4所示连续三帧在阈值以下);
f.若大于阈值,将加速度数据加入到轨迹向量X中,转到g;
g.判断y2是否为空,若为空,将当前加速度数据加入到轨迹向量X中去。根据轨迹向量X,判断y1是否为空,若不为空用插值法计算加速度数据y1时的校准值,赋值到y1,将校准后的y1插入到轨迹向量X中;或者利用卡尔曼滤波的方法,根据轨迹向量X中已得到的轨迹值,得到y1值的校准值,将y1校准值插入到轨迹向量X中,将y1清空,转到b,若不为空,转到h;
h.用插值法校准y1和y2的加速度数据,将校准后的加速度数据赋值到y1和y2,或者利用卡尔曼滤波的方法,根据轨迹向量X中已得到的轨迹值,得到y1和y2值的校准值,将y1和y2校准值插入到轨迹向量X中(图5所示y1,y2校准值,在图5中,波峰和波谷值分别为0.3549和-0.3106,相差不大。计算位移得10.95CM),将y1和y2清空,转到b。
4.对获取的运动轨迹向量X进行分析,包括以下步骤:
a.根据得到的加速度对于时间的变化曲线的运动轨迹图,进行判断;
b.判断加速过程和减速过程的加速度数据的频率是否相同,若不同(图5),此时计算智能终端的位移如图6所示,误差比较大。对采样点少的过程进行插值运算,使得加速过程和减速过程中的加速度数据有相同的采样点数。加(减)速过程为一个整体,在插值的过程上,在峰值附近25%的区域删除新增的插值点,其余插值点保留(如图7所示)。
c.判断加速过程和减速过程中加速度数据的振幅是否相同,若不同(图10,由图中数据计算的位移数据大概为18.83CM),此时计算智能终端位移如图11所示,误差较大。以振幅大的为标准,对振幅小的过程进行规范化处理,使得加速过程和减速过程的加速度数据有相同的振幅(图12);
d.对轨迹向量X进行巴特沃斯滤波处理,计算设备位移,包括以下步骤:
(1).巴特沃斯低通滤波器的幅度平方函数|H(jΩ)|2用下式表示:
其中,Ω为低通截止频率,Ωc是3dB截止频率,N为滤波器的阶数。
(2).设定λp、αp、λs、αs分别为通带截止频率、通带衰减(单位:dB)、阻带起始频率、阻带衰减(单位:dB)。衰减在这里以分贝(dB)为单位;即
其中λ=Ω/ΩC,为归一化的频率。将λp、αp、λs、αs代入,得
求滤波器阶数N,得
在这里,通带衰减频率和阻带起始频率分别为5HZ和15HZ;
(3).利用(2)中求出的N获得巴特沃斯低通滤波器的传递函数H(p),如下
其中p=jλ,
(4).求出滤波器的分子和分母系数;
(5).对步骤3.b中加速度轨迹进行巴特沃斯滤波(图8),然后计算设备位移(图9,计算位移结果为44.05CM);
(6).对步骤3.c中加速度轨迹进行巴特沃斯滤波(图13),然后计算设备位移(图14)
在图14中,计算位移数据的结果为52.15CM,与实际数据较为接近,此处负值表示移动方向。
e.返回步骤2。
对上面的步骤,举例来证明该方法的有效性。现有一部带加速度传感器的手机,将其水平置于桌面。顶端紧贴固定装置,保证水平呈直线移动。水平移动一段距离,测量实际位移大概为39CM。记录加速度数据的曲线如图4所示。此时计算的水平位移结果为10.95CM,与实际值的误差很大。用本实施例提供的方法对其进行处理,得到的加速度数据的曲线图如7所示,经过巴特沃斯滤波(图8)后计算位移结果为44.05CM,与实际水平位移的误差缩短了许多。
通过以上2个实施例的提供的智能终端位移计算方法,通过先去除所述智能终端的加速度数据中的噪声数据,然后根据得到的预处理数据对所述智能终端的位移进行计算,避免了直接对采集的加速度数据进行处理,导致位移的计算结果出现偏差的缺陷;将计算结果的偏差降至最低,准确及时的得到所述智能终端的位移数据,为更多的人机交互应用提供可靠的数据来源;而且,尽可能的减小了由于位移数据出现偏差导致的后续数据处理所产生的不利影响,最大限度的使对数据处理的结果达到当初对数据进行处理的目的。
智能终端位移计算装置的实施例示意图如图15所示,所述装置包括:
获取模块10,用于获取智能终端的加速度数据;
判断模块20,用于根据获取的所述智能终端的加速度数据和预先设置的阈值,判断所述智能终端是否处于运动状态,得到一判断结果;
采集模块30,用于当判断结果指示智能终端处于运动状态时,采集所述智能终端的加速度数据;
处理模块40,用于去除采集的所述加速度数中的噪声数据,得到所述加速度数据的预处理数据;
计算模块50,用于对所述预处理数据进行计算,得到智能终端的位移数据。
进一步地,所述装置还包括:
测量模块,用于通过测量得到用于判定所述智能终端是否处于运动状态的阈值。
进一步地,所述测量模块具体用于:
记录静止状态时所述智能终端的加速度数据振幅的波峰值和波谷值;
取所述波峰值和所述波谷值中的较大值作为判断所述智能终端运动状态的阈值。
进一步地,所述判断模块30具体用于:
当有连续第一预设数量的所述智能终端的加速度数据大于阈值时,则判定所述智能终端处于运动状态;否则判定所述智能终端处于非运动状态;
其中,所述第一预设数量为正整数。
进一步地,所述处理模块40具体用于:
判断获取的加速度数据是否小于阈值,得到一判断结果;
若判断结果指示加速度数据小于阈值,则根据已有的加速度数据,对小于阈值的加速度数据进行校准,得到校准后的加速度数据。
进一步地,所述智能终端的运动包括加速过程和减速过程;所述处理模块40还用于:
判断所述加速过程的加速度数据和所述减速过程的加速度数据的频率差异是否在一定范围内,得到一判断结果;
若判断结果指示所述加速过程的加速度数据和所述减速过程的加速度数据的频率差异不在一定范围内,则采用插值的方式使所述加速过程的加速度数据和所述减速过程的加速度数据的频率差异在一定范围内。
进一步地,在所述采用插值的方式使所述加速过程的加速度数据和所述减速过程的加速度数据的频率差异在一定范围中:
删除接受插值的加速度数据中峰值所在区域的新增插值点。
进一步地,所述处理模块40还用于:
判断所述加速过程的加速度数据和所述减速过程的加速度数据的振幅差异是否在一定范围内,得到一判断结果;
若判断结果指示所述加速过程的加速度数据和所述减速过程的加速度数据的振幅差异不在一定范围内,则以振幅大的加速度数据为标准,对振幅小的加速度数据进行规范化处理,使所述加速过程的加速度数据和所述减速过程的加速度数据的振幅差异在一定范围内;
对加速度数据进行滤波处理,得到所述加速度数据的预处理数据。
进一步地,所述处理模块40还用于:
若判断结果指示有连续第二预设数量的加速度数据小于阈值,则返回所述判断模块;
其中,所述第二预设数量为正整数。
本发明实施例提供的智能终端位移计算装置,通过先去除所述智能终端的加速度数据中的噪声数据,然后根据得到的预处理数据对所述智能终端的位移进行计算,避免了直接对采集的加速度数据进行处理,导致位移的计算结果出现偏差的缺陷;将计算结果的偏差降至最低,准确及时的得到所述智能终端的位移数据,为更多的人机交互应用提供可靠的数据来源;而且,尽可能的减小了由于位移数据出现偏差导致的后续数据处理所产生的不利影响,最大限度的使对数据处理的结果达到当初对数据进行处理的目的。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (16)
1.一种智能终端位移计算方法,其特征在于,所述方法包括如下步骤:
获取智能终端的加速度数据;
根据获取的所述智能终端的加速度数据和预先设置的阈值,判断所述智能终端是否处于运动状态,得到一判断结果;
当判断结果指示智能终端处于运动状态时,采集所述智能终端的加速度数据;
去除采集的所述加速度数中的噪声数据,得到所述加速度数据的预处理数据;
对所述预处理数据进行计算,得到智能终端的位移数据;
其中,所述去除采集的所述加速度数中的噪声数据,得到所述加速度数据的预处理数据具体包括:
判断获取的加速度数据是否小于阈值,得到一判断结果;
若判断结果指示加速度数据小于阈值,则根据已有的加速度数据,对小于阈值的加速度数据进行校准,得到校准后的加速度数据。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
通过测量得到用于判定所述智能终端是否处于运动状态的阈值。
3.根据权利要求2所述的方法,其特征在于,所述通过测量得到用于判定所述智能终端是否处于运动状态的阈值具体包括:
记录静止状态时所述智能终端的加速度数据振幅的波峰值和波谷值;
取所述波峰值和所述波谷值中的较大值作为判断所述智能终端运动状态的阈值。
4.根据权利要求1所述的方法,其特征在于,所述根据获取的所述智能终端的加速度数据和预先设定的阈值,判断所述智能终端是否处于运动状态,得到一判断结果具体包括:
当有连续第一预设数量的所述智能终端的加速度数据大于阈值时,则判定所述智能终端处于运动状态;否则判定所述智能终端处于非运动状态;
其中,所述第一预设数量为正整数。
5.根据权利要求1所述的方法,其特征在于,所述智能终端的运动包括加速过程和减速过程;所述方法还包括:
判断所述加速过程的加速度数据和所述减速过程的加速度数据的频率差异是否在一定范围内,得到一判断结果;
若判断结果指示所述加速过程的加速度数据和所述减速过程的加速度数据的频率差异不在一定范围内,则采用插值的方式使所述加速过程的加速度数据和所述减速过程的加速度数据的频率差异在一定范围内。
6.根据权利要求5所述的方法,其特征在于,在所述采用插值的方式使所述加速过程的加速度数据和所述减速过程的加速度数据的频率差异在一定范围中:
删除接受插值的加速度数据中峰值所在区域的新增插值点。
7.根据权利要求5所述的方法,其特征在于,所述方法还包括:
判断所述加速过程的加速度数据和所述减速过程的加速度数据的振幅差异是否在一定范围内,得到一判断结果;
若判断结果指示所述加速过程的加速度数据和所述减速过程的加速度数据的振幅差异不在一定范围内,则以振幅大的加速度数据为标准,对振幅小的加速度数据进行规范化处理,使所述加速过程的加速度数据和所述减速过程的加速度数据的振幅差异在一定范围内;
对加速度数据进行滤波处理,得到所述加速度数据的预处理数据。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若判断结果指示有连续第二预设数量的加速度数据小于阈值,则返回所述智能终端运动状态的判断步骤;
其中,所述第二预设数量为正整数。
9.一种智能终端位移计算装置,其特征在于,所述装置包括:
获取模块,用于获取智能终端的加速度数据;
判断模块,用于根据获取的所述智能终端的加速度数据和预先设置的阈值,判断所述智能终端是否处于运动状态,得到一判断结果;
采集模块,用于当判断结果指示智能终端处于运动状态时,采集所述智能终端的加速度数据;
处理模块,用于去除采集的所述加速度数中的噪声数据,得到所述加速度数据的预处理数据;
计算模块,用于对所述预处理数据进行计算,得到智能终端的位移数据;
其中,所述处理模块具体用于:
判断获取的加速度数据是否小于阈值,得到一判断结果;
若判断结果指示加速度数据小于阈值,则根据已有的加速度数据,对小于阈值的加速度数据进行校准,得到校准后的加速度数据。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括:
测量模块,用于通过测量得到用于判定所述智能终端是否处于运动状态的阈值。
11.根据权利要求10所述的装置,其特征在于,所述测量模块具体用于:
记录静止状态时所述智能终端的加速度数据振幅的波峰值和波谷值;
取所述波峰值和所述波谷值中的较大值作为判断所述智能终端运动状态的阈值。
12.根据权利要求9所述的装置,其特征在于,所述判断模块具体用于:
当有连续第一预设数量的所述智能终端的加速度数据大于阈值时,则判定所述智能终端处于运动状态;否则判定所述智能终端处于非运动状态;
其中,所述第一预设数量为正整数。
13.根据权利要求9所述的装置,其特征在于,所述智能终端的运动包括加速过程和减速过程;所述处理模块还用于:
判断所述加速过程的加速度数据和所述减速过程的加速度数据的频率差异是否在一定范围内,得到一判断结果;
若判断结果指示所述加速过程的加速度数据和所述减速过程的加速度数据的频率差异不在一定范围内,则采用插值的方式使所述加速过程的加速度数据和所述减速过程的加速度数据的频率差异在一定范围内。
14.根据权利要求13所述的装置,其特征在于,在所述采用插值的方式使所述加速过程的加速度数据和所述减速过程的加速度数据的频率差异在一定范围中:
删除接受插值的加速度数据中峰值所在区域的新增插值点。
15.根据权利要求13所述的装置,其特征在于,所述处理模块还用于:
判断所述加速过程的加速度数据和所述减速过程的加速度数据的振幅差异是否在一定范围内,得到一判断结果;
若判断结果指示所述加速过程的加速度数据和所述减速过程的加速度数据的振幅差异不在一定范围内,则以振幅大的加速度数据为标准,对振幅小的加速度数据进行规范化处理,使所述加速过程的加速度数据和所述减速过程的加速度数据的振幅差异在一定范围内;
对加速度数据进行滤波处理,得到所述加速度数据的预处理数据。
16.根据权利要求9所述的装置,其特征在于,所述处理模块还用于:
若判断结果指示有连续第二预设数量的加速度数据小于阈值,则返回所述判断模块;
其中,所述第二预设数量为正整数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310733329.4A CN103674025B (zh) | 2013-12-26 | 2013-12-26 | 一种智能终端位移计算方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310733329.4A CN103674025B (zh) | 2013-12-26 | 2013-12-26 | 一种智能终端位移计算方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103674025A CN103674025A (zh) | 2014-03-26 |
CN103674025B true CN103674025B (zh) | 2016-08-17 |
Family
ID=50312297
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310733329.4A Active CN103674025B (zh) | 2013-12-26 | 2013-12-26 | 一种智能终端位移计算方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103674025B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105094146A (zh) * | 2014-05-08 | 2015-11-25 | 小米科技有限责任公司 | 调整重心的方法和装置 |
CN105223593B (zh) * | 2015-09-17 | 2018-01-23 | 北京奇虎科技有限公司 | 终端定位频率调节方法、系统和定位间隔调节方法、系统 |
CN106979782B (zh) * | 2017-02-21 | 2019-11-01 | 深圳市海派通讯科技有限公司 | 移动终端的掉落检测方法及移动终端 |
CN107491702A (zh) * | 2017-08-15 | 2017-12-19 | 上海展扬通信技术有限公司 | 一种基于智能终端的防摔方法及防摔系统 |
CN109212260B (zh) * | 2018-09-07 | 2021-06-25 | 青岛迈金智能科技有限公司 | 一种运动频率计算方法和装置 |
CN109493447B (zh) * | 2018-09-26 | 2022-03-29 | 中国平安财产保险股份有限公司 | 启动行车记录的方法、装置、计算机设备和存储介质 |
WO2021057635A1 (zh) * | 2019-09-23 | 2021-04-01 | 猫岐智能科技(上海)有限公司 | 设备运行异常判断方法及系统 |
CN111246415B (zh) * | 2019-12-18 | 2022-05-13 | 广州市梦享网络技术有限公司 | 用户场景位置变化判断方法 |
CN112938673B (zh) * | 2021-02-20 | 2022-04-01 | 上海吉盛网络技术有限公司 | 使用不间断位置数据实现连续图像显示电梯运动的方法 |
CN113901379B (zh) * | 2021-09-27 | 2024-04-12 | 大连理工大学 | 一种边缘端的实时数据动态在线快速处理方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7180500B2 (en) * | 2004-03-23 | 2007-02-20 | Fujitsu Limited | User definable gestures for motion controlled handheld devices |
JP4582116B2 (ja) * | 2007-06-06 | 2010-11-17 | ソニー株式会社 | 入力装置、制御装置、制御システム、制御方法及びそのプログラム |
CN102818913B (zh) * | 2012-07-31 | 2013-11-27 | 宋子健 | 一种人体运动信息检测装置及其检测方法 |
CN103218062A (zh) * | 2013-04-24 | 2013-07-24 | 伍斌 | 基于加速度传感器和动作识别的人机交互方法及其设备 |
CN103345627B (zh) * | 2013-07-23 | 2016-03-30 | 清华大学 | 动作识别方法和装置 |
-
2013
- 2013-12-26 CN CN201310733329.4A patent/CN103674025B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN103674025A (zh) | 2014-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103674025B (zh) | 一种智能终端位移计算方法和装置 | |
US10349219B2 (en) | Methods and systems for combining sensor data to determine vehicle movement information | |
KR102163171B1 (ko) | 운동 검출 방법, 장치, 기기 및 매체 | |
CN105004349A (zh) | 一种计步方法 | |
CN106441350A (zh) | 一种计步方法及终端 | |
CN106054251B (zh) | 一种初至波拾取方法及装置 | |
CN108198460A (zh) | 一种车辆智能变道方法及车辆 | |
CN108287786A (zh) | 一种基于地图的自动化测试方法和装置、及混合导航系统 | |
CN110108297B (zh) | 车辆行驶数据处理方法及装置 | |
CN103557862A (zh) | 一种移动终端运动轨迹检测方法 | |
CN112734810B (zh) | 一种障碍物追踪方法及装置 | |
CN109938740A (zh) | 一种步态周期检测方法、装置及计算机可读存储介质 | |
CN107933564A (zh) | 道路坡度估算方法、道路坡度估算装置、终端设备以及计算机可读存储介质 | |
CN112731952A (zh) | 一种机器人质心规划方法、装置、可读存储介质及机器人 | |
CN106569047A (zh) | 一种车载can总线的分析装置及方法 | |
US20150241243A1 (en) | Method for counting steps and electronic apparatus using the same | |
CN104713566A (zh) | 一种计步方法、计步装置和计步器 | |
CN112489522A (zh) | 一种仿真场景数据的播放方法、设备、介质及电子设备 | |
CN109741762A (zh) | 声音活动检测方法及装置和计算机可读存储介质 | |
CN105292127B (zh) | 一种急加速检测方法及车载终端 | |
CN110888142B (zh) | 基于mems激光雷达测量技术的航天器隐藏目标点测量方法 | |
US10579037B1 (en) | Positioning method and apparatus | |
CN108303091A (zh) | 生成轨迹的方法、系统以及计算机可读存储介质 | |
CN112634489B (zh) | 一种基于移动终端的车辆状态确定方法、装置及系统 | |
CN113790734A (zh) | 一种基于摆臂轴的计步方法、系统和终端设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |