# Dishcovery Mission II [CVPR 2026] — Data

来源：https://www.kaggle.com/competitions/dishcovery-mission-ii-cvpr-2026/data

采集时间：2026-10-18T14:02:12Z

We provide two splits of challenge data:
- Training data.
- Validation data.

# Suggested Training Data

Training data generated by [Precision at Scale framework](https://arxiv.org/abs/2407.03463) is available on HuggingFace 🤗 [here](https://huggingface.co/collections/jesusmolrdv/cvprw-mtf-2025-vlm-challenge-data-67e3b1cd766b4836df868a1b) with two splits:
- Web split.
- Synthetic split.

## MTF VLM Challenge Dataset - Web Split

### Overview

This dataset is part of the training data for the **CVPR Workshop Metafood VLM Challenge**. It consists of image-text pairs where the images are sourced from the web.

The dataset has been carefully curated using the **Precision-at-Scale** method, ensuring high relevance and quality for domain-specific tasks.

**Associated Hugging Face Repository:** `jesusmolrdv/MTF25-VLM-Challenge-Dataset-Web`

### Dataset Description

* **Source:** Web-scraped images.
* **Format:** The dataset hosted on Hugging Face contains a table (similar to a Pandas DataFrame) with two columns:
    * `url`: The URL of the original food image.
    * `caption`: A textual description associated with the image.
* **Curation:** The selection of image-text pairs was performed using the methodology described in the "Precision at Scale" paper (see Citation section).

### How to Use / Download

Since this dataset split contains URLs to images rather than the images themselves, you need to download the images using a tool like [`img2dataset`](https://github.com/rom1504/img2dataset/).

1.  **Install dependencies:**
    ```bash
    pip install img2dataset datasets pyarrow pandas
    ```

2.  **Prepare the URL list:**
    First, download the dataset metadata (which contains the URLs and captions) from Hugging Face and save it as a local file (e.g., Parquet format). Run this short Python script:

    ```python
    from datasets import load_dataset
    import os

    hf_dataset_name = "jesusmolrdv/MTF25-VLM-Challenge-Dataset-Web"
    metadata_output_file = "mtf2025_web_metadata.parquet" # Output file for img2dataset

    print(f"Loading dataset metadata: {hf_dataset_name}")
    # Ensure you load the correct split, default is often 'train'
    dataset = load_dataset(hf_dataset_name, split="train")

    print(f"Saving metadata to {metadata_output_file}...")
    # Save in Parquet format, which img2dataset can read efficiently
    dataset.to_parquet(metadata_output_file)

    print("Metadata file saved successfully.")

    ```
    This script will create a file named `mtf2025_web_metadata.parquet` in the directory where you run it. This file contains the `url` and `caption` columns needed by `img2dataset`.

3.  **Download images using `img2dataset` CLI:**
    Now, use the `img2dataset` command in your terminal. Adjust parameters like `output_folder`, `image_size`, and `processes_count` as needed.

    ```bash
    img2dataset \
      --url_list mtf2025_web_metadata.parquet \
      --input_format "parquet" \
      --url_col "url" \
      --caption_col "caption" \
      --output_format webdataset \
      --output_folder ./mtf2025_web_images \
      --processes_count 16 \
      --thread_count 64 \
      --image_size 512 \
      --resize_mode keep_ratio \
      --save_additional_columns '["caption"]' \
      --enable_wandb False
    ```

> *Note: Downloading large datasets can take significant time and bandwidth. Some URLs might become inactive over time.*

### Citation

If you use this dataset in your research or challenge participation, please cite the following paper describing the curation method:

```
@article{DBLP:journals/pr/RodriguezdeVeraESNR26,
  author={Jesús M. Rodríguez-de-Vera and Imanol G. Estepa and Ignacio Sarasúa and Bhalaji Nagarajan and Petia Radeva},
  title={Precision at scale: Domain-specific datasets on-demand},
  year={2026},
  cdate={1767225600000},
  journal={Pattern Recognit.},
  volume={171},
  pages={112236},
  url={https://doi.org/10.1016/j.patcog.2025.112236}
}
```

## MTF VLM Challenge Dataset - Synthetic Split

### Overview

This dataset is part of the training data for the **CVPR Workshop Metafood VLM Challenge**. It consists of image-text pairs where the images are synthetically generated using **[Stable Diffusion 2.1](https://huggingface.co/stabilityai/stable-diffusion-2-1)**.

The dataset has been carefully curated using the **Precision-at-Scale** method, ensuring high relevance and quality for domain-specific tasks.

**Associated Hugging Face Repository:** `jesusmolrdv/MTF25-VLM-Challenge-Dataset-Synth`

### Dataset Description

* **Source:** Synthetic images generated via Stable Diffusion v2.1.
* **Format:** The dataset hosted on Hugging Face contains a table (similar to a Pandas DataFrame or Hugging Face `Dataset` object) with two columns:
    * `image`: The PIL (Python Imaging Library) image object itself.
    * `caption`: The textual description (prompt) used to generate the image.
* **Curation:** The selection/generation process was guided by the methodology described in the "Precision at Scale" paper (see Citation section).

### How to Use / Download

This dataset can be directly loaded using the Hugging Face `datasets` library. The images are embedded within the dataset structure.

1.  **Install Hugging Face `datasets` library:**
    ```bash
    pip install datasets Pillow
    ```

2.  **Load the dataset using Python:**

    ```python
    from datasets import load_dataset
    
    # Load the dataset from Hugging Face
    hf_dataset_name = "jesusmolrdv/MTF25-VLM-Challenge-Dataset-Synth"
    print(f"Loading dataset: {hf_dataset_name}...")
    
    # Load the desired split (e.g., 'train')
    # Use streaming=True for large datasets to avoid downloading everything at once
    # dataset = load_dataset(hf_dataset_name, split="train", streaming=True)
    dataset = load_dataset(hf_dataset_name, split="train") # Loads the entire split into memory/cache
    
    print("Dataset loaded successfully.")
    
    # Accessing data (example for non-streaming)
    if dataset:
        print(f"Number of examples in split: {len(dataset)}")
        # Get the first example
        first_example = dataset[0]
        img = first_example['image']
        caption = first_example['caption']
    
        print("\nFirst example:")
        print(f" Caption: {caption}")
        print(f" Image type: {type(img)}")
        print(f" Image mode: {img.mode}")
        print(f" Image size: {img.size}")
    
        # You can display the image (requires matplotlib or other library)
        # import matplotlib.pyplot as plt
        # plt.imshow(img)
        # plt.title(caption)
        # plt.axis('off')
        # plt.show()
    
        # Iterate through the dataset (example)
        # print("\nIterating through first 5 examples:")
        # for i, example in enumerate(dataset):
        #     if i >= 5:
        #         break
        #     print(f" Example {i+1}: Caption - {example['caption'][:50]}...") # Print first 50 chars of caption
            # Process example['image'] and example['caption'] as needed
    else:
        print("Failed to load dataset.")
    
    # Example of iterating with streaming=True
    # print("\nIterating through first 5 examples (streaming):")
    # count = 0
    # for example in dataset:
    #     if count >= 5:
    #         break
    #     print(f" Example {count+1}: Caption - {example['caption'][:50]}...")
    #     # Process example['image'] and example['caption']
    #     count += 1
    
    ```
    > *Note: Ensure you have enough disk space for the Hugging Face cache if not using `streaming=True`.*

### Citation

If you use this dataset in your research or challenge participation, please cite the following paper describing the curation method:

```
@article{DBLP:journals/pr/RodriguezdeVeraESNR26,
  author={Jesús M. Rodríguez-de-Vera and Imanol G. Estepa and Ignacio Sarasúa and Bhalaji Nagarajan and Petia Radeva},
  title={Precision at scale: Domain-specific datasets on-demand},
  year={2026},
  cdate={1767225600000},
  journal={Pattern Recognit.},
  volume={171},
  pages={112236},
  url={https://doi.org/10.1016/j.patcog.2025.112236}
}
```

# Test Data - Files Provided

*   **Test1 Folder** - Multi-label test set. It contains all images, captions (TXT) and image order (TXT).
*   **Test2 Folder** - Single-label test set. It contains all images, captions (JSON) and image order (TXT).
*   **sample_submission.csv** - A sample submission file in the correct format. 
