我有一个包含许多形状的图像,我需要编写一些Matlab代码,删除除矩形之外的所有形状。是否可以使用仅与strel,imclose和bwareaopen一起使用?如果您认为是的话,我会很高兴听到您的意见。
图像:
答案 0 :(得分:0)
如果我从你的评论中理解,矩形可以有任何大小。我认为只有当其他形状具有固定大小时才能询问,因为要求您使用strel,imclose和bwareaopen。简要解释一下,
strel 函数为您添加的图片上的矩形,磁盘或任何其他形状创建一个给定大小的结构元素。
imclose 应该用于连接您提供的类似形状作为输入(基本上是您应该从strel函数中找到的结构元素)。
bwareaopen 将用于删除少于P -given作为输入像素的对象。
因此,如果可以为此图像指定任何大小的矩形,则其他形状应保持不变,以便能够使用strel函数定义它们,并使用imclose函数进行连接。通过这种方式,您可以将它们全部连接起来,取反之,使用bwareaopen删除并再次反转以最终得到矩形。
我想不出任何其他解决方案,希望它有所帮助!