走進Python-OpenCV:cv2.imread(),cv2.imshow(),cv2.imwrite()__Python

來源:互聯網
上載者:User

為什麼使用Python-OpenCV

雖然python 很強大,而且也有自己的影像處理庫PIL,但是相對於OpenCV 來講,它還是弱小很多。跟很多開源軟體一樣OpenCV 也提供了完善的python 介面,非常便於調用。OpenCV 的穩定版是2.4.8,最新版是3.0,包含了超過2500 個演算法和函數,幾乎任何一個能想到的成熟演算法都可以通過調用OpenCV 的函數來實現,超級方便。 一、需要工具

本機使用python 2.7.10下調試代碼均通過,一下學習需要有一定的代碼閱讀能力,一下學習只介紹函數方法:

Python 作為一種高效簡潔的直譯式語言非常適合我們用來解決日常工作的問題。而且它簡單易學,初學者幾個小時就可以基本入門。再加上Numpy 和matplotlib 這兩個翅膀,Python 對資料分析的能力不遜於Matlab。Python 還被稱為是膠水語言,有很多軟體都提供了Python 介面。尤其是在linux 下,可以使用Python 將不同的軟體組成一個工作流程,發揮每一個軟體自己最大的優勢從而完成一個複雜的任務。比如我們可以使用Mysql 儲存資料,使用R 分析資料,使用matplotlib 展示資料,使用OpenGL 進行3D 建模,使用Qt 構建漂亮的GUI。而Python 可以將他們聯合在一起構建一個強大的工作流程。 二、入門小試

1、映像讀入:cv2.imread()

使用函數cv2.imread() 讀入映像。這幅映像應該在此程式的工作路徑,或者給函數提供完整路徑,第二個參數是要告訴函數應該如何讀取這幅圖片。

• cv2.IMREAD_COLOR:讀入一副彩色映像。映像的透明度會被忽略,
這是預設參數。
• cv2.IMREAD_GRAYSCALE:以灰階模式讀入映像

# -*- coding: utf-8 -*-"""Created on Mon Sep 07 19:51:58 2015@author: Eddy_zheng"""import cv2#import numpy as np# 灰階圖模式載入一副彩圖img = cv2.imread('lena.jpg',0) #沒有女神lena的,下方可以自行儲存 @_@

PS:調用opencv,就算映像的路徑是錯的,OpenCV 也不會提醒你的,但是當你使用命
令print img時得到的結果是None。

2、顯示映像cv2.imshow()

使用函數cv2.imshow() 顯示映像。視窗會自動調整為映像大小。第一個參數是視窗的名字,其次才是我們的映像。你可以建立多個視窗,只要你喜歡,但是必須給他們不同的名字。

cv2.imshow('image',img)cv2.waitKey(0) """cv2.waitKey() 是一個鍵盤綁定函數。需要指出的是它的時間尺度是毫秒級。函數等待特定的幾毫秒,看是否有鍵盤輸入。特定的幾毫秒之內,如果按下任意鍵,這個函數會返回按鍵的ASCII 碼值,程式將會繼續運行。如果沒有鍵盤輸入,傳回值為-1,如果我們設定這個函數的參數為0,那它將會無限期的等待鍵盤輸入。它也可以被用來檢測特定鍵是否被按下,例如按鍵a 是否被按下,這個後面我們會接著討論。"""cv2.destroyAllWindows()"""cv2.destroyAllWindows() 可以輕易刪除任何我們建立的視窗。如果你想刪除特定的視窗可以使用cv2.destroyWindow(),在括弧內輸入你想刪除的視窗名。"""

3、儲存映像cv2.imwrite()

cv2.imwrite('lena.png',img)

lena:

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.