summaryrefslogtreecommitdiffstats
path: root/cuda/2d/algo.cu
diff options
context:
space:
mode:
authorWillem Jan Palenstijn <wjp@usecode.org>2019-03-30 20:49:42 +0100
committerWillem Jan Palenstijn <Willem.Jan.Palenstijn@cwi.nl>2019-09-25 14:10:08 +0200
commit48f4e7b165404a0375db300b9fe59da92edf1cce (patch)
tree493a6f578d6b51baf0db79f898a5ed3e9a2074fc /cuda/2d/algo.cu
parent3cf63d335ebe392a8c77f0c90395c18150647aeb (diff)
downloadastra-48f4e7b165404a0375db300b9fe59da92edf1cce.tar.gz
astra-48f4e7b165404a0375db300b9fe59da92edf1cce.tar.bz2
astra-48f4e7b165404a0375db300b9fe59da92edf1cce.tar.xz
astra-48f4e7b165404a0375db300b9fe59da92edf1cce.zip
Adjust FBP to line integral scaling
Diffstat (limited to 'cuda/2d/algo.cu')
-rw-r--r--cuda/2d/algo.cu13
1 files changed, 7 insertions, 6 deletions
diff --git a/cuda/2d/algo.cu b/cuda/2d/algo.cu
index 11422ff..59ea984 100644
--- a/cuda/2d/algo.cu
+++ b/cuda/2d/algo.cu
@@ -153,6 +153,12 @@ bool ReconAlgo::setSuperSampling(int raysPerDet, int raysPerPixelDim)
return true;
}
+bool ReconAlgo::setReconstructionScale(float fScale)
+{
+ fOutputScale *= fScale;
+ return true;
+}
+
bool ReconAlgo::setVolumeMask(float* _D_maskData, unsigned int _maskPitch)
{
assert(useVolumeMask);
@@ -242,7 +248,7 @@ bool ReconAlgo::allocateBuffers()
return true;
}
-bool ReconAlgo::copyDataToGPU(const float* pfSinogram, unsigned int iSinogramPitch, float fSinogramScale,
+bool ReconAlgo::copyDataToGPU(const float* pfSinogram, unsigned int iSinogramPitch,
const float* pfReconstruction, unsigned int iReconstructionPitch,
const float* pfVolMask, unsigned int iVolMaskPitch,
const float* pfSinoMask, unsigned int iSinoMaskPitch)
@@ -258,11 +264,6 @@ bool ReconAlgo::copyDataToGPU(const float* pfSinogram, unsigned int iSinogramPit
if (!ok)
return false;
- // rescale sinogram
- if (fSinogramScale != 1.0f)
- processSino<opMul>(D_sinoData, fSinogramScale,
- sinoPitch, dims);
-
ok = copyVolumeToDevice(pfReconstruction, iReconstructionPitch,
dims,
D_volumeData, volumePitch);