我有一个名为 final_img
的图像矩阵。下面给出了行和列的图像位置矩阵:
a =
1 1
1 2
2 1
2 2
3 1
3 2
1 1
2 2
这些位置的值为
b =
1
2
3
4
5
6
7
8
在上述给出的位置中,某些位置是重复的,例如:位置
[1 1]
。我可以使用以下代码来识别唯一的位置。[uniquerow, ~, rowidx] = unique(a, 'rows');
noccurrences = accumarray(rowidx, 1);
我需要通过对图像位置值求和来更新唯一的图像位置。例如:位置[1 1]
重复两次
,相应的b
中的值为1
和7
。因此,
final_img(1,1)
应该是1+7=8;
如何在MATLAB中实现此算法而不使用for循环?
final_img(a(:,1), a(:,2)) = final_img(a(:,1), a(:,2)) + b
时会发生什么? - Mad Physicist