并应约两倍之多对象搜寻。这样显示平均直径15像素,用口罩面积31。
由此所指定的象素比较原始灰度值的平均数。减少噪音引起的问题加上一个常量(3)。
适当程序段看起来如下:
mean_image (Particle, Mean, 31, 31)
dyn_threshold (Particle, Mean, Small, 3, ’light’) dynthreshold操作符比较两个像素的图像像素。可以看到图5.6(左)分割结果。
我们看到,所有的物体被发现. 可惜,边缘的大型粒子和一些非常小的区域,由于噪音的出现也混合在一起出现。
我们一开始尝试压缩边界。这样做的会产生一个超过允许最大值的常数。你可以这样做: connection (Small, SmallSingle)
select_shape (SmallSingle, ReallySmall, ’area’, ’and’, 1, 300)
采用这种方法你也有可能清除掉一些非常小的物体。你只需要使用selectshape增调用增加最小尺寸。但是如果你再次检查分割结果, 你会发现一些已经造成像素提取第一分割。因此你应该寻找小颗粒以弥补大的不足。为了避免分割大颗粒附近的小颗粒,这些都是建立在互补放大。因此,我们如下修改的程序。
dilation_circle (Large, LargeDilation, 8.5) complement (LargeDilation, NotLarge)
reduce_domain (Particle, NotLarge, ParticleRed) mean_image (ParticleRed, Mean, 31, 31)
dyn_threshold (ParticleRed, Mean, Small, 3, ’light’)