def get_area_distribution(tracks, fit=False):
area = np.sum(tracks > 0, axis=(1, 2))
if not fit:
count = np.bincount(area)
probability = count / float(np.sum(count))
return stats.rv_discrete(
a=0,
b=np.max(probability.shape[0]),
name='signal distribution',
values=(np.arange(count.shape[0]), probability)
)
else:
exp_params = stats.expon.fit(area)
return stats.expon(*exp_params)
评论列表
文章目录