Skip to content
ModelListedExternal
Download

Agrovision Plantcount

Modelo de segmentación de instancias para conteo de plantas de arándano (blueberry) en imágenes aéreas de alta resolución.

KindOtherVersionV1.0.0Cgrade

Model source

Kind
Other
File size
124 MB
Version
V1.0.0
Updated
Nov 1, 2026
Source
Hugging Face

Source description

AgroVisión PlantCount v1.0.0

Modelo de segmentación de instancias para conteo de plantas de arándano (blueberry) en imágenes aéreas de alta resolución.

Resumen

CampoValor
ArquitecturaRF-DETR-Seg Nano
TareaSegmentación de instancias
CultivoArándano (blueberry)
Clases1 (Nevado/arbusto)
LicenciaApache 2.0
Versión1.0.0

Métricas

MétricaBoxMask
mAP 500.8920.889
mAP 50:950.7780.773
Precision0.9180.914
Recall0.8080.797
F10.860.86

Uso

Requisitos

pip install onnxruntime

Inferencia

import onnxruntime as ort
import numpy as np

# Cargar modelo
sess = ort.InferenceSession("agrovision-plantcount-v1.0.0.onnx")

# Preparar imagen (RGB, 0-1, letterbox a 312x312)
image = np.random.rand(1, 3, 312, 312).astype(np.float32)

# Inferencia
outputs = sess.run(None, {"images": image})
dets, labels, masks = outputs

# Filtrar por confianza
threshold = 0.5
valid = dets[:, :, 4] > threshold
count = valid.sum()
print(f"Plantas detectadas: {count}")

Contrato de Inferencia (§6.3)

La salida del modelo sigue el contrato de AgroVisión:

{
  "task": "segment",
  "boxes": [[x1, y1, x2, y2, conf, cls], ...],
  "masks": [...],
  "areas_px": [area_px_1, area_px_2, ...],
  "area_proj_m2": 12.5,
  "count": 42,
  "conf_threshold": 0.5,
  "classes": {"0": "arbusto"},
  "crop": "blueberry",
  "model_version": "1.0.0",
  "architecture": "rfdetr_seg_nano",
  "license": "Apache-2.0",
  "nms_free": true
}

Preprocesamiento

  • Formato: RGB
  • Normalización: 0-1 (float32)
  • Tamaño: 312x312 (letterbox)
  • GSD esperado: 0.02 m/px

Dataset

  • Fuente: Roboflow Universe (ws-l3s1y/vivero-plant-counting v3)
  • Imágenes: 1728 (113 base + augmentations)
  • Anotaciones: 5485 (Instance Segmentation)
  • Licencia: CC BY 4.0
  • Split: train (1422) / valid (207) / test (99)

Entrenamiento

HiperparámetroValor
Epochs100
Batch size16
Learning rate1e-4
Seed42
GPURTX 4070 Ti SUPER (16GB)

Selección de Modelo

Se entrenaron dos candidatos:

  • RF-DETR-Seg (Apache 2.0): mAP 50:95 = 0.778, F1 = 0.86
  • YOLO26-seg (AGPL-3.0): mAP 50:95 = 0.782, F1 = 0.86

Decisión: RF-DETR-Seg seleccionado por licencia Apache 2.0 (preferida sobre AGPL-3.0).

Área Proyectada

El área de dosel se calcula como:

area_proj_m2 = Σ(mask_pixels) × GSD2

Donde GSD = 0.02 m/px para el ortomosaico de referencia.

Limitaciones

  • Validado en arándano (blueberry) - puede requerir fine-tuning para otros cultivos
  • GSD óptimo: 0.02 m/px (imágenes aéreas de dron)
  • No validado en imágenes satelitales

Citación

@software{agrovision_plantcount_2026,
  title = {AgroVisión PlantCount: Modelo de Conteo de Plantas},
  author = {Prieto, Alex},
  year = {2026},
  version = {1.0.0},
  license = {Apache-2.0},
  url = {https://huggingface.co/aprieto/agrovision-plantcount}
}

Enlaces

Sources

1 source
Hugging FacePrimaryVersion f6a90eb7aad828822ba9f4d947c41c4f33d508e7
huggingface.co/alexp97/agrovision-plantcount/tree/f6a90eb7aad828822ba9f4d947c41c4f33d508e7

Verified Nov 1

Model artifacts

1 artifact

agrovision-plantcount-v1.0.0.onnx

onnx · 124 MB · SHA-256 925785ee4d45…ac53 · Hugging Face

Download file

Source excerpts

2 excerpts

--- language: - es - en license: apache-2.0 library_name: onnx tags: - instance-segmentation - plant-counting - agriculture - computer-vision - blueberry pipeline_tag: image-segmentation --- # AgroVisión PlantCount v1.0.0 Modelo de segmentación de instancias para conteo de plantas de arándano (blueberry) en imágenes aéreas de alta resolución. ## Resumen | Campo | Valor | |-------|-------| | **Arquitectura** | RF-DETR-Seg Nano | | **Tarea** | Segmentación de instancias | | **Cultivo** | Arándano (blueberry) | | **Clases** | 1 (Nevado/arbusto) | | **Licencia** | Apache 2.0 | | **Versión** | 1.0.0 | ## Métricas | Métrica | Box | Mask | |---------|-----|------| | mAP 50 | 0.892 | 0.889 | | mAP 50:95 | 0.778 | 0.773 | | Precision | 0.918 | 0.914 | | Recall | 0.808 | 0.797 | | F1 | 0.86 | 0.86 | ## Uso ### Requisitos ```bash pip install onnxruntime ``` ### Inferencia ```python import onnxruntime as ort import numpy as np # Cargar modelo sess = ort.InferenceSession("agrovision-plantcount-v1.0.0.onnx") # Preparar imagen (RGB, 0-1, letterbox a 312x312) image = np.random.rand(1, 3, 312, 312).astype(np.float32) # Inferencia outputs = sess.run(None, {"images": image}) dets, labels, masks = outputs # Filtrar por confianza threshold = 0.5 valid = dets[:, :, 4] > threshold count = valid.sum() print(f"Plantas detectadas: {count}") ``` ### Contrato de Inferencia (§6.3) La salida del modelo sigue el contrato de AgroVisión: ```json { "task": "segment", "boxes": [[x1, y1, x2, y2, conf, cls], ...], "masks": [...], "areas_px": [area_px_1, area_px_2, ...], "area_proj_m2": 12.5, "count": 42, "conf_threshold": 0.5, "classes": {"0": "arbusto"}, "crop": "blueberry", "model_version": "1.0.0", "architecture": "rfdetr_seg_nano", "license": "Apache-2.0", "nms_free": true } ``` ## Preprocesamiento - **Formato**: RGB - **Normalización**: 0-1 (float32) - **Tamaño**: 312x312 (letterbox) - **GSD esperado**: 0.02 m/px ## Dataset - **Fuente**: Roboflow Universe (`ws-l3s1y/vivero-plant-counting` v3) - **Imágenes**: 1728 (113 base + augmentations) - **Anotaciones**: 5485 (Instance Segmentation) - **Licencia**: CC BY 4.0 - **Split**: train (1422) / valid (207) / test (99) ## Entrenamiento | Hiperparámetro | Valor | |----------------|-------| | Epochs | 100 | | Batch size | 16 | | Learning rate | 1e-4 | | Seed | 42 | | GPU | RTX 4070 Ti SUPER (16GB) | ## Sele...

Source context: 0 downloads · 0 likes · Pipeline image-segmentation · Library onnx · Repo alexp97/agrovision-plantcount