天天看點

imread 第二個參數 詳解(附帶各常量對應的數值)

在網上找了很多資料,都沒關于imread第二個常量對應的數值,于是結合各文檔最終整理如下:

例子:cv::Mat src_img = cv::imread("test.png", CV_LOAD_IMAGE_ANYDEPTH | CV_LOAD_IMAGE_ANYCOLOR);      
/*第二個參數
   * -1 8深度 原通道
   * 0  8深度 1通道
   * 1 8深度 3通道
   * 2 原深度 1通道
   * 4 原深度 3通道
   * CV_LOAD_IMAGE_ANYDEPTH 傳回圖像的深度不變 對應 2
   * - 如果設定,當輸入具有相應深度時傳回16位/32位圖像,否則将其轉換為8位。
   *
   * CV_LOAD_IMAGE_COLOR 對應  1
   * - 如果設定,則始終将圖像轉換為彩色圖像
   *
   * CV_LOAD_IMAGE_GRAYSCALE 對應 0
   * - 如果設定,則始終将圖像轉換為灰階圖像,位深=8bit 通道數=1(顔色變灰)
   *
   *CV_LOAD_IMAGE_UNCHANGED 對應 -1
   * – 在每個通道中,每個像素的位深為8 bit,通道數(顔色)保持不變
   *
   *CV_LOAD_IMAGE_ANYCOLOR  對應 4
   * – 位深不變 , 通道數不變
   *
   * 組合
   * CV_LOAD_IMAGE_ANYDEPTH | CV_LOAD_IMAGE_ANYCOLOR – 位深不變,通道數變 (最真實圖像)
   *
   * CV_LOAD_IMAGE_COLOR | CV_LOAD_IMAGE_ANYDEPTH – 位深不變,通道數=3(三通道)
   *
   * 如果輸入有沖突的标志,将采用較小的數字值
   */