处理图像光线不均的方法有多种,下面是自己做的几个程序
g1=histeq(I); %直方图均衡化
直方图均衡化可以起到调整光线的作用,但是效果很不好,会出现“斑块”
%同态滤波
F=fftshift(fft2(log(I1)));
[u,v]=dftuv(M,N);
Rh=2;Rl=0.5;c=3.8;D0=0.05*N;n=3; %同态滤波参数Rh,Rl,c,D0,n
D=sqrt(u.^2+v.^2);
H=(Rh-Rl).*(1./(1+(D0./(c*D)).^(2*n)))+Rl; %改进的三阶巴特沃斯同态滤波函数
H=fftshift(H);
G=H.*F;
g=im2uint8(mat2gray(exp(real(ifft2(ifftshift(G))))));
subplot(221),imshow(I),title('原图像');
subplot(222),imhist(I),title('原图像直方图');
subplot(223),imshow(g),title('同态滤波后图像');
subplot(224),imhist(g),title('同态滤波后图像直方图');
同态滤波是常用的方法之一,滤波函数和参数可以自己选择
%Gamma矫正
function light_operation(I)
% I=rgb2gray(I);
% [M,N]=size(I);
% imsho
最后
以上就是傻傻香水最近收集整理的关于matlab中采集图片的光照不均匀,Matlab图像光线不均的预处理的全部内容,更多相关matlab中采集图片内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复