Подтвердить что ты не робот

OpenCV/С++: Копирование строки/столбца в Mat в другую?

Я знаю, что могу сделать это, скопировав каждый элемент самостоятельно, но есть ли метод, который делает это для меня? Я пробовал mat2.copyTo(mat1.row(0)), но это не работает.

4b9b3361

Ответ 1

Try

Mat mat1row = mat1.row(0);
mat2.copyTo(mat1row);

(при условии, что mat2 имеет тот же размер, что и целевая строка).

Это должно выполнить эту работу и станет более понятным.

Изменить: это еще короче и рекомендуется официальной документацией:

A.row(j).copyTo(A.row(i));

Подробнее об этом в официальной документации: http://docs.opencv.org/modules/core/doc/basic_structures.html#Mat%20Mat%3a%3arow%28int%20y%29%20const

Ответ 2

Try

destMat.row(i) = (sourceMat.row(i) + 0);

Это не очень красиво, но он выполняет свою работу. Также см. . Прочитайте комментарии к Mat:: row