您好,登錄后才能下訂單哦!
Python中怎么批量修改圖片亮度和飽和度,相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。
開始之前,你要確保Python和pip已經(jīng)成功安裝在電腦上噢,如果沒有,請訪問這篇文章:超詳細(xì)Python安裝指南 進行安裝。
Windows環(huán)境下打開Cmd(開始—運行—CMD),蘋果系統(tǒng)環(huán)境下請打開Terminal(command+空格輸入Terminal). 輸入以下命令安裝我們所需要的模塊:
pip install numpy
pip install opencv-python
看到 Successfully installed xxx 則說明安裝成功。
這一部分,我們將開發(fā)出一個能夠調(diào)整圖像亮度和飽和度的工具,而且這個工具支持滑動調(diào)整。其實放到別的語言里,這可是個小工程,但是放到Python里,我們用50行代碼就能解決了。
首先是加載圖片,然后需要將圖片轉(zhuǎn)化為HLS模式才能夠調(diào)整亮度和飽和度。這是因為默認(rèn)的圖片顏色空間是RGB,它非常適合顯示器顯示,但由于只有三個顏色分類,并不適合圖像處理。
而HLS模式相對于RGB顏色空間則復(fù)雜得多,HLS分別代表H: Hue(色調(diào)),L: Lightness(亮度), S: Saturation(飽和度)。其顏色空間是一個三維空間,如下圖所示:
這樣的顏色空間才使得我們可以調(diào)整圖片的細(xì)節(jié)部分。Python代碼中,將RGB轉(zhuǎn)化為HLS空間是很簡單的,兩行代碼就能做到:
然后我們需要做兩個滑動塊,一個調(diào)節(jié)亮度,一個調(diào)節(jié)飽和度:
調(diào)節(jié)前還需要保存一下原圖,所以我們會在內(nèi)存里復(fù)制一個新的變量用于調(diào)節(jié)圖片,然后獲得兩個滑動塊的值,再根據(jù)值進行亮度和飽和度的調(diào)整:
效果如下圖所示:
到這里還不夠,由于是while循環(huán)支持的調(diào)節(jié),我們還需要讓其可以退出和保存:
這樣,按s鍵可以保存圖片并退出,按ESC鍵可以直接退出編輯器。完整文字版50行代碼請在Python實用寶典公眾號后臺回復(fù):批量修改圖片 獲得。
前面根據(jù)我們的小工具獲得了需要的飽和度和亮度,把這對值記下來就可以批量修改圖片了。當(dāng)然,我們沒有自動批量修改到正確值這么逆天的功能,這個工具只適合相同場景下,能夠用同一對亮度和飽和度進行調(diào)整的圖片:
這部分比剛剛制作的工具簡單,可以說是工具的簡化版。分為以下六個步驟:
1.加載圖片。
2.轉(zhuǎn)化為HLS空間。
3.調(diào)整亮度。
4.調(diào)整飽和度。
5.轉(zhuǎn)化為RGB空間。
6.保存。
然后我們只需要批量地將圖片傳入該函數(shù),就能實現(xiàn)批量轉(zhuǎn)化:
看完上述內(nèi)容,你們掌握Python中怎么批量修改圖片亮度和飽和度的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。