Upscayl為一款自由軟體,可以用來放大圖片。
不論是真實照片還是動漫圖像,Upscayl都能夠放大,操作過程十分簡單,只要選取圖片再按放大就行了。
它不是單純的把解析度放大而已,而是透過AI演算,即使圖片放大後也不會失真太多!
Upscayl的功能很像waifu2x和Topaz Gigapixel AI這類軟體,但是Upscayl是開源跨平台的,提供Linux、Windows、macOS版本。運算的時候是完全在本機執行,沒有任何額度限制,放大倍數想設多少就設多少。
但是Upscayl作者在Github提出了不適用的場合:若你想要放大模糊的照片並自動修復細節,Upscayl做不到,放大後的圖片可能會像是油畫一般。Upscayl這個工具其實比較適合放大還算清楚的照片,以及放大動漫圖像。
本文Ivon將分享如何用Upscayl放大圖片,順便討論放大GIF動圖與影片的作法。
1. Upscayl硬體需求#
系統最低需要Ubuntu 20.04以上版本。
Upscayl使用GPU計算,背後模型會用到NCNN Vulkan,故GPU必須支援Vulkan才能使用。
- 大部分獨立顯卡支援Vulkan,CPU內顯也應該都有支援。執行以下指令查看Vulkan支援狀況:
sudo apt install vulkaninfo
vulkaninfo --summary
Upscayl無法使用Nvidia CUDA加速圖片處理。如果在雙GPU系統選取Nvidia它也只會用Vulkan跑。
Vulkan吃GPU的圖形處理能力,所以有Nvidia GPU就盡量用Nvidia來算,所以得安裝Nvidia專有驅動。
2. Linux安裝Upscayl#
flatpak install flathub org.upscayl.Upscayl
如果電腦有兩個以上的GPU,開啟Upscayl後先設定GPU加速選項,點選Upscayl的Settings選單,填寫GPU ID。
如何確定?依照畫面上方logs的訊息填寫,這裡應該會列出系統的GPU。例如我的電腦有Intel CPU內顯和Nvidia獨顯。填1就會用Intel GPU運算,填0則是使用Nvidia GPU運算。
3. 放大圖片#
點選左邊的按鈕,選取要處理的圖片,再選取放大模型。Upscayl預設的Standard模型適合放大真實照片,要放大動漫圖像需要切換為Digital Art。
Upscayl的放大係數(Image Scale)預設為2倍或4倍,看模型支援度如何。在此之上的數值沒有多大效果,僅是單純把圖片解析度放大罷了。
選取輸出目錄,等待輸出即可。Upscayl隨後會顯示比較畫面。
Upscayl尚支援批次轉檔,勾選「Batch Mode」便可以選取整個目錄裡面的圖片。
4. 放大GIF動圖#
Upscayl無法處理GIF,所以得手動抽出GIF圖檔的畫格,利用Batch Mode批次放大,再把每個畫格拼回去。
Linux系統上這個操作能夠用ffmpeg達成。
- 抽出GIF所有的畫格,不要有透明圖層
ffmpeg -i "input.gif" "frame-%d.png"
開啟Upscayl,使用Batch Mode,批次放大圖片。
將放大後的圖片拼回GIf:
ffmpeg -i "frame-%d.png" -r 30 "output.mp4"
5. 放大影片#
Upscayl本身沒有處理影片的功能,因此很不幸的,你得用ffmpeg手動抽取影片畫格,丟給Upscayl批次處理,再把他們拼回去。
這樣做實在太麻煩了,建議直接用REAL Video Enhancer來放大影片。