簡體   English   中英

如何在 OpenCV 3.0 中將 Mat 轉換為 cvMat

[英]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.* 及以下版本中,存在MatCvMat轉換運算符 ( 2 ),您可以簡單地將Mat分配給CvMat ,如下所示。 請注意,OpenCV 3 及更高版本中不再存在此轉換運算符。

Mat img = ...;
CvMat cvMatImg = img;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM