课程实验报告
2017 - 2018学年一学期
课程名称:计算机视觉及应用
实验名称:滤波和边缘检测
班级:
学生姓名: 学号:
实验日期: 地点:
指导教师:
成绩评定: 批改日期:
实验步骤及方法算子边缘检测的原理
对原始图像进行灰度化
Canny算法通常处理的图像为灰度图,因此如果摄像机获取的是彩色图像,那首先就得进行灰度化。
对一幅彩色图进行灰度化,就是根据图像各个通道的采样值进行加权平均。
以RGB格式的彩图为例,通常灰度化采用的方法是Gray=++。
对图像进行高斯滤波
图像高斯滤波的实现可以用两个一维高斯核分别两次加权实现,也可以通过一个二维高斯核一次卷积实现。
1)高斯核实现
2)图像高斯滤波
通常滤波和边缘检测是矛盾的概念,抑制了噪声会使得图像边缘模糊,这回增加边缘定位的不确定性;而如果要提高边缘检测的灵敏度,同时对噪声也提高了灵敏度。
用一阶偏导的有限差分来计算梯度的幅值和方向
其x向、y向的一阶偏导数矩阵,梯度幅值以及梯度方向
对梯度幅值进行非极大值抑制
图像梯度幅值矩阵中的元素值越大,说明图像中该点的梯度值越大,但这不能说明该点就是边缘(这仅仅是属于图像增强的过程)。
// Gradient Y y方向梯度 0,1:y方向计算微分即导数
//Scharr( src_gray, grad_y, ddepth, 0, 1, scale, delta, BORDER_DEFAULT );
Sobel( sobel_src, grad_y, ddepth, 0, 2, 3, scale, delta, BORDER_DEFAULT );
convertScaleAbs( grad_y, abs_grad_y );
//近似总的梯度
addWeighted( abs_grad_x, , abs_grad_y, , 0, grad );
imshow( window_name, grad );
waitKey(0);
return 0;
}
实验数据分析及处理示例图片角点检测情况:
图一图二
图一为示例图像加入椒盐噪声的图片。
图二是用中值滤波后的图片。
图三图四
图五图六
图三为将原图像进行灰度化后的图片,图四为在灰度图片上面用canny算子进行边缘提取的图片
图五为将在灰度图片上面进行边缘提取后的图片夹到原图像的结果,图六为使用了sobel算子进行边缘提取的结果
图七图八
图九。