From 11114e33fb504b0b74f3d239e77fe248a027cc23 Mon Sep 17 00:00:00 2001 From: Willem Jan Palenstijn Date: Sat, 30 Mar 2019 21:12:01 +0100 Subject: Clean up outputscale naming confusion in cuda::algo --- cuda/2d/sart.cu | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'cuda/2d/sart.cu') diff --git a/cuda/2d/sart.cu b/cuda/2d/sart.cu index 64973ba..aff77a3 100644 --- a/cuda/2d/sart.cu +++ b/cuda/2d/sart.cu @@ -254,11 +254,11 @@ bool SART::callFP_SART(float* D_volumeData, unsigned int volumePitch, if (parProjs) { assert(!fanProjs); return FP(D_volumeData, volumePitch, D_projData, projPitch, - d, &parProjs[angle], outputScale); + d, &parProjs[angle], outputScale * fProjectorScale); } else { assert(fanProjs); return FanFP(D_volumeData, volumePitch, D_projData, projPitch, - d, &fanProjs[angle], outputScale); + d, &fanProjs[angle], outputScale * fProjectorScale); } } @@ -269,11 +269,11 @@ bool SART::callBP_SART(float* D_volumeData, unsigned int volumePitch, if (parProjs) { assert(!fanProjs); return BP_SART(D_volumeData, volumePitch, D_projData, projPitch, - angle, dims, parProjs, outputScale); + angle, dims, parProjs, outputScale * fProjectorScale); } else { assert(fanProjs); return FanBP_SART(D_volumeData, volumePitch, D_projData, projPitch, - angle, dims, fanProjs, outputScale); + angle, dims, fanProjs, outputScale * fProjectorScale); } } -- cgit v1.2.3 From 12f86554bafb66e6afc6193f181527ba0749de92 Mon Sep 17 00:00:00 2001 From: Willem Jan Palenstijn Date: Sat, 30 Mar 2019 21:21:16 +0100 Subject: Adjust SART to line integral scaling --- cuda/2d/sart.cu | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'cuda/2d/sart.cu') diff --git a/cuda/2d/sart.cu b/cuda/2d/sart.cu index aff77a3..12ad6df 100644 --- a/cuda/2d/sart.cu +++ b/cuda/2d/sart.cu @@ -266,14 +266,15 @@ bool SART::callBP_SART(float* D_volumeData, unsigned int volumePitch, float* D_projData, unsigned int projPitch, unsigned int angle, float outputScale) { + // NB: No fProjectorScale here, as that it is cancelled out in the SART weighting if (parProjs) { assert(!fanProjs); return BP_SART(D_volumeData, volumePitch, D_projData, projPitch, - angle, dims, parProjs, outputScale * fProjectorScale); + angle, dims, parProjs, outputScale); } else { assert(fanProjs); return FanBP_SART(D_volumeData, volumePitch, D_projData, projPitch, - angle, dims, fanProjs, outputScale * fProjectorScale); + angle, dims, fanProjs, outputScale); } } -- cgit v1.2.3