资讯详情

matlab图像处理实现低通滤波

matlab图像处理实现低通滤波

matlab图像处理实现低通滤波

clc;

clear all;

img=imread('lena.jpg');

img_noise = imnoise(img, 'gaussian', 0, 0.01);

subplot(2,2,1),imshow(img_noise);

title(原图像);

% 将低频移动到图像频也很重要

s=fftshift(fft2(img_noise));

subplot(2,2,3),imshow(log(abs(s)),[]);

title(图像傅里叶转换为对数所得频谱);

% 我们根据图像上的点距离中心点的距离进行后续处理

[a,b] = size(img);

a0 = round(a/2);

b0 = round(b/2);

d = min(a0,b0)/12;

d = d^2;

for i=1:a

for j=1:b

distance = (i-a0)^2 (j-b0)^2;

if distance

h = 1;

else

h = 0;

end

low_filter(i,j) = h*s(i,j);

end

end

subplot(2,2,4),imshow(log(abs(low_filter)),[])

title(低通滤波频谱);

new_img = uint8(real(ifft2(ifftshift(low_filter))));

subplot(2,2,2),imshow(new_img,[])

title(低通滤波后的图像);

这是一种由傅里叶变换制成的低通滤波,用于学习图像处理。虽然傅里叶变换很复杂,但是matlab直接调用fft和fft这个真的很方便

s=fftshift(fft2(img_noise));

由于使用,这句话实现了将低频转移到图像中间fft图像高频在中间,低频分散到四个角落

[a,b] = size(img);

a0 = round(a/2);

b0 = round(b/2)

一开始我也没搞明白这是干嘛的,后来明白了就茅塞顿开,这是在求解图形的中心点,之后的距离计算和滤波都与这个点有关

for i=1:a

for j=1:b

distance = (i-a0)^2 (j-b0)^2;

if distance

h = 1;

else

h = 0;

end

low_filter(i,j) = h*s(i,j);

end

end

这是基于距离的滤波器。所谓低通就是保留靠近中心点的值。同样,高通也是保留远距离值。当然,它可以直接在这里使用fft2变换后的图像处理应该更方便。至于带通带阻,都差不多。

最后,展示结果

e8992903ef54392390fd736c508f5457.png

matlab图像处理实现教程图像处理

在matlab使用遗传算法(GA)全球最大值求取函数

在matlab使用遗传算法(GA)全球最大值求取函数 简单实现遗传算法 今天学习了遗传算法,其最大的特点就是能求取全局最优值,但是算法随机性高,对连续定义域很难求得精确解,本文仅参考遗传算法的思想,在整数范围内,来全球最大值求取函数 首先回顾一下

【web17.点击跳转锚点(vue)

【web17.点击跳转锚点(vue) div class=big-data-content-bottom section class=content-bottom-one id=one p class=content-bottom-one-title平台技术框架/平台技术框架/p p class=content-bottom-one-contentnbsp;nbsp;nbsp;nbsp; 海隆行建在Hadoop分布式文

数字图像处理锐化的原理_数字图像锐化的工作原理以及为什么要使数字图像锐化

数字图像处理锐化的原理_数字图像锐化的工作原理以及为什么要使用它 数字图像处理锐化的原理 ( Why Exactly Are Images Fuzzy in the First Place? ) Before we dig into how to sharpen your images it is important to understand exactly why digital ima

android连网详解——android.net、org.apache.http联网实现

android连网详解——android.net、org.apache.http联网实现 为什么80%的码农不能当架构师? 1.介绍网络相关包 今天我们将深入介绍Android SDK 其中一些与网络有关package,如下: 包描述 java.net 提供与互联网相关的类别,包括流量和数据包(datagram)sockets

一致性hash算法原理及php实现

一致性hash算法原理及php实现 在使用分布式存储时,我们应该考虑如何在多个节点库中均匀分布数据?而且后期的数据搜索也很方便。 hash取模 假设根据用户介绍有N个存储节点key(key有独特性),index = hash(key) % N计算在哪个节点上存储数据。 一

重学数据结构-二分搜索树及其各种操作(kotlin实现)

重学数据结构-二分搜索树及其各种操作(kotlin实现) 在开始之前,我们应该谈谈什么是二叉树。 二叉树是什么? 和链表一样,它也是动态数据结构 二叉树有唯一的根节点 class NodeE { var e: E? = null var left: NodeE? = null var right: NodeE? = null}

实现较低的计时器粒度重传TCP(RTO):如何减少时间轮算法的费用?

实现较低的计时器粒度重传TCP(RTO):如何减少时间轮算法的费用? 《TCP/IP协议栈:TCP超时重传机制 Table of Contents 计时器轮算法 使用计时器轮算法实现计时器轮算法RTO 概要 AIX传输控制协议(TCP)为每个连接维护七个计时器: 建立连接 重传 延迟确认(ACK) 持久

【C语言程序设计】C语言实现一元二次方程的求解

【C语言程序设计】C语言实现一元二次方程的求解 一元二次方程的一般形式: 分析求解过程: 当a=0,不能构成一元二次方程。 当b=0不一定构成等式 当c=0,即恒等式0=0 考虑实根和虚根,当a不等于0时,可以构成一元二次方程 基于伪代码,实现一元二次方程的要求

标签: 滤波连接器特点

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台