1. 程式人生 > >opencv影象通道 8UC1?

opencv影象通道 8UC1?

CV_<bit_depth>(S|U|F)C<number_of_channels>

  1. --bit_depth---位元數---代表8bite,16bites,32bites,64bites---比如說你現在建立了一個儲存--灰度圖片的Mat物件,這個影象的大小為寬100,高100,那麼,現在這張灰度圖片中有10000個畫素點,它每一個畫素點在記憶體空間所佔的空間大小是8bite,8位--所以它對應的就是CV_8

  2. --S|U|F--S--代表---signed int---有符號整形

  3. U--代表--unsigned int--無符號整形

  4. F--代表--float-------單精度浮點型

  5. --C<number_of_channels>----代表---一張圖片的通道數,比如:

  6. number_of_channels=1--灰度圖片--grayImg---是--單通道影象

  7. number_of_channels=2--RGB彩色影象------是--3通道影象

  8. number_of_channels=3--帶Alph通道的RGB影象--是--4通道影象

例如

//載入原始影象lena.jpg

Mat srcImg=imread("lena.jpg",1);

//建立一個和原始影象srcImg高和寬一致的8位無符號單通道的灰度圖片容器,並且初始化圖片為白色255

1、Mat grayImg(srcImg.rows,srcImg.cols,CV_8UC1,Scalar(255)); 顯示為白色

imshow("原始圖",srcImg);
   imshow("灰度圖",grayImg);

2、Mat grayImg(srcImg.rows,srcImg.cols,CV_8UC1,Scalar(0));

Mat grayImg(srcImg.rows,srcImg.cols,CV_8UC3,Scalar(0));

顯示都為黑色

3、Mat grayImg(srcImg.rows,srcImg.cols,CV_8UC3,Scalar(255)
); 顯示為藍色