Я использую C++ и opencv. Я должен получить матрицу преобразования, когда я умножаю матрицу А на другую матрицу, В. Но матрица B должна измениться, прежде чем умножить ее на A. Если B - матрица 2x3, ее нужно изменить на 3x3 с первыми двумя строками, содержащими те же элементы, что и исходная матрица B, но с последней строкой, имеющей все 1 , Проще говоря, мне нужно добавить последнюю строку из 1 в исходную матрицу В. Я хочу знать, могу ли я достичь этого с помощью любой конкретной матрицы матричной операции. ThankyouПреобразование матрицы матрицы
ответ
Вам необходимо использовать Mat::push_back, который добавит элементы в нижней части матрицы.
Например
Mat A = (Mat_<uchar>(3,4) << 1, 2, 3, 4,\
5, 6, 7, 8,\
9, 10, 11, 12); // 3X4 matrix.
Mat B = (Mat_<uchar>(1,4) << 13, 14, 15, 16); // 1X4 matrix
A.push_back(B); // Now A become 4X4 matrix
Уход. Я так привык к API OpenCV Python, что я не знал, что это существует. :) –
- это ваш код в python? нормально, я явно не вводил исходную матрицу, но когда я добавляю часть Mat B с 1 в скобке, я получаю эту ошибку http://i.imgur.com/Mff4Q6z.jpg – Steph
@Steph Нет этого чистого кода на C++. И убедитесь, что количество столбцов для обоих Mat должно быть равным, то есть, если A - это порядок 2X3, тогда B должен быть NX3, где N> 0. – Haris
прямо вперед путь, но, вероятно, не самый быстрый и симпатичные
Mat B_new(3,3,CV_32F);
B_new.row(0) = B.row(0);
B_new.row(1) = B.row(1);
B_new.row(2) = Mat::ones(1,3,CV_32F);
Вы должны взглянуть на Mat
type documentation
спасибо, но я получаю следующее сообщение об ошибке http://i.imgur.com/o6PLnQq.jpg Моя оригинальная матрица - 2x6 – Steph
- 1. преобразование матрицы
- 2. Преобразование матрицы матрицы матрицы в pandas Кадр данных python
- 3. Преобразование матрицы 4x2 в две матрицы 2x2?
- 4. Преобразование списка 3d матрицы в 4d матрицы
- 5. Быстрое преобразование/преобразование матрицы умножения
- 6. Преобразование матрицы в столбцы
- 7. Преобразование 2-мерной матрицы
- 8. Преобразование матрицы DirectX
- 9. андроида вращение преобразование матрицы
- 10. преобразование матрицы в строку
- 11. преобразование матрицы dojo.gfx
- 12. Преобразование матрицы в вектор
- 13. R: разреженное преобразование матрицы
- 14. Преобразование матрицы в список
- 15. преобразование матрицы в список
- 16. Множественное преобразование матрицы Anano
- 17. Сходство преобразование проекции матрицы
- 18. Преобразование геометрии, операции матрицы
- 19. Matlab преобразование матрицы изображений
- 20. Преобразование формата матрицы, обжигающий
- 21. Преобразование матрицы холста
- 22. Преобразование матрицы в вектор
- 23. 2d преобразование, умножение матрицы
- 24. Преобразование матрицы в MATLAB
- 25. Преобразование матрицы в массив
- 26. преобразование матрицы из логфайла
- 27. преобразование матрицы смежности на расстояние или скачкообразный матрицы
- 28. Преобразование матрицы в отсутствие присутствия матрицы на основе значений вероятности
- 29. Преобразование кода инициализации матрицы/матрицы из C++ в C#
- 30. Преобразование матрицы в марковской переходной матрицы в R
Самостоятельно, матричные элементы исходного объекта Mat отображаются только на одной строке (см. http://i.imgur.com/JFb49of.jpg, где (55,118) - одна координата). Я попытался добавить последнюю строку из 1, так как вы, ребята, предложили bu Это не работает. Либо я не смотрю достаточно сильно, но я не могу сделать эту работу. – Steph