基本思路:
1.用霍夫圆检测 挑选出图片中的圆形区域
2.颜色筛选,挑选出当中的红 绿 黄部分,实现对于交通信号灯的筛选
为演示基本思路 此处以红灯举例进行实战
原图:
检测红灯之后:
开源代码:
import cv2
import numpy as np
font = cv2.FONT_HERSHEY_SIMPLEX
img = cv2.imread(r"C:\Users\WM202\Pictures\4.jpg")#自定义图片路径
GrayImage=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
GrayImage= cv2.medianBlur(GrayImage,5) #降噪处理
ret,th1 = cv2.threshold(GrayImage,127,255,cv2.THRESH_BINARY)
th2 = cv2.adaptiveThreshold(GrayImage,255,cv2.ADAPTIVE_THRESH_MEAN_C,
cv2.THRESH_BINARY,3,5)
th3 = cv2.adaptiveThreshold(GrayImage,255,cv2.ADAPTIVE_THRESH_GAUSSIAN_C,
cv2.THRESH_BINARY,3,5)
kernel = np.ones((5,5),np.uint8