不是随机的,是你图像上还有一些很小的区域也被阈值分割处出来了,参考你图像中那些小点。
如果想要计算回形针的数量,需要做下面积大小的筛选,只提取回形针的区域再计算即可。
我们可以看到,大部分回形针面积都在7944 到 12018 区间,那么我们直接设置7900 到 12000 即可。
我们在你之前的代码后面修改成下面的代码:- read_image (Image, 'clip')
- dev_set_colored(12)
- threshold (Image, Dark, 0, 150)
- count_obj (Dark, NumThresholded)
- dev_display (Dark)
- connection (Dark, ConnectedRegions)
- count_obj (ConnectedRegions, NumConnected)
- dev_display (ConnectedRegions)
- *提取回形针部分 可以根据特征直方图查找面积范围
- select_shape (ConnectedRegions, SelectedRegions, 'area', 'and', 7900, 12000)
- count_obj (SelectedRegions, NumSelected)
- dev_display (Image)
- dev_display (SelectedRegions)
复制代码 就可以得到当前的回形针是13个! |