matlab的gccphat转C语言,Python中的GCCPHAT互相关
我试图用python实现GCC-PHAT。在
该方法类似于以下两个环节:
link1和link2
GCC-PHAT和使用FFT的正常互相关之间的唯一区别似乎是除以幅度。在
这是我的代码:import numpy as np
import matplotlib.pyplot as plt
from scipy.fftpack import rfft, irfft, fftfreq, fft, ifft
def xcorr_freq(s1,s2):
pad1 = np.zeros(len(s1))
pad2 = np.zeros(len(s2))
s1 = np.hstack([s1,pad1])
s2 = np.hstack([pad2,s2])
f_s1 = fft(s1)
f_s2 = fft(s2)
f_s2c = np.conj(f_s2)
f_s = f_s1 * f_s2c
denom = abs(f_s)
denom[denom < 1e-6] = 1e-6
f_s = f_s / denom # This line is the only difference between GCC-PHAT and normal cross correlation
return np.abs(ifft(f_s))[1:]
我通过注释fs = fs / denom检查了这个函数产生的结果与宽带信号的正常互相关相同。在
下面是一个示例测试代码,显示上面的GCC-PHAT代码的性能比正常的互相关差:
^{pr2}$
以下是GCC-PHAT的结果:
以下是正常互相关的结果:
由于GCC-PHAT应该能为宽带信号提供更好的互相关性能,我知道我的代码有问题。非常感谢任何帮助!在
matlab的gccphat转C语言,Python中的GCCPHAT互相关相关推荐
- matlab lpc求共振峰频率,用Python中的LPC估计共振峰
我对信号处理还不太熟悉(关于这一点,numpy.scipy和matlab).我试着用Python中的LPC来估计元音共振峰,方法是修改下面的matlab代码: 这是我目前的代码:#!/usr/bin/ ...
- [转载] 【Python进阶】4-2 多态 | 什么是多态 / 静态语言vs动态语言 / python中多态
参考链接: Python中的多态 文章目录 1.什么是多态"开闭"原则 2.静态语言 vs 动态语言小结 3.python中多态 1.什么是多态 要理解什么是多态,我们首先要对数据 ...
- matlab lpc求共振峰频率,在Python中使用LPC估计共振峰
我是信号处理的新手(而且是numpy,scipy和matlab).我正在尝试通过调整这个matlab代码来估计 Python中使用LPC的元音共振峰: 到目前为止,这是我的代码: #!/usr/bin ...
- linux中python如何调用matlab的数据_?如何在Python中加入多个数据帧?
全文共2235字,预计学习时长7分钟 来源:Pexels 初学Python编程的人,面临的是各种未知的挑战. 下面是一个几乎让所有更有抱负的数据科学家都感到意外的场景: 你正在处理一个从多个源收集数据 ...
- 金丹期前期:1.5、python语言-python中的函数
一.Python中最简单的函数介绍 1.定义格式 def 函数名():代码 关键词:def关键字.冒号.代码缩进行表示属于该函数界内 2.调用方法 函数名() 关键词:不缩进,直接函数名即可调用 3 ...
- matlab 判断是否是nan,关于Python中Inf与Nan的判断问题详解
python中运行错误,关于聚类算法出现的nan值问题处理的数据有10个属性,使用kmeans聚类算法出现了nan值的错误,请问怎么说明你的样本数据中有nan值,通常是因为原始数据中包含空字符串或No ...
- matlab 创建彩色图像,用matlabd在Python中创建彩色图像
我正在尝试用Python创建彩色图像.数据来自Matlab文件. 这是我的密码.实际上我只能创建灰度图像,但我需要彩色图像. 你能帮帮我吗?在 Matlab文件的数据是512x512x200双数组.在 ...
- python调用simulink_[Python-MATLAB] 在Python中调用MATLAB的API
可以参考官方的说明文档: MATLAB Engine API的使用文档: 原材料: 1.MATLAB 2015a 32位的 2.Python 2.7.13 32位的 安装: 1.运行cmd,切 ...
- python中main的含义及用法_python中main函数的用法
Python Python开发 Python语言 python中main函数的用法 什么场景下会有main函数? 当该python脚本被作为模块(module)引入(import)时,其中的main( ...
最新文章
- 重磅 | 王劲被百度起诉后首露面:称打印机电脑已报废,赔了318块钱,没接到法院传票
- wifi漫游测试过程
- 史上最全Winform中使用ZedGraph教程与资源汇总整理(附资源下载)
- Linux的基本原则
- COJ 1163 乘法逆元的求解
- 存储过程能用if not exist_C++核心准则T.48:如果不能用概念,用enable_if
- cmake The source directory xxxx does not appear to contain CMakeLists.txt
- linux 两块硬盘 分区,linux 两块硬盘分区,这个是什么/dev/mapper/VolGroup00-LogVol00
- php 位运算 负数,php的位运算详解
- 鸿蒙的应用列表,图解鸿蒙列表组件ListContainer
- 新型冠状病毒数据抓取及整理详细流程
- appium 驱动 对应9.0 系统_第一章:appium
- JavaWeb编程中如果jar包存在但显示无法输出,就在IDEA的项目发布中添加lib依赖!
- kittito_rosbag入坑教程
- C#6.0VISUALSTUDIO 2015 C#入门经典 第7版pdf
- Windows系统安装Redis(详细)
- 用JavaScript实现简单的乘法计算
- js 获取两个数组的交集,并集,补集,差集(转载+收藏)
- 数字孪生是什么,数字孪生能干什么?一文读懂
- markdown无法显示图片的问题