python增加图像对比度的方法
作者:qxq_sunshine 时间:2022-11-06 09:35:37
本代码实现的是,在旋转10度的基础上,再进行增加对比度的操作。
1 代码:
代码注释中的代码都是可以运行的. 但是不怎么靠谱,因为文件名被逐个编辑,有可能与原标签不对应,,更好的做法参考代码2
# -*- coding: UTF-8 -*-
from PIL import Image
from PIL import ImageEnhance
import PIL.Image as img
from PIL import ImageEnhance
import os
def rotationImage(filepath,destpath):
count = 0
filelist=os.listdir(filepath) #所有文件的文件名
total_num=len(filelist) #所有文件的个数
print(total_num) #输出文件个数
for i in range(total_num): #对每张图像进行操作
print(count)
im=img.open(filepath+str(i+21)+str("_training")+".gif")
for j in range(72):
im_rotate=im.rotate(j*10) #每张图像都10°旋转一次
#然后对其增加亮度对比度等操作
enh_con=ImageEnhance.Contrast(im_rotate) #增加对比度 得到1440张
image_contrasted=enh_con.enhance(1.5)
image_contrasted.save(destpath + str("cont_") + str((j + 1) * 10) + str("_") + str(i + 21) + str("_") + str("manual1") + '.gif')
count=count+1
# enh_sha=ImageEnhance.Sharpness(im_rotate) #增加锐度
# image_sharped=enh_sha.enhance(3.0)
# image_sharped.save(destpath + str("sharp_") + str((j + 1) * 10) + str("_") + str(i + 21) + str("_") + str("training") + '.tif')
# enh_bri=ImageEnhance.Brightness(im_rotate) #增加亮度 但是有问题
# image_bright=enh_bri.enhance(1.5)
# image_bright.save(destpath + str("bri_") + str((j + 1) * 10) + str("_") + str(i + 21) + str("_") + str("training") + '.tif')
# enh_col=ImageEnhance.Color(im_rotate) #增加色度 但是有问题,
# image_colored=enh_col.enhance(1.5)
# image_colored.save(destpath + str("col_") + str((j + 1) * 10) + str("_") + str(i + 21) + str("_") + str("training") + '.tif')
j=0
if __name__== '__main__':
filepath='/home/qxq/Desktop/eyedata_final/train/label/gif/orginal/'
destpath='/home/qxq/Desktop/eyedata_final/train/label/gif/brighten/'
rotationImage(filepath,destpath)
2 代码:
更加靠谱的做法如下:
# -*- coding: UTF-8 -*-
from PIL import Image
from PIL import ImageEnhance
import os
rootdir = r'/home/qxq/Desktop/eyedata_final/mask/original/' # 指明被遍历的文件夹
for parent, dirnames, filenames in os.walk(rootdir):
for filename in filenames:
currentPath = os.path.join(parent, filename)
im = Image.open(currentPath)
for j in range(72):
im_rotate = im.rotate(j * 10) # 每张图像都10°旋转一次
enh_con = ImageEnhance.Contrast(im_rotate) # 增加对比度 得到1440张(20*72=1440)
image_contrasted = enh_con.enhance(1.5)
newname1 = r"/home/qxq/Desktop/eyedata_final/mask/brighten/" + 'Cont_' + filename
image_contrasted.save(newname1)
enh_sha = ImageEnhance.Sharpness(im_rotate) # 增加锐度
image_sharped = enh_sha.enhance(3.0)
newname2 = r"/home/qxq/Desktop/eyedata_final/mask/brighten/" + 'sharp_' + filename
image_contrasted.save(newname2)
#
enh_bri = ImageEnhance.Brightness(im_rotate) # 增加亮度 但是有问题
image_bright = enh_bri.enhance(1.5)
newname3 = r"/home/qxq/Desktop/eyedata_final/mask/brighten/" + 'Bri_' + filename
image_contrasted.save(newname3)
#
enh_col = ImageEnhance.Color(im_rotate) # 增加色度 但是有问题,
image_colored = enh_col.enhance(1.5)
newname4 = r"/home/qxq/Desktop/eyedata_final/mask/brighten/" + 'Col_' + filename
image_contrasted.save(newname4)
j = 0
来源:https://blog.csdn.net/qxqsunshine/article/details/88315825
标签:python,图像,对比度
0
投稿
猜你喜欢
Python flask-script 模块详解
2023-03-09 06:20:20
sqlserver中delete、update中使用表别名和oracle的区别
2024-01-19 15:21:49
Python写出新冠状病毒确诊人数地图的方法
2022-09-28 06:15:13
关于设计的六个误会
2008-06-26 18:18:00
从一个项目中来看三层架构
2008-08-06 12:50:00
python em算法的实现
2021-09-18 11:45:30
jquery validate.js表单验证的基本用法入门
2023-07-02 05:30:47
Django模板获取field的verbose_name实例
2023-07-30 06:53:55
Python基于OpenCV的视频图像处理详解
2021-02-06 19:57:37
Go语言文件读写操作案例详解
2024-02-03 16:46:33
Go语言题解LeetCode1266访问所有点的最小时间示例
2023-08-29 08:10:39
WEB2.0网页制作标准教程(8)CSS布局入门
2007-09-11 13:21:00
python面试题之列表声明实例分析
2022-01-10 12:46:51
SQLServer设置客户端使用IP地址登录的图文详解
2024-01-21 10:45:07
解决Mysql报Invalid default value for ''operate_time''错误的问题
2024-01-14 08:42:16
10款最好的Web开发的 Python 框架
2023-12-21 11:26:04
django inspectdb 操作已有数据库数据的使用步骤
2024-01-24 00:16:50
实例讲解如何利用crontab定时备份MySQL
2009-01-04 13:06:00
推荐技术人员一款Python开源库(造数据神器)
2023-11-10 19:57:45
Python教程使用Chord包实现炫彩弦图示例
2022-10-10 17:50:14