呼叫大佬!呼叫大佬!能否帮我看看为什么原始计算结果会偏小₍˄·͈༝·͈˄*₎◞ ̑̑
前置说明:共包含三种线,红线(频率线),蓝线(响度线即音量大小线),两条绿线(133hz和189hz频率的参照线)
使用方法: 给予权限--将手机麦克风(通常位于手机底部)靠近西瓜--用四指多次拍打西瓜--可以看到拍打时波会产生明显上升
分析方法: 观察波峰附近,忽略一些高频的点(通常这些点由噪声造成,如手指的震动等,频率也许很高),然后与两条绿线比较即可(即图中蓝直线标示位置与绿线比较) (注意图中蓝直线和黄箭头是后期p上的标示,是假想线,便于说明讲解,实际使用过程只有上述的三种线)
如上图的西瓜就过熟了一点(蓝直线区域低于第二条绿线)
原理:西瓜越熟频率越低(生“咚咚”,熟“砰砰”,老“噗噗”),通常情况频率在133-189hz为宜,当然也可能因品种而异,仅供参考。
重要补充: 1,实话说java写的快速傅里叶变化还是挺耗时的,这东西没用多线程之前8gen2卡死了都 2,后来发现有些问题,不知道为什么计算得到的频率比真实值要小几十,换了两种依赖包还是如此,不过所幸与真实频率是线性关系,于是拟合了一个函数修正了一下,,欢迎大佬指出计算问题在哪