当前位置: 首页 > news >正文

高通滤波和低通滤波

目录

高通滤波

1.产生一个高通滤波器

 2.通过傅里叶进行频域转换

3. 使用卷积进行运算(使用高通滤波)

4. 傅里叶进行逆转换

镜像颠倒的算子

低通滤波


高通滤波

高通滤波:用于增强边缘和细节,抑制低频信息(平滑区域);过程:产生一个滤波器--->傅里叶频域转换--->使用卷积运算--->傅里叶逆转换

1.产生一个高通滤波器

read_image (Image, 'printer_chip/printer_chip_01')
get_image_size (Image, Width, Height)
dev_display (Image)

gen_highpass (ImageHighpass, 0.01, 'none', 'dc_center', Width, Height)

* 参数1 输出高通滤波图像
* 参数2 截止频率 值越小,保留的高频的成分越多,边缘更突出,值越大 只保留极高频的部分,建议值0.05 保留大部分的高频部分;
* 参数3 none 不采用归一化,
* 参数4 'dc_center' 频域中心模式
* 参数5、6 与图像大小保持一致

最终效果如下图(图1):

原图
图1
 2.通过傅里叶进行频域转换

 fft_generic (Image, ImageFFT, 'to_freq', -1, 'sqrt', 'dc_center', 'complex')

* 参数1 要转换的图像
* 参数2 输出图像
* 参数3 to_freq:把空域图像转成频域图像;from_freq:把频域逆转成空域图
* 参数4 转换缩放方式  -1:正向不缩放,逆向缩放;1:正向缩放,逆向不缩放;0:不缩放
* 参数5 使用sqrt 表示缩放因子为1/sqrt(N),N 像素个数
* 参数6 频域中心模式
* 参数7 图像格式是实数和虚数部分都有

最终效果如下图(图2):

图2
3. 使用卷积进行运算(使用高通滤波)

convol_fft (ImageFFT, ImageHighpass, ImageConvol)

* 参数2 高通滤波器

最终效果如下图(图3):

图3
4. 傅里叶进行逆转换

fft_generic (ImageConvol, ImageFFT1, 'from_freq', -1, 'none', 'dc_center', 'real')

* 参数5 'none' 正向已经使用sqrt,逆向时候尽量不要再去使用sqrt,会导致图像变暗

            'real' 实数部分,消除虚部带来的噪声

最终效果如下图(图4):

图4

最后结果:经过高通滤波之后图象是颠倒的,主要是图像格式是包含实部和虚部,再进行转换的时候,把实部和虚部也进行颠倒了导致图像会偏移处理时候可以镜像算子把图像再颠倒过来。

镜像颠倒的算子

* 行颠倒

mirror_image (ImageFFT1, ImageMirror, 'row')

* 列颠倒

mirror_image (ImageMirror, ImageMirror1, 'column')
dev_display (ImageMirror1)

最终效果如下图(图5):

图5

低通滤波

低通滤波:允许低频成分通过。抑制高频成分,能够使图像进行平滑调整。

read_image (Image, 'printer_chip/printer_chip_01')
dev_display (Image)
get_image_size (Image, Width, Height)

* 创建一个椒盐噪声
sp_distribution (5, 5, Distribution)
* 将噪声添加到Image上 产生一个带有噪声的图像
add_noise_distribution (Image, ImageNoise, Distribution)

dev_display (ImageNoise)

* 获取一个低通滤波模型
gen_lowpass (ImageLowpass, 0.1, 'none', 'dc_center', Width, Height)

最终效果如下图(图1-1):

添加椒盐后的图片,原图如上一致
图1-1

* 对图像进行傅里叶变换到频域图像
fft_generic (ImageNoise, ImageFFT, 'to_freq', -1, 'sqrt', 'dc_center', 'complex')

最终效果如下图(图1-2):

* 对频率图像进行低通滤波
convol_fft (ImageFFT, ImageLowpass, ImageConvol)

最终效果如下图(图1-3):


* 对的到的频率进行傅里叶变换
fft_generic (ImageConvol, ImageFFT1, 'from_freq', -1, 'none', 'dc_center', 'real')

最终效果如下图(图1-4):

图1-2
图1-3
图1-4

我们可以发现经过低通滤波的图片最终效果也是颠倒的,可以使用上面高通滤波同样处理颠倒后图片的方法。 

相关文章:

  • 针对C语言的开发工具推荐及分析(涵盖编辑器、集成开发环境(IDE)、编译器、调试工具及辅助工具)
  • 电子电路:什么是C类放大器?
  • 【C++基础知识】【ASAN】
  • Kafka KRaft + SSL + SASL/PLAIN 部署文档
  • Python应用while循环猜数字
  • HTML5 视频播放器:从基础到进阶的实现指南
  • 电脑开机后出现bootmgr is conmpressed原因及解决方法
  • Android-GestureDetector学习总结
  • Hadoop复习(二)
  • 【组件】翻牌器效果
  • CSS3实现的账号密码输入框提示效果
  • [CSS3]vw/vh移动适配
  • Hadoop复习(一)
  • AWS WebRTC:获取ICE服务地址(part 1)
  • 2025.05.28【Choropleth】群体进化学专用图:区域数据可视化
  • day023-面试题总结
  • 中企出海大会|打造全球化云计算一张网,云网络助力中企出海和AI创新
  • 智能手表怎么申请欧盟EN 18031认证
  • Building Android Kernels with Bazel
  • Eclipse 插件开发 5.2 编辑器 获取当前编辑器
  • 制作广告/宁波谷歌seo推广公司
  • 武汉住建局官方网站/百度怎么推广自己的作品
  • 云南定制化网站建设/网站设计论文
  • 做网站要实名吗/株洲seo优化推荐
  • 响应式网站用什么技术做/交换链接营销实现方式解读
  • 老板让我做网站负责人/网站建设方案内容