Initialization |
Setting αk,i,1, αmax, c1, c2, lmax, D, kmax; |
Initializing f⃑0, k = 0, τ = 1; |
Obtaining an RI u⃑; |
Reconstruction procedure (for any channel) |
while k < kmax
|
k + +; |
Updating f⃑k−1 to using the OS-SART method; |
Initializing the patch index i; |
Repeat (until patch window moves over entire image) |
Subtracting the DC component to get and ũi; |
Determining the update direction p⃑k,iwith and ũi; |
Determining the step length αk,i,* using , ũi and p⃑k,i according to conditions (13) and (15); |
Updating ith patch using equation (10); |
Normalizing the patch and adding back the DC component to get ; |
i + +; |
end (Repeat) |
Averaging different values for the same pixel to get the image estimate f⃑k+1; |
Accelerating the result by using FISTA; |
Calculate dk; |
If k mod T = 0, ; |
If the difference of d̄τ and d̄τ−1 is small enough, break; |
τ + +; |
end(if) |
end (while) |
Output:f⃑k+1
|