我有一个暗图像(原始格式),并绘制图像的图像和分布 . 正如您所看到的那样,在16处有一个高峰,请忽略它 . 我想通过这个直方图拟合高斯曲线 . 我已经使用这种方法来适应:Un-normalized Gaussian curve on histogram . 然而;我的高斯拟合永远不会接近它应该是什么 . 将图像转换为正确的图形格式或者出现其他问题时,我做错了吗?
这是我用来生成此数据的当前代码:
import numpy as np
import matplotlib.pyplot as plt
from scipy.optimize import curve_fit
def fitGaussian(x,a,mean,sigma):
return (a*np.exp(-((x-mean)**2/(2*sigma))))
fname = 'filepath.raw'
im = np.fromfile(fname,np.int16)
im.resize([3056,4064])
plt.figure()
plt.set_cmap(viridis)
plt.imshow(im, interpolation='none', vmin=16, vmax=np.percentile(im.ravel(),99))
plt.colorbar()
print 'Saving: ' + fname[:-4] + '.pdf'
plt.savefig(fn