Mahotas: eliminación de la región en una posición dada

En este artículo veremos cómo podemos eliminar la región en una posición dada en mahotas. Las imágenes etiquetadas son imágenes enteras donde los valores corresponden a diferentes regiones. Es decir, la región 1 son todos los píxeles que tienen valor 1, la región dos son los píxeles con valor 2, y así sucesivamente. Por convención, la región 0 es el fondo y, a menudo, se maneja de manera diferente. Podemos crear una región etiquetada con la ayuda del método mahotas.label.
Para hacer esto usaremos el método mahotas.labelled.remove_regions 
 

Sintaxis: mahotas.labelled.remove_regions(labeled_img, i, j)
Argumento: toma la imagen etiquetada y dos enteros que representan la región
Retorno: devuelve numpy.ndarray, es decir, objeto de imagen 
 

Ejemplo 1: 
 

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]
 
 
# setting gaussian filter
img = mahotas.gaussian_filter(img, 15)
 
# setting threshold value
img = (img> img.mean())
 
# creating a labelled image
labeled1, n_nucleus1 = mahotas.label(img)
 
# showing the labelled image
print("Labelled Image")
imshow(labelled1)
show()
 
 
 
# removing region
labelled2 = mahotas.labelled.remove_regions(labelled1, 1, 1)
 
 
# showing the labelled image
print("Labelled Image with removed region")
imshow(labelled2)
show()

Producción : 
 

Ejemplo 2: 
 

Python3

# importing required libraries
import mahotas
import numpy as np
from pylab import imshow, show
  
# creating region
# numpy.ndarray
regions = np.zeros((10, 10), bool)
  
# setting 1 value to the region
regions[:3, :3] = 1
regions[6:, 6:] = 1
  
# getting labelled function
labelled, nr_objects = mahotas.label(regions)
  
print("Labelled Image")
# showing the image with interpolation = 'nearest'
imshow(labelled, interpolation ='nearest')
show()
  
# removing region
labelled2 = mahotas.labelled.remove_regions(labelled, 1, 1)
 
 
# showing the labelled image
print("Labelled Image with removed region")
imshow(labelled2)
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

Deja una respuesta

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