자바 마술 지팡이 도구

Aspose.Imaging for Java는 개발자에게 이미지 작업을 위한 다양한 기능을 제공하는 강력하고 다재다능한 라이브러리입니다. 라이브러리에서 제공하는 주요 기능 중 하나는 색상 유사성을 기반으로 이미지의 영역을 정확하고 효율적으로 선택할 수 있는 Magic Wand 도구입니다. 이 블로그 게시물에서는 Java의 이미지에 Magic Wand 도구를 사용하는 방법을 살펴보겠습니다.

마술봉 도구

Magic Wand 도구는 Adobe Photoshop과 같은 이미지 편집 소프트웨어에서 제공되는 유용한 기능입니다. 이미지에서 비슷한 색상이나 톤의 영역을 선택할 때 사용됩니다. 이 도구는 이미지의 특정 지점을 클릭하여 작동하며 허용 오차 설정에 따라 유사한 색상이나 색조 값을 가진 연속 영역을 자동으로 선택합니다. Java 애플리케이션에서 Magic Wand 도구를 프로그래밍 방식으로 사용하는 방법을 살펴보겠습니다.

Java용 마술봉 도구

개발자가 Java 애플리케이션에서 다양한 이미지 형식으로 작업할 수 있게 해주는 API인 Aspose.Imaging for Java에서 제공하는 Magic Wand 도구를 사용하겠습니다. 편집, 변환, 압축, 색상 조정 등 이미지 처리 및 조작과 관련된 광범위한 작업을 수행할 수 있습니다.

Java용 Aspose.Imaging을 설치하려면 다음 Maven 구성을 사용하거나 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>

Java에서 Magic Wand 도구 사용

MagicWandTool 클래스를 사용하면 이미지에 대해 선택, 결합, 반전 및 빼기 작업을 실행할 수 있습니다. 이미지 내에서 특정 색상 영역을 선택할 때 원하는 영역 내에서 X 및 Y 좌표를 지정해야 합니다. 그런 다음 마술봉 도구는 선택한 픽셀의 톤과 색상을 인접 픽셀과 비교하여 평가합니다. 유사성이 감지되면 도구는 선택한 영역에 대한 마스크를 생성합니다.

MagicWandSettings 클래스를 활용하여 허용 오차를 설정할 수 있습니다. 공차 값이 높을수록 선택 항목에 더 넓은 범위의 색상이 포함되며, 공차 값이 낮을수록 더 좁은 범위의 유사한 색상으로 선택이 제한됩니다.

다음은 Java에서 Magic Wand 도구를 사용하는 단계입니다.

  • 먼저 Image.load 메서드를 사용하여 이미지를 RasterImage로 로드합니다.
  • 그런 다음 MagicWandSettings 클래스의 인스턴스를 만들고 X 및 Y 참조 좌표로 초기화합니다.
  • MagicWandTool.select 메서드를 사용하여 픽셀의 톤과 색상을 기반으로 Magic Wand 도구로 새 마스크를 만듭니다.
  • 이미지에 원하는 Magic Wand 기능을 사용하세요.
  • 마스크를 적용하려면 apply() 메서드를 호출하세요.
  • 마지막으로 Image.save() 메서드를 사용하여 이미지를 저장합니다.

위 단계에서 사용된 클래스 및 메서드에 대한 참조를 참조하세요.

다음 코드 조각은 Java의 이미지에 Magic Wand 도구를 사용하는 방법을 보여줍니다.

import com.aspose.imaging.Image;
import com.aspose.imaging.RasterImage;
import com.aspose.imaging.magicwand.*;
import com.aspose.imaging.magicwand.imagemasks.*;

// 입력 데이터의 경로를 가져옵니다
String templatesFolder = System.getenv("DATA_PATH");
// 출력 경로 얻기
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"))
{
	// 픽셀 {845, 128}의 톤과 색상을 기반으로 마술 지팡이 도구를 사용하여 새 마스크를 만듭니다.
	MagicWandTool.select(image, new MagicWandSettings(10, 10))
		// 마술 지팡이 도구로 생성된 지정된 마스크와 기존 마스크를 결합합니다.
		.union(new MagicWandSettings(30, 30))
		// 기존 마스크 반전
		.invert()
		// 기존 마스크에서 마술봉 도구로 생성된 지정된 마스크를 뺍니다. 
		.subtract(new MagicWandSettings(50, 50) {{ setThreshold(69); }})
		// 기존 마스크에서 지정된 직사각형 마스크 4개를 하나씩 뺍니다.
		.subtract(new RectangleMask(0, 0, 50, 50))
		// 지정된 설정이 있는 깃털 마스크
		.getFeathered(new FeatheringSettings() {{ setSize(3); }})
		// 이미지에 마스크 적용
		.apply();
	image.save(outputFolder + "/result.png");
}

무료 라이센스 받기

무료 임시 라이센스를 받고 제한 없이 Java Magic Wand 도구를 평가해 보세요.

결론

이 블로그 게시물에서는 개발자가 색상 유사성을 기반으로 이미지를 선택할 수 있도록 지원하는 강력한 이미지 처리 라이브러리를 사용하여 Java의 Magic Wand 도구를 살펴보았습니다. 이 가이드에 설명된 단계를 따르면 Magic Wand 도구를 Java 애플리케이션에 원활하게 통합하고 이미지 조작 및 편집에 대한 광범위한 가능성을 열 수 있습니다.

Aspose.Imaging for Java는 이미지 작업을 위한 포괄적인 기능 세트를 제공합니다. 문서를 사용하여 라이브러리에 대해 더 자세히 알아볼 수 있습니다. 또한, 포럼에 질문을 게시할 수도 있습니다.

또한보십시오