0

我在理解 matlab 代码并将其转换为 opencv 时面临问题。我想知道在 opencv 的 matlab 中是否有 sub2ind 的等效功能。或者如何在 opencv 中实现这个特定的功能。

sub2ind 函数的链接是

http://www.mathworks.in/help/techdoc/ref/sub2ind.html

4

1 回答 1

1

一个简单的例子来说明。考虑:

>> v = (1:4*3)
v =
     1     2     3     4     5     6     7     8     9    10    11    12
>> M = reshape(v,[4 3])
M =
     1     5     9
     2     6    10
     3     7    11
     4     8    12

现在以下所有内容都是等价的:

sz = size(M);

i = 3; j = 2;
M(i,j)
v( sub2ind(sz,i,j) )
v( sz(1)*(j-1)+i )

请记住,MATLAB 使用列优先顺序,而 C 是行优先顺序

于 2012-06-19T14:27:09.300 回答