这篇文章主要为大家详细介绍了python增加图像对比度,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本代码实现的是,在旋转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
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
版权声明:
本站所有资源均为站长或网友整理自互联网或站长购买自互联网,站长无法分辨资源版权出自何处,所以不承担任何版权以及其他问题带来的法律责任,如有侵权或者其他问题请联系站长删除!站长QQ754403226 谢谢。
- 上一篇: Python 控制终端输出文字的实例
- 下一篇: 如何使用python爬虫爬取要登陆的网站