对于我的项目,我需要一个图表,显示视频中对比度的质量如何随时间变化。目前我正在为每一帧计算图像直方图的CDF - 现在我需要将其转换为某种百分比/质量指标。我正在考虑将CDF与理想的CDF进行比较(可能使用直方图均衡来为每个单独的帧找到一个完美的CDF?)或其他一些值或函数,如假设一个完全平坦的直方图是理想的?
这是我的小脚本的一部分 - 我也是python和图像/视频分析的新手 - 我很欣赏正确方向的暗示和/或一些关于如何比较CDF或其他功能的示例代码python使用Numpy或OpenCV函数。提前谢谢!
img = cv2.imread('picture.png')
hist,bins = np.histogram(img.ravel(),256,[0,256])
plt.hist(img.ravel(),256,[0,256])
cdf = hist.cumsum()
cdf_normalized = cdf * hist.max()/ cdf.max()
plt.plot(cdf_normalized, color = 'r')