⚠️ Este é um site de tradução não oficial, sem relação com a ImageMagick Studio LLC. Para informações oficiais, consulte a página original (https://usage.imagemagick.org/backgrounds/index.html).

Exemplos de ImageMagick -- Fundos

Exemplos de ImageMagick: Prefácio e Índice Esta é uma tabela que aplica várias transformações a algumas telas 'aleatórias', mostrando métodos para produzir fundos aleatórios interessantes em qualquer tamanho desejado, seja uma única imagem grande, seja um ladrilho de fundo para uma página web. A tabela começa com o método usado para gerar a imagem 'aleatória' inicial, empregada para gerar todas as outras imagens mostradas. Basta inserir as várias 'transformações' de imagem no comando para converter, com o magick, a imagem bruta em algo semelhante ao que é exibido. A partir daí, você pode ajustar as diversas configurações por conta própria para produzir exatamente o tipo de imagem de fundo que quiser. Não deixe de ler as notas ao final antes de tentar criar seus próprios exemplos. E, por favor, envie por e-mail quaisquer variações interessantes que você venha a encontrar. Imagens de entrada :- Gerador, Transformação e Pós-processamento |
---|---
Os resultados de imagem mostrados aqui foram gerados com o operador de transformação nula "-noop"
Fractal de Plasma (imagem de tela não ladrilhável)
|

  magick -size 120x120  plasma:fractal fractal.png
  magick fractal.png   _{..transform..}_ \
           -shave 20x20 +repage  -auto_level  _{result}_

[IM Output]
Ruído Aleatório (imagem de fundo ladrilhável)
|

  magick -size 80x80 xc: +noise Random noise.png
  magick noise.png -virtual-pixel tile  _{..transform..}_ \
          -auto_level  _{result}_

| [IM Output]
Ladrilho Hexagonal Aleatório (imagem de fundo em ladrilho hexagonal)
|

  magick -size 50x80 xc: +noise Random -write mpr:rand \
           -extent 100x80   -page +50-40 mpr:rand \
           -page +50+40 mpr:rand -flatten  hextile.png
  magick hextile.png -virtual-pixel tile  _{..transform..}_ \
          -auto_level    _{result}_

| | [IM Output]
|
Transformações Básicas
blur_raw (sem -auto-level posterior) |

  -blur 0x1

[Fractal] | [Noise] | [Noise]
blur_1 |

  -blur 0x1

[Fractal] | [Noise] | [Noise]
blur_3 |

  -blur 0x3

[Fractal] | [Noise] | [Noise]
blur_5 |

  -blur 0x5

[Fractal] | [Noise] | [Noise]
blur_10 |

  -blur 0x10

[Fractal] | [Noise] | [Noise]
intensity |

  -blur 0x10  -colorspace Gray

[Fractal] | [Noise] | [Noise]
channel |

  -blur 0x10  -fx G

[Fractal] | [Noise] | [Noise]
hues |

  -blur 0x10 -auto-level -separate -background white \
     -compose ModulusAdd -flatten -channel R -combine +channel \
     -set colorspace HSB -colorspace RGB

[Fractal] | [Noise] | [Noise]
Transformações de Sombreamento
shade_raw (sem -auto-level posterior) |

  -shade 120x45

[Fractal] | [Noise] | [Noise]
shade |

  -shade 120x45

[Fractal] | [Noise] | [Noise]
shade_dimmed (sem -auto-level posterior) |

  -shade 120x45 -auto-level -fill grey -colorize 40%

[Fractal] | [Noise] | [Noise]
shade_1 |

  -blur 0x1 -shade 120x45

[Fractal] | [Noise] | [Noise]
shade_2 |

  -blur 0x2 -shade 120x45

[Fractal] | [Noise] | [Noise]
shade_5 |

  -blur 0x5 -shade 120x45

[Fractal] | [Noise] | [Noise]
shade_10 |

  -blur 0x10 -fx G -shade 120x45

[Fractal] | [Noise] | [Noise]
Transformações de Relevo
emboss_1 |

  -blur 0x5  -emboss 1

[Fractal] | [Noise] | [Noise]
emboss_1g |

  -blur 0x5  -emboss 1  -fx G

[Fractal] | [Noise] | [Noise]
emboss_0s |

  -blur 0x3  -emboss .5 -shade 120x45

[Fractal] | [Noise] | [Noise]
emboss_1s |

  -blur 0x5  -emboss 1  -shade 120x45

[Fractal] | [Noise] | [Noise]
emboss_1gs |

  -blur 0x5  -emboss 1  -fx G  -shade 120x45

[Fractal] | [Noise] | [Noise]
emboss_5gs |

  -blur 0x10 -emboss 5  -fx G  -shade 120x45

[Fractal] | [Noise] | [Noise]
Transformações de Bordas
charcoal |

  -blur 0x2  -charcoal 10 -negate

[Fractal] | [Noise] | [Noise]
charcoal_10s |

  -blur 0x2  -charcoal 10 -negate -shade 120x45

[Fractal] | [Noise] | [Noise]
charcoal_1s |

  -blur 0x2  -charcoal 1  -negate -shade 120x45

[Fractal] | [Noise] | [Noise]
edges |

  -blur 0x2  -edge 10

[Fractal] | [Noise] | [Noise]
edge_grey |

  -blur 0x2  -edge 10 -fx G

[Fractal] | [Noise] | [Noise]
mesas |

  -blur 0x2  -edge 10 -fx G -shade 120x45

[Fractal] | [Noise] | [Noise]
Transformações Geradoras de Linhas
lines |

  -blur 0x10 -emboss 4 -edge 1

[Fractal] | [Noise] | [Noise]
loops |

  -blur 0x10 -edge 15  -edge 1  -blur 0x1

[Fractal] | [Noise] | [Noise]
engrave_loops |

  -blur 0x10 -edge 15  -edge 1  -blur 0x1 -fx R+B+G -shade 280x45

[Fractal] | [Noise] | [Noise]
engrave_loop |

  -blur 0x10 -edge 15  -edge 1  -blur 0x1 -fx G -shade 280x45

[Fractal] | [Noise] | [Noise]
color_contours |

  -blur 0x10 -normalize -fx 'sin(u*4*pi)*100' -edge 1 -blur 0x1

[Fractal] | [Noise] | [Noise]
contours |

  -blur 0x10 -normalize -fx 'sin(g*4*pi)*100' \
     -edge 1 -blur 0x1 -shade 280x45

[Fractal] | [Noise] | [Noise]
Transformações Complexas de Manchas Texturizadas
(usando um estranho efeito '-edge 1')
blobs |

  -blur 0x10 -edge 1

[Fractal] | [Noise] | [Noise]
blobs_grey |

  -blur 0x10 -edge 1 -fx '(R+G+B)/3'

[Fractal] | [Noise] | [Noise]
pits |

  -blur 0x10 -edge 1 -fx G -shade 280x45

[Fractal] | [Noise] | [Noise]
ridges |

  -blur 0x10 \( +clone -negate \) -edge 1 -fx u.G+v.G -shade 280x45

[Fractal] | [Noise] | [Noise]
mottled |

  -blur 0x10 -write mpr:save -negate -edge 1 -negate -fx G \
     \( mpr:save -edge 1 -fx G \) -shade 280x45 -evaluate-sequence mean

[Fractal] | [Noise] | [Noise]
Transformações de Pintura
paint_raw10 (sem -auto-level posterior) |

  -paint 10

[Fractal] | [Noise] | [Noise]
paint_areas |

  -paint 10  -blur 0x5  -paint 10

[Fractal] | [Noise] | [Noise]
paint_raw10s |

  -paint 10  -shade 120x45

[Fractal] | [Noise] | [Noise]
paint_8 |

  -blur 0x5  -paint 8

[Fractal] | [Noise] | [Noise]
paint_8s |

  -blur 0x5  -paint 8  -shade 120x45

[Fractal] | [Noise] | [Noise]
paint_3 |

  -blur 0x10 -paint 3

[Fractal] | [Noise] | [Noise]
paint_3s |

  -blur 0x10 -paint 3  -shade 120x45

[Fractal] | [Noise] | [Noise]
paint_3d |

  -blur 0x10 -paint 3 \( +clone -shade 120x45 \) \
     +swap  -compose overlay -composite

[Fractal] | [Noise] | [Noise]
Transformações de Gradiente
levels (sem -auto-level posterior) |

  -blur 0x12 -fx intensity -normalize \
     -size 1x9 gradient:navy-lavender \
     -interpolate integer -fx 'v.p{0,G*(v.h-1)}'

[Fractal] | [Noise] | [Noise]
levels_3d (sem -auto-level posterior) |

  -blur 0x12 -fx intensity -normalize \
     -size 1x9 gradient:navy-lavender \
     -interpolate integer -fx 'v.p{0,G*(v.h-1)}' \
     \( +clone -shade 120x45 -normalize \) \
     -compose overlay -composite

[Fractal] | [Noise] | [Noise]
zebra |

  -blur 0x12 -normalize \
     -size 1x19   pattern:gray50   -fx 'v.p{0,G*(v.h-1)}'

[Fractal] | [Noise] | [Noise]
midlevel |

  -blur 0x12 -normalize \
     \( -size 1x9 xc: -draw 'color 0,4 point' -negate \) \
     -fx 'v.p{0,G*(v.h-1)}'

[Fractal] | [Noise] | [Noise]
edged_level (sem -auto-level posterior) |

  -blur 0x12 -normalize \
     \( -size 1x9 xc: -draw 'color 0,4 point' \) \
     -fx '(.6+.2*v.p{0,G*(v.h-1)})' \
     \( +clone -normalize -edge 1 \)  -fx 'u+v'

[Fractal] | [Noise] | [Noise]
layered_levels (sem -auto-level posterior) |

  -blur 0x12 -normalize \
     \( -size 1x9 xc: -draw 'color 0,4 point' \) \
     -fx '(.5+.3*v.p{0,u*(v.h-1)})' \
     \( +clone -normalize -edge .3 -fx 'R+G+B' \) \
     -fx 'intensity+v'  -fill skyblue -tint 100

[Fractal] | [Noise] | [Noise]
Diversos
filaments |

  -blur 0x5 -normalize -fx g \
     -sigmoidal-contrast 15x50% -solarize 50%

[Fractal] | [Noise] | [Noise]

Se você tiver ou vier a criar um bom gerador de fundos ou transformação de imagem, avise-me para que possa ser acrescentado aqui e compartilhado com os demais.

Notas Finais Importantes

As duas Imagens de Ruído Aleatório, por serem tão 'aleatórias', são ladrilháveis, e usamos "[-virtual-pixels](https://imagemagick.org/command-line-options/#virtual-pixels)" para garantir que permaneçam ladrilháveis durante a transformação. No entanto, a Imagem de Plasma não é ladrilhável de início, por isso emprega-se uma versão ampliada, com as bordas removidas depois usando "[-shave](https://imagemagick.org/command-line-options/#shave)", para eliminar o efeito de borda indesejado que muitas operações produzem. Essas técnicas são discutidas com mais detalhe em Modificação de Imagens de Ladrilho. Observe que o "[-auto_level](https://imagemagick.org/command-line-options/#normalize)" final é aplicado à maioria das imagens para realçar o contraste dos resultados, exceto quando a transformação está marcada como não o exigindo, de modo a preservar qualquer coloração ou sombreado resultante da transformação. Como muitas transformações de imagem, tais como "[-blur](https://imagemagick.org/command-line-options/#blur)", "[-emboss](https://imagemagick.org/command-line-options/#emboss)" e "[-edge](https://imagemagick.org/command-line-options/#edge)", são transformações em escala de cinza, elas atuam sobre os três canais de cor de forma completamente independente entre si. Como resultado, em muitas das imagens o efeito final parece que três imagens separadas foram sobrepostas e depois sombreadas. O último exemplo, "layered_levels", foi projetado para atuar em cada um dos três níveis simultaneamente, mantendo-os separados até a etapa final, na qual são somados e tingidos com cor. Esse efeito triplo pode ser removido aplicando-se uma operação inicial de conversão para escala de cinza ou extraindo apenas um dos canais ao final. Normalmente eu extraio o canal 'green' ou 'G', pois costuma ser o canal mais forte numa imagem em escala de cinza; ainda assim, qualquer um dos três canais pode ser usado.