YOLO26 소개: 차세대 비전 AI입니다.
Ultralytics
통합

ONNX 통합을 사용하여 Ultralytics YOLO 모델 내보내기

ONNX 통합을 사용하여 Ultralytics YOLO11과 같은 Ultralytics YOLO 모델을 내보내고 다양한 하드웨어 환경에 배포하는 방법을 알아보십시오.

ABAbirami Vina
4 min read
한 프레임워크에서 학습된 모델을 다른 환경에서 실행할 수 있게 하는 ONNX

AI 솔루션이 처음 주목받기 시작했을 때, 대부분의 모델은 통제된 환경의 강력한 서버에 배포되었습니다. 하지만 기술이 발전함에 따라 배포 환경은 데이터 센터를 넘어 훨씬 더 확장되었습니다.

오늘날 AI 모델은 클라우드 서버와 데스크톱부터 스마트폰과 엣지 디바이스에 이르기까지 모든 곳에서 실행됩니다. 이러한 변화는 더 빠른 처리, 오프라인 기능, 그리고 데이터가 생성되는 곳과 더 가까운 지점에서 작동하는 스마트한 시스템을 지원합니다.

이 점이 특히 두드러지는 분야가 바로 컴퓨터 비전입니다. 이는 기계가 시각 데이터를 해석할 수 있게 해주는 AI의 한 분야입니다. 얼굴 인식, 자율 주행, 실시간 비디오 분석과 같은 애플리케이션을 구동하는 데 사용되고 있습니다. 이러한 사용 사례가 증가함에 따라, 다양한 하드웨어와 플랫폼 전반에서 원활하게 실행될 수 있는 모델에 대한 필요성도 커지고 있습니다.

하지만 다양한 배포 대상 전반에 걸쳐 컴퓨터 비전 모델을 배포하는 것이 항상 간단한 것은 아닙니다. 디바이스마다 하드웨어, 운영 체제, 지원하는 프레임워크가 다르기 때문에 유연성과 호환성이 필수적입니다.

이것이 바로 Ultralytics YOLO11과 같은 컴퓨터 비전 모델을 다양한 형식으로 내보낼 수 있는 옵션을 갖추는 것이 핵심인 이유입니다. 예를 들어, Ultralytics에서 지원하는 ONNX(Open Neural Network Exchange) 통합은 학습과 배포 사이의 간극을 메울 수 있는 실용적인 방법을 제공합니다. ONNX는 모델을 프레임워크에 구애받지 않게 만들고 플랫폼 전반에서 즉시 배포할 수 있도록 지원하는 오픈 형식입니다.

한 프레임워크에서 학습된 모델을 다른 프레임워크에서 실행할 수 있도록 지원하는 ONNX

그림 1. ONNX를 사용하면 한 프레임워크에서 학습된 모델을 다른 프레임워크에서 쉽게 실행할 수 있습니다.

이 문서에서는 Ultralytics에서 지원하는 ONNX 통합을 자세히 살펴보고, 유연한 플랫폼 간 배포를 위해 YOLO11 모델을 내보내는 방법을 알아봅니다.

Link to this sectionONNX와 ONNX Runtime이란 무엇인가요?#

Open Neural Network Exchange는 머신 러닝 모델을 위한 표준 형식을 정의하는 오픈 소스 프로젝트입니다. 원래 Microsoft와 Facebook이 공동 개발했으며, 개발자가 PyTorch와 같은 하나의 프레임워크에서 모델을 학습시키고 TensorFlow와 같은 다른 프레임워크에서 실행할 수 있도록 합니다. 이는 특히 컴퓨터 비전과 같은 분야에서 AI 개발을 더욱 유연하고 협력적이며 접근하기 쉽게 만듭니다.

ONNX는 공통 연산자 집합과 통합된 파일 형식을 제공하여 서로 다른 도구, 프레임워크, 런타임 및 컴파일러 간에 모델을 더 쉽게 이동할 수 있게 합니다. 일반적으로 한 프레임워크에서 학습된 모델은 다른 프레임워크와 쉽게 호환되지 않지만, ONNX를 사용하면 모델을 한 번 내보내어 CPU(중앙 처리 장치), GPU(그래픽 처리 장치), 모바일 디바이스 또는 엣지 하드웨어 등 거의 모든 곳에 배포할 수 있습니다.

또한, ONNX Runtime은 ONNX 형식의 모델을 실행하기 위해 특별히 개발된 고성능 추론 엔진입니다. 이 엔진은 서버, 모바일 디바이스, 엣지 하드웨어를 포함한 광범위한 플랫폼에서 ONNX 모델을 더 빠르고 효율적으로 실행하도록 설계되었습니다. ONNX Runtime은 PyTorch, TensorFlow, TensorFlow Lite, scikit-learn과 같은 대중적인 프레임워크와 호환되므로 다양한 워크플로우에 쉽게 통합하고 필요한 곳에 모델을 배포할 수 있습니다.

교차 플랫폼 모델 배포를 지원하는 ONNX 및 ONNX Runtime

그림 2. ONNX와 ONNX Runtime은 유연한 플랫폼 간 모델 배포를 가능하게 합니다.

Link to this sectionONNX의 주요 기능#

YOLO11을 ONNX 형식으로 내보내는 방법을 논의하기 전에, ONNX 모델 형식의 몇 가지 주요 기능을 확인해 보겠습니다.

도구 간 전환, 서로 다른 디바이스로의 배포, 시스템 업그레이드 등 어떤 상황에서든 ONNX는 모든 것이 원활하게 작동하도록 돕습니다. ONNX 모델 형식을 특별하게 만드는 이유는 다음과 같습니다.

  • 하나의 표준 형식: ONNX는 모델이 어떻게 구축되는지를 설명하는 공통적인 방법을 사용합니다(예: 레이어 및 연산, 일종의 빌딩 블록이라고 생각하면 됩니다). 모델이 ONNX로 변환되면 이 표준을 따르게 되어 ONNX를 지원하는 모든 시스템에서 이를 이해하고 실행할 수 있습니다.

  • 하위 호환성: ONNX는 지속적으로 개선되고 있지만, 이전 모델이 최신 버전에서도 여전히 작동하도록 보장합니다. 즉, ONNX가 업데이트될 때마다 모델을 다시 학습하거나 재구축할 필요가 없습니다.

  • 그래프 기반 모델 디자인: ONNX 모델은 계산 그래프로 구조화되어 있습니다. 여기서 각 노드는 연산(레이어 또는 수학적 함수 등)을 나타내고, 엣지는 데이터 흐름을 나타냅니다. 이러한 그래프 기반 디자인은 유사한 계산 그래프 구조를 사용하는 다양한 시스템과의 통합을 촉진합니다.

  • 개발자 친화적인 도구: 모델을 변환, 검증 및 최적화하는 데 도움이 되는 광범위한 도구가 함께 제공됩니다. 이러한 도구는 서로 다른 프레임워크 간에 모델을 이동하는 프로세스를 단순화하며, 특히 컴퓨터 비전 애플리케이션의 경우 배포 속도를 높일 수 있습니다.

Link to this sectionONNX 통합 개요#

Ultralytics YOLO11과 같은 Ultralytics YOLO 모델을 ONNX 형식으로 내보내는 것은 매우 간단하며 몇 단계만 거치면 됩니다.

시작하려면 'pip'와 같은 패키지 관리자를 사용하여 Ultralytics Python 패키지를 설치하십시오. 명령 프롬프트나 터미널에서 "pip install ultralytics" 명령어를 실행하여 시작할 수 있습니다.

Ultralytics 패키지를 사용하면 다양한 컴퓨터 비전 작업을 위해 모델을 쉽게 학습, 테스트, 미세 조정, 내보내기 및 배포할 수 있어 전체 프로세스가 더 빠르고 효율적으로 진행됩니다. 설치 중 어려움이 발생하면 일반 문제 가이드에서 해결 방법과 팁을 참조할 수 있습니다.

Ultralytics 패키지가 설치되면 아래 코드를 사용하여 YOLO11 모델을 로드하고 ONNX 형식으로 내보낼 수 있습니다. 이 예제는 사전 학습된 YOLO11 모델(yolo11n.pt)을 로드하고 이를 ONNX 파일(yolo11n.onnx)로 내보내어 다양한 플랫폼과 디바이스에 배포할 준비를 마칩니다.

모델을 ONNX 형식으로 변환한 후에는 다양한 플랫폼에 배포할 수 있습니다.

아래 예제는 내보낸 YOLO11 모델(yolo11n.onnx)을 로드하고 이를 사용하여 추론을 실행하는 방법을 보여줍니다. 추론이란 학습된 모델을 사용하여 새로운 데이터에 대한 예측을 수행하는 것을 의미합니다. 이 경우, 버스 이미지의 URL을 사용하여 모델을 테스트합니다.

이 코드를 실행하면 다음과 같은 결과 이미지가 runs/detect/predict 폴더에 저장됩니다.

내보낸 YOLO11 모델을 사용하여 이미지에서 추론을 실행하는 모습

그림 3. 내보낸 YOLO11 모델을 사용하여 이미지에서 추론 실행하기.

Link to this section언제 ONNX 통합을 선택해야 할까요?#

Ultralytics Python 패키지는 TorchScript, CoreML, TensorRT, ONNX 등 여러 형식으로의 모델 내보내기를 지원합니다. 그렇다면 왜 ONNX를 선택해야 할까요?

ONNX가 돋보이는 이유는 프레임워크에 구애받지 않는 형식이기 때문입니다. 다른 많은 내보내기 형식은 특정 도구나 환경에 묶여 있지만, ONNX는 표준화된 형식과 공유 연산자 집합을 사용합니다. 덕분에 이식성이 뛰어나고 하드웨어 친화적이며 클라우드 서버, 모바일 앱, 엣지 디바이스 등 어디에서든 플랫폼 간 배포에 이상적입니다.

YOLO11 프로젝트에 ONNX 통합이 이상적인 선택이 될 수 있는 몇 가지 이유는 다음과 같습니다.

  • 휴대용 배포: ONNX로 내보내면 코드 변경이나 재학습 없이도 YOLO11 모델을 다양한 플랫폼에 배포할 수 있습니다.

  • 업계 전반의 지원: ONNX는 주요 AI 기업과 프레임워크의 지원을 받으므로 신뢰할 수 있고 널리 인정받는 형식입니다. PDF가 디바이스 전반에서 작동하는 것과 마찬가지로 장기적인 호환성을 보장합니다.

  • 미래 지향적 개발: ONNX를 사용하면 모델에 대한 투자를 보호할 수 있습니다. 도구가 발전하더라도 ONNX는 새로운 환경이나 다른 환경에서도 모델을 유효하고 사용 가능하게 유지합니다.

  • 벤더 종속성 없음: 일부 도구는 특정 시스템만 사용하도록 강제하여 모델이 할 수 있는 일을 제한할 수 있습니다. ONNX는 단일 설정에 얽매이지 않고 필요에 가장 적합한 플랫폼을 자유롭게 선택할 수 있도록 하여 이를 방지합니다.

Link to this sectionYOLO11과 ONNX 모델 형식의 적용 분야#

다음으로, ONNX 통합의 도움을 받아 YOLO11을 배포할 수 있는 몇 가지 실제 적용 사례를 살펴보겠습니다.

Link to this sectionYOLO11을 사용하여 창고 재고 추적하기#

바쁜 창고에서는 모든 제품과 패키지를 항상 주시하기가 어렵습니다. 컴퓨터 비전 시스템은 작업자가 선반에서 제품을 찾고, 제품 수나 유형 등에 대한 인사이트를 얻도록 도울 수 있습니다. 이러한 시스템은 기업이 방대한 재고를 자동으로 관리하고 창고 작업자의 시간을 크게 절약하도록 지원합니다.

구체적으로, 스마트 창고에서 ONNX로 내보낸 YOLO11 모델은 카메라와 엣지 디바이스를 사용하여 실시간으로 항목을 식별하고 카운트하는 데 사용될 수 있습니다. 내보낸 모델은 선반이나 팔레트를 스캔하여 재고 수준, 누락된 항목 또는 빈 자리를 감지하는 데 도움을 줍니다. ONNX로 내보내면 모델이 가볍고 효율적이게 되므로 스마트 카메라와 같은 작은 엣지 디바이스에서 직접 실행할 수 있으며, 고가의 서버나 지속적인 클라우드 액세스가 필요하지 않습니다.

YOLO11을 사용하여 패키지를 탐지하고 개수를 세는 예시

그림 4. YOLO11을 사용하여 패키지를 감지하고 카운트하는 예시.

Link to this sectionYOLO11을 활용한 병원 폐기물 관리#

전 세계의 병원에서는 사용한 장갑과 주사기부터 수술 중에 사용되는 장비(가위나 메스 등 일회용 또는 오염된 수술 도구)까지 매일 엄청난 양의 폐기물이 발생합니다. 실제로 연구에 따르면 병원은 매년 약 500만 톤의 폐기물을 생산하며, 이는 하루 침대당 29파운드의 폐기물에 해당합니다.

이러한 폐기물을 올바르게 분류하는 것은 위생, 안전 및 규정 준수를 위해 필수적입니다. ONNX 형식으로 내보낸 YOLO11 모델을 통해 병원은 폐기물 처리를 자동화하고 실시간으로 모니터링할 수 있습니다.

예를 들어, 수술실이나 복도와 같은 구역의 쓰레기통 근처에 설치된 카메라는 폐기되는 항목을 모니터링할 수 있습니다. 다양한 의료 폐기물 유형을 인식하도록 학습된 맞춤형 YOLO11 모델은 영상을 분석하여 버려지는 항목을 식별합니다. 일반 쓰레기통에 사용한 주사기와 같은 항목이 들어가는 경우, 시스템은 즉시 조명이나 소리로 직원에게 경고하도록 설정하여 오염을 방지하고 규정 준수를 보장할 수 있습니다.

YOLO11을 사용하여 의료 기기를 탐지하는 모습

그림 5. YOLO11을 사용하여 의료 기기 감지하기.

Link to this sectionYOLO11 기반 작물 모니터링#

작물을 수확할 최적의 시기를 아는 것은 농산물의 품질과 농장의 전반적인 생산성 모두에 큰 영향을 미칩니다. 전통적으로 농부들은 경험과 수동 검사에 의존해 왔지만, 최근 기술의 발전으로 이러한 방식이 변화하고 있습니다.

이제 ONNX 형식으로 내보낸 YOLO11과 같은 컴퓨터 비전 혁신 기술을 통해 농부들은 현장에 자동화와 정밀함을 도입할 수 있습니다. 드론이나 트랙터, 폴에 장착된 카메라를 사용하여 농부들은 작물(토마토, 사과, 밀 등)의 이미지를 캡처할 수 있습니다. 그런 다음 YOLO11을 사용하여 색상, 크기 및 작물 분포와 같은 핵심 지표를 감지할 수 있습니다. 이 정보를 바탕으로 농부들은 작물이 수확할 준비가 되었는지, 여전히 성숙 중인지, 아니면 이미 수확 적기가 지났는지 판단할 수 있습니다.

드론 항공 영상에서 농작물을 탐지하는 YOLO11

그림 6. YOLO11은 드론 항공 영상에서 작물을 감지하는 데 사용될 수 있습니다.

Link to this section고려해야 할 ONNX의 제한 사항#

ONNX는 이식성, 플랫폼 간 호환성, 프레임워크 상호 운용성 등 수많은 이점을 제공하지만, 염두에 두어야 할 몇 가지 제한 사항이 있습니다.

  • 모델 크기: 모델을 ONNX 형식으로 변환하면 원래 형식보다 파일 크기가 더 커질 수 있습니다. 양자화 및 가지치기(quantization and pruning)와 같은 기술을 사용하면 성능에 큰 영향을 주지 않으면서 모델 크기를 줄여 이 문제를 완화할 수 있습니다.

  • 런타임 호환성: ONNX Runtime은 플랫폼 간 호환성을 위해 설계되었지만, 성능과 지원 범위는 하드웨어와 운영 체제에 따라 다를 수 있습니다.

  • 디버깅의 어려움: ONNX 모델을 디버깅하는 것은 PyTorch나 TensorFlow와 같은 기본 프레임워크보다 더 복잡할 수 있습니다. 오류 메시지가 덜 자세하여 문제를 파악하기 어려울 수 있습니다. 그러나 모델 시각화를 위한 Netron이나 ONNX Runtime의 로깅 기능을 활용하면 문제 해결에 도움을 받을 수 있습니다.

Link to this section핵심 요약#

Ultralytics YOLO11을 ONNX로 내보내면 학습된 컴퓨터 비전 모델을 가져와 노트북, 모바일 디바이스, 심지어 소형 스마트 카메라에 이르기까지 거의 모든 곳에 쉽게 배포할 수 있습니다. ONNX 통합을 사용하면 단일 프레임워크나 플랫폼에 얽매이지 않고, 애플리케이션에 가장 적합한 환경에서 모델을 실행할 수 있는 유연성을 확보할 수 있습니다.

이를 통해 학습에서 실제 배포까지의 전환이 더 빠르고 효율적으로 이루어집니다. 창고에서 재고를 추적하든 병원 폐기물이 올바르게 처리되도록 관리하든, 이 설정을 사용하면 시스템을 더 원활하게 실행하고 오류를 줄이며 소중한 시간을 절약할 수 있습니다.

컴퓨터 비전과 AI에 대해 더 알고 싶으신가요? GitHub 저장소를 탐색하고, 커뮤니티와 소통하며, 라이선스 옵션을 확인하여 컴퓨터 비전 프로젝트를 시작해 보십시오. 제조 분야의 AI자동차 산업의 컴퓨터 비전과 같은 혁신적인 사례를 탐구하고 있다면 당사의 솔루션 페이지를 방문하여 자세한 내용을 확인해 보십시오.

Explore solutions

Real-time AI that works with your team

로봇 공학에서의 AI

Ultralytics YOLO 모델로 더 스마트한 기기를 구동하십시오. 로봇 공학의 비전 AI는 자율 주행, 인식, 객체 추적 및 실시간 제어를 촉진합니다.
더 알아보기
Real-time AI that works with your team

물류 분야의 AI

Ultralytics YOLO 모델로 물류 프로세스를 간소화하십시오. 비전 AI를 통해 패키지 검사, 분류, 차량 추적 및 실시간 창고 안전 모니터링이 가능합니다.
더 알아보기
Real-time AI that works with your team

소매업에서의 AI

Ultralytics YOLO 모델로 소매업을 재구상하십시오. 비전 AI는 재고 추적, 선반 모니터링, 대기열 관리 및 더 스마트한 고객 인사이트를 지원합니다.
더 알아보기
Real-time AI that works with your team

의료 분야의 AI

Ultralytics YOLO 모델로 의료 솔루션을 구축하십시오. 의료 분야의 비전 AI는 더 빠른 의료 영상 분석, 더 스마트한 진단 및 환자 모니터링을 지원합니다.
더 알아보기
Real-time AI that works with your team

제조 분야의 AI

Ultralytics YOLO 모델로 제조 공정을 최적화하십시오. 비전 AI는 품질 관리, 결함 탐지, PPE 규정 준수 및 조립 라인 자동화를 주도합니다.
더 알아보기
Real-time AI that works with your operation

자동차 분야의 AI

Ultralytics YOLO 모델을 통해 자동차 분야에 컴퓨터 비전을 적용하십시오. 비전 AI는 도로 안전, 운전자 보조 및 차량 자동화를 향상하여 더 스마트한 도로를 만듭니다.
더 알아보기
Real-time AI tailored to your operation

농업 분야의 AI

Ultralytics YOLO 모델을 통해 스마트 농업에 비전 AI를 도입하십시오. 작물 모니터링, 가축 추적 및 정밀 농업을 강화하여 더 높고 스마트한 생산량을 달성하십시오.
더 알아보기
Real-time AI that works with your team

로봇 공학에서의 AI

Ultralytics YOLO 모델로 더 스마트한 기기를 구동하십시오. 로봇 공학의 비전 AI는 자율 주행, 인식, 객체 추적 및 실시간 제어를 촉진합니다.
더 알아보기
Real-time AI that works with your team

물류 분야의 AI

Ultralytics YOLO 모델로 물류 프로세스를 간소화하십시오. 비전 AI를 통해 패키지 검사, 분류, 차량 추적 및 실시간 창고 안전 모니터링이 가능합니다.
더 알아보기
Real-time AI that works with your team

소매업에서의 AI

Ultralytics YOLO 모델로 소매업을 재구상하십시오. 비전 AI는 재고 추적, 선반 모니터링, 대기열 관리 및 더 스마트한 고객 인사이트를 지원합니다.
더 알아보기
Real-time AI that works with your team

의료 분야의 AI

Ultralytics YOLO 모델로 의료 솔루션을 구축하십시오. 의료 분야의 비전 AI는 더 빠른 의료 영상 분석, 더 스마트한 진단 및 환자 모니터링을 지원합니다.
더 알아보기
Real-time AI that works with your team

제조 분야의 AI

Ultralytics YOLO 모델로 제조 공정을 최적화하십시오. 비전 AI는 품질 관리, 결함 탐지, PPE 규정 준수 및 조립 라인 자동화를 주도합니다.
더 알아보기
Real-time AI that works with your operation

자동차 분야의 AI

Ultralytics YOLO 모델을 통해 자동차 분야에 컴퓨터 비전을 적용하십시오. 비전 AI는 도로 안전, 운전자 보조 및 차량 자동화를 향상하여 더 스마트한 도로를 만듭니다.
더 알아보기
Real-time AI tailored to your operation

농업 분야의 AI

Ultralytics YOLO 모델을 통해 스마트 농업에 비전 AI를 도입하십시오. 작물 모니터링, 가축 추적 및 정밀 농업을 강화하여 더 높고 스마트한 생산량을 달성하십시오.
더 알아보기
Real-time AI that works with your team

로봇 공학에서의 AI

Ultralytics YOLO 모델로 더 스마트한 기기를 구동하십시오. 로봇 공학의 비전 AI는 자율 주행, 인식, 객체 추적 및 실시간 제어를 촉진합니다.
더 알아보기
Real-time AI that works with your team

물류 분야의 AI

Ultralytics YOLO 모델로 물류 프로세스를 간소화하십시오. 비전 AI를 통해 패키지 검사, 분류, 차량 추적 및 실시간 창고 안전 모니터링이 가능합니다.
더 알아보기
Real-time AI that works with your team

소매업에서의 AI

Ultralytics YOLO 모델로 소매업을 재구상하십시오. 비전 AI는 재고 추적, 선반 모니터링, 대기열 관리 및 더 스마트한 고객 인사이트를 지원합니다.
더 알아보기
Real-time AI that works with your team

의료 분야의 AI

Ultralytics YOLO 모델로 의료 솔루션을 구축하십시오. 의료 분야의 비전 AI는 더 빠른 의료 영상 분석, 더 스마트한 진단 및 환자 모니터링을 지원합니다.
더 알아보기
Real-time AI that works with your team

제조 분야의 AI

Ultralytics YOLO 모델로 제조 공정을 최적화하십시오. 비전 AI는 품질 관리, 결함 탐지, PPE 규정 준수 및 조립 라인 자동화를 주도합니다.
더 알아보기
Real-time AI that works with your operation

자동차 분야의 AI

Ultralytics YOLO 모델을 통해 자동차 분야에 컴퓨터 비전을 적용하십시오. 비전 AI는 도로 안전, 운전자 보조 및 차량 자동화를 향상하여 더 스마트한 도로를 만듭니다.
더 알아보기
Real-time AI tailored to your operation

농업 분야의 AI

Ultralytics YOLO 모델을 통해 스마트 농업에 비전 AI를 도입하십시오. 작물 모니터링, 가축 추적 및 정밀 농업을 강화하여 더 높고 스마트한 생산량을 달성하십시오.
더 알아보기

미래의 AI를 함께 구축합시다!

머신 러닝의 미래와 함께 여정을 시작하십시오.