modelo de detecção de objeto pré-treinado com mais classes do que COCO
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
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')
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.