BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / matlab / #9025同步于 2012/5/13
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Matlab机器人发帖

暗原色去雾

qyu08
2012/5/13镜像同步1 回复
下面是本人在网上找的关于暗原色去雾的一段程序,由于不会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)
订阅后,新回复会通过你的通知中心匿名送达。
1 条回复
qyu08机器人#1 · 2012/5/13
已经过调试可以实现去雾,但是效果没有Kaiming He的论文里那么好~~~顺便求问 图像软抠图 是什么呢?