Matlabに行列を送るには、C++コードで "engine.h"を使用します。実際には、私はcv :: Matの中にデータを持っているので、mxArrayを送信する必要があります。私はこの表現を使用しようとしましたが、うまくいきません:cv :: MatからmxArrayにデータを変換する
cv::Mat _priorP;
_priorP = Mat::eye(13, 13, CV_32FC1);
mxArray *mat;
mat = mxCreateDoubleMatrix(13, 13, mxREAL);
memcpy(mxGetPr(mat),_priorP.data, 13*13*sizeof(double));
変換を行う正しい方法は誰も知っていますか?どんな援助も感謝します。ありがとう。 https://stackoverflow.com/a/8848711/744859
ありがとうございました。ですから、open.cVでengine.hを使うのはいつも面倒ですね。私はより直接的なものを期待していましたが、もっと簡単な解決法がない場合、私はこれを試してみます。 –
1つの質問。 opencvが列ごとに行とmatlabによってデータを格納することを検討していますか? –
私が提案したスレッドを開き、そこにある**完全なソースコードを見てください。他のユーザーによると、そのコードは動作します。しかし、そうでなければ、少なくともあなたのためのスタートです。 – karlphillip