目錄
1.點的表示:point_ point3_
2.尺寸的表示:size_
3.vec類:描述多通道mat的畫素
4.matx:已知尺寸的小mat模板類
5.顏色類scalar:
6.rect:矩形表示類
7.range類
8.cv::ptr指標模板
opencv中point_的定義(point3_基本相同):
opencv中size_的定義:// 定義
typedef point_point2i;
typedef point_point2l;
typedef point_point2f;
typedef point_point2d;
typedef point2i point;
typedef point3_point3i;
typedef point3_point3f;
typedef point3_point3d;
//成員函式
//點積(數量積) x1*x1+y1*y2
_tp dot(const point_& pt) const;
//雙精度點積
double ddot(const point_& pt) const;
//叉乘(向量積)x1*y2-y1*x2
double cross(const point_& pt) const;
//檢查該點是否在指定矩形內
bool inside(const rect_<_tp>& r) const;
//定義
typedef size_size2i;
typedef size_size2l;
typedef size_size2f;
typedef size_size2d;
typedef size2i size;
//成員函式
//面積(width*height)
_tp area() const;
//面積是否為0
bool empty() const;
typedef vecvec2i;
typedef vecvec3i;
typedef vecvec4i;
typedef vecvec6i;
typedef vecvec8i;
typedef vecvec2f;
typedef vecvec3f;
typedef vecvec4f;
typedef vecvec6f;
typedef vecvec2d;
typedef vecvec3d;
typedef vecvec4d;
typedef vecvec6d;
//cv::mat img(10, 10, cv_8uc3,scalar(255,255,255));
uchar pixel = img.at(9, 9)[0];
含有4個元素的陣列,在opencv中被用來傳遞畫素值,rgb三個畫素值,如用不到第四個,則不需要寫出來。typedef matxmatx12f;
typedef matxmatx12d;
typedef matxmatx13f;
typedef matxmatx13d;
typedef matxmatx14f;
typedef matxmatx14d;
typedef matxmatx16f;
typedef matxmatx16d;
typedef matxmatx21f;
typedef matxmatx21d;
typedef matxmatx31f;
typedef matxmatx31d;
typedef matxmatx41f;
typedef matxmatx41d;
typedef matxmatx61f;
typedef matxmatx61d;
typedef matxmatx22f;
typedef matxmatx22d;
typedef matxmatx23f;
typedef matxmatx23d;
typedef matxmatx32f;
typedef matxmatx32d;
typedef matxmatx33f;
typedef matxmatx33d;
typedef matxmatx34f;
typedef matxmatx34d;
typedef matxmatx43f;
typedef matxmatx43d;
typedef matxmatx44f;
typedef matxmatx44d;
typedef matxmatx66f;
typedef matxmatx66d;
templateclass scalar_ : public vec<_tp, 4>
typedef scalar_scalar;
多用於指定mat中的連續的多行或列,range(a,b) 表示範圍從a到b的前閉後開的區間[a,b)。//定義
typedef rect_rect2i;
typedef rect_rect2f;
typedef rect_rect2d;
typedef rect2i rect;
//成員函式
//返回左上角座標
point_<_tp> tl() const;
//返回右下角座標
point_<_tp> br() const;
//返回矩形框的寬與高
size_<_tp> size() const;
//面積
_tp area() const;
//面積是否為0
bool empty() const;
//判斷點是否在矩形內
bool contains(const point_<_tp>& pt) const;
cv::ptr與c++ 中智慧型指標share_ptr類似,與new delete相比,智慧型指標管理動態記憶體最大的優點就是可以自動釋放記憶體,避免記憶體洩漏。智慧型指標也是模板,因此建立乙個智慧型指標時,必須提供額外的資訊—指標指向的型別。與vector模板一樣,在尖括號內給出型別,如://定義
class cv_exports range
;//應用舉例:
cv::mat img(10, 10, cv_8uc3,scalar(255));
//dst提取img的第1列到第4列,,mat(行,列)
cv::mat dst = img(range::all(), range(1,5));
share_ptrstr1;
//opencv中定義物件時,通常使用cv::ptr。
ptrimporter;
ptrorb = orb::create();
OpenCV基本資料型別
point cpp view plain copy typedef point int point2i typedef point2i point typedef point float point2f typedef point double point2d point3 cpp view pla...
OpenCV學習筆記 基本資料型別
1.彩色影象通常有紅 綠 藍三個構成成分,但opencv以逆序,即藍 綠 紅來儲存著三個分量,還可以使用第四個透明度 alpha 通道。2.使用img.channels 獲取一幅img影象的通道數。3.使用img.depth 獲取衣服img影象深度。4.使用函式convertto講義中影象深度轉換為...
基本資料型別
列舉 定義列舉型別 enum season 定義兩個列舉變數 enum season mylove yourlove 為兩個列舉變數賦值 yourlove fall mylove winter 把列舉值當成無符號整數執行輸出 nslog fall 的值 u fall 3 nslog winter 的...