Azzera filtri
Azzera filtri

2D data line completion

1 visualizzazione (ultimi 30 giorni)
Mihail Petev
Mihail Petev il 16 Feb 2016
Commentato: Mihail Petev il 16 Feb 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

Risposte (1)

Brattv
Brattv il 16 Feb 2016
Modificato: Brattv il 16 Feb 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 Commento
Mihail Petev
Mihail Petev il 16 Feb 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.

Accedi per commentare.

Categorie

Scopri di più su Images in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by