如何使用python中cv2实现直方图均衡化

2025-10-31 02:07:18

1、首先创建一个python文件,导入库文件

    import sys

    import cv2

2、加载输入图像

     input_file = sys.argv[1]  # 也可以采用 input_file = 'filename.jpg'

     img = cv2.imread(input_file)

如何使用python中cv2实现直方图均衡化

3、将图像转换成灰度图

     img_gray = cv2.cvtColor(img,出)

如何使用python中cv2实现直方图均衡化

4、均衡灰度图像的直方图

     img_gray_histeq = cv2.equalizeHist(img_gray)

如何使用python中cv2实现直方图均衡化

5、均衡彩色图像的直方图

     首先将图像转换为YUV色彩空间,均衡Y通道,然后将其转换回RGB并得到        输出。http://softpixel.com/~cwright/programming/colorspace/yuv可      以查看更多YUV色彩空间。OpenCV默认用BGR格式加载图像,因此需要先      将其从BGR转化为YUV。

     

      img_yuv = cv2.cvtColor(img,cv2COLOR_BGR2GRAY)

如何使用python中cv2实现直方图均衡化

6、均衡Y通道

     img_yuv[:,:,0] = cv2.equalizeHist(img_yuv[:,:,0])

如何使用python中cv2实现直方图均衡化

7、将其转换回BGR,显示输出图像

     img_histeq = cv2.cvtColor(img_yuv,cv2.COLOR_YUV2BGR)

     cv2.imshow('Histogram equalisted - color',img_histeq)

     cv2.waitKey()

如何使用python中cv2实现直方图均衡化

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢