zoukankan      html  css  js  c++  java
  • 图像增强:直方图均衡和小波变换【matlab】

      直方图均衡:统计图像像素灰度的直方图分布。对其进行重新分配以使图像的直方图分布更加均衡。

           小波变换:图像轮廓主要体现在低频部分,可以通过对低频分解系数进行增强处理,对高频分解系数进行衰减处理,达到图像增强。

    clc;
    clear all;
    img=imread('D:文件及下载相关图片gray.jpg');
    gray_img=rgb2gray(img);                      
    [m,n]=size(gray_img);                          
    pr=zeros(1,256);                        
    for i=1:256
         pr(i)=length(find(gray_img==i-1))/(m*n);  
    end
    S=zeros(1,256);
    for i=1:256
         for j=1:i
              S(i)=pr(j)+S(i);              
         end
    end
    S1=round((S*255)+0.5);                    
    for i=1:256
         q(i)=sum(pr(find(S1==i)));         
    end
    res_img=gray_img;
    for i=1:256
        res_img(find(gray_img==i-1))=S1(i);              
    end
    imshow(res_img);
    title('均衡化后');

    小波变换:

    clc
    I= imread('D:文件及下载相关图片gray.jpg');
    I1 = I(:,:,1);
    [c,s]=wavedec2(I1,3,'sym4'); len=length(c);
    w = prod(s(1,:));
    for i =1:w  
        if(c( i )>250)  
          c( i )=1.3*c( i );  
        end  
    end  
    for i =w:len  
        if(c( i ) < 250)  
          c( i )=0.8*c( i );  
        end  
    end  
    nx1=waverec2(c,s,'sym4'); 
    I2 = I(:,:,2);
    [c,s]=wavedec2(I2,3,'sym4'); 
    len=length(c);
    w = prod(s(1,:));
    for j =1:w  
        if(c( j )>250)  
          c( j )=1.3*c( j );  
        end  
    end  
    for j =w:len  
        if(c( j ) < 250)  
          c( j )=0.8*c( j );  
        end  
    end  
    nx2=waverec2(c,s,'sym4'); I3 = I(:,:,3);
    [c,s]=wavedec2(I3,3,'sym4'); 
    len=length(c);
    w = prod(s(1,:));
    for k =1:w  
        if(c( k )>250)  
          c( k )=1.3*c( k );  
        end  
    end  
    for k =w:len  
        if(c( k ) < 250)  
          c( k )=0.8*c( k );  
        end  
    end  
    nx3=waverec2(c,s,'sym4');
    nx = cat(3,nx1,nx2,nx3);
    figure(),imshow(nx/256)
  • 相关阅读:
    抓包工具之Charles
    docker之服务搭建
    Linux之查看开放端口
    Centos7下的开机自启动
    phpredis和predis
    Redis迁移工具之Redis-shake
    服务器间文件实时双向同步(rsync+inotify)
    Linux之轨迹记录(script)
    Redis集群之常用操作
    Redis集群搭建-多服务器
  • 原文地址:https://www.cnblogs.com/wxl845235800/p/8277288.html
Copyright © 2011-2022 走看看