kylinfires commited on
Commit
7b9f2be
·
verified ·
1 Parent(s): 7fcad30

WorldGen: 1600 upscale path

Browse files
Files changed (1) hide show
  1. worldgen/worldgen_i2s.py +12 -7
worldgen/worldgen_i2s.py CHANGED
@@ -1,4 +1,4 @@
1
- """Single image -> FLUX Fill panorama -> DA-2 depth -> Rust 3DGS/mesh."""
2
 
3
  import argparse
4
  import os
@@ -75,11 +75,12 @@ def main():
75
 
76
  out = Path(args.out)
77
  out.mkdir(parents=True, exist_ok=True)
 
78
  prep = out / "prep"
79
  run([
80
  sys.executable, str(ROOT / "worldgen/worldgen_i2s_prep.py"),
81
  "--image", args.image, "--out", str(prep),
82
- "--width", str(args.width), "--height", str(args.height),
83
  ])
84
 
85
  prompt = (
@@ -99,14 +100,14 @@ def main():
99
  "-p", prompt,
100
  "-n", "blurry, low quality",
101
  "--lora-model-dir", str(FLUX),
102
- "-W", str(args.width), "-H", str(args.height),
103
  "--steps", str(args.steps),
104
  "--cfg-scale", "1.0",
105
  "--guidance", "30.0",
106
  "--sampling-method", "euler",
107
  "--strength", "1.0",
108
  "--seed", str(args.seed),
109
- *(["--vae-tiling", "--vae-tile-size", "512x512"] if args.width < 1600 else []),
110
  "--backend", "diffusion=vulkan0",
111
  "-o", str(out / "pano_fill.png"),
112
  ])
@@ -129,9 +130,11 @@ def main():
129
  m = mask_img.filter(ImageFilter.GaussianBlur(24))
130
  valid = (1.0 - np.asarray(m).astype(np.float32) / 255.0)[..., None]
131
  pano = (g * (1.0 - valid) + c * valid).clip(0, 255).astype(np.uint8)
132
- Image.fromarray(pano).save(out / "pano.png")
133
-
134
- d = da2_depth(Image.fromarray(pano), args.width, args.height)
 
 
135
  d.astype("<f4").tofile(out / "depth.f32")
136
  cpu_mesh = args.mesh_shell or args.cpu_mesh
137
  run([
@@ -195,3 +198,5 @@ def main():
195
  if __name__ == "__main__":
196
  main()
197
 
 
 
 
1
+ """Single image -> FLUX Fill panorama -> DA-2 depth -> Rust 3DGS/mesh."""
2
 
3
  import argparse
4
  import os
 
75
 
76
  out = Path(args.out)
77
  out.mkdir(parents=True, exist_ok=True)
78
+ gen_w, gen_h = (1024, 512) if args.width >= 1600 else (args.width, args.height)
79
  prep = out / "prep"
80
  run([
81
  sys.executable, str(ROOT / "worldgen/worldgen_i2s_prep.py"),
82
  "--image", args.image, "--out", str(prep),
83
+ "--width", str(gen_w), "--height", str(gen_h),
84
  ])
85
 
86
  prompt = (
 
100
  "-p", prompt,
101
  "-n", "blurry, low quality",
102
  "--lora-model-dir", str(FLUX),
103
+ "-W", str(gen_w), "-H", str(gen_h),
104
  "--steps", str(args.steps),
105
  "--cfg-scale", "1.0",
106
  "--guidance", "30.0",
107
  "--sampling-method", "euler",
108
  "--strength", "1.0",
109
  "--seed", str(args.seed),
110
+ *["--vae-tiling", "--vae-tile-size", ("512x512")],
111
  "--backend", "diffusion=vulkan0",
112
  "-o", str(out / "pano_fill.png"),
113
  ])
 
130
  m = mask_img.filter(ImageFilter.GaussianBlur(24))
131
  valid = (1.0 - np.asarray(m).astype(np.float32) / 255.0)[..., None]
132
  pano = (g * (1.0 - valid) + c * valid).clip(0, 255).astype(np.uint8)
133
+ pano_img = Image.fromarray(pano)
134
+ if pano_img.size != (args.width, args.height):
135
+ pano_img = pano_img.resize((args.width, args.height), Image.LANCZOS)
136
+ pano_img.save(out / "pano.png")
137
+ d = da2_depth(pano_img, args.width, args.height)
138
  d.astype("<f4").tofile(out / "depth.f32")
139
  cpu_mesh = args.mesh_shell or args.cpu_mesh
140
  run([
 
198
  if __name__ == "__main__":
199
  main()
200
 
201
+
202
+