from PIL import Image
# 打开蒙版图片(确保图片是黑白或者单通道图像)
image_path = r"A:\projects_guotong\documets\开题\heu001.png" # 替换为你的图片路径
mask_image = Image.open(image_path).convert("L") # 转换为灰度模式(单通道)
# 颜色反转:255 - 每个像素值
inverted_image = Image.eval(mask_image, lambda x: 255 - x)
# 保存结果
inverted_image.save("inverted_mask_image.png")
inverted_image.show() # 显示图片
带路径拼接的
import os
from PIL import Image
# 文件夹路径和文件名
folder_path = "input_masks" # 替换为你的文件夹路径
file_name = "mask_image.png" # 替换为你的图片文件名
# 拼接完整路径
image_path = os.path.join(folder_path, file_name)
# 打开并处理图片
mask_image = Image.open(image_path).convert("L") # 转为灰度模式
inverted_image = Image.eval(mask_image, lambda x: 255 - x) # 颜色反转
# 保存结果
output_path = os.path.join(folder_path, "inverted_" + file_name) # 拼接输出路径
inverted_image.save(output_path)
print(f"图片已处理并保存为:{output_path}")
对一个文件夹的图片都进行此操作
import os
from PIL import Image
# 文件夹路径和文件名
folder_path = "input_masks" # 替换为你的文件夹路径
file_name = "mask_image.png" # 替换为你的图片文件名
# 拼接完整路径
image_path = os.path.join(folder_path, file_name)
# 打开并处理图片
mask_image = Image.open(image_path).convert("L") # 转为灰度模式
inverted_image = Image.eval(mask_image, lambda x: 255 - x) # 颜色反转
# 保存结果
output_path = os.path.join(folder_path, "inverted_" + file_name) # 拼接输出路径
inverted_image.save(output_path)
print(f"图片已处理并保存为:{output_path}")
将蒙版中的白色变为蓝色,(透明蒙版不变)
from PIL import Image
import os
# 文件夹路径和文件名
folder_path = r"A:\projects_guotong\documets\开题" # 替换为你的文件夹路径
file_name = "heu001.png" # 替换为你的图片文件名
# 拼接完整路径
image_path = os.path.join(folder_path, file_name)
# 打开图片并转为灰度模式
mask_image = Image.open(image_path).convert("L") # 灰度模式
# 创建 RGBA 图像,初始背景设置为透明
rgba_image = Image.new("RGBA", mask_image.size, (0, 0, 255, 0)) # 蓝色背景,透明
# 替换白色区域为蓝色,不透明
for x in range(mask_image.width):
for y in range(mask_image.height):
pixel = mask_image.getpixel((x, y))
if pixel == 255: # 如果是白色像素
rgba_image.putpixel((x, y), (0, 0, 255, 255)) # 蓝色,不透明
else:
rgba_image.putpixel((x, y), (0, 0, 0, 0)) # 黑色,透明
# 保存结果
output_path = os.path.join(folder_path, "blue_mask_transparent.png")
rgba_image.save(output_path, "PNG")
print(f"图片已处理并保存为:{output_path}")