You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
-`scripts/render_camera_path.py` now renders feature maps by replacing per-splat RGB with aligned feature preview/query-score colors before projection.
The headless renderer can use the same exported camera pose/path to render feature-space outputs instead of RGB. The projection is defined by the camera JSON; the rendered colors are selected by `--render-layer`.
353
+
354
+
Supported layers:
355
+
356
+
```text
357
+
rgb Original splat RGB.
358
+
depth Expected-depth visualization from the same pose.
359
+
normal Per-splat normal colors.
360
+
feature PCA/preview colors from the aligned feature tensor.
361
+
query-score Heatmap of cosine score against a text/image/vector query.
362
+
query-mask Binary threshold mask from the same score.
363
+
```
364
+
365
+
Render one PNG from the current camera saved by **Save current camera**:
366
+
367
+
```bash
368
+
python scripts/render_camera_path.py \
369
+
--folder-npy /path/to/scene_folder \
370
+
--feature-file /path/to/features.npy \
371
+
--render-layer feature \
372
+
--camera-state .tmp/camera_state.json \
373
+
--output outputs/feature_map.png \
374
+
--device cuda \
375
+
--backend gsplat
376
+
```
377
+
378
+
Render a feature-map video from an exported camera path:
379
+
380
+
```bash
381
+
python scripts/render_camera_path.py \
382
+
--folder-npy /path/to/scene_folder \
383
+
--feature-file /path/to/features.npy \
384
+
--render-layer feature \
385
+
--camera-path outputs/camera_path.json \
386
+
--output outputs/feature_map.mp4 \
387
+
--device cuda \
388
+
--backend gsplat
389
+
```
390
+
391
+
Render a SigLIP2 text-query score map from the camera path:
392
+
393
+
```bash
394
+
python scripts/render_camera_path.py \
395
+
--folder-npy /path/to/scene_folder \
396
+
--feature-file /path/to/siglip2_features.npy \
397
+
--feature-type siglip2 \
398
+
--query-text "chair" \
399
+
--render-layer query-score \
400
+
--camera-path outputs/camera_path.json \
401
+
--output outputs/chair_score.mp4 \
402
+
--score-output outputs/chair_scores.npy \
403
+
--device cuda
404
+
```
405
+
406
+
Render a DINOv2 image-query mask from a camera pose:
0 commit comments