OpenCV入門筆記(二) 圖片的文件操作
阿新 • • 發佈:2017-07-15
strong asc nump str destroy type convert 代碼 creat
顯示圖片
以下介紹一下重要的幾個,設計基本 圖片處理 的函數,依次來了解OpenCV的入門知識。具體的具體使用方法還是以官方的API【Official Tutorials】【Python-OpenCV】為準。
imread
圖片讀取函數。使用方法例如以下
# read image with color
img = cv2.imread("./lena.jpg")
# OR read gray image
imgGray = cv2.imread("./lena.jpg", 0)
# convert from BGR to GRAY
imgGray2 = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
- 第一個就是正常的讀入一張圖片;
- 第二個加一個flag值,如flag為0。則表示讀入一個灰色的圖片。相當於。讀入正常帶彩色通道的圖片後。再轉化一下。
imwrite
存取圖片函數,使用方法例如以下
cv2.imwrite("gray.jpg", imgGray)
非常easy,直接文件名稱,加你要存取的圖片即可了。
對了,這裏的imgGray類型,因為Python中沒有類型聲明,所以用了幾天還不知道是個啥。特意去試了一下。用Python的交互界面,type(imgGray)會輸出為 ‘numpy.ndarray’ 的類型。我個人理解,事實上就是圖片的矩陣數組。
顯示圖片
以下的幾個函數結合起來用,能夠把一張圖片顯示出來
title = "gray image"
cv2.namedWindow(title, cv2.WINDOW_NORMAL)
cv2.imshow(title, imgGray)
cv2.waitKey(0)
cv2.destroyAllWindows()
- namedWindow() 是創建一個窗體。WINDOWS_NORMAL這個參數能夠不加,可是加了能夠使窗體能夠調節大小。
- imshow() 不用說,顯示圖片用
- waitKey() 是讓窗體暫停一下,等待用戶輸入才結束。
否則會一閃而過。
- destroyAllWindows() 別忘了銷毀全部的窗體
完整樣例
以下的代碼非常easy。就是讀取一張圖片,轉化成灰度圖並存儲在本地。然後顯示出來。
import cv2
# read image
img = cv2.imread(‘./1.jpg‘)
# change it to gray image
imgGray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
# write gray image
cv2.imwrite("gray.jpg", imgGray)
title = "gray image"
# create a window
cv2.namedWindow(title, cv2.WINDOW_NORMAL)
# show the picture in the window
cv2.imshow(title, imgGray)
# wait until any input of user
cv2.waitKey(0)
# destroy all window
cv2.destroyAllWindows()
OpenCV入門筆記(二) 圖片的文件操作