[英]How to convert Mat to cvMat in OpenCV 3.0
如何將 OpenCV Mat
對象轉換為cvMat
對象?
根據這個 OpenCV 互操作性文檔( 1 ),這種轉換應該是可能的。 但是在聲明cvMat
時,編譯器在cvMat deprecatedImg
行給出以下錯誤消息
:錯誤:<預期';' 在'deprecatedImg'之前>,
如何解決這個問題?
在 OpenCV 3 及更高版本中,您必須使用兼容性標頭( types_c.h
)來使用已棄用的 C 對象,例如cvMat
。 在 OpenCV 3.0 中, CvMat
有一個接受Mat
( 1 ) 的構造函數。 代碼如下。
#include "opencv2/core/types_c.h"
cv::Mat img = ... ;
CvMat deprecatedImg(img);
在 OpenCV 2.4.* 及以下版本中,存在Mat
到CvMat
轉換運算符 ( 2 ),您可以簡單地將Mat
分配給CvMat
,如下所示。 請注意,OpenCV 3 及更高版本中不再存在此轉換運算符。
Mat img = ...;
CvMat cvMatImg = img;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.