Skip to content

Anotación de Imágenes

Anota imágenes con cuadros delimitadores, polígonos, dibujo libre y puntos de referencia.

Anotación de Imágenes

El sistema de anotación de imágenes de Potato soporta múltiples métodos de anotación para tareas de visión por computadora incluyendo detección de objetos, segmentación y anotación de puntos clave.

Herramientas Soportadas

HerramientaDescripciónCaso de Uso
bboxCuadros delimitadores rectangularesDetección de objetos
polygonPolígonos multi-puntoSegmentación de instancias
freeformDibujo a mano alzadaFormas irregulares
landmarkMarcadores de puntoDetección de puntos clave
fillHerramienta de relleno a nivel de píxelMáscaras de segmentación
eraserBorrar regiones pintadasCorrección de máscaras de segmentación
brushHerramienta de pincelSegmentación detallada

Configuración Básica

yaml
annotation_schemes:
  - name: "objects"
    description: "Draw boxes around all objects"
    annotation_type: "image_annotation"
    tools:
      - bbox
    labels:
      - person
      - car
      - bicycle

Opciones de Configuración

CampoTipoPredeterminadoDescripción
namestringRequeridoIdentificador único para la anotación
descriptionstringRequeridoInstrucciones mostradas a los anotadores
annotation_typestringRequeridoDebe ser "image_annotation"
toolslistRequeridoHerramientas de anotación habilitadas (bbox, polygon, freeform, landmark, fill, eraser, brush)
labelslistRequeridoEtiquetas de categoría para anotaciones
zoom_enabledbooleantrueHabilitar controles de zoom
pan_enabledbooleantrueHabilitar navegación por arrastre
min_annotationsinteger0Anotaciones mínimas requeridas
max_annotationsintegernullAnotaciones máximas permitidas (null = ilimitado)
freeform_brush_sizeinteger5Tamaño del pincel para dibujo libre
freeform_simplifyfloat2.0Factor de simplificación de trazado

Configuración de Etiquetas

Las etiquetas pueden ser cadenas simples u objetos detallados:

yaml
# Simple labels (auto-colored)
labels:
  - person
  - car
  - tree
 
# Detailed labels with custom colors and shortcuts
labels:
  - name: "person"
    color: "#FF6B6B"
    key_value: "1"
  - name: "car"
    color: "#4ECDC4"
    key_value: "2"
  - name: "bicycle"
    color: "#45B7D1"
    key_value: "3"

Ejemplos

Detección de Objetos (Cuadros Delimitadores)

yaml
annotation_schemes:
  - name: "detection"
    description: "Draw bounding boxes around all vehicles"
    annotation_type: "image_annotation"
    tools:
      - bbox
    labels:
      - name: "car"
        color: "#3B82F6"
        key_value: "1"
      - name: "truck"
        color: "#10B981"
        key_value: "2"
      - name: "motorcycle"
        color: "#F59E0B"
        key_value: "3"
    min_annotations: 1
    zoom_enabled: true

Segmentación de Instancias (Polígonos)

yaml
annotation_schemes:
  - name: "segmentation"
    description: "Draw polygons around each object"
    annotation_type: "image_annotation"
    tools:
      - polygon
    labels:
      - name: "building"
        color: "#8B5CF6"
      - name: "road"
        color: "#64748B"
      - name: "vegetation"
        color: "#22C55E"
    zoom_enabled: true
    pan_enabled: true

Anotación de Puntos Clave (Landmarks)

yaml
annotation_schemes:
  - name: "facial_landmarks"
    description: "Mark facial keypoints"
    annotation_type: "image_annotation"
    tools:
      - landmark
    labels:
      - name: "left_eye"
        color: "#3B82F6"
      - name: "right_eye"
        color: "#3B82F6"
      - name: "nose"
        color: "#10B981"
      - name: "left_mouth"
        color: "#F59E0B"
      - name: "right_mouth"
        color: "#F59E0B"

Múltiples Herramientas

yaml
annotation_schemes:
  - name: "mixed_annotation"
    description: "Use boxes for objects and polygons for regions"
    annotation_type: "image_annotation"
    tools:
      - bbox
      - polygon
    labels:
      - name: "object"
        color: "#3B82F6"
      - name: "region"
        color: "#10B981"

Atajos de Teclado

TeclaAcción
bActivar herramienta de cuadro delimitador
pActivar herramienta de polígono
fActivar herramienta de dibujo libre
lActivar herramienta de landmarks
1-9Seleccionar etiqueta
DeleteEliminar anotación seleccionada
Ctrl+ZDeshacer
Ctrl+YRehacer
+ / -Acercar/alejar zoom

Formato de Datos

Datos de Entrada

Tu archivo de datos debe incluir rutas de imágenes o URLs:

json
[
  {
    "id": "img_001",
    "image_url": "https://example.com/images/photo1.jpg"
  },
  {
    "id": "img_002",
    "image_url": "/data/images/photo2.png"
  }
]

Configura el campo de imagen en tu configuración:

yaml
item_properties:
  id_key: id
  text_key: image_url

Formato de Salida

Las anotaciones incluyen datos de geometría para cada anotación:

json
{
  "id": "img_001",
  "annotations": {
    "objects": [
      {
        "id": "ann_1",
        "type": "bbox",
        "label": "car",
        "geometry": {
          "x": 100,
          "y": 150,
          "width": 200,
          "height": 100
        }
      },
      {
        "id": "ann_2",
        "type": "polygon",
        "label": "building",
        "geometry": {
          "points": [
            [50, 50],
            [150, 50],
            [150, 200],
            [50, 200]
          ]
        }
      }
    ]
  }
}

Formatos de Imagen Soportados

  • JPEG / JPG
  • PNG
  • GIF
  • WebP

Máscaras de Segmentación

Nuevo en v2.2.0

Las herramientas fill, eraser y brush permiten la anotación de máscaras de segmentación a nivel de píxel. Estas herramientas son ideales para tareas de segmentación semántica donde se necesitan límites de región precisos.

yaml
annotation_schemes:
  - name: "segmentation"
    description: "Paint segmentation masks"
    annotation_type: "image_annotation"
    tools:
      - fill
      - eraser
      - brush
    labels:
      - name: "foreground"
        color: "#3B82F6"
      - name: "background"
        color: "#6B7280"
    freeform_brush_size: 10
TeclaAcción
iActivar herramienta de relleno
eActivar borrador
rActivar pincel

Cuadros Delimitadores para PDF/Documentos

Nuevo en v2.2.0

Dibuja cuadros delimitadores en páginas PDF e imágenes de documentos. Cuando se combina con el tipo de visualización pdf en instance_display, los anotadores pueden dibujar cuadros en páginas individuales de documentos PDF.

yaml
instance_display:
  fields:
    - key: pdf_url
      type: pdf
 
annotation_schemes:
  - name: "document_regions"
    description: "Draw boxes around figures and tables"
    annotation_type: "image_annotation"
    tools:
      - bbox
    labels:
      - name: "figure"
        color: "#3B82F6"
      - name: "table"
        color: "#10B981"
      - name: "equation"
        color: "#F59E0B"

Mejores Prácticas

  1. Usar herramientas apropiadas - Cuadros delimitadores para detección rápida, polígonos para límites precisos, relleno/pincel para segmentación
  2. Definir etiquetas claras - Usa categorías distintas y sin solapamiento
  3. Establecer límites de anotación - Usa min_annotations para asegurar completitud
  4. Habilitar zoom - Esencial para anotaciones detalladas en imágenes de alta resolución
  5. Usar atajos de teclado - Acelera significativamente la anotación
  6. Proporcionar colores de etiqueta - Facilita distinguir visualmente las anotaciones