blade-inspection-demo / README_VISION_MODELS.md
Kesheratmex
**Add Grounding DINO zero‑shot detection fallback and logging**
98eefdf
# 🎯 KESHERAT AI - Detección Zero-Shot con OWL-V2 + Grounding DINO
## 🚀 **Nuevo Sistema de Detección**
Hemos migrado de YOLO a un sistema de **detección zero-shot** que puede encontrar cualquier defecto que describas en texto, sin necesidad de entrenamiento previo.
### **🔧 Modelos Utilizados:**
#### **1. Grounding DINO (Primario)**
- **Modelo**: `IDEA-Research/grounding-dino-base`
- **Ventajas**: Excelente para detección zero-shot
- **Uso**: Busca defectos usando descripciones en texto natural
#### **2. OWL-V2 (Respaldo)**
- **Modelo**: `google/owlv2-large-patch14-ensemble`
- **Ventajas**: Robusto y confiable
- **Uso**: Se activa si Grounding DINO falla
#### **3. GPT Vision (Análisis)**
- **Modelos**: GPT-4 Vision o BLIP/LLaVA
- **Uso**: Análisis visual detallado en español
## 🎯 **Consultas de Detección**
El sistema busca estos defectos automáticamente:
```python
DEFECT_QUERIES = [
"crack", "grieta", "fisura", # Grietas
"erosion", "erosión", "desgaste", # Erosión
"dirt", "suciedad", "mancha", # Suciedad
"damage", "daño", "impacto", # Daños
"corrosion", "corrosión", "oxidación", # Corrosión
"hole", "agujero", "perforación", # Agujeros
"stain", "mancha", "decoloración", # Manchas
"wear", "desgaste", "deterioro", # Desgaste
"lightning damage", "daño por rayo", # Rayos
"bird strike", "impacto de ave" # Impactos
]
```
## 🛠️ **Configuración en HF Space**
### **Variables de Entorno (Opcionales):**
```bash
# Para GPT Vision (opcional)
HUGGINGFACE_API_TOKEN = tu_token_hf
VISION_MODEL_ID = Salesforce/blip-image-captioning-base
# Para OpenAI GPT-4 Vision (opcional)
OPENAI_API_KEY = tu_openai_key
```
### **Dependencias Requeridas:**
```
transformers>=4.35.0
torch==2.2.0
torchvision
accelerate
sentencepiece
Pillow
```
## 🔍 **Flujo de Trabajo**
1. **Usuario sube imagen/video**
2. **Grounding DINO** busca defectos usando texto
3. **OWL-V2** (respaldo) si Grounding DINO falla
4. **GPT Vision** analiza la imagen completa
5. **Sistema** combina detecciones + análisis
6. **Usuario** recibe resultado en español
## 💡 **Ventajas del Nuevo Sistema**
### **vs YOLO:**
-**Zero-shot**: No necesita entrenamiento
-**Flexible**: Busca cualquier defecto que describas
-**Multilingüe**: Funciona en español e inglés
-**Actualizable**: Agregar nuevos defectos es fácil
### **Capacidades:**
- 🔍 **Detección precisa** de defectos específicos
- 🎯 **Búsqueda por texto** ("grieta en el borde")
- 🌍 **Multilingüe** (español/inglés)
- 🧠 **Análisis inteligente** con GPT
- 📊 **Reportes detallados** en PDF/MD/JSON
## 🚀 **Uso en HF Space**
### **1. Subir Imagen/Video**
- Formatos: JPG, PNG, MP4, AVI, MOV
### **2. Detectar Defectos**
- Click en "Detectar defectos con OWL-V2 + GPT"
- El sistema automáticamente:
- Busca todos los defectos de la lista
- Analiza visualmente con GPT
- Genera reporte completo
### **3. Ver Resultados**
- **Imagen anotada** con detecciones marcadas
- **Análisis de GPT** en español
- **Reportes** descargables (PDF/MD/JSON)
## 🔧 **Personalización**
### **Agregar Nuevos Defectos:**
Edita `DEFECT_QUERIES` en `app.py`:
```python
DEFECT_QUERIES = [
# Defectos existentes...
"nuevo_defecto", "new defect",
"otro_problema", "another issue"
]
```
### **Ajustar Sensibilidad:**
Modifica el threshold en la detección:
```python
# Más sensible (más detecciones)
threshold = 0.05
# Menos sensible (menos detecciones)
threshold = 0.2
```
## 🎯 **Resultado Esperado**
```markdown
## 🔍 Análisis Visual Directo de la Pala
**Estado General:** Bueno con mantenimiento menor requerido
**Detecciones Automáticas:**
- Dirt (suciedad): 2 áreas detectadas
- Erosion (erosión): 1 área en borde de ataque
**Análisis de GPT:**
La superficie muestra condición general buena con dos áreas
de acumulación de suciedad claramente visibles...
**Recomendaciones:**
- Limpieza programada en 2 semanas
- Inspección de erosión en 3 meses
```
¡El sistema ahora es mucho más potente y flexible! 🎉