【OpenCV 例程300篇】01. 图像的读取(cv2.imread)
生活随笔
收集整理的這篇文章主要介紹了
【OpenCV 例程300篇】01. 图像的读取(cv2.imread)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
專欄地址:『youcans 的 OpenCV 例程300篇 - 總目錄』
01. 圖像的讀取(cv2.imread)
02. 圖像的保存(cv2.imwrite)
03. 圖像的顯示(cv2.imshow)
04. 用 matplotlib 顯示圖像(plt.imshow)
【OpenCV 例程300篇】001. 圖像的讀取(cv2.imread)
函數 cv2.imread() 用于從指定的文件讀取圖像。
函數說明:
retval = cv.imread(filename[, flags])
- 函數 cv2.imread() 從指定文件加載圖像并返回該圖像的矩陣。
- 如果無法讀取圖像(文件丟失,權限不正確,格式不支持或無效),該函數返回一個空矩陣。
- 目前支持的文件格式:
- Windows 位圖 - * .bmp,* .dib
- JPEG 文件 - * .jpeg,* .jpg,*.jpe
- JPEG 2000文件 - * .jp2
- 便攜式網絡圖形 - * .png
- WebP - * .webp
- 便攜式圖像格式 - * .pbm,* .pgm,* .ppm * .pxm,* .pnm
- TIFF 文件 - * .tiff,* .tif
參數說明:
- filename:讀取圖像的文件路徑和文件名
- flags:讀取圖片的方式,可選項
- 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):以任何可能的顏色格式讀取圖像
- 返回值 retval:讀取的 OpenCV 圖像,nparray 多維數組
注意事項:
基本例程:
# 1.1 圖像的讀取imgFile = "../images/imgLena.tif" # 讀取文件的路徑img1 = cv2.imread(imgFile, flags=1) # flags=1 讀取彩色圖像(BGR)img2 = cv2.imread(imgFile, flags=0) # flags=0 讀取為灰度圖像擴展例程:
# 1.2 從網絡讀取圖像import urllib.request as requestresponse = request.urlopen("https://profile.csdnimg.cn/8/E/F/0_youcans")imgUrl = cv2.imdecode(np.array(bytearray(response.read()), dtype=np.uint8), -1) # 1.3 讀取中文路徑的圖像imgFile = "../images/測試圖01.png" # 帶有中文的文件路徑和文件名# imread() 不支持中文路徑和文件名,讀取失敗,但不會報錯!# img = cv2.imread(imgFile, flags=1)# 使用 imdecode 可以讀取帶有中文的文件路徑和文件名img = cv2.imdecode(np.fromfile(imgFile, dtype=np.uint8), -1)(本節完)
版權聲明:
youcans@xupt 原創作品,轉載必須標注原文鏈接:(https://blog.csdn.net/youcans/article/details/121168935)
Copyright 2022 youcans, XUPT
Crated:2021-11-18
更多內容請見:>『youcans 的 OpenCV 例程300篇 - 總目錄』(https://blog.csdn.net/youcans/article/details/125112487)
總結
以上是生活随笔為你收集整理的【OpenCV 例程300篇】01. 图像的读取(cv2.imread)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 大学物理----同方向同频率简谐振动的合
- 下一篇: ECALL,BCALL,ICALL