如何在 coco 数据集中定义内部多边形?
Posted
技术标签:
【中文标题】如何在 coco 数据集中定义内部多边形?【英文标题】:How to define inner polygon in coco dataset? 【发布时间】:2020-04-19 09:54:37 【问题描述】:我想了解如何在 coco 数据集的分割部分定义内部或内部多边形
我想教卷积网络识别构建多边形中的孔
带孔的多边形示例
【问题讨论】:
你能说得更具体点吗?可能是预期输入/预期输出? 面罩有孔。我猜这意味着两个列表,一个用于外部轮廓,一个用于内部轮廓。或者两个重叠的蒙版:一个用于对象,一个用于孔。 【参考方案1】:最好的解决方案是使用 RLE(运行长度编码)掩码定义带有孔的形状。
在 Matterport Mask R-CNN 实现中,所有多边形分割都转换为 RLE,然后再转换为掩码。查看coco.py 中的 annToMask() 和 annToRLE()。多边形的原因是它们在 json 中存储效率更高,并且会缩小注释文件的大小。如果你不能用一个实心多边形定义你的形状,你就会被一个可能更大的 RLE 困住,除非你想在 COCO 中制作自己的自定义注释并修改你的神经网络以自行将这些多边形孔转换为 RLE。
请注意,如果您使用的神经网络只能找到边界框,那么这一切都是不必要的,因为它无论如何都无法返回空洞。
【讨论】:
以上是关于如何在 coco 数据集中定义内部多边形?的主要内容,如果未能解决你的问题,请参考以下文章
c++:如何使用 sdl 将位图加载到 opengl 中的多维数据集中?