读取图像,获得BGR格式的像素值,然后转换成HSV格式,再利用inRange函数进行颜色分离,标记出来
HSV的色彩取值范围:
具体代码:
#利用inrange进行物体追踪 def extrace_video_demo(): capture = cv.VideoCapture('img/IMG_8464.MOV') while(True): ret,frame = capture.read() if ret==False: break hsv = cv.cvtColor(frame,cv.COLOR_BGR2HSV)#把每一帧的图像转成HSV格式 lower_hsv = np.array([11,43,46]) upper_hsv = np.array([25,255,255]) #确定颜色空间 mask = cv.inRange(hsv,lowerb=lower_hsv,upperb=upper_hsv) #进行颜色分离 dst = cv.bitwise_and(frame,frame,mask=mask) #在图像上标记 cv.imshow('video',frame) cv.imshow('mask',mask) c = cv.waitKey(40) if c==27: break