Understanding the inner workings of the radon function (from skimage)

Kaloyan Marinov kaloyan.at.uw at gmail.com
Thu Apr 10 07:25:07 EDT 2014


I am familiar with the mathematical theory of the continuous Radon 
transform, but am having trouble understanding its discrete implementation 
from skimage. Below I list my two questions on the topic.

*Question 1*

Let us define a matrix A as follows:

A = np.zeros( (4,4) )
A[1:3,1:3] = 1

Compute its Radon transform as follows:

radTranfOfA = skimage.transform.radon(A,[45])

This computed radTranfOfA to be the following array of shape (6,1):

array([[ 0.        ],
       [ 0.        ],
       [ 0.87867966],
       [ 2.42893219],
       [ 0.87867966],
       [ 0.        ]])

Could someone explain to me (preferably in a mathematically precise way) 
exactly how Python computed this?

*Question 2*

I have attempted to study the radon_transform.py source-code file from the 
skimage package, but the definition of the radon function there depends on 
a function called _warp_fast which is imported from _warps_cy. However, I 
cannot see the sourcecode for _warps_cy; could anyone suggest a way around 
this (or a precise mathematical explanation of what _warps_cy does and how 
its output is stored)?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/scikit-image/attachments/20140410/975c8fc0/attachment.html>


More information about the scikit-image mailing list