要将黄色改为白色,灰色改为黑色,可以使用 OpenCV 的颜色转换函数来实现。

首先,读取图像并将其转换为 HSV 颜色空间:

import cv2

# 读取图像
image = cv2.imread('image.jpg')

# 转换为 HSV 颜色空间
hsv = cv2.cvtColor(image, cv2.COLOR_BGR2HSV)

然后,定义黄色和灰色的 HSV 值范围:

# 定义黄色的 HSV 值范围
lower_yellow = np.array([20, 100, 100])
upper_yellow = np.array([30, 255, 255])

# 定义灰色的 HSV 值范围
lower_gray = np.array([0, 0, 50])
upper_gray = np.array([180, 50, 220])

接下来,创建一个掩码来标识黄色和灰色区域:

# 创建黄色和灰色的掩码
yellow_mask = cv2.inRange(hsv, lower_yellow, upper_yellow)
gray_mask = cv2.inRange(hsv, lower_gray, upper_gray)

最后,将黄色区域设置为白色,灰色区域设置为黑色:

# 将黄色区域设置为白色
image[yellow_mask > 0] = [255, 255, 255]

# 将灰色区域设置为黑色
image[gray_mask > 0] = [0, 0, 0]

完成以上步骤后,你可以保存并显示处理后的图像:

# 保存处理后的图像
cv2.imwrite('result.jpg', image)

# 显示处理后的图像
cv2.imshow('result', image)
cv2.waitKey(0)
cv2.destroyAllWindows()

请注意,上述代码中使用了 NumPy 库的 np.array 函数来创建 HSV 值范围的数组。确保你已经导入了 numpy 库:

import numpy as np
OpenCV 图像颜色转换:将黄色改为白色,灰色改为黑色

原文地址: https://www.cveoy.top/t/topic/e0mf 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录