从数组中移动窗口MATLAB



大家好,正在处理这个问题,我找不到一个可靠的方法来解决。更容易显示一些输入和输出。

k=3
I = [1 2 3 4 5 6 7]
myWindow(I, k)
O(1) = [1 2 3]
O(2) = [1 2 3 4]
0(4) = [2 3 4 5 6]
... O(7) = [5 6 7].

正如你所看到的,窗口的大小是"3",这样我就可以保留两个相邻的点,在边缘我可以保留1、2或不保留点。我们非常感谢在解决这个问题时提供的任何帮助。

匿名函数方法可以是:

myWindow = @(n) I(max(1, n-k+1):min(numel(I), n+k-1));

请注意,如果稍后修改Ik,除非再次运行上述命令,否则myWindow()将不会自动更新。

相关内容

  • 没有找到相关文章

最新更新