Render frames from triplanes.
(model, planes, render_cameras, render_size=512, chunk_size=1, is_flexicubes=False)
| 39 | |
| 40 | |
| 41 | def render_frames(model, planes, render_cameras, render_size=512, chunk_size=1, is_flexicubes=False): |
| 42 | """ |
| 43 | Render frames from triplanes. |
| 44 | """ |
| 45 | frames = [] |
| 46 | for i in tqdm(range(0, render_cameras.shape[1], chunk_size)): |
| 47 | if is_flexicubes: |
| 48 | frame = model.forward_geometry( |
| 49 | planes, |
| 50 | render_cameras[:, i:i+chunk_size], |
| 51 | render_size=render_size, |
| 52 | )['img'] |
| 53 | else: |
| 54 | frame = model.forward_synthesizer( |
| 55 | planes, |
| 56 | render_cameras[:, i:i+chunk_size], |
| 57 | render_size=render_size, |
| 58 | )['images_rgb'] |
| 59 | frames.append(frame) |
| 60 | |
| 61 | frames = torch.cat(frames, dim=1)[0] # we suppose batch size is always 1 |
| 62 | return frames |
| 63 | |
| 64 | |
| 65 | ############################################################################### |
no test coverage detected