Aspose.Imaging for Java é uma biblioteca poderosa e versátil que oferece aos desenvolvedores uma ampla gama de funcionalidades para trabalhar com imagens. Um dos principais recursos oferecidos pela biblioteca é a ferramenta Magic Wand, que permite a seleção precisa e eficiente de áreas de uma imagem com base na semelhança de cores. Nesta postagem do blog, exploraremos como usar a ferramenta Magic Wand em uma imagem em Java.
Varinha mágica
A ferramenta Magic Wand é um recurso útil fornecido em softwares de edição de imagens, como o Adobe Photoshop. É usado para selecionar áreas de cores ou tons semelhantes em uma imagem. A ferramenta funciona clicando em um ponto específico da imagem e seleciona automaticamente áreas contíguas que possuem valores de cores ou tons semelhantes com base em uma configuração de tolerância. Vamos ver como podemos usar a ferramenta Magic Wand programaticamente em aplicativos Java.
Ferramenta Varinha Mágica para Java
Usaremos a ferramenta Magic Wand fornecida por Aspose.Imaging for Java - uma API que permite aos desenvolvedores trabalhar com vários formatos de imagem em seus aplicativos Java. Permite realizar uma ampla gama de tarefas relacionadas ao processamento e manipulação de imagens, como edição, conversão, compactação e ajuste de cores.
Para instalar o Aspose.Imaging for Java, use as seguintes configurações do Maven ou baixe o arquivo JAR.
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-imaging</artifactId>
<version>23.10</version>
<classifier>jdk16</classifier>
</dependency>
Usando a ferramenta Magic Wand em Java
A classe MagicWandTool permite executar operações de seleção, união, inversão e subtração em uma imagem. Ao escolher uma área de cor específica em uma imagem, você precisa especificar as coordenadas X e Y na região desejada. A ferramenta Magic Wand avalia então o tom e a cor do pixel selecionado em comparação com os pixels vizinhos. Quando é detectada uma semelhança, a ferramenta gera uma máscara para a região selecionada.
Utilizando a classe MagicWandSettings, você pode definir a tolerância. Um valor de tolerância mais alto significa que uma gama mais ampla de cores será incluída na seleção, enquanto um valor de tolerância mais baixo limita a seleção a uma gama mais estreita de cores semelhantes.
A seguir estão as etapas para usar a ferramenta Magic Wand em Java.
- Primeiro, carregue a imagem como RasterImage usando o método Image.load.
- Em seguida, crie uma instância da classe MagicWandSettings e inicialize-a com as coordenadas de referência X e Y.
- Crie uma nova máscara com a ferramenta Magic Wand com base no tom e na cor do pixel usando o método MagicWandTool.select.
- Use as funções desejadas da Varinha Mágica na imagem.
- Chame o método apply() para aplicar a máscara.
- Finalmente, salve a imagem usando o método Image.save().
Veja referências de classes e métodos usados nas etapas acima.
O trecho de código a seguir mostra como usar a ferramenta Magic Wand em uma imagem em Java.
import com.aspose.imaging.Image;
import com.aspose.imaging.RasterImage;
import com.aspose.imaging.magicwand.*;
import com.aspose.imaging.magicwand.imagemasks.*;
// obter o caminho dos dados de entrada
String templatesFolder = System.getenv("DATA_PATH");
// obter caminho de saída
String outputFolder = System.getenv("OUT_PATH");
if (templatesFolder == null)
templatesFolder = "data";
if (outputFolder == null)
outputFolder = "out";
try (RasterImage image = (RasterImage)Image.load(templatesFolder + "/template.png"))
{
// Crie uma nova máscara usando a ferramenta varinha mágica com base no tom e na cor do pixel {845, 128}
MagicWandTool.select(image, new MagicWandSettings(10, 10))
// Unir a máscara existente com a especificada criada pela ferramenta varinha mágica
.union(new MagicWandSettings(30, 30))
// Inverta a máscara existente
.invert()
// Subtraia a máscara especificada criada pela ferramenta varinha mágica da existente
.subtract(new MagicWandSettings(50, 50) {{ setThreshold(69); }})
// Subtraia quatro máscaras retangulares especificadas da máscara existente, uma por uma
.subtract(new RectangleMask(0, 0, 50, 50))
// Máscara de penas com configurações específicas
.getFeathered(new FeatheringSettings() {{ setSize(3); }})
// Aplicar máscara à imagem
.apply();
image.save(outputFolder + "/result.png");
}
Obtenha uma licença gratuita
Obtenha uma licença temporária gratuita e avalie a ferramenta Java Magic Wand sem quaisquer limitações.
Conclusão
Nesta postagem do blog, exploramos a ferramenta Magic Wand em Java usando uma poderosa biblioteca de processamento de imagens que permite aos desenvolvedores realizar a seleção de imagens com base na similaridade de cores. Seguindo as etapas descritas neste guia, você pode integrar perfeitamente a ferramenta Magic Wand em seus aplicativos Java e desbloquear uma ampla gama de possibilidades para manipulação e edição de imagens.
Aspose.Imaging for Java fornece um conjunto abrangente de recursos para trabalhar com imagens. Você pode explorar mais sobre a biblioteca usando documentação. Além disso, você pode postar suas dúvidas em nosso fórum.