Mat::Mat() 無參數構造方法
Mat::Mat(int rows, int cols, int type) 創建行數爲rows,類型爲type的圖像。
Mat::Mat(Size size, int type) 創建大小爲size,類型爲type的圖像。
Mat::Mat(int rows, int cols, int type, const Scalar& s) 創建行數爲rows,列數爲cols,類型爲type的圖像,並將所有元素初始化爲s。
Mat::Mat(const Mat& m) 將m賦值給新創建的對象,此處不會對圖像數據進行復制,m和新對象共用圖像數據。
Mat類型造函數中很多都涉及類型type,type可以是CV_8UC1、CV_16SC1......CV_64FC3等。裏面的8U標識8爲無符號整數(0~255),16S表示16位有符號整數(-32768~32767),64位表示64位浮點double類型數據(-DBL_MAX~DBL_MAX,INF,NAN),C後面的數表示通道數,例如C1表示一個通道的圖像,C3表示3個 通道的圖像,以此類推。
Mat類常用函數功能
函數 | 功能 |
Mat::row | 創建一個具有指定了矩陣頭中行數的參數的矩陣 |
Mat::col | 創建一個具有指定了矩陣頭中列數的參數的矩陣 |
Mat::rowRange | 爲指定的行span創建一個新的矩陣頭,可取指定行區間元素 |
Mat::colRange | 爲指定的行span創建一個矩陣頭,可取指定列區間元素 |
Mat::clone | 創建一個數組及其基礎數據的完整副本 |
Mat::copyTo | 把矩陣複製到另一個矩陣中 |
Mat::convertTo | 在縮放或不縮放的情況下轉換爲另一種數據類型 |
Mat::zeros | 返回指定的大小和類型的零數組 |
Mat::ones | 返回一個指定的大小和類型全爲1的數組 |
Mat::channels | 返回矩陣通道的數目 |
Mat::empty |
如果數組有沒有elemens,則返回true |
Mat::at | 返回對指定數組元素的引用 |