Я пытаюсь количественно оценить большой набор данных изображения. Каждое изображение имеет клетки и ядра. То, что нужно сделать, представлено в схематичном виде как «то, что мне нужно»:
Пример изображения показан в «необработанном изображении»:
Я нашел онлайн-программу алгоритма водораздела для подсчета клеток, но я не смог подсчитать количество ядер внутри (и снаружи) клеток.
Вот программа, которую я использовал для подсчета ячеек из необработанного изображения.
#import packages
import numpy as np
import matplotlib.pyplot as plt
from skimage import io, color, filters as filters
from scipy import ndimage
from skimage.morphology import watershed
from skimage.feature import peak_local_max
from skimage.measure import regionprops, label
import numpy as np
from scipy.ndimage import gaussian_filter
import matplotlib.pyplot as plt
from skimage import data
from skimage import img_as_float
from skimage.morphology import reconstruction
import skimage
from skimage import segmentation
%matplotlib inline
import matplotlib
#import image
from IPython.core.display import Image
Image(filename=('/Users/sasi/Desktop/image1.jpeg'))
# Find number of cells
image = color.rgb2gray(io.imread('/Users/sasi/Desktop/image1.jpeg'))
image = image < filters.threshold_otsu(image)
distance = ndimage.distance_transform_edt(image)
local_maxi = peak_local_max(distance, indices=False, footprint=np.ones((3, 3)), labels=image)
markers, num_features = ndimage.label(local_maxi)
labels = watershed(-distance, markers, mask=image)
regions = regionprops(labels)
regions = [r for r in regions if r.area > 60]
print('Number of cells:', len(regions) - 1)
Как мне подсчитать количество ядер внутри клетки, а также количество ядер во всем изображении? Кроме того, если у вас есть другая лучшая программа для подсчета клеток, пожалуйста, дайте мне знать.