Azzera filtri
Azzera filtri

erosion and dilation in signal processing

6 visualizzazioni (ultimi 30 giorni)
we need codes for erosion and dilation in signal processing...as imdilate and imerode functions can only be used in image processing..

Risposta accettata

Image Analyst
Image Analyst il 4 Feb 2012
They can be used for 1D signals, if you have the Image Processing Toolbox. Do you have that toolbox? If not, you might play around with this approach:
windowSize = 3;
originalSignal = rand(10,1)
hank = hankel(originalSignal)
h3 = hank(:,1:windowSize)
dilatedSignal = max(h3, [], 2)
  9 Commenti
John Cristion
John Cristion il 20 Feb 2020
Kernel may need to be transposed
Image Analyst
Image Analyst il 21 Feb 2020
You can still view the dilated image even though you get a warning that says it will shrink it down to fit onto the screen. You can safely ignore that warning. It's not serious. If you want to see it pixel for pixel, use the zoom tool to zoom in.

Accedi per commentare.

Più risposte (1)

shelley
shelley il 22 Ago 2014
Yes, it is doable. It is better to binarize the signal first, and then use the command like
sel=strel('line',120,90);
%the length 120 depends on how big the gap you want to close/seal.
%the degree 90 or 0 depends on your 1D signal is in vector or row format;
results=imdilate(1Dsig,sel);

Community Treasure Hunt

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

Start Hunting!

Translated by