---
title: open-vision-banana
canonical_url: "https://www.modelscope.cn/datasets/isLinXu/open-vision-banana"
md_url: "https://www.modelscope.cn/datasets/isLinXu/open-vision-banana.md"
repository: isLinXu/open-vision-banana
chinese_name: "开放视觉多任务与图文图编辑数据集"
last_updated: 2026-10-29
license: other
storage_size: "11 GB"
downloads: 467543
stars: 0
---

# open-vision-banana

> open-vision-banana - isLinXu 在 ModelScope 开源的数据集。open-vision-banana 是基于 SenseNova-Vision-Corpus-50M 当前项目整理的多任务视觉语料，覆盖结构化视觉理解、分割、稠密几何预测和多视图几何重建。其中，相对深度估计、表面法线估计和多视图重建采用“输入图像 + 文本指令 → 输出图像”的图-文-图训练格式，可用于扩展图像编辑与视觉生成模型的任务能力。

isLinXu/open-vision-banana 是 ModelScope 魔搭社区上的数据集，存储大小 11 GB，采用 other 许可。

- **Repository**: isLinXu/open-vision-banana
- **License**: other
- **Storage size**: 11 GB
- **Downloads**: 467543
- **Stars**: 0
- **Last updated**: 2026-10-29

Source: https://www.modelscope.cn/datasets/isLinXu/open-vision-banana

---

# open-vision-banana

open-vision-banana 是基于 SenseNova-Vision-Corpus-50M 当前项目整理的多任务视觉语料，覆盖结构化视觉理解、分割、稠密几何预测和多视图几何重建。其中，相对深度估计、表面法线估计和多视图重建采用“输入图像 + 文本指令 → 输出图像”的图-文-图训练格式，可用于扩展图像编辑与视觉生成模型的任务能力。

## 数据概览

当前版本包含 **83 个 JSONL 清单、37,534,441 条原始样本**。清单约 28.97 GB（十进制），本地完整目录（含媒体与清洁清单）约 **5.9TB**（`du -sh` 统计）。图像和掩码等媒体文件按原始数据源目录组织。

针对当前具有本地媒体的 16 个候选训练任务，`training/cleaned_manifests/` 提供逐条检查后的清洁清单：从 25,162,977 条候选记录中保留 **16,732,802 条有效样本**，过滤 8,430,175 条缺图记录，无 JSON 无效记录。详细统计见 `training/cleaned_manifests/cleaned_summary.json`。

`image_text_image/` 进一步将这 16 个即训任务统一为“输入图像 + 文本指令 → 输出图像”格式，共 **16,732,802 条双图样本**。除深度和法线外，新增全景分割、接地分割、框检测、点检测、指称定位和视觉提示检测等 **10 个数据集、7,099,481 条样本**。检测目标图由原始结构化真值渲染，分割目标复用原始掩码，不引入合成标注。

| 任务族 | 清单数 | 样本数 | 交互形式 |
| --- | ---: | ---: | --- |
| 稠密几何预测 | 10 | 17,320,707 | 图-文-图 |
| 多视图几何重建 | 4 | 35,486 | 图-文-图 |
| 分割与接地描述 | 40 | 1,266,969 | 图像/文本到文本与掩码 |
| 结构化视觉理解 | 29 | 18,911,279 | 图像/文本到结构化文本 |

图-文-图样本合计 **17,356,193 条**。`dataset_index.json` 和 `task_index.csv` 提供每个清单的任务类型、来源、样本数、交互形式和文件大小。

## 视觉任务

### 1. 图-文-图图像编辑与生成

- **相对深度估计**：根据文本指令，将输入 RGB 图像转换为连续灰度相对深度图。
- **表面法线估计**：根据文本指令，生成具有平滑 RGB 变化的表面法线图。
- **全景与接地分割**：输出数据集中与类别、颜色或接地描述对应的原始分割掩码。
- **检测与定位可视化**：输出按真值绘制边界框或定位点的图像，覆盖常规检测、指称定位和视觉提示检测。
- **多视图几何重建**：原始清单输入同一场景的多帧图像和重建指令；本地缺少 RGB 的子集不在即训双图版本中发布。

相关目录：

- `image_text_image/manifests/`：16 个统一双图清单，所有媒体路径均相对于数据集根目录。
- `image_text_image/archives/<任务>/`：完整任务的独立 TAR 分片、SHA256 索引和摘要；这是完整媒体的发布形式，解包后保持清单路径不变。
- `image_text_image/media/`：由检测真值渲染的目标图，按任务和源路径组织。
- `image_text_image/task_registry.json`：统一任务索引、实际样本数和逐任务报告链接。
- `dense_geometric_prediction/`、`multiview_visual_geometry/`：原始几何任务清单。
- `coco2017/`、`object365/`、`sa_1b/`、`coconut/`、`PSG/` 等：对应的输入图像和原始目标媒体。

典型记录：

```json
{
  "id": 0,
  "image": [
    "coco2017/train2017/000000000009.jpg",
    "coco2017/depth/000000000009_depth.png"
  ],
  "conversations": [
    {"from": "human", "value": "<image>Predict relative depth ..."},
    {"from": "gpt", "value": "<image>"}
  ]
}
```

`image` 数组按出现顺序对应输入图像和输出图像；`conversations` 中的 `<image>` 占位符表示图像在对话中的位置。

### 2. 分割与接地描述

- 全景/实例分割（`genseg`）。
- 带分割掩码的接地图像描述（`gcg`）。
- 文本答案使用 `<p>`、`<color>` 和 `<SEG>` 表达类别、颜色与掩码位置。

清单位于 `segmentation/`，媒体文件位于 `51WORLD/`、`Cityscapes/`、`coconut/`、`entityv2/`、`hypersim/`、`LVIS/` 等源数据目录。

### 3. 结构化视觉理解

- 点检测、框检测和视觉提示检测。
- 指代表达定位（点与框）。
- OCR 文本行/词级识别，输出边界框或多边形。
- 输出使用 `<point>`、`<bbox>`、`<poly>` 等结构化标记；坐标格式和归一化方式以各清单样本为准。

清单位于 `structure_view_understanding/`。

## 文件组织与索引

所有清单均为 UTF-8 JSONL，每行一条独立样本。常见字段包括：

- `id` / `image_id`：样本标识。
- `image`：单个路径或有序路径数组。
- `seg`：分割掩码路径（分割任务）。
- `conversations`：`human` 指令与 `gpt` 答案组成的多模态对话。
- `caption`、`category`、`num_instances`：部分数据源的附加标注。

路径可能是仓库根目录相对路径，也可能是相应源数据目录下的相对路径；加载时应结合清单来源和 `task_index.csv` 解析。部分源数据的媒体文件可能需要依据其原始发布方式单独获取，本仓库不因收录清单而免除相应获取或许可要求。

索引字段：

- `category`：任务族。
- `task`：具体视觉任务。
- `interaction_mode`：`image-text-image`、`image-text-mask` 或 `image-text-text`。
- `source`：原始数据源。
- `manifest`：清单在仓库中的路径。
- `samples`：清单行数。
- `size_bytes`：清单字节数。

## 获取与读取

仅获取数据集卡片和索引：

```python
from modelscope import dataset_snapshot_download

root = dataset_snapshot_download(
    "isLinXu/open-vision-banana",
    allow_patterns=[
        "README.md",
        "dataset_index.json",
        "task_index.csv",
        "image_text_image/task_registry.json",
    ],
)
print(root)
```

逐行读取统一双图清单，避免一次性将大型文件载入内存：

```python
import json

with open("image_text_image/manifests/coco_depth.jsonl", encoding="utf-8") as f:
    for line in f:
        sample = json.loads(line)
        input_path, output_path = sample["image"]
        break
```

完整媒体按任务发布为 TAR 分片。下载所需任务的 `image_text_image/archives/<任务>/` 全部文件及对应清单后，在数据集根目录执行：

```bash
python training/extract_image_text_image.py --tasks coconut_b
```

解包工具会核对每个分片的 SHA256，并将媒体还原到清单中的原始相对路径。仅校验、不解包时添加 `--verify-only`。仓库中的部分散图不是完整发布形式。

## 训练接入

`training/` 提供与 SenseNova-Vision / open-vision-banana 加载协议配套的全量、即训和统一图—文—图配置。即训配置只包含媒体检查通过的记录，全量配置保留全部 83 个原始清单。

```bash
python training/prepare_training.py \
  --project /path/to/open-vision-banana-project \
  --manifest-mode image-edit \
  --samples-per-manifest 100
```

随后在项目根目录运行：

```bash
bash scripts/test_dataset.sh data/configs/cv_unify/open_vision_banana_image_edit.yaml
```

新增任务组需要在训练项目的任务注册表中映射到双图编辑加载器；数据集名称和样本数见 `training/open_vision_banana_image_edit.yaml`。若使用原有多任务格式，可将 `--manifest-mode` 改为 `ready`，配置文件相应改为 `open_vision_banana_ready.yaml`。

完整使用方法、全量模式和媒体要求见 [`training/README.md`](training/README.md)。

## 使用注意事项

- 本语料汇集多个第三方数据源，各图像、标注和清单的原始许可可能不同；使用者须逐项核查并遵守源数据集许可、引用要求和适用法规。
- 数据规模较大，建议先下载索引与所需任务清单，再按任务获取对应媒体文件。
- 清单样本数按 JSONL 行数统计，不等于独立图像数；多视图样本会引用多张图像。
- 训练前应进行路径检查、媒体完整性校验、去重及训练/验证集泄漏检查。

## 引用

使用具体子集时，请同时引用对应的原始数据集。本仓库名称为 `open-vision-banana`，本地整理目录为 `SenseNova-Vision-Corpus-50M`。
