首頁 >後端開發 >Python教學 >四行程式碼,Python搞定美圖秀!

四行程式碼,Python搞定美圖秀!

WBOY
WBOY轉載
2023-04-12 21:52:061668瀏覽

四行程式碼,Python搞定美圖秀!

我們平常使用一些影像處理軟體時,常常會看到其對影像的亮度、對比度、色度或銳利度進行調整。你是不是覺得這種技術的底層實作很高大上?

其實最基礎的實作原理,用 Python 實作只需要幾行程式碼,學會後你也可以進行簡單的影像增強處理了。

影像增強哪一個強

Python 中PIL 模組中有一個叫做ImageEnhance 的類,該類專門用於影像的增強處理,不僅可以增強(或減弱)影像的亮度、對比度、色度,也可以用於增強影像的銳利度。

要使用這個模組,你必須先安裝PIL函式庫:

pip install pillow

映像增強處理

讀取映像

image = Image.open('girl.jpeg')
image.show()

我們的原始影像是一個拿著西紅柿的清純女孩:

四行程式碼,Python搞定美圖秀!

#亮度增強

enh_bri = ImageEnhance.Brightness(image)
brightness = 4
image_brightened = enh_bri.enhance(brightness)
image_brightened.show()

為了對比明顯,我們將原始影像的亮度增強4倍,看看效果:

四行程式碼,Python搞定美圖秀!

增強的影像過於曝光了,是不是有那麼一點刺眼?

色度增強

enh_col = ImageEnhance.Color(image)
color = 4
image_colored = enh_col.enhance(color)
image_colored.show()

同樣地,我們將原始影像的色度增強4倍,看看效果:

四行程式碼,Python搞定美圖秀!

這張圖像的色彩就比較濃厚了,頓時感覺從一個青春少女變成一個風塵女子了!

對比度增強

enh_con = ImageEnhance.Contrast(image)
contrast = 4
image_contrasted = enh_con.enhance(contrast)
image_contrasted.show()

同樣地,我們將原始影像的對比度增強4倍,看看效果:

四行程式碼,Python搞定美圖秀!

這張圖片就把細節凸顯得很明顯了,有點像很早期的那種電影畫面。

銳利度增強

enh_sha = ImageEnhance.Sharpness(image)
sharpness = 4
image_sharped = enh_sha.enhance(sharpness)
image_sharped.show()

同樣地,我們將原始影像的銳利度增強4倍,看看效果:

四行程式碼,Python搞定美圖秀!

銳度增強之後,看起來還比較可以,跟原圖相比變化沒那麼明顯。

總結

看完之後,是不是覺得很簡單?最基礎的四項影像增強技能全部只需一行程式碼就可以實現。我這裡是對影像進行增強,你也可以反向操作,只需要將係數調整為小於1就可以實現影像減弱。

當然,實際的應用中,我們一定會將這些維度綜合調優,才能達到美圖的效果。

以上是四行程式碼,Python搞定美圖秀!的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:51cto.com。如有侵權,請聯絡admin@php.cn刪除