Get the rendering camera parameters.
(batch_size=1, M=120, radius=2.5, elevation=10.0, is_flexicubes=False)
| 36 | os.makedirs(model_cache_dir, exist_ok=True) |
| 37 | |
| 38 | def get_render_cameras(batch_size=1, M=120, radius=2.5, elevation=10.0, is_flexicubes=False): |
| 39 | """ |
| 40 | Get the rendering camera parameters. |
| 41 | """ |
| 42 | c2ws = get_circular_camera_poses(M=M, radius=radius, elevation=elevation) |
| 43 | if is_flexicubes: |
| 44 | cameras = torch.linalg.inv(c2ws) |
| 45 | cameras = cameras.unsqueeze(0).repeat(batch_size, 1, 1, 1) |
| 46 | else: |
| 47 | extrinsics = c2ws.flatten(-2) |
| 48 | intrinsics = FOV_to_intrinsics(30.0).unsqueeze(0).repeat(M, 1, 1).float().flatten(-2) |
| 49 | cameras = torch.cat([extrinsics, intrinsics], dim=-1) |
| 50 | cameras = cameras.unsqueeze(0).repeat(batch_size, 1, 1) |
| 51 | return cameras |
| 52 | |
| 53 | |
| 54 | def images_to_video(images, output_path, fps=30): |
no test coverage detected