Skip to content

Inference sampling procedure #25

@andreabosisio

Description

@andreabosisio

BrepGen/sample.py

Lines 128 to 129 in ee8f342

pndm_scheduler.set_timesteps(200)
for t in tqdm(pndm_scheduler.timesteps[:158]):#

surfPos = pndm_scheduler.step(pred, t, surfPos).prev_sample

I can't understand why here the timesteps are cut to 158, and, most importantly, why the output of this PNDM denoising process is then fed to another DDPM process starting from the lasts 250 steps:

BrepGen/sample.py

Lines 144 to 149 in ee8f342

ddpm_scheduler.set_timesteps(1000)
for t in tqdm(ddpm_scheduler.timesteps[-250:]):
timesteps = t.reshape(-1).cuda()
if class_label is not None:
_surfPos_ = surfPos.repeat(2,1,1)
pred = surfPos_model(_surfPos_, timesteps, class_label)

Could you please explain the motivation and intended effects of these two aspects of the overall process?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions