实验 48:A42 Component-aware Cleanup

把 A41 visible-lock UDF 的多组件壳拆分并按 visible/patch 支持选择单组件

实验定位 有效后处理原型 / 需扩大验证

A42 回答 A41 的关键问题:多出来的闭合组件是不是必要结构,还是 unsigned shell 产生的可删除外壳?做法是把 A41 mesh 拆成 connected components,并按 largest、visible-prior、balanced visible+patch 三种规则选择单组件。

结果比 A41 更好:lock_r018_patch030_b024/visible_prior 平均 components=1、watertight rate=100.0%、boundary=0、nonmanifold=0,同时 visible p95=0.03244、patch coverage@5=100.0%。这说明 A41 多组件主要是多余壳,可通过 topology-aware component routing 清理。

实验设计(Image-2 风格)

实验设计图:A42 component-aware cleanup
实验设计图:A42 component-aware cleanup
模块设计图:component selection router
模块设计图:component selection router

模块设计(Image-2 风格)

Component Router

  • 输入:A41 visible-lock UDF mesh。
  • 分解:connected components。
  • 评分:visible p95、patch p95、visible coverage@5、patch coverage@5。
  • 规则:largest、visible-prior、balanced visible+patch。
  • 输出:单组件 watertight OBJ。

Interpretation

如果单组件选择后 patch coverage 仍接近 100%,说明 A41 的额外组件多半是无用壳;如果 patch coverage 掉得很厉害,则说明 cleanup 会丢替换结构。A42 目前支持前者,但只在两个 focus case 上验证。

实验结果(表格)

规则聚合

rule水密率componentscomponent Δ vs A41boundarynonmanifoldfacesvisible p95patch p95visible cov@5patch cov@5proxy Chamfer
low-drift visible-prior100.0%1-4.500284600.032440.0352799.8%100.0%0.02602
low-drift largest100.0%1-4.500284600.032610.0353099.8%100.0%0.02591
low-drift balanced100.0%1-4.500284600.032710.0354799.8%100.0%0.02603
topology visible-prior100.0%1-200183620.036940.04036100.0%99.8%0.02948

逐 case 输出

caserule选择watertightcomponents beforecomponents afterboundarynonmanifoldvisible p95patch p95patch cov@5facesOBJ
gso_002_input4topology visible-priorcandidateTrue51000.037360.0426199.6%29820/home/jiachen/TRELLIS/experiments/nonorthogonal_gpt_orthoview/outputs/data_survey/vggt_spatial_adapter/support_guidance_a42_component_aware_cleanup/gso_002_input4/mesh_lock_r020_patch035_b028_visible_prior_trellis2_raw.obj
gso_002_input4low-drift largestcandidateTrue91000.033200.03781100.0%46644/home/jiachen/TRELLIS/experiments/nonorthogonal_gpt_orthoview/outputs/data_survey/vggt_spatial_adapter/support_guidance_a42_component_aware_cleanup/gso_002_input4/mesh_lock_r018_patch030_b024_largest_component_trellis2_raw.obj
gso_002_input4low-drift visible-priorbestTrue91000.033140.03767100.0%46644/home/jiachen/TRELLIS/experiments/nonorthogonal_gpt_orthoview/outputs/data_survey/vggt_spatial_adapter/support_guidance_a42_component_aware_cleanup/gso_002_input4/mesh_lock_r018_patch030_b024_visible_prior_trellis2_raw.obj
gso_002_input4low-drift balancedcandidateTrue91000.033390.03812100.0%46644/home/jiachen/TRELLIS/experiments/nonorthogonal_gpt_orthoview/outputs/data_survey/vggt_spatial_adapter/support_guidance_a42_component_aware_cleanup/gso_002_input4/mesh_lock_r018_patch030_b024_balanced_visible_patch_trellis2_raw.obj
gso_008_input4topology visible-priorcandidateTrue11000.036520.03811100.0%6904/home/jiachen/TRELLIS/experiments/nonorthogonal_gpt_orthoview/outputs/data_survey/vggt_spatial_adapter/support_guidance_a42_component_aware_cleanup/gso_008_input4/mesh_lock_r020_patch035_b028_visible_prior_trellis2_raw.obj
gso_008_input4low-drift largestcandidateTrue21000.032020.03279100.0%10276/home/jiachen/TRELLIS/experiments/nonorthogonal_gpt_orthoview/outputs/data_survey/vggt_spatial_adapter/support_guidance_a42_component_aware_cleanup/gso_008_input4/mesh_lock_r018_patch030_b024_largest_component_trellis2_raw.obj
gso_008_input4low-drift visible-priorbestTrue21000.031730.03287100.0%10276/home/jiachen/TRELLIS/experiments/nonorthogonal_gpt_orthoview/outputs/data_survey/vggt_spatial_adapter/support_guidance_a42_component_aware_cleanup/gso_008_input4/mesh_lock_r018_patch030_b024_visible_prior_trellis2_raw.obj
gso_008_input4low-drift balancedcandidateTrue21000.032040.03282100.0%10276/home/jiachen/TRELLIS/experiments/nonorthogonal_gpt_orthoview/outputs/data_survey/vggt_spatial_adapter/support_guidance_a42_component_aware_cleanup/gso_008_input4/mesh_lock_r018_patch030_b024_balanced_visible_patch_trellis2_raw.obj

可视化结果

A42 components after cleanup
A42 components after cleanup
A42 visible p95
A42 visible p95
A42 patch coverage
A42 patch coverage
gso_002_input4 component cleanup projection
gso_002_input4 component cleanup projection
gso_008_input4 component cleanup projection
gso_008_input4 component cleanup projection

实验结论

下一步想法