日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

图像调整亮度饱和度 c语言,数据增强-亮度-对比度-色彩饱和度-色调-锐度 不改变图像大小...

發(fā)布時(shí)間:2023/12/8 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 图像调整亮度饱和度 c语言,数据增强-亮度-对比度-色彩饱和度-色调-锐度 不改变图像大小... 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

# coding=utf-8

import os

import os

import cv2

import math

import numpy as np

from PIL import Image

from PIL import ImageEnhance

"""

1、對比度:白色畫面(最亮?xí)r)下的亮度除以黑色畫面(最暗時(shí))下的亮度;

2、色彩飽和度::彩度除以明度,指色彩的鮮艷程度,也稱色彩的純度;

3、色調(diào):向負(fù)方向調(diào)節(jié)會(huì)顯現(xiàn)紅色,正方向調(diào)節(jié)則增加黃色。適合對膚色對象進(jìn)行微調(diào);

4、銳度:是反映圖像平面清晰度和圖像邊緣銳利程度的一個(gè)指標(biāo)。

"""

def compute(img):

per_image_Rmean = []

per_image_Gmean = []

per_image_Bmean = []

per_image_Bmean.append(np.mean(img[:, :, 0]))

per_image_Gmean.append(np.mean(img[:, :, 1]))

per_image_Rmean.append(np.mean(img[:, :, 2]))

R_mean = np.mean(per_image_Rmean)

G_mean = np.mean(per_image_Gmean)

B_mean = np.mean(per_image_Bmean)

return math.sqrt(0.241 * (R_mean ** 2) + 0.691 * (G_mean ** 2) + 0.068 * (B_mean ** 2))

def fun_color(image, coefficient, path_save):

# 色度,增強(qiáng)因子為1.0是原始圖像

# 色度增強(qiáng) 1.5

# 色度減弱 0.8

enh_col = ImageEnhance.Color(image)

image_colored1 = enh_col.enhance(coefficient)

image_colored1.save(path_save)

def fun_Contrast(image, coefficient, path_save):

# 對比度,增強(qiáng)因子為1.0是原始圖片

# 對比度增強(qiáng) 1.5

# 對比度減弱 0.8

enh_con = ImageEnhance.Contrast(image)

image_contrasted1 = enh_con.enhance(coefficient)

image_contrasted1.save(path_save)

def fun_Sharpness(image, coefficient, path_save):

# 銳度,增強(qiáng)因子為1.0是原始圖片

# 銳度增強(qiáng) 3

# 銳度減弱 0.8

enh_sha = ImageEnhance.Sharpness(image)

image_sharped1 = enh_sha.enhance(coefficient)

image_sharped1.save(path_save)

def fun_bright(image, coefficient, path_save):

# 變亮 1.5

# 變暗 0.8

# 亮度增強(qiáng),增強(qiáng)因子為0.0將產(chǎn)生黑色圖像; 為1.0將保持原始圖像。

enh_bri = ImageEnhance.Brightness(image)

image_brightened1 = enh_bri.enhance(coefficient)

image_brightened1.save(path_save)

def show_all():

file_root = "/media/data_1/data/images/"

save_root = "/media/py/save/"

list_file = os.listdir(file_root)

cnt = 0

for img_name in list_file:

cnt += 1

print("cnt=%d,img_name=%s" % (cnt, img_name))

path = file_root + img_name

name = img_name.replace(".jpg", "")

image = Image.open(path)

list_coe = [0.5,1,3]

for val in list_coe:

path_save_bright = save_root + name + "_bri_" + str(val) + ".jpg"

fun_bright(image, val, path_save_bright)

path_save_color = save_root + name + "_color_" + str(val) + ".jpg"

fun_color(image, val, path_save_color)

path_save_contra = save_root + name + "_contra_" + str(val) + ".jpg"

fun_Contrast(image, val, path_save_contra)

path_save_sharp = save_root + name + "_sharp_" + str(val) + ".jpg"

fun_Sharpness(image, val, path_save_sharp)

def my_aug():

file_root = "/media/data_1/data/images/"

save_root = "/media/data_2/ret/img_aug/"

list_file = os.listdir(file_root)

cnt = 0

for img_name in list_file:

cnt += 1

print("cnt=%d,img_name=%s" % (cnt, img_name))

path = file_root + img_name

name = img_name.replace(".jpg", "")

image = Image.open(path)

img = cv2.imread(path)

mean_1 = compute(img)

cof = 0.0

if mean_1 < 40:

cof = 3.5

elif mean_1 < 60:

cof = 3

elif mean_1 < 80:

cof = 2

elif mean_1 < 90:

cof = 1.5

elif mean_1 < 110:

cof = 1.1

elif mean_1 > 130:

cof = 0.5

else:

cof = 0.75

cof_contrast = 0.0

if cof>1:

cof_contrast = 1.5

else:

cof_contrast = 0.8

path_save_bright = save_root + name + "_bri_" + str(cof) + '.jpg'

fun_bright(image, cof, path_save_bright)

path_save_sharp = save_root + name + "_sharp_" + str(2) + '.jpg'

fun_Sharpness(image, 2, path_save_sharp)

path_save_contra = save_root + name + "_contra_" + str(cof_contrast) + ".jpg"

fun_Contrast(image, cof_contrast, path_save_contra)

path_save_color = save_root + name + "_color_" + str(1.5) + ".jpg"

fun_color(image, 1.5, path_save_color)

if __name__ == "__main__":

#show_all()

my_aug()

總結(jié)

以上是生活随笔為你收集整理的图像调整亮度饱和度 c语言,数据增强-亮度-对比度-色彩饱和度-色调-锐度 不改变图像大小...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。