频率/音调检测假人 [英] frequency / pitch detection for dummies

查看:160
本文介绍了频率/音调检测假人的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

虽然我在这个网站处理基音检测的概念......他们都处理许多问题,这片神奇的 FFT 的与我不熟悉。我试图构建需要实现基音检测Android应用程序。我完全不理解的是用来做这个算法。

While I have many questions on this site dealing with the concept of pitch detection... They all deal with this magical FFT with which I am not familiar. I am trying to build an Android application that needs to implement pitch detection. I have absolutely no understanding for the algorithms that are used to do this.

这不可能的的硬盘可以吗?共有约8十亿毕竟吉他调谐器的应用程序在Android Market上。

It can't be that hard can it? There are around 8 billion guitar tuner apps on the android market after all.

有人能帮助?

推荐答案

一个快速傅立叶变换改变从时域到频域的功能。因此,而不是F(T),其中 F 是您从麦克风获取的信号和<$ C $的 C> T 是信号的时间指数,你会得到 G(θ),其中先按g 的FFT˚Fθ是频率。一旦你拥有了 G(θ),你只需要找到该θ的最高幅度,意为最响 频率。这将是您领了声音的主要间距。

A Fast Fourier Transform changes a function from time domain to frequency domain. So instead of f(t) where f is the signal that you are getting from the microphone and t is the time index of that signal, you get g(θ) where g is the FFT of f and θ is the frequency. Once you have g(θ), you just need to find which θ with the highest amplitude, meaning the "loudest" frequency. That will be the primary pitch of the sound that you are picking up.

至于实际执行的FFT,如果谷歌快速傅里叶变换样本code,你会得到一大堆的例子。

As for actually implementing the FFT, if you google "fast fourier transform sample code", you'll get a bunch of examples.

这篇关于频率/音调检测假人的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆