Spaces:
Running on Zero
Running on Zero
| from pathlib import Path | |
| from hydra import compose, initialize_config_dir | |
| from hydra.core.global_hydra import GlobalHydra | |
| from src.demo.config import load_typed_root_config | |
| from src.demo.infer_single_image import INFERENCE_HEIGHT, INFERENCE_WIDTH | |
| def _load_experiment(name: str): | |
| config_dir = Path(__file__).resolve().parents[1] / "config" | |
| GlobalHydra.instance().clear() | |
| with initialize_config_dir(config_dir=str(config_dir), version_base=None): | |
| cfg = compose(config_name="inference", overrides=[f"+experiment={name}"]) | |
| return cfg, load_typed_root_config(cfg) | |
| def test_rgb_experiment_loads() -> None: | |
| cfg_dict, cfg = _load_experiment("infinisplat_hypersim_rgb") | |
| assert "demo" not in cfg_dict | |
| assert "tile_size" not in cfg_dict.model.decoder | |
| assert "view_chunk_size" not in cfg_dict.model.decoder | |
| assert "image_backbone" not in cfg_dict.model.encoder | |
| decoder_cfg = cfg_dict.model.encoder.gaussian_decoder | |
| assert "color_space" not in decoder_cfg | |
| assert "color_activation_type" not in decoder_cfg | |
| assert "opacity_activation_type" not in decoder_cfg | |
| assert "base_scale_on_predicted_mean" not in decoder_cfg | |
| assert "normalize_depth" not in decoder_cfg | |
| assert "surface_aligned_covariance" not in decoder_cfg | |
| assert cfg.model.encoder.name == "infinisplat" | |
| def test_lidar_experiment_loads() -> None: | |
| cfg_dict, cfg = _load_experiment("infinisplat_hypersim_lidar") | |
| assert "demo" not in cfg_dict | |
| assert "image_backbone" not in cfg_dict.model.encoder | |
| decoder_cfg = cfg_dict.model.encoder.gaussian_decoder | |
| assert "color_space" not in decoder_cfg | |
| assert "color_activation_type" not in decoder_cfg | |
| assert "opacity_activation_type" not in decoder_cfg | |
| assert "base_scale_on_predicted_mean" not in decoder_cfg | |
| assert "normalize_depth" not in decoder_cfg | |
| assert "surface_aligned_covariance" not in decoder_cfg | |
| assert cfg.model.encoder.name == "infinisplat_infinidepth" | |
| def test_inference_resolution_is_hardcoded() -> None: | |
| assert (INFERENCE_HEIGHT, INFERENCE_WIDTH) == (1152, 1536) | |