我开始在MATLAB中进行编程,但是在创建缓冲区矩阵时遇到一些问题。我正在尝试执行以下操作:
我不断从网络摄像头获取图像,分割后获得移动目标的质心。我需要存储质心数据进行处理,但是我不希望它占用太多内存。例如,如果我是时间t=inf ,那么我想在矩阵中存储10个时间点的数据(例如循环缓冲区),然后写入和擦除较旧的数据,因为我需要同时使用其中的实际数据时间(t)和时间之前的数据(t-1)。
回答:
buffSize = 10; circBuff = nan(1,buffSize); for newest = 1:1000; circBuff = [newest circBuff(1:end-1)] end 我已经测试过了,不需要花费很多时间在MATLAB中运行。探查器找不到该代码的任何瓶颈。
更多&回答...