python庫(OpenCV的簡單使用)


因為需要系統的使用一下python中的OpenCV庫,所以這里也給大家一個使用過程吧。

新手可以對着打一遍,對自己會有好處的。

1.安裝cv2

一般使用pip install cv2即可。

2.讀入圖片

函數:img=cv2.imread(filepath,flag)

  -filepath:讀入圖片路徑

  -flag:就是以哪種模式讀入圖片

    -cv2.IMREAD_COLOR:默認參數,忽略alpha通道

    -cv2.IMREAD_GRAYSCALE : 加載一張灰度圖。

    -cv2.IMREAD_UNCHANGED : 加載圖像,包括它的Alpha通道。

      (alpha通道表示透明程度,自己搜一下看看)

-其中注意的是cv2庫的一個特點是就算圖像的位置不存在,不會報錯,會得到None。

3.顯示圖像

函數:cv2.imshow(name,img)

  -name就是定義的名稱,img就是第二步讀入的圖像。

  -cv2.waitKey(0)顧名思義等待鍵盤輸入,單位為毫秒,即等待指定的毫秒數看是否有鍵盤輸入,若在等待時間內按下任意鍵則返回按鍵的ASCII碼,程序繼續運行。若沒有按下任何鍵,超時后返回-1。參數為0表示無限等待。不調用waitKey的話,窗口會一閃而逝,看不到顯示的圖片。

  -cv2.destroyAllWindow()銷毀所有窗口

例如:

cv2.imshow('image',img)

cv2.waitKey(0)

cv2.destroyAllWindows()

4.保存圖像

函數:cv2.imwrit(file,img,NUM)

   -file就是要保存的文件名稱

  -img就是需要保存的處理后的圖片

  -NUM是可選的參數,可以忽略不寫。它針對特定的格式:對於JPEG,其表示的是圖像的質量,用0 - 100的整數表示,默認95;對於png ,第三個參數表示的是壓縮級別,默認為3。

較為復雜的示例:

cv2.imwrite('1.png',img, [int( cv2.IMWRITE_JPEG_QUALITY), 95])

cv2.imwrite('1.png',img, [int(cv2.IMWRITE_PNG_COMPRESSION), 9])

較為簡單的示例:

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

5.圖片操作

5.1翻轉

函數:cv2.flip(img,flipcode)

  -img,不用講了

  -flipcode這個參數就是表示翻轉效果。

    -為0時,沿着x軸,也就是橫向翻轉。

    ->0時,沿着y軸,也就是豎向翻轉。

    -<0時,沿着x和y軸翻轉。

如上圖第一張為原圖,后面三張flipcode的值分別為:0,1,-1

示例:imgflip = cv2.flip(img,1)

5.2復制圖像

 

 

 

 函數:imgcopy = img.copy()

5.3顏色空間轉換

函數:cv2.cvtColor(img,parameters) 

  -parameters: cv2.COLOR_X2Y,其中X,Y = RGB, BGR, GRAY, HSV, YCrCb, XYZ, Lab, Luv, HLS

示例:

img = cv2.cvtColor(img,cv2.COLOR_RGB2GRAY)    #彩色圖像轉為灰度圖像

img = cv2.cvtColor(img,cv2.COLOR_GRAY2RGB)    #灰度圖像轉為彩色圖像

(待續)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM