What is the matrix representation of Radon transform?

5 次查看(过去 30 天)
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

回答(1 个)

Subrata Sarkar
Subrata Sarkar 2019-2-1
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!

Translated by