为什么';t python openCV是否以我期望的方式更改背景颜色?
我刚刚开始使用python3.7中的opencv 我试图改变灰色图片的每一个颜色像素。例如,一个值为1،等于254的像素或值为30、等于(255-30)=225的像素等。我的代码工作正常,但有一点是错误的:我的图片的背景是黑色和黑色的,我希望在执行代码后,背景是浅色和白色的。但背景并没有改变为什么';t python openCV是否以我期望的方式更改背景颜色?,python,python-3.x,opencv,opencv-python,Python,Python 3.x,Opencv,Opencv Python,我刚刚开始使用python3.7中的opencv 我试图改变灰色图片的每一个颜色像素。例如,一个值为1،等于254的像素或值为30、等于(255-30)=225的像素等。我的代码工作正常,但有一点是错误的:我的图片的背景是黑色和黑色的,我希望在执行代码后,背景是浅色和白色的。但背景并没有改变 import cv2 as cv img2 = cv.imread('2.JPG') print(img2.shape) image2 = img2[0::2, 0::2] for i in range(i
import cv2 as cv
img2 = cv.imread('2.JPG')
print(img2.shape)
image2 = img2[0::2, 0::2]
for i in range(image2.shape[0]):
for j in range(image2.shape[1]):
for k in range(256):
if image2[i, j, 2] == k:
image2[i, j] = 255 - k
cv.imwrite('img2.JPG', image2)
cv.imshow('img2', image2)
cv.waitKey()
从逻辑上看,似乎要反转灰度图像。您可以使用
image2=255-image2
或image2=cv2.bitwise\u not(image2)
从逻辑上看,似乎要反转灰度图像。您可以使用
image2=255-image2
或image2=cv2.bitwise\u not(image2)
“背景”到底是什么意思?图片的哪些部分是背景,哪些部分不是背景?从您当前的代码和输出中提供图像样本、输入和输出(使用windows paint绘制)您所希望的“背景”到底是什么意思?图片的哪些部分是背景,哪些部分不是背景?从您当前的代码和输出中提供图像样本、输入和输出(使用windows paint绘制)
import cv2 as cv
img2 = cv.imread('2.jpg', 0)
image2 = img2[0::2,0::2] #downsampling
image2 = 255 - image2
# image2 = cv.bitwise_not(image2)
cv.imwrite('img2.JPG', image2)
cv.imshow('img2', image2)
cv.waitKey()