【发布时间】:2021-09-27 04:59:53
【问题描述】:
我试图使用色彩空间执行图像分割。例如,乡村地区。我不确定如何为cv2.inRange() 选择边界。
img = cv2.imread(file)
img_hsv=cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
lower_bound = np.array([0,70,70])
upper_bound = np.array([20,200,150])
mask0 = cv2.inRange(img_hsv, lower_bound, upper_bound)
lower_bound = np.array([170,70,70])
upper_bound = np.array([180,200,150])
mask1 = cv2.inRange(img_hsv, lower_bound, upper_bound)
# add both masks
mask = mask0+mask1
output_img = cv2.bitwise_and(img,img,mask=mask)
【问题讨论】:
-
你的面具是不是应该只分割乡村地区?
-
@NishaniKasineshan 是的,只有乡村地区
-
您可以在线找到带有 Hue 通道值的颜色图表。在 opencv 中,0..360 的原始色调范围映射到 0..180。了解 HSV 以选择 S 和 V。
标签: python opencv image-processing computer-vision