Python 尝试将两个图像重叠在一起

Python 尝试将两个图像重叠在一起,python,image,loops,if-statement,nested-loops,Python,Image,Loops,If Statement,Nested Loops,我有两张照片需要拼在一起。第一个是关于一个有海洋的海滩。第二幅图是一棵仙人掌,后面有一个非常明亮的绿色屏幕。我需要找到一种方法来调低仙人掌图片中的绿色屏幕,这样我就可以把它放在海滩图片上,让它看起来像海滩上有仙人掌一样。我可以改变像素的颜色,但我似乎不能拿出仙人掌图片明亮的绿色屏幕颜色。我也可以把这两张照片放在一起,但仙人掌图片的绿色屏幕覆盖了海滩图片的颜色。有没有人能告诉我如何调低仙人掌图片的绿色像素或者去掉绿色屏幕的部分? 这是我正在使用的代码。它在谷歌文档中。我迷路了。 这里有一个链接,看

我有两张照片需要拼在一起。第一个是关于一个有海洋的海滩。第二幅图是一棵仙人掌,后面有一个非常明亮的绿色屏幕。我需要找到一种方法来调低仙人掌图片中的绿色屏幕,这样我就可以把它放在海滩图片上,让它看起来像海滩上有仙人掌一样。我可以改变像素的颜色,但我似乎不能拿出仙人掌图片明亮的绿色屏幕颜色。我也可以把这两张照片放在一起,但仙人掌图片的绿色屏幕覆盖了海滩图片的颜色。有没有人能告诉我如何调低仙人掌图片的绿色像素或者去掉绿色屏幕的部分? 这是我正在使用的代码。它在谷歌文档中。我迷路了。 这里有一个链接,看看我需要做什么。最后一张图是它的外观

在这里,您必须更改(r、g、b)值以获得最佳遮罩。你也可以使用范围。看看这个

from PIL import Image  
from PIL import ImageFilter  
import os  
 
im1 = Image.open('beach.jpg')
im2 = Image.open('cactus.jpg')
back_im = im1.copy()

for filename in os.listdir("."): 
    if filename[-3:] == "jpg":  
        img = Image.open(filename)  
        img = img.convert("RGBA")  
        pixdata = img.load()  
        for y in range(img.size[1]):  
            for x in range(img.size[0]):  
                r, g, b, a = img.getpixel((x, y))  
                if (r == 76) and (g == 244) and (b == 24):  
                    pixdata[x, y] = (255, 255, 255, 0)  
                if r == 0 and g == 0 and b == 0:  
                    pixdata[x, y] = (255, 255, 255, 0)  

        img2 = img.filter(ImageFilter.GaussianBlur(radius=1)) 
        back_im.paste(img2,mask=img2)
        back_im.save('filename.jpg')

请添加一些代码以显示到目前为止您已尝试的内容。此外,请通过imgur链接到原始图像,而不是谷歌驱动器链接。