| 1010 | |
| 1011 | @staticmethod |
| 1012 | def backward(ctx, v_means2d: Tensor, v_covars2d: Tensor): |
| 1013 | means, covars, Ks = ctx.saved_tensors |
| 1014 | width = ctx.width |
| 1015 | height = ctx.height |
| 1016 | camera_model_type = ctx.camera_model_type |
| 1017 | v_means, v_covars = _make_lazy_cuda_func("projection_ewa_simple_bwd")( |
| 1018 | means, |
| 1019 | covars, |
| 1020 | Ks, |
| 1021 | width, |
| 1022 | height, |
| 1023 | camera_model_type, |
| 1024 | v_means2d.contiguous(), |
| 1025 | v_covars2d.contiguous(), |
| 1026 | ) |
| 1027 | return v_means, v_covars, None, None, None, None |
| 1028 | |
| 1029 | |
| 1030 | class _FullyFusedProjection(torch.autograd.Function): |