您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 造纸印刷 > 基于高频强调滤波和直方图均衡化的医学图像增强
基于高频强调滤波和直方图均衡化的医学图像增强现代医学非常发达,能通过各种手段来获取人体的各种信息,例如,X光可以拍摄人的骨头等图片。但是,这些图片效果不一定很好,所以在使用着大量的数字成像和数字图片处理设备。那么,现在,我用Matlab这个软件对一幅胸透图片进行处理,获得更好的效果。本次软件处理实验方法是:利用高通滤波器削弱傅里叶变换的低频而保持高频相对不变点,这样会突出图像的边缘和细节,使得图像边缘更加清晰。但是由于高通滤波器偏离了直流分分量,从而把图像的平均值降低到了0,。一种补偿方法是给高通滤波器加上一个偏移量。若偏移量与滤波器乘以一个大于1的常数结合,则这种方法就称为高频强调滤波,因为该常量乘数突出了高频部分。这个乘数同时增加了低频部分的幅度,但是只要偏移量与被乘数比较小,低频增强的影响就弱于高频增强的影响。一、数学分析),(),(vuHbavuHhphfe其中,a是偏移量,b是乘数,),(vuHhp是高通滤波器的传递函数该常量乘数突出了高频部分。这个乘数同时增加了低频部分的幅度,但是只要偏移量与被乘数比较小,低频增强的影响就弱于高频增强的影响。二、Matlab代码编写主函数代码:%%%%%%clcclearf=imread('Xray1.png');%%%读入图像subplot(2,2,1);imshow(f)title('原始图像')%%%对图像进行填充PQ=paddedsize(size(f));%%%高通滤波器D0=0.05*PQ(1);HBW=hpfilter('btw',PQ(1),PQ(2),D0,2);gbw=dftfilt(f,HBW);gbw=uint8(gbw);subplot(2,2,2);imshow(gbw)title('巴特沃兹滤波后的图像')%%%高通强调滤波H=0.5+2*HBW;ghf=dftfilt(f,H);ghf=uint8(ghf);subplot(2,2,3)imshow(ghf)title('强调高通滤波后的图像')%%%对高频强调滤波后图像进行直方图均衡化ghe=histeq(ghf,256);ghe=uint8(ghe);subplot(2,2,4);imshow(ghe)title('直方均衡化图像')各函数代码:1.PQ=paddedsize(AB,CD,PARAM)对图像进行补充,以便形成的方形大小等于最小接近的2的整数次幂。functionPQ=paddedsize(AB,CD,PARAM)ifnargin==1PQ=2*AB;elseifnargin==2&~ischar(CD)PQ=AB+CD-1;PQ=2*ceil(PQ/2);elseifnargin==2m=max(AB);P=z^nextpower(2*m);PQ=[P,P];elseifnargin==3m=max([AB,CD]);P=2^nextpower(2*m);PQ=[P,P];elseerror('Wrongnumberinputs.')end2.g=dftfilt(f,H)接受输入图像f和一个滤波器函数,可以处理所有滤波器细节并输出经过滤波和剪切后的图像g。functiong=dftfilt(f,H)H1=zeros(size(H,1),size(H,2),3);H1(:,:,1)=H;H1(:,:,2)=H;H1(:,:,3)=H;F=fft2(f,size(H,1),size(H,2));g=real(ifft2(F.*H1));g=g(1:size(f,1),1:size(f,2));3.function[U,V]=dftuv(M,N)提供距离计算及其他应用所需的网格数。function[U,V]=dftuv(M,N);u=0:M-1;v=0:N-1;idx=find(uM/2);u(idx)=u(idx)-M;idy=find(vN/2);v(idy)=v(idy)-N;[V,U]=meshgrid(v,u);4.function[H,D]=lpfilter(type,M,N,D0,n)实现低通滤波波。function[H,D]=lpfilter(type,M,N,D0,n)[U,V]=dftuv(M,N);D=sqrt(U.^2+V.^2);switchtypecase'ideal'H=double(D=D0);case'btw'ifnargin==4n=1endH=1./(1+(D./D0).^(2*n));case'gaussian'H=exp(-(D.^2)./(2*(D0^2)));otherwiseerror('UNknownfiltertype.')end5.实现高通滤波。functionH=hpfilter(type,M,N,D0,n)ifnargin==4n=1;endHlp=lpfilter(type,M,N,D0,n);H=1-Hlp;三、运行结果四、结果分析图1显示了一幅胸部X光图像,图像略显模糊。所以我要对其进行处理。图2显示的是使用二阶巴特沃兹高通滤波器对图1滤波的结果。滤波结果没有什么特色,模糊的显示了边缘,因为直流分量也被虑掉了。原始图像巴特沃兹滤波后的图像强调高通滤波后的图像直方均衡化图像图3对高通的结果进行补偿,增加了偏移量0.5,此时高低频分量都增加了,由于低频分量成分引起的灰度以及色调得意保持。图4通过对高频强调滤波后图像进行直方均衡化得到结果图像。
本文标题:基于高频强调滤波和直方图均衡化的医学图像增强
链接地址:https://www.777doc.com/doc-2537505 .html