OpenCV MREAD_XXX標記

OpenCV支持各種類型的圖像,如彩色,二進制,灰度等。使用Imgcodecs類的imread()方法和預定義的字段,可以將給定的圖像作爲另一種類型讀取。

imread()方法的標誌參數(IMREAD_XXX)

在前面的章節中,我們已經看到了Imgcodecs類的imread()方法的語法。 它接受一個字符串參數,表示要讀取的圖像的位置。

imread(filename)

imread()方法有另一種語法。

imread(filename, int flags)

這個語法接受兩個參數 -

  • filename - 它接受一個參數(文件名),一個字符串類型的變量,表示要讀取的文件的路徑。
  • flags - 表示預定義標誌值的整數值。 對於每個值,這將讀取給定的圖像作爲特定的類型(灰度顏色等)

以下是將Imgproc類中提供的各個字段列爲此參數的值的表。

編寫

字段

描述

1

IMREAD_COLOR

如果該標誌設置爲該值,則加載的圖像將被轉換爲3通道BGR(藍綠紅)彩色圖像。

2

IMREAD_GRAYSCALE

如果標誌設置爲該值,則加載的圖像將被轉換爲單通道灰度圖像。

3

IMREAD_LOAD_GDAL

如果標誌被設置爲這個值,可以使用gdal驅動來加載圖像。

4

IMREAD_ANYCOLOR

如果該標誌被設置爲這個值,則圖像以任何可能的顏色格式被讀取。

5

IMREAD_REDUCED_COLOR_2, IMREAD_REDUCED_COLOR_4, IMREAD_REDUCED_COLOR_8

如果該標誌被設置爲該值,則圖像被讀取爲三通道BGR,並且圖像的尺寸相對於所使用的場被縮小爲圖像的原始尺寸的1/21/4

6

IMREAD_REDUCED_GRAYSCALE_2, IMREAD_REDUCED_GRAYSCALE_4, IMREAD_REDUCED_GRAYSCALE_8

如果該標誌被設置爲該值,則圖像被讀取爲單通道灰度圖像,並且相對於所使用的場,圖像的尺寸被縮小爲圖像的原始尺寸的½¼

7

IMREAD_UNCHANGED

如果該標誌被設置爲這個值,則加載的圖像將被原樣返回。