
In vari casi, è necessario eliminare il rumore delle immagini per migliorarne la qualità visiva. Questo è utile quando vuoi migliorare la chiarezza generale delle tue immagini. Inoltre, il denoising viene utilizzato per pre-elaborare le immagini prima di ulteriori analisi come il riconoscimento, la segmentazione e così via. I filtri mediano e wiener sono comunemente usati per eliminare il rumore e uniformare le immagini. Quindi diamo un’occhiata a come applicare filtri mediani e wiener sulle immagini in Python.
- Libreria Python per applicare filtri immagine mediana e viennese
- Applicare il filtro mediano a un’immagine in Python
- Applica il filtro Gauss Wiener a un’immagine
- Motion Wiener Filtraggio di un’immagine
- App di modifica delle immagini online gratuita
Libreria Python per applicare filtri immagine mediana e viennese
Per applicare i filtri mediana e wiener sulle immagini, useremo Aspose.Imaging for Python - una potente libreria di elaborazione delle immagini che ti consente di manipolare le immagini senza sforzo. Per utilizzare la libreria, puoi scaricare o installarla utilizzando il seguente comando.
> pip install aspose-imaging-python-net
Applicare il filtro mediano a un’immagine in Python
Il filtro mediano è un metodo di riduzione del rumore comunemente utilizzato che utilizza una tecnica di filtraggio digitale non lineare. Di seguito sono riportati i passaggi per applicare un filtro mediano a un’immagine in Python.
- Innanzitutto, carica l’immagine usando il metodo Image.load().
- Quindi, trasmette l’immagine al tipo RasterImage.
- Crea un’istanza della classe MedianFilterOptions e inizializzala con la dimensione del rettangolo.
- Applicare il filtro mediano utilizzando il metodo RasterImage.filter(Rectangle, MedianFilterOptions).
- Infine, salva l’immagine filtrata usando il metodo RasterImage.save().
L’esempio di codice seguente mostra come applicare un filtro mediano a un’immagine in Python.
import aspose.pycore as aspycore
from aspose.imaging import Image, RasterImage
from aspose.imaging.imagefilters.filteroptions import MedianFilterOptions
import os
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
# Carica l'immagine rumorosa
with Image.load(os.path.join(data_dir, "template.gif")) as image:
# Trasmetti l'immagine in RasterImage
if aspycore.is_assignable(image, RasterImage):
raster_image = aspycore.as_of(image, RasterImage)
# Crea un'istanza della classe MedianFilterOptions e imposta la dimensione, applica il filtro MedianFilterOptions all'oggetto RasterImage e salva l'immagine risultante
options = MedianFilterOptions(4)
raster_image.filter(image.bounds, options)
image.save(os.path.join(data_dir, "result.gif"))
if delete_output:
os.remove(os.path.join(data_dir, "result.gif"))
Di seguito l’immagine prima e dopo l’applicazione del filtro mediano.

Applica il filtro Gauss Wiener a un’immagine in Python
Gauss wiener è un altro metodo comunemente usato per migliorare la chiarezza e ridurre il rumore nelle immagini. Diamo un’occhiata ai passaggi necessari per applicare il filtro Gauss wiener a un’immagine in Python.
- Innanzitutto, carica l’immagine usando il metodo Image.load().
- Quindi, trasmette l’immagine al tipo RasterImage.
- Crea un’istanza della classe GaussWienerFilterOptions e inizializzala con la dimensione del raggio e il valore uniforme.
- (Facoltativo) Per ottenere un’immagine in scala di grigi, imposta la proprietà GaussWienerFilterOptions.grayscale su true.
- Applicare il filtro Wiener Gauss utilizzando il metodo RasterImage.filter(Rectangle, GaussWienerFilterOptions).
- Infine, salva l’immagine risultante utilizzando il metodo RasterImage.save().
L’esempio di codice seguente mostra come applicare un filtro Gauss Wiener a un’immagine in Python.
import aspose.pycore as aspycore
from aspose.imaging import Image, RasterImage
from aspose.imaging.imagefilters.filteroptions import GaussWienerFilterOptions
import os
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
# Carica l'immagine
with Image.load(os.path.join(data_dir, "template.jpg")) as image:
# Trasmetti l'immagine in RasterImage
if aspycore.is_assignable(image, RasterImage):
raster_image = aspycore.as_of(image, RasterImage)
# Crea un'istanza della classe GaussWienerFilterOptions e imposta la dimensione del raggio e il valore di smooth.
options = GaussWienerFilterOptions(12, 3)
options.grayscale = True
# Applicare il filtro MedianFilterOptions all'oggetto RasterImage e salvare l'immagine risultante
raster_image.filter(image.bounds, options)
image.save(os.path.join(data_dir, "result.jpg"))
if delete_output:
os.remove(os.path.join(data_dir, "result.jpg"))
Di seguito l’immagine prima e dopo l’applicazione del filtro Gauss wiener con l’opzione scala di grigi.

Quella che segue è l’immagine prima e dopo l’applicazione del filtro Gauss wiener senza scala di grigi.

Filtro Motion Wiener per un’immagine in Python
Il filtro Motion Wiener viene utilizzato per ridurre la sfocatura o il degrado causato dall’effetto movimento. Questo tipo di sfocatura si verifica a causa del movimento relativo tra la fotocamera e l’oggetto. Di seguito sono riportati i passaggi per applicare il filtro Motion Wiener a un’immagine in Python.
- Innanzitutto, carica l’immagine usando il metodo Image.load().
- Quindi, trasmette l’immagine al tipo RasterImage.
- Crea un’istanza della classe MotionWienerFilterOptions e inizializzala con lunghezza, valore uniforme e angolo.
- Applicare il filtro motion wiener utilizzando il metodo RasterImage.filter(Rectangle, MotionWienerFilterOptions).
- Infine, salva l’immagine risultante utilizzando il metodo RasterImage.save().
L’esempio di codice seguente mostra come applicare un filtro Motion Wiener a un’immagine in Python.
import aspose.pycore as aspycore
from aspose.imaging import Image, RasterImage
from aspose.imaging.imagefilters.filteroptions import MotionWienerFilterOptions
import os
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
# Carica l'immagine
with Image.load(os.path.join(data_dir, "template.gif")) as image:
# Trasmetti l'immagine in RasterImage
if aspycore.is_assignable(image, RasterImage):
raster_image = aspycore.as_of(image, RasterImage)
# Crea un'istanza della classe MotionWienerFilterOptions e imposta la lunghezza, il valore uniforme e l'angolo.
options = MotionWienerFilterOptions(50, 9, 90)
options.grayscale = True
# Applicare il filtro MedianFilterOptions all'oggetto RasterImage e salvare l'immagine risultante
raster_image.filter(image.bounds, options)
image.save(os.path.join(data_dir, "result.gif"))
if delete_output:
os.remove(os.path.join(data_dir, "result.gif"))

Libreria di filtri immagine Python gratuita
Puoi ottenere una licenza temporanea gratuita e applicare filtri mediani e wiener alle immagini senza limiti di valutazione.
App di modifica delle immagini online gratuita
Utilizza il nostro strumento gratuito di modifica delle immagini basato sul Web per modificare le tue immagini online. Questo editor di immagini utilizza Aspose.Imaging for Python e non ti chiede di creare un account.
Conclusione
In questo articolo, hai imparato come applicare filtri mediani e wiener alle immagini in Python. I passaggi e gli esempi di codice hanno dimostrato come applicare diversi tipi di filtri per eliminare il rumore delle immagini a livello di codice. Inoltre, abbiamo spiegato come ridurre il rumore degli oggetti in movimento in un’immagine utilizzando un filtro Motion Wiener. Infine, ti abbiamo fornito un’app di modifica delle immagini online che è completamente gratuita e puoi usarla senza registrarti.
Puoi esplorare di più sulla libreria di elaborazione delle immagini Python usando documentazione. Inoltre, puoi condividere le tue domande con noi tramite il nostro forum.