python - 管道周围的高分辨率数据需要下采样,包括环绕边缘
问题描述
我从一个管状管道中获取数据,该管道周围有 360 个样本(方位角每 1 度),我需要下采样到 72 个样本。考虑到我正在比较的测量的物理特性和分辨率,72 个样本中的每一个样本的平均值约为 。360 个样本中的 15 个。
通过切片进行下采样的传统方法不会让我进行适当的下采样,实际上会改变数据。我尝试以 5 片间隔进行平均(以匹配 360/72),但也出现偏移
为了真正比较这些测量值,我需要将高分辨率数据下采样到与其他测量值相同的分辨率。
问题:我需要通过对原始数组的 15 个进行平均来创建该数组的 72 列中的每一列,这意味着我需要能够将平均函数包装在主数组上。我想最终创建:
1- 一个移动的窗口,包括包边,我可以选择窗口的大小 2- 选择计算这个窗口的“步骤”,所以我可以得到我需要匹配的尽可能多的列的最终输出我的测量 3- 新的下采样数组,我将对其执行计算
尝试使用 5 个切片的平均值,但由于缺少边缘平均,生成的图像看起来不像输入,而且每 5 个切片并没有真正与较低分辨率测量值重叠
avesize=5 #360/72 =5
ave_array=[]
for i in range(0, len(a), avesize):
slice_from_index = i
slice_to_index = slice_from_index + avesize
ave_array.append(np.average(a[slice_from_index:slice_to_index]))
解决方案
推荐阅读
- php - PHP 文件未读取 SQLite3 数据库
- r - 在 R 中使用 tex2vec 的手套词嵌入模型参数,并在每 n 次迭代后显示训练输出(epochs)
- docker - 需要帮助安装 TensorFlow Docker 映像
- python-2.7 - 为什么 datetime.timedelta 返回不同的值?
- java - Spark 流式传输和模拟 hdfs
- javascript - 如何调用 Mapkit js Geocode 方法
- android - 键入 Android Junit4 不存在异常
- python - TensorFlow 如何使用我的 GPU?
- php - 如何在 Bootstrap 4 Modal、Wordpress 中显示帖子中的特定内容
- azure - 使用 Azure AD B2C 自定义身份提供程序 (OpenID Connect) 映射声明