opencv的資料結構定義於types_c.h中,下面對其一一介紹:
a. cvrect 矩形類
typedef
struct cvrect
cvrect;
x和y表示矩形的起始座標,而width和height則表示矩形的寬和高;其建構函式為:
cv_inline cvrect cvrect( int x, int y, int width, int height )
此外還有iplroi也類似於矩形類;
b. cvpoint 點類
typedef
struct cvpoint
cvpoint;
cv_inline cvpoint cvpoint( int x, int y )
此外還有表示浮點型的點:cvpoint2d32f、cvpoint2d64f;三維點cvpoint3d32f、cvpoint2d64f;
c. 尺寸類
typedef
struct cvsize
cvsize;
同樣有建構函式 cv_inline cvsize cvsize( int width, int height ),和更高精度的尺寸類cvsize2d32f;
d. 顏色類
typedef
struct cvscalar
cvscalar;
表示影象的b(blue)、g(green)、r(red)、alpha - 影象的透明度;建構函式有:
cv_inline cvscalar cvscalar( double val0, double val1 cv_default(0),
double val2 cv_default(0), double val3 cv_default(0))
cv_inline cvscalar cvrealscalar( double val0 )
cv_inline cvscalar cvscalarall( double val0123 )
e. 矩陣類
typedef struct cvmat
data; // 資料位址
#ifdef __cplusplus
union
;union
;#else
int rows;
int cols;
#endif
}cvmat;
1.大多數情況下,step等於 width * 單個資料的長度,但是也存在例外情況
2.ptr、s、i、fl和db表示的是同乙個位址。cvmat這樣進行定義的目的是為了更好的運算元據;
3.mat a = b;這時只進行淺拷貝,如果需要用到深拷貝,則需要使用cvclonemat
int main()
; cvmat ma=cvmat(3, 4, cv_64fc1, aa);
cvmat mb = ma;
cvmat * mc = cvclonemat(&ma);
printf("address of aa = %d\naddress of ma = %d\naddress of mb = %d\naddress of mc = %d\n",
(int)aa, (int)ma.data.ptr, (int)mb.data.ptr, (int)mc->data.ptr);
cvreleasemat(&mc);
}
得到的結果是:
address of aa = 1964272
address of ma = 1964272
address of mb = 1964272
address of mc = 3658064
f. iplimage影象類
typedef
struct _iplimage
iplimage;
1.roi是影象的感興趣的區域,當進行顯示時,只會顯示感興越區域;
2.cvcopy會拷貝影象的感興趣區域,而cvcloneimage則會拷貝所有的值;
openCV2 角點檢測
文章目錄 一 harris角點檢測基本理論 二 opencv 實現 三 改進的harris角點檢測 四 fast角點檢測 五 參考文獻 六 附錄 資料和原始碼 一 harris角點檢測基本理論 要講清楚東西太多,附錄提供文件詳細說明 1.1 簡略表達 角點 最直觀的印象就是在水平 豎直兩個方向上變化...
opencv2中尋找輪廓
最近想嘗試用opencv做專案,發現需要考慮的細節很多,用商業庫用習慣了,有點不適應,慢慢來吧。上網查了查用opencv做連通域運算,發現都是先尋找輪廓,那就先來學習下輪廓。opencv中尋找輪廓的c 函式是 void findcontours inputoutputarray image outp...
Opencv2與opencv1的區別
一 opencv2與opencv1的區別 opencv1.0 版本於2006年面世,主要基於c語言。2009年發布opencv2,主要基於c 此時opencv庫被劃分成多個模組,這些模組被編譯成庫檔案後,位於lib資料夾中。主要有以下模組 版本1的結構見我的這篇blog opencv core 模組...