這裡示範如何使用 Caire 這個圖形函式庫,在圖片拉長或縮短後,以 Seam Carving 演算法自動修正圖形中的物體,保持完美的比例。
在電腦上設計一些美工文宣品或是網站版面時,找尋適合的圖片是很重要的,有時候雖然找到的素材圖片風格非常棒,但若解析度不足、或是長寬比例不對的話,也不太能使用。
首先安裝 Go 這個程式語言的套件,在 Ubuntu Linux 中可以使用 apt 安裝 golang-go
套件:
sudo apt-get install golang-go
設定 GOPATH
與 PATH
環境變數:
export GOPATH="$HOME/go" export PATH="$PATH:$GOPATH/bin"
接著從 GitHub 下載 Caire 工具:
# 下載 Caire 工具 go get -u -f github.com/esimov/caire/cmd/caire
這樣就完成安裝了。
使用 Caire 調整圖片大小的使用方式為:
# 將圖片大小調整為 640x360 caire -in image.jpg -out output.jpg -width=640 -height=360
以下我隨意拿幾張照片進行測試,首先測試縮短圖片。下面這張圖在縮短之後,表現很不錯,看起來都很自然。
下面這張測試垂直方向的壓縮圖片,縮短之後大部分的物體都很自然,不過路上的機車被壓扁了。
接下來測試拉長圖片,這張照片被拉開之後,感覺還不錯(點選圖片可查看原圖)。
而這一張圖在拉長之後,右邊有出現橫條文。
經過實際測試之後,我發現 Caire 這個工具在微調圖片比例時,都還處理的不錯,但是如果比例調整的太多,很容易就會露出馬腳,而且圖檔的解析度若比較高時,要算很久(640×640 左右的圖,在我的筆電上大概就要算個一分鐘),對於實際應用幫助有限。
參考資料:TechNews