En este artículo veremos cómo podemos implementar un umbral suave en mahotas. La umbralización suave también se denomina reducción de wavelet, ya que los valores de los coeficientes positivos y negativos se «reducen» hacia cero, al contrario que la umbralización estricta que mantiene o elimina los valores de los coeficientes.
En este tutorial usaremos la imagen «luispedro», a continuación se muestra el comando para cargarla.
mahotas.demos.load('luispedro')
A continuación se muestra la imagen de luispedro
Para hacer esto usaremos el método mahotas.rc
Sintaxis: mahotas.thresholding.soft_threshold(image, t_value)
Argumento: toma el objeto de imagen y el valor unit8 como argumento
Retorno: devuelve el objeto de imagen
Nota: la imagen de entrada debe filtrarse o cargarse como gris
Para filtrar la imagen, tomaremos el objeto de imagen que es numpy.ndarray y lo filtraremos con la ayuda de la indexación, a continuación se muestra el comando para hacer esto
image = image[:, :, 0]
Ejemplo 1:
Python3
# importing required libraries import mahotas import mahotas.demos import numpy as np from pylab import imshow, gray, show from os import path # loading the image photo = mahotas.demos.load('luispedro') # loading image as grey photo = mahotas.demos.load('luispedro', as_grey = True) # converting image type to unit8 # because as_grey returns floating values photo = photo.astype(np.uint8) # showing original image print("Image") imshow(photo) show() # unit 8 value t = np.uint8(150) # soft threshold photo = mahotas.thresholding.soft_threshold(photo, t) print("Image with soft threshold") # showing image imshow(photo) show()
Producción :
Ejemplo 2:
Python3
# importing required libraries import mahotas import numpy as np from pylab import imshow, show import os # loading image img = mahotas.imread('dog_image.png') # setting filter to the image img = img[:, :, 0] print("Image") # showing the image imshow(img) show() # unit 8 value t = np.uint8(180) # soft threshold img = mahotas.thresholding.soft_threshold(img, t) print("Image with soft threshold") # showing image imshow(img) show()
Producción :
Publicación traducida automáticamente
Artículo escrito por rakshitarora y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA