精华内容
下载资源
问答
  • 2021-11-27 16:35:56

    图像处理-双边滤波和联合双边滤波

    双边滤波原理

    ​ 双边滤波(Bilateral Filter)是一种非线性滤波器,可以达到保持边缘,降噪平滑的效果。其算法最早由C. Tomasi和R. Manduchi在论文《Bilateral Filtering for Gray and Color Images》中提出,按照原文中的话说It combines gray levels or colors based on both their geometric closeness and their photometric similarity, and prefers near values to distant values in both domain and range. 双边滤波的权重不仅考虑了像素的欧氏距离(如普通的高斯低通滤波,只考虑了位置对中心像素的影响),还考虑了像素范围域中的辐射差异(例如卷积核中像素与中心像素之间相似程度、颜色强度,深度距离等),在计算中心像素的时候同时考虑这两个权重。


    1. 空间权重:空间域(spatial domain S)与像素位置有关,为像素之间的距离(欧式距离),定义为全局变量,通常定义如下:
      s ( ξ , x ) = e − 1 2 ( d ( ξ , x ) σ d ) 2 s(\xi,x) = e^{-\frac{1}{2}(\frac{d(\xi,x)}{\sigma{_d}})^2} s(ξ,x)=e21(σdd(ξ,x))2
      其中 d ( ξ , x ) = ∣ ∣ ξ − x ∣ ∣ d(\xi,x)=||\xi-x|| d(ξ,x)=ξx表示两个像素之间的欧式距离,滤波过程如下:
      h ( x ) = k d − 1 ( x ) ∫ − ∞ ∞ ∫ − ∞ ∞ f ( ξ ) s ( ξ , x ) d ξ h(x)=k_d^{-1}(x)\int_{-\infty}^{\infty}\int_{-\infty}^{\infty}f(\xi)s(\xi,x)d\xi h(x)=kd1(x)f(ξ)s(ξ,x)dξ
      权值为: k d ( x ) = ∫ − ∞ ∞ ∫ − ∞ ∞ s ( ξ , x ) d ξ k_d(x)=\int_{-\infty}^{\infty}\int_{-\infty}^{\infty}s(\xi,x)d\xi kd(x)=s(ξ,x)dξ

    可以解释为:

    空间域

    1. 相似权重:像素范围域(range domain R)与像素值大小有关,为像素值之间的距离(辐射距离,相似性度量),根据像素值不同而不同,需要放在循环内,通常定义为:
      r ( f ( ξ ) , f ( x ) ) = e − 1 2 ( d ( f ( ξ ) , f ( x ) ) σ r ) 2 r(f(\xi),f(x)) = e^{-\frac{1}{2}(\frac{d(f(\xi),f(x))}{\sigma{_r}})^2} r(f(ξ),f(x))=e21(σrd(f(ξ),f(x)))2
      其中 d ( f ( ξ ) , f ( x ) ) = ∣ ∣ f ( ξ ) − f ( x ) ∣ ∣ d(f(\xi),f(x))=||f(\xi)-f(x)|| d(f(ξ),f(x))=f(ξ)f(x)表示两个像素之间的欧式距离,滤波过程如下:
      h ( x ) = k r − 1 ( x ) ∫ − ∞ ∞ ∫ − ∞ ∞ f ( ξ ) r ( f ( ξ ) , f ( x ) ) d ξ h(x)=k_r^{-1}(x)\int_{-\infty}^{\infty}\int_{-\infty}^{\infty}f(\xi)r(f(\xi),f(x))d\xi h(x)=kr1(x)f(ξ)r(f(ξ),f(x))dξ
      权值为: k r ( x ) = ∫ − ∞ ∞ ∫ − ∞ ∞ r ( f ( ξ ) , f ( x ) ) d ξ k_r(x)=\int_{-\infty}^{\infty}\int_{-\infty}^{\infty}r(f(\xi),f(x))d\xi kr(x)=r(f(ξ),f(x))dξ

    两者结合,得到基于空间距离,相似程度整体考虑的双边滤波如下:
    h ( x ) = k − 1 ( x ) ∫ − ∞ ∞ ∫ − ∞ ∞ f ( ξ ) s ( ξ , x ) r ( f ( ξ ) , f ( x ) ) d ξ h(x)=k^{-1}(x)\int_{-\infty}^{\infty}\int_{-\infty}^{\infty}f(\xi)s(\xi, x)r(f(\xi),f(x))d\xi h(x)=k1(x)f(ξ)s(ξ,x)r(f(ξ),f(x))dξ
    权值为: k ( x ) = ∫ − ∞ ∞ ∫ − ∞ ∞ s ( ξ , x ) r ( f ( ξ ) , f ( x ) ) d ξ k(x)=\int_{-\infty}^{\infty}\int_{-\infty}^{\infty}s(\xi, x)r(f(\xi),f(x))d\xi k(x)=s(ξ,x)r(f(ξ),f(x))dξ

    可以解释为:

    值域_联合双边滤波

    双边滤波的两个权值的影响可以形象的解释为:

    联合双边滤波_2

    双边滤波的实现

    实际应用时,根据需要对积分采用离散形式表示,滤波半径根据需要自行设置。

    在进行滤波前,需将数据转换为浮点型等。

    • matlab源码-gray图像
    function fout = bilateralFilter_gray(fin,r,a,b)
    %bilateralFilter_gray 灰度图像双边滤波
    %   fout-滤波输出图像
    %   fin-输入灰度图
    %   r-滤波半径
    %   a-全局标准差
    %   b-局部标准差
    %   双边滤波有两部分组成,一为空间权重:与像素位置有关(空域),高斯滤波
    %   另一为像素权重,与像素值(值域)大小有关,根据像素值大小不同而不同
    %   空域滤波函数定义为c(x1) = e^(-(x1.^2)/(2*a^2)),均值为0,标准差为a的高斯分布
    %   值域滤波函数定义为s(y1) = e^(-(y1.^2)/(2*b^2)),   
    %   其中y1为滤波器大小范围内像素值与中心像素的距离,均值为0,标准差为b的高斯分布
    
    c = fspecial('gaussian', 2*r+1, a);
    fin  = im2double(fin);
    
    h = waitbar(0,'Applying bilateral filter...');
    set(h,'Name','Bilateral Filter Progress');
    
    [m, n] = size(fin);
    finTemp = padarray(fin, [r,r], 'symmetric');
    
    fout = zeros(size(fin));
    
    
    for i=r+1:m+r
        for j=r+1:n+r
            temp = finTemp(i-r:i+r,j-r:j+r);
            d = temp - finTemp(i, j);
            s = exp(-(d.^2)/(2*b^2));
            w = c.*s;
            fout(i-r, j-r) = sum(sum(temp.*w))/sum(w(:));
        end
        waitbar((i-r)/m);
    end
    
    
    • 实验结果
    src_garydst_r1a3b0.1
    原图滤波半径1,全局标准差3,局部标准差0.1
    在这里插入图片描述在这里插入图片描述
    滤波半径3,全局标准差3,局部标准差0.1滤波半径5,全局标准差3,局部标准差0.1
    在这里插入图片描述在这里插入图片描述
    滤波半径5,全局标准差3,局部标准差0.5滤波半径5,全局标准差3,局部标准差1

    在实际应用中,一般选取较小的局部标准差和较大的滤波半径,取得的效果比较好。

    • matlab源码-rgb图像
    function fout = bilateralFilter_rgb(fin,r, a, b)
    %bilateralFilter_rgb 彩色图像双边滤波
    %   fout-滤波输出图像
    %   fin-输入彩色图
    %   r-滤波半径
    %   a-全局标准差
    %   b-局部标准差
    %   双边滤波有两部分组成,一为空间权重:与像素位置有关(空域),高斯滤波
    %   另一为像素权重,与像素值(值域)大小有关,根据像素值大小不同而不同
    %   空域滤波函数定义为c(x1, x2) = e^(-(x1.^2+x2.^2)/(2*a^2)),均值为0,标准差为a的高斯分布
    %   值域滤波函数定义为s(y1, y2, y3) = e^(-(y1.^2+y2.^2+y3.^2)/(2*b^2)),   
    %   其中y1、y2、y3分别表示三个通道上滤波器大小范围内像素值与中心像素的距离,均值为0,标准差为b的高斯分布
    
    c = fspecial('gaussian', 2*r+1, a);  %空域滤波
    fin = im2double(fin); %转double
    
    h = waitbar(0,'Applying bilateral filter...');
    set(h,'Name','Bilateral Filter Progress');
    
    %分通道处理
    fin_r = fin(:,:,1);
    fin_g = fin(:,:,2);
    fin_b = fin(:,:,3);
    [m, n] = size(fin_r);
    
    finRtemp = padarray(fin_r, [r,r], 'symmetric');
    finGtemp = padarray(fin_g, [r,r], 'symmetric');
    finBtemp = padarray(fin_b, [r,r], 'symmetric');
    
    [fout_r, fout_g, fout_b] = deal(zeros(size(fin_r)));
    
    
    for i = r+1:m+r
        for j = r+1:n+r
            temp1 = finRtemp(i-r:i+r, j-r:j+r);
            temp2 = finGtemp(i-r:i+r, j-r:j+r);
            temp3 = finBtemp(i-r:i+r, j-r:j+r);
            dr = temp1 - finRtemp(i,j);
            dg = temp2 - finGtemp(i,j);
            db = temp3 - finBtemp(i,j);
            s = exp(-(dr.^2+dg.^2+db.^2)/(2*b^2));
            w = c.*s;
            
            fout_r(i-r,j-r) = sum(sum(temp1.*w))/sum(w(:));
            fout_g(i-r,j-r) = sum(sum(temp2.*w))/sum(w(:));
            fout_b(i-r,j-r) = sum(sum(temp3.*w))/sum(w(:));
        end
        waitbar((i-r)/n);
    end
    fout = cat(3, fout_r, fout_g, fout_b); %得到输出
    
    
    • 实验结果
    在这里插入图片描述在这里插入图片描述
    原图滤波半径5,全局标准差3,局部标准差0.1

    联合双边滤波(上采样)

    ​ 在阅读CVPR2020论文《Underexposed Photo Enhancement using Deep Illumination Estimation》论文中采用联合双边滤波上采样(Joint bilateral-grid-based upsampling)技术来降低计算损失,这样做的目的是为了现将原图降采样到低分辨率,然后进行相关算法处理(省时),然后利用联合双边滤波上采样方法来重建得到原始分辨率大小的图像,这种方法相对线性插值(linear),最近邻插值(nearst),三次立方插值(cubic)等取得更好的效果。

    ​ 当然文章中的联合双边滤波上采样也是用深度学习的方法来估算参数的,有兴趣可见论文《Deep Bilateral Learning for Real-Time Image Enhancement》,这里仅对联合双边滤波的原理进行介绍和实现。

    ​ 首先根据前面介绍的双边滤波公式可以表示为:
    J p = 1 k p ∑ q ∈ Ω I q f ( ∣ ∣ p − q ∣ ∣ ) g ( ∣ ∣ I p − I q ) J_p = \frac{1}{k_p}\sum_{q\in\Omega}{I_q}{f(||p-q||)}{g(||I_p-I_q)} Jp=kp1qΩIqf(pq)g(IpIq)
    其中 I I I 表示输入图像, p 、 q p、q pq表示像素的空间位置, I p I_p Ip表示对应位置的像素值, J J J表示输出, f 、 g f、g fg分别表示空间权值分布函数和像素局部范围权值分布函数,均为高斯函数。这种滤波的结果就是周边像素的权值不仅和距离有关还和那个位置的像素值有关,如果在值域(range domain)的权值计算过程中引入另外一幅图像,如下式,则称为联合双边滤波。
    J p = 1 k p ∑ q ∈ Ω I q f ( ∣ ∣ p − q ∣ ∣ ) g ( ∣ ∣ I p ~ − I q ~ ) J_p = \frac{1}{k_p}\sum_{q\in\Omega}{I_q}{f(||p-q||)}{g(||\tilde{I_p}-\tilde{I_q})} Jp=kp1qΩIqf(pq)g(Ip~Iq~)
    联合双边滤波上采样技术也很简单,一种便于理解的也便于写代码的方式就是把下采样并进行处理过后的小图按照最近邻插值的方式放大到原图大小,然后再用原图的数据和这个放大的结果进行联合双边滤波处理。

    可以参考文章:《Joint Bilateral Upsampling》

    想比如上述那些复杂的算法,联合双边滤波的快速算法的耗时几乎可以忽略不计,如果一个算法下采样的采样率为0.25,则算法那本身的速度理想状态下可能只为原始的1/16,加上最后的联合双边滤波的时间,可能提高10倍以上,而效果变化并不大。

    联合双边滤波实现

    • matlab源码
    function fout = JointBilaterFilterUp(src,ref,r,sigma)
    %JointBilaterFilterUp 联合双边滤波上采样
    %   fout-联合双边滤波输出图像
    %   src-下采样后经过处理的图像
    %   ref-原始图像,未经处理后的图像
    %   r-滤波半径
    %   sigma-全局标准差和局部标准差
    %   参考来源:https://www.cnblogs.com/Imageshop/p/3677313.html
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    % Pre-process input and select appropriate filter.
    
    % Verify that the input image exists and is valid.
    if ~exist('src','var') || isempty(src) || ~exist('ref','var') || isempty(ref)
       error('Input image src or ref is undefined or invalid.');
    end
    if ~isfloat(src) || ~sum([1,3] == size(src,3)) || ...
          min(src(:)) < 0 || max(src(:)) > 1
       error(['Input image src must be a double precision ',...
              'matrix of size NxMx1 or NxMx3 on the closed ',...
              'interval [0,1].']);      
    end
    if ~isfloat(ref) || ~sum([1,3] == size(ref,3)) || ...
          min(ref(:)) < 0 || max(ref(:)) > 1
       error(['Input image ref must be a double precision ',...
              'matrix of size NxMx1 or NxMx3 on the closed ',...
              'interval [0,1].']);      
    end
    
    % Verify bilateral filter window size.
    if ~exist('r','var') || isempty(r) || ...
          numel(r) ~= 1 || r < 1
       r = 5;
    end
    r = ceil(r);
    
    % Verify bilateral filter standard deviations.
    if ~exist('sigma','var') || isempty(sigma) || ...
          numel(sigma) ~= 2 || sigma(1) <= 0 || sigma(2) <= 0
       sigma = [3 0.1];
    end
    
    % Apply either grayscale or color bilateral filtering.
    if size(src,3) == 1
       fout = jbfltGray(src,ref,r,sigma(1),sigma(2));
    else %彩色图像
       fout = jbfltColor(src,ref,r,sigma(1),sigma(2));
    end
    end
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    % Implements bilateral filtering for grayscale images.
    function fout = jbfltGray(src,ref,r,sigma_d,sigma_r)
    
    % Pre-compute Gaussian distance weights.
    [X,Y] = meshgrid(-r:r,-r:r);
    G = exp(-(X.^2+Y.^2)/(2*sigma_d^2));
    
    % Create waitbar.
    %h = waitbar(0,'Applying bilateral filter on gray image...');
    %set(h,'Name','Bilateral Filter Progress');
    
    
    %resize src to ref image size
    src = imresize(src, size(ref), 'bilinear');
    
    % Apply bilateral filter.
    [m, n] = size(src);
    fout = zeros(size(src));
    for i = 1:m
       for j = 1:n
             % Extract local region.
             iMin = max(i-r,1);
             iMax = min(i+r,m);
             jMin = max(j-r,1);
             jMax = min(j+r,n);
             I = src(iMin:iMax,jMin:jMax);
             
             % To compute weights from the ref image
             J = ref(iMin:iMax,jMin:jMax);
          
             % Compute Gaussian intensity weights according to the ref image
             H = exp(-(J-ref(i,j)).^2/(2*sigma_r^2));
          
             % Calculate bilateral filter response.
             F = H.*G((iMin:iMax)-i+r+1,(jMin:jMax)-j+r+1);
             fout(i,j) = sum(F(:).*I(:))/sum(F(:));
                   
       end
       %waitbar(i/dim(1));
    end
    
    end
    % Close waitbar.
    %close(h);
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    % Implements bilateral filtering for grayscale images.
    function fout = jbfltColor(src,ref,r,sigma_d,sigma_r)
    
    % Pre-compute Gaussian distance weights.
    [X,Y] = meshgrid(-r:r,-r:r);
    G = exp(-(X.^2+Y.^2)/(2*sigma_d^2));
    
    % Create waitbar.
    %h = waitbar(0,'Applying bilateral filter on gray image...');
    %set(h,'Name','Bilateral Filter Progress');
    
    %resize src to ref image size
    [m, n, c] = size(ref);
    src = imresize(src, [m, n], 'bilinear');
    
    %分通道处理
    src_r = src(:,:,1);
    src_g = src(:,:,2);
    src_b = src(:,:,3);
    
    ref_r = ref(:,:,1);
    ref_g = ref(:,:,2);
    ref_b = ref(:,:,3);
    
    %输出图像
    [fout_r, fout_g, fout_b] = deal(zeros(size(src_r)));
    
    % Apply bilateral filter.
    for i = 1:m
       for j = 1:n
             % Extract local region.
             iMin = max(i-r,1);
             iMax = min(i+r,m);
             jMin = max(j-r,1);
             jMax = min(j+r,n);
             I_r = src_r(iMin:iMax,jMin:jMax);
             I_g = src_g(iMin:iMax,jMin:jMax);
             I_b = src_b(iMin:iMax,jMin:jMax);
             
             % To compute weights from the ref image
             J_r = ref_r(iMin:iMax,jMin:jMax);
             J_g = ref_g(iMin:iMax,jMin:jMax);
             J_b = ref_b(iMin:iMax,jMin:jMax);
             dr = J_r - ref_r(i, j);
             dg = J_g - ref_g(i, j);
             db = J_b - ref_b(i, j);
          
             % Compute Gaussian intensity weights according to the ref image
             H = exp(-(dr.^2+dg.^2+db.^2)/(2*sigma_r^2));
          
             % Calculate bilateral filter response.
             F = H.*G((iMin:iMax)-i+r+1,(jMin:jMax)-j+r+1);
             fout_r(i, j) = sum(sum(F.*I_r))/sum(F(:));
             fout_g(i, j) = sum(sum(F.*I_g))/sum(F(:));
             fout_b(i, j) = sum(sum(F.*I_b))/sum(F(:));
             %fout(i,j) = sum(F(:).*I(:))/sum(F(:));          
       end
       %waitbar(i/dim(1));
    end
    fout = cat(3, fout_r, fout_g, fout_b);
    end
    
    
    • 实验结果

    去雾算法:

    fog1defog_low
    原图下采样图然后应用去雾算法
    在这里插入图片描述在这里插入图片描述
    最近邻插值联合双边滤波

    水下图像增强算法

    在这里插入图片描述在这里插入图片描述
    原图(1024x768)下采样并应用增强算法(256x256)
    在这里插入图片描述在这里插入图片描述
    最近邻插值联合双边滤波

    在这个过程中参数的选取十分重要(按照经验 局部标准差一般取较小0.1,滤波半径和全局标准差取值较大30、30),选取的不好效果就很差,而且不同类型的照片参数选取也存在差异,在实用中参数泛化能力不强,因此可以考虑结合深度学习的方法来学习参数。

    更多相关内容
  • 然后,对图像中的每个像素点进行双边滤波,其中,灰度标准差设为该点噪声标准差的2倍;最后,根据区域相似度模型判定强噪声,并利用中值滤波器去除。实验证明,所提算法在不同强度的噪声下均可取得较好的保边滤波效果和强...
  • 基于OpenCV的二维图像加噪去噪C++程序,程序包含给图像添加高斯噪声功能,去噪方法有方框滤波、均值滤波、高斯滤波、中值滤波、双边滤波
  • 利用双边滤波算法对深度图像进行处理可以得到修复图像。
  • 联合双边滤波代码,可在MATLAB上运行。已经调测。内含测试图片,方便快捷,下载即可用。联合双边滤波代码。
  • 基于FPGA的双边滤波算法.pdf
  • 点云双边滤波算法

    2019-06-12 11:08:38
    双边滤波算法应用于点云噪点滤除,可有效提高点云质量。高质量的输入数据对提高点云学习的人工智能训练效率与质量有显著的帮助。
  • 针对现有的Retinex算法不能自动调节参数,提出一种基于参数估计的双边滤波Retinex算法。该算法首先利用主成份分析和Canny边缘检测算法分别进行噪声估计和边缘强度估计;然后通过线性相关运算计算双边滤波的空间几何...
  • 使用Matlab编写的图像双边滤波算法
  • 双边滤波,使用matlab编程实现,对boy_noisy.gif;Circuit_noise.jpg;california_22_13.bmp进行实验。启动 bilateral_gray文件,输入模板半径默认为5;输入空间相似度和范围相似度。
  • 双边滤波器的Matlab实现,附例程。简单的实现双边滤波器,是博客的附加例程 基本原理 保留边界细节,模糊变化不明显的区域 我们知道高斯滤波器可以起到模糊图像的作用,而上述的过程是选择性地进行模糊,在这里是对...
  • 针对常用的双边滤波算法易造成图像细节丢失及Retinex算法在光照变化剧烈时易出现光晕伪影现象等缺点,提出了一种基于双边滤波和多尺度Retinex算法的图像增强方法。该方法首先对图像进行小波分解,获得图像高频和低频...
  • bilateral双边滤波应用,OpenCV ,C++代码,对图片进行滤波AAAAAAAAAAAAA
  • 双边滤波,包含效果图,以及其matlab实现,多种论文供参考
  • 双边滤波matlab代码 ComputerVision 1.bfilter2 是双边滤波的代码,MATLAB
  • 双边滤波(Bilateral filter)是一种可以保边去噪的滤波器。之所以可以达到此去噪效果,是因为滤波器是由两个函数构成。一个函数是由几何空间距离决定滤波器系数。另一个由像素差值决定滤波器系数。
  • 双边滤波算法

    2018-07-25 16:46:08
    基于vs2010的图像处理,双边滤波算法,对图像去噪,平滑处理
  • 资源包含联合双边滤波算法的matlab版代码 资源包含联合双边滤波算法的matlab版代码
  • 自己实现的双边滤波代码及测试图像,基于OpenCV3.0&VS2013;;只需一个积分,如果没有积分,请带博客下留言邮箱,看到后会第一时间发送。博客地址:https://blog.csdn.net/u013921430/article/details/84532068
  • 针对彩色图像双边滤波去噪方法存在的不足, 本文提出一种边缘检测与双边滤波相结合的彩色图像去噪方法. 首先利用细胞神经网络( CNN) 模型导出一种新的彩色图像分块自适应边缘检测算法, 继承了CNN 灰度边缘检测算法...
  • 双边滤波C++实现

    2016-11-02 22:33:16
    双边滤波 纯C++实现,支持8位灰度图像和24位真彩图像
  • 利用双边滤波方法进行图像处理,所用的软件为MATLAB,其中一个.m文件为函数文件,另一个.m为测试文件,具体处理所需时间大约十多秒,也可能二三十秒,看情况,运行时耐心等下
  • 图像去雾的几种经典方法 有空间双边滤波去雾 暗通道去雾 引导滤波去雾 图像去雾质量评价标准等代码
  • 针对雾天图像存在信息丢失、区域不清晰以及雾气遮挡等问题,提出了一种基于双边滤波的高斯金字塔变换Retinex图像增强算法,以提高雾天图像的对比度。首先,基于空间域核函数和像素差,建立了改进的双边滤波函数数学模型...
  • 添加高斯噪声,并用高斯滤波、均值滤波、中值滤波、双边滤波四种滤波去噪方式,并且分别得到这四种滤波后的信噪比值,通过比较信噪比值,得到最佳的滤波去噪处理方式。添加噪声的浓度可以改变,并且也可以改变卷积核...
  • 针对经典双边滤波算法对深度图像修复效果较差,且无法准确调整核函数参数等问题,提出了基于形态学和改进双边滤波的深度图像修复算法。首先,利用形态学算法对输入的深度图像进行空洞优化,以达到填充部分细小空洞和滤除...
  • 基于双边滤波+retinex理论的图像中增强,增强图像细节
  • 双边滤波matlab实现源码 % Filename : bialteralFitler_func.m % Author : Mario爱吃大虾 % Description : 双边滤波(图像处理中常用的一种保边滤波) % 输入:图像A(灰度图像) % 参数窗口大小(2*w+1), % 空域...
  • 针对现有双边滤波算法参数设定复杂、不具通用性等问题,提出一种基于参数估计的双边滤波算法。该算法从计算图像噪声水平和边缘强度出发,在弱纹理区域采用PCA对图像的噪声水平进行估计;利用Sobel算子检测出图像的有效...
  • 双边滤波matlab程序

    2016-10-19 10:53:44
    双边滤波的matlab程序,可运行

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 8,366
精华内容 3,346
关键字:

双边滤波