我試圖在使用imagick的圖像上獲得這種效果。在Photoshop中,它被稱爲漸變圖,但在imagick中找不到與此類似的任何東西。imagick |漸變圖
我認爲我需要先將它製成黑白色,但是我不知道如何在這樣做後添加顏色。
希望你能幫助!由於
---編輯:---
- 我使用Imagick,不ImageMagick的。
- 注意圖像中有兩種顏色,它不僅僅是彩色的。深藍色爲深色,淺綠色爲淺色。
我試圖在使用imagick的圖像上獲得這種效果。在Photoshop中,它被稱爲漸變圖,但在imagick中找不到與此類似的任何東西。imagick |漸變圖
我認爲我需要先將它製成黑白色,但是我不知道如何在這樣做後添加顏色。
希望你能幫助!由於
---編輯:---
PHP Imagick版本
現在我明白你的需要,我曾經做過一個Imagick PHP版本:
<?php
// Load input image
$image = new Imagick('landscape.jpg');
// Desaturate image
$image->modulateImage(100,0,100);
// Make duotone CLUT
$clut = new Imagick();
$clut->newPseudoImage(255,1,"gradient:darkblue-aqua");
// Apply duotone CLUT to image
$image->clutImage($clut);
// Output result
$image->writeImage('result.jpg');
?>
更新應答對呃
哦,我想你想一個「雙色調」而非「色調」。基本上,你需要將你的圖像去飽和度變爲單色,製作雙色調CLUT(Color Lookup Table)並應用它。
下面是如何使一個CLUT:
convert -size 1x256! gradient:navy-orange duotone-clut.png
這一個顯然會令你的暗色調的海軍和你的亮點橙色,但你願意,你可以玩的顏色。如您希望與您還可以指定RGB(或HSL)的任何色調的語法,如:
convert -size 1x256! gradient:"rgb(255,255,0)-rgb(23,45,100)" ...
這裏是如何去色圖像爲灰色,然後應用CLUT:
convert landscape.jpg -modulate 100,0 \
-size 256x1! gradient:navy-orange -clut result.jpg
的-modulate
需要3個參數 - 色調,飽和度和亮度。通過指定100,0
我已將色相保持爲100%,並將飽和度降低至零並保持亮度不變。
順便說一句,如果你想要一個「全音」有3種顏色,一個影子,一個是中間色調和一個亮點,你可以做一個這樣的:
convert -size 1x1! xc:yellow xc:magenta xc:cyan +append -resize 256x1! -scale x20 clut.png
其中給出這樣的:
您還可以在CLUT中移動交叉點,使用對比度拉伸或通過使用相同顏色填充CLUT的較大比例。在這裏,我通過有2個黃色塊來使陰影顏色「更長」。
convert -size 1x1! xc:yellow xc:yellow xc:magenta xc:cyan +append -resize 256x1! clut.png
這讓「長」陰影:
很明顯,你可以做一個四色調(四色調)了。
原來的答案
有許多的實現效果的方法。所以,從這個圖片:
您可以使用tint
這樣,相當於tintImage()
在PHP中,描述here:
convert landscape.jpg -colorspace gray -fill "rgb(10,100,130)" -tint 100 result.png
或者你也可以複製你的初始圖像並用您的色調填充克隆,然後將其複合到圖像頂部。你會在PHP中使用colorizeImage()
,描述here:
convert landscape.jpg -colorspace gray \
\(+clone -fill "rgb(10,100,130)" -colorize 100% \) \
-compose overlay -composite result.png
有用於PHP Imagick庫稱爲pslayers,它可以讓你做確切的那種畫面層次感和合成的,你所描述。
它甚至允許您創建接口到命令行腳本,以便直接與命令行版本交互。
我的回答或其他人解答了您的問題嗎?如果是這樣,請考慮接受它作爲您的答案 - 通過點擊投票計數旁邊的空心綠色勾號/複選標記。如果沒有,請說出什麼不起作用,以便我或其他人可以進一步幫助您。謝謝。 http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work/5235#5235 –