zoukankan      html  css  js  c++  java
  • opencv Installation in Linux and hello world

    http://opencv.org/quickstart.html

    Installation in Linux

    These steps have been tested for Ubuntu 10.04 but should work with other distros as well.

    Required Packages

    • GCC 4.4.x or later
    • CMake 2.8.7 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

    The packages can be installed using a terminal and the following commands or by using Synaptic Manager:

    [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
    

    Getting OpenCV Source Code

    You can use the latest stable OpenCV version or you can grab the latest snapshot from our Git repository.

    Getting the Latest Stable OpenCV Version

    • Go to our downloads page.
    • Download the source archive and unpack it.

    Getting the Cutting-edge OpenCV from the Git Repository

    Launch Git client and clone OpenCV repository. If you need modules from OpenCV contrib repository then clone it too.

    For example

    cd ~/<my_working_directory>
    git clone https://github.com/Itseez/opencv.git
    git clone https://github.com/Itseez/opencv_contrib.git
    

    Building OpenCV from Source Using CMake

    1. Create a temporary directory, which we denote as <cmake_build_dir>, where you want to put the generated Makefiles, project files as well the object files and output binaries and enter there.

      For example

      cd ~/opencv
      mkdir build
      cd build
      
    2. Configuring. Run cmake [<some optional parameters>] <path to the OpenCV source directory>

      For example

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

      or cmake-gui

      • set full path to OpenCV source code, e.g. /home/user/opencv
      • set full path to <cmake_build_dir>, e.g. /home/user/opencv/build
      • set optional parameters
      • run: “Configure”
      • run: “Generate”
    3. Description of some parameters

      • build type: CMAKE_BUILD_TYPE=ReleaseDebug
      • to build with modules from opencv_contrib set OPENCV_EXTRA_MODULES_PATH to <path to opencv_contrib/modules/>
      • set BUILD_DOCS for building documents
      • set BUILD_EXAMPLES to build all examples
    4. [optional] Building python. Set the following python parameters:

      • PYTHON2(3)_EXECUTABLE = <path to python>
      • PYTHON_INCLUDE_DIR = /usr/include/python<version>
      • PYTHON_INCLUDE_DIR2 = /usr/include/x86_64-linux-gnu/python<version>
      • PYTHON_LIBRARY = /usr/lib/x86_64-linux-gnu/libpython<version>.so
      • PYTHON2(3)_NUMPY_INCLUDE_DIRS = /usr/lib/python<version>/dist-packages/numpy/core/include/
    5. [optional] Building java.

      • Unset parameter: BUILD_SHARED_LIBS
      • It is useful also to unset BUILD_EXAMPLES, BUILD_TESTS, BUILD_PERF_TESTS - as they all will be statically linked with OpenCV and can take a lot of memory.
    6. Build. From build directory execute make, recomend to do it in several threads

      For example

      make -j7 # runs 7 jobs in parallel
      
    7. [optional] Building documents. Enter <cmake_build_dir/doc/> and run make with target “html_docs”

      For example

      cd ~/opencv/build/doc/
      make -j7 html_docs
      
    8. To install libraries, from build directory execute

      sudo make install
      
    9. [optional] Running tests

      For example

      git clone https://github.com/Itseez/opencv_extra.git
      
      • set OPENCV_TEST_DATA_PATH environment variable to <path to opencv_extra/testdata>.
      • execute tests from build directory.

      For example

      <cmake_build_dir>/bin/opencv_test_core
      

    Note

    If the size of the created library is a critical issue (like in case of an Android build) you can use the install/strip command to get the smallest size as possible. The stripped version appears to be twice as small. However, we do not recommend using this unless those extra megabytes do really matter.

     

    Using OpenCV with gcc and CMake

    Note

    We assume that you have successfully installed OpenCV in your workstation.

    • The easiest way of using OpenCV in your code is to use CMake. A few advantages (taken from the Wiki):
      1. No need to change anything when porting between Linux and Windows
      2. Can easily be combined with other tools by CMake( i.e. Qt, ITK and VTK )
    • If you are not familiar with CMake, checkout the tutorial on its website.

    Steps

    Create a program using OpenCV

    Let’s use a simple program such as DisplayImage.cpp shown below.

    #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>
    ");
            return -1;
        }
    
        Mat image;
        image = imread( argv[1], 1 );
    
        if ( !image.data )
        {
            printf("No image data 
    ");
            return -1;
        }
        namedWindow("Display Image", WINDOW_AUTOSIZE );
        imshow("Display Image", image);
    
        waitKey(0);
    
        return 0;
    }
    

    Create a CMake file

    Now you have to create your CMakeLists.txt file. It should look like this:

    cmake_minimum_required(VERSION 2.8)
    project( DisplayImage )
    find_package( OpenCV REQUIRED )
    include_directories( ${OpenCV_INCLUDE_DIRS} )
    add_executable( DisplayImage DisplayImage.cpp )
    target_link_libraries( DisplayImage ${OpenCV_LIBS} )
    

    Generate the executable

    This part is easy, just proceed as with any other project using CMake:

    cd <DisplayImage_directory>
    cmake .
    make
    

    Result

    By now you should have an executable (called DisplayImage in this case). You just have to run it giving an image location as an argument, i.e.:

    ./DisplayImage lena.jpg
    

    You should get a nice window as the one shown below:

  • 相关阅读:
    unigui1404在delphi10.2.2安装
    入库单的一些业务逻辑
    mormot日志
    论MORMOT序列的JSON格式
    线程安全的队列
    SynDBOracle.pas
    轻量级的REST中间件
    TQuery
    100亿数据1万属性数据架构设计
    愤怒的TryCatch
  • 原文地址:https://www.cnblogs.com/welhzh/p/4393351.html
Copyright © 2011-2022 走看看