python+opencv的直方图均衡化

本文所用文件的链接

链接:https://pan.baidu.com/s/1RWNVHuXMQleOrEi5vig_bQ
提取码:p57s

亮度提升

opencv提供了直方图均衡化的方式实现亮度提升, 更有利于边缘识别与物体识别模型的训练.

# 彩色图转灰度图
gray = cv.cvtcolor(img, cv.COLOR_BGR2GRAY)
# 直方图均衡化
equalized_gray = cv.equalizeHist(gray)

案例:

"""
直方图均衡化 
"""
import cv2 as cv

img = cv.imread('../ml_data/sunrise.jpg')
cv.imshow('img', img)
gray = cv.cvtColor(img, cv.COLOR_BGR2GRAY)
cv.imshow('gray', gray)
equalized_gray = cv.equalizeHist(gray)
cv.imshow('equalized_gray', equalized_gray)
# 对彩色图像提亮
# YUV: 亮度, 色度, 饱和度
yuv = cv.cvtColor(img, cv.COLOR_BGR2YUV)
yuv[:,:,0] = cv.equalizeHist(yuv[:,:,0])
equalized_color = cv.cvtColor(yuv, cv.COLOR_YUV2BGR)
cv.imshow('equalized_color', equalized_color)

cv.waitKey()

python+opencv的直方图均衡化_第1张图片
python+opencv的直方图均衡化_第2张图片
python+opencv的直方图均衡化_第3张图片
python+opencv的直方图均衡化_第4张图片

你可能感兴趣的:(opencv,计算机视觉,人脸识别,图像识别)