Spaces:
Runtime error
A newer version of the Gradio SDK is available:
5.35.0
comments: true
description: >-
pip, conda, git ๋ฐ Docker๋ฅผ ์ฌ์ฉํ์ฌ Ultralytics์ ์ค์นํ๋ ๋ค์ํ ๋ฐฉ๋ฒ์ ํ์ํด ๋ณด์ธ์. Ultralytics์
๋ช
๋ น์ค ์ธํฐํ์ด์ค ๋๋ Python ํ๋ก์ ํธ ๋ด์์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ์์๋ณด์ธ์.
keywords: >-
Ultralytics ์ค์น, pip๋ฅผ ์ด์ฉํ Ultralytics ์ค์น, Docker๋ฅผ ์ด์ฉํ Ultralytics ์ค์น,
Ultralytics ๋ช
๋ น์ค ์ธํฐํ์ด์ค, Ultralytics Python ์ธํฐํ์ด์ค
Ultralytics ์ค์นํ๊ธฐ
Ultralytics๋ pip, conda, Docker๋ฅผ ํฌํจํ ๋ค์ํ ์ค์น ๋ฐฉ๋ฒ์ ์ ๊ณตํฉ๋๋ค. ultralytics
pip ํจํค์ง๋ฅผ ์ด์ฉํด ๊ฐ์ฅ ์์ ์ ์ธ ์ต์ ๋ฒ์ ์ YOLOv8์ ์ค์นํ๊ฑฐ๋ Ultralytics GitHub ์ ์ฅ์๋ฅผ ๋ณต์ ํ์ฌ ๊ฐ์ฅ ์ต์ ๋ฒ์ ์ ๋ฐ์๋ณผ ์ ์์ต๋๋ค. Docker๋ฅผ ์ด์ฉํ๋ฉด ํจํค์ง๋ฅผ ๋ก์ปฌ์ ์ค์นํ์ง ์๊ณ ๊ฒฉ๋ฆฌ๋ ์ปจํ
์ด๋์์ ์คํํ ์ ์์ต๋๋ค.
!!! Example "์ค์นํ๊ธฐ"
=== "Pip ์ค์นํ๊ธฐ (๊ถ์ฅ)"
pip์ ์ฌ์ฉํ์ฌ `ultralytics` ํจํค์ง๋ฅผ ์ค์นํ๊ฑฐ๋, `pip install -U ultralytics`๋ฅผ ์คํํ์ฌ ๊ธฐ์กด ์ค์น๋ฅผ ์
๋ฐ์ดํธํ์ธ์. Python Package Index(PyPI)์์ `ultralytics` ํจํค์ง์ ๋ํ ์์ธํ ๋ด์ฉ์ ํ์ธํ์ธ์: [https://pypi.org/project/ultralytics/](https://pypi.org/project/ultralytics/).
[](https://badge.fury.io/py/ultralytics) [](https://pepy.tech/project/ultralytics)
```bash
# PyPI์์ ultralytics ํจํค์ง ์ค์นํ๊ธฐ
pip install ultralytics
```
GitHub [์ ์ฅ์](https://github.com/ultralytics/ultralytics)์์ ์ง์ `ultralytics` ํจํค์ง๋ฅผ ์ค์นํ ์๋ ์์ต๋๋ค. ์ต์ ๊ฐ๋ฐ ๋ฒ์ ์ด ํ์ํ ๊ฒฝ์ฐ ์ ์ฉํ ์ ์์ต๋๋ค. ์์คํ
์ Git ๋ช
๋ น์ค ๋๊ตฌ๊ฐ ์ค์น๋์ด ์๋์ง ํ์ธํ์ธ์. `@main` ๋ช
๋ น์ด๋ `main` ๋ธ๋์น๋ฅผ ์ค์นํ๋ฉฐ, `@my-branch`๋ก ๋ณ๊ฒฝํ๊ฑฐ๋ `main` ๋ธ๋์น๋ฅผ ๊ธฐ๋ณธ์ผ๋ก ์ฌ์ฉํ๋ ค๋ฉด ์์ ์ ๊ฑฐํ๋ฉด ๋ฉ๋๋ค.
```bash
# GitHub์์ ultralytics ํจํค์ง ์ค์นํ๊ธฐ
pip install git+https://github.com/ultralytics/ultralytics.git@main
```
=== "Conda ์ค์นํ๊ธฐ"
pip์ ๋์์ผ๋ก ์ฌ์ฉํ ์ ์๋ ๋ ๋ค๋ฅธ ํจํค์ง ๊ด๋ฆฌ์์ธ Conda๋ฅผ ํตํด์๋ ์ค์นํ ์ ์์ต๋๋ค. [https://anaconda.org/conda-forge/ultralytics](https://anaconda.org/conda-forge/ultralytics)์์ Anaconda์ ๋ํ ์์ธํ ์ ๋ณด๋ฅผ ํ์ธํ์ธ์. Conda ํจํค์ง๋ฅผ ์
๋ฐ์ดํธํ๋ Ultralytics feedstock ์ ์ฅ์๋ [https://github.com/conda-forge/ultralytics-feedstock/](https://github.com/conda-forge/ultralytics-feedstock/)์ ์์ต๋๋ค.
[](https://anaconda.org/conda-forge/ultralytics) [](https://anaconda.org/conda-forge/ultralytics) [](https://anaconda.org/conda-forge/ultralytics) [](https://anaconda.org/conda-forge/ultralytics)
```bash
# conda๋ฅผ ์ฌ์ฉํ์ฌ ultralytics ํจํค์ง ์ค์นํ๊ธฐ
conda install -c conda-forge ultralytics
```
!!! Note "๋
ธํธ"
CUDA ํ๊ฒฝ์์ ์ค์นํ๋ ๊ฒฝ์ฐ ์ผ๋ฐ์ ์ผ๋ก `ultralytics`, `pytorch` ๋ฐ `pytorch-cuda`๋ฅผ ๋์ผํ ๋ช
๋ น์ด๋ก ์ค์นํ์ฌ Conda ํจํค์ง ๊ด๋ฆฌ์๊ฐ ์ถฉ๋์ ํด๊ฒฐํ๋๋ก ํ๊ฑฐ๋, ํ์ํ ๊ฒฝ์ฐ CPU ์ ์ฉ `pytorch` ํจํค์ง๋ฅผ ๋ฎ์ด์ธ ์ ์๋๋ก `pytorch-cuda`๋ฅผ ๋ง์ง๋ง์ ์ค์นํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
```bash
# Conda๋ฅผ ์ฌ์ฉํ์ฌ ๋ชจ๋ ํจํค์ง ํจ๊ป ์ค์นํ๊ธฐ
conda install -c pytorch -c nvidia -c conda-forge pytorch torchvision pytorch-cuda=11.8 ultralytics
```
### Conda Docker ์ด๋ฏธ์ง
Ultralytics Conda Docker ์ด๋ฏธ์ง๋ค๋ [DockerHub](https://hub.docker.com/r/ultralytics/ultralytics)์์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ด ์ด๋ฏธ์ง๋ค์ [Miniconda3](https://docs.conda.io/projects/miniconda/en/latest/)๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๋ฉฐ, Conda ํ๊ฒฝ์์ `ultralytics`๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํ ๊ฐ๋จํ ๋ฐฉ๋ฒ์
๋๋ค.
```bash
# ์ด๋ฏธ์ง ์ด๋ฆ์ ๋ณ์๋ก ์ค์ ํ๊ธฐ
t=ultralytics/ultralytics:latest-conda
# Docker Hub์์ ์ต์ ultralytics ์ด๋ฏธ์ง ๊ฐ์ ธ์ค๊ธฐ
sudo docker pull $t
# GPU ์ง์์ผ๋ก ultralytics ์ด๋ฏธ์ง๋ฅผ ์ปจํ
์ด๋์์ ์คํํ๊ธฐ
sudo docker run -it --ipc=host --gpus all $t # ๋ชจ๋ GPU ์ฌ์ฉ
sudo docker run -it --ipc=host --gpus '"device=2,3"' $t # ํน์ GPU ์ง์
```
=== "Git ๋ณต์ ํ๊ธฐ"
๊ฐ๋ฐ์ ๊ธฐ์ฌํ๊ฑฐ๋ ์ต์ ์์ค ์ฝ๋๋ฅผ ์คํํด ๋ณด๊ณ ์ถ๋ค๋ฉด `ultralytics` ์ ์ฅ์๋ฅผ ๋ณต์ ํ์ธ์. ๋ณต์ ํ ํ ํด๋น ๋๋ ํ ๋ฆฌ๋ก ์ด๋ํ์ฌ pip์ ์ด์ฉํด ํธ์ง ๊ฐ๋ฅ ๋ชจ๋ `-e`๋ก ํจํค์ง๋ฅผ ์ค์นํฉ๋๋ค.
```bash
# ultralytics ์ ์ฅ์ ๋ณต์ ํ๊ธฐ
git clone https://github.com/ultralytics/ultralytics
# ๋ณต์ ํ ๋๋ ํ ๋ฆฌ๋ก ์ด๋ํ๊ธฐ
cd ultralytics
# ๊ฐ๋ฐ์ ์ํ ํธ์ง ๊ฐ๋ฅ ๋ชจ๋๋ก ํจํค์ง ์ค์นํ๊ธฐ
pip install -e .
```
=== "Docker ์ฌ์ฉํ๊ธฐ"
Docker๋ฅผ ์ฌ์ฉํ๋ฉด `ultralytics` ํจํค์ง๋ฅผ ๊ฒฉ๋ฆฌ๋ ์ปจํ
์ด๋์์ ์ํํ๊ฒ ์คํํ ์ ์์ผ๋ฉฐ, ๋ค์ํ ํ๊ฒฝ์์ ์ผ๊ด๋ ์ฑ๋ฅ์ ๋ณด์ฅํฉ๋๋ค. [Docker Hub](https://hub.docker.com/r/ultralytics/ultralytics)์ ๊ณต์ `ultralytics` ์ด๋ฏธ์ง ์ค ํ๋๋ฅผ ์ ํํจ์ผ๋ก์จ ๋ก์ปฌ ์ค์น์ ๋ณต์กํจ์ ํผํ๊ณ ๊ฒ์ฆ๋ ์์
ํ๊ฒฝ์ ์ ๊ทผํ ์ ์์ต๋๋ค. Ultralytics์ ์๋ก ๋ค๋ฅธ ํ๋ซํผ๊ณผ ์ฌ์ฉ ์ฌ๋ก์ ๋ํด ๋์ ํธํ์ฑ๊ณผ ํจ์จ์ฑ์ ์ ๊ณตํ๊ธฐ ์ํด 5๊ฐ์ง ์ฃผ์ Docker ์ด๋ฏธ์ง๋ฅผ ์ ๊ณตํฉ๋๋ค:
<a href="https://hub.docker.com/r/ultralytics/ultralytics"><img src="https://img.shields.io/docker/pulls/ultralytics/ultralytics?logo=docker" alt="Docker Pulls"></a>
- **Dockerfile:** ํธ๋ ์ด๋์ ์ถ์ฒ๋๋ GPU ์ด๋ฏธ์ง์
๋๋ค.
- **Dockerfile-arm64:** Raspberry Pi์ ๊ฐ์ ARM64 ๊ธฐ๋ฐ ํ๋ซํผ์ ๋ฐฐํฌํ๊ธฐ์ ์ต์ ํ๋ ARM64 ์ํคํ
์ฒ์ฉ์
๋๋ค.
- **Dockerfile-cpu:** GPU๊ฐ ์๋ ํ๊ฒฝ์์ ์ธํผ๋ฐ์ค์ ์ ํฉํ Ubuntu ๊ธฐ๋ฐ CPU ์ ์ฉ ๋ฒ์ ์
๋๋ค.
- **Dockerfile-jetson:** NVIDIA Jetson ์ฅ์น์ ์ต์ ํ๋ GPU ์ง์์ ํตํฉํ ๋ฒ์ ์
๋๋ค.
- **Dockerfile-python:** ๊ฐ๋ณ๊ฒ ์ ํ๋ฆฌ์ผ์ด์
์ ์ํด ํ์ํ ์ข
์์ฑ๊ณผ Python๋ง ์๋ ์ต์ํ์ ์ด๋ฏธ์ง์
๋๋ค.
- **Dockerfile-conda:** Miniconda3๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๋ฉฐ ultralytics ํจํค์ง์ conda ์ค์น๋ฅผ ํฌํจํ๊ณ ์์ต๋๋ค.
์๋์ ๋ช
๋ น์ด๋ก ์ต์ ์ด๋ฏธ์ง๋ฅผ ๋ฐ๊ณ ์คํํ ์ ์์ต๋๋ค:
```bash
# ์ด๋ฏธ์ง ์ด๋ฆ์ ๋ณ์๋ก ์ค์ ํ๊ธฐ
t=ultralytics/ultralytics:latest
# Docker Hub์์ ์ต์ ultralytics ์ด๋ฏธ์ง ๊ฐ์ ธ์ค๊ธฐ
sudo docker pull $t
# GPU ์ง์์ผ๋ก ultralytics ์ด๋ฏธ์ง๋ฅผ ์ปจํ
์ด๋์์ ์คํํ๊ธฐ
sudo docker run -it --ipc=host --gpus all $t # ๋ชจ๋ GPU ์ฌ์ฉ
sudo docker run -it --ipc=host --gpus '"device=2,3"' $t # ํน์ GPU ์ง์
```
์ ๋ช
๋ น์ด๋ ์ต์ `ultralytics` ์ด๋ฏธ์ง๋ก Docker ์ปจํ
์ด๋๋ฅผ ์ด๊ธฐํํฉ๋๋ค. `-it` ํ๋๊ทธ๋ pseudo-TTY๋ฅผ ํ ๋นํ๊ณ ํ์ค ์
๋ ฅ์ ์ ์งํ์ฌ ์ปจํ
์ด๋์ ์ํธ ์์ฉํ ์ ์๊ฒ ํด์ค๋๋ค. `--ipc=host` ํ๋๊ทธ๋ ํ๋ก์ธ์ค ๊ฐ ๋ฉ๋ชจ๋ฆฌ ๊ณต์ ์ ํ์ํ IPC(Inter-Process Communication) ๋ค์์คํ์ด์ค๋ฅผ ํธ์คํธ๋ก ์ค์ ํฉ๋๋ค. `--gpus all` ํ๋๊ทธ๋ ์ปจํ
์ด๋ ๋ด์์ ์ฌ์ฉ ๊ฐ๋ฅํ ๋ชจ๋ GPU์ ๋ํ ์ ๊ทผ์ ํ์ฑํํ๋๋ฐ, GPU ๊ณ์ฐ์ด ํ์ํ ์์
์ ์ค์ํฉ๋๋ค.
์ฐธ๊ณ : ๋ก์ปฌ ๊ธฐ๊ณ์ ํ์ผ์ ์ปจํ
์ด๋ ๋ด์์ ์์
ํ๊ธฐ ์ํด์๋ ๋ก์ปฌ ๋๋ ํ ๋ฆฌ๋ฅผ ์ปจํ
์ด๋์ ๋ง์ดํธํ๋ ๋ฐ Docker ๋ณผ๋ฅจ์ ์ฌ์ฉํ์ธ์:
```bash
# ๋ก์ปฌ ๋๋ ํ ๋ฆฌ๋ฅผ ์ปจํ
์ด๋ ๋ด๋ถ ๋๋ ํ ๋ฆฌ์ ๋ง์ดํธํ๊ธฐ
sudo docker run -it --ipc=host --gpus all -v /path/on/host:/path/in/container $t
```
`/path/on/host`๋ฅผ ๋ก์ปฌ ๊ธฐ๊ณ์ ๋๋ ํ ๋ฆฌ ๊ฒฝ๋ก๋ก, `/path/in/container`๋ฅผ ์ปจํ
์ด๋ ๋ด๋ถ์์ ์ํ๋ ๊ฒฝ๋ก๋ก ๋ณ๊ฒฝํ์ฌ ์ ๊ทผํ ์ ์๊ฒ ํ์ธ์.
Docker ์ฌ์ฉ์ ๋ํ ๊ณ ๊ธ ๊ธฐ๋ฅ์ [Ultralytics Docker ๊ฐ์ด๋](https://docs.ultralytics.com/guides/docker-quickstart/)์์ ๋ ํ๊ตฌํด๋ณด์ธ์.
ultralytics
์ ์ข
์์ฑ ๋ชฉ๋ก์ requirements.txt ํ์ผ์์ ํ์ธํ ์ ์์ต๋๋ค. ์ ์์ ์์๋ ๋ชจ๋ ํ์ํ ์ข
์์ฑ์ ์ค์นํฉ๋๋ค.
Watch: Ultralytics YOLO Quick Start Guide
!!! Tip "ํ"
PyTorch ์ค์น ์๊ตฌ์ฌํญ์ ์ด์ ์ฒด์ ์ CUDA ์๊ตฌ์ฌํญ์ ๋ฐ๋ผ ๋ค๋ฅด๋ฏ๋ก [https://pytorch.org/get-started/locally](https://pytorch.org/get-started/locally)์ ์ง์นจ์ ๋ฐ๋ผ PyTorch๋ฅผ ๋จผ์ ์ค์นํ๋ ๊ฒ์ด ๊ถ์ฅ๋ฉ๋๋ค.
<a href="https://pytorch.org/get-started/locally/">
<img width="800" alt="PyTorch ์ค์น ์ง์นจ" src="https://user-images.githubusercontent.com/26833433/228650108-ab0ec98a-b328-4f40-a40d-95355e8a84e3.png">
</a>
๋ช ๋ น์ค ์ธํฐํ์ด์ค(CLI)๋ก Ultralytics ์ฌ์ฉํ๊ธฐ
Ultralytics ๋ช
๋ น์ค ์ธํฐํ์ด์ค(CLI)๋ Python ํ๊ฒฝ์ด ํ์ ์์ด ๋จ์ผ ๋ผ์ธ ๋ช
๋ น์ด๋ฅผ ํตํด ์์
์ ์ฝ๊ฒ ์คํํ ์ ์๋๋ก ํฉ๋๋ค. CLI๋ ์ปค์คํฐ๋ง์ด์ง์ด๋ Python ์ฝ๋๊ฐ ํ์ ์์ต๋๋ค. yolo
๋ช
๋ น์ด๋ฅผ ์ด์ฉํด ํฐ๋ฏธ๋์์ ๋ชจ๋ ์์
์ ์คํํ ์ ์์ต๋๋ค. ๋ช
๋ น์ค์์ YOLOv8์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋ํด ๋ ์์๋ณด๋ ค๋ฉด CLI ๊ฐ์ด๋๋ฅผ ์ฐธ๊ณ ํ์ธ์.
!!! Example "์์ "
=== "๋ฌธ๋ฒ"
Ultralytics `yolo` ๋ช
๋ น์ด๋ ๋ค์๊ณผ ๊ฐ์ ๋ฌธ๋ฒ์ ์ฌ์ฉํฉ๋๋ค:
```bash
yolo TASK MODE ARGS
์ฌ๊ธฐ์ TASK (์ ํ์ )์ [detect, segment, classify] ์ค ํ๋
MODE (ํ์)๋ [train, val, predict, export, track] ์ค ํ๋
ARGS (์ ํ์ )์ 'imgsz=320'๊ณผ ๊ฐ์ด ๊ธฐ๋ณธ๊ฐ์ ์ฌ์ ์ํ๋ 'arg=value' ์์ ์๋ฌด ๊ฐ์๋ ์ง์ ํ ์ ์์ต๋๋ค.
```
๋ชจ๋ ARGS๋ ์ ์ฒด [๊ตฌ์ฑ ๊ฐ์ด๋](/../usage/cfg.md)์์ ๋๋ `yolo cfg`๋ก ํ์ธํ ์ ์์ต๋๋ค
=== "Train"
10 ์ํฌํฌ ๋์ ์ด๊ธฐ ํ์ต๋ฅ 0.01๋ก ๊ฐ์ง ๋ชจ๋ธ์ ํ๋ จํฉ๋๋ค.
```bash
yolo train data=coco128.yaml model=yolov8n.pt epochs=10 lr0=0.01
```
=== "Predict"
์ด์ ํ๋ จ๋ ์ธ๋ถํ ๋ชจ๋ธ์ ์ฌ์ฉํ์ฌ ์ด๋ฏธ์ง ํฌ๊ธฐ 320์ผ๋ก YouTube ๋์์์ ์์ธกํฉ๋๋ค:
```bash
yolo predict model=yolov8n-seg.pt source='https://youtu.be/LNwODJXcvt4' imgsz=320
```
=== "Val"
๋ฐฐ์น ํฌ๊ธฐ 1์ ์ด๋ฏธ์ง ํฌ๊ธฐ 640์ผ๋ก ์ด์ ํ๋ จ๋ ๊ฐ์ง ๋ชจ๋ธ์ ๊ฒ์ฆํฉ๋๋ค:
```bash
yolo val model=yolov8n.pt data=coco128.yaml batch=1 imgsz=640
```
=== "Export"
YOLOv8n ๋ถ๋ฅ ๋ชจ๋ธ์ ONNX ํ์์ผ๋ก ๋ด๋ณด๋
๋๋ค. ์ด๋ฏธ์ง ํฌ๊ธฐ๋ 224x128์
๋๋ค (TASK ํ์ ์์).
```bash
yolo export model=yolov8n-cls.pt format=onnx imgsz=224,128
```
=== "ํน๋ณ"
๋ฒ์ ํ์ธ, ์ค์ ๋ณด๊ธฐ, ๊ฒ์ฌ ์คํ ๋ฑ์ ์ํ ํน๋ณ ๋ช
๋ น์ด๋ฅผ ์คํํ์ธ์:
```bash
yolo help
yolo checks
yolo version
yolo settings
yolo copy-cfg
yolo cfg
```
!!! Warning "์ฃผ์"
๋ชจ๋ ์ธ์๋ `arg=val`์์ผ๋ก ์ ๋ฌ๋์ด์ผ ํ๋ฉฐ, ๊ฐ ์ ์ฌ์ด์๋ ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถํด์ผ ํฉ๋๋ค. ์ธ์ ์ ๋์ฌ๋ก `--`๋ฅผ ์ฌ์ฉํ๊ฑฐ๋ ์ธ์ ์ฌ์ด์ ์ผํ `,`๋ฅผ ์ฌ์ฉํด์๋ ์ ๋ฉ๋๋ค.
- `yolo predict model=yolov8n.pt imgsz=640 conf=0.25` โ
- `yolo predict model yolov8n.pt imgsz 640 conf 0.25` โ
- `yolo predict --model yolov8n.pt --imgsz 640 --conf 0.25` โ
CLI ๊ฐ์ด๋{ .md-button }