2D data line completion

1 vue (au cours des 30 derniers jours)
Mihail Petev
Mihail Petev le 16 Fév 2016
Commenté : Mihail Petev le 16 Fév 2016
Hello there,
So here is the problem I have (picture attached).
As you can see the data can be roughly presented by lines which are not straight but will cover the general behaviour of not too big divination.
What I need to to is to fill the gaps in between them (currently interested in the region with highest intensity (represented in yellow). What I could do is to filter it by intensity at the moment to create something like that:
Which is fantastic as everything apart from the region of interest is 0.
Does anyone however happen to know a clever way of filling the gaps as I said.
Thanks

Réponses (1)

Brattv
Brattv le 16 Fév 2016
Modifié(e) : Brattv le 16 Fév 2016
The binary morphology operation called closing might be good enought if everything apart from the ROI is 0. You can try it with the line shaped filter and test different length
% strel('line',line length, line angle)
Morphfilt = strel('line',1000,0);
yourImage = imclose(yourImage,Morphfilt);
  1 commentaire
Mihail Petev
Mihail Petev le 16 Fév 2016
Dear Vegard,
This approach does indeed work however it connects the missing spaces using a straight line (which is to be expected)
I am however searching for a sort of shape preserving approach (which is the reason I am thinking it might be a sort of minimilisation problem).
In other words I need to to somehow, to a certain level ,be able to predict that if you zoom in for instance here:
The best option is to lets say go a few pixels to the side and fill each gap in such manner.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Interpolation dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by