import cv2
import numpy as np
cap = cv2.videocapture(0)
while(1
):# take each frame
_, frame = cap.read(
) frame1=frame.copy(
)# 將影象轉換到 hsv 空間
hsv = cv2.cvtcolor(frame, cv2.color_bgr2hsv)
# 設定 hsv 閾值到藍色範圍。
lower_blue = np.array([0
,80,50
])#最低 upper_blue = np.array([0
,255
,255])
#最高# 設定閾值影象中只出現藍色範圍的物件
mask = cv2.inrange(hsv, lower_blue, upper_blue)
mask1=mask.copy(
) mask2 = mask.copy(
)# bitwise-and mask and original image
res = cv2.bitwise_and(frame,frame, mask= mask)
#這個是有顏色的
res1=cv2.cvtcolor(res,cv2.color_hsv2bgr)
gray = cv2.cvtcolor(res1, cv2.color_bgr2gray)
#灰度化
img = cv2.gaussianblur(gray,(3
,3),
0)# 高斯模糊
cimg = cv2.cvtcolor(img, cv2.color_gray2bgr)
circles = cv2.houghcircles(img, cv2.hough_gradient,1,
20, param1=
200, param2=
30, minradius=
0, maxradius=0)
# 霍夫梯度法
if circles is
notnone
:for i in circles[0,
0:1]
: cv2.circle(cimg,
(int
(i[0])
,int
(i[1])
),int(i[2]
),(0
,255,0
),2)
cv2.circle(cimg,
(int
(i[0])
,int
(i[1])
),2,
(0,255,0
),2)
''''
'' cv2.imshow(
'frame'
,frame)
#展示 cv2.imshow(
'mask'
,mask)
#展示掩碼
cv2.imshow(
'res'
,res)
#利用掩碼進行與操作
cv2.imshow(
'image'
, cimg)
# 利用掩碼進行與操作
k = cv2.waitkey(5)
&0xff
if k ==27:
break
cv2.destroyallwindows(
)
效果是檢測紅色的圓圈,畫乙個圓和其圓心 python opencv 更改顏色空間
色彩轉換,我們使用函式cv2.cvtcolor input image,flag 這裡flag決定轉換的型別 import numpy as np import cv2 對於bgr gray轉換我們使用標誌位 cv2.color bgr2gray。而對bgr hsv來說類似,我們使用cv2.colo...
python opencv檢測目標顏色
coding utf 8 author kingking version 1.0 date 14 07 2017 import cv2 import numpy as np import time if name main img cv2.imread example.png 讀入一幅影象 kern...
Python OpenCV學習(六)改變顏色空間
影象顏色空間的轉換,例如 bgr圖與灰度圖轉換,bgr圖與hsv轉換等。最常用的顏色空間轉變是 bgr圖與灰度圖轉換,bgr圖與hsv轉換 我們用函式cv.cvtcolor input image,flag 來進行顏色轉換,flag決定轉換的型別。bgr轉gray用的flag是cv.color bg...