MATLAB sobel 锐化(边缘检测)

MATLAB sobel 锐化(边缘检测)

在这里插入图片描述
例题
在这里插入图片描述

%例题验证
clc
clear
f=[3 3 3 3 3
    3 8 7 6 3
    3 6 0 5 3
    3 7 8 4 3
    3 8 3 3 3]
[L,R]=size(f);
g=zeros(L,R);
for i=2:L-1
    for j=2:R-1
        dx=((f(i+1,j-1)-f(i-1,j-1))+2*(f(i+1,j)-f(i-1,j))+(f(i+1,j+1)-f(i-1,j+1)))^2;
        dy=((f(i-1,j+1)-f(i-1,j-1))+2*(f(i,j+1)-f(i,j-1))+(f(i+1,j+1)-f(i+1,j-1)))^2;
        dt=double(dx+dy);
        g(i,j)=sqrt(dt);
    end
end
uint8(g)

验证结果
在这里插入图片描述
图片测试

clear
clc
I=imread('1.jpg');
I=rgb2gray(I);
[L,R]=size(I);

Y=double(I);
for i=2:L-1
    for j=2:R-1
        dx=(Y(i+1,j-1)-Y(i-1,j-1))+2*(Y(i+1,j)-Y(i-1,j))+(Y(i+1,j+1)-Y(i-1,j+1));
        dy=(Y(i-1,j+1)-Y(i-1,j-1))+2*(Y(i,j+1)-Y(i,j-1))+(Y(i+1,j+1)-Y(i+1,j-1));
        g(i,j)=sqrt(dx^2+dy^2);
    end
end

figure(1)
subplot(1,2,1)
imshow(I);
title('原图')

subplot(1,2,2)
imshow(uint8(g));
title('My Sobel')

效果
在这里插入图片描述

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值