请问图像的差分矩阵怎么实现?
用MATLAB实现可以,用VC实现也行,谢谢。真诚的渴望同各位交流,我的Email是wdengwei@126.com,有什么好资料我会同你们共享的 ^_^ 以一阶中心差分为例:
如果图像矩阵是u,size为rows,cols
那么 ux = 0.5 * ( u(:,) - u(:,) ); %行方向
uy = 0.5 * ( u(,:) - u(,:) ); %列方向 clear;
close all;
I=imread('D:\瓷砖.bmp');
=size(I);
for m=2:M-1
for n=2:N-1
D1(m,n)=abs(I(m-1,n)-I(m+1,n)); % 0度方向上的差分矩阵
D2(m,n)=abs(I(m,n-1)-I(m,n+1)); % 90度方向上的差分矩阵
D3(m,n)=abs(I(m+1,n-1)-I(m-1,n+1));% 45度方向上的差分矩阵
D4(m,n)=abs(I(m-1,n-1)-I(m+1,n+1));% 135度方向上的差分矩阵
end
end
谢谢xfdxz的回复,以上是我自己写的程序,可以实现除边界元素外的情况。 似乎图像处理都开始有这个问题 试试diff 不过上面两位的回答也很好
页:
[1]