python增加圖像對(duì)比度的方法
本代碼實(shí)現(xiàn)的是,在旋轉(zhuǎn)10度的基礎(chǔ)上,再進(jìn)行增加對(duì)比度的操作。
1 代碼:
代碼注釋中的代碼都是可以運(yùn)行的. 但是不怎么靠譜,因?yàn)槲募恢饌€(gè)編輯,有可能與原標(biāo)簽不對(duì)應(yīng),,更好的做法參考代碼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) #所有文件的個(gè)數(shù) print(total_num) #輸出文件個(gè)數(shù) for i in range(total_num): #對(duì)每張圖像進(jìn)行操作 print(count) im=img.open(filepath+str(i+21)+str("_training")+".gif") for j in range(72): im_rotate=im.rotate(j*10) #每張圖像都10°旋轉(zhuǎn)一次 #然后對(duì)其增加亮度對(duì)比度等操作 enh_con=ImageEnhance.Contrast(im_rotate) #增加對(duì)比度 得到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) #增加亮度 但是有問(wèn)題 # 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) #增加色度 但是有問(wèn)題, # 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°旋轉(zhuǎn)一次 enh_con = ImageEnhance.Contrast(im_rotate) # 增加對(duì)比度 得到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) # 增加亮度 但是有問(wèn)題 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) # 增加色度 但是有問(wèn)題, image_colored = enh_col.enhance(1.5) newname4 = r"/home/qxq/Desktop/eyedata_final/mask/brighten/" + 'Col_' + filename image_contrasted.save(newname4) j = 0
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
python函數(shù)中將變量名轉(zhuǎn)換成字符串實(shí)例
這篇文章主要介紹了python函數(shù)中將變量名轉(zhuǎn)換成字符串實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-05-05Python簡(jiǎn)單進(jìn)程鎖代碼實(shí)例
這篇文章主要介紹了Python簡(jiǎn)單進(jìn)程鎖代碼實(shí)例,本文講解了線程和進(jìn)程的相關(guān)知識(shí),然后給出了Python的實(shí)現(xiàn)代碼,需要的朋友可以參考下2015-04-04python編碼格式導(dǎo)致csv讀取錯(cuò)誤問(wèn)題(csv.reader, pandas.csv_read)
python編碼格式導(dǎo)致csv讀取錯(cuò)誤問(wèn)題(csv.reader, pandas.csv_read),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-05-05Python使用當(dāng)前時(shí)間、隨機(jī)數(shù)產(chǎn)生一個(gè)唯一數(shù)字的方法
這篇文章主要介紹了Python使用當(dāng)前時(shí)間、隨機(jī)數(shù)產(chǎn)生一個(gè)唯一數(shù)字的方法,涉及Python時(shí)間與隨機(jī)數(shù)相關(guān)操作技巧,需要的朋友可以參考下2017-09-09python實(shí)現(xiàn)登錄密碼重置簡(jiǎn)易操作代碼
這篇文章主要介紹了python實(shí)現(xiàn)登錄密碼重置簡(jiǎn)易操作,代碼簡(jiǎn)單易懂,非常不錯(cuò),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下2019-08-08