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

高通滤波和低通滤波

目录

高通滤波

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

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

http://www.xdnf.cn/news/9614.html

相关文章:

  • Wi-Fi 6E/7法规认证的要求
  • AAOS系列之(五) ---CarPowerService 电源管理模块分析
  • ros2--串口通信
  • Lesson 9 防火墙 iptables 和 firewalld
  • SpringBoot 自动装配原理深度解析:从源码到实践
  • csdn_export_md
  • Linux特殊符号
  • Linux下挂载目录如何进行操作
  • C# Datatable筛选过滤各方式详解
  • PCI SSC推出PIN合规服务商列表计划
  • WES(一)——文件准备
  • 机器学习:线性回归、损失函数、导数、偏导
  • 主题阅读输出-关于成年/成熟的认识-01-学习
  • vue3 项目运行 加载 白屏
  • 嵌入式JPEG图像加水印实战技巧
  • 自我觉察是成长的第一步,如何构建内心的平静
  • 仿真每日一练 | ABAQUS水滴入水分析
  • SWMM+HTWATER最新水文水动力模型应用
  • linux版本vmware修改ubuntu虚拟机为桥接模式
  • STM32:ESP8266 + MQTT 云端与报文全解析
  • 微信小程序关于截图、录屏拦截
  • 通义实验室开源针对RAG的预训练框架
  • P1923 【深基9.例4】求第 k 小的数
  • Sentinel限流熔断机制实战
  • 软件测试计划中时间与资源的估算
  • 探索Dify-LLM:构建自定义大模型应用的高效平台
  • IO进程(进程 Process)
  • COF材料前沿应用:多孔晶态材料的催化革新之旅 | 乐研试剂
  • 华南会议|AI驱动仿真未来 2025 Altair区域技术交流会华南站,报名开启!
  • 【人工智能】DeepSeek的AI狂想曲:从训练到应用的交响乐