Python-OpenCV 處理影象(一):基本操作

發表於2016-05-24

系列文章目錄

0x00. 圖片讀、寫和顯示操作

安裝好 OpenCV 之後,首先嚐試載入一張最簡單的圖片並顯示出來,程式碼示例:

第一種方式使用cv2.cv的LoadImageShowImageSaveImage函式

也可以直接使用cv2的imreadimwriteimshow函式

imread函式還可以定義載入的mode,預設是以RGB模式處理圖片:

0x01. 獲取圖片屬性

0x02. 輸出文字

在處理圖片的時候,我們經常會需要把一些資訊直接以文字的形式輸出在圖片上,下面的程式碼將實現這個效果:

cv2:

0x03. 縮放圖片

下面的例子將實現縮放圖片並儲存,這個在使用 OpenCV 做影象處理的時候都是很常用的操作:

cv2:

0x04. 影象平移

0x05. 影象旋轉

0x06. 仿射變換

0x07. 影象顏色變換

實際使用過程中,我們經常也需要對一些圖片的顏色空間做一些改變之類的:

c2.cv:

  • cv.Convert():將圖片從一個顏色空間轉到另一個顏色空間
  • cv.CvtColor(src, dst, code):

cv2:

cv2.cvtColor(input_image, flag)函式實現圖片顏色空間的轉換,flag 引數決定變換型別。如 BGR->Gray flag 就可以設定為 cv2.COLOR_BGR2GRAY 。

一個簡單的例子,下面的程式碼實現識別攝像視訊中藍色的部分:

以上的程式碼給出了視訊中獲取興趣物件的基本思想。

0x08. 通道的拆分/合併處理

對於一張圖片的 R、G、B 通道,我們可以很方便的使用 OpenCV 獲取並分離或者合併:

(這是將影象灰度化處理的一種方式)

cv2.cv

cv2

0x09. 圖片新增邊距

cv2.copyMakeBorder函式

相關文章