能配置opencv的编译软件有哪些

2024-12-24 23:57:31
推荐回答(1个)
回答1:

配置环境是: ubuntu12.04 + opencv2.4.0
安装OpenCV:
1. 安装必要的软件
apt-get install build-essential cmake libgtk2.0-dev pkg-config python-dev python-numpy libavcodec-dev libavformat-dev libswscale-dev

2. 从sourceforge上下载OpenCV的源码,下载地址是:
http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/2.4.0/

3. 解压到任意目录
tar xvf OpenCV-2.4.3.tar.bz2
cd OpenCV-2.4.3/

4. cmake编译OpenCV源码,所有的lib文件都会被安装到/usr/local目录下
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local

5. 安装
make
sudo make install
环境变量pkg_config_path 提供编译时和运行时库的路径查询。pkg-config 是通过库提供的一个 .pc 文件获得库的各种必要信息的,包括版本信息、编译和链接需要的参数等。这些信息可以通过 pkg-config 提供的参数单独提取出来直接供编译器和 链接器使用。使用 pkg-config 的 --cflags 参数可以给出在编译时所需要的选项,而 --libs 参数可以给出 链接时的选项。
在上述opencv 的安装结束后,pkg-config 的读取目录 /usr/local/lib/pkgconfig/ 下已经有opencv.pc。

6. 更新环境变量:
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig/

编译程序:

用OpenCV读入一副图像(img.jpg),代码如下:
//main.cpp
#include
#include
#include
using namespace cv;

int main() {
IplImage *img = cvLoadImage("img.jpg",0);
if (NULL == img) {
printf("Load image failed.\n");
return -1;
}
printf("Hello World\n");
cvReleaseImage(&img);
return 0;
}

方法1:直接命令编译:
g++ main.cpp -o main `pkg-config --cflags --libs opencv` (注意ESC下面的`,不是单引号)

方法2:借助cmake,需要写CMakeLists.txt,示例如下:

cmake_minimum_required(VERSION 2.8)
project(Hello)
find_package(OpenCV REQUIRED)
add_executable(Hello main.cpp)
target_link_libraries(Hello ${OpenCV_LIBS})

然后:
cmake .
make