You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Bitmap非透明区域着色求助:已去背景,需为剩余区域随机上色

为透明背景图片的非透明区域填充随机颜色

问题描述

已完成图片背景透明化处理,需为剩余非透明区域填充随机颜色。

处理前图片:
处理前图片

已去背景的图片:
处理后图片

解决方案(基于Python Pillow库)

适合图像处理新手,操作步骤简单:

  1. 安装依赖库
    执行命令安装Pillow:
pip install pillow
  1. 实现代码
from PIL import Image
import random

# 打开已去背景的图片,转为RGBA模式保留透明度
img = Image.open("E91PD.png").convert("RGBA")
width, height = img.size

# 生成0-255范围的随机RGB颜色
random_color = (random.randint(0, 255), random.randint(0, 255), random.randint(0, 255))

# 创建填充了随机颜色的图层
color_layer = Image.new("RGBA", (width, height), random_color)
# 提取原图的alpha通道作为掩码,仅针对非透明区域操作
alpha_mask = img.split()[3]

# 合并颜色图层与原图,仅在非透明区域填充随机色
result = Image.composite(color_layer, img, alpha_mask)

# 保存处理后的图片
result.save("colored_result.png")
  1. 代码说明
  • 转RGBA模式是为了保留图片的透明度通道信息
  • 用alpha通道作为掩码,确保随机颜色只填充到原图片的非透明区域
  • 生成的随机颜色覆盖原非透明区域的原有色彩,保留透明度属性

无代码替代方案

若不想编写代码,可使用Canva、Pixlr等在线图片编辑工具:

  • 上传已去背景的图片
  • 通过工具的「选择主体」功能快速选中非透明区域
  • 在填充工具中选择随机色或手动生成颜色完成填充

内容的提问来源于stack exchange,提问作者Chris

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 09:05:23