Я пытаюсь решить домашнюю задачу, в которой мне нужно получить маску из одного изображения (DAPI), а затем применить ее ко второму изображению (NPM1) ячеек (это те же самые ячейки в одном и том же месте)
Я бегал кругами около 4 часов, пытаясь применить маску, используя подход True / False, но, похоже, она не работает. Я попробовал и потерпел неудачу с кучей других подходов, но просто вставил тот, который, как я думал, скорее всего сработает (я супер новичок в кодировании)
%matplotlib inline
import matplotlib.pyplot as plt
import numpy as np
from PIL import Image
from skimage.color import rgb2gray
import cv2
#Load the images
image = np.array(Image.open("NOTREATDAPI.jpg"))
image1 = np.array(Image.open("NOTREATNPM1.jpg"))
No_Treat_DAPI = rgb2gray(image)
No_Treat_NPM1 = rgb2gray(image1)
plt.imshow(image)
#Create a mask using the DAPI image
arr = np.array(No_Treat_DAPI)
DAPI_stain = arr[:,0] > 25
plt.imshow(arr)
Изображение DAPI:
Изображение NPM1:
Я пытаюсь получить только те области на исходном изображении, которые имеют интенсивность 25 или более, чтобы все черное пространство в нем не учитывалось в маске, так как я пытаюсь получить гистограмму Интенсивность клеток в изображении NPM1.