Умножение матриц

У меня есть вопрос, который может быть для новичков.

Я хочу умножить матрицу 20x2 на матрицу 2x2 в C ++.

Я пробовал это с openCV, но получаю сообщение об ошибке

Неверный аргумент (неизвестный тип массива) в cvarrToMat


Вот код, который я использовал в openCV, чтобы проверить, возникла ли проблема с моим код или проблема в openCV, но он все еще не работает, я могу скомпилировать без ошибки, но когда я тестирую код, я получаю проблему «Плохой аргумент (неизвестный тип массива) в cvarrToMat»

#include <stdio.h>
#include <stdlib.h>
//#include "/usr/include/opencv/cv.h"
#include <cv.h>
#include <cvaux.h>
#include <highgui.h>
#include <math.h>
#include <iostream>

  int main()
{


double a[] = {1, 2, 3, 4};
CvMat Ma;
cvInitMatHeader(&Ma, 2, 2, CV_32FC1, a);


double b[] ={0, -1, 1, 0};

CvMat Mb;
cvInitMatHeader(&Mb, 2, 2, CV_32FC1, b);

CvMat Mc;
CvMat Mc1;
cvMatMul(&Ma, &Mb, &Mc);

return 0;
}
7
задан Bill the Lizard 14 November 2011 в 04:10
поделиться