Smoothing Functions without distorting matrices' edges
soren at hauberg.org
Sun Sep 24 03:38:42 CDT 2006
When you say "without severely distorting the edges" do you mean:
1) The border of the matrix, or
2) points with high gradients?
In the case of 1) you can use normalised convolution instead of regular
convolution. I'm attaching a simple function for this.
In the case of 2) you should probably use some non-linear diffusion. A
lot of people use the Perona-Malik algorithm, but in general I think the
algorithms of Joachim Weickert work better. You can find an
implementation of the Perona-Malik algorithm at
Hope that helps just a little bit
lør, 23 09 2006 kl. 19:21 -0700, skrev Robert A. Macy:
> This may be slightly OT, but maybe someone may know an easy
> function to do this - smooth a matrix without severely
> distorting the edges.
> I have a matrix, say 1200 by 150, containing "trend"
> values. Each row is expected to be much like an adjacent
> row and across the columns tends to be some unknown gentle
> curvature. The matrix contains a high percentage of noise,
> as much as 300%.
> I have written my own smoothing techniques to prevent
> severe distortion to the edges of the matrix, but alas
> being non-vectorized they are very slow.
> The best candidate so far has been to use conv2 buried in a
> specialized processing function, coupled with a small size
> How does one smooth a matrix and NOT severely distort the
> edges? Is there some easy way to do this?
> - Robert -
> Help-octave mailing list
> Help-octave at octave.org
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 292 bytes
Desc: not available
More information about the Help-octave