如何在Python中计算图像的经验累积分布ecdf?

问题描述

我正在尝试计算Python中图像的经验累积分布。最佳做法是什么?而且我还需要将结果存储在数组中,以便可以在分析的后续步骤中使用它。

我正在使用此功能,但不确定这样做是否正确:

`def ecdf(data):
    x = np.sort(data.flatten())
    n = x.size
    y = np.arange(1,n+1) / n
    return (x,y)`

解决方法

这是我现在正在执行的操作,并且可以正常工作(对于灰度图像):

  1. 对于高斯正态分布:

`

def Ghist(image):
    '''compute eCDF of an image'''
    data_flatten = image.flatten()
    data_sort = np.sort(data_flatten)
    values,bins = np.histogram(data_sort,normed=True)

    return (bins,values)

`

  1. 对于累积分布:

`

def ecdf(image):
    '''compute eCDF of an image'''
    data_flatten = image.flatten()
    data_sort = np.sort(data_flatten)
    values,normed=True)
    data_cum = np.cumsum(values)

    return (bins,data_cum)

`

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...