看过好多人写的教程,一直无法编译。捉摸了一个周之后终于安装编译成功了。
以下教程参考了其他人的方法,如有侵权请联系我删除。
ubuntu安装opencv的方法
一、前提准备
1、系统更新sudo apt-get update sudo apt-get upgrade
2、搭建C/C++编译环境:
sudoapt-get install build-essential
3、安装关联库:
sudoapt-get install cmake git libgtk2.0-dev pkg-config libavcodec-devlibavformat-dev libswscale-dev
sudoapt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-devlibpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
二、解压
unzip 文件名.zip
三、安装
1、创建build目录 mkdir build
2、进入build目录 cd build
3、cmake -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON-D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON -DWITH_QT=ON -D WITH_OPENGL=ON ..
4、在build目录
make
sudo make install
5、配置opencv.conf file,加入环境变量
sudo gedit /etc/ld.so.conf.d/opencv.conf
在打开的opencv.conf里面加入命令/usr/local/lib
更新库目录sudo ldconfig
打开文件bash.bashrc
sudo gedit /etc/bash.bashrc
加入下面两行
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
安装完成
四、测试
1、创建工作目录(名字可以自己取)
mkdir ~/opencv-lena
cd ~/opencv-lena
gedit DisplayImage.cpp
2、在打开的DisplayImage文件中输入自己要输入的代码,参考程序如下:
#include <stdio.h>
#include <opencv2/opencv.hpp>
using namespace cv;
int main(int argc, char** argv )
{
if ( argc != 2 )
{
printf("usage: DisplayImage.out<Image_Path>\n");
return -1;
}
Mat image;
image = imread( argv[1], 1 );
if ( !image.data )
{
printf("No image data \n");
return -1;
}
namedWindow("Display Image", WINDOW_AUTOSIZE );
imshow("Display Image", image);
waitKey(0);
return 0;
}
3、创建CMake编译文件
gedit CmakeLists.txt (也可自己在工作目录里创建文件,名字为CmakeLists.txt)
写入如下内容
cmake_minimum_required(VERSION 2.8)
project( DisplayImage )
find_package( OpenCV REQUIRED )
add_executable( DisplayImage DisplayImage.cpp )
target_link_libraries( DisplayImage ${OpenCV_LIBS} )
4、编译
进入之前创建的工程文件夹cd opencv-lena
cmake .
Make
5、执行
此时opencv-lena文件夹中已经产生了可执行文件DisplayImage,下载lena.jpg放在opencv-lena下,运行
./DisplayImage lena.jpg