gpt4 book ai didi

matlab - 在Matlab中移除图像偏移(二维基线)

转载 作者:行者123 更新时间:2023-12-03 13:45:20 25 4
gpt4 key购买 nike

我有一张与此图像相似的图像:
enter image description here
并想要删除其基础基准,使其看起来像:
enter image description here
图像始终是不同的,通常具有一些峰并且具有总的绝对偏移和倾斜/弯曲/非线性的基面。
我正在考虑将1D基线拟合和减法技术用于常见信号频谱,并创建2D基线图像,然后在数值上彼此相减。但是我无法完全以2D方式解决这个问题。
这是我之前问过的一个改进的问题,但是这个问题应该更加清楚。

最佳答案

在我看来,我们可以采用某种高通滤波器来解决您的问题。一种方法是使用模糊滤波器(某种低通滤波器),然后从原始图像中减去模糊部分(称为“不清晰蒙版”)。因此,对于低通滤波,您可以使用带高斯的卷积运算器或仅使用普通盒滤波器。另外,您也可以使用中值滤波器,这就是我在这里所做的:
enter image description here

%% setup
v = 0:0.01:1;
[x,y] = meshgrid(v, v);
z0 = cos(pi*x).*cos(pi*y);z = z0; % "baseline" surface

pks = [1,1; 3,3; 7,5; 2,8; 7, 3]/10;% add 5 peaks
for p=pks';
z = z + exp(-((x-p(1)).^2 + (y-p(2)).^2)/0.02.^2);
end

subplot(221);mesh(x,y,z);title('data');
%% recover "baseline"
z0_ = medfilt2(z, [1,1]*20, 'symmetric'); % low pass filter of your choice

subplot(222);mesh(x,y,z0_);title('recovered baseline');
subplot(223);mesh(x,y,z0_-z0);title('error');

%% subtract recovered baseline
subplot(224);mesh(x,y,z-z0_);title('recovered baseline removed');

关于matlab - 在Matlab中移除图像偏移(二维基线),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64254303/

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