如何使用GCC编译器创建新的OpenCV-Mat对象
How create new OpenCV Mat object with GCC compiler?
我有灰色垫子(图像(。我想创建与灰色图像大小相同的彩色图像:使用Visual C++Express编译:
Mat dst = cvCreateImage(gray.size(), 8, 3);
但是GCC编译器是错误的:
threshold.cpp|462|error: conversion from ‘IplImage* {aka _IplImage*}’ to non-scalar type ‘cv::Mat’ requested|
我改为cvCreateMat
Mat dst = cvCreateMat(gray.rows, gray.cols, CV_8UC3);
但是GCC仍然是
threshold.cpp|462|error: conversion from ‘CvMat*’ to non-scalar type ‘cv::Mat’ requested|
方法是直接创建Mat还是进行任何转换?
cvCreateImage(gray.size(), 8, 3);
来自旧的、不推荐使用的c-api。不要使用它(它实际上是在创建IplImage*(。
构造一个cv::Mat,如下所示:
Mat dst(gray.size(), CV_8UC3); // 3 uchar channels
注意,您永远不必为结果图像预先分配任何内容,
所以,如果你想做一个阈值操作,它只是:
Mat gray = ....;
Mat thresh; // intentionally left empty!
threshold( gray,thresh, 128,255,0);
// .. go on working with thresh. no need to release it either.
相关文章:
- OpenCV Otsu的阈值:计算多个Mat对象的单个阈值
- OpenCV Mat对象复制速度更快
- OpenCV-C++中Mat对象的平均值
- OpenCV格式化程序类和Mat对象的cout产生链接器错误:体系结构x86_64的未定义符号:libopencv_co
- 如何从XML文件(OpenCV)将一定数量的行读入Mat对象
- 在 Java 客户端中创建 Mat 对象,使用 opencv 从C++服务器发送
- 为什么OpenCV Mat对象在嵌套for循环中指定了预期值后却不包含这些值
- I'm试图将像素数据转换为OpenCV Mat对象
- 如何在Android中从文件中读取OpenCV Mat对象
- 在OpenCV中从Mat对象构建图像
- 将Mat对象转换为双arr(OpenCV)
- OpenCV Mat对象的奇怪像素值
- OpenCV访问MAT对象中的RGB值
- OpenCV在C++中将Mat对象转换为数组
- 分配OpenCV Mat对象会导致内存泄漏
- 如何使用GCC编译器创建新的OpenCV-Mat对象
- OpenCV,显示动态二维数组作为图像(到Mat对象)
- OpenCV:为什么要创建多个 Mat 对象来转换图像的格式?
- 创建本地opencv mat对象时内存泄漏
- OpenCV Mat 对象 - 获取数据长度