Махотас - перемаркировка

Опубликовано: 21 Марта, 2022

В этой статье мы увидим, как изменить маркировку изображения в махотах. Переназначение используется для обозначения уже помеченного изображения, это необходимо, потому что иногда есть много ярлыков, которые пользователь удаляет, поэтому, когда это изображение будет переназначено, мы также получим новый номер ярлыка. Мы используем метод mahotas.label для маркировки изображения
Для этого мы собираемся использовать изображение флуоресцентной микроскопии из теста ядерной сегментации. Мы можем получить изображение с помощью команды, приведенной ниже

 mhotas.demos.nuclear_image ()

Ниже ядерное изображение

Помеченные изображения - это целые изображения, значения которых соответствуют разным регионам. То есть, область 1 - это все пиксели со значением 1, область два - это пиксели со значением 2 и т. Д.
Для этого воспользуемся методом mahotas.relabel.

Syntax : mahotas.relabel(labelled)
Argument : It takes labelled image object as argument
Return : It returns the labelled image and integer i.e number of labels 
 

Example 1: 
 

Python3

# importing required libraries
import mahotas
import numpy as np
from pylab import imshow, show
import os
 
# loading nuclear image
f = mahotas.demos.load("nuclear")
 
# setting filter to the image
f = f[:, :, 0]
 
# setting gaussian filter
f = mahotas.gaussian_filter(f, 4)
 
# setting threshold value
f = (f> f.mean())
 
# creating a labelled image
labelled, n_nucleus = mahotas.label(f)
 
# printing number of labels
print("Count : " + str(n_nucleus))
 
# showing the labelled image
print("Labelled Image")
imshow(labelled)
show()
 
# removing border labels
labelled = mh.labelled.remove_bordering(labelled)
 
# relabling the labelled image
relabelled, n_left = mahotas.labelled.relabel(labelled)
 
# showing number of labels
print("Count : " + str(n_left))
 
# showing the image
print("No border Label")
imshow(relabelled)
show()

Выход :

Example 2: 
 

Python3

# importing required libraries
import numpy as np
import mahotas
from pylab import imshow, show
 
# 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())
 
# creating a labelled image
labelled, n_nucleus = mahotas.label(gaussian)
 
# printing number of labels
print("Count : " + str(n_nucleus))
  
print("Labelled Image")
# showing the gaussian filter
imshow(labelled)
show()
 
# removing border labels
labelled = mh.labelled.remove_bordering(labelled)
 
# relabling the labelled image
relabelled, n_left = mahotas.labelled.relabel(labelled)
 
# showing number of labels
print("Count : " + str(n_left))
 
# showing the image
print("No border Label")
imshow(relabelled)
show()

Выход :

Внимание компьютерщик! Укрепите свои основы с помощью базового курса программирования Python и изучите основы.

Для начала подготовьтесь к собеседованию. Расширьте свои концепции структур данных с помощью курса Python DS. А чтобы начать свое путешествие по машинному обучению, присоединяйтесь к курсу Машинное обучение - базовый уровень.