为多个对象创建TFrecord文件

时间:2018-01-05 17:39:52

标签: python-3.x pandas tensorflow object-detection object-detection-api

我正在关注GitHub(https://github.com/datitran/raccoon_dataset)的racoon检测教程,以使用谷歌对象检测API检测动物。为此,我需要生成tfrecord文件,该文件已在第29到34行(https://github.com/datitran/raccoon_dataset/blob/master/generate_tfrecord.py)生成。

但他只为一只动物(浣熊)第29至34行完成了代码。我有多种动物,如浣熊,螳螂,寄居蟹等,我如何修改多个动物的tfrecord文件。我找到的一种方法是在generatetfrecord文件中更改第29行到第34行,如下所示

def class_text_to_int(row_label):
    if row_label == 'raccoon':
        return 1
    if row_label == 'prayingmantis':
        return 2
    else:
        None

这种方法核心是在同一个文件中包含多个if还是我需要生成多个tfrecord文件来训练多个对象

1 个答案:

答案 0 :(得分:1)

def class_text_to_int(row_label):
    if row_label == 'raccoon':
        return 1
    elif row_label == 'prayingmantis':
        return 2
    else:
        None

在generatetfrecord中进行上述更改是同时训练多个自定义图像的正确方法。此外,在object detection.pbtxt文件中,进行以下更改:

item{
       id:1
       name:'racoon'
      }
item{
       id:2
       name: 'prayingmantis'
      }

从第一步开始重新训练模型。