Azzera filtri
Azzera filtri

how can I create a circle band imaged from the 3 dots imaged?

5 visualizzazioni (ultimi 30 giorni)
how can I create a circle band imaged from the 3 dots imaged?

Risposte (1)

Image Analyst
Image Analyst il 18 Lug 2021
Not sure what you mean. Do you want a circle that bounds the 3 blobs? If so, do you want to bound the whole spot, or just the centroids? Please elaborate.
Basically, find the spots using thresholding,
mask = grayImage > someThresholdValue;
then find either
  1. the centroids with regionprops(mask, 'Centroid') or
  2. the farthest point from the center of the 3 spots using regionprops(mask, 'Centroid', 'PixelList')
Then use code from the FAQ
to fit a circle through the 3 points. Then you can use viscircles() to put the circle into the overlay above the gray scale image.
  2 Commenti
Naomi Penelope
Naomi Penelope il 18 Lug 2021
I want to create a band for each of the circles.
Image Analyst
Image Analyst il 18 Lug 2021
Simply threshold a range of values. See my interactive thresholding app:
To get only 3 blobs, you can get the 3 largest blobs like this:
% Interactively threshold the gray scale image using Image Analyst's function.
[lowThreshold, highThreshold] = threshold(lowThreshold, highThreshold, grayImage);
% Create binary image mask from the thresholds.
mask = grayImage >= lowThreshold & grayImage <= highThreshold;
% Extract 3 largest blobs which will be the rings.
mask = bwareafilt(mask, 3);

Accedi per commentare.

Community Treasure Hunt

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

Start Hunting!

Translated by