问题描述
import pyautogui as pug
from PIL import Image,ImageGrab
from time import sleep
from numpy import asarray
def screenshot():
"""Takes Screenshot of the current window"""
img = ImageGrab.grab().convert('L') #To convert the current image in B & W format
return img
if __name__ == "__main__":
sleep(3)
img = screenshot()
data = img.load()
print(asarray(img)) #displays the image in matrix form
#To make a black pixel over the image at coordinate(X:460 Y:320) [Not working :/]
data[420,320] = 0
img.show()
此代码应在图像上创建黑色像素:坐标420、320处的“ img” 但是问题在于它不会产生这种像素。我在做什么错了?
谢谢
解决方法
它实际上有效! 1个像素太小,看不到。您可以增加要变黑的区域。
尝试一下
for _ in range(410,430):
for __ in range(310,330):
data[_,__] = 0
代替
data[420,320] = 0