gpt4 book ai didi

python - Python 中的 OpenCV - 操作像素

转载 作者:太空宇宙 更新时间:2023-11-03 22:29:36 25 4
gpt4 key购买 nike

我正在使用 python 2.7 和 OpenCV 将图像设置为全白像素,但它不起作用。

这是我的代码:

import cv2
import numpy as np

image = cv2.imread("strawberry.jpg") #Load image

imageWidth = image.shape[1] #Get image width
imageHeight = image.shape[0] #Get image height

xPos = 0
yPos = 0

while xPos < imageWidth: #Loop through rows
while yPos < imageHeight: #Loop through collumns

image.itemset((xPos, yPos, 0), 255) #Set B to 255
image.itemset((xPos, yPos, 1), 255) #Set G to 255
image.itemset((xPos, yPos, 2), 255) #Set R to 255

yPos = yPos + 1 #Increment Y position by 1
xPos = xPos + 1 #Increment X position by 1

cv2.imwrite("result.bmp", image) #Write image to file

print "Done"

我使用 numpy 设置图像的像素 - 但 result.bmp 是原始图像的精确副本。

我做错了什么?

编辑:

我知道遍历像素是个坏主意,但我的代码中没有发挥作用的部分是什么?

最佳答案

opencv/python 的第一条规则:永远不要遍历像素,如果可以避免的话!

如果您想将所有像素设置为 (1,2,3),很简单:

image[::] = (1,2,3)

对于“全白”:

image[::] = (255,255,255)

关于python - Python 中的 OpenCV - 操作像素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29133530/

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