OpenVINO™를 사용해 Ultralytics YOLO11을 원활하게 배포하기
Ultralytics YOLO11을 OpenVINO™ 형식으로 내보내고 Python 또는 OpenVINO Runtime으로 Intel CPU, GPU 및 NPU에서 더 빠른 추론을 실행하는 방법을 알아보세요.
Abirami Vina8 분 읽기
AI 도입은 AI 솔루션의 접근성에 달려 있으며, 이를 위해서는 사람들이 이미 보유한 하드웨어에 쉽게 배포할 수 있도록 하는 것이 매우 중요합니다. 그래픽 처리 장치(GPUs)에서 AI 모델을 실행하면 성능과 병렬 처리 능력 측면에서 큰 이점을 얻을 수 있습니다.
하지만 현실적으로 엣지 환경이나 일반 노트북에서는 누구나 고성능 GPU를 사용할 수 있는 것은 아닙니다. 따라서 중앙 처리 장치(CPUs), 통합 GPU, 신경망 처리 장치(NPUs)처럼 더 널리 사용 가능한 하드웨어에서 모델을 효율적으로 실행하도록 최적화하는 것이 중요합니다.
예를 들어, 컴퓨터 비전은 기계가 이미지와 동영상 스트림을 실시간으로 분석하고 이해하도록 하는 AI 분야입니다. Ultralytics YOLO11과 같은 비전 AI 모델은 객체 감지와 인스턴스 분할 같은 주요 작업을 지원하며, 이러한 작업은 리테일 분석부터 의료 진단까지 다양한 애플리케이션의 기반이 됩니다.

그림 1. Ultralytics YOLO11을 사용해 리테일 매장에서 객체를 감지하고 분할하는 모습.
컴퓨터 비전을 더 많은 사람이 활용할 수 있도록 Ultralytics는 CPU, GPU, NPU 전반에서 AI 추론을 최적화하고 실행하는 오픈 소스 프로젝트인 OpenVINO 툴킷과의 통합을 업데이트하여 출시했습니다.
이 통합 기능을 사용하면 YOLO11 모델을 더 쉽게 내보내고 배포할 수 있으며, CPU에서는 추론 속도를 최대 3배 높이고 Intel GPU와 NPU에서는 성능을 가속할 수 있습니다. 이 문서에서는 Ultralytics Python 패키지를 사용해 YOLO11 모델을 OpenVINO 형식으로 내보내고 추론에 사용하는 방법을 안내합니다.
Ultralytics YOLO11 개요#
Ultralytics에서 지원하는 OpenVINO 통합의 세부 사항을 살펴보기 전에, YOLO11이 신뢰할 수 있고 효과적인 컴퓨터 비전 모델인 이유를 알아보겠습니다. 작성 당시 YOLO11은 Ultralytics YOLO 시리즈의 최신 모델이었으며, 이후 Ultralytics YOLO26이 후속 모델로 출시되었습니다. YOLO11은 속도와 정확도 모두에서 상당한 개선을 제공합니다.
주요 특징 중 하나는 효율성입니다. 예를 들어 Ultralytics YOLO11m은 Ultralytics YOLOv8m보다 파라미터 수가 22% 적지만 COCO 데이터셋에서 더 높은 평균 정밀도 (mAP)를 달성합니다. 따라서 실행 속도가 더 빠르고 객체도 더 정확하게 탐지하므로 성능과 응답성이 중요한 실시간 애플리케이션에 이상적입니다.

그림 2. Ultralytics YOLO11의 성능 벤치마크.
YOLO11은 객체 탐지 외에도 인스턴스 분할, 이미지 분류, 포즈 추정, 방향 바운딩 박스 탐지, 객체 추적 등 다양한 고급 컴퓨터 비전 작업을 지원합니다. 또한 Ultralytics Python 패키지가 모델 학습, 평가, 배포를 위한 간단하고 일관된 인터페이스를 제공하므로 개발자 친화적입니다.
이와 더불어 Ultralytics Python 패키지는 OpenVINO, ONNX, TorchScript를 포함한 다양한 통합 기능과 여러 내보내기 형식을 지원하므로 YOLO11을 다양한 배포 파이프라인에 쉽게 통합할 수 있습니다. 클라우드 인프라, 엣지 장치, 임베디드 시스템 중 어느 것을 대상으로 하든 내보내기 과정은 간단하며 하드웨어 요구사항에 맞게 조정할 수 있습니다.
OpenVINO™란 무엇인가요?#
OpenVINO™(Open Visual Inference and Neural Network Optimization)는 다양한 하드웨어에서 AI 추론을 최적화하고 배포하기 위한 오픈 소스 툴킷입니다. 개발자는 CPU, 통합 및 외장 GPU, NPU, 필드 프로그래머블 게이트 어레이(FPGA)를 포함한 다양한 Intel 플랫폼에서 고성능 추론 애플리케이션을 효율적으로 실행할 수 있습니다.
OpenVINO는 디바이스별 플러그인을 통해 하드웨어 차이를 추상화하는 통합 런타임 인터페이스를 제공합니다. 따라서 개발자는 코드를 한 번 작성한 후 일관된 API를 사용해 여러 Intel 하드웨어 대상에 배포할 수 있습니다.
OpenVINO가 배포에 적합한 선택인 이유를 보여 주는 주요 기능은 다음과 같습니다.
- 모델 변환기: 이 도구는 PyTorch, ONNX, TensorFlow, PaddlePaddle 등의 인기 프레임워크에서 모델을 변환하고 준비하여 Intel 하드웨어에서 효율적으로 추론하도록 최적화합니다.
- 이기종 실행: Intel 하드웨어마다 코드를 다시 작성할 필요가 없습니다. OpenVINO를 사용하면 CPU부터 GPU까지 지원되는 모든 하드웨어에서 동일한 모델을 쉽게 실행할 수 있습니다.
- 양자화 지원: 이 툴킷은 FP16(기본값) 및 INT8과 같은 저정밀도 형식을 지원합니다. 이러한 형식은 정확도에 큰 영향을 주지 않으면서 모델 크기를 줄이고 추론 속도를 높이는 데 도움이 됩니다.

그림 3. OpenVINO는 다양한 배포 옵션을 지원합니다.
Ultralytics와 OpenVINO의 통합 살펴보기#
OpenVINO가 무엇이고 왜 중요한지 살펴보았으니, Ultralytics YOLO11 모델을 OpenVINO 형식으로 내보내 Intel 하드웨어에서 효율적으로 추론을 실행하는 방법을 알아보겠습니다.
1단계: Ultralytics Python 패키지 설치#
모델을 OpenVINO 형식으로 내보내려면 먼저 Ultralytics Python 패키지를 설치해야 합니다. 이 패키지는 YOLO11을 비롯한 YOLO 모델을 학습, 평가, 내보내는 데 필요한 모든 기능을 제공합니다.
터미널이나 명령 프롬프트에서 pip install ultralytics 명령을 실행해 설치할 수 있습니다. Jupyter Notebook이나 Google Colab과 같은 대화형 환경에서 작업하는 경우 명령 앞에 느낌표를 추가하면 됩니다.
설치 중이나 내보내기 과정에서 문제가 발생하면 Ultralytics 문서와 문제 해결 가이드를 참고하여 문제를 해결할 수 있습니다.
2단계: Ultralytics YOLO11 모델을 OpenVINO 형식으로 내보내기#
Ultralytics 패키지를 설정한 다음에는 YOLO11 모델을 불러와 OpenVINO와 호환되는 형식으로 변환해야 합니다.
아래 예제에서는 사전 학습된 YOLO11 모델("yolo11n.pt")을 사용합니다. 내보내기 기능을 사용해 모델을 OpenVINO 형식으로 변환합니다. 이 코드를 실행하면 변환된 모델이 "yolo11n_openvino_model"이라는 새 디렉터리에 저장됩니다.
from ultralytics import YOLO
model = YOLO("yolo11n.pt")
model.export(format="openvino")3단계: 내보낸 모델로 추론 실행하기#
YOLO11 모델을 OpenVINO 형식으로 내보낸 후에는 Ultralytics Python 패키지 또는 네이티브 OpenVINO Runtime을 사용해 두 가지 방법으로 추론을 실행할 수 있습니다.
Ultralytics Python 패키지 사용하기#
아래 코드 스니펫과 같이 Ultralytics Python 패키지를 사용하면 내보낸 YOLO11 모델을 쉽게 배포할 수 있습니다. 이 방법은 빠른 실험과 Intel 하드웨어에서 간소화된 배포에 적합합니다.
시스템에서 사용할 수 있는 Intel 하드웨어에 따라 "intel:cpu", "intel:gpu", "intel:npu" 등 추론에 사용할 디바이스를 지정할 수도 있습니다.
ov_model = YOLO("yolo11n_openvino_model/")
results = ov_model("https://ultralytics.com/images/bus.jpg", device="intel:gpu")주석이 추가된 출력 이미지를 "runs/detect/predict" 디렉터리에 저장하려면 추론 호출에 save=True을 추가합니다.

그림 4. 내보낸 Ultralytics YOLO11 모델을 사용해 이미지에서 객체 탐지하기.
네이티브 OpenVINO Runtime 사용하기#
특히 프로덕션 환경에서 추론을 사용자 지정해 실행하려는 경우 OpenVINO Runtime을 사용하면 모델 실행 방식을 더 세밀하게 제어할 수 있습니다. 비동기 실행(여러 추론 요청을 병렬로 실행) 및 부하 분산(Intel 하드웨어 전반에 추론 작업을 효율적으로 분배)과 같은 고급 기능을 지원합니다.
네이티브 런타임을 사용하려면 내보낸 모델 파일인 .xml 파일(네트워크 아키텍처 정의)과 .bin 파일(모델의 학습된 가중치 저장)이 필요합니다. 애플리케이션에 따라 입력 크기나 전처리 단계 등의 추가 매개변수를 구성할 수도 있습니다.
일반적인 배포 흐름에는 OpenVINO 코어 초기화, 대상 장치에 맞는 모델 로드 및 컴파일, 입력 준비, 추론 실행이 포함됩니다. 자세한 예제와 단계별 안내는 공식 Ultralytics OpenVINO 문서 또는 CPU에서 OpenVINO 실행하기에 관한 Ultralytics Academy 강의를 참조하세요.
Ultralytics와 OpenVINO의 통합을 선택해야 하는 이유#
Ultralytics 통합 기능을 살펴보면 Ultralytics Python 패키지가 YOLO11 모델을 TorchScript, CoreML, TensorRT, ONNX 등 다양한 형식으로 내보내는 기능을 지원한다는 것을 알 수 있습니다. 그렇다면 OpenVINO 통합을 선택해야 하는 이유는 무엇일까요?
OpenVINO 내보내기 형식이 Intel 하드웨어에서 모델을 배포하는 데 적합한 이유는 다음과 같습니다.
- 성능 향상: Intel CPU에서 최대 3배 빠른 추론을 경험할 수 있으며, 통합 GPU와 NPU에서도 추가 가속을 활용할 수 있습니다.
- 재학습 불필요: 기존 Ultralytics YOLO11 모델을 수정하거나 재학습하지 않고 바로 OpenVINO 형식으로 내보낼 수 있습니다.
- 대규모 배포에 적합: 동일한 내보낸 모델을 저전력 엣지 디바이스와 대규모 클라우드 인프라 전반에 배포할 수 있어 확장 가능한 AI 배포가 간소화됩니다.
OpenVINO™ Model Hub에서 다양한 Intel® 플랫폼을 대상으로 한 Ultralytics YOLO11 모델의 성능 벤치마크를 평가할 수도 있습니다. OpenVINO Model Hub는 개발자가 Intel 하드웨어에서 AI 모델을 평가하고 Intel CPU, 내장 GPU, NPU, 외장 그래픽 전반에서 OpenVINO의 성능 이점을 확인할 수 있는 리소스입니다.

그림 5. OpenVINO™ Model Hub: 다양한 Intel® 플랫폼에서의 Ultralytics YOLO11 모델 성능 벤치마크.
Ultralytics YOLO11 및 OpenVINO 내보내기 형식의 활용 사례#
OpenVINO 통합을 활용하면 실제 환경에서 Intel 하드웨어 전반에 Ultralytics YOLO11 모델을 훨씬 간편하게 배포할 수 있습니다.
스마트 리테일은 대표적인 활용 사례입니다. Ultralytics YOLO11을 사용하면 실시간으로 빈 진열대를 탐지하고, 재고가 부족해지는 제품을 추적하며, 매장 내 고객의 이동 경로를 분석할 수 있습니다. 이를 통해 소매업체는 재고 관리를 개선하고 고객 참여를 높일 수 있도록 매장 레이아웃을 최적화할 수 있습니다.
마찬가지로 스마트 시티에서는 YOLO11을 사용해 차량을 세고, 보행자를 추적하며, 실시간으로 신호 위반을 탐지하여 교통 상황을 모니터링할 수 있습니다. 이러한 인사이트는 교통 흐름 최적화, 도로 안전 개선, 자동 단속 시스템 지원에 활용할 수 있습니다.

그림 6. YOLO11을 사용한 차량 계수.
또 다른 흥미로운 사용 사례는 산업 검사입니다. 생산 라인에 Ultralytics YOLO11을 배포하면 부품 누락, 정렬 불량, 표면 손상과 같은 시각적 결함을 자동으로 탐지할 수 있습니다. 이를 통해 효율성을 높이고 비용을 절감하며 제품 품질을 개선할 수 있습니다.
OpenVINO 툴킷 사용 시 고려해야 할 주요 요소#
OpenVINO로 Ultralytics YOLO11 모델을 배포할 때 최상의 결과를 얻으려면 다음과 같은 몇 가지 중요한 사항을 유념해야 합니다.
- 하드웨어 호환성 확인: CPU, 통합 GPU, NPU 등 사용 중인 Intel 하드웨어가 OpenVINO에서 지원되는지 확인하여 모델이 효율적으로 실행되도록 하세요.
- 적절한 드라이버 설치: Intel GPU 또는 NPU를 사용하는 경우 필요한 드라이버가 모두 올바르게 설치되어 있고 최신 상태인지 확인하세요.
- 정밀도 간의 절충 관계 이해: OpenVINO는 FP32, FP16, INT8 모델 정밀도를 지원하며,
quantize인수(예:quantize="int8")를 사용해 내보낼 때 선택할 수 있습니다. 각 옵션은 속도와 정확도 사이에 절충 관계가 있으므로 성능 목표와 사용 가능한 하드웨어를 고려해 적합한 옵션을 선택하는 것이 중요합니다.
핵심 요점#
Ultralytics YOLO11을 OpenVINO 형식으로 내보내면 Intel 하드웨어에서 빠르고 효율적인 비전 AI 모델을 쉽게 실행할 수 있습니다. 재학습하거나 코드를 변경하지 않고도 CPU, GPU, NPU 전반에 배포할 수 있습니다. 복잡성을 늘리지 않고 성능을 높이고 확장성을 확보할 수 있는 좋은 방법입니다.
Ultralytics Python 패키지에 기본 지원이 포함되어 있어 OpenVINO로 내보내고 추론을 실행하는 과정은 간단합니다. 몇 단계만 거치면 모델을 최적화하고 다양한 Intel 플랫폼에서 실행할 수 있습니다. 스마트 리테일, 교통 모니터링, 산업 검사 등 어떤 분야에서 작업하든 이 워크플로를 통해 개발에서 배포까지 빠르고 자신 있게 진행할 수 있습니다.
YOLO 커뮤니티에 참여하고 GitHub 저장소를 확인해 Ultralytics에서 지원하는 통합 기능에 대해 자세히 알아보세요. 오늘 바로 컴퓨터 비전을 시작하려면 Ultralytics 라이선스 옵션도 살펴보세요!
AI를 대규모로 최적화하고 배포하기 위한 도구를 살펴보려면 OpenVINO 웹사이트를 방문하세요.
작성자
댓글
질문하거나 결과를 공유하거나 다른 사람을 도와주세요.










