如何更改我选择的像素的颜色?
How do I change the color of the pixels I choose?
我想把图片的某些部分变黑。
如何将我选择的框的颜色更改为黑色?
我的代码:
import cv2
import numpy as np
img = cv2.imread("colors.jpg")
height,width = 720,720
img = cv2.resize(img,(width,height))
hsv = cv2.cvtColor(img,cv2.COLOR_BGR2HSV)
lower_range = np.array([100,50,50])
upper_range = np.array([150,255,255])
kernel = np.ones((5,5),np.uint8)
mask = cv2.inRange(hsv, lower_range, upper_range)
erosion = cv2.erode(mask,kernel,iterations = 1)
res = cv2.bitwise_and(img,img, mask = erosion)
#cv2.imshow("Image",img)
#cv2.imshow("Mask",erosion)
cv2.imshow("res",res)
cv2.waitKey(0)
cv2.destroyAllWindows
Image
Solution
在Python/OpenCV中,您可以使用Numpy改变mask像素对应的颜色。
img[mask>0]=(0,0,0)
我想把图片的某些部分变黑。 如何将我选择的框的颜色更改为黑色?
我的代码:
import cv2
import numpy as np
img = cv2.imread("colors.jpg")
height,width = 720,720
img = cv2.resize(img,(width,height))
hsv = cv2.cvtColor(img,cv2.COLOR_BGR2HSV)
lower_range = np.array([100,50,50])
upper_range = np.array([150,255,255])
kernel = np.ones((5,5),np.uint8)
mask = cv2.inRange(hsv, lower_range, upper_range)
erosion = cv2.erode(mask,kernel,iterations = 1)
res = cv2.bitwise_and(img,img, mask = erosion)
#cv2.imshow("Image",img)
#cv2.imshow("Mask",erosion)
cv2.imshow("res",res)
cv2.waitKey(0)
cv2.destroyAllWindows
Image Solution
在Python/OpenCV中,您可以使用Numpy改变mask像素对应的颜色。
img[mask>0]=(0,0,0)