Taula de continguts[Amaga][Espectacle]
Una de les idees més senzilles però intrigants de l'aprenentatge profund és la detecció d'objectes. La idea fonamental és dividir cada element en classes successives que representin trets comparables i després dibuixar un quadre al voltant.
Aquestes característiques distintives poden ser tan simples com la forma o el color, cosa que ens ajuda a classificar-les.
Les aplicacions de Detecció d'objectes s'utilitzen àmpliament en les ciències mèdiques, la conducció autònoma, la defensa i l'exèrcit, l'administració pública i molts altres camps gràcies a les millores substancials en visió per ordinador i processament d'imatges.
Aquí tenim MMDetection, un fantàstic conjunt d'eines de detecció d'objectes de codi obert construït a Pytorch. En aquest article, examinarem MMDetection en detall, passarem a la pràctica, parlarem de les seves característiques i molt més.
Què és Detecció MMD?
El Detecció MMD Toolbox es va crear com a base de codi Python específicament per a problemes relacionats amb la identificació d'objectes i la segmentació d'instàncies.
S'utilitza la implementació PyTorch i es crea de manera modular. Per al reconeixement d'objectes i la segmentació d'instàncies, s'ha compilat una àmplia gamma de models efectius en una varietat de metodologies.
Permet una inferència eficaç i un entrenament ràpid. D'altra banda, la caixa d'eines inclou pesos per a més de 200 xarxes preentrenades, cosa que la converteix en una solució ràpida en el camp d'identificació d'objectes.
Amb la capacitat d'adaptar les tècniques actuals o crear un nou detector utilitzant els mòduls disponibles, MMDetection funciona com a referència.
La característica clau de la caixa d'eines és la inclusió de peces senzilles i modulars d'un normal detecció d'objectes marc que es pot utilitzar per crear pipelines únics o models únics.
Les capacitats de benchmarking d'aquest conjunt d'eines fan que sigui senzill construir un nou marc de detectors a sobre d'un marc existent i comparar-ne el rendiment.
Característiques
- Els marcs de detecció populars i moderns, com ara Faster RCNN, Mask RCNN, RetinaNet, etc., són compatibles directament amb el conjunt d'eines.
- Ús de més de 360 models pre-entrenats per ajustar-los (o entrenar de nou).
- Per a conjunts de dades de visió coneguts com COCO, Cityscapes, LVIS i PASCAL VOC.
- A les GPU, s'executen totes les operacions bbox i màscara fonamentals. Altres bases de codi, com ara Detectron2, maskrcnn-benchmark i SimpleDet, es poden entrenar a un ritme més ràpid o igual que aquest.
- Els investigadors desglossen el detecció d'objectes marc en diversos mòduls, que després es poden combinar per crear un sistema de detecció d'objectes únic.
Arquitectura de MMDetection
MMDetection especifica un disseny genèric que es pot aplicar a qualsevol model, ja que és una caixa d'eines amb una varietat de models preconstruïts, cadascun dels quals té la seva pròpia arquitectura. Els components següents conformen aquesta arquitectura global:
- Backbone: Backbone, com un ResNet-50 sense la capa final completament connectada, és el component que converteix una imatge en mapes de característiques.
- coll: El coll és el segment que connecta la columna vertebral amb els caps. Als mapes de funcions en brut de la columna vertebral, fa certs ajustos o reconfiguracions. Feature Pyramid Network és una il·lustració (FPN).
- Cap Dens (AnchorHead/AnchorFreeHead): és el component que opera en àrees denses de mapes de característiques, com ara AnchorHead i AnchorFreeHead, com RPNHead, RetinaHead i FCOSHead.
- RoIExtractor: Amb l'ús d'operadors semblants a RoIPooling, és la secció que extreu característiques de RoIwise d'un sol o d'una col·lecció de mapes de característiques. La mostra SingleRoIExtractor extreu les característiques de RoI del nivell de concordança de les piràmides de característiques.
- RoIHead (BBoxHead/MaskHead): és la part del sistema que utilitza les característiques de RoI com a entrada i genera prediccions específiques de tasques basades en RoI, com ara la classificació/regressió de quadres delimitadors i la predicció de màscara.
La construcció de detectors d'una i dues etapes s'il·lustra mitjançant els conceptes esmentats anteriorment. Podem desenvolupar els nostres propis procediments simplement construint unes quantes peces noves i combinant algunes de les existents.
Llista de models inclosos a MMDetection
MMDetection proporciona bases de codi de primer nivell per a diversos models coneguts i mòduls orientats a tasques. A continuació s'enumeren els models que s'han creat anteriorment i els mètodes adaptables que es poden utilitzar amb la caixa d'eines MMDetection. La llista no para de créixer a mesura que s'afegeixen més models i mètodes.
- R-CNN ràpid
- R-CNN més ràpid
- Màscara R-CNN
- RetinaNet
- DCN
- DCNv2
- Cascada R-CNN
- M2Det
- GHM
- ScratchDet
- R-CNN de doble cap
- Quadrícula R-CNN
- FSAF
- Libra R-CNN
- GCNet
- HRNet
- Puntuació de màscares R-CNN
- FCOS
- SSD
- R-FCN
- Entrenament de precisió mixta
- Estandardització de pes
- Cascada de tasques híbrides
- Ancoratge guiat
- Atenció generalitzada
Construir un model de detecció d'objectes mitjançant MMDetection
En aquest tutorial, serem el quadern de col·laboració de Google perquè és fàcil de configurar i utilitzar.
instal·lació
Per instal·lar tot el que necessitem, primer instal·larem les biblioteques necessàries i clonarem el projecte MMdetection GitHub.
S'està important env
L'entorn del nostre projecte ara s'importarà del repositori.
Importació de biblioteques i MMdetection
Ara importarem les biblioteques necessàries, juntament amb el MMdetection, per descomptat.
Baixeu els punts de control prèviament entrenats
Els punts de control del model prèviament entrenats de MMdetection s'han de descarregar ara per a més ajustaments i inferències.
Model d'edifici
Ara construirem el model i aplicarem els punts de control al conjunt de dades.
Inferència del detector
Ara que el model s'ha construït i carregat correctament, comprovem com d'excel·lent és. Utilitzem el detector d'inferència API d'alt nivell de MMDetection. Aquesta API va ser dissenyada per facilitar el procés d'inferència.
Resultat
Fem una ullada als resultats.
Conclusió
En conclusió, la caixa d'eines MMDetection supera les bases de codi llançades recentment com SimpleDet, Detectron i Maskrcnn-benchmark. Amb una gran col·lecció de models,
MMDetection és ara la tecnologia d'última generació. MMDetection supera totes les altres bases de codi en termes d'eficiència i rendiment.
Una de les coses més bones de MMdetection és que ara només podeu apuntar a un fitxer de configuració diferent, descarregar un punt de control diferent i executar el mateix codi si voleu canviar els models.
Aconsello mirar-los instruccions si tens problemes amb alguna de les etapes o vols realitzar-ne alguna de manera diferent.
Deixa un comentari