如何裁剪可可数据集以进行预处理?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何裁剪可可数据集以进行预处理?相关的知识,希望对你有一定的参考价值。

我想使用可可数据集在Tensorflow 2.1中训练ssd(单发多盒检测器)网络

[论文说他们使用图像裁剪来提高鲁棒性,所以我尝试使用tf.image.sample_distorted_bounding_box()

但是,我意识到此功能仅调整边界框的大小,而不保留相应的标签。

如何裁剪保留了适当的bbox和标签的图像?适当的意思是,随着图像的变化,bbox的坐标将被细化,裁剪图像中的bbox将被删除。

答案

我曾与PyCOCO一起为COCO数据集创建数据生成器以进行图像分割,我认为我的经验可以为您提供帮助。 My post on medium从头到尾记录整个过程,包括使用Tensorflow Keras向图像添加增强,并在遮罩中进行相应更改以确保保留标签(您可以在Part 2中找到)。

[正如我的帖子的“ ADD AUGMENTATIONS”部分中所述,为确保图像和蒙版即使在随机增强(裁剪,旋转,亮度等)后也保持同步,“种子”应保持相同。] >

但是,请注意,我使用的是语义分割蒙版,而不是对象检测(边界框)。但是,我敢肯定,您可以从我的代码中收回一些有用的信息,以帮助您找到解决问题的方法。

以上是关于如何裁剪可可数据集以进行预处理?的主要内容,如果未能解决你的问题,请参考以下文章

如何从 .csv 文件中拆分数据集以进行训练和测试?

如何拆分自己的数据集以在 Tensorflow CNN 中进行训练和验证

如何在谷歌 colab 中读取图像数据集以进行深度学习?

制作coco数据集以在Detectron框架上进行数据的训练

如何将图像转换为数据集以进行语义分割

如何修复重塑我的数据集以进行交叉验证?