【发布时间】:2014-01-20 07:47:41
【问题描述】:
这里有一些关于如何在 MATLAB 中制作循环缓冲区的好帖子(例如 this one)。但是从查看它们来看,我认为它们不适合我的应用程序,因为我正在寻找的是 MATLAB 中的循环缓冲区解决方案,它不涉及任何旧数据的复制。
举个简单的例子,假设我一次处理 50 个样本,每次迭代读取 10 个样本。我将首先运行 5 次迭代,填满我的缓冲区,最后处理我的 50 个样本。所以我的缓冲区将是
[B1 B2 B3 B4 B5]
,其中每个“B”是一个包含 10 个样本的块。
现在,我阅读了接下来的 10 个样本,将它们称为 B6。我希望我的缓冲区现在看起来像:
[B2 B3 B4 B5 B6]
问题是 - 我不想每次都复制旧数据 B2、B3、B4、B5,因为这样会变得很耗时。 (我有非常大的数据集)。
我想知道是否有一种方法可以在不复制任何“旧”数据的情况下做到这一点。谢谢。
【问题讨论】:
标签: matlab optimization buffer circular-buffer processing-efficiency