第455篇原創(chuàng),和30w+一起學(xué)Python! 點(diǎn)擊加載圖片 對于PS,大家都不會陌生,小編身邊的很多人都用PS進(jìn)行過圖像的編輯,PS的功能十分強(qiáng)大,但是軟件本身十分龐大,對于電腦的性能要求較高。 今天,小編就用python來實(shí)現(xiàn)PS當(dāng)中的33種圖像處理的算法,讓大家能夠不用PS,依舊可以快速的實(shí)現(xiàn)圖像的處理。 01.環(huán)境配置 本次程序用到的python庫非常的多,為了讓大家能夠使用本次的程序,我們需要明確環(huán)境的配置要求。 Pillow 7.2.0 scikit-image 0.17.2 opencv-python 3.4.10.35 numpy 1.19.0 大家需要確保自己的python環(huán)境中有上述的第三方庫,才能執(zhí)行下面我們所涉及到的程序內(nèi)容。 02.軟件整體講解 在PS的圖像處理算法中,有針對于兩張圖片實(shí)現(xiàn)的圖層混合的算法,也有針對于單張圖片處理的算法,小編對這兩種情形都有涉及,讓大家可以根據(jù)情況靈活處理。由于是面向用戶的軟件,所以我們先來看看整體的頁面布局,如下圖所示: 點(diǎn)擊加載圖片 上圖中,可以看到,軟件界面中上方存在兩種類型的算法選擇,分別是單圖算法和雙圖算法,位于界面左側(cè)的是四個不同的按鈕,分別是兩個打開本地圖片的按鈕和執(zhí)行單圖算法和雙圖算法的按鈕。 中間的三個顯示區(qū)域,則是用來顯示不同圖片的展示區(qū)。界面右上角的按鈕是用來退出程序的按鈕。 03.算法程序講解 針對于單圖和雙圖,小編一共涉及到33種算法,單圖算法中,包含了常見的素描、浮雕、球形圖、旋轉(zhuǎn)模糊、舊照片等二十余種算法,而針對于雙圖算法中,則是包含了圖片的疊加、實(shí)色混合等十余種算法。僅僅這些算法的代碼,就有八百多行,這里我們簡單的針對幾種算法的程序進(jìn)行講解演示。 1).單圖算法 把照片弄成舊照片: 點(diǎn)擊加載圖片 對于單圖算法,我們來說明一下舊照片的函數(shù),首先是將輸入圖片的RGB三通道進(jìn)行分離,然后將輸出圖片的三個通道按照不同的比例進(jìn)行融合。最后將輸出圖片中大于1的像素值設(shè)置為1,否則就保留原先的數(shù)值。其算法效果如下圖所示。 2).雙圖算法 修改照片不透明度: 點(diǎn)擊加載圖片 對于雙圖算法,更多的是對于圖層的基礎(chǔ)操作,因此在程序上會簡單一些,例如上圖中不透明度函數(shù)。函數(shù)僅僅有一行代碼,就是將兩張圖片按照不同的透明度比例進(jìn)行疊加,即可完成。其效果如下圖所示。 點(diǎn)擊加載圖片 03.界面程序講解 在對圖像算法有了介紹后,接下來我們來看一下界面的程序中,對于各個控件是如何構(gòu)建的吧。本次界面的搭建用到的是python的內(nèi)置庫tkinter。其頁面布局的程序大家可以下載源碼來自行分析,我們主要來看一下頁面中各個按鈕所控制的函數(shù)功能。 對于打開圖片1和打開圖片2兩個按鈕,其控制的函數(shù)作用就是打開圖片并顯示在界面中,函數(shù)如下圖所示: 點(diǎn)擊加載圖片 上述的函數(shù)通過讀取本地圖片文件,然后調(diào)整圖片的大小,并顯示在Label控件中。 對于單圖執(zhí)行和雙圖執(zhí)行的按鈕控件,它們的作用是將圖片按照特定的算法進(jìn)行處理,并將處理后的結(jié)果顯示在最右側(cè)的結(jié)果展示中,以單圖執(zhí)行的函數(shù)為例。 點(diǎn)擊加載圖片 函數(shù)首先讀取圖片,并將函數(shù)大小調(diào)整為偶數(shù),因?yàn)槟承┧惴ǖ膱?zhí)行要求輸入圖片大小為偶數(shù)。然后按照選擇的單圖算法來處理圖片并保存到本地,最后,讀取處理好的圖片顯示到界面中。 04.效果展示: 以上就是對于界面中主要按鈕控件所控制函數(shù)的講解,接下來我們來看一下程序最終的執(zhí)行效果吧。 以上就是小編今天為大家?guī)淼姆窒?,Python真的是太強(qiáng)大了!可以玩爬蟲,自動化辦公,數(shù)據(jù)分析,圖像處理,機(jī)器學(xué)習(xí),數(shù)據(jù)挖掘,金融分析,自動化測試,后端開發(fā),運(yùn)維等等方方面面都可以用。小伙伴,趕緊學(xué)起來吧! 推薦閱讀: 入門: 最全的零基礎(chǔ)學(xué)Python的問題 | 零基礎(chǔ)學(xué)了8個月的Python | 實(shí)戰(zhàn)項(xiàng)目 |學(xué)Python就是這條捷徑 干貨:爬取豆瓣短評,電影《后來的我們》 | 38年NBA最佳球員分析 | 從萬眾期待到口碑撲街!唐探3令人失望 | 笑看新倚天屠龍記 | 燈謎答題王 |用Python做個海量小姐姐素描圖 | 年度爆款文案 2).學(xué)Python真香!我用100行代碼做了個網(wǎng)站,幫人PS旅行圖片,賺個雞腿吃 3).首播過億,火爆全網(wǎng),我分析了《乘風(fēng)破浪的姐姐》,發(fā)現(xiàn)了這些秘密 4).80行代碼!用Python做一個哆來A夢分身 5).你必須掌握的20個python代碼,短小精悍,用處無窮 6).30個Python奇淫技巧集 |
|