Hello Mat

 找回密码
 立即注册
查看: 5269|回复: 0

retinex图像增强算法

[复制链接]

1294

主题

1520

帖子

110

金钱

管理员

Rank: 9Rank: 9Rank: 9

积分
22633
发表于 2017-3-25 21:00:31 | 显示全部楼层 |阅读模式
retinex图像增强算法:MATLAB代码如下:
单retinex图像增强算法---多retinex图像增强算法
  1. clc,clear,close all
  2. % single scale retinex
  3. % I = imread('C:\Users\ysw\Desktop\视频讲解\图库\Tulips.jpg');
  4. I = imread('C:\Users\ysw\Desktop\视频讲解\图库\shot.jpg');
  5. [m,n,dim] = size(I);
  6. c = 5e1;  % 可变参
  7. [Y,X]=meshgrid(1:n,1:m);

  8. %Fnok = exp(-((X.^2)+(Y.^2))./(c.^2));
  9. Fnok = exp(-(((X-m/2).^2)+((Y-n/2).^2))./(c.^2));
  10. K = 1/(sum(sum(Fnok)));
  11. F = K.*Fnok;

  12. IR = double(I(:,:,1));
  13. IG = double(I(:,:,2));
  14. IB = double(I(:,:,3));
  15. FF  = fftshift(fft2(F));
  16. IFR = fftshift(fft2(IR)); IFR=FF.*IFR; IFR=real(ifft2(ifftshift(IFR)));
  17. IFG = fftshift(fft2(IG)); IFG=FF.*IFG; IFG=real(ifft2(ifftshift(IFG)));
  18. IFB = fftshift(fft2(IB)); IFB=FF.*IFB; IFB=real(ifft2(ifftshift(IFB)));

  19. RR = log10(double(IR))-log10(IFR);
  20. RG = log10(double(IG))-log10(IFG);
  21. RB = log10(double(IB))-log10(IFB);

  22. OUT(:,:,1)=uint8(255*RR/(max(max([RR RG RB]))));
  23. OUT(:,:,2)=uint8(255*RG/(max(max([RR RG RB]))));
  24. OUT(:,:,3)=uint8(255*RB/(max(max([RR RG RB]))));
  25. figure,
  26. subplot(121),imshow(I,[])
  27. subplot(122),imshow(OUT,[])

  28. % multi scale retinex
  29. % c = 45;  c = 100;  c=200;
  30. % 加权和
复制代码





参考链接:http://zoi.utia.cas.cz/research

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
算法QQ  3283892722
群智能算法链接http://halcom.cn/forum.php?mod=forumdisplay&fid=73
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Python|Opencv|MATLAB|Halcom.cn ( 蜀ICP备16027072号 )

GMT+8, 2024-4-21 00:32 , Processed in 0.233936 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表