图像增强之——同态滤波
说明:同态滤波是频域滤波的一种,但是相比之下同态滤波有自己的优势,
频域滤波可以灵活地解决加性噪声问题,但无法消减乘性或卷积性噪声。
同态滤波是一种在频域中同时将图像亮度范围进行压缩和将图像对比度进行增强的方法,是基于图像成像模型进行的。
一幅图f(x,y)可以表示成照度分量i(x,y)与反射分量r(x,y)的乘积,同态滤波基本思想:
为了分离加性组合的信号,常采用线性滤波的方法,而非加性信号组合常用同态滤波的技术将非线性问题转化成线性问题处理,即先对非线性(乘性或者卷积性)混杂信号作某种数学运算,变换成加性的。然后用线性滤波方法处理,最后作反变换运算,恢复处理后图像。
同态滤波流程图
(1)两边取对数
(2)两边取付氏变换
(3)用一频域函数 H(u, v)处理F(u, v),H(u,v)是同态滤波函数
(4)反变换到空域
(5)两边取指数
可见,增强后的图像是由分别对应照度分量与反射分量的两部分叠加而成。因为一般照度分量是在空间缓慢变化的,而反射分量在不同物体的交界处是急剧变化的。所以,图像对数傅里叶变换中的低频部分主要对应照度分量,而高频部分主要对应反射分量。
我们可以设计1个对傅里叶变换的高频分量和低频分量影响不同的滤波函数H(u,v)。
图 同态滤波器的剖面图
如果选取 HL<1, HH>1,滤波器函数将减弱低频部分,扩大高频部分,最后的结果将同时压缩了图像的动态范围,又增加了图像各部分之间的对比度。
特点:能消除乘性噪声,能同时压缩图像的整体动态范围,并增加图像中相邻区域间的对比度。
注意到,同态滤波器的函数图象跟高通巴特沃斯或者高通高斯滤波器很像,所以为了实现同态滤波器,实际上只需要对上述滤波器稍加改动即可以用高通滤波器的转移函数来逼近同态滤波函数,设高通滤波器的转移函数为Hhigh(u,v),同态滤波函数用Hhomo(u,v)表示
,则由Hhigh(u,v)到Hhomo(u,v)的映射为:
Hhomo(u,v)=(HH-HL)*Hhigh(u,v)+HL
下面张贴一段用MATLAB实现同态滤波的代码:
clear;close all;[name,path] = uigetfile('lena.bmp');file = strcat(path,name);[X,map]=imread(file);X=double(X);I=rgb2hsv(X);H=I(:,:,1);S=I(:,:,2);V=I(:,:,3);%if size(X,3)==3% X= rgb2gray(X); %end% 装载图片% 显示这个图片figure,imshow('lena.bmp');title('原始图像');% 构造一个高斯滤波器f_high = 1.0;f_low = 0.8;% 得到一个高斯低通滤波器gauss_low_filter = fspecial('gaussian', [7 7], 1.414);matsize = size(gauss_low_filter);% 由于同态滤波是要滤出高频部分,% 所以得把这个低通滤波器转换成一个高通滤波器.% f_high 和 f_low 是控制这个高通滤波器形态的参数.gauss_high_filter = zeros(matsize);gauss_high_filter(ceil(matsize(1,1)/2) , ceil(matsize(1,2)/2)) = 1.0;gauss_high_filter = f_high*gauss_high_filter - (f_high-f_low)*gauss_low_filter;% 利用对数变换将入射光和反射光部分分开log_img = log(double(V)+eps);% 将高斯高通滤波器与对数转换后的图象卷积high_log_part = imfilter(log_img, gauss_high_filter, 'symmetric', 'conv');% 由于被处理的图象是经过对数变换的,再用幂变换将图象恢复过来high_part = exp(high_log_part);minv = min(min(high_part));maxv = max(max(high_part));% 得到的结果图象temp=(high_part-minv)/(maxv-minv);S=adapthisteq(S)*2.1; HSV3(:,:,1)=H; %保留H不变,开始合成HSV3(:,:,2)=S;HSV3(:,:,3)=temp;rgb2=hsv2rgb(HSV3); %转换回RGB空间figure;imshow(rgb2);title('同态滤波图像');
————————————————
版权声明:本文为CSDN博主「水木剑锋」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/sinat_34035510/article/details/51337266
图像增强之——同态滤波相关推荐
- 图像增强之同态滤波python实现——20221204工作总结
目录 参考 同态滤波python实现 代码 效果 参考 [1]https://wenku.baidu.com/view/4eb598180a12a21614791711cc7931b765ce7ba9 ...
- MATLAB图像处理_同态滤波1
原 MATLAB图像处理_同态滤波 2015年01月20日 09:54:25 风雨也无晴 阅读数:14234 <span class="tags-box artic-tag-box&q ...
- MATLAB数字图像处理复习概览
MATLAB数字图像处理 第1章 绪论 数字图像的概念 数字图像处理 第2章 数字图像处理基础 数字图像的生成与表示 数字图像的数值描述 第3章 图像基本运算 图像几何变换 几何变换基础 位置变换 几 ...
- 图像增强去雾之直方图均衡化/同态滤波/Retinex算法
图像增强去雾之直方图均衡化/同态滤波/Retinex算法 最近撸了一发图像去雾的算法,主要举四个例子,分别用了全局直方图均衡化,局部直方图均衡化,同态滤波,Retinex增强算法.感兴趣的可以一起讨论 ...
- 【图像增强】HSI+同态滤波彩色图像增强【含Matlab源码 1515期】
⛄一. 图像增强技术简介 1 图像增强 图像增强是对图像的某些特征,如边缘.轮廓.对比度等进行强调或锐化,以便于显示.观察或进一步分析与处理.通过对图像的特定加工,将被处理的图像转化为对具体应用来说视 ...
- 图像增强之一种改进的同态滤波增强算法-221211工作总结
目录 一.参考 二.背景 三.步骤 四.加权分布的自适应伽马校正(AGCWD) 1.背景 2.原理 3.函数补充 1. cv2.calcHist()函数 2. img.convert() 五.单参数同 ...
- 图像处理之同态滤波实现灰度图像增强
一.同态滤波基本原理 同态滤波是在频域对图像增强的方法,利用滤波算法减弱低频部分,增强高频部分,来减少光照变化和使边缘锐化.细节突出. 对于图像 f(x,y) 可由照射分量 i(x,y) 和反射分量 ...
- 数字图像处理 第四章 图像增强
图像增强 图像增强按照作用域可分为空域法和频域法两类. 1.空域法 空域法是直接对图像的像素灰度值进行操作.常用的空域法包括图像的灰度变换.直方图修正.图像空域平滑和锐化处理.彩色增强等. 2.时域法 ...
- 图像处理与图像识别笔记(三)图像增强1
图像增强的目的是为了改善图像的视觉效果,为了更便于人或机器的分析和处理,在不考虑图像降质(前提)的情况下,提高图像的可观性.灰度变换是一种典型的图像增强方法,我们通常把图像处理按照处理方法分成空域方法 ...
最新文章
- not exists 跟not in 纪念一下
- 欢迎加入网络管理论坛群
- 如何处理xml文件!看看这里
- CPA相关功耗分析(一)
- matlab程序怎么改,修改matlab程序
- oracle怎么格式化sql语句,Oracle sqlplus格式化数据
- 基于android平台的24点游戏设计与实现需求分析,基于Android平台的24点游戏设计与实现需求分析_毕业设计论文.doc...
- Linux C 错误 invalid application of 'sizeof' to incomplete type 解决方案
- 千万数据去重_如何在 1 秒内做到大数据精准去重?
- Windows Driver开发_TraceEvents调试以及加载驱动的方法
- extjs-mvc结构实践(二):基本页面
- 181031每日一句
- 安卓游戏广告加速插件_游戏加速器(强烈推荐!)[PC+安卓]
- “我被苹果人脸识别系统「坑」进了监狱”
- 爬虫项目实操五、用Scrapy爬取当当图书榜单
- Python - 安装sentencepiece异常
- 如何在Google文档中添加文本框
- 备份微信聊天记录为 txt 格式保存(免 root)
- 阿里云盘内测邀请码是多少?阿里云盘邀请码获得方法
- 新型冠状病毒的信息汇总与分析 (形态,分类,基因组,进化,变异,流行病学)