En este artículo, veremos cómo podemos implementar el umbral local de bernsen en mahotas. El método de Bernsen es uno de los métodos de binarización localmente adaptables desarrollados para la segmentación de imágenes. En este estudio, se implementa el método de binarización adaptable localmente de Bernsen y luego se prueba para diferentes imágenes en escala de grises.
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 ello utilizaremos el método mahotas.thresholding.bernsen
Sintaxis: mahotas.thresholding.bernsen(image, contrast_threshold, global_threshold)
Argumento: toma el objeto de imagen y dos enteros 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() # bernsen threshold photo = mahotas.thresholding.bernsen(photo, 7, 200) print("Image with bernsen 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() # bernsen threshold img = mahotas.thresholding.bernsen(img, 5, 100) print("Image with bernsen 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