OpenCV + Python 實現靜態影象色彩分割
阿新 • • 發佈:2018-12-01
實現色彩分割基本步驟
Code:
# --coding: utf-8--
import cv2 as cv
import numpy as np
def color_seperate(image):
hsv = cv.cvtColor(image, cv.COLOR_BGR2HSV) #對目標影象進行色彩空間轉換
lower_hsv = np.array([100, 43, 46]) #設定藍色下限
upper_hsv = np.array([124, 255, 255]) #設定藍色上限
mask = cv.inRange(hsv, lowerb=lower_hsv, upperb=upper_hsv) #依據設定的上下限對目標影象進行二值化轉換
dst = cv.bitwise_and(src, src, mask=mask) #將二值化影象與原圖進行“與”操作;實際是提取前兩個frame 的“與”結果,然後輸出mask 為1的部分
#注意:括號中要寫mask=xxx
cv.imshow('result', dst) #輸出
src = cv.imread('/home/pi/Desktop/blue_apple.jpg') #匯入目標影象,獲取影象資訊
color_seperate(src)
cv.imshow('image', src)
cv.waitKey(0)
cv.destroyAllWindows()
二值化影象:
最後結果: