img = cv2.imread('img.jpg')
使用前将颜色二值化
img_gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
需要注意的是参数支持rgb但是识别效率不高,建议二值化( lowerb upperb )
mask = cv2.inRange(img_gray, 155, 165)
contours, hierarchy = cv2.findContours(
mask, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
绘制指定大小矩形
for cnt in contours:
area = cv2.contourArea(cnt)
if 600 < area < 800:
cv2.drawContours(img, [cnt], 0, (0, 0, 255), 2)
识别前
识别后