How to separate and label elements

Hi there,
For a project, I have to analyse crystals of sugar and mesure the density, volume, surface, etc... The input is a .tif image, composed of 600 frames. So a "3D picture".
I would like to identify each crystal, and create an histogram based on the measures. After that, isolate one grain and use the 3D viewer and regionprops3 to get the information about one average grain of sugar. The problem is, most of the cristals are touching each other, and appeared connected. So the labelling isn't working : I can only get around 20 grains on the 230.
I use the image processing toolbox.
Is there any way to identify and label each grain, without altering the shape of the sugar?
After a threshold, I've tried imerode(), followed by bwlabeln() and then imdilate(), without a lot of sucess. Same with imopen() : some grains are still connected.
Original picture (frame 1) :

Answers (0)

Categories

Products

Release

R2020a

Asked:

on 27 May 2020

Community Treasure Hunt

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

Start Hunting!