您的位置:首页 > 编程语言 > MATLAB

MATLAB-图像复原和分割

2016-12-03 12:48 411 查看
图像复原方法:主要包括逆滤波复原、维纳滤波复原、约束最小二乘法复原、Lucy-Richardson复原和盲解卷积复原等。

图像分割技术:较为经典的算法有边缘检测方法、阈值分割法和区域分割技术。

常见的边缘检测方法有:微分算子、Canny算子和LOG算子等。常用的微分算子有Sobel算子、Roberts算子Prewit算子等。

图像中的线段:将图像点某个邻域中每个像素值都与模板中对应的系数相乘,然后将结果进行累加,从而得到该点的新像素值。如果邻域的大小为m×n,则总共有mn个系数。这些系数组成的矩阵,称为模板或算子。通常采用的最小模板是3×3。

canny多元边缘检测算子

Canny算子的具有低误码率、高定位精度和抑制虚假边缘等优点。

在MATLAB中,函数edge( )可以采用Canny算子进行边缘检测。该函数的调用格式为:

BW=edge(I, ‘canny’):该函数采用Canny算子对图像I进行边缘检测,并采用自动计算的低阈值和高阈值进行图像分割,函数的返回值BW为二值图像。

BW=edge(I, ‘canny’, thresh):该函数中对分割阈值thresh进行设置,thresh为包含2个元素的向量,分别是低阈值和高阈值。如果thresh为单个数值的标量,则thresh为高阈值,0.4×thresh作为低阈值。

BW=edge(I, ‘canny’, thresh, sigma):该函数中对高斯滤波器的标准差sigma进行设置,默认值为1。

[BW, thresh]=edge(I, ‘canny’, …):该函数返回分割时所采用的阈值thresh。

i=imread('F:\PICTURE\lighthouse.bmp');
j=rgb2gray(i);
BW1=edge(j,'prewitt');
BW2 = edge(j,'canny');




拉普拉斯(Laplacian)算子是一种不依赖于边缘方向的二阶微分算子,它是标量而不是矢量,而且具有旋转不变的性质,在图像处理中经常被用来提取图像的边缘,表达式为:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: