之前也用過opencv, 不過都是按需使用, 掌握的知識很零散, 此次但願可以系統學習opencv-pythonhtml
本文直接從Gui Features開始.python
使用cv2.imread()函數讀取圖像.ide
cv2.imread(filename[, flags])
函數
filename 圖片的路徑, 圖片應該在工做目錄下, 否則應給出圖片完整路徑
flags 指定圖像讀取方式:學習
Note : 能夠使用1,0,-1 代替表示上述三種圖像讀取方式
代碼 :ui
import cv2 img = cv2.imread('E:/pyproject/haha.jpg',1)
Note :spa
print(圖片)
時,將返回None
.使用cv2.imshow()函數讀取圖像.3d
cv2.imshow(winname, mat)
code
winname 顯示窗口的名字
mat 要顯示的圖像htm
cv2.namedWindow(winname[, flags])
winname 顯示窗口的名字
flags 顯示窗口的標誌:
cv2.waitKey([, delay])
一個綁定鍵盤功能。
delay 以毫秒爲單位延遲。 0是指「永遠」的特殊值。
cv2.destroyAllWindows()
簡單地破壞咱們建立的全部窗口。若是想銷燬任何特定的窗口,在其中傳遞確切的窗口名稱做爲參數。
Note :
若是顯示圖像窗口在imshow()
未提早建立,系統將默認cv2.WINDOW_AUTOSIZE
建立窗口
代碼一 :
cv2.imshow("showing",img) cv2.waitKey(0) cv2.destroyAllWindows()
代碼二 :
cv2.namedWindow('showing', cv2.WINDOW_NORMAL) cv2.imshow("showing",img) cv2.waitKey(0) cv2.destroyAllWindows()
cv2.imwrite(filename, img[, params])
filename 圖像名稱
img 保存的圖像
params 對於JPEG,其表示的是圖像的質量,用0 - 100的整數表示,默認95;對於png ,第 三個參數表示的是壓縮級別。默認爲3.
代碼 :
cv2.imwrite('E:/pyproject/1.jpg',img, [int( cv2.IMWRITE_JPEG_QUALITY), 95])
加載一幅灰度圖像,顯示它,若是按's'則保存圖像並退出,若是按ESC鍵直接退出。
import cv2 img = cv2.imread('E:/pyproject/haha.jpg',0) cv2.imshow('image',img) k = cv2.waitKey(0)& 0xFF if k == 27: # wait for ESC key to exit cv2.destroyAllWindows() elif k == ord('s'): # wait for 's' key to save and exit cv2.imwrite('messigray.png',img) cv2.destroyAllWindows()
使用Matplotlib顯示圖像。 你能夠放大圖像,使用Matplotlib保存等。
import cv2 from matplotlib import pyplot as plt img = cv2.imread('E:/pyproject/haha.jpg',0) plt.imshow(img, cmap = 'gray', interpolation = 'bicubic') plt.xticks([]), plt.yticks([]) # to hide tick values on X and Y axis plt.show()