OpenCV:图像增强ImageEnhance

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/u013419318/article/details/102544184

1 说明

本文实例讲述了Python图像的增强处理操作。分享出来供大家参考,python中PIL模块中有一个叫做ImageEnhance的类,该类专门用于图像的增强处理,不仅可以增强(或减弱)图像的亮度、对比度、色度,还可以用于增强图像的锐度。

2 代码 

from PIL import Image
from PIL import ImageEnhance
import cv2
import matplotlib.pylab as plt
import os
import numpy as np

# #原始图像
# image = Image.open('lena.jpg')
# image.show()
#亮度增强
def brightness_ImageEnhance(img):
    enh_bri = ImageEnhance.Brightness(img)
    brightness = 2
    image_brightened = enh_bri.enhance(brightness)
    # image_brightened.show()
    return image_brightened

#色度增强
def color_ImageEnhance(img):
    enh_col = ImageEnhance.Color(img)
    color = 1.5
    image_colored = enh_col.enhance(color)
    # image_colored.show()
    return image_colored

#对比度增强
def contrast_ImageEnhance(img):
    enh_con = ImageEnhance.Contrast(img)
    contrast = 5
    image_contrasted = enh_con.enhance(contrast)
    # image_contrasted.show()
    return image_contrasted
#锐度增强
def sharpness_ImageEnhance(img):
    enh_sha = ImageEnhance.Sharpness(img)
    sharpness = 3.0
    image_sharped = enh_sha.enhance(sharpness)
    # image_sharped.show()
    return image_sharped

def image_enhance(source_path,save_path):
    if not os.path.exists(source_path):
        return
    if not os.path.exists(save_path):
        os.makedirs(save_path)

    for file in os.listdir(source_path):
        print(file)
        image = Image.open(os.path.join(source_path,file))
        image_enh = brightness_ImageEnhance(image)
        cv2.imwrite(os.path.join(save_path,file),np.array(image_enh))


if __name__ == '__main__':
    image_enhance('F:\\LPT_Gan_data(1)\\LPT_Gan_data\\data','F:\\LPT_Gan_data(1)\\LPT_Gan_data\\data(enhance)')

猜你喜欢

转载自blog.csdn.net/u013419318/article/details/102544184