OpenCV 错误:“MAT”不是“cv”的成员

OpenCV error: ‘MAT’ is not a member of ‘cv’

本文关键字:cv 成员 不是 MAT 错误 OpenCV      更新时间:2023-10-16

我正在尝试执行一个简单的OpenCV程序,但收到以下内容:error: ‘MAT’ is not a member of ‘cv’。我按照文档页面上的说明从源代码安装了 OpenCV。然后,我简化了此处的教程,以最大程度地减少潜在问题。这是我的代码:

#include <stdio.h>
#include <opencv2/opencv.hpp>
int main(int argc, char** argv) {
    // Read in image
    cv::MAT im1;
    im1 = cv::imread("opencv-logo.png");
    printf("Donen");
    return(0);
}

这是我的CMakeList.txt:

cmake_minimum_required(VERSION 2.8)
project ( pleasework )
find_package( OpenCV REQUIRED)
include_directories( ${OpenCV_INCLUDE_DIRS} )
add_executable( pleasework pleasework.cpp )
target_link_libraries( pleasework ${OpenCV_LIBS} )

令我困惑的是,cv::MAT投掷和错误,但cv::imread很好。我偷看了CMakeCache.txt,cmake似乎发现OpenCV很好。

//The directory containing a CMake configuration file for OpenCV.
OpenCV_DIR:PATH=/home/vector/opt/share/OpenCV

提前感谢您的帮助!

您必须将cv::MAT更改为cv::Mat

#include <stdio.h>
#include <opencv2/opencv.hpp>
int main(int argc, char** argv) {
    // Read in image
    cv::Mat im1;
    im1 = cv::imread("opencv-logo.png");
    printf("Donen");
    return(0);
}