【问题标题】:Tensorflow and Keras for easy object detectionTensorFlow 和 Keras 可轻松进行对象检测
【发布时间】:2021-03-25 11:49:59
【问题描述】:

我通常只创建对象识别或分类。互联网上有很多教程,而且很容易。它通常只有几行代码:

1. load dataset
2. create model
3. model.compile()
4. model.fit()
5. load test image
6. model.predict()

问题是,它只能说是否有香蕉、苹果、橙子等。但我想定位图像中的对象。我想要对象检测。问题是我找不到上面提到的一些简单代码。你能给我推荐一些东西吗?
我刚刚发现了 tensorflow 对象检测 API,它并不像上面提到的对象识别那么容易。

感谢您的建议。

【问题讨论】:

    标签: tensorflow object-detection


    【解决方案1】:

    当然,与图像分类相比,对象检测并不容易。这是一个更难解决的问题,需要在收集和标记数据方面做更多的工作。也许您没有找到好的文档或可以帮助您的资源?您可以查看this 设置对象检测以在您的自定义数据集上进行训练/测试的详细说明

    【讨论】:

    • 谢谢。这就是我发现的 API,但与对象分类或图像分割相比,它是如此复杂。这两件事很容易做到。只需创建具有几层的模型,x - 输入,y - 标签/掩码,compile(),fit(),predict(),这就是全部,你有工作的神经网络。所以我希望物体检测有类似的东西:-/
    • 嗯,由于问题的性质,将其与图像分类进行比较显然并不容易。但是,在我看来,对象检测 API 的设置比许多其他工具/在线存储库更简单
    【解决方案2】:

    一般来说,我认为对象检测设置起来有点困难。但是有这个 keras 教程,我非常喜欢它的简单性,如果你有兴趣,它也会深入一点。如果您将模型的initializationtraining 部分结合起来并添加所需的功能,那么整体复杂性还不错。但要理解每一步,就需要付出更多的努力。

    resnet50_backbone = get_backbone()
    loss_fn = RetinaNetLoss(num_classes)
    model = RetinaNet(num_classes, resnet50_backbone)
    
    optimizer = tf.optimizers.SGD(learning_rate=learning_rate_fn, momentum=0.9)
    model.compile(loss=loss_fn, optimizer=optimizer)
    
    epochs = 1
    model.fit(
        train_dataset.take(100),
        validation_data=val_dataset.take(50),
        epochs=epochs,
        callbacks=callbacks_list,
        verbose=1,
    )
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-03-12
      • 2019-10-25
      • 2021-10-05
      • 1970-01-01
      • 2021-08-07
      • 1970-01-01
      • 2022-07-20
      相关资源
      最近更新 更多