Files
AnyImage/openspec/changes/improve-cutout-adaptive-mesh/experiment.md
nan 7e55af6722 Add comprehensive tests for edge depth extension, empty image edits, and material view adaptation
- Introduced `test_edge_depth.py` to validate the functionality of edge depth extension, ensuring core alpha preservation, proper depth handling, and edge padding behavior.
- Created `test_empty_image_edits.py` to verify the behavior of image edits in Blender, focusing on shared edits, preservation of image properties, and handling of failed operations.
- Developed `test_material_view_adaptation.py` to test material adaptation preferences, ensuring color space and alpha settings are correctly applied and preserved across various scenarios.
2026-09-06 21:43:47 +08:00

3.0 KiB
Raw Blame History

实验验收基准

2026-09-06,本机开发 Python 3.11、NumPy 1.x、Blender bpy 4.5.3,使用已完成 BEN2 抠图的四张样图。每项预热一次,交替测三次取中位数。输入尺寸:头骨 620×444、蜘蛛 476×702、甲虫 465×347、卡通 128×123。

首次数值构建

单位为毫秒,包含过滤、轮廓、结构准备、布点、约束三角化和既有 Poisson 求解;不含 removebg、进程导入、图片读写、指标计算、绘图、Blender 对象创建与节点求值。下表作为同机正式接入的 1.25 倍耗时验收参照,不作为其他硬件或大图的绝对时限。

图片 Low Medium High Ultra
头骨 115 183 314 858
蜘蛛 233 304 647 1292
甲虫 60 73 121 275
卡通 19 23 32 51

上一轮蜘蛛 Low / High / Ultra 为约 785 / 965 / 1454 ms;上一轮高密度仍沿用低密度边缘。当前轮廓更精细,因此这是结果质量发生变化的端到端对比。最初正式算法的蜘蛛 Low 约 190 ms、Ultra 约 303 ms,当前仍有额外计算成本。

轮廓贴合

从源轮廓采样到实际网格边界的 P95 距离,单位为源像素。误差测量使用过滤后的原始 Alpha 轮廓,包含高密度平滑带来的偏差。

图片 Low Medium High Ultra
头骨 1.612 1.024 0.650 0.590
蜘蛛 1.530 0.986 0.680 0.615
甲虫 1.566 0.968 0.687 0.609
卡通 1.666 0.868 0.652 0.605

High 的正向最大采样距离约 0.98 像素,Ultra 约 0.88 像素以内;反向采样最大距离分别约 0.73 / 0.63 像素以内。采样距离是实验指标,不是连续 Hausdorff 误差的严格上界。

已验证与正式验收边界

  • 蜘蛛截图右外侧腿的六个检查位置在间距 4、8、16、28、32、36 像素,以及 Low / High 平移 1 像素时处于同一内部约束图分量;检查点最近距离最高约 10.55 像素。
  • 保留约束覆盖最终实际网格边,端点为内部点且 Balloon 高度为正;不同精度的路径位置与点数允许变化。
  • 含孔洞矩形的内部线段、穿孔、越界、共线接触、零长度内部点和边界点检查通过;随机内外判定与现有函数一致。
  • 半径分组空间索引在四图随机查询上与未索引宽度估计一致;准备结构复用与完整重算的点、面和高度一致。
  • 仍有少量未被选为结构路径的全边界三角形,不能据此声称所有末梢均已获得支撑。正式任务要求补充端部覆盖检查。
  • 当前原型未实现完整的轮廓拓扑重试、操作级缓存身份、Blender 客户端依赖接入和 2K/4K 资源验收,这些在 tasks.md 中保持未完成。

独立脚本及测量数据位于本机会话目录:C:/Users/icrdr/.codex/visualizations/2026/09/05/01a07226-3125-7c63-b655-8206da43c177/cutout-experiment/final/;原型入口为其上级的 final.py。正式自动测试需使用仓库内可复现的合成样本。