基於Python:OpenCV簡單圖片操作
一、主要函數
1、 cv2.imread():讀入圖片,共兩個參數,第一個參數為要讀入的圖片文件名,第二個參數為如何讀取圖片,包括cv2.IMREAD_COLOR:讀入一副彩色圖片;cv2.IMREAD_GRAYSCALE:以灰度模式讀入圖片;cv2.IMREAD_UNCHANGED:讀入一幅圖片,並包括其alpha通道。
2、cv2.imshow():創建一個窗口顯示圖片,共兩個參數,第一個參數表示窗口名字,可以創建多個窗口中,但是每個窗口不能重名;第二個參數是讀入的圖片。
3、cv2.waitKey():鍵盤綁定函數,共一個參數,表示等待毫秒數,將等待特定的幾毫秒,看鍵盤是否有輸入,返回值為ASCII值。如果其參數為0,則表示無限期的等待鍵盤輸入。
4、cv2.destroyAllWindows():刪除建立的全部窗口。
5、cv2.destroyWindows():刪除指定的窗口。
6、cv2.imwrite():保存圖片,共兩個參數,第一個為保存文件名,第二個為讀入圖片。
二、實例
1、以下面的圖片為例
2、顯示並保存彩色圖片
# -*- coding: utf-8 -*-
import cv2
img=cv2.imread('1.jpg',cv2.IMREAD_COLOR)# 讀入彩色圖片
cv2.imshow('image',img)#建立image窗口顯示圖片
k=cv2.waitKey(0)#無限期等待輸入
if k==27:#如果輸入ESC退出
cv2.destroyAllWindows()
elif k==ord('s'):#如果輸入s,保存
cv2.imwrite('test.png',img)
print "OK!"
cv2.destroyAllWindows()
顯示結果:
3、顯示並保存黑白圖片
# -*- coding: utf-8 -*-
import cv2
img=cv2.imread('1.jpg',cv2.IMREAD_GRAYSCALE)# 讀入彩色圖片
cv2.imshow('image',img)#建立image窗口顯示圖片
k=cv2.waitKey(0)#無限期等待輸入
if k==27:#如果輸入ESC退出
cv2.destroyAllWindows()
elif k==ord('s'):
cv2.imwrite('test.png',img)
print "OK!"
cv2.destroyAllWindows()
顯示結果:
--------------------------------------分割線 --------------------------------------
Ubuntu Linux下安裝OpenCV2.4.1所需包 http://www.linuxidc.com/Linux/2012-08/68184.htm
Ubuntu 12.04 安裝 OpenCV2.4.2 http://www.linuxidc.com/Linux/2012-09/70158.htm
CentOS下OpenCV無法讀取視頻文件 http://www.linuxidc.com/Linux/2011-07/39295.htm
Ubuntu 12.04下安裝OpenCV 2.4.5總結 http://www.linuxidc.com/Linux/2013-06/86704.htm
Ubuntu 10.04中安裝OpenCv2.1九步曲 http://www.linuxidc.com/Linux/2010-09/28678.htm
基於QT和OpenCV的人臉識別系統 http://www.linuxidc.com/Linux/2011-11/47806.htm
[翻譯]Ubuntu 14.04, 13.10 下安裝 OpenCV 2.4.9 http://www.linuxidc.com/Linux/2014-12/110045.htm
--------------------------------------分割線 --------------------------------------
OpenCV的詳細介紹:請點這裡
OpenCV的下載地址:請點這裡