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 /include/astra | |
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 'include/astra')
-rw-r--r-- | include/astra/cuda/2d/algo.h | 7 | ||||
-rw-r--r-- | include/astra/cuda/2d/cgls.h | 2 |
2 files changed, 6 insertions, 3 deletions
diff --git a/include/astra/cuda/2d/algo.h b/include/astra/cuda/2d/algo.h index 3fccdef..b6ec231 100644 --- a/include/astra/cuda/2d/algo.h +++ b/include/astra/cuda/2d/algo.h @@ -56,6 +56,10 @@ public: bool setSuperSampling(int raysPerDet, int raysPerPixelDim); + // Scale the final reconstruction. + // May be called at any time after setGeometry and before iterate(). Multiple calls stack. + bool setReconstructionScale(float fScale); + virtual bool enableVolumeMask(); virtual bool enableSinogramMask(); @@ -88,8 +92,7 @@ public: // sinogram, reconstruction, volume mask and sinogram mask in system RAM, // respectively. The corresponding pitch variables give the pitches // of these buffers, measured in floats. - // The sinogram is multiplied by fSinogramScale after uploading it. - virtual bool copyDataToGPU(const float* pfSinogram, unsigned int iSinogramPitch, float fSinogramScale, + virtual bool 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); diff --git a/include/astra/cuda/2d/cgls.h b/include/astra/cuda/2d/cgls.h index 375a425..a854a74 100644 --- a/include/astra/cuda/2d/cgls.h +++ b/include/astra/cuda/2d/cgls.h @@ -47,7 +47,7 @@ public: virtual bool setBuffers(float* D_volumeData, unsigned int volumePitch, float* D_projData, unsigned int projPitch); - virtual bool copyDataToGPU(const float* pfSinogram, unsigned int iSinogramPitch, float fSinogramScale, + virtual bool 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); |