diff options
author | Willem Jan Palenstijn <WillemJan.Palenstijn@uantwerpen.be> | 2014-04-16 11:13:26 +0000 |
---|---|---|
committer | wpalenst <WillemJan.Palenstijn@uantwerpen.be> | 2014-04-16 11:13:26 +0000 |
commit | 959f476f456b147999649ec3a8cca10017b2ad6c (patch) | |
tree | 94964827cf31c9c16d1659d5a6c4940aee1a0796 /cuda | |
parent | 0c77eee16e2f4161c1ebc110b15ce6563d4a96c2 (diff) | |
download | astra-959f476f456b147999649ec3a8cca10017b2ad6c.tar.gz astra-959f476f456b147999649ec3a8cca10017b2ad6c.tar.bz2 astra-959f476f456b147999649ec3a8cca10017b2ad6c.tar.xz astra-959f476f456b147999649ec3a8cca10017b2ad6c.zip |
Add support for short-scan fan-beam FBP
Note that currently angles have to be negative for this to work.
(This should be changed.)
Diffstat (limited to 'cuda')
-rw-r--r-- | cuda/3d/fdk.cu | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/cuda/3d/fdk.cu b/cuda/3d/fdk.cu index fd5a8a2..45b6a28 100644 --- a/cuda/3d/fdk.cu +++ b/cuda/3d/fdk.cu @@ -267,7 +267,11 @@ __global__ void devFDK_ParkerWeight(void* D_projData, unsigned int projPitch, un //const float fGamma = atanf(fU / fCentralRayLength); //const float fBeta = gC_angle[angle]; const float fGamma = atanf(fU / fCentralRayLength); - const float fBeta = -gC_angle[angle]; + float fBeta = -gC_angle[angle]; + if (fBeta < 0.0f) + fBeta += 2*M_PI; + if (fBeta >= 2*M_PI) + fBeta -= 2*M_PI; // compute the weight depending on the location in the central fan's radon // space |