regiongrowing

来源:互联网 发布:反贪知乎 编辑:程序博客网 时间:2024/06/08 02:28

例子:regiongrowing.hdev


regiongrowing(Image: Regions: Row, Column, Tolerance, MinSize: )

函数作用:用区域生长实现图像分割

函数原理:

如果相邻像素的灰度值差小于等于Tolerance,则被融为一个区域。因为矩形一般大于1个像素,所以常常在调用regiongrowing前会用大小至少为Row*Column的低通滤波器平滑一下。如果图像包含小噪声并且矩形很小,平滑后这些因素大都会被去除。而区域包含至少MinSize个点才被挑选出来。区域生长是一个非常快的算子,因此适合用于对时间要求严苛的应用中。

参数列表:

Image:输入图像

Regions:输出被分割后的区域

Row:被检测像素的行距离,Row >= 1 && odd(Row) (为奇数的意思)

Column:被检测像素的列距离,Column >= 1 && odd(Column)

Tolerance:被检测像素的灰度差小于等于该值时,被计入同一区域,Tolerance >= 0 && Tolerance < 127

MinSize:输出区域的最小大小,MinSize >= 1

算子时间复杂度:

如果N是输出区域的个数,M是这些区域中点的个数,那复杂度为O(N*log(M)*M)

 可能前置项:

binomial_filter, mean_image, gauss_image, smooth_image, median_image, anisotropic_diffusion

 可能后置项:

select_shape, reduce_domain, select_gray

 可替代项:

regiongrowing_n, regiongrowing_mean, label_to_region

 

原创粉丝点击