若是已經看過pillow庫對圖片進行處理,應該已經對圖片處理有了解了(不瞭解的能夠去看一下)。儘管pillow庫在處理圖片方面已經很是強大,可是和opencv功能相比,那徹底不是一個量級的,opencv的應用很是廣,圖像處理、目標跟蹤、識別等都有大量應用。python
準備安裝
pip install opencv-python # 默認安裝最新版本 不一樣版本有些差別print(cv2.__version__) # '4.2.0'
編程
微信
我安裝的是4.2最新版本,注意名字是opencv-python。app
打開顯示圖片
使用cv2.imread打開圖片。學習
注意:opencv坑比較多,對中文很不友好,路徑或者文件名出現中文都會報錯,而且報錯你都不知道是由於什麼錯。flex
彩色圖是通常都是以RGB(紅-綠-藍,Red-Green-Blue)顏色模式顯示的,但OpenCV中彩色圖是以B-G-R通道順序存儲的,灰度圖只有一個通道。圖像座標的起始點是在左上角,因此行對應的是y,列對應的是x;spa
cv2.waitKey()是讓程序暫停的意思,參數是等待時間(毫秒ms)。時間一到,會繼續執行接下來的程序,傳入0的話表示一直等待。等待期間也能夠獲取用戶的按鍵輸入:k = cv2.waitKey(0).net
讀取顯示灰度圖
理解:3d
imread接受兩個參數:code
參數1:圖片的文件名
參數2:讀入方式,省略即採用默認值
cv2.IMREAD_COLOR:彩色圖,默認值(1)
cv2.IMREAD_GRAYSCALE:灰度圖(0)
cv2.IMREAD_UNCHANGED:包含透明通道的彩色圖(-1)
自定義窗口顯示圖片
本身定義一個窗口,若是不使用就會有兩個窗口
使用自定義的窗口,能夠實現調整窗口的效果。
解釋:
參數1依舊是窗口的名字,參數2默認是cv2.WINDOWAUTOSIZE,表示窗口大小自適應圖片,也能夠設置爲cv2.WINDOWNORMAL,表示窗口大小可調整。圖片比較大的時候,能夠考慮用後面的參數。
保存圖片
若是按下s按鍵就退出顯示,同時將縮小的圖片保存到本地,命名爲new_panda.png
效果:
總結
cv2.imread()讀入圖片、cv2.resize()改變圖片大小,cv2.imshow()顯示圖片、cv2.imwrite()保存圖片。
(全文完)
長按二維碼,加關注!葉子陪你玩
歡迎轉載,轉載請註明出處!
歡迎關注公衆微信號:葉子陪你玩編程 分享本身的python學習之路
本文分享自微信公衆號 - 葉子陪你玩編程()。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。