我有一組法線貼圖,它們被分成紅色和綠色通道以進行放大。現在我想將它們與一個純白色藍色通道重新組合,但我正在努力尋找一種有效的方法來制作那個白色藍色通道。
我當前的代碼確實有效:
magick "file_r.png" "file_g.png" ( -size 2048x2048 xc:white ) -combine "file.png"
但是必須為藍色通道創建該影像似乎并不理想。有沒有更好的辦法?
(此外,大小不是靜態的,因此每次都必須檢索它 - 完全可行,因為它是由一個 powershell 腳本運行的,我至少可以運行一個識別命令 ( magick identify -ping -format "%[w]x%[h]" "file_r.png",我擔心這可能是遺留代碼但無法事先確定如何將其轉換為 v7) 以生成尺寸,但似乎開銷更大。(我還嘗試在之后放置一個識別命令-size以動態地將尺寸放入命令中,但我無法得到語法正確。它也不一定能解決效率問題,但如果有辦法做到這一點,我很想知道!))
遺留 ImageMagick 論壇上的這個帖子似乎是一個更好的解決方案:它說任何未定義的通道-channel都會變成-background顏色,在我看來這會更有效,因為它不必創建影像(我可能是錯的,它可能在內部做同樣的事情)。這是他們的代碼:
convert r.jpg g.jpg -background black -channel RG -combine combined.jpg
但是當我嘗試時,紅色和綠色通道是完美的,但藍色通道也有紅色檔案的影像,而不是純白色:
magick "file_r.png" "file_g.png" -background white -channel RG -combine "file.png"
這種行為在版本 7 中是否發生了變化,或者(更有可能)我做錯了?輸入檔案是 sRGB 而不是灰色,因為這是升頻器輸出的;也許紅色通道影像的藍色通道(與其他通道相同,因為它最初是灰色的)被放在那里?我通過嘗試為輸入指定兩個影像的單個通道來玩弄該命令,但我無法讓它作業(這可能是我的語法;我是 ImageMagick 的新手,我一直在努力它的命令即使有檔案)。
謝謝!
uj5u.com熱心網友回復:
也許這就是您在 ImageMagick 中想要的。
magick r.png g.png g.png -combine -channel b -evaluate set 100% channel result.png
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/425467.html
