本文主要是介绍图像的一阶导数和二阶导数MATLAB实现,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
基于二阶导数的laplace算子
I=imread('11.jpg');
[H,W]=size(I);
M=double(I);
J=M;
for i=2:H-1
for j=2:W-1
J(i,j)=4*M(i,j)-[M(i+1,j)+M(i-1,j)+M(i,j+1)+M(i,j-1)];
end;
end;
subplot(1,2,1);imshow(I);title('2');
subplot(1,2,2);imshow(uint8(J));title('1');
基于一阶导数的sobel算子
[I,map]=imread('9_1.jpg ');
[H,W]=size(I);
M=double(I);
J=M;
for i=2:H-1
for j=2:W-1J(i,j)=abs(M(i-1,j+1)-M(i-1,j-1)+2*M(i,j+1)-2*M(i,j-1)+M(i+1,j+1)-M(i+1,j-1))+abs(M(i-1,j-1)-M(i+1,j-1)+2*M(i-1,j)-2*M(i+1,j)+M(i-1,j+1)-M(i+1,j+1));
end;
end;
subplot(1,2,1);imshow(I);title('original');
subplot(1,2,2);imshow(uint8(J));title('sobel');
一阶导数和二阶导数的效果总结如下:
这篇关于图像的一阶导数和二阶导数MATLAB实现的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!