我们可以对可观察流使用高通滤波器来检测抖动事件吗
Can we use a High-Pass filter on an observable stream to detect a shake event?
具体来说,如果我们在设备上有一个表示x/y/z加速度的事件流,rxjs可以给我们,我们如何以流的方式实现该算法高通滤波器,以便在抖动检测中利用更长的样本滑动窗口?
Shake.js方法很有前景,但仅基于2个连续样本,并且2个样本不构成信号流。
我觉得,一旦展示了如何在流式传输用户输入数据时使用我熟悉的音频/音乐工作中的信号处理概念,我利用这个框架的能力就会真正起飞,提前感谢。
这就是我通过转换维基百科上的实现所能做到的。
Rx.Observable.prototype.highpass = function (rc) {
return this
.timestamp()
.bufferWithCount(2, 1)
.scan(0, function (acc, x) {
var dt = x[1].timestamp - x[0].timestamp;
var a = rc / (rc + dt);
return a * (acc + (x[1].value - x[0].value));
});
};
下面的例子不起作用super很棒。不管怎样,假设你一直在移动鼠标,它仍然有作用。
http://jsfiddle.net/xixonia/j2H3k/
相关文章:
- 如何检测是否有溢出
- 如何检测用于WebGL的专用或集成显卡
- 防止Alt+Shift默认操作或检测多种操作系统语言的Javascript
- 如何在使用selectBoxIt JQuery插件时检测选项更改
- 如何使用密码检测网络中的状态连接
- 使用JavaScript检测Flash
- 在不阻止默认行为的情况下检测IE10中的缩放
- 检测个位数整数时正在转换毫秒
- 检测电话窃听,即:<a href="电话:xxx">在UIWebview上
- 动态插入的表:JQuery未检测到最后一行
- 检测页面上某个元素中选择(突出显示)或单击的内容
- jQuery检测浏览器是否支持Zoom
- 检测iframe是否跨域的愚蠢方法
- 检测图像分辨率
- 如何检测第三方广告服务器请求
- 我是否可以检测到javascript正在被卸载(作为调试模式)
- 当没有文本输入聚焦时检测空格键按下
- 正在检测导航到<a name=“;最新主题”></a>
- 如何检测重叠元素下的单击
- 我们可以对可观察流使用高通滤波器来检测抖动事件吗