What is the matrix representation of Radon transform?

14 views (last 30 days)
I want to create a Radon transform matrix R, such that when it is multiplied with the vectorized image, the output is vectorized sinogram.
If the image is X is M×N and we want to find the Radon transform matrix R, then we know that R is LP×MN and that the Radon transform is given by vec(Y) = R⋅vec(X) which is of size LP×1, a vectorized version of sinogram Y of size L×P.
How do I find R?
Thanks,
Janki

Answers (1)

Subrata Sarkar
Subrata Sarkar on 1 Feb 2019
Hi, I don't know if the question is still relevant to you. Nonetheless, I came across the same problem recently and wrote a MATLAB script to solve the problem. It's not a very efficient way to solve it though, but it serves the purpose.
I basically used the linearity of the Radon transform, we can get the matrix form by computing the Radon transform using the 'radon' MATLAB function for the standard basis (i.e., matrix of all zeros, but a single one).
One thing to note is that, the matrix R is actually a function of projection angles θ.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!