nanye commited on
Commit
4f7577e
·
1 Parent(s): 785e85b

model-specific image for forward process

Browse files
Files changed (2) hide show
  1. app.js +10 -8
  2. app.py +5 -4
app.js CHANGED
@@ -178,14 +178,16 @@ async function handleModelEvent(event) {
178
  function loadImage(image, label) { const canvas = document.createElement('canvas'); canvas.width = SIZE; canvas.height = SIZE; const context = canvas.getContext('2d'); const scale = Math.max(SIZE / image.width, SIZE / image.height); const width = image.width * scale; const height = image.height * scale; context.drawImage(image, (SIZE - width) / 2, (SIZE - height) / 2, width, height); sourcePixels = canvasPixels(canvas); imageLabel = label; reverseInputMode = 'seed'; reverseNoiseState = makeNoiseState(readSeed()); forwardRevealCount = 1; forwardCompleted = false; resetProgress('forward'); computeForwardStates(); renderTracks(); }
179
  modelInput.addEventListener('change', () => {
180
  applyTimesteps();
181
- if (modelInput.value === 'google/ddpm-cifar10-32') {
182
- const image = new Image();
183
- image.onload = () => {
184
- if (modelInput.value === 'google/ddpm-cifar10-32') loadImage(image, 'CIFAR-10 train 23');
185
- };
186
- image.onerror = () => setModelStatus('Could not load the CIFAR-10 source image.');
187
- image.src = 'assets/cifar10_train_23_32.png';
188
- }
 
 
189
  });
190
  elements.applyTimesteps.addEventListener('click', applyTimesteps); elements.timestepsInput.addEventListener('keydown', (event) => { if (event.key === 'Enter') applyTimesteps(); });
191
  elements.randomizeSeed.addEventListener('click', () => { resampleNoise(); elements.configError.textContent = ''; forwardRevealCount = 1; forwardCompleted = false; resetProgress('forward'); computeForwardStates(); renderTracks(); });
 
178
  function loadImage(image, label) { const canvas = document.createElement('canvas'); canvas.width = SIZE; canvas.height = SIZE; const context = canvas.getContext('2d'); const scale = Math.max(SIZE / image.width, SIZE / image.height); const width = image.width * scale; const height = image.height * scale; context.drawImage(image, (SIZE - width) / 2, (SIZE - height) / 2, width, height); sourcePixels = canvasPixels(canvas); imageLabel = label; reverseInputMode = 'seed'; reverseNoiseState = makeNoiseState(readSeed()); forwardRevealCount = 1; forwardCompleted = false; resetProgress('forward'); computeForwardStates(); renderTracks(); }
179
  modelInput.addEventListener('change', () => {
180
  applyTimesteps();
181
+ const selectedModel = modelInput.value;
182
+ const source = selectedModel === 'google/ddpm-cifar10-32'
183
+ ? { path: 'assets/cifar10_train_23_32.png', label: 'CIFAR-10 train 23' }
184
+ : { path: 'assets/celeba_hq_validation_91_256.png', label: 'Human face' };
185
+ const image = new Image();
186
+ image.onload = () => {
187
+ if (modelInput.value === selectedModel) loadImage(image, source.label);
188
+ };
189
+ image.onerror = () => setModelStatus('Could not load the selected model’s source image.');
190
+ image.src = source.path;
191
  });
192
  elements.applyTimesteps.addEventListener('click', applyTimesteps); elements.timestepsInput.addEventListener('keydown', (event) => { if (event.key === 'Enter') applyTimesteps(); });
193
  elements.randomizeSeed.addEventListener('click', () => { resampleNoise(); elements.configError.textContent = ''; forwardRevealCount = 1; forwardCompleted = false; resetProgress('forward'); computeForwardStates(); renderTracks(); });
app.py CHANGED
@@ -320,10 +320,11 @@ def change_source(filepath, seed, checkpoint_text, model_id=MODEL_ID):
320
 
321
 
322
  def change_model(seed, checkpoint_text, image, model_id):
323
- if model_id == "google/ddpm-cifar10-32":
324
- return change_source(ROOT / "assets/cifar10_train_23_32.png",
325
- seed, checkpoint_text, model_id)
326
- return (image, *reset_tracks(seed, checkpoint_text, image, model_id))
 
327
 
328
 
329
  def show_checkpoint_preview(gallery, event: gr.SelectData):
 
320
 
321
 
322
  def change_model(seed, checkpoint_text, image, model_id):
323
+ source_paths = {
324
+ MODEL_ID: ROOT / "assets/celeba_hq_validation_91_256.png",
325
+ "google/ddpm-cifar10-32": ROOT / "assets/cifar10_train_23_32.png",
326
+ }
327
+ return change_source(source_paths[model_id], seed, checkpoint_text, model_id)
328
 
329
 
330
  def show_checkpoint_preview(gallery, event: gr.SelectData):