close

下載OpenCV-2.4.7

點選下列執行檔, 進行OpenCV安裝檔案之解壓縮

image

設定欲解壓縮之目錄夾

image

解壓縮中…

image

解壓縮完成後先來看看有甚麼好康的

image

C:\OpenCV-2.4.7\opencv\build\doc\目錄下有許多電子檔

opencv_cheatsheet: 小抄清單(哈哈!!), 分門別類列出OpenCV常用指令之快速查詢清單, 這功能超讚的!!

點選藍色字體可以直接連接線上Help查詢語法

image

opencv_tutorials: 標準教學手冊(tutorial), 有一本電子檔案對於初學者來說真的很重要, 學習的動力提升, 能力自然加倍奉還!!!我個人偏好pdf檔案格式, 不喜歡chm或html格式

image

opencv_user:特定議題的說明, 針對一些特殊類別或資料格式進行說明

image

opencv2manager:對於Android service及Java API如何與OpenCV溝通進行說明

image

opencv2refman:參考手冊, 高達875頁, 有助於了解一些理論背景, 並同時提供一些數學公式

image

C:\OpenCV-2.4.7\opencv\build\include

包含opencv和opencv2兩個資料夾, 分別為OpenCV 1.x版和OpenCV 2.x版所需要的標頭檔

image

C:\OpenCV-2.4.7\opencv\build\java

image

C:\OpenCV-2.4.7\opencv\build\python\2.7

image

我的筆電作業系統環境為 win7 x64 +visual studio 2010

C:\OpenCV-2.4.7\opencv\build\x64\vc10

image

C:\OpenCV-2.4.7\opencv\build\x64\vc10\bin

包含OpenCV所需的動態連結檔案, 檔名d結尾的檔案(*d.dll )為debug的版本, 否則為release版本

image

C:\OpenCV-2.4.7\opencv\build\x64\vc10\lib

包含OpenCV所需的library檔案, 檔名d結尾的檔案(*d.lib )為debug的版本, 否則為release版本

image

C:\OpenCV-2.4.7\opencv\build\x64\vc10\staticlib

what is static library? 就是編譯時期就將所需的function一起編入執行檔中(超肥), 也因此不需要呼叫額外的動態連結檔案

a static library or statically-linked library is a set of routines, external functions and variables which are resolved in a caller at compile-time and copied into a target application by a compiler, linker, or binder, producing an object file and a stand-alone executable.

image

C:\OpenCV-2.4.7\opencv\sources

sources目錄是下面會介紹的CMake程式所要編譯的檔案來源

image

C:\OpenCV-2.4.7\opencv\sources\3rdparty\readme.txt

   1: This folder contains libraries and headers of a few very popular still image codecs
   2: used by highgui module.
   3: The libraries and headers are preferably to build Win32 and Win64 versions of OpenCV.
   4: On UNIX systems all the libraries are automatically detected by configure script.
   5: In order to use these versions of libraries instead of system ones on UNIX systems you
   6: should use BUILD_<library_name> CMake flags (for example, BUILD_PNG for the libpng library).
   7:  
   8: ------------------------------------------------------------------------------------
   9: libjpeg 8d (8.4)  -   The Independent JPEG Group's JPEG software.
  10:                       Copyright (C) 1991-2012, Thomas G. Lane, Guido Vollbeding.
  11:                       See IGJ home page http://www.ijg.org
  12:                       for details and links to the source code
  13:  
  14:                       HAVE_JPEG preprocessor flag must be set to make highgui use libjpeg.
  15:                       On UNIX systems configure script takes care of it.
  16: ------------------------------------------------------------------------------------
  17: libpng 1.5.12     -   Portable Network Graphics library.
  18:                       Copyright (c) 2004, 2006-2012 Glenn Randers-Pehrson.
  19:                       See libpng home page http://www.libpng.org
  20:                       for details and links to the source code
  21:  
  22:                       HAVE_PNG preprocessor flag must be set to make highgui use libpng.
  23:                       On UNIX systems configure script takes care of it.
  24: ------------------------------------------------------------------------------------
  25: libtiff 4.0.2     -   Tag Image File Format (TIFF) Software
  26:                       Copyright (c) 1988-1997 Sam Leffler
  27:                       Copyright (c) 1991-1997 Silicon Graphics, Inc.
  28:                       See libtiff home page http://www.remotesensing.org/libtiff/
  29:                       for details and links to the source code
  30:  
  31:                       HAVE_TIFF preprocessor flag must be set to make highgui use libtiff.
  32:                       On UNIX systems configure script takes care of it.
  33:                       In this build support for ZIP (LZ77 compression) is turned on.
  34: ------------------------------------------------------------------------------------
  35: zlib 1.2.7        -   General purpose LZ77 compression library
  36:                       Copyright (C) 1995-2012 Jean-loup Gailly and Mark Adler.
  37:                       See zlib home page http://www.zlib.net
  38:                       for details and links to the source code
  39:  
  40:                       No preprocessor definition is needed to make highgui use this library -
  41:                       it is included automatically if either libpng or libtiff are used.
  42: ------------------------------------------------------------------------------------
  43: jasper-1.900.1    -   JasPer is a collection of software
  44:                       (i.e., a library and application programs) for the coding
  45:                       and manipulation of images.  This software can handle image data in a
  46:                       variety of formats.  One such format supported by JasPer is the JPEG-2000
  47:                       format defined in ISO/IEC 15444-1.
  48:  
  49:                       Copyright (c) 1999-2000 Image Power, Inc.
  50:                       Copyright (c) 1999-2000 The University of British Columbia
  51:                       Copyright (c) 2001-2003 Michael David Adams
  52:  
  53:                       The JasPer license can be found in src/libjasper.
  54:  
  55:                       OpenCV on Windows uses pre-built libjasper library
  56:                       (lib/libjasper*). To get the latest source code,
  57:                       please, visit the project homepage:
  58:                       http://www.ece.uvic.ca/~mdadams/jasper/
  59: ------------------------------------------------------------------------------------
  60: openexr-1.7.1     -   OpenEXR is a high dynamic-range (HDR) image file format developed
  61:                       by Industrial Light & Magic for use in computer imaging applications.
  62:  
  63:                       Copyright (c) 2006, Industrial Light & Magic, a division of Lucasfilm
  64:                       Entertainment Company Ltd. Portions contributed and copyright held by
  65:                       others as indicated. All rights reserved.
  66:  
  67:                       The project homepage: http://www.openexr.com
  68: ------------------------------------------------------------------------------------
  69: ffmpeg-0.8.0      -   FFmpeg is a complete, cross-platform solution to record,
  70:                       convert and stream audio and video. It includes libavcodec -
  71:                       the leading audio/video codec library, and also libavformat, libavutils and
  72:                       other helper libraries that are used by OpenCV (in highgui module) to
  73:                       read and write video files.
  74:  
  75:                       The project homepage: http://ffmpeg.org/
  76: ------------------------------------------------------------------------------------

C:\OpenCV-2.4.7\opencv\sources\apps

應用於人臉/非人臉(背景)訓練與偵測

image

C:\OpenCV-2.4.7\opencv\sources\cmake

包含許多make files, 有Apache Ant, Android, CUDA, OpenCL, OpenNI, Python, TBB等特定targets移植

image

C:\OpenCV-2.4.7\opencv\sources\data

分類器的參數檔案

image

C:\OpenCV-2.4.7\opencv\sources\data\readme.txt

   1: This folder contains various data that is used by cv libraries and/or demo applications.
   2: ----------------------------------------------------------------------------------------
   3:  
   4: haarcascades - the folder contains trained classifiers for detecting objects
   5:                of a particular type, e.g. faces (frontal, profile), pedestrians etc.
   6:                Some of the classifiers have a special license - please,
   7:                look into the files for details.

C:\OpenCV-2.4.7\opencv\sources\doc\tutorials\*.rst許多純文字的教學電子檔, 包含領域如下:

image

C:\OpenCV-2.4.7\opencv\sources\doc\tutorials\tutorial.rst

   1: ################
   2: OpenCV Tutorials
   3: ################
   4:  
   5: The following links describe a set of basic OpenCV  tutorials. All the source code mentioned here is provide as part of the OpenCV regular releases, so check before you start copy & pasting the code. The list of tutorials below is automatically generated from reST files located in our GIT repository.
   6:  
   7: As always, we would be happy to hear your comments and receive your contributions on any tutorial.
   8:  
   9: *  :ref:`Table-Of-Content-Introduction`
  10:  
  11:    .. tabularcolumns:: m{100pt} m{300pt}
  12:    .. cssclass:: toctableopencv
  13:  
  14:    =========== =======================================================
  15:    |Introduct| You will learn how to setup OpenCV on your computer!
  16:  
  17:    =========== =======================================================
  18:  
  19:    .. |Introduct| image:: images/introduction.jpg
  20:                  :height: 80pt
  21:                  :width:  80pt
  22:                  :alt: Introduction Icon
  23:  
  24: *  :ref:`Table-Of-Content-Core`
  25:  
  26:    .. tabularcolumns:: m{100pt} m{300pt}
  27:    .. cssclass:: toctableopencv
  28:  
  29:    =========== =======================================================
  30:    |Core|      Here you will learn the about the basic building blocks of the library. A must read and know for     understanding how to manipulate the images on a pixel level.
  31:  
  32:    =========== =======================================================
  33:  
  34:    .. |Core| image:: images/core.jpg
  35:                  :height: 80pt
  36:                  :width:  80pt
  37:                  :alt: core Icon
  38:  
  39: *  :ref:`Table-Of-Content-ImgProc`
  40:  
  41:    .. tabularcolumns:: m{100pt} m{300pt}
  42:    .. cssclass:: toctableopencv
  43:  
  44:    =========== =======================================================
  45:    |ImgProc|   In this section you will learn about the image processing (manipulation) functions inside OpenCV.
  46:  
  47:    =========== =======================================================
  48:  
  49:    .. |ImgProc| image:: images/imgproc.jpg
  50:                  :height: 80pt
  51:                  :width:  80pt
  52:                  :alt: imgproc Icon
  53:  
  54: *  :ref:`Table-Of-Content-HighGui`
  55:  
  56:    .. tabularcolumns:: m{100pt} m{300pt}
  57:    .. cssclass:: toctableopencv
  58:  
  59:    =========== =======================================================
  60:    |HighGui|   This section contains valuable tutorials about how to read/save your image/video files and how to use the built-in graphical user interface of the library.
  61:  
  62:    =========== =======================================================
  63:  
  64:    .. |HighGui| image:: images/highgui.jpg
  65:                  :height: 80pt
  66:                  :width:  80pt
  67:                  :alt: highgui Icon
  68:  
  69: *  :ref:`Table-Of-Content-Calib3D`
  70:  
  71:    .. tabularcolumns:: m{100pt} m{300pt}
  72:    .. cssclass:: toctableopencv
  73:  
  74:    =========== =======================================================
  75:    |Calib3D|   Although we got most of our images in a 2D format they do come from a 3D world. Here you will learn how to find out from the 2D images information about the 3D world.
  76:  
  77:    =========== =======================================================
  78:  
  79:    .. |Calib3D| image:: images/calib3d.jpg
  80:                  :height: 80pt
  81:                  :width:  80pt
  82:                  :alt: calib3d Icon
  83:  
  84: *  :ref:`Table-Of-Content-Feature2D`
  85:  
  86:    .. tabularcolumns:: m{100pt} m{300pt}
  87:    .. cssclass:: toctableopencv
  88:  
  89:    =========== =======================================================
  90:    |Featur2D|  Learn about how to use the feature points  detectors, descriptors and matching framework found inside OpenCV.
  91:  
  92:    =========== =======================================================
  93:  
  94:    .. |Featur2D| image:: images/feature2D.jpg
  95:                  :height: 80pt
  96:                  :width:  80pt
  97:                  :alt: feature2D Icon
  98:  
  99: *  :ref:`Table-Of-Content-Video`
 100:  
 101:    .. tabularcolumns:: m{100pt} m{300pt}
 102:    .. cssclass:: toctableopencv
 103:  
 104:    =========== =======================================================
 105:    |Video|     Look here in order to find use on your video stream algoritms like: motion extraction, feature tracking and foreground extractions.
 106:  
 107:    =========== =======================================================
 108:  
 109:    .. |Video| image:: images/video.jpg
 110:                  :height: 80pt
 111:                  :width:  80pt
 112:                  :alt: video Icon
 113:  
 114: *  :ref:`Table-Of-Content-ObjDetect`
 115:  
 116:    .. tabularcolumns:: m{100pt} m{300pt}
 117:    .. cssclass:: toctableopencv
 118:  
 119:    =========== =======================================================
 120:    |ObjDetect| Ever wondered how your digital camera detects peoples and faces? Look here to find out!
 121:  
 122:    =========== =======================================================
 123:  
 124:    .. |ObjDetect| image:: images/objdetect.jpg
 125:                  :height: 80pt
 126:                  :width:  80pt
 127:                  :alt: objdetect Icon
 128:  
 129: *  :ref:`Table-Of-Content-Ml`
 130:  
 131:    .. tabularcolumns:: m{100pt} m{300pt}
 132:    .. cssclass:: toctableopencv
 133:  
 134:    =========== =======================================================
 135:    |ml|        Use the powerfull machine learning classes for statistical classification, regression and clustering of data.
 136:  
 137:    =========== =======================================================
 138:  
 139:    .. |ml| image:: images/ml.jpg
 140:                  :height: 80pt
 141:                  :width:  80pt
 142:                  :alt: ml Icon
 143:  
 144: *  :ref:`Table-Of-Content-GPU`
 145:  
 146:    .. tabularcolumns:: m{100pt} m{300pt}
 147:    .. cssclass:: toctableopencv
 148:  
 149:    =========== =======================================================
 150:    |GPU|       Squeeze out every little computation power from your system by using the power of your video card to run the OpenCV algorithms.
 151:  
 152:    =========== =======================================================
 153:  
 154:    .. |GPU| image:: images/gpu.jpg
 155:                  :height: 80pt
 156:                  :width:  80pt
 157:                  :alt: gpu icon
 158:  
 159: *  :ref:`Table-Of-Content-Contrib`
 160:  
 161:    .. tabularcolumns:: m{100pt} m{300pt}
 162:    .. cssclass:: toctableopencv
 163:  
 164:    =========== =======================================================
 165:    |Contrib|       Discover additional contribution to OpenCV.
 166:  
 167:    =========== =======================================================
 168:  
 169:    .. |Contrib| image:: images/retina.jpg
 170:                  :height: 80pt
 171:                  :width:  80pt
 172:                  :alt: gpu icon
 173:  
 174: *  :ref:`Table-Of-Content-iOS`
 175:  
 176:    .. tabularcolumns:: m{100pt} m{300pt}
 177:    .. cssclass:: toctableopencv
 178:  
 179:    =========== =======================================================
 180:       |iOS|     Run OpenCV and your vision apps on an iDevice
 181:  
 182:    =========== =======================================================
 183:  
 184:       .. |iOS| image:: images/opencv_ios.png
 185:                     :height: 80pt
 186:                     :width:  80pt
 187:                     :alt: gpu icon
 188:  
 189: *  :ref:`Table-Of-Content-General`
 190:  
 191:       .. tabularcolumns:: m{100pt} m{300pt}
 192:       .. cssclass:: toctableopencv
 193:  
 194:    =========== =======================================================
 195:    |General|   These tutorials are the bottom of the iceberg as they link together multiple of the modules presented above in order to solve complex problems.
 196:  
 197:    =========== =======================================================
 198:  
 199:    .. |General| image:: images/general.jpg
 200:                  :height: 80pt
 201:                  :width:  80pt
 202:                  :alt: General Icon
 203:  
 204: .. raw:: latex
 205:  
 206:    \pagebreak
 207:  
 208: .. toctree::
 209:    :maxdepth: 2
 210:    :hidden:
 211:  
 212:    introduction/table_of_content_introduction/table_of_content_introduction
 213:    core/table_of_content_core/table_of_content_core
 214:    imgproc/table_of_content_imgproc/table_of_content_imgproc
 215:    highgui/table_of_content_highgui/table_of_content_highgui
 216:    calib3d/table_of_content_calib3d/table_of_content_calib3d
 217:    features2d/table_of_content_features2d/table_of_content_features2d
 218:    video/table_of_content_video/table_of_content_video
 219:    objdetect/table_of_content_objdetect/table_of_content_objdetect
 220:    ml/table_of_content_ml/table_of_content_ml
 221:    gpu/table_of_content_gpu/table_of_content_gpu
 222:    contrib/table_of_content_contrib/table_of_content_contrib
 223:    ios/table_of_content_ios/table_of_content_ios
 224:    general/table_of_content_general/table_of_content_general

C:\OpenCV-2.4.7\opencv\sources\include

包含OpenCV 1.x版和OpenCV2.x版的標頭檔

image

C:\OpenCV-2.4.7\opencv\sources\modules\

原始程式碼, 依照分類存放於不同目錄夾

image

C:\OpenCV-2.4.7\opencv\sources\platforms

跨平台移植指南

image

C:\OpenCV-2.4.7\opencv\sources\samples

不同程式語言或平台的範例程式!!!

image

==============================分隔線========================================

安裝CMake

Windows (Win32 Installer)
cmake-2.8.12.1-win32-x86.exe

image

image

image

image

image

正在安裝…

image

image

==============================分隔線========================================

在C:\OpenCV-2.4.7\opencv\build\目錄夾下創建一個vs2010資料夾

image

新增次目錄win64和x86

image

開啟CMake

image

設定路徑:包含source code的路徑和build產生檔案(輸出)的路徑

image

按下configure按鈕,請選擇Visual Studio 10 Win64專案

image

BUILD目錄

BUILD->BUILD_EXAMPLES打勾

BUILD->BUILD_TBB打勾

WITH目錄

WITH->WITH_IPP打勾

WITH->WITH_OPENGL打勾

WITH->WITH_TBB打勾

按下configure按鈕

設定TBB_INCLUDE_DIRS

image

按下configure按鈕

image

按下configure按鈕,這次沒有出現粉紅色warning提示就可以按下Generate按鈕

image

Configuring done,執行Generate中

image

看到Generating done就可以關閉CMake

image

==============================分隔線========================================

開啟OpenCV方案(solution格式), 需費時幾分鐘時間初始化, 請耐心等待囉…

image

載入中…

image

剖析方案中…

image

掃描其他檔案中…

image

選擇Releasex64,接著按下三角形按鈕, 開始編譯

image

切換至目錄夾C:\OpenCV-2.4.6\opencv\vs2010\win64\bin\Release

如果編譯成功會陸續看到產生*.dll和*.pdb檔案(參考修改日期時間)

image

編譯log: logOpenCV247VS2010.txt

編譯操作展示(win64版本):

2013 11 20 Install OpenCV2 4 7 part1

2013 11 20 Install OpenCV2 4 7 part2

=========================================================================

到C:\OpenCV-2.4.7\opencv\build\vs2010\win64目錄下, 複製bin目錄夾

image

貼至下列路徑C:\OpenCV-2.4.7\opencv\, 並將bin\*.pdb檔案刪除

image

加入C:\OpenCV-2.4.7\opencv\bin   系統路徑(系統變數path)

image

image

到C:\OpenCV-2.4.7\opencv\build\vs2010\win64\lib\Release\目錄下所有檔複製

image

貼至下列路徑C:\OpenCV-2.4.7\opencv\lib

image

同樣, 複製C:\OpenCV-2.4.7\opencv\build\下的include目錄夾至C:\OpenCV-2.4.7\opencv\目錄下

image

所以完成上述步驟, C:\OpenCV-2.4.7\opencv\應該可以看到三個重要目錄夾bin, include 和 lib(如上圖所示)

編譯操作(x86版本)展示:

2013 11 20 Install OpenCV2 4 7_x86 part1

2013 11 20 Install OpenCV2 4 7_x86 part2

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 me1237guy 的頭像
    me1237guy

    天天向上

    me1237guy 發表在 痞客邦 留言(1) 人氣()