问题描述
所以这是我的第一个问题。我正在准备用于对象检测的数据集。到目前为止,我做了以下几件事:
- 我有一张原始图片(尺寸 w4000 x h3000)。
- 我使用标注平台 Roboflow 将其标注为 COCO 格式,图片中有近 250 个对象。
- Roboflow 返回了一张缩小的图片 (2048x1536),其中包含带有 COCO 格式注释的相应 json 文件。
- 然后,为了从我的原始图片中获取数据集(因为我有很多对象并且图片足够大),我决定将原始图片平铺成 224x224 的补丁。为此,我放大了一点 (4032x3136) 以便能够正确切片,获得 252 张图片。
问题
谢谢!!
解决方法
听起来最终目标是从源 4032x3136 图像平铺 224x224 图像,并正确更新边界框。
至少在 Roboflow 中,您可以将平铺作为预处理步骤添加到原始 4032x3136 图像中。图像将分为您选择的图块数量(2x2、3x3、NxY)。边界框将被正确更新以覆盖每个单独图块上的对象。
要重新实现您所描述的代码,您需要:
- 将您的 2048x1536 图片放大到 4032x3136
- 相应地缩放边界框
- 使用类似 Pil 的东西将图像分成 224x224 的图块
- 更新注释以分解为各个图块上的坐标;每个图块一个注释