En este artículo veremos cómo podemos hacer coincidir una plantilla con la imagen en mahotas. Al hacer coincidir las plantillas, podemos encontrar la ubicación específica o las cosas en una imagen con la ayuda de la estructura que queremos encontrar.
En este tutorial usaremos la imagen «lena», a continuación se muestra el comando para cargarla.
mahotas.demos.load('lena')
A continuación se muestra la imagen de lena
Para hacer esto usaremos el método mahotas.find
Sintaxis: mahotas.find(img, plantilla)
Argumento: toma el objeto de imagen y la plantilla como argumento
Return : Devuelve ndarray booleano
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]
A continuación se muestra la implementación.
Python3
# importing required libraries import mahotas import mahotas.demos from pylab import gray, imshow, show import numpy as np # loading image img = mahotas.demos.load('lena') # filtering image img = img.max(2) # otsu method T_otsu = mahotas.otsu(img) # image values should be greater than otsu value img = img > T_otsu print("Image threshold using Otsu Method") # showing image imshow(img) show() # template template = np.array([ [0, 1, 1], [0, 1, 1], [0, 1, 1]], bool) # finding template in the image new_img = mahotas.find(img, template) print("Image with only templates") # showing new image imshow(new_img) show()
Producción :
Image threshold using Otsu Method
Image with only templates
Otro ejemplo
Python3
# importing required libraries import mahotas import numpy as np from pylab import gray, imshow, show import os # loading image img = mahotas.imread('dog_image.png') # filtering image img = img[:, :, 0] # otsu method T_otsu = mahotas.otsu(img) # image values should be greater than otsu value img = img > T_otsu print("Image threshold using Otsu Method") # showing image imshow(img) show() # template template = np.array([ [0, 1, 1], [0, 1, 1], [0, 1, 1]], bool) # finding template in the image new_img = mahotas.find(img, template) print("Image with only templates") # showing new image imshow(new_img) show()
Producción :
Image threshold using Otsu Method
Image with only templates
Publicación traducida automáticamente
Artículo escrito por rakshitarora y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA