【发布时间】:2011-02-21 06:25:38
【问题描述】:
我想对以下 MATLAB 代码进行矢量化处理。我认为它一定很简单,但我发现它仍然令人困惑。
r = some constant less than m or n
[m,n] = size(C);
S = zeros(m-r,n-r);
for i=1:m-r+1
for j=1:n-r+1
S(i,j) = sum(diag(C(i:i+r-1,j:j+r-1)));
end
end
代码从另一个分数表 C 为动态规划算法计算分数表 S。
对角线求和是为用于生成 C 的各个数据片段生成分数,用于所有可能的片段(大小为 r)。
提前感谢您的任何回答!对不起,如果这个应该很明显......
注意
内置的 conv2 比 convnfft 更快,因为我的 eye(r) 非常小( 5 20 才能体现任何好处。
【问题讨论】:
标签: matlab matrix dynamic-programming vectorization