使用SciPy进行径向采样

时间:2012-09-21 15:59:11

标签: python image-processing numpy scipy

我正在使用scipy.ndimage进行图像处理。给定一个环形物体,我想围绕它的圆周产生一个“轮廓”。轮廓可能类似于环周围不同点的厚度测量值,或沿环“厚度”的平均信号。

在我看来,如果我能先获得好的标签图片,我可以使用ndimage.mean

如果我的戒指看起来像这样,

 A = array([[0, 0, 0, 0, 1, 0, 0, 0, 0, 0],
            [0, 0, 1, 1, 1, 1, 1, 1, 0, 0],
            [0, 0, 1, 1, 1, 1, 1, 1, 0, 0],
            [0, 0, 1, 1, 0, 0, 1, 1, 0, 0],
            [0, 0, 1, 1, 0, 0, 1, 1, 0, 0],
            [0, 0, 1, 1, 0, 0, 1, 1, 0, 0],
            [0, 0, 1, 1, 0, 0, 1, 1, 1, 0],
            [0, 0, 1, 1, 0, 0, 1, 1, 0, 0],
            [0, 0, 1, 1, 1, 1, 1, 1, 0, 0],
            [0, 0, 0, 0, 1, 0, 0, 0, 0, 0]])

我可以使用numpy.mean( A, labels )获取labels的“资料概况”。

array([[0,  0,  0,  0,  2,  0,  0,  0,  0,  0],
       [0,  0,  1,  1,  2,  3,  4,  4,  0,  0],
       [0,  0,  1,  1,  2,  3,  4,  5,  0,  0],
       [0,  0, 16, 16,  0,  0,  5,  5,  0,  0],
       [0,  0, 15, 15,  0,  0,  6,  6,  0,  0],
       [0,  0, 14, 14,  0,  0,  7,  7,  0,  0],
       [0,  0, 13, 13,  0,  0,  8,  8,  8,  0],
       [0,  0, 13, 12,  0,  0,  9,  9,  0,  0],
       [0,  0, 12, 12, 11, 10,  9,  9,  0,  0],
       [0,  0,  0,  0, 11,  0,  0,  0,  0,  0]])

我敢打赌,有一些插值的东西会被忽略,但这就是我自己想出来的所有内容。

有没有办法生成我提出的labels图片?有没有更好的方法来生成我的个人资料?

1 个答案:

答案 0 :(得分:1)

圆(或球)上的标准概率分布是Von-Mises Fisher分布。

Scipy支持此分发:http://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.vonmises.html

因此,您应该能够使用拟合函数来查找数据的最大似然参数。