利用傅里叶变换去除图像中有规律的噪声
ImageJ是一个基于java的科学图像处理软件,它是由National Institutes of Health开发的。可运行于Microsoft Windows,Mac OS,Mac OS X,Linux,和Sharp Zaurus PDA等多种平台。ImageJ能够显示,编辑,分析,处理,保存,打印8位,16位,32位的图片, 支持TIFF, PNG, GIF, JPEG, BMP, DICOM, FITS等多种格式。ImageJ支持图像栈(stack)功能,即在一个窗口里以多线程的形式层叠多个图像, 并行处理。只要内存允许,ImageJ能打开任意多的图像进行处理。除了基本的图像操作, 比如缩放,旋转, 扭曲, 平滑处理外,ImageJ还能进行图片的区域和像素统计, 间距,角度计算, 能创建柱状图和剖面图,进行傅里叶变换。
比如下面这张照片,上面有着很有规律的条纹噪声。那么其FFT频谱图上面就会对应出现非常规则的亮点。这些点就是条纹在频域空间的对应。
用ImageJ打开这张图片,然后选择Process -> FFT -> FFT生成频谱图。可以看出除中心亮点外,还对称分布着几个亮点:
现在,打开画刷(Paintbrush tool),并设置画笔颜色为黑色,然后调整画笔宽度:
如果擦掉这几个亮点,再做一次FFT反变换(Process -> FFT -> Inverse FFT),那么就能够较好的恢复原图像:
从老照片扫描或者翻拍后,由于相纸的原因,经常会有网格图案,影响显示效果。下面的例子使用同样的方法利用傅里叶变换去除原图像中的噪声:
但是,不可避免的,图像会变得模糊。
另外,在ImageJ中也可以很方便的进行区域选取。如下图所示,在工具栏上选择椭圆形选择工具,然后框选频谱图上的低频部分,菜单栏中选择Edit -> Clear将其擦除,即进行高通滤波(如果选择Edit -> Clear outside,则会将选择框外的区域擦除,即进行低通滤波)。
参考:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律