總結系列_14(OpenCV2.4.3的新特征以及安裝方法)


 

  OpenCV2.4.3的新特征:

  在經過4個月的等待后,OpenCV又發布了新版本了,此時的最新版本為OpenCV2.4.3,下載地址為:OpenCV-2.4.3.exe

  下面來看看opencv2.4.3有了哪些新變化,主要是參考網頁http://code.opencv.org/projects/opencv/wiki/ChangeLog上面介紹的,稍加翻譯了一些,因為對有些專有名詞不熟,所以可能翻譯得不妥。這次版本的變化內容有不少是來源於google summer code(GSoC),那個項目貢獻了不少code。

 

   

  多線程方面,后台增加許多通用的多線程並行處理算法,比如說基於交叉平台的TBB和OpenMP,基於蘋果平台的Grand Central Dispatch,微軟的Concurrency computing等。因為OpenCV內嵌了這些后台算法,所以用戶甚至都不需要裝這些后台庫。

 

  

  在android方面,提高了OpenCV的管理,增加了新的Java框架 例程,android上能夠更好地支持攝像頭,具體的細節改變參考:Android Release Notes

  

  

  在ios系統方面,opencv2.framework完全支持ios6和iphone5了。ios上安裝opencv的教程可以參考:

  http://docs.opencv.org/doc/tutorials/ios/table_of_content_ios/table_of_content_ios.html.

   

  

  在Python方面,增加了一些實例,包括ASIFT,手寫字識別,運動去噪和Amazon PiCloud的使用。其使用參考:

  https://github.com/Itseez/opencv/tree/master/samples/python2

 

  

  在人臉檢測方面,由於GSoC的貢獻,增加了2個側臉的級聯分類器文件,可以參考網頁:https://github.com/Itseez/opencv/tree/master/data/lbpcascades

 

  

  圖像去噪方面,完善了non-local means去噪算法,雖然該算法不是實時的,但是效果相當不錯。具體的可以參考網頁:

  http://docs.opencv.org/trunk/modules/photo/doc/denoising.html

 

  

  在光流方面,增加了“簡單流”光流算法,可以參考網頁:https://github.com/Itseez/opencv/tree/master/samples/cpp/simpleflow_demo.cpp.

 

  

  CUDA方面,增加了不少GPU功能模塊。

  驅動層完全對用戶開放,用戶現在可以使用opencv來寫CUDA的驅動了;在級聯分類器中支持LBP級聯;加入了快速非局部均值圖像去噪算法;引入了更快的積分算法;引入了霍夫圓,霍夫直線和廣義霍夫變換;引入了雙邊濾波器;廣義填水法填充連通域標注;前景背景分離算法,GMM,ViBe, GMG算法的加入;HOG類中增加了信任計算功能。

 

  

  OpenCL方面,加入了算術運算,濾波,常見的幾何圖形變換,光流,級聯分類器,目前這些算法只能在GPU上跑。

   

  

  在OpenCV2.4.2基礎上,修補了大概130個bug,這一點比較令人興奮,bug又少了這么多。

 

  

  OpenCV現在社會推動很廣,已經加入了Github,網址為:http://github.com/itseez/opencv. 在該網頁上可以下載最新版本和提交各種問題。

  

  個人感受:

  從上面的趨勢可以看出,OpenCV正在朝向多平台,多核,多編程語言邁進,並且不斷的引入各種新的計算機視覺算法。期待2013年OpenCV2.5.0的問世!

 

 

  OpenCV2.4.3的安裝方法:

  下面來講講怎么安裝OpenCV2.4.3,由於本人最近用Qt比較多,所以就講下怎么在Qt下安裝OpenCV2.4.3。其實VS和Qt下是一樣的,步驟后面的部分可以參考本人前面的博文: 總結系列_7(opencv2.4.2+vs2010安裝簡介) 雖然那是針對2.4.2的,但是基本流程是一樣的。

  安裝環境win32XP+opencv2.4.2+QtCreator2.5.1(方法同樣適用於微軟Vs開放的用戶)

  其實opencv2.4.3比opencv2.4.2配置還要簡單,因為少了TBB部分配置部分。

  步驟1 下載OpenCV-2.4.3.exe

  步驟2 雙擊exe解壓到自己想安裝的目錄,我這來是解壓完后的目錄為:

      C:\Qt\opencv

  步驟3 配置環境變量,在系統環境變量配置下面的環境變量,經過測試,只需要在系統變量下配置,並不需要在用戶變量下也配置,另外與opencv2.4.2不同的是,此時因為2.4.3版本的opencv內嵌了TBB的功能,所以取消了TBB直接安裝,這樣就不需要再配置TBB環境變量了。

              變量名:                   變量值:

               PATH:              C:\Program Files\opencv2.4.2\build\x86\vc10\bin

  步驟4打開QtCreator,新建一個純C++工程,且在工程文件夾下放入一張名為opencv.png的圖片(圖片名稱對應程序中的代碼即可),主函數代碼改為如下:

#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>

using namespace cv;
using namespace std;

int main()
{
    namedWindow( "show_image", WINDOW_AUTOSIZE );
    Mat src = imread( "opencv.png" );
    while(1)
    {
        imshow( "show_image", src );
        char c = waitKey(0);
        if( c == 27 )
            return 0;
    }
    return 0;
}

  步驟5雙擊QtCreator工程右側的*.pro文件,輸入下面的內容:

INCLUDEPATH +=  C:\Qt\opencv\build\include \

                C:\Qt\opencv\build\include\opencv \

                C:\Qt\opencv\build\include\opencv2

 

LIBS += C:\Qt\opencv\build\x86\vc10\lib\opencv_core243d.lib    \

        C:\Qt\opencv\build\x86\vc10\lib\opencv_highgui243d.lib  \

        C:\Qt\opencv\build\x86\vc10\lib\opencv_imgproc243d.lib  

  步驟6運行程序,顯示結果如下:

  

 

  提示:  如果在還沒有配置好opencv環境變量的情況下,就打開了QtCreator工程,同時編好了步驟4的代碼,然后才開始配置opencv的環境變量,則這時候隨便怎么運行工程,就是沒有任何結果,單步調試后發現,直接進入主函數就出現錯誤This inferior stopped because it triggered an exception.如下所示:

  

   這時候只需要把QtCreator軟件關掉重新打開即可,因為它還沒有識別到配置好的opencv。

 

  參考文獻:

     http://code.opencv.org/projects/opencv/wiki/ChangeLog

     總結系列_7(opencv2.4.2+vs2010安裝簡介)

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM