资源简介
MATLAB实现Canny图像边缘检测,此为本人研一时的图像处理与成像制导的作业,完全可以实现,并且附有详细的实验报告。
代码片段和文件信息
clc;
clear all;
close all;
I=imread(‘gray.bmp‘);
th1=20;
Img=double(I);
G=size(I);
alf=3;
n=7;
n0=floor((n+1)/2);
T=zeros(G(1)G(2));
R=zeros(G(1)G(2));
H=zeros(G(1)G(2));
for i=1:n %%Gaussian滤波器
for j=1:n
h(ij)=exp(-((i-n0)^2+(j-n0)^2)/(2*alf))/(2*pi*alf);
end
end
Img_n=uint8(conv2(Imgh‘same‘));
figure(); imshow(I); title(‘原图‘);
figure(); imshow(Img_n); title(‘和Gaussian卷积后的图像‘);
imwrite(Img_n‘G.bmp‘);
Img_n=double(Img_n);
for i=2:(G(1)-1)
for j=2:(G(2)-1)
Sx=Img_n(i-1j-1)+2*Img_n(ij-1)+Img_n(i+1j-1)-Img_n(i-1j+1)-2*Img_n(ij+1)-Img_n(i+1j+1);
Sy=Img_n(i+1j-1)+2*Img_n(i+1j)+Img_n(i+1j+1)-Img_n(i-1j-1)-2*Img_n(i-1j)-Img_n(i-1j+1);
E(ij)=sqrt(Sx^2+Sy^2);
if(E(ij) E(ij)=0;
end
end
end
figure() ;imshow(uint8(E)); title(‘Canny算子处理之后的图像‘);
imwrite(E‘C6.bmp‘);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2012-11-29 11:23 MATLAB实现Canny边缘检测\
文件 251494 2012-11-24 09:50 MATLAB实现Canny边缘检测\C6.bmp
文件 252928 2012-11-29 11:23 MATLAB实现Canny边缘检测\Cannywss.doc
文件 1029 2012-11-24 09:50 MATLAB实现Canny边缘检测\Cannywss.m
文件 252058 2012-11-24 09:50 MATLAB实现Canny边缘检测\G.bmp
文件 252058 2012-11-24 09:50 MATLAB实现Canny边缘检测\gray.bmp
相关资源
- 用matlab实现角点检测源代码
- 基于Lucas–Kanade算法的光流估计MATLA
- MDS无线传感器网络定位算法MATLAB程序
- 数字锁相环DPLL matlab 仿真代码
- Matlab常微分方程的解法
- radon变换车牌倾斜校正Matlab代码
- K-L变换算法
- 求解二次规划问题的拉格朗日及有效
- 雷电感应电压matlab
- 有约束的最小最大值matlab程序
- bpsk在高斯白噪声信道中调制解调MAT
- 基于MATLAB的图像增强处理
- 卡尔曼滤波算法原理及MATLAB源程序
- MATLAB 软件最大功率跟踪
- MATLAB软件BOOST电路仿真
- 蚁群算法解决TSP问题MATLAB程序
- DCT变换和DFT变换 数字图像压缩 Mat
- 二值化算法:Otsu算法、Bernsen算法、
- LSB 数字水印,matlab源程序,很好的资
- 嵌入式上位机利用matlab GUI界面进行数
- 二维对称图像矩阵ICA人脸识别MATLAB源
- matlab peak detection peak area 峰识别 面积
- matlab实现模式识别的聚类分类算法
- matlab卷积码仿真代码
- 维纳滤波器matlab代码
- matlab实现graphcut算法
- matlab迷宫
- matlab实现 中值滤波去除基线漂移
- 2个matlab BP分类代码
- 拥有matlab用户界面的卡尔曼滤波程序
评论
共有 条评论