• 大小: 3KB
    文件类型: .py
    金币: 1
    下载: 0 次
    发布日期: 2021-06-16
  • 语言: Python
  • 标签: Python3  

资源简介

使用Python3实现了图片的亮度的自适应调整的算法,解决了图片亮度不一的问题。

资源截图

代码片段和文件信息

# -*- coding: utf-8 -*-
# 作者:    ZFJ
# 创建时间:2019/7/2211:02
# 文件:    gamma.py
# IDE:     PyCharm

“““
算法的核心思想如下:首先将输入的图像从RGB模式转换到HSV模式,
我们保持每幅图像的色调和饱和度不变,只改变它的亮度,
使用多尺度的高斯函数进行卷积,并使用二位的伽马函数进行校正处理,
然后将矫正后的图像重新合成彩色的图像,从HSV模式转换到RGB模式
“““
# img是原图,rgb是输出图像,p是处理前和处理后的平均亮度差
import cv2
import math
import numpy as np
from skimage import color
import os

# 文件夹路径
path = ‘G:/Competition data/OCR-train-publish-v2/test/‘
# 获取该文件夹中的所有文件
files = os.listdir(path)
# 检查文件路径是否存在问题
# print(files)
# 定义一个全局参数用于对输出图片命名
global i
i = 1
# 参数
HSIZE = 25
q = math.sqrt(2)
SIGMA1 = 15
SIGMA2 = 80
SIGMA3 = 250
# 对所有文件进行遍历处理
for file in files:
    # 判断file是否为文件夹
    if not os.path.isdir(file):
        # 读取图片
        im = cv2.imread(path+file)
        # 检查是否读取到了图像,不然下面就GG了
        # print(im)
        # 显示原图
        # cv2.imshow(‘input.jpg‘ im)
        # 将rgb图像转换为hsv图像
        hsv = color.rgb2hsv(im)
        # 分离hsv通道
        h s v = cv2.split(hsv)
        # 对亮度v通道进行不同参数的高斯滤波
        F1 = cv2.GaussianBlur(v (HSIZE HSIZE) 

评论

共有 条评论