ChenWu98 / cycle-diffusion

[ICCV 2023] A latent space for stochastic diffusion models
Other
575 stars 35 forks source link

Could you please explain what "custom step" and "white_box_step" stand for? #11

Closed fortunechen closed 1 year ago

fortunechen commented 1 year ago

Hi Chen,

Sorry for bothering you again, you set "custom step=99" and "white_box_step=100" for stable diffusion. Could you please explain what are "custom step" and "white_box_step"? It will be very helpful for me to understand the code.

Thx

ChenWu98 commented 1 year ago

Hi Zhuowei,

custom_step is the number of denoising steps, and white_box_step is the number of noises. When all noises are used (i.e., noises $=$ $\boldsymbol{x}_T, \boldsymbol{\epsilon}_T, \ldots, \boldsymbol{\epsilon}_1$), then white_box_step $=$ custom_step + 1. If you want to skip some later noises (e.g., noises $=$ $\boldsymbol{x}_T, \boldsymbol{\epsilon}_T, \ldots, \boldsymbol{\epsilon}_3$), then white_box_step $\leq$ custom_step; the skipped noises are randomly sampled from the Gaussian when decoding the image.

By the way, for Stable Diffusion, our implementation based on diffusers (doc, demo) should be cleaner and easier to play with.

fortunechen commented 1 year ago

Thx, I can understand now. Looks great on diffusers. 👍