分享
2026.5.8-日报-王雨默
输入“/”快速插入内容
2026.5.8-日报-王雨默
用户2965
用户2965
5月9日修改
一.工作内容概述
•
持续推进碎片收集系统进度
•
尝试使用AI制作图片处理工具,解决之前遇到的“边缘问题”
二.图片处理工具
问题背景
在之前的尝试中,AI生成的单个按钮、图标或面板,视觉上看起来可用,但边缘像素通常不适合直接作为游戏资源使用,体现在如下方面:
•
背景不是真实透明背景,而是被绘制上去的真实像素。
•
使用AI进行抠图无法解决边缘问题,产出的图片边缘存在大量瑕疵,完全无法使用
尝试思路
尝试使用AI编写工具来进行资源的处理,思路如下:
1.
临时背景识别色
使用特定颜色(如洋红色
#FF00FF
) 作为临时背景识别色工具通过这个颜色判断背景区域。但不能简单地把所有接近
#FF00FF
的像素都删除,因为素材内部也可能有粉色、紫色高光或装饰。因此需要通过“外部连通区域”来识别真正背景。
2.
保留内部质感,清理外部污染
处理原则是:
也就是说,目标不是把素材变成纯扁平图形,而是把它处理成:
主体仍然有质感,但外部轮廓干净、透明、无紫边。
3.
高像素输入后再缩放导出
如果输入图是高像素版本,例如目标尺寸的 3 倍或 4 倍,工具可以先完成边缘处理,再缩小到目标尺寸。
这样可以减少:
◦
紫边;
◦
锯齿;
◦
AI 生成噪点;
◦
边缘不稳定像素。
但也要注意:
◦
小高光可能变弱;
◦
极细描边可能变淡;
◦
图标细节可能略糊。
所以缩放需要使用高质量算法,并允许轻微锐化。
流程原理梳理
1.
颜色距离检测:判断像素是否接近背景色
工具首先计算每个像素与
#FF00FF
的颜色距离。
背景色为:
代码块
Plain Text
#FF00FF = RGB(255, 0, 255)
颜色距离计算:
代码块
Plain Text
distance = sqrt((R - 255)^2 + (G - 0)^2 + (B - 255)^2)
距离越小,说明像素越接近背景色。
这一步的作用是:
•
识别纯背景像素
•
识别接近背景色的混色像素
•
辅助判断紫边污染
不会直接删除像素,只是生成“背景候选区域”。
2.
泛洪填充:只识别外部背景
仅靠颜色距离还不够,因为素材内部也可能有类似颜色。
因此工具从画布四周开始做泛洪填充:从图片四条边缘开始,找到接近 #FF00FF 的像素,向相邻像素扩散,只把与画布外部连通的区域标记为背景。这样可以避免误删素材内部的粉色或紫色内容。