在Ubuntu和debian上安裝OpenCV

參考:http://www.douban.com/note/478450231
html


http://docs.opencv.org/doc/tutorials/introduction/linux_install/linux_install.html#linux-installation
java

依賴包:python

 

  • GCC 4.4.x or later
  • CMake 2.6 or higher
  • Git
  • GTK+2.x or higher, including headers (libgtk2.0-dev)
  • pkg-config
  • Python 2.6 or later and Numpy 1.5 or later with developer packages (python-dev, python-numpy)
  • ffmpeg or libav development packages: libavcodec-dev, libavformat-dev, libswscale-dev
  • [optional] libtbb2 libtbb-dev
  • [optional] libdc1394 2.x
  • [optional] libjpeg-dev, libpng-dev, libtiff-dev, libjasper-dev, libdc1394-22-dev

能夠使用以下命令安裝依賴包:linux

 

 

[compiler] sudo apt-get install build-essential
[required] sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
[optional] sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev

下載Opencv源碼

https://github.com/Itseez/opencv.gitgit

 


建立臨時目錄cmake_binary_dir,用來存放cmake所產生的Makefile文件、項目文件、目標文件和輸出文件。github

而後進入cmake_binary_dir,按命令格式cmake [some optional parameters] <path to the OpenCV source directory>生成makefile文件。web

如:ubuntu

 

cd ~/opencv
mkdir release
cd release
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..

 


進入建立的臨時目錄cmake_binary_dir,輸入命令:bash

 

make
sudo make install

 


make過程當中出現錯誤:錯誤提示在:opencv-2.4.10/modules/core/src/system.cpp文件280行處;ide

修改以下:https://github.com/Itseez/opencv/commit/ea50be0529c248961e1b66293f8a9e4b807294a6

 

       #ifdef __x86_64__
         asm __volatile__
         (
          "movl $7, %%eax\n\t"
          "movl $0, %%ecx\n\t"
          "cpuid\n\t"
          :[eax]"=a"(cpuid_data[0]),[ebx]"=b"(cpuid_data[1]),[ecx]"=c"(cpuid_data[2]),[edx]"=d"(cpuid_data[3])
          :
          : "cc"
         );
         #else
+        // We need to preserve ebx since we are compiling PIC code.
+        // This means we cannot use "=b" for the 2nd output register.
         asm volatile
         (
          "pushl %%ebx\n\t"
          "movl $7,%%eax\n\t"
          "movl $0,%%ecx\n\t"
          "cpuid\n\t"
+         "movl %%ebx,%1\n\t"
          "popl %%ebx\n\t"
-      // : "=a"(cpuid_data[0]), "=b"(cpuid_data[1]), "=c"(cpuid_data[2]), "=d"(cpuid_data[3])
+         : "=a"(cpuid_data[0]), "=r"(cpuid_data[1]), "=c"(cpuid_data[2]), "=d"(cpuid_data[3])
          :
          : "cc"
         );

 

 

參考:http://www.douban.com/note/478450231
配置openCV參數設置
在/etc/ld.so.conf.d/opencv.conf文件中加入一行:/usr/local/lib ,
可能會沒有opencv.conf這個文件,那咱們就本身建立一個:
sudo gedit/etc/ld.so.conf.d/opencv.conf
使用下面這條命令:
sudo ldconfig
在 /etc/ bash.bashrc(sudo gedit/etc /bash.bashrc以root進入才能修改)中加入:
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH


若是已經安裝了CUDA,能夠加上CUDA編譯OpenCV。

```sh

sudo apt-get install libopencv-dev build-essential checkinstall cmake pkg-config yasm libtiff4-dev libjpeg-dev libjasper-dev libavcodec-dev libavformat-dev libswscale-dev libdc1394-22-dev libxine-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev libv4l-dev python-dev python-numpy libtbb-dev libqt4-dev libgtk2.0-dev libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev x264 v4l-utils

cd opencv
mkdir release
cd release
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -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 -D WITH_OPENGL=ON -D ENABLE_FAST_MATH=1 -D CUDA_FAST_MATH=1 -D WITH_CUBLAS=1 -D CUDA_GENERATION=Auto ..

make
sudo make install

按照上面的步驟配置OpenCV參數

```


另外一種安裝方法:

http://milq.github.io/install-opencv-ubuntu-debian/點擊打開連接

Note: This tutorial has been tested on Debian 8.0 "Jessie" with OpenCV 3.0.0 and Ubuntu 14.04 LTS with OpenCV 3.0.0 alpha. If you have successfully installed OpenCV following this tutorial with other OS or OpenCV version, please share your configuration. Thanks!

Install OpenCV on Ubuntu or Debian is a bit long but very easy. You can install OpenCV from the repository or manually.

INSTALL OPENCV FROM THE REPOSITORY

You can install OpenCV from the repository:

sudo apt-get install libopencv-dev python-opencv

However, you will probably not have installed the latest version of OpenCV and you may miss some features (for example: Python 3 bindings do not exist in the repository).

INSTALL OPENCV MANUALLY

To install the latest version of OpenCV be sure that you have removed the library from the repository withsudo apt-get autoremove libopencv-dev python-opencv and follow the steps below.

1. KEEP UBUNTU OR DEBIAN UP TO DATE

Open your terminal and execute:

sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade && sudo apt-get autoremove

2. INSTALL THE DEPENDENCIES

Now install the dependencies:

Build tools:

sudo apt-get install build-essential cmake

GUI:

sudo apt-get install qt5-default libvtk6-dev

Media I/O:

sudo apt-get install zlib1g-dev libjpeg-dev libwebp-dev libpng-dev libtiff5-dev libjasper-dev libopenexr-dev libgdal-dev

Video I/O:

sudo apt-get install libdc1394-22-dev libavcodec-dev libavformat-dev libswscale-dev libtheora-dev libvorbis-dev libxvidcore-dev libx264-dev yasm libopencore-amrnb-dev libopencore-amrwb-dev libv4l-dev libxine2-dev

Parallelism and linear algebra libraries:

sudo apt-get install libtbb-dev libeigen3-dev

Python:

sudo apt-get install python-dev python-tk python-numpy python3-dev python3-tk python3-numpy

Java:

sudo apt-get install ant default-jdk

Documentation:

sudo apt-get install doxygen sphinx-common texlive-latex-extra

3. DOWNLOAD AND DECOMPRESS OPENCV

Enter the OpenCV official website and download the latest version for Linux. Then decompress the downloaded file.

4. COMPILE AND INSTALL OPENCV

In your terminal, make sure you are within the OpenCV directory and run the following commands:

mkdir build
cd build
cmake -DWITH_QT=ON -DWITH_OPENGL=ON -DWITH_VTK=ON -DWITH_TBB=ON -DWITH_GDAL=ON -DWITH_XINE=ON -DBUILD_EXAMPLES=ON ..
make -j4
sudo make install

Now, configure OpenCV:

sudo ldconfig

Now, you have installed OpenCV. You can execute some examples builded and/or compile one demonstration.

5. EXECUTE SOME OPENCV EXAMPLES

Go to your OpenCV directory and execute a C++ example:

cd build/bin
./cpp-example-edge ../../samples/data/fruits.jpg

Now, go to your OpenCV directory and execute a Python example:

cd samples/python2
python video.py

Finally, go to your OpenCV directory and execute a Java example:

cd samples/java/ant
ant -DocvJarDir=../../../build/bin -DocvLibDir=../../../build/lib

6. COMPILE A DEMONSTRATION

Create a source file named demo.cpp with the following code:

#include <opencv2/core/core.hpp>
#include <opencv2/viz/vizcore.hpp>

int main()
{
    cv::viz::Viz3d window = cv::viz::Viz3d("Viz demonstration");

    cv::Point3d min(0.25, 0.0, 0.25);
    cv::Point3d max(0.75, 0.5, 0.75);

    cv::viz::WCube cube(min, max, true, cv::viz::Color::blue());
    cube.setRenderingProperty(cv::viz::LINE_WIDTH, 4.0);

    window.showWidget("Axis widget", cv::viz::WCoordinateSystem());
    window.showWidget("Cube widget", cube);

    while(!window.wasStopped()) {
        window.spinOnce(1, true);
    }

    return 0;
}

Create a text file named CMakeLists.txt with the following code:

cmake_minimum_required(VERSION 2.8.12)

project(demo)

find_package(OpenCV REQUIRED)
include_directories(${OpenCV_INCLUDE_DIRS})

add_executable(demo demo.cpp)
target_link_libraries(demo ${OpenCV_LIBS})

Finally, build and execute:

mkdir build && cd build && cmake .. && make
./demo

And that's it! You have installed OpenCV, run some examples, and compiled OpenCV code!

相關文章
相關標籤/搜索