【图像处理】图像锐化的工作原理和算法实现(matlab实现)

实验目的

1、掌握一阶锐化算法的工作原理和算法实现。
2、掌握二阶锐化算法的工作原理和算法实现。

实验内容

测试图片

链接: https://pan.baidu.com/s/1-7zn44maHCCI7w9qaZjvxg

提取码: dakh

实现拉普拉斯锐化

实验代码

im = imread('.\im\Grayblur6.png');
imshow(im); title('原始图像');
im0 = im;
im = double(im);

H = [0 -1 0;-1 4 -1;0 -1 0];
im1 = filter2(H,im);

im2 = uint8(im1+im);
figure; imshow(im2); title('Laplacian锐化叠加后图像');

im_L0 = uint8(im1);
figure; imshow(im_L0); title('Laplacian锐化');
im=imread('im\Grayblur6.png')
imshow(im);
title('原始图像');
im0=im;
im=double(im);

H=[0 -1 0;-1 4 -1;0 -1 0];
im1=filter2(H,im);

im2=uint8(im1+im);
figure,imshow(im2);
title('Laplacian锐化叠加后的图像');

im_L0=uint8(im1);
figure,imshow(im_L0);
title('Laplacian锐化');

maxV=max(max(im1));
minV=min(min(im1));
delta=0;
if(minV<0)
    delta=abs(minV);
end

实验结果

实现Sobel微分算子的代码

实验代码

im = imread('.\im\Grayblur6.png');
imshow(im); title('原始图像');
im = double(im);

H = [-1 0 1;-2 0 2;-1 0 1];
Dy = filter2(H,im);

H = [-1 -2 -1;0 0 0;1 2 1];
Dx = filter2(H,im);

im_2 = sqrt(Dx.^2+Dy.^2);
im_2 = uint8(im_2);
figure; imshow(im_2); title('Sobel锐化图像'); %显示滤波后的图像

im_3 = uint8(im+sqrt(Dx.^2+Dy.^2)*0.1);
figure; imshow(im_3); title('Sobel锐化叠加图像'); %显示滤波后的图像

实验结果

实现交叉微分算法(Roberts算法)

实验步骤

读入图像到矩阵F
得到F的行列数与颜色通道数:m,n,c
如果颜色通道数c>1,则将彩色图像转化为灰度图rgb2gray
初始化输出矩阵G
对于F的每一行i(1到m-1)
     对于F的每一列j(1到n-1) 
     根据以下公式,由F(i,j)F(i+1,j)F(i,j+1)F(i+1,j+1)计算G(i,j)
显示Roberts锐化图像
显示Roberts锐化并叠加原图的结果图像

实验代码

im = imread('.\im\Grayblur6.png');
imshow(im); title('原始图像');
[row,col,k] = size(im);
if(k>1) 
    im = rgb2gray(im);
end
im = double(im);
G = zeros(row,col);
for i=2:row-1
    for j=2:col-1
        G(i,j) = abs(im(i+1,j+1)-im(i,j)) + abs(im(i+1,j)-im(i,j+1));
    end
end
g = uint8(G);
figure; imshow(g); title('Roberts锐化并叠加原图的结果图像')

实验结果

学如逆水行舟,不进则退
一百个Chocolate CSDN认证博客专家 CSDN博客专家 Vue爱好者 博客之星
不是只会写业务代码的前端开发攻城狮!博客网站:yangchaoyi.vip做限量版的自己,就这样安静地努力。一个还在苦学前端的小小Chocolate,我的博客主要分享前端、算法、大学课程笔记、平常遇到的bug、心得感悟体会,感谢您的访问,若喜欢可以关注一下~每一个清晨,记得鼓励自己。没有奇迹,只有你努力的轨迹;没有运气,只有你坚持的勇气!每一份坚持都是成功的累积,只要相信自己,总会遇到惊喜!座右铭:学如逆水行舟,不进则退!
©️2020 CSDN 皮肤主题: 程序猿惹谁了 设计师: 上身试试 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值