python如何利用cv2模塊讀取顯示保存圖片

1. 讀取圖片

使用函數cv2.imread(filepath,flags)讀入一副圖片

filepath:要讀入圖片的完整路徑

flags:讀入圖片的標志

cv2.IMREAD_COLOR:默認參數,讀入一副彩色圖片,忽略alpha通道

cv2.IMREAD_GRAYSCALE:讀入灰度圖片

cv2.IMREAD_UNCHANGED:顧名思義,讀入完整圖片,包括alpha通道

import numpy as npimport cv2img = cv2.imread(‘1.jpg’,cv2.IMREAD_GRAYSCALE)

2. 顯示圖片

cv2.imshow(wname,img)
cv2.waitKey(0)
cv2.destroyAllWindows()
cv2.destroyWindow(wname)

使用函數cv2.imshow(wname,img)顯示圖像,第一個參數是顯示圖像的窗口的名字,第二個參數是要顯示的圖像(imread讀入的圖像),窗口大小自動調整為圖片大小

cv2.waitKey顧名思義等待鍵盤輸入,單位為毫秒,即等待指定的毫秒數看是否有鍵盤輸入,若在等待時間內按下任意鍵則返回按鍵的ASCII碼,程序繼續運行。若沒有按下任何鍵,超時後返回-1。參數為0表示無限等待。不調用waitKey的話,窗口會一閃而逝,看不到顯示的圖片

cv2.destroyAllWindow()銷毀所有窗口

cv2.destroyWindow(wname)銷毀指定窗口wname

保存圖片

cv2.imwrite(filepahe, img, flag)

第一個參數filepath是要保存的文件路徑及文件名,例如

filepath='"D\\TooBox\\0.jpg"

第二個參數是要保存的圖像。可選的第三個參數,它針對特定的格式:對於JPEG,其表示的是圖像的質量,用0 – 100的整數表示,默認95;對於png ,第三個參數表示的是壓縮級別。默認為3.

註意:cv2.IMWRITE_JPEG_QUALITY類型為 long ,必須轉換成 int

cv2.IMWRITE_PNG_COMPRESSION, 從0到9 壓縮級別越高圖像越小。

cv2.imwrite('1.png', img, [int(cv2.IMWRITE_JPEG_QUALITY),95])
cv2.imwrite('1.png',img,[int(cv2.IMWRITE_PNG_COMPRESSION),9])

圖片操作

圖片翻轉

使用函數cv2.flip(img,flipcode)翻轉圖像,flipcode控制翻轉效果

flipcode = 0:沿x軸翻轉

flipcode > 0:沿y軸翻轉

flipcode < 0:x,y軸同時翻轉

imgflip=cv2.flip(img,1)

圖片復制

imgcopy=img.copy()

顏色空間轉換

RGB彩色圖片轉為灰度圖片

img2 = cv2.cvtColor(img,cv2.COLOR_RGB2GRAY)

灰度圖片轉為RGB彩色圖片

img3 = cv2.cvtColor(img,cv2.COLOR_GRAY2RGB)

總結

到此這篇關於python利用cv2讀取顯示保存圖片的文章就介紹到這瞭,更多相關python cv2讀取圖片內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: