数字图像处理结课论文(12)
时间:2026-01-17
时间:2026-01-17
程序如下:
rgb=imread('chaopao.jpg');%边缘检测 sob=fspecial('sobel'); figure();
imshow(rgb);%输出彩色原图
Rx=imfilter(double(rgb(:,:,1)),sob,'replicate'); Ry=imfilter(double(rgb(:,:,1)),sob,'replicate'); Gx=imfilter(double(rgb(:,:,2)),sob,'replicate'); Gy=imfilter(double(rgb(:,:,2)),sob,'replicate'); Bx=imfilter(double(rgb(:,:,3)),sob,'replicate'); By=imfilter(double(rgb(:,:,3)),sob,'replicate'); gxx=Rx.^2+Gx.^2+Bx.^2; gyy=Ry.^2+Gy.^2+By.^2; gxy=Rx.*Ry+Gx.*Gy+Bx.*By;
theta=0.5*(atan(2*gxy./(gxx-gyy+eps)));
G1=0.5*((gxx+gyy)+(gxx-gyy).*cos(2*theta)+2*gxy.*sin(2*theta)); theta=theta+pi/2;
G2=0.5*((gxx+gyy)+(gxx-gyy).*cos(2*theta)+2*gxy.*sin(2*theta)); G1=G1.^0.5; G2=G2.^0.5;
rgb_gradiant=mat2gray(max(G1,G2)); figure();
imshow(rgb_gradiant);%向量梯度边缘
实验结果:
实验分析:
通过对彩色图像向量梯度计算,根据向量梯度的幅值检测边缘,能够很好的提取出汽车的边缘。
上一篇:变电站安全反思总结