科学编程:图像卷积、微分方程与微积分
1. 图像卷积
频率方法可应用于二维信号,如视频和卫星数据流中的信号。图像中的高频噪声被称为“斑点”。由于快速傅里叶变换(FFT)的正交性,处理过程涉及独立地应用一系列行和列的FFT。
1.1 操作步骤
- 读取图像 :
cd(ENV["HOME"]*"/MJ2/DataSources");
img = open("Files/lena.pgm");
magic = chomp(readline(img));
params = chomp(readline(img));
pm = split(params)
try
global wd = parse(Int64,pm[1]);
global ht = parse(Int64,pm[2]);
catch
error("Can't figure out the image dimensions")
end
data = Array{UInt8,2}(undef,wd,ht)
readbytes!(img, data, wd*ht);
data = reshape(data,wd,ht);
close(img);
- 定义卷积核 :
Gx = [1 2 1; 0 0 0; -1 -2 -1];
Gy = [1 0 -1; 2 0 -2