gpt4 book ai didi

python - 如何将所有黑色像素更改为白色(OpenCV)?

转载 作者:行者123 更新时间:2023-12-01 23:45:00 24 4
gpt4 key购买 nike

我是 OpenCV 的新手,我不明白如何遍历和更改所有颜色代码为 RGB(0,0,0) 的黑色像素到白色 RGB( 255,255,255)。是否有任何函数或方法来检查所有像素,如果 RGB(0,0,0) 则使其变为 RGB(255,255,255)

最佳答案

假设您的图像表示为形状为 (height, width, channels)numpy 数组(cv2.imread 返回的内容) ,你可以这样做:

height, width, _ = img.shape

for i in range(height):
for j in range(width):
# img[i, j] is the RGB pixel at position (i, j)
# check if it's [0, 0, 0] and replace with [255, 255, 255] if so
if img[i, j].sum() == 0:
img[i, j] = [255, 255, 255]

一种更快的、基于掩码的方法如下所示:

# get (i, j) positions of all RGB pixels that are black (i.e. [0, 0, 0])
black_pixels = np.where(
(img[:, :, 0] == 0) &
(img[:, :, 1] == 0) &
(img[:, :, 2] == 0)
)

# set those pixels to white
img[black_pixels] = [255, 255, 255]

关于python - 如何将所有黑色像素更改为白色(OpenCV)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64336516/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com