{
  "@context": "https://mlcommons.org/croissant/context/v1",
  "@type": "Dataset",
  "name": "Visual Wetland Birds",
  "description": "Conjunto de vídeos de aves de humedal con anotaciones frame-a-frame (bounding boxes) y etiquetas de comportamiento. Incluye archivos de anotaciones y referencia al depósito Zenodo y al repositorio GitHub.",
  "url": "https://datos.chantwin.iuii.ua.es/dataset/visualwetlandbirds",
  "keywords": [
    "birds",
    "wetland",
    "video",
    "behavior",
    "detection",
    "bounding boxes"
  ],
  "license": "http://www.opendefinition.org/licenses/cc-by",
  "conformsTo": "https://mlcommons.org/croissant/1.0",
  "creator": {
    "@type": "Organization",
    "name": "3D Perception Lab",
    "url": "https://3dperceptionlab.github.io/"
  },
  "dateCreated": "2024-12-10T00:00:00Z",
  "datePublished": "2025-01-10T00:00:00Z",
  "spatialCoverage": "Wetlands of La Mata Natural Park and El Hondo Natural Park, Southeastern Spain",
  "temporalCoverage": "2024-2025",
  "identifier": "https://doi.org/10.5281/zenodo.15696105",
  "contactPoint": {
    "name": "Rodriguez-Juan, Javier",
    "email": ""
  },
  "distribution": [
    {
      "@type": "FileObject",
      "name": "videos_archive",
      "description": "Contenedor de los ficheros de vídeo (ver Zenodo o GitHub para los archivos concretos).",
      "contentUrl": "https://zenodo.org/records/14639444",
      "encodingFormat": "video/*"
    },
    {
      "@type": "FileObject",
      "name": "bounding_boxes.csv",
      "description": "Anotaciones frame-a-frame. Cada fila contiene: species_id;species;video_name;frame;bounding_boxes. El campo bounding_boxes es una lista de tuplas con formato (X_max,Y_max,X_min,Y_min,Action_id,Bird_id).",
      "contentUrl": "https://zenodo.org/records/14639444/files/bounding_boxes.csv",
      "encodingFormat": "text/csv"
    },
    {
      "@type": "FileObject",
      "name": "behaviors_ID.csv",
      "description": "Tabla de mapeo de identificadores de comportamiento a nombres legibles (Activity,ID).",
      "contentUrl": "https://zenodo.org/records/14639444/files/behaviors_ID.csv",
      "encodingFormat": "text/csv"
    },
    {
      "@type": "FileObject",
      "name": "splits.json",
      "description": "Fichero JSON que contiene las listas de vídeos para train/val/test.",
      "contentUrl": "https://zenodo.org/records/14639444/files/splits.json",
      "encodingFormat": "application/json"
    },
    {
      "@type": "FileObject",
      "name": "repository",
      "description": "Repositorio con código, notebooks y scripts de ejemplo (GitHub).",
      "contentUrl": "https://github.com/3dperceptionlab/Visual-WetlandBirds",
      "encodingFormat": "text/html"
    }
  ],
  "recordSet": [
    {
      "name": "bounding_boxes",
      "description": "Tabla principal de anotaciones. Cada fila describe detecciones en un frame.",
      "data": "bounding_boxes.csv",
      "fields": [
        {
          "name": "species_id",
          "dataType": "integer",
          "description": "Identificador numérico de la especie"
        },
        {
          "name": "species",
          "dataType": "string",
          "description": "Nombre del la especie (texto)"
        },
        {
          "name": "video_name",
          "dataType": "string",
          "description": "Nombre del archivo de vídeo (sin ruta)"
        },
        {
          "name": "frame",
          "dataType": "integer",
          "description": "Número de fotograma dentro del vídeo (0-indexado)"
        },
        {
          "name": "bounding_boxes",
          "dataType": "string",
          "description": "Lista serializada de detecciones: [(X_max, Y_max, X_min, Y_min, Action_id, Bird_id), ...]. Coordenadas en píxeles sobre el fotograma."
        }
      ],
      "notes": "Se recomienda parsear el campo bounding_boxes en estructura tabular para tareas de detección/tracking (cada tupla => una fila con los campos xmax, ymax, xmin, ymin, action_id, bird_id).",
      "splitField": "video_name"
    },
    {
      "name": "behaviors",
      "description": "Tabla de referencia para interpretar Action_id en bounding_boxes.",
      "data": "behaviors_ID.csv",
      "fields": [
        {
          "name": "Activity",
          "dataType": "string",
          "description": "Nombre del comportamiento (p.ej. Feeding)"
        },
        {
          "name": "ID",
          "dataType": "integer",
          "description": "Identificador numérico del comportamiento (Action_id)"
        }
      ]
    }
  ],
  "splits": {
    "train_set": [
      "159-yellow_legged_gull",
      "095-white_wagtail",
      "053-eurasian_moorhen",
      "071-black_winged_stilt",
      "162-glossy_ibis",
      "164-white_wagtail",
      "004-squacco_heron",
      "149-squacco_heron",
      "061-northern_shoveler",
      "038-gadwall",
      "125-eurasian_magpie",
      "015-black_headed_gull",
      "072-black_winged_stilt",
      "122-black_headed_gull",
      "033-gadwall",
      "010-yellow_legged_gull",
      "013-black_headed_gull",
      "087-little_ringed_plover",
      "078-eurasian_magpie",
      "146-squacco_heron",
      "144-squacco_heron",
      "132-eurasian_magpie",
      "152-squacco_heron",
      "028-gadwall",
      "016-black_headed_gull",
      "145-squacco_heron",
      "098-white_wagtail",
      "155-black_winged_stilt",
      "031-gadwall",
      "026-black_headed_gull",
      "091-little_ringed_plover",
      "043-mallard",
      "023-glossy_ibis",
      "046-mallard",
      "020-eurasian_coot",
      "133-eurasian_magpie",
      "035-gadwall",
      "143-squacco_heron",
      "123-black_headed_gull",
      "148-squacco_heron",
      "056-eurasian_moorhen",
      "076-black_winged_stilt",
      "175-eurasian_coot",
      "111-eurasian_coot",
      "034-gadwall",
      "119-eurasian_moorhen",
      "017-black_headed_gull",
      "172-black_headed_gull",
      "151-squacco_heron",
      "067-northern_shoveler",
      "118-eurasian_moorhen",
      "045-mallard",
      "054-eurasian_moorhen",
      "168-white_wagtail",
      "084-yellow_legged_gull",
      "048-glossy_ibis",
      "106-eurasian_coot",
      "110-eurasian_coot",
      "139-eurasian_coot",
      "176-black_headed_gull",
      "040-mallard",
      "006-yellow_legged_gull",
      "104-eurasian_coot",
      "018-eurasian_coot",
      "030-gadwall",
      "127-eurasian_magpie",
      "153-squacco_heron",
      "044-mallard",
      "062-northern_shoveler",
      "008-yellow_legged_gull",
      "055-eurasian_moorhen",
      "065-northern_shoveler",
      "068-northern_shoveler",
      "093-little_ringed_plover",
      "086-little_ringed_plover",
      "097-white_wagtail",
      "069-northern_shoveler",
      "050-eurasian_moorhen",
      "063-northern_shoveler",
      "094-white_wagtail",
      "116-eurasian_moorhen",
      "022-little_ringed_plover",
      "137-eurasian_magpie",
      "077-black_winged_stilt",
      "117-eurasian_moorhen",
      "081-yellow_legged_gull",
      "126-eurasian_magpie",
      "079-eurasian_magpie",
      "096-white_wagtail",
      "105-eurasian_coot",
      "100-eurasian_coot",
      "011-yellow_legged_gull",
      "060-northern_shoveler",
      "112-eurasian_coot",
      "170-black_winged_stilt",
      "115-eurasian_moorhen",
      "101-eurasian_coot",
      "088-little_ringed_plover",
      "157-black_winged_stilt",
      "047-glossy_ibis",
      "156-black_winged_stilt",
      "158-black_winged_stilt",
      "080-yellow_legged_gull",
      "066-northern_shoveler",
      "140-mallard",
      "147-squacco_heron",
      "032-gadwall",
      "135-eurasian_magpie",
      "166-white_wagtail",
      "141-mallard",
      "173-black_headed_gull",
      "059-northern_shoveler",
      "131-eurasian_magpie",
      "103-eurasian_coot",
      "025-black_headed_gull",
      "113-eurasian_moorhen",
      "007-yellow_legged_gull",
      "129-eurasian_magpie",
      "161-glossy_ibis",
      "114-eurasian_moorhen",
      "099-white_wagtail",
      "169-black_winged_stilt",
      "037-gadwall",
      "160-glossy_ibis"
    ],
    "val_set": [
      "107-eurasian_coot",
      "090-little_ringed_plover",
      "051-eurasian_moorhen",
      "109-eurasian_coot",
      "005-squacco_heron",
      "089-little_ringed_plover",
      "074-black_winged_stilt",
      "136-eurasian_magpie",
      "134-eurasian_magpie",
      "001-white_wagtail",
      "138-eurasian_magpie",
      "002-squacco_heron",
      "070-northern_shoveler",
      "120-eurasian_moorhen",
      "102-eurasian_coot",
      "039-gadwall",
      "049-glossy_ibis",
      "014-black_headed_gull",
      "036-gadwall",
      "012-black_headed_gull",
      "058-northern_shoveler",
      "041-mallard",
      "128-eurasian_moorhen",
      "075-black_winged_stilt",
      "083-yellow_legged_gull",
      "163-white_wagtail",
      "085-yellow_legged_gull"
    ],
    "test_set": [
      "124-black_headed_gull",
      "142-mallard",
      "171-black_winged_stilt",
      "130-eurasian_magpie",
      "064-northern_shoveler",
      "024-black_headed_gull",
      "009-yellow_legged_gull",
      "177-eurasian_magpie",
      "052-eurasian_moorhen",
      "154-northern_shoveler",
      "150-squacco_heron",
      "165-glossy_ibis",
      "019-eurasian_coot",
      "003-squacco_heron",
      "057-eurasian_moorhen",
      "092-little_ringed_plover",
      "021-little_ringed_plover",
      "167-white_wagtail",
      "178-white_wagtail",
      "082-yellow_legged_gull",
      "121-eurasian_moorhen",
      "108-eurasian_coot",
      "042-mallard",
      "073-black_winged_stilt",
      "174-eurasian_coot",
      "027-gadwall",
      "029-gadwall"
    ]
  },
  "notes": "Formato de coordenadas (según bounding_boxes_information.txt): (X_max, Y_max, X_min, Y_min, Action_id, Bird_id). Se puede incluir una versión 'flattened' de bounding_boxes para análisis más sencillo."
}
