opencv3 0 beta的一些改變

2021-06-29 02:15:10 字數 1068 閱讀 8529

計畫同github上的opencv結合,然後經常編譯,這樣就可以持續的在源**中加註解,而不需要很在意opencv的版本更新;前期get**和cmake編譯(vs2013)都正常;在除錯過去的project時發現:

a. 部分沒有經過保證性測試的演算法,遷移至opencv_contrib,所以需要將這部分**也get下來,我將其放在opencv\modules下;在進行cmake時,設定opencv_extra_modules_path為此路徑;opencv_contrib內包含常用的sift/surf/face recognition。

b. 在使用eigen face或fisher face進行人臉識別時,為獲取中間的特徵臉,需要使用getmat("eigenvector?");但未在algorithm::類下發現,對比opencv2.4.9後發現,algorithm於此相關的api已經空了!所以如果想獲取特徵臉的display,可以繼續使用opencv2.4.9或深入探尋**;

c. 類使用的方式變遷,如:

ptrdetector = sift::create();

ptrdetector = surf::create();

ptrf2d = orb::create();

。。。

因為經常需要讀取目錄下的影象,然後設定其類別,所以採用dirent.h的方式,在2.4.9版本編譯ok的工程,在opencv3.0則出現---

錯誤4error c2872: 「access_mask」: 不明確的符號c:\program files\windows kits\8.1\include\um\winnt.h90841imagerecognition

鎖定為dirent.h編譯出錯,匆忙之中不知如何作解,所以先使用opencv2.4.9編譯工程;感嘆一下,還好沒有刪掉2.4.9;

但在使用opencv3.0 beta時發現,更方便,**易讀性更好;但bug也挺多;有很多文件沒有完善,例程還是過去的,等待新的版本release!

opencv的一些函式

計算物體的畫素或面積常需要用到計算矩陣中的非零元素個數,opencv中使用countnonzero 函式實現。bitwise and是對二進位制資料進行 與 操作,即對影象 灰度影象或彩色影象均可 每個畫素值進行二進位制 與 操作,1 1 1,1 0 0,0 1 0,0 0 0 bitwise or...

OpenCV一些函式

1.線性混合操作 beta 1.0 alpha addweighted src1 alpha src2 beta 0.0 dst 這是因為 addweighted 進行如下計算 這裡2.掩碼操作 濾波器在影象處理中的應用太廣泛了,因此opencv也有個用到了濾波器掩碼 某些場合也稱作核 的函式。不過...

openCV中的一些函式

把scr的元素與常量value相加放到dst裡。如果mask沒有被設為null,那麼mask中非零元素指定的dst元素值在函式執行後不變。void cvadds const cvarr scr,cvscalar value,cvarr dst,const cvarr mask null 這個 cvs...