Mat
OpenCVオブジェクトをobjectに変換するにはどうすればよいcvMat
ですか?
この OpenCV 相互運用性に関するドキュメント( 1 ) によると、この変換は可能であるはずです。しかし、宣言するcvMat
と、コンパイラは次の行にエラーメッセージを表示しますcvMat deprecatedImg
: エラー: < 予想される ';' 「deprecatedImg」の前 >、
これを修正するには?
Mat
OpenCVオブジェクトをobjectに変換するにはどうすればよいcvMat
ですか?
この OpenCV 相互運用性に関するドキュメント( 1 ) によると、この変換は可能であるはずです。しかし、宣言するcvMat
と、コンパイラは次の行にエラーメッセージを表示しますcvMat deprecatedImg
: エラー: < 予想される ';' 「deprecatedImg」の前 >、
これを修正するには?
types_c.h
OpenCV 3 以降では、 のような非推奨の C オブジェクトを使用するには、互換性 headers() を使用する必要がありますcvMat
。OpenCV 3.0 では、 ( 1CvMat
)を受け入れるコンストラクターがあります。以下のようにコードします。Mat
#include "opencv2/core/types_c.h"
cv::Mat img = ... ;
CvMat deprecatedImg(img);
OpenCV 2.4.* 以下では、Mat
toCvMat
変換演算子 ( 2Mat
) が存在し、以下のように単にtoを割り当てることができCvMat
ます。この変換演算子は OpenCV 3 以降には存在しないことに注意してください。
Mat img = ...;
CvMat cvMatImg = img;