是否有一种方法可以修复编译器未找到特定的OPENCV变量/函数
Is there a way to fix the compiler not finding specific openCV variables/functions?
我刚刚安装了opencv 3.2.0,在长时间的麻烦之后。我尝试编写一个加载图像,将其转换为灰度,写入并显示两者的程序。问题是每当我尝试运行
时g main.cpp -o输出`pkg -config - flags -libs opencv`
我得到以下
main.cpp: In function ‘int main()’:
main.cpp:14:27: error: ‘COLOR_BGR2GRAY’ was not declared in this scope
cvtColor(image, gImage, COLOR_BGR2GRAY);
^~~~~~~~~~~~~~
main.cpp:14:27: note: suggested alternative: ‘CV_BGR2GRAY’
cvtColor(image, gImage, COLOR_BGR2GRAY);
^~~~~~~~~~~~~~
CV_BGR2GRAY
main.cpp:14:3: error: ‘cvtColor’ was not declared in this scope
cvtColor(image, gImage, COLOR_BGR2GRAY);
^~~~~~~~
main.cpp:14:3: note: suggested alternative: ‘cvCvtColor’
cvtColor(image, gImage, COLOR_BGR2GRAY);
^~~~~~~~
cvCvtColor
我正在阅读OpenCV教程,并且正在为我的版本3.2.0读取它,并且它正在使用我试图使用的名称。
这是我的代码:
#include <opencv2/core.hpp>
#include <opencv2/imgcodecs.hpp>
#include <opencv2/highgui.hpp>
using namespace cv;
int main()
{
Mat image = imread("test.jpeg", 1);
Mat gImage;
cvtColor(image, gImage, COLOR_BGR2GRAY);
imwrite("test_gray.jpeg", gImage);
namedWindow("Display image", WINDOW_AUTOSIZE);
imshow("Display image", image);
namedWindow("gray", WINDOW_AUTOSIZE);
imshow("gray", gImage);
waitKey(0);
return 0;
}
我尝试运行
pkg-config -modversion opencv
检查我是否已安装了OPENCV的正确版本,并按预期返回了" 3.2.0"。另外,我正在运行薄荷19.1,如果这是任何相关性的(我是初学者,所以我对更高级用户可能建议/做的事情并不非常精明(
#include <opencv2/imgproc.hpp>
是我所需要的。不是在官方教程的代码中写的,所以我不知道我需要它。
相关文章:
- 未使用的C++未优化的静态成员函数/变量
- 内联函数/变量的外部链接
- 同一函数中的静态函数变量初始化顺序
- 将非静态成员函数C 的使用无效,而将成员功能作为函数变量
- 如何从doxygen输出中排除类的无证件成员函数/变量
- 如何在LUA C API中分配全局LUA函数变量
- 如何将函数变量传递给C lambda函数
- 通过另一个C++函数更改函数变量
- c++11 lambda 真的支持闭包吗?函数变量中存在语义冲突
- C++:静态成员不能在声明时定义,但静态函数变量可以?
- apache-frift是否支持函数变量作为参数
- 类函数/变量在使用之前必须声明
- 函数变量去哪里
- 无法使用函数变量?错误表达式必须具有类类型
- 如何在main中使用函数变量
- 每当尝试打印函数变量时,C++ cout 错误
- 是否存在查看成员函数/变量的整洁等效项
- 访问友元类之间的函数变量
- 函数到函数变量
- 一个定义规则是否强制创建一个静态函数变量