Python curve = np.column_stack((x, y))

curve = np.column_stack((x, y))

这句代码的意思是将两个一维数组 xy 组合成一个二维数组 curve

具体来说,xy 是两个长度相等的一维数组,表示了曲线上的一些点的横坐标和纵坐标。np.column_stack() 函数将这两个一维数组按列合并成一个二维数组,其中第一列是 x 数组,第二列是 y 数组。所以 curve 的形状是 (len(x), 2),其中 len(x) 表示 x 数组的长度。

# 显示相机响应函数曲线
x = np.arange(0, 256)
y = np.squeeze(responseDebevec)
curve = np.column_stack((x, y))
np.savetxt('response_curve.csv', curve, delimiter=',')
plt.plot(x, y)
plt.show()

我用在了拟合相机响应函数的编码中,我发现很多大神的HDR源代码里都没有显示CRF曲线的这段代码,研究了好多天才明白应该怎样plt出曲线,放在这里给像我一样的小白来参考。

得到该图:

Python curve = np.column_stack((x, y))_第1张图片 

   我的相机响应曲线比较奇怪,因为我给的三张多曝光图像就是数据比较特殊的实验图像,现在在想办法拟合出更好的相机响应曲线出来,比如先设定一个期望函数,再去把图像数据放进去拟合等。

你可能感兴趣的:(python,numpy,算法)