1. cvpoint
typedef struct cvpoint
cvpoint;
cvpoint用來描述影象中的畫素點。
2. cvsize
typedef struct
cvsize;
cvsize用來描述影象的尺寸。
3. cvrect
typedef struct cvrect
cvrect;
cvrect用來描述影象的乙個區域。
4. cvscalar
typedef struct cvscalar
cvscalar;
cvscalar用來描述rgba值。
所有的資料型別都有個以其名稱來定義的建構函式,例如:cvsize,它的建構函式位cvsize,只是首字母是小寫的。
5. 矩陣型別cvmat
typedef struct cvmat
data;
#ifdef __cplusplus
union
;union
;#else
int rows;
int cols;
#endif
}cvmat;
cvmat結構成員說明:
type:為矩陣元素的型別,像這種形式:cv_(s|u|f)c,例如:cv_8uc1,表示8位無符號一元組。
step:行長度,包含4位元組對齊的部分。
data:矩陣資料域指標,因為矩陣元素資料型別可以是任何基本的資料型別,所以它這裡採用了個聯合體。
rows:矩陣行數。
cols:矩陣列數。
不要以為矩陣是很複雜的東西,它的資料也是連續儲存的,只不過它有個rows和cols,相當於有兩把尺子,cols這麼多表示一行,總共rows行。
6. iplimage
typedef struct _iplimage
iplimage;
iplimage是通常所說的「影象」進行編碼的基本結構。遵循物件導向設計思想,iplimage由cvmat派生,cvmat由cvarr派生。在函式原型中會經常看到cvarr*,當它出現時,便可以將cvmat*或iplimage*傳遞到程式。
重要成員說明:
width:就是經常說的影象畫素寬度。
height:影象畫素高度。
depth:表示影象畫素型別,可以取如下值:
ipl_depth_8u,ipl_depth_8s, ipl_depth_16s, ipl_depth_32s, ipl_depth_32f和ipl_depth_64f
分別表示8位無符號,8位有符號,16位有符號,32位有符號,32位浮點,64位浮點數。
nchannels:可取值1,2, 3, 4,表示通道數。
origin:有兩種取值,ipl_origin_tl和ipl_origin_bl,分別設定座標原點的位置於影象的左上角和左下角。
widthstep:和矩陣的step引數類似。
imagedata:資料域指標,這是和矩陣最大的不同,矩陣元素資料可以是任何資料型別,而iplimage是unsigned char型別的,表示的是畫素資料。
OpenCV學習之Scalar資料型別
首先看scalar的英文釋義 scalar的意思是標量,標量是什麼意思呢?亦稱 無向量 有些物理量,只具有數值大小,而沒有方向,部分有正負之分。物理學中,標量 或作純量 指在座標變換下保持不變的物理量。用通俗的說法,標量是只有大小,沒有方向的量。首先來看看,scalar在opencv中的定義 sca...
opencv學習 opencv的資料型別 2
cv rect類 矩陣類包含point類的x,y 矩陣左上角 size類的width和height 矩陣大小 預設構造 cv rect r 拷貝構造 cv rect r2 r1 數值初始化 cv rect r x,y,w h 點座標及大小初始化構造 cv rect r p,sz 兩點初始化構造 cv...
OpenCV的資料型別
一般的影象檔案格式使用的是 unsigned 8bits。cvmat矩陣對應的引數型別就是cv 8uc1,cv 8uc2,cv 8uc3等。float 是32位的,對應cvmat資料結構引數就是 cv 32fc1,cv 32fc2,cv 32fc3等。double是64位,對應cvmat資料結構引數...