
How to use -virtual-pixel white -spread and get this spread_image.png with opacity?

The sample (spread_image.png) is not very nice, I tried to do it in Photoshop
Is it possible to do a similar actions with -raise (+raise) ?
Code: Select all
convert image.png \
\( -clone 0 -virtual-pixel white -spread 15 -blur 0x0.5 \) \
\( -clone 0 -alpha extract -virtual-pixel black -morphology erode diamond:15 -negate \) \
\( -clone 0-2 -compose over -composite \) \
-delete 1,2 \
\( -clone 0 -alpha extract \) \
-delete 0 \
-alpha off -compose copy_opacity -composite result.png
fmw42 wrote:try this (unix syntax)
Code: Select all
convert image.png \ \( -clone 0 -virtual-pixel white -spread 15 -blur 0x0.5 \) \ \( -clone 0 -alpha extract -virtual-pixel black -morphology erode diamond:15 -negate \) \ \( -clone 0-2 -compose over -composite \) \ -delete 1,2 \ \( -clone 0 -alpha extract \) \ -delete 0 \ -alpha off -compose copy_opacity -composite result.png
Code: Select all
convert -size 300x226 xc:none -background transparent -virtual-pixel white -spread 15 +write mpr:spread1 \
\( image.png mpr:spread1 -composite +write result.png \)
Code: Select all
convert image.png \
\( -clone 0 -alpha off -virtual-pixel white -spread 15 -blur 0x0.5 \) \
\( -clone 0 -alpha extract -virtual-pixel black -morphology erode diamond:15 -negate \) \
\( -clone 0-2 -compose over -composite \) \
-delete 1,2 \
\( -clone 0 -alpha extract \) \
-delete 0 \
-alpha off -compose copy_opacity -composite result.png
Code: Select all
convert image.png -write mpr:img \
\( mpr:img -alpha off -virtual-pixel white -spread 15 \) \
\( mpr:img -alpha extract -virtual-pixel black -morphology erode diamond:15 \) \
-swap 0,1 -compose over -composite \
\( mpr:img -alpha extract \) \
-alpha off -compose copy_opacity -composite result.png
fmw42 wrote:try this:
Code: Select all
convert image.png -write mpr:img \ \( mpr:img -alpha off -virtual-pixel white -spread 15 \) \ \( mpr:img -alpha extract -virtual-pixel black -morphology erode diamond:15 \) \ -swap 0,1 -compose over -composite \ \( mpr:img -alpha extract \) \ -alpha off -compose copy_opacity -composite result.png
Code: Select all
convert image.png -alpha off tmp1.png
convert black_pix.png -alpha off tmp2.png
Code: Select all
convert black_pix.png -background white -alpha background -write mpr:img \
\( mpr:img -alpha off -alpha off -virtual-pixel white -spread 15 \) \
\( mpr:img -alpha extract -virtual-pixel black -morphology erode diamond:15 \) \
-swap 0,1 -compose over -composite \
\( mpr:img -alpha extract \) \
-alpha off -compose copy_opacity -composite result2.png
fmw42 wrote:The two different input images you have provide have different colors in the transparent area. The first one was white and this one is black.
It does not change the top, since the black is her hair.
Code: Select all
convert black_pix.png -write mpr:img \
\( mpr:img -alpha off -fill white -colorize 100% -alpha on -write mpr:img2 \) \
+swap \
\( mpr:img2 -virtual-pixel none -spread 15 \) \
-compose over -composite result.png
fmw42 wrote:try this
Code: Select all
convert black_pix.png -write mpr:img \ \( mpr:img -alpha off -fill white -colorize 100% -alpha on -write mpr:img2 \) \ +swap \ \( mpr:img2 -virtual-pixel none -spread 15 \) \ -compose over -composite result.png