PHP   发布时间:2022-04-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了php – 根据密度过滤数组大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个样本图,如下面的..,我用数组X中的(x,y)值集合绘制.

http://bubblebird.com/images/t.png

如您所见,图像的峰值密度在4000到5100之间

我的确切问题是,我可以通过编程方式找到图表最密集的范围吗?

ie ..使用Array X如何找到此图密集的范围?
对于这个数组,它将是4000 – 5100.

假设为简单起见,阵列只有一个密集区域.

如果您可以建议伪代码/代码,请感谢.

解决方法

您可以在移动窗口上使用信号的方差.
下面是一个示例(参见附图,其中测试信号为红色,窗口方差为绿色,滤波后的信号为蓝色):

测试信号生成:

@H_801_24@import numpy as np X = np.arange(200) - 100. Y = (np.exp(-(X/10)**2) + np.exp(-((np.abs(X)-50.)/2)**2)/3.) * np.cos(X * 10.)

计算移动窗口方差:

@H_801_24@window_length = 30 # number of point for the window variance = np.array([np.var(Y[i-window_length / 2.: i+window_length/2.]) for i in range(200)])

得到方差高的指数(这里我选择的标准方差优于最大方差的一半……你可以根据你的情况调整它):

@H_801_24@idx = np.where(variance > 0.5 * np.max(variancE)) X_min = np.min(X[idx]) # -14.0 X_max = np.max(X[idx]) # 15.0

或过滤信号(将方差设为零)

@H_801_24@Y_modified = np.where(variance > 0.5 * np.max(variancE),Y,0)

大佬总结

以上是大佬教程为你收集整理的php – 根据密度过滤数组全部内容,希望文章能够帮你解决php – 根据密度过滤数组所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。