diff options
author | Willem Jan Palenstijn <wjp@usecode.org> | 2019-03-30 20:49:42 +0100 |
---|---|---|
committer | Willem Jan Palenstijn <Willem.Jan.Palenstijn@cwi.nl> | 2019-09-25 14:10:08 +0200 |
commit | 48f4e7b165404a0375db300b9fe59da92edf1cce (patch) | |
tree | 493a6f578d6b51baf0db79f898a5ed3e9a2074fc /cuda/2d/algo.cu | |
parent | 3cf63d335ebe392a8c77f0c90395c18150647aeb (diff) | |
download | astra-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.cu | 13 |
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); |