Spaces:
Running on Zero
Running on Zero
Parameterize deterministic multi-view fixtures
Browse files- demo_pipeline.py +5 -3
demo_pipeline.py
CHANGED
|
@@ -18,14 +18,16 @@ from simam3d_core import (
|
|
| 18 |
)
|
| 19 |
|
| 20 |
|
| 21 |
-
def build_demo_views(size: int = 48):
|
|
|
|
|
|
|
| 22 |
yy, xx = np.mgrid[0:size, 0:size]
|
| 23 |
depth = (0.25 + 0.65 * ((xx / max(size - 1, 1) - 0.5) ** 2 + (yy / max(size - 1, 1) - 0.5) ** 2)).astype(np.float32)
|
| 24 |
views = []
|
| 25 |
-
poses = synthetic_orbit_poses(
|
| 26 |
for index, pose in enumerate(poses):
|
| 27 |
colors = np.zeros((size, size, 3), dtype=np.uint8)
|
| 28 |
-
colors[..., index] = 220
|
| 29 |
colors[..., (index + 1) % 3] = (xx * 255 // max(size - 1, 1)).astype(np.uint8)
|
| 30 |
confidence = np.full_like(depth, 1.0 - index * 0.1)
|
| 31 |
views.append((depth, confidence, None, pose, colors))
|
|
|
|
| 18 |
)
|
| 19 |
|
| 20 |
|
| 21 |
+
def build_demo_views(size: int = 48, view_count: int = 3):
|
| 22 |
+
if view_count < 1:
|
| 23 |
+
raise ValueError("view_count must be positive")
|
| 24 |
yy, xx = np.mgrid[0:size, 0:size]
|
| 25 |
depth = (0.25 + 0.65 * ((xx / max(size - 1, 1) - 0.5) ** 2 + (yy / max(size - 1, 1) - 0.5) ** 2)).astype(np.float32)
|
| 26 |
views = []
|
| 27 |
+
poses = synthetic_orbit_poses(view_count)
|
| 28 |
for index, pose in enumerate(poses):
|
| 29 |
colors = np.zeros((size, size, 3), dtype=np.uint8)
|
| 30 |
+
colors[..., index % 3] = 220
|
| 31 |
colors[..., (index + 1) % 3] = (xx * 255 // max(size - 1, 1)).astype(np.uint8)
|
| 32 |
confidence = np.full_like(depth, 1.0 - index * 0.1)
|
| 33 |
views.append((depth, confidence, None, pose, colors))
|