TABLE I.
Pseudo-code for the SF-TR forward projector with the A1 amplitude method (SF-TR-A1) and the A2 method (SF-TR-A2)
• Initialize projection view array to zero, i.e., for k = 0, … , Ns − 1 and l = 0, … , Nt − 1 |
• For each row n1 = 0, 1, … , N1 − 1 of : |
1) For each column n2 = 0, 1, … , N2 − 1: |
a) Compute trapezoid vertices τ0, τ1, τ2, τ3 in (38) using (9). |
b) Determine indices (sk values) of detector cells that intersect [τ0, τ3], i.e. . |
c) Compute transaxial footprint using (41) and (43) for all these sk values and store them. |
d) Compute using (32) (SF-TR-A2 only) |
e) For each slice n3 = 0, 1, … , N3 − 1: |
i) Determine indices (tl values) of detector cells that intersect [t−, t+], i.e., . |
ii) For each tl value: |
A) Compute using (42). |
B) For each sk value: |
– Compute projection where for SF- TR-A1, for SF-TR-A2. |
– Update projection view . |
• Scale all the projection view by l1(sk, tl; β) using (36) for SF-TR-A1 or by lθ(sk, tl) using (35) for SF-TR-A2. |