【发布时间】:2021-09-21 04:45:45
【问题描述】:
我正在努力在更广泛的人脸数据集上实现人脸检测模型。我了解到它是内置在 Tensorflow datasets 中的,我正在使用它。 但是,我在批处理数据时遇到了问题。由于一个图像可以有多个人脸,因此每个图像输出的边界框的数量是不同的。例如,一张有 2 个人脸的图像将有 2 个边界框,而一张有 4 个人脸的图像将有 4 个边界框,以此类推。
但问题是,这些不相等数量的边界框导致每个 Dataset 对象张量具有不同的形状。在 TensorFlow afaik 中,我们不能批量处理不相等形状的张量(来源 - Tensorflow Datasets: Make batches with different shaped data)。所以我无法批处理数据集。
所以在加载下面的代码和批处理之后-
ds,info = tfds.load('wider_face', split='train', shuffle_files=True, with_info= True)
ds1 = ds.batch(12)
for step, (x,y,z) in enumerate(ds1) :
print(step)
break
我在运行Link to Error Image时遇到这种错误
一般来说,关于如何批量处理 Tensorflow 对象检测数据集的任何帮助都会非常有帮助。
【问题讨论】:
标签: tensorflow deep-learning computer-vision conv-neural-network object-detection