【问题标题】:pretrained object detection model with more classes than COCO比 COCO 具有更多类的预训练对象检测模型
【发布时间】:2020-12-22 13:33:06
【问题描述】:

对于一个项目,我需要一个可以检测许多不同物体的检测器。为此,COCO 的 90 节课还不够,因为我希望能够看到更多。
例如,我已经看到 imagenet 有更多的类,但是我找不到经过训练来检测 imagenet 类的模型。
我在 python 上编程,我想避免重新训练网络以自己检测更多类。
我查看了 pytorch vision 和其他几个存储库,但没有找到任何东西。
提前致谢。



编辑:我现在找到了一个很好的,LVIS 数据集有 1200 个用于检测的类,并且正在使用来自 coco 的图像(他们重新标记了它们)。 facebookai的detectron2有很好的模型。 https://github.com/facebookresearch/detectron2/blob/master/MODEL_ZOO.md 我认为它只适用于 cuda 环境(我没有 GPU :()

【问题讨论】:

    标签: python object-detection


    【解决方案1】:

    查看https://keras.io/api/applications/ 了解更多模型/数据集

    from tensorflow.keras.applications.resnet50 import ResNet50
    from tensorflow.keras.preprocessing import image
    from tensorflow.keras.applications.resnet50 import preprocess_input, decode_predictions
    import numpy as np
    
    model = ResNet50(weights='imagenet')
    

    【讨论】:

    • 谢谢你的回答@Alex Rancea,但如果我没记错的话,这是一个分类模型,我需要的是一个用于对象检测的模型(即我想要一个绘制边界框的模型,而不是那个对图像进行分类)
    • 我的错。您可以使用 Yolov3 pjreddie.com/darknet/yolo 并转到预训练模型(darknet53)。使用那里显示的步骤。
    • 嗯,谢谢,虽然这不是我想要的。首先是因为我在 Windows 上工作,所以这个版本使用起来有点烦人,第二是因为我想要一些可以更容易集成到 python 脚本中的东西,最后是因为我需要合法且免费使用的东西,最好也用于商业用途和这个似乎很可疑,但我感谢你的帮助
    【解决方案2】:

    不幸的是,ImageNet 没有为此目的而标记。 现成的,您可以尝试使用Tensorflow Object Detection API。有在 OpenImages 数据集上训练的模型,该数据集有 600 个类。

    您可以立即使用它们进行推理,或者如果您愿意,可以重新训练它们。

    【讨论】:

    • 谢谢。我还从 LVIS 数据集上的detectron2 中找到了另一个。 (编辑了我的帖子)
    猜你喜欢
    • 2020-01-15
    • 2019-06-21
    • 2019-01-22
    • 2021-05-05
    • 1970-01-01
    • 2020-11-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多