Narzędzie Magiczna Różdżka w Python

W przetwarzaniu i manipulacji obrazami posiadanie odpowiedniego zestawu narzędzi może mieć ogromne znaczenie. Jednym z takich potężnych narzędzi jest Magiczna Różdżka, wszechstronne narzędzie, które pozwala użytkownikom precyzyjnie wybierać i manipulować określonymi obszarami obrazu. Jeśli jesteś programistą Python i szukasz wydajnego narzędzia Magic Wand w Python, masz szczęście. W tym poście na blogu udostępnimy łatwe w użyciu narzędzie Magic Wand dla Python, którego możesz użyć do wybrania określonego obszaru kolorów na obrazku.

Magiczna różdżka

Narzędzie Różdżka to funkcja dostępna w oprogramowaniu do projektowania graficznego i edycji obrazów, takim jak Adobe Photoshop. Działa poprzez wybieranie pikseli na podstawie podobieństwa kolorów, co jest szczególnie przydatne w przypadku zadań takich jak usuwanie tła, izolowanie określonych obiektów lub stosowanie dopasowań w określonych obszarach obrazu.

Narzędzie Magic Wand dla Python

Aspose.Imaging dla języka Python to obszerna biblioteka do tworzenia obrazów dla języka Python, która umożliwia programistom łatwe tworzenie, edytowanie i konwertowanie obrazów. Zapewnia szereg funkcji, w tym przetwarzanie obrazu, konwersję formatów i możliwości rysowania. Jedną z jego wyróżniających się funkcji jest narzędzie Różdżka, umożliwiające użytkownikom łatwe dokonywanie złożonych selekcji na obrazach.

Aby zainstalować bibliotekę, użyj następującego polecenia pip.

> pip install aspose-imaging-python-net 

Korzystanie z narzędzia Magic Wand w Python

Aspose.Imaging udostępnia klasę MagicWandTool, która umożliwia wykonywanie operacji zaznaczania, sumowania, odwracania i odejmowania. Aby wybrać konkretny obszar koloru na obrazku, musisz podać współrzędne X i Y wewnątrz tego obszaru. Następnie narzędzie Różdżka porównuje ton i kolor tego piksela z pobliskimi pikselami. Po stwierdzeniu podobieństwa narzędzie dodaje piksele do powstałego obszaru i zwraca maskę dla wybranego obszaru. Za pomocą klasy MagicWandSettings można ustawić dodatkowe opcje, takie jak tolerancja.

Przejdźmy zatem przez kroki wymagane do użycia narzędzia Magic Wand w Python.

  • Załaduj plik obrazu jako RasterImage przy użyciu metody Image.load.
  • Utwórz instancję klasy MagicWandSettings i zainicjuj ją współrzędnymi odniesienia X i Y.
  • Ustaw próg za pomocą właściwości MagicWandSettings.threshold.
  • Użyj klasy FeatheringSettings, aby ustawić rozmiar wtapiania.
  • Utwórz nową maskę za pomocą narzędzia Magic Wand w oparciu o ton i kolor piksela, korzystając z metody MagicWandTool.select.
  • Użyj żądanych funkcji Magicznej Różdżki na obrazie.
  • Wywołaj metodę Apply(), aby zastosować maskę.
  • Zapisz obraz za pomocą metody Image.save().

Zobacz szczegóły klas i metod w sekcji referencje.

Poniższy fragment kodu pokazuje, jak używać narzędzia Różdżka na obrazie w języku Python.

import os
from aspose.imaging import Image, RasterImage
from aspose.imaging.magicwand import *
from aspose.imaging.magicwand.imagemasks import *
import aspose.pycore as ascore

if 'TEMPLATE_DIR' in os.environ:
	templates_folder = os.environ['TEMPLATE_DIR']
else:
	templates_folder = r"C:\Users\USER\Downloads\templates"

delete_output = 'SAVE_OUTPUT' not in os.environ

data_dir = templates_folder
out_path = os.path.join(data_dir, "result.png")

with ascore.as_of(Image.load(os.path.join(data_dir, "template.png")), RasterImage) as image:
	wand_set = MagicWandSettings(50, 50)
	wand_set.threshold = 69
	f_set = FeatheringSettings()
	f_set.size = 3
	
  	# Utwórz nową maskę za pomocą narzędzia „Magiczna różdżka” w oparciu o ton i kolor piksela {845, 128}
	tool = MagicWandTool.select(image, MagicWandSettings(10, 10))
	
  	# Połącz istniejącą maskę z określoną maską utworzoną za pomocą narzędzia Magiczna różdżka
	tool = tool.union(MagicWandSettings(30, 30))
	
  	# Odwróć istniejącą maskę
	tool = tool.invert()
	
  	# Odejmij określoną maskę utworzoną za pomocą narzędzia „Magiczna różdżka” od istniejącej 
	tool = tool.subtract(wand_set)
	
  	# Odejmij cztery określone maski prostokątne od istniejącej maski, jedna po drugiej
	tool = tool.subtract(RectangleMask(0, 0, 50, 50))
	
  	# Maska z piór z określonymi ustawieniami
	tool = tool.get_feathered(f_set)
	
  	# Zastosuj maskę do obrazu
	tool.apply()
  
  	# Zapisać obraz
	image.save(out_path)
	
if delete_output:
	os.remove(out_path)

Zdobądź bezpłatną licencję

Możesz uzyskać bezpłatną tymczasową licencję na korzystanie z narzędzia Magic Wand bez ograniczeń ewaluacyjnych.

Wniosek

Aspose.Imaging oferuje solidne i bogate w funkcje narzędzie Magic Wand dla Python, które może ulepszyć Twoje projekty przetwarzania obrazu. Niezależnie od tego, czy usuwasz tło, izolowasz obiekty, czy dokonujesz ukierunkowanych korekt, narzędzie Różdżka zapewnia płynne i wydajne rozwiązanie.

Aspose.Imaging upraszcza złożone zadania, co czyni go cennym nabytkiem zarówno dla programistów, jak i entuzjastów. Uaktualnij swój zestaw narzędzi do przetwarzania obrazu i pozwól narzędziu Magic Wand zdziałać cuda w Twoich kreatywnych projektach! Więcej informacji na temat biblioteki przetwarzania obrazów w języku Python można znaleźć w dokumentacji. Możesz także publikować swoje pytania na naszym forum.

Zobacz też