gpt4 book ai didi

matlab - 如何在matlab中进行曲线平滑?

转载 作者:太空宇宙 更新时间:2023-11-03 19:17:58 26 4
gpt4 key购买 nike

Gradient Image

蓝色图是原始图(红色)的噪声图。有什么方法可以使蓝色图接近红色图?

最佳答案

让我们定义一个 wavy 函数:

x = 0:.1:20;
y1 = 5*sin(x) + 2*x - x.^2 +.3*x.^3 - .2*(x-15).^4 - 10*x.^2.*cos(x./3+12).^3 + .5*(x-12).^4;

并添加大量噪音:

r = randi(1000,1,201) - 500;
y2 = y1+r;

现在制作一维高斯滤波器,将其归一化并 convolve它与我们的功能:

g = gausswin(20); % <-- this value determines the width of the smoothing window
g = g/sum(g);
y3 = conv(y2, g, 'same')

让我们看看结果

figure;
hold on;
plot(y1, 'r', 'linewidth', 3);
plot(y2, 'b');
plot(y3, 'g', 'linewidth', 3);

红色是原始函数,蓝色是噪声版本,绿色是平滑的“恢复”函数。

line graph of smoothed function

关于matlab - 如何在matlab中进行曲线平滑?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12987905/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com