如何解释skimage don变换的结果

时间:2018-11-19 00:28:45

标签: python image-processing fft scikit-image

我想知道如何解释skimage的radon变换的结果。该文档不是很精确。

让我们以这张图片为例。Example picture and radon transformation (sinogram) 这两条线由右侧图片中的黑点表示。 一条线为45度,另一条为135度。现在,另一个坐标是什么意思?两行都显示〜150。为什么?

我首先看了这个链接: https://www.mathworks.com/help/images/detect-lines-using-the-radon-transform.html 该代码位于matlab中,而不是来自skimage。对于我的示例,所提供的解释值的方法不起作用。 (很可能是因为它与Matlab中的算法不完全相同。至少返回的值是不同的) skimage的文档仅显示了一个简单的代码示例。不幸的是没有解释。

那么150是什么意思。如何解释该值,或者仅给出正确的图像。我将如何创建左一个?预先感谢

1 个答案:

答案 0 :(得分:3)

我认为混乱始于您绘制正弦图的方式。 Radon transform域是(alpha, s),其中alpha是法线矢量与x轴所成的角度,s是线距原点的距离(请参见here的下图)。

根据skimage radon documentation,原点是图像的中心。

因此,我认为您可以按照以下方式绘制值

ax2.imshow(sinogram, cmap=plt.cm.Greys_r,
           extent=(0, 180, -sinogram.shape[0]/2.0, sinogram.shape[0]/2.0), aspect='auto')

导致

fig2

而不是

ax2.imshow(sinogram, cmap=plt.cm.Greys_r,
           extent=(0, 180, 0, sinogram.shape[0]), aspect='auto')

导致

fig1

获取50x50的图像。

您可能已经按照here所示进行了操作。在此页面中,他们展示了如何使用iradoniradon_sart函数使用正弦图重建图像。

radon