3
我一直在閱讀有關openCV最近和它的cv::Mat
數據結構。在文檔中,作者不斷提及多通道陣列和多通道矩陣。有人能給我一個這兩個的定義,什麼是「通道」?我試圖找到谷歌,但沒有發現類似的東西。多通道矩陣/陣列
我一直在閱讀有關openCV最近和它的cv::Mat
數據結構。在文檔中,作者不斷提及多通道陣列和多通道矩陣。有人能給我一個這兩個的定義,什麼是「通道」?我試圖找到谷歌,但沒有發現類似的東西。多通道矩陣/陣列
最基本的例子是標準圖像。它有一個寬度(cols
),一個高度(rows
)和3個顏色通道。
Mat myImg = imread("color_picture.jpg");
Vec3b pixel = myImg.at<Vec3b>(y, x);
在這種情況下,myImg
將是一個CV_8UC3
- 8位無符號整數3頻道。
我更喜歡用模板類,因爲我覺得它更清楚:
Mat_<Vec3b> myImg = imread("color_picture.jpg");
// Or, Mat3b myImg = ...
Vec3b pixel = myImg(y, x);
然後,像素是藍色,綠色,紅色:
uchar blue = pixel[0];
如果你有你有一個二維矩陣寬*高ELEMENTS。如果每個元素都是單個值,那麼您只有一個通道矩陣。如果每個元素具有多個值,則矩陣具有多個通道。單通道矩陣的示例是灰度圖像(每個像素1個強度值),例如多通道矩陣是RGB圖像(每個像素是3個值) – Micka