Я хочу изменить часть многомерной матрицы, используя openCV. В основном я хочу, чтобы достичь того же, как написано в Matlab:Как изменить часть многомерной матрицы в openCV?
A = zeros(5,5,25);
A(:,:,1) = some_matrix1;
A(:,:,2) = some_matrix2;
Я не уверен, если я должен использовать матрицу 5x5 с 25 каналами или 5x5x25 матрицы с одним каналом. Вот что я пробовал:
int dim[3] = { 5,5,25 };
Mat A(3, dim, CV_32FC(1), Scalar::all(0));
A(Range::all(),Range::all(),0) = some_matrix;
Но, похоже, я могу использовать только Range для двух измерений. Или
Mat A(5, 5, CV_32FC(25), Scalar::all(0));
A(Range::all(),Range::all())[0] = some_matrix;
Но в данном случае я не знаю, как получить доступ к каналу. Не могли бы вы помочь мне?
здесь смотрите http://docs.opencv.org/modules/core/doc/basic_structures.html?#NAryMatIterator – bendervader