python中opencv中inrange用法_cv2.inRange() 方法 -- opencv
cv2.inRange(src, lower_red, upper_red[, dst])
介于 lower/upper 之间的为白色,其余黑色
函数很简单,参数有三个
第一个参数:hsv 指的是原图
第二个参数:lower_red 指的是图像中低于这个 lower_red 的值,图像值变为 0
第三个参数:upper_red 指的是图像中高于这个 upper_red 的值,图像值变为 0
而在 lower_red~upper_red 之间的值变成 255img_cv2 = cv2.imread(img_file)
hsv = cv2.cvtColor(img_cv2, cv2.COLOR_BGR2HSV)
lower_red = np.array([20, 20, 20])
upper_red = np.array([200, 200, 200])
# mask -> 1 channel
mask = cv2.inRange(hsv, lower_red, upper_red)
# cv2.imshow(Display, mask)
# cv2.waitKey(0)
# cv2.destroyAllWindows()
plt.subplot(1,2,1); plt.imshow(img_cv2);plt.axis(off);plt.title(BGR)
plt.subplot(1,2,2); plt.imshow(mask);plt.axis(off);plt.title(mask)
plt.show()
cv2.inRange(src, lower_red, upper_red[, dst]) 介于 lower/upper 之间的为白色,其余黑色 函数很简单,参数有三个 第一个参数:hsv 指的是原图 第二个参数:lower_red 指的是图像中低于这个 lower_red 的值,图像值变为 0 第三个参数:upper_red 指的是图像中高于这个 upper_red 的值,图像值变为 0 而在 lower_red~upper_red 之间的值变成 255img_cv2 = cv2.imread(img_file) hsv = cv2.cvtColor(img_cv2, cv2.COLOR_BGR2HSV) lower_red = np.array([20, 20, 20]) upper_red = np.array([200, 200, 200]) # mask -> 1 channel mask = cv2.inRange(hsv, lower_red, upper_red) # cv2.imshow(Display, mask) # cv2.waitKey(0) # cv2.destroyAllWindows() plt.subplot(1,2,1); plt.imshow(img_cv2);plt.axis(off);plt.title(BGR) plt.subplot(1,2,2); plt.imshow(mask);plt.axis(off);plt.title(mask) plt.show()