Ubuntu上的OpenCV:找不到imwrite

时间:2011-11-09 06:39:27

标签: ubuntu opencv compilation

我正在尝试在我的Ubuntu机器上使用OpenCV,但我遇到了一些问题。我想我可能没有获得OpenCV的最新版本,但我不确定这是不是问题。

我使用以下链接在我的Ubuntu 11.10上安装了OpenCV:https://help.ubuntu.com/community/OpenCV

我有以下代码:

#include    "cv.h"
using namespace cv;
...
Mat mat(width, height, CV_8UC2, buffer);
imwrite("test.jpg", mat);

include指令和Mat()构造函数工作正常,但我不能让imwrite被编译器识别:

g++ example.cpp -o example -lSDL -lpthread `pkg-config --cflags opencv --libs opencv`
example.cpp:64:40: error: ‘imwrite’ was not declared in this scope

我在页面上看到我链接到它安装libcv2.1,但当前版本是2.3,我认为这可能是问题。

我查看了synpatic软件包管理器以获取另一个版本的openCV,但它是唯一的版本。

有人可以告诉我这是否确实存在问题以及如何轻松升级到最新版本?我之前尝试使用CMake构建OpenCV但是我遇到了正确构建它的问题,所以我决定让apt-get完成这项工作。

非常感谢!

编辑:(找到解决方案)

对不起,我刚才意识到这是一个愚蠢的错误,我忘了包含一个头文件:

#include "highgui.h"

对此感到抱歉!

1 个答案:

答案 0 :(得分:5)

对不起,我刚才意识到这是一个愚蠢的错误,我忘了包含一个头文件:

包括“highgui.h”

对此感到抱歉!