国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

opencv python 讀取圖像/顯示圖像/保存圖像

jay_tian / 2375人閱讀

摘要:以毫秒為單位延遲。默認為代碼應用加載一幅灰度圖像,顯示它,如果按則保存圖像并退出,如果按鍵直接退出。使用使用顯示圖像。

以前也用過opencv, 不過都是按需使用, 掌握的知識很零散, 這次希望能夠系統學習opencv-python

本文直接從Gui Features開始.

1 讀取圖片

使用cv2.imread()函數讀取圖像.

cv2.imread(filename[, flags])

filename 圖片的路徑, 圖片應該在工作目錄下, 不然應給出圖片完整路徑
flags 指定圖像讀取方式:

cv2.IMREAD_COLOR : 加載彩色圖像. 圖像的任何透明度都將被忽略.(默認)

cv2.IMREAD_GRAYSCALE : 以灰度模式加載圖像.

cv2.IMREAD_UNCHANGED : 加載包含Alpha通道的圖像

Note : 可以使用1,0,-1 代替表示上述三種圖像讀取方式
代碼 :

import cv2
img = cv2.imread("E:/pyproject/haha.jpg",1)

Note :

如果缺少文件,權限不當,格式不受支持或無效,當print(圖片)時,將返回None.

該函數通過內容而不是文件擴展名來決定圖像類型.

圖像數據將以B,G,R的順序存儲.

2 顯示圖片

使用cv2.imshow()函數讀取圖像.

cv2.imshow(winname, mat)

winname 顯示窗口的名字
mat 要顯示的圖像

cv2.namedWindow(winname[, flags])

winname 顯示窗口的名字
flags 顯示窗口的標志:

cv2.WINDOW_AUTOSIZE : 根據顯示圖像自動調整窗口,不能手動更改窗口大小(默認)

cv2.WINDOW_NORMAL : 可以調整窗口大小

……

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()

3 保存圖片

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()
4 使用 Matplotlib

使用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()

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/41873.html

相關文章

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<