Borrar filtros
Borrar filtros

Macroscopic Specimen image Sectioning

31 visualizaciones (últimos 30 días)
Jen
Jen el 1 de Ag. de 2024 a las 15:22
Respondida: Image Analyst el 9 de Ag. de 2024 a las 20:01
Hi everyone,
Would I be able to make an image similar to this in MATLAB?

Respuestas (2)

Image Analyst
Image Analyst el 1 de Ag. de 2024 a las 17:13
Yes. What are you starting with?
If you have any more questions, then attach your data and code to read it in with the paperclip icon after you read this:
  1 comentario
Jen
Jen el 8 de Ag. de 2024 a las 15:57
Hi, I believe I would be starting with tissue section images. I don't have any code, I just need some direction on where to start. In the article that the picture is taken from, the method is this :
" Fluorescent antibody distribution area was segmented using a customized thresholding algorithms2. In brief, the intensity histogram of the tumor pixels were calculated and fitted into a “loglogistic” distribution (MATLAB function). Then a threshold was then experimentally identified based on the histogram distribution and a binary mask was generated with the threshold."
Sorry I cannot provide much data, I am currently just trying to learn the software.

Iniciar sesión para comentar.


Image Analyst
Image Analyst el 9 de Ag. de 2024 a las 20:01
It's a generic, general purpose demo of how to threshold an image to find blobs, and then measure things about the blobs, and extract certain blobs based on their areas or diameters.
Also see some attached demos on fitting data to distributions (formulas). Adapt them to fit a log normal distribution. Then I don't know what criteria they used to pick the threshold. Perhaps it was something like down a certain percentage from the peak of the fitted distribution. Or you could think of your own criteria. Maybe a triangle threshold would be fine. I'm attaching a function for that too.
I'm not sure what you want to do. In your original question you just seemed to say you wanted to stitch images side by side in a horizontal row. But then some images are also pseudocolored, and some have contours overlaid on them.
Why don't you start your code by writing comments. Each comment would essentially say what you need to do. With enough of these you essentially have pseudocode, like
% Construct file name.
% Read in image.
% Threshold image.
% Create binary image mask.
% Fill Holes.
% Take largest blob.
% Measure blob's properties such as Area and brightness.
% Export results to Excel.
% and so on.
and then you can just follow up comment with the MATLAB code to do that task,like
% Construct file name.
baseFileName = 'slice1.png';
fullFileName = fullfile(pwd, baseFileName);
% Read in image.
rgbImage = imread(fullFileName);
grayImage = rgb2gray(rgbImage);
% Threshold image.
threshold = 129;
% Create binary image mask.
mask = grayImage > 129;
% Fill Holes.
mask = imfill(mask, 'holes');
% Take largest blob.
mask = bwareafilt(mask, 1);
% Measure blob's properties such as Area and brightness.
props = regionprops(mask, grayImage, 'Area', 'MeanIntensity')
allAreas = [props.Area];
allIntensities = [props.MeanIntensity];
% Export results to Excel.
data = [allAreas(:), allIntensities(:)];
writeMatrix(data, 'My Results.xlsx');
% and so on.

Categorías

Más información sobre Image Processing Toolbox en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by