重力为测量结果中的不变成分。因此在获取到三轴的加速度分量后,可以采用低通滤波的方式分离出重力分量,然后在原始值中减去重力。最后得到不含重力的手机加速度。

手机的x、y、z轴定义如图:

以下为安卓开发者文档中提供的低通滤波算法:

 public void onSensorChanged(SensorEvent event){// alpha 由 t / (t + dT)得到// t为滤波器时间常量,为传感器单次采样时间// dT为采样频率final float alpha = 0.8;gravity[0] = alpha * gravity[0] + (1 - alpha) * event.values[0];gravity[1] = alpha * gravity[1] + (1 - alpha) * event.values[1];gravity[2] = alpha * gravity[2] + (1 - alpha) * event.values[2];linear_acceleration[0] = event.values[0] - gravity[0];linear_acceleration[1] = event.values[1] - gravity[1];linear_acceleration[2] = event.values[2] - gravity[2];}

values数组分别存放手机x、y、z轴的原始加速度。

gravity为重力值。

linear_acceleration为最终结果。

重力加速计低通滤波算法——安卓开发文档相关推荐

  1. 高阶低通滤波算法_高/低算法

    高阶低通滤波算法 介绍 在我以前的文章中,我谈到了各种数据库标识符策略,在设计数据库模型时需要注意. 我们得出的结论是,数据库序列非常方便,因为它们在大多数用例中既灵活又高效. 但是,即使具有缓存的序 ...

  2. 一阶RC低通滤波算法原理与实现

    文章目录 1. 一阶低通滤波算法原理 2. 一阶滤波算法的特点 3. 基本算法的例程 4. 优化:减少乘.除的运算次数以提高运算速度 5. 改进:动态调整滤波系数 动态调整滤波例程 本文整理自网络,参 ...

  3. 利用FFT分析比较卡尔曼滤波算法、低通滤波算法、滑动平均滤波的频谱

    1 卡尔曼滤波 详见博客 https://blog.csdn.net/moge19/article/details/81750731 2 低通滤波 2.1 算法推导 一阶RC滤波器的硬件电路如图: 图 ...

  4. 低通滤波算法在加速度传感器应用中的作用

    在现代系统中,加速度传感器越来越多的应用到系统中,在很多应用中需要考虑加速度传感器是不稳定性,用数字低通滤波技术可以过滤掉一些杂波,将有特征的加速度变化趋势提现出来.有着十分广泛的应用.如在计步器,移 ...

  5. 数字低通滤波算法及截止频率计算,pt1Filter,lpf

    参考模电RC滤波计算公式来计算截止频率 #define M_PI_FLOAT 3.14159265358979323846ftypedef struct LpfFilter {float RC;//模 ...

  6. 安卓开发文档!花三分钟看完这篇文章你就懂了!帮你突破瓶颈

    导语 2020年是转折的一年,2021年算是收获的一年,趁着金三银四开始找工作.先分享一下offer的情况 阿里高德(offer) 爱奇艺(offer) 腾讯视频(offer) 小米(被拒) 今日头条 ...

  7. 中维世纪安卓开发文档

    中维世纪安卓开发记录 作为一个低级码农真的搞不懂中维世纪文档,只有windows和安卓的sdk,水平低或者应用场景广泛了最好直接购买海康威视的,网上教程比较多. 开发环境 Android Studio ...

  8. 安卓开发文档_鸿蒙2.0,HarmonyOS开发体验!

    "没有人能够熄灭漫天星光".在9月10日的华为2020开发者大会上,余承东掷地有声地说道. 从去年开放的鸿蒙1.0,到今年的2.0.仅仅一年时间,华为就把基础设施全部搭建好.从之前 ...

  9. opencv 高通滤波和低通滤波_一阶低通滤波原理详解

    在汽车标定中,使用最多的滤波算法即低通滤波,很多朋友可能知道怎么标定,但是不清楚具体的原理,因此本文将介绍一阶低通滤波的原理.算法建模仿真和优缺点: 一阶滤波算法的原理 一阶滤波,又叫一阶惯性滤波,或 ...

最新文章

  1. 解决MVC返回Json中日期格式问题
  2. mysql 1236_Mysql主从同步Last_IO_Errno:1236错误解决方法
  3. vue学习- 列表渲染v-for
  4. opencv在python环境下的安装_python环境下安装opencv库的方法
  5. 干货 | Tomcat 连接数与线程池详解
  6. VS中监视窗口,即时窗口和输出窗口的使用
  7. ElasticSearch wildcard查询(英文检索)
  8. 专刊文章 - Web UI框架引领J2EE新开发模式(代码生成器+手工merge半智能开发)
  9. VMware14虚拟机安装Mac OS教程
  10. 世嘉MD游戏开发进阶篇【二】:C语言实现有限状态机
  11. 牛客多校9 B. Two Frogs (概率dp+前缀和优化)
  12. 【BZOJ4987】Tree(树形dp)
  13. echart中饼图如何显示数据 实现鼠标移动切换显示(vue中)
  14. 用计算机专业怼人,专业示范,教你如何用所学专业知识“怼人”
  15. 【linux内核-源码编译之centos7】
  16. Inverse/Reverse/Converse的辨异
  17. python判断某个字符串中是否包含某个子字符串,方法:if ’str1‘ in str
  18. 部门换届推文文字_第十五届院级学生干部换届大会火热进行中
  19. java 三个字段修改检验唯一,新增/修改时,唯一性字段检查
  20. 【图像压缩】自回归模型 《Joint Autoregressive and Hierarchical Priors for Learned Image Compression》

热门文章

  1. webstorm激活方法 webstorm激活码 jetbrains激活
  2. Eclipse导入epf文件,一键更改背景及代码颜色。
  3. 认知什么是关键词,什么是长尾词?
  4. 如何将多个excel表格合并成一个_多个PDF如何合并成一个?就用这个PDF在线工具!...
  5. oracle 优化器之执行计划
  6. C++哈希查找算法简单实现
  7. 【原】android【手机】屏幕适配解决方案,完美适配适配hdpi,xhdpi,xxhdpi的做法。
  8. JVM-监控及诊断工具
  9. new ext.toolbar控制按钮间距_消防设施常见安装间距汇总
  10. macOS制作系统启动盘教程