# 이미지, 비디오, 주석 업로드

Roboflow에서 모델을 학습하고 배포하기 위한 첫 단계는 Project에 데이터를 업로드하는 것입니다.

먼저, 다음을 해야 합니다. [Project를 생성합니다.](https://docs.roboflow.com/roboflow/roboflow-ko/datasets/create-a-project).

그다음, 데이터를 업로드할 수 있는 웹 페이지로 이동하게 됩니다. 이 페이지는 프로젝트 사이드바에 있는 "Upload Data" 버튼에서도 액세스할 수 있습니다.

## 데이터를 추가하는 방법

Roboflow 계정에 데이터를 추가하는 방법은 다음과 같습니다:

* 웹 애플리케이션 사용: 이미지가 1,000장 미만인 데이터셋에 권장됩니다.
* 명령줄 사용: 이미지가 1,000장 초과인 데이터셋에 권장됩니다.
* Dataset Upload Workflow Block 사용: 이미 프로덕션에 배포된 모델이 있는 Workflows에서 데이터를 수집할 때 권장됩니다.

웹 애플리케이션과 명령줄에서는 다음을 업로드할 수 있습니다:

* JPG, PNG, WEBP, AVIF 및 BMP 이미지.\*
* MOV 및 MP4 비디오.
* PDF 파일.
* [지원되는 모든 형식의 주석.](https://roboflow.com/formats)

\**최대 크기 20MB 및 16,400 x 10,900픽셀.*

주석은 연결된 이미지와 함께만 업로드할 수 있습니다. 이미 데이터셋에 가져온 이미지에 대한 주석은 업로드할 수 없습니다.

## 웹 애플리케이션으로 데이터 업로드

Project를 생성하면, 또는 Upload Data 페이지에서 이미지, 비디오, 주석을 드래그 앤 드롭할 수 있는 상자가 보입니다:

<figure><img src="https://3958014485-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M6S9nPJhEX9FYH6clfW%2Fuploads%2Fgit-blob-deb24c5aa34b10e1ccab8bec61e7f55ed2f8c273%2Fimage.png?alt=media" alt="" width="563"><figcaption></figcaption></figure>

[40개 이상의 주석 형식이 지원됩니다.](https://roboflow.com/formats) 지원되는 형식은 Project 유형에 따라 다릅니다.

<details>

<summary>파일 이름이 처리되는 방식</summary>

업로드/가져오기 및 내보내기 시 클래스 이름을 정리하여 이미지 파일 이름을 표준화할 수 있습니다. 업로드와 데이터셋 내보내기에서 다음을 수행합니다:

* 앞뒤 공백 제거
* 모든 공백(줄바꿈 및 탭 포함)을 공백 하나로 변환
* 연속된 두 개의 공백 제거
* `/.[]#~*` 문자는 대시( )로 대체됩니다.`-`)
* `|'"` 문자는 제거됩니다

</details>

### 비디오 업로드

업로드된 비디오는 주석을 달 수 있는 개별 프레임으로 분할됩니다. 비디오를 업로드하면, 데이터셋에 사용할 프레임 샘플링 빈도를 선택할 수 있는 창이 열립니다:

<figure><img src="https://3958014485-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M6S9nPJhEX9FYH6clfW%2Fuploads%2Fgit-blob-cf44e0be4457594150131cc10df8421038599b3e%2FScreenshot%202025-05-20%20at%2007.52.45.png?alt=media" alt=""><figcaption></figcaption></figure>

"Choose Frame Rate"를 클릭하면 비디오가 프레임으로 분할됩니다. 그런 다음 이 프레임들이 데이터셋에 업로드됩니다.

데이터셋을 업로드한 후에는 라벨링할 데이터를 할당할 수 있습니다.

Web UI에 드롭하면 대화 상자가 열려 다음을 선택하라고 요청합니다. **프레임 속도**. 이를 통해 비디오 1초당 몇 개의 이미지를 샘플링해야 하는지 알 수 있습니다.

* 선택할 수 있는 가장 높은 프레임 속도는 초당 60프레임이며, 업로드하는 비디오의 각 초마다 60개의 이미지가 생성됩니다.
* 선택할 수 있는 가장 낮은 프레임 속도는 60초당 1프레임입니다.

비디오에서 샘플링한 후 이미지는 원래 Roboflow에 이미지를 업로드한 것처럼 표시됩니다.

<details>

<summary>지원되는 비디오 파일 형식</summary>

Roboflow는 브라우저에 내장된 비디오 파일 지원을 사용하여 비디오를 프레임 이미지로 파싱하고, 이를 모델 학습에 사용할 수 있게 합니다. 즉, 사용 중인 브라우저에 따라 MOV 및 MP4 파일을 포함한 다양한 비디오 형식을 사용할 수 있습니다.

다음을 [브라우저가 지원하는 비디오 형식을 확인할 수 있습니다](https://caniuse.com/?search=video%20format).

예를 들어 HEVC/H.265로 인코딩된 MP4 파일은 Safari 브라우저에서만 지원됩니다. GoPro나 iPhone에서 H.265로 촬영한 파일을 가져오는 경우, 더 널리 지원되는 H.264로 설정을 변경하는 것이 좋습니다.

비디오 파일을 Roboflow에 불러오는 데 문제가 있다면, 저희 [포럼](https://discuss.roboflow.com/) 에 게시하거나 계정 담당자에게 문의할 수 있습니다.

</details>

## 명령줄로 데이터셋 업로드

Roboflow Python 명령줄 인터페이스를 사용하여 더 큰 데이터셋을 업로드할 수 있습니다.

명령줄 인터페이스로는 이미지만 업로드할 수 있습니다. 비디오가 있다면 다음을 해야 합니다. [프레임으로 분할하여 파일로 저장](https://superuser.com/questions/1044444/how-do-i-use-ffmpeg-to-split-a-video-into-images-and-then-reassemble-exactly-the). 그런 다음 이 파일들을 Roboflow에 업로드할 수 있습니다.

시작하려면 먼저 다음을 설치하세요. `roboflow-python`:

```
pip install roboflow
```

다음으로, [Workspace ID를 가져오세요](https://docs.roboflow.com/developer/rest-api/workspace-and-project-ids).

마지막으로, 다음 형식의 명령을 준비하세요:

```
roboflow import -w testupload -p project-1-8zgld /path/to/dataset/folder
```

지정해야 하는 인수는 다음과 같습니다:

* `-w testupload`: 이는 workspace 이름입니다.
* `-p <project-id>`: 이는 Project ID입니다.

명령을 실행하면 업로드 프로세스가 시작되었음을 나타내는 메시지가 표시됩니다. 그러면 이미지가 업로드되면서 로그가 표시됩니다:

<figure><img src="https://3958014485-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M6S9nPJhEX9FYH6clfW%2Fuploads%2Fgit-blob-cb3c6b1fff1fa6883a6fb226f8a3704493263a70%2FCleanShot%202024-03-13%20at%2011.29.09%402x.png?alt=media" alt=""><figcaption><p>명령줄을 사용한 데이터셋 업로드</p></figcaption></figure>

명령줄에서 데이터를 업로드하는 방법을 보여주는 비디오 안내가 있습니다:

{% embed url="<https://www.loom.com/share/19637984033a466b831af56f9404fa89>" %}

## 업로드한 데이터 보기

Roboflow에 업로드된 모든 데이터는 "batch"로 업로드됩니다. 이 batch는 Project Annotate 페이지에서 확인할 수 있습니다:

<figure><img src="https://3958014485-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M6S9nPJhEX9FYH6clfW%2Fuploads%2Fgit-blob-e02e3663f94fef52256a1528c2361066bcc4d89f%2FScreenshot%202025-05-20%20at%2008.04.10.png?alt=media" alt=""><figcaption></figcaption></figure>

## 이미지 크기 제한

이미지의 최대 크기는 20MB입니다

최대 픽셀 크기는 16,400 × 10,900픽셀입니다.

## 중복 이미지

이미 Project에 이미 있는 이미지를 업로드하려고 하면 해당 이미지의 업로드는 건너뜁니다.

{% hint style="info" %}
두 데이터셋을 [병합하면](https://docs.roboflow.com/merge-datasets), 병합된 데이터셋과 두 개의 원본 데이터셋이 계정에 모두 존재합니다. 따라서 이미지가 중복되므로 병합에 대한 요금은 발생하지 않습니다.
{% endhint %}

## 데이터 소유권

Roboflow에 업로드한 모든 이미지와 비디오의 소유권은 귀하에게 있습니다. 이는 다음에 정의되어 있습니다. [이용약관의 23B조](https://roboflow.com/terms):

> 귀하가 게시, 제출, 공개, 표시 또는 전송한 모든 콘텐츠, 정보 또는 자료에 대한 모든 소유권을 보유합니다

## 데이터 개인정보 보호

**Public Plan:** Public plan을 사용하는 경우, Roboflow에서 명시적으로 지정하고 협의하지 않는 한, 귀하의 데이터셋은 Roboflow Universe에서 공개됩니다.

**유료 플랜(Enterprise 포함):** 달리 명시되지 않는 한, 귀하의 데이터는 계정에 비공개로 유지됩니다.
