OpenCV?讀取圖像imread的使用詳解
更新時間:2022年09月01日 10:57:10 作者:H.S.T不想卷
這篇文章主要介紹了OpenCV?讀取圖像imread的使用詳解,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,感興趣的小伙伴可以參考一下
1、方法說明
import cv2 as cv img1 =cv.imread(filename[, flags])
參數(shù) | 說明 |
---|---|
filename | 圖片路徑地址 |
flags | 讀取圖片方式 |
2、目前支持的文件格式
- . - Windows bitmaps - *.bmp, *. dib (always supported)
- . - JPEG files - *.jpeg, *.jpg, *.jpe (see the Note section)
- . - JPEG 2000 files - *.jp2 (see the Note section)
- . - Portable Network Graphics - *.png (see the Note section)
- . - WebP - *. webp (see the Note section)
- . - Portable image format - *. pbm, *. pgm, *. ppm *. pxm, *. pnm (always supported)
- . - PFM files - *. pfm (see the Note section)
- . - Sun rasters - *. sr, *. ras (always supported)
- . - TIFF files - *.tiff, *.tif (see the Note section)
- . - OpenEXR Image files - *. exr (see the Note section)
- . - Radiance HDR - *. hdr, *. pic (always supported)
3、flags參數(shù)說明
flags參數(shù) | 代號 | 功能 |
---|---|---|
cv2.IMREAD_COLOR | 1 | 將圖像轉換 3 通道BGR彩色圖像,默認方式 |
cv2.IMREAD_GRAYSCALE | 0 | 將圖像轉換為單通道灰度圖像 |
cv2.IMREAD_UNCHANGED | -1 | 按原樣返回加載Alpha通道的圖像 |
cv2.IMREAD_ANYDEPTH | 2 | 在輸入具有相應深度時返回16位/ 32位圖像,否則將其轉換為8位 |
cv2.IMREAD_ANYCOLOR | 4 | 以任何可能的顏色格式讀取圖像 |
注意:
- (1)imread( )方法默認讀取的格式是
BGR
,不是我們熟悉的RGB
格式哦!
python常用第三方包 | 圖像讀取格式 |
---|---|
OpenCV | BGR |
PIL | RGB |
PyQt | RGB |
matplotlib | RGB |
- (2)OpenCV 讀取圖像文件,返回值是一個
【numpy.array】多維數(shù)組
,即三階矩陣;若沒有讀取到對應的圖片不會報錯,而是會返回一個空矩陣; - (3)filename路徑中不支持中文和空格,如果生產(chǎn)環(huán)境需要,可以考慮用imdecode( )進行處理;
4、案例教程
# 1 圖像的讀取【BGR】 import matplotlib.pyplot as plt import cv2 as cv # 讀取文件的路徑 imgFile = "./sources/cyq.jpg" # flags=1 讀取彩色圖像(BGR),即flags=cv.IMREAD_COLOR img = cv.imread(imgFile, flags=cv.IMREAD_COLOR) # 圖片展示 plt.imshow(img) plt.show()
展示結果:
原圖 | 讀取結果 |
# 2 圖像的讀取【BGR=>RGB】 import matplotlib.pyplot as plt import cv2 as cv # 讀取文件的路徑 imgFile = "./sources/cyq.jpg" # flags=1 讀取彩色圖像(BGR),即flags=cv.IMREAD_COLOR img = cv.imread(imgFile, flags=cv.IMREAD_COLOR) # 由于matplotlib的圖片像素格式為(RGB),因此需要做格式轉化; img=cv.cvtColor(img,cv.COLOR_BGR2RGB) # 圖片展示 plt.imshow(img) plt.show()
展示結果:
原圖 | 讀取結果 |
到此這篇關于OpenCV 讀取圖像imread的使用詳解的文章就介紹到這了,更多相關OpenCV imread 圖像讀取內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Python網(wǎng)絡編程使用select實現(xiàn)socket全雙工異步通信功能示例
這篇文章主要介紹了Python網(wǎng)絡編程使用select實現(xiàn)socket全雙工異步通信功能,簡單說明了select模塊的功能及socket全雙工異步通信功能的相關實現(xiàn)技巧,需要的朋友可以參考下2018-04-04