【发布时间】:2021-02-20 12:58:52
【问题描述】:
我有大量数据,需要在图表上反复显示。
图表的宽度为 1400 像素。数据包含超过 30,000 个数据点。 因此,我想将数据点减少到大约 1400 个左右,同时仍保持图形的主要特征(最大值、最小值等)。
如果您查看 LabVIEW 和 MATLAB 等程序,它们能够通过压缩数据来显示包含大量数据点的图形,而不会丢失图形的主要功能。 我无法使用简单的抽取、平均或移动平均,因为这不会保持图表的特征。
有谁知道这些程序正在使用任何算法,或者会给我预期的结果吗? 我也对性能算法感兴趣。
【问题讨论】:
-
我猜他们会进行某种形式的重采样。例如,如果您将图形的宽度减半(但高度保持不变),那么您将使用等于奈奎斯特速率一半的截止频率进行低通滤波器,然后以 2 倍抽取。在 MATLAB 中,您可以使用 @ 987654321@ 这样做。理想情况下,您应该应用 2D 过滤器来调整 2D 大小,但这在计算上可能会很慢。在这种情况下,您可能需要进行硬抽取,然后进行适当的重新采样。
-
我怀疑双线性插值等典型的快速图像调整技术不适合,因为这仅考虑了计算每个输出像素的 2x2 邻域。 (因此您会从图表中丢失很多细节)。
标签: algorithm matlab graph compression labview