單通道和三通道學習理解單通道

2021-07-03 16:35:54 字數 1145 閱讀 4108

單通道: 此通道上值為0-255。 (255為白色,0是黑色) 只能表示灰度,不能表示彩色。

三通道,在bgr (255,255,255為白色, 0,0,0是黑色 )  可以表示彩色, 灰度也是彩色的一種。

cv::imread函式。

screen是一張彩色圖:  cv::mat mat = cv::imread("/root/desktop/photos/screen.png"); mat是三通道的,mat可以表示彩色。

screen是一張彩色圖    cv::mat mat = cv::imread("/root/desktop/photos/screen.png",cv_load_image_grayscale); mat是單通道的,mat只能表示灰色。

screen是一張灰色圖:  cv::mat mat = cv::imread("/root/desktop/photos/screen.png",cv_load_image_grayscale);  mat是單通道,mat只能表示灰色。

screen是一張灰色圖:  cv::mat mat = cv::imread("/root/desktop/photos/screen.png"); mat是三通道,mat可以表示彩色。雖然顯示出來是灰色,但是也是由bgr表示出來的。

單通道與三通道之間的轉換:

1. 上面的imread其實也可以看作是一種轉換。。

接下來這兩個方法,還沒實踐過,先記錄下來,只作參考:

2.把單通道影象轉成三通道影象。方法如下:

[cpp] view plaincopyprint?

iplimage* cannyimg = cvcreateimage(cvgetsize(gray_img),ipl_depth_8u,1);//cannyimag是單通道圖 

iplimage* canny_img = cvcreateimage(cvsize(cannyimg->width,cannyimg->height), ipl_depth_8u, 3);//canny_imag是3通道圖 

cvcvtcolor(cannyimg, canny_img, cv_gray2bgr);//進行變換 

3.split 分割通道

merge 合併通道。

cv::cvtcolor  顏色空間轉換,估摸這個是重點,要用到再好好研究,現在記錄在此。

OpenCV 單通道三通道理解

單通道 此通道上值為0 255。255為白色,0是黑色 只能表示灰度,不能表示彩色。三通道,在bgr 255,255,255為白色,0,0,0是黑色 可以表示彩色,灰度也是彩色的一種。cv imread函式。screen是一張彩色圖 cv mat mat cv imread root desktop...

單通道和多通道卷積

卷積之後的通道數只是取決於卷積核的數目,和卷積核的channel無關,卷積核的channel是和輸入的channel保持一致的。對於單通道影象,若利用10個卷積核進行卷積計算,可以得到10個特徵圖 若輸入為多通道影象,則輸出特徵圖的個數依然是卷積核的個數 10個 1.單通道多個卷積核卷積計算 乙個卷...

關於單通道轉三通道一些問題

源影象的格式時 單通道 1280 712,輸出影象的格式位三通到 1280 3.源影象每一行的位元組數時1280個 因為1280個畫素點 我想問下三通到每一行的位元組數是不是1280 3 如果是的話 程式中 源影象的第一行畫素值賦給三通到1280個值後 輸出影象的部長我用的是源影象img imgst...