Mahotas – Computación de patrones binarios lineales

En este artículo veremos cómo podemos obtener los patrones binarios lineales de imagen en mahotas. Los patrones binarios locales son un tipo de descriptor visual utilizado para la clasificación en la visión artificial. LBP es el caso particular del modelo Texture Spectrum propuesto en 1990. LBP se describió por primera vez en 1994. Para ello vamos a utilizar la imagen de microscopía fluorescente de un benchmark de segmentación nuclear. Podemos obtener la imagen con la ayuda del comando que se indica a continuación.
 

mahotas.demos.nuclear_image()

A continuación se muestra la imagen_nuclear 
 

Para hacer esto usaremos el método mahotas.features.lbp 
 

Sintaxis: mahotas.features.lbp (imagen, radio, puntos)
Argumento: toma el objeto de imagen y dos enteros como argumento
Retorno: devuelve 1-D numpy ndarray, es decir, función de histograma 
 

Nota: La entrada de este debería ser la imagen filtrada o cargada 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 various libraries
import mahotas
import mahotas.demos
import mahotas as mh
import numpy as np
from pylab import imshow, show
import matplotlib.pyplot as plt
 
# loading nuclear image
nuclear = mahotas.demos.nuclear_image()
 
# filtering image
nuclear = nuclear[:, :, 0]
 
# adding gaussian filter
nuclear = mahotas.gaussian_filter(nuclear, 4)
 
# setting threshold
threshed = (nuclear > nuclear.mean())
 
# making is labelled image
labeled, n = mahotas.label(threshed)
 
# showing image
print("Labelled Image")
imshow(labelled)
show()
 
# Computing Linear Binary Patterns
value = mahotas.features.lbp(labelled, 200, 5)
 
# showing histograph
plt.hist(value)

Producción : 
 

Ejemplo 2: 
 

Python3

# importing required libraries
import numpy as np
import mahotas
from pylab import imshow, show
import matplotlib.pyplot as plt
  
# loading image
img = mahotas.imread('dog_image.png')
    
# filtering the image
img = img[:, :, 0]
     
# setting gaussian filter
gaussian = mahotas.gaussian_filter(img, 15)
  
# setting threshold value
gaussian = (gaussian > gaussian.mean())
  
# making is labelled image
labeled, n = mahotas.label(gaussian)
 
# showing image
print("Labelled Image")
imshow(labelled)
show()
 
 
# Computing Linear Binary Patterns
value = mahotas.features.lbp(labelled, 200, 5, ignore_zeros = False)
 
 
# showing histograph
plt.hist(value)

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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *