Ubuntu14.04 下 OpenCV3 安装

54 篇文章 1 订阅

深度好文,亲测有效

在ubuntu14.04下安装Opencv3,遇到了许多不明白的问题,第一次安装成功了 并没有什么问题,系统重装后再次安装,却出现了很多问题,特作笔记。

一 按照官网安装Opencv步骤:

1.需要的包:

    GCC 4.4.x 或更高

    CMake 2.8.7 或更高

    Git

    GTK+2.x 或更高,包括头(libgtk2.0-dev)

    pkg-config

    Python 2.6 或以后,Numpy 1.5或以后,和开发包(python-dev,python-numpy)

    ffmpeg 或者libav开发包:libavcodec-dev, libavformat-dev, libswscale-dev

    可选包:libtbb2 ,libtbb-dev

    可选包:libdc1394 2.x   

    可选包:libjpeg-dev, libpng-dev, libtiff-dev, libjasper-dev, libdc1394-22-dev

可以用一下代码进行安装:

    基本:

?
1
sudo  apt-get  install  build-essential

    必须:

?
1
sudo  apt-get  install  cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev

    可选:

?
1
sudo  apt-get  install  python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev

2.下载安装包opencv-3.0.0.zip,也可以自行上opencv官网下载http://opencv.org/

解压安装包到你想要的地方,本文以存放主文件加下。

3. 利用终端进入opencv3文件夹,代码如下:

?
1
cd  ~ /opencv-3 .0.0

4. 新建build文件夹存放opencv的编译文件,进入build文件夹代码如下

?
1
2
mkdir  build
cd  build

5. 配置opencv文件,代码如下:

?
1
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX= /usr/local  ..

或者使用cmake-gui用图形界面编译。

6. 进行编译,代码如下:

?
1
make

7. 安装opencv库到系统,代码如下:

?
1
sudo  make  install

这样OpenCV就可以使用了。


二 测试

新建一个HelloWorld.cpp,代码如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <opencv2/highgui.hpp>
#include <opencv2/imgproc.hpp>
 
using  namespace  cv;
 
int  main(  int  argc,  char ** argv )
{
     
     if ( argc != 2 ) //判断参数是否是两个
     {
         printf " No image data \n "  );
         return  -1;
     }
     char * imageName = argv[1];
 
     Mat image;
     image = imread( imageName, 1 ); //读入图片
 
     if (  !image.data),判断是否有数据
     {
         printf " No image data \n "  );
         return  -1;
     }
 
     namedWindow( imageName, CV_WINDOW_AUTOSIZE );
     imshow( imageName, image ); //显示图片
 
     waitKey(0);
 
     return  0;
}

新建CMakeLists.txt,代码如下:

?
1
2
3
4
5
cmake_minimum_required(VERSION 2.8)
project(helloworld)
add_executable(helloworld HelloWorld.cpp)
find_package(OpenCV REQUIRED)
target_link_libraries(helloworld ${OpenCV_LIBS})

在两个文件所在目录新建build文件夹存放编译代码,并进行编译,代码如下:

?
1
2
3
4
mkdir  build
cd  build
cmkae ..
make

之后可以看见build文件夹里生成一个helloworld的可运行文件,运行代码:

?
1
. /helloworld  pitcure.jpg

picture.jpg为传入的图片,作为参数,放在build文件夹里,也可以自己编写路径。


三 问题

以上就是OpenCV安装全过程,安装过程中可能碰到一些问题,例举一些。

在编译的过程中可能会碰到找不到Qt5文件的情况,只是一个警告可以不理,如果有强迫症的同学可以安装一下Qt5

?
1
2
3
4
CMake Warning at cmake /OpenCVFindLibsGUI .cmake:18 (find_package):
   By not providing  "FindQt5Core.cmake"  in  CMAKE_MODULE_PATH this project has
   asked CMake to  find  a package configuration  file  provided by  "Qt5Core" , but
   CMake did not  find  one.

另一个是ICV hash校验值不符的问题

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
CMake Warning at 3rdparty /ippicv/downloader .cmake:54 (message):
   ICV: Local copy of ICV package has invalid MD5  hash :
   0103b909e19ca9c6497a7ae696c16480 (expected:
   8b449a536a2157bcad08a2b9f266828b)
Call Stack (most recent call first):
   3rdparty /ippicv/downloader .cmake:108 (_icv_downloader)
   cmake /OpenCVFindIPP .cmake:235 (include)
   cmake /OpenCVFindLibsPerf .cmake:12 (include)
   CMakeLists.txt:526 (include)
 
 
-- ICV: Downloading ippicv_linux_20141027.tgz...
CMake Error at 3rdparty /ippicv/downloader .cmake:71 ( file ):
   file  DOWNLOAD HASH mismatch
 
     for  file : [ /home/jason/program/opencv-3 .0.0 /3rdparty/ippicv/downloads/linux-8b449a536a2157bcad08a2b9f266828b/ippicv_linux_20141027 .tgz]
       expected  hash : [8b449a536a2157bcad08a2b9f266828b]
         actual  hash : [0103b909e19ca9c6497a7ae696c16480]
 
Call Stack (most recent call first):
   3rdparty /ippicv/downloader .cmake:108 (_icv_downloader)
   cmake /OpenCVFindIPP .cmake:235 (include)
   cmake /OpenCVFindLibsPerf .cmake:12 (include)
   CMakeLists.txt:526 (include)

之后查了很多资料也没有发现也不知道该怎么解决,后来去查了一下代码,发现这个是下载ippicv_linux_20141027.tgz时的校验和不符,查看了配置文件,发现可以自行从http://sourceforge.net/projects/opencvlibrary/files/3rdparty/ippicv这里下载,奇怪的是编译时从这里下载的文件和自己下载的文件校验值居然不一样,也真是神奇,将下载的文件

~/opencv-3.0.0/3rdparty/ippicv/downloads/linux-8b449a536a2157bcad08a2b9f266828b ,代替原来的同名文件,ok问题解决。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值