0

Trying to implement a simulation of computed tomography back projection in javascript/HTML5 canvas. Trying to figure the correct approach for dying a back projections and I have been studying this presentation.

On pp. 9-13 of the above presentation a step by step example of back projection is shown. This example involves a 2x2 matrix (with 4 projections and a total of 10 line integrals) and computes the line integrals of each projection where the value of each corresponding line integral is added to each matrix cell, respectively.

Subsequently the total number of line integrals is subtracted from the value of each matrix cell. Finally the resulting value in each matrix cell is divided by the number of projections minus one.

Does this approach hold in general for larger, say a 100x100 matrix with larger cell values, say around 100?

halfer
  • 19,824
  • 17
  • 99
  • 186
  • 2
    I'm voting to close this question as off-topic because it is not about programming – nikoshr Aug 12 '17 at 11:11
  • Is this a maths question? If so, there is a maths site (see links in footer) but do please check what is on-topic there first. Given the tag, is it really related to JavaScript? – halfer Aug 12 '17 at 12:21
  • Yes it holds. However, the image shows very easy angles. To update the voxels in angle =12.23542 degrees is quite more complicated, as you need to weight the updates of each voxel and you need to know which voxels are actually "on path". – Ander Biguri Aug 14 '17 at 14:01

1 Answers1

0

Basically, yes the backprojection follows similar idea. However, in reality, the backprojection is also depending on the setup of the x-ray beam (parallel beam, fan beam). Therefore the best way is to draw some lines and figure out the complete geometry of each beam. Then you need to perform interpolation to convert the value of the beam to each image pixel.

Nick X Tsui
  • 2,737
  • 6
  • 39
  • 73