> For the complete documentation index, see [llms.txt](https://docs.roboflow.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.roboflow.com/datasets/ko/versions/dataset-versions/exporting-data.md).

# 데이터셋 버전 내보내기

## 정보

내보내기를 수행하면 선택한 주석 형식—YOLO, COCO, Pascal VOC, CreateML 등 여러 형식으로 데이터셋 버전의 다운로드 가능한 스냅샷이 생성됩니다(전체 목록은 [formats 디렉터리](https://roboflow.com/formats)에서 확인할 수 있습니다). Roboflow 웹 앱, Python SDK, REST API 또는 CLI를 통해 내보낼 수 있습니다. 데이터셋 버전은 학습용으로 만들어지므로 내보낸 이미지는 압축되고 클래스 이름은 정리됩니다. 자세한 내용과 원본 품질 이미지를 가져오는 방법은 [내보내기 동작](#export-behavior) 을 참조하세요.

## 웹 앱

언제든지 웹 인터페이스에서 Roboflow의 데이터를 내보낼 수 있습니다.

데이터를 내보내려면 먼저 Roboflow 대시보드에서 데이터셋 버전을 생성하세요. 프로젝트와 연결된 "Versions" 페이지에서 수행할 수 있습니다.

데이터셋을 생성한 후, 데이터셋 버전 옆의 "Export"를 클릭하세요:

<figure><img src="/files/ea7f1333e37569e7214e9d7cded2dfcf1efa154e" alt="" width="563"><figcaption></figcaption></figure>

다양한 형식으로 데이터를 다운로드할 수 있습니다. 지원되는 내보내기 형식의 전체 목록은 저희의 "Export" 탭에서 확인할 수 있습니다. [formats 디렉터리](https://roboflow.com/formats).

내보내기 형식을 선택한 후에는 데이터를 `.zip` 파일로 다운로드하거나, `curl` 링크로 내려받아 명령줄에서 다운로드할 수 있습니다.

![기기의 .zip 폴더로 데이터를 내보내는 중입니다.](/files/0eb88fc273a4015df33c28c83e462017d21ed27f)

{% hint style="warning" %}
*다음 `curl` 및 Python 코드는 계정마다 고유한 비공개 키를 포함합니다. 이 키를 공유하지 마세요!*
{% endhint %}

!["Continue"를 선택한 후 나타나는 "show download code" 창입니다.](/files/78a5136f64fa0d8a7dccdd32dafaf925d8c9a8d3)

## HTTP API

`/:workspace/:project/:version/:format` 은 특정 형식으로 내보낸 데이터셋의 다운로드 링크를 가져오는 데 사용해야 하는 경로입니다. 이 경로는 [모델 라이브러리의](https://models.roboflow.com) Jupyter 노트북 또는 직접 작성한 사용자 지정 학습 스크립트에서 사용할 수 있습니다.

다음 엔드포인트는 `내보내기` 값을 반환하며, 그 안에는 `링크` 키가 포함되어 있어 데이터셋을 다운로드할 수 있는 URL을 제공합니다:

<pre class="language-bash"><code class="lang-bash"><strong>curl "https://api.roboflow.com/roboflow/chess-sample-4ckfl/1/yolov5pytorch?api_key=$ROBOFLOW_API_KEY"
</strong></code></pre>

다음은 해당 엔드포인트가 반환하는 예시 페이로드입니다:

```bash
{
    "workspace": {
        "name": "Roboflow",
        "url": "roboflow",
        "members": 7
    },
    "project": {
        "id": "roboflow/chess-sample-4ckfl",
        "type": "object-detection",
        "name": "체스 샘플",
        "created": 1630335544.592,
        "updated": 1630335741.988,
        "images": 12,
        "unannotated": 3,
        "annotation": "기물",
        "public": false,
        "splits": {
            "test": 1,
            "train": 9,
            "valid": 2
        },
        "classes": {
            "white-bishop": 11,
            "black-king": 8,
            "black-knight": 11,
            "white-queen": 7,
            "black-bishop": 8,
            "white-rook": 10,
            "black-rook": 10,
            "white-king": 8,
            "black-queen": 4,
            "black-pawn": 37,
            "white-pawn": 34,
            "white-knight": 10
        }
    },
    "version": {
        "id": "roboflow/chess-sample-4ckfl/1",
        "name": "증강됨",
        "created": 1630335698.746,
        "images": 30,
        "splits": {
            "train": 27,
            "test": 1,
            "valid": 2
        },
        "model": {
            "id": "chess-sample-4ckfl/1",
            "endpoint": "https://serverless.roboflow.com/infer/chess-sample-4ckfl/1",
            "start": 1630335799.682,
            "end": 1630337523.889,
            "fromScratch": false,
            "tfjs": true,
            "oak": true,
            "map": "62.87",
            "recall": "85.29",
            "precision": "23.44"
        },
        "preprocessing": {
            "grayscale": {
                "enabled": true
            },
            "resize": {
                "width": 416,
                "height": 416,
                "enabled": true,
                "format": "Stretch to"
            },
            "auto-orient": {
                "enabled": true
            }
        },
        "augmentation": {
            "rotate": {
                "enabled": true,
                "degrees": "5"
            },
            "exposure": {
                "enabled": true,
                "percent": "25"
            },
            "noise": {
                "enabled": true,
                "percent": "2"
            },
            "image": {
                "versions": "3",
                "enabled": true
            },
            "flip": {
                "horizontal": true,
                "enabled": true,
                "vertical": false
            },
            "brightness": {
                "enabled": true,
                "brighten": true,
                "percent": "25",
                "darken": true
            },
            "crop": {
                "percent": 30,
                "enabled": true,
                "min": 0
            }
        },
        "exports": [
            "yolov5pytorch"
        ]
    },
    "export": {
        "format": "yolov5pytorch",
        "link": "https://app.roboflow.com/ds/XXXXXXXXXX?key=XXXXXXXXXX"
    }
}
```

### 내보내기 형식 옵션

데이터셋 내보내기에 사용할 수 있는 설정 옵션은 다음과 같습니다:

| 객체 탐지         | 단일 레이블 분류 | 다중 레이블 분류  | 인스턴스 세그멘테이션       | 시맨틱 세그멘테이션        | 키포인트 탐지       |
| ------------- | --------- | ---------- | ----------------- | ----------------- | ------------- |
| clip          | folder    | multiclass | coco-segmentation | coco-segmentation | coco          |
| coco          | clip      | folder     | clip              | png-mask-semantic | yolov5pytorch |
| createml      |           | clip       | coco              |                   |               |
| darknet       |           |            | createml          |                   |               |
| multiclass    |           |            | darknet           |                   |               |
| tensorflow    |           |            | multiclass        |                   |               |
| tfrecord      |           |            | tensorflow        |                   |               |
| voc           |           |            | tfrecord          |                   |               |
| yolokeras     |           |            | voc               |                   |               |
| yolov5pytorch |           |            | yolokeras         |                   |               |
| yolov7pytorch |           |            | yolov4pytorch     |                   |               |
| mt-yolov6     |           |            | yolov4scaled      |                   |               |
| retinanet     |           |            | yolov5-obb        |                   |               |
| benchmarker   |           |            | yolov5pytorch     |                   |               |
|               |           |            | yolov7pytorch     |                   |               |
|               |           |            | mt-yolov6         |                   |               |
|               |           |            | retinanet         |                   |               |
|               |           |            | benchmarker       |                   |               |

## Python SDK

Python 패키지를 사용해 버전을 생성하고 데이터셋을 내보낼 수 있습니다.

Python SDK에서 내보내기용 ZIP 파일을 만들려면 먼저 프로젝트에서 특정 [버전을 가져오세요](https://docs.roboflow.com/platform/workspaces/list-workspaces-and-projects#list-projects-and-versions):

```
version = project.version(version_number)
```

그다음 데이터셋을 직접 다운로드합니다:

```python
version.download(model_format="yolov5", location="./downloads")
```

download 메서드는 필요할 경우 내보내기 생성을 자동으로 처리하고, ZIP 파일을 지정한 위치로 추출하며, 데이터셋을 설명하는 객체를 반환합니다.

내보내기 전에 버전을 생성하는 방법은 다음을 참조하세요 [데이터셋 버전 생성](/datasets/ko/versions/dataset-versions/create-a-dataset-version.md#python-sdk).

### 원본 품질 이미지 다운로드

내보낸 이미지는 학습용으로 압축됩니다( [내보내기 동작](#export-behavior)). 전체 데이터셋의 원본 풀 해상도 이미지를 다운로드하려면 [Image Search API](/datasets/ko/manage/manage-images.md#get-details-about-an-image):

```python
import os
import requests
from roboflow import Roboflow

rf = Roboflow(api_key="YOUR_API_KEY")

project = rf.project("my-dataset-id")

records = []

for page in project.search_all(
    offset = 0,
    limit = 100,
    in_dataset = True,
    batch = False,
    fields = ["id", "name", "owner"],
):
    records.extend(page)

print(f"{len(records)}개의 이미지를 찾았습니다")

for record in records:
        base_url = "https://source.roboflow.com"
        url = f"{base_url}/{record['owner']}/{record['id']}/original.jpg"

        try:
            response = requests.get(url)
            response.raise_for_status()

            # 임시 디렉터리에 저장
            save_path = os.path.join('temp_images', record['name'])
            with open(save_path, 'wb') as f:
                f.write(response.content)

            print(f"Downloaded: {record['name']}")

        except requests.exceptions.RequestException as e:
            print(f"이미지 다운로드 오류: {e}")

```

## CLI

다음 명령어를 사용하여 Roboflow CLI로 데이터를 내보낼 수 있습니다:

```
roboflow download <datasetUrl>
```

[이 CLI 명령에 대한 자세한 내용은 문서를 참조하세요.](/datasets/ko/create-and-upload/download-a-dataset.md#cli)

## MCP 서버

AI 에이전트를 [MCP 서버](https://docs.roboflow.com/agents/mcp-server) 그리고 다음 도구를 사용해 버전을 내보낼 수 있습니다:

<table data-search="false"><thead><tr><th width="290">도구</th><th>설명</th></tr></thead><tbody><tr><td><code>versions_export</code></td><td>버전에 대한 데이터셋 내보내기를 확인하거나 트리거합니다.</td></tr><tr><td><code>versions_get</code></td><td>분할과 학습 내역을 포함한 버전 정보를 가져옵니다.</td></tr></tbody></table>

## 내보내기 동작

데이터셋 버전은 컴퓨터 비전 모델의 학습 데이터로 사용되도록 설계되었습니다. 따라서 모델의 학습 경험과 성능을 개선하기 위해 몇 가지 최적화를 적용합니다.

### 이미지 압축

학습 지연을 방지하기 위해, 학습 속도와 충분한 모델 성능에 필요한 해상도 사이의 균형을 유지하는 수준으로 이미지를 압축합니다.

원본 품질 이미지를 다운로드하려면 데이터셋의 이미지 하나를 클릭한 다음 "Download Image"를 선택하세요.

<figure><img src="/files/2be26922f2e931e50cc27ac7fcbadded0c059a84" alt="" width="375"><figcaption></figcaption></figure>

{% hint style="info" %}
다음 API를 통해 프로그래밍 방식으로 이미지에 접근할 수도 있습니다. [Image Details API](/datasets/ko/manage/manage-images.md#get-details-about-an-image)의 `image.urls.original` 속성은 원본 품질 이미지로 연결되는 링크를 나타냅니다.
{% endhint %}

데이터셋의 모든 원본 품질 이미지를 프로그래밍 방식으로 다운로드하려면 다음을 참조하세요 [원본 품질 이미지 다운로드](#download-original-quality-images) Python SDK 섹션에서.

### 허용되는 문자

학습 중 문제가 발생하는 것을 방지하기 위해, 업로드/가져오기와 내보내기 시 모두 클래스 이름을 정리합니다. 내보내기 시에는 다음을 수행합니다:

* 클래스 이름은 ASCII로 변환됩니다
  * 가능한 경우 문자는 영어식으로 바뀝니다(예: `ü` 은 `u`)
  * 그렇지 않은 경우 대시(`-`)

{% hint style="info" %}
[클래스 이름 정리는 업로드 중에도 발생합니다](/datasets/ko/create-and-upload/adding-data.md)
{% endhint %}
