How can I identify/Detect regions in grayscale image with thin border?

3 visualizzazioni (ultimi 30 giorni)
Hi All, Am working on a problem where I wish to extract regions in the image below.
Objective: - Identify every region. - Calculate the Area and related parameters.
What I have done?
  • Read image and convert to Grayscale
[MainImg, MainImg_Map] = imread('MainImg');
GrayImg = ind2gray(MainImg,MainImg_Map); #Convert to Gray
  • Detect Edges
FindEdge_Sobel = edge(GrayImg, 'sobel');
  • Create structuring element to make borders more visible
se1 = strel('line',3, 90);
se0 = strel('line',3, 0);
  • Dilate the Image objects
ImgDill = imdilate(FindEdge_Sobel ,[se1 se0]);
  • Result:
MORE QUESTIONS: > How to set foreground and Background for the image? > How I can make those border to enclose region as in Original Image?

Risposte (1)

KSSV
KSSV il 21 Ago 2018
Have a look on regionprops
  1 Commento
AMAR P
AMAR P il 21 Ago 2018
Modificato: AMAR P il 21 Ago 2018
Hey Thanks, I tried that earlier. Below is the Output. Red *'s are Center of the object, measured using 'Centeroid'
Am trying to use couple of Morphological operations on the image. What do you think?

Accedi per commentare.

Prodotti


Release

R2015a

Community Treasure Hunt

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

Start Hunting!

Translated by