python - 尝试均衡 float64 图像时,函数 equalizeHist 中的错误 : (-215) _src. type() == CV_8UC1

标签 python opencv numpy

我正在尝试像这样均衡 1 个单 channel 图像:

img = cv2.equalizeHist(img)

但由于它是一个 float64 img,我得到以下错误:

error: (-215) _src.type() == CV_8UC1 in function equalizeHist

我该怎么做?

最佳答案

所以直方图均衡化基本上适用于灰度图像。 所以如果你想对彩色图像进行直方图均衡,你可以使用这段代码。

R, G, B = cv2.split(img)

output1_R = cv2.equalizeHist(R)
output1_G = cv2.equalizeHist(G)
output1_B = cv2.equalizeHist(B)

equ = cv2.merge((output1_R, output1_G, output1_B))

关于python - 尝试均衡 float64 图像时,函数 equalizeHist 中的错误 : (-215) _src. type() == CV_8UC1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39764885/

相关文章:

opencv - Asift 和 openCV?

visual-studio-2008 - 如何在Visual C++上设置OpenCV 2.0?

python - 将图像中的所有其他颜色更改为黑色,除了 Python OpenCV/Numpy 中指定的一种颜色

python - pandas 与复杂类型列不兼容的形状

python - 循环两个不同的 Pandas Dataframes

python - 传递给函数的对象是否作为参数,得到重复

python - Django Restful API 返回空 Json

python - 为什么这个类不能被 JSon 序列化?

Python-使用 numpy 将 dat 文件导入数组

python - %matplotlib 笔记本显示空白直方图