资源简介

申明:未经授权,本程序代码仅供研究参考,不得应用于任何商用场合。 对复原图像振铃效应之一的边界振铃效应进行处理,本程序提供4种方法抑制因边界截断导致的边界振铃效应。 参考文献:《基于振铃抑制的运动模糊图像复原方法研究》

资源截图

代码片段和文件信息

function I_e = antireflect(I)
% =========================================================================
% 作者:王辉登
% 邮箱:wanghuideng@163.com
% 日期:2010-6-30
% 权限:仅供学习研究者使用
% 版本:2.0
% 修改日期:2010-07-13
% =========================================================================
% 功能:循环边界且梯度平滑振铃去除
% 参数:
%    I——输入待填充边界图像;
% 返回值:
%    I_e——扩展填充后图像
% =========================================================================
% 备注:本文算法采用antireflect边界扩展方法
% =========================================================================

[I_x I_y] = size(I);

% 上下边界矩阵
temp_border_up = 2*I(1:);
temp_border_down = 2*I(end:);
for i = 1:I_x
    up(I_x - i + 1:) = temp_border_up - I(i:);
    down(i:) = temp_border_down - I(I_x - i + 1:);    
end

% 左右边界矩阵
tmp_border_left = 2*I(:1);
tmp_border_right = 2*I(:end);
for j = 1:I_y
    left(:I_y - j + 1) = tmp_border_left - I(:j);
    right(:j) = tmp_border_right - I(:I_y - j + 1);
end

% 四角边界矩阵
for i = 1:I_x
    for j = 1:I_y
        left_up(I_x - i + 1I_y - j + 1) = 2*I(11) - I(ij);
        left_down(iI_y - j + 1) = 2*I(end1) - I(I_x - i + 1j);
        right_down(ij) = 2*I(endend) - I(I_x - i + 1I_y - j + 1);
        right_up(I_x - i + 1j) = 2*I(1end) - I(iI_y - j + 1);
    end
end

%{
% 图像梯度平滑开关
grad_smooth_flag = 0;
if grad_smooth_flag
    % 梯度核
    order = 2;
    grad_kernel = derivative_kernel(order);

    % 梯度平滑
    up = minium_gradient(grad_kernelupweight);
    down = minium_gradient(grad_kerneldownweight);
    left = minium_gradient(grad_kernelleftweight);
    right = minium_gradient(grad_kernelrightweight);
    left_up = minium_gradient(grad_kernelleft_upweight);
    left_down = minium_gradient(grad_kernelleft_downweight);
    right_up = minium_gradient(grad_kernelright_upweight);
    right_down = minium_gradient(grad_kernelright_downweight);
end
%}

% 图像拓展连接
I_extend_3times = double([left_up up right_up; left I right;left_down down right_down]);

figure;
imshow(I_extend_3times[]);

I_e = I_extend_3times;

end


 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       2221  2010-07-23 15:53  边界振铃\程序\antireflect.m

     文件       1240  2010-07-19 14:48  边界振铃\程序\createPSF.m

     文件       1668  2010-06-14 10:35  边界振铃\程序\derivative_kernel.m

     文件       5967  2011-03-21 10:41  边界振铃\程序\main.m

     文件       1729  2010-07-03 10:16  边界振铃\程序\minium_gradient.m

     文件       1242  2010-07-23 16:28  边界振铃\程序\nuemman.m

     文件       2447  2010-07-23 16:32  边界振铃\程序\smooth_grad_reflect.m

     文件       1894  2010-12-14 18:54  边界振铃\程序\质量评价\BoundarySignalNoiseRatio.m

     文件       1311  2010-12-15 20:25  边界振铃\程序\质量评价\main.m

     文件        728  2010-07-06 22:12  边界振铃\程序\质量评价\MeanSquaredErr.m

     文件         22  2011-03-21 10:37  边界振铃\程序\质量评价\说明.txt

     文件        854  2011-01-12 11:57  边界振铃\程序\平滑评价\edgedetection.m

     文件      52432  2010-12-20 09:07  边界振铃\程序\平滑评价\gray_blur_cameraman.tif

     文件        941  2011-03-21 10:39  边界振铃\程序\平滑评价\smoothmap.m

     文件       2255  2010-12-26 20:21  边界振铃\程序\平滑评价\smooth_area.m

     文件         21  2011-03-21 10:40  边界振铃\程序\平滑评价\shuoming.txt

     文件         22  2011-03-21 10:43  边界振铃\程序\shuoming.txt

     文件      65126  2010-07-15 15:21  边界振铃\程序\gray_cameraman.tif

     目录          0  2011-03-21 10:36  边界振铃\程序\质量评价

     目录          0  2011-03-21 10:36  边界振铃\程序\平滑评价

     目录          0  2011-03-21 10:36  边界振铃\程序

     目录          0  2011-03-21 10:36  边界振铃

----------- ---------  ---------- -----  ----

               142120                    22


评论

共有 条评论

相关资源