Python圖像處理庫(kù)PIL的ImageEnhance模塊使用介紹
ImageEnhance模塊提供了一些用于圖像增強(qiáng)的類。
一、ImageEnhance模塊的接口
所有的增強(qiáng)類都實(shí)現(xiàn)了一個(gè)通用的接口,包括一個(gè)方法:
enhancer.enhance(factor) ⇒ image
該方法返回一個(gè)增強(qiáng)過(guò)的圖像。變量factor是一個(gè)浮點(diǎn)數(shù),控制圖像的增強(qiáng)程度。變量factor為1將返回原始圖像的拷貝;factor值越小,顏色越少(亮度,對(duì)比度等),更多的價(jià)值。對(duì)變量facotr沒(méi)有限制。
二、ImageEnhance模塊的Color類
顏色增強(qiáng)類用于調(diào)整圖像的顏色均衡,在某種程度上類似控制彩色電視機(jī)。該類實(shí)現(xiàn)的增強(qiáng)接口如下:
ImageEnhance.Color(image) ⇒ Color enhancer instance
創(chuàng)建一個(gè)增強(qiáng)對(duì)象,以調(diào)整圖像的顏色。增強(qiáng)因子為0.0將產(chǎn)生黑白圖像;為1.0將給出原始圖像。
ImageEnhance.Color類的實(shí)例:
>>> from PIL import Image, ImageEnhance
>>> im02 =Image.open("D:\\Code\\Python\\test\\img\\test02.jpg")
>>> im_1 = ImageEnhance.Color(im02).enhance(0.1)
>>> im_5 = ImageEnhance.Color(im02).enhance(0.5)
>>> im_8 =ImageEnhance.Color(im02).enhance(0.8)
>>> im_20 = ImageEnhance.Color(im02).enhance(2.0)
從前面的介紹,我們可以得知函數(shù)enhance()的參數(shù)factor決定著圖像的顏色飽和度情況。從0.1到0.5,再到0.8,2.0,圖像的顏色飽和度依次增大。
圖像im_1如下:
圖像im_5如下:

圖像im_8如下:

圖像im_20如下:

三、ImageEnhance模塊的Brightness類
亮度增強(qiáng)類用于調(diào)整圖像的亮度。
ImageEnhance.Brightness(image)⇒ Brightnessenhancer instance
創(chuàng)建一個(gè)調(diào)整圖像亮度的增強(qiáng)對(duì)象。增強(qiáng)因子為0.0將產(chǎn)生黑色圖像;為1.0將保持原始圖像。
ImageEnhance.Brightness類的實(shí)例:
>>> from PIL import Image, ImageEnhance
>>> im02 =Image.open("D:\\Code\\Python\\test\\img\\test02.jpg")
>>> im_2 = ImageEnhance.Brightness(im02).enhance(0.2)
>>> im_5 = ImageEnhance.Brightness(im02).enhance(0.5)
>>> im_8 =ImageEnhance.Brightness (im02).enhance(0.8)
>>> im_20 =ImageEnhance.Brightness (im02).enhance(2.0)
該函數(shù)enhance()的參數(shù)factor決定著圖像的亮度情況。從0.1到0.5,再到0.8,2.0,圖像的亮度依次增大。
圖像im_2如下:

圖像im_5如下:

圖像im_8如下:

圖像im_20如下:

四、ImageEnhance模塊的Contrast類
對(duì)比度增強(qiáng)類用于調(diào)整圖像的對(duì)比度。類似于調(diào)整彩色電視機(jī)的對(duì)比度。
ImageEnhance.Contrast(image)⇒ Contrast enhancer instance
創(chuàng)建一個(gè)調(diào)整圖像對(duì)比度的增強(qiáng)對(duì)象。增強(qiáng)因子為0.0將產(chǎn)生純灰色圖像;為1.0將保持原始圖像。
ImageEnhance.Contrast類的實(shí)例:
>>> from PIL import Image, ImageEnhance
>>> im02 =Image.open("D:\\Code\\Python\\test\\img\\test02.jpg")
>>> im_1 = ImageEnhance.Contrast(im02).enhance(0.1)
>>> im_5 = ImageEnhance.Contrast(im02).enhance(0.5)
>>> im_8 =ImageEnhance.Contrast (im02).enhance(0.8)
>>> im_20 =ImageEnhance.Contrast (im02).enhance(2.0)
該函數(shù)enhance()的參數(shù)factor決定著圖像的對(duì)比度情況。從0.1到0.5,再到0.8,2.0,圖像的對(duì)比度依次增大。
圖像im_1如下:

圖像im_5如下:

圖像im_8如下:

圖像im_20如下:

五、ImageEnhance模塊的Sharpness類
銳度增強(qiáng)類用于調(diào)整圖像的銳度。
ImageEnhance.Sharpness(image)⇒ Sharpness enhancer instance
創(chuàng)建一個(gè)調(diào)整圖像銳度的增強(qiáng)對(duì)象。增強(qiáng)因子為0.0將產(chǎn)生模糊圖像;為1.0將保持原始圖像,為2.0將產(chǎn)生銳化過(guò)的圖像。
ImageEnhance.Sharpness類的實(shí)例:
>>> from PIL import Image, ImageEnhance
>>> im02 =Image.open("D:\\Code\\Python\\test\\img\\test02.jpg")
>>> im_0 = ImageEnhance.Sharpness(im02).enhance(0.0)
>>> im_20 =ImageEnhance.Sharpness (im02).enhance(2.0)
>>> im_30 =ImageEnhance.Sharpness (im02).enhance(3.0)
該函數(shù)enhance()的參數(shù)factor決定著圖像的銳度情況。從0.0到2.0,再到3.0,圖像的銳度依次增大。
圖像im_0如下:

圖像im_20如下:

圖像im_30如下:

六、ImageEnhance示例
#-*- coding: UTF-8 -*-
from PIL import Image
from PIL import ImageEnhance
#原始圖像
image = Image.open('lena.jpg')
image.show()
#亮度增強(qiáng)
enh_bri = ImageEnhance.Brightness(image)
brightness = 1.5
image_brightened = enh_bri.enhance(brightness)
image_brightened.show()
#色度增強(qiáng)
enh_col = ImageEnhance.Color(image)
color = 1.5
image_colored = enh_col.enhance(color)
image_colored.show()
#對(duì)比度增強(qiáng)
enh_con = ImageEnhance.Contrast(image)
contrast = 1.5
image_contrasted = enh_con.enhance(contrast)
image_contrasted.show()
#銳度增強(qiáng)
enh_sha = ImageEnhance.Sharpness(image)
sharpness = 3.0
image_sharped = enh_sha.enhance(sharpness)
image_sharped.show()
到此這篇關(guān)于Python圖像處理庫(kù)PIL的ImageEnhance模塊使用介紹的文章就介紹到這了,更多相關(guān)PIL ImageEnhance模塊內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
深入理解Python虛擬機(jī)中字節(jié)(bytes)的實(shí)現(xiàn)原理及源碼剖析
在本篇文章當(dāng)中主要給大家介紹在?cpython?內(nèi)部,bytes?的實(shí)現(xiàn)原理、內(nèi)存布局以及與?bytes?相關(guān)的一個(gè)比較重要的優(yōu)化點(diǎn)——?bytes?的拼接,需要的可以參考一下2023-03-03
Python使用Selenium實(shí)現(xiàn)淘寶搶單的流程分析
這篇文章主要介紹了Python使用Selenium實(shí)現(xiàn)淘寶搶單的流程分析,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-06-06
實(shí)例講解Python中浮點(diǎn)型的基本內(nèi)容
在本文里小編給大家整理了關(guān)于Python中浮點(diǎn)型的基本知識(shí)點(diǎn)內(nèi)容,有興趣的朋友們學(xué)習(xí)下。2019-02-02
Python基礎(chǔ)語(yǔ)法(Python基礎(chǔ)知識(shí)點(diǎn))
這篇文章主要介紹了Python基礎(chǔ)語(yǔ)法(Python基礎(chǔ)知識(shí)點(diǎn)),需要的朋友可以參考下2016-02-02
python編寫一個(gè)會(huì)算賬的腳本的示例代碼
這篇文章主要介紹了python編寫一個(gè)會(huì)算賬的腳本,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-06-06
Python使用ftplib實(shí)現(xiàn)簡(jiǎn)易FTP客戶端的方法
這篇文章主要介紹了Python使用ftplib實(shí)現(xiàn)簡(jiǎn)易FTP客戶端的方法,實(shí)例分析了ftplib模塊相關(guān)設(shè)置與使用技巧,需要的朋友可以參考下2015-06-06
Python實(shí)現(xiàn)圖片識(shí)別加翻譯功能
這篇文章主要介紹了Python使用百度AI接口實(shí)現(xiàn)圖片識(shí)別加翻譯功能,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-12-12

