From 5ff3ab8a495ee6aa7e89ecef64be588389350ff2 Mon Sep 17 00:00:00 2001
From: Stephan Seitz <stephan.seitz@fau.de>
Date: Thu, 9 Apr 2020 10:39:59 +0200
Subject: [PATCH] Assert float().cuda().contiguous() in both forward/backward
 projection

---
 src/pyronn_torch/conebeam.py | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/pyronn_torch/conebeam.py b/src/pyronn_torch/conebeam.py
index 9579174..32f126f 100644
--- a/src/pyronn_torch/conebeam.py
+++ b/src/pyronn_torch/conebeam.py
@@ -36,7 +36,7 @@ class _ForwardProjection(torch.autograd.Function):
         self.step_size = step_size
 
     def forward(self, volume):
-        volume = volume.cuda().contiguous()
+        volume = volume.float().cuda().contiguous()
         projection = torch.zeros(self.projection_shape,
                                  device='cuda',
                                  requires_grad=volume.requires_grad)
@@ -55,6 +55,7 @@ class _ForwardProjection(torch.autograd.Function):
 
     def backward(self, *projection_grad):
         projection_grad = projection_grad[0]
+        projection_grad = projection_grad.float().cuda().contiguous()
         volume_grad = torch.zeros(self.volume_shape, device='cuda', requires_grad=projection_grad.requires_grad)
 
         assert pyronn_torch.cpp_extension
-- 
GitLab