modelo de detecção de objeto pré-treinado com mais classes do que COCO

Sep 03 2020

Para um projeto, preciso ter um detector que possa detectar muitos objetos diferentes. Para isso, as 90 aulas de COCO não são suficientes, porque gostaria de poder ver mais.
Eu vi que a imagenet, por exemplo, tem muito mais classes, mas não consegui encontrar um modelo treinado para detectar classes de imagenet.
Estou programando em python e quero evitar o retreinamento de uma rede para detectar mais classes sozinho.
Eu olhei no Pytorch Vision e alguns outros repositórios, mas não encontrei nada.
Desde já, obrigado.



EDIT: Eu encontrei um bom agora, o conjunto de dados LVIS tem 1200 classes para detecções e está usando as imagens do coco (eles as renomearam). Existe um bom modelo para ele com detectron2 do facebookai.https://github.com/facebookresearch/detectron2/blob/master/MODEL_ZOO.md Eu acho que só está disponível para um ambiente cuda (não tenho GPU :()

Respostas

2 AlexRancea Sep 03 2020 at 17:30

Verifica https://keras.io/api/applications/ para mais modelos / conjuntos de dados

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')
2 DinisRodrigues Sep 12 2020 at 09:38

Infelizmente, o ImageNet não é rotulado para esse fim. Disponível na prateleira, você pode tentar usar a API Tensorflow Object Detection . Existem modelos treinados no conjunto de dados OpenImages que possui 600 classes.

Você pode usá-los imediatamente para inferência ou, se desejar, treiná-los novamente.