返回信息流下面是本人在网上找的关于暗原色去雾的一段程序,由于不会matlab,不大能看懂,求大牛帮忙解释一下~感激不尽!
I=imread('C:\Documents and Settings\group\桌面\1.png ');
imshow(I);
[M,N,Q]=size(I);
G=uint8(zeros(M,N));
for m=1:M-1
for n=1:N-1
a=I(m,n,1);
b=I(m,n,2);
c=I(m,n,3);
if a>b
a=b;
end
if a>c
a=c;
end
G(m,n)=a;
end
end
H=G;
for m=8:M-7
for n=8:N-7
c=G(m-2,n-2);
for x=m-7:m+7
for y=n-7:n+6
a=G(x,y);
b=G(x,y+1);
if a>b
a=b;
end
if c>a
c=a;
end
end
end
H(m,n)=c;
end
end
figure,
imshow(H);
c=H(12,12);
r=12;
u=12;
for m=1:M
for n=1:N
a=H(m,n);
if a>c
c=a;
r=m;
u=n;
end
end
end
A0=c;
t=double(zeros(M,N));
t=1-0.95*double(H)/double(A0);
figure,
imshow(t);
for m=1:M
for n=1:N
if t(m,n)<0.1
t(m,n)=0.1;
end
end
end
J=double(I)/255;
A1=double(I(r,u,1))/255;
A2=double(I(r,u,2))/255;
A3=double(I(r,u,3))/255;
for m=1:M
for n=1:N
J(m,n,1)=(double(I(m,n,1))/255-A1)/t(m,n)+A1;
J(m,n,2)=(double(I(m,n,2))/255-A2)/t(m,n)+A2;
J(m,n,3)=(double(I(m,n,3))/255-A3)/t(m,n)+A3;
end
end
figure,
imshow(J)
这是一条镜像帖。来源:北邮人论坛 / matlab / #9025同步于 2012/5/13
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Matlab机器人发帖
暗原色去雾
qyu08
2012/5/13镜像同步1 回复
订阅后,新回复会通过你的通知中心匿名送达。
1 条回复