MNN 통합을 사용해 Ultralytics YOLO11을 원활하게 배포하기
MNN 통합을 사용해 Ultralytics YOLO11 모델을 내보내고 배포하여 모바일, 임베디드, 저전력 플랫폼에서 빠르게 추론하는 방법을 알아보세요.
Abirami Vina7 분 읽기
오늘날 AI 혁신은 원격 서버 환경을 넘어 확장되고 있습니다. 센서와 스마트폰 같은 엣지 디바이스에 AI 솔루션이 통합되고 있습니다. 이러한 기술 변화 덕분에 이제 데이터가 생성되는 곳에서 직접 처리되어 응답 속도가 빨라지고 개인정보 보호가 향상되며 클라우드에 지속적으로 연결해야 하는 의존도가 줄어듭니다.
그 결과 엣지 AI가 여러 산업 분야에서 주목받고 있습니다. 더 많은 시스템이 빠르고 로컬 중심의 처리 방식으로 전환됨에 따라 엣지 AI 소프트웨어 시장은 2031년까지 88억 8천만 달러 규모에 이를 것으로 예상됩니다.
특히 이미지와 동영상을 이해하는 데 중점을 둔 AI 분야인 컴퓨터 비전이 엣지 환경에서 빠르게 도입되고 있습니다. 포장되는 식품의 개수를 세는 작업부터 차량이 보행자를 감지하도록 지원하는 작업까지, 컴퓨터 비전은 다양한 산업 분야에서 수많은 실용적인 애플리케이션을 지원합니다.
이는 컴퓨터 비전 모델을 통해 가능합니다. 예를 들어 Ultralytics YOLO11은 객체 탐지, 인스턴스 분할, 포즈 추정, 객체 추적과 같은 다양한 비전 AI 작업을 지원하는 모델입니다. 빠르고 효율적으로 설계되었으며 하드웨어 리소스가 제한된 장치에서도 잘 작동합니다.

그림 1. Ultralytics YOLO11을 사용해 포장 중인 식품을 탐지하고 추적합니다.
엣지 배포에 적합할 뿐 아니라 Ultralytics에서 지원하는 다양한 통합을 통해 YOLO11을 다양한 하드웨어 환경에 적합한 여러 형식으로 내보낼 수 있습니다.
가장 효율적인 옵션 중 하나는 저사양 디바이스용으로 설계된 경량 추론 엔진인 MNN(Mobile Neural Network)입니다. Ultralytics YOLO11을 MNN으로 내보내면 빠른 디바이스 내 처리가 필수적인 휴대전화, 임베디드 시스템 및 기타 엣지 플랫폼에서 직접 실행할 수 있습니다.
이 문서에서는 MNN 통합의 작동 방식과 일반적인 사용 사례를 살펴보고, 내보낸 Ultralytics YOLO11 모델을 사용해 추론을 시작하는 방법을 안내합니다.
MNN 개요: 딥러닝 프레임워크#
휴대전화, 산업용 센서, 휴대용 시스템과 같은 소형 디바이스에서 컴퓨터 비전 모델을 실행하는 일은 항상 간단하지 않습니다. 이러한 디바이스는 메모리가 제한적이고 프로세서 속도가 느리며 전력 사용량에 엄격한 제약이 있는 경우가 많습니다.
Mobile Neural Network, 즉 MNN은 Alibaba가 개발한 경량 고성능 추론 엔진으로, 실시간 성능을 유지하면서 리소스가 부족한 하드웨어에서 AI 모델을 효율적으로 실행할 수 있도록 설계되었습니다. MNN은 Android, iOS, Linux를 비롯한 다양한 플랫폼과 중앙 처리 장치(CPUs), 그래픽 처리 장치(GPUs)와 같은 여러 하드웨어 유형을 지원합니다.

그림 2. MNN 프레임워크 살펴보기(출처).
Ultralytics에서 지원하는 MNN 통합을 사용하면 YOLO11 모델을 MNN 형식으로 쉽게 내보낼 수 있습니다. 즉, 모델을 기본 PyTorch 형식에서 MNN으로 변환할 수 있습니다.
변환한 모델은 효율적인 디바이스 내 추론을 위해 MNN 프레임워크를 지원하는 디바이스에 배포할 수 있습니다. MNN 형식을 사용하면 크기, 속도, 리소스 효율성이 중요한 시나리오에서 Ultralytics YOLO11을 간편하게 배포할 수 있다는 이점이 있습니다.
MNN 추론 백엔드의 주요 기능#
MNN 통합 사용 방법을 살펴보기 전에 실제 디바이스에서 AI 모델을 실행할 때 MNN 프레임워크가 적합한 이유를 알아보겠습니다. MNN은 엣지 환경의 고유한 제약을 처리하면서도 빠르고 안정적인 성능을 제공하도록 설계되었습니다.
흥미롭게도 MNN은 Alibaba 내부에서 Taobao, Tmall, Youku, DingTalk, Xianyu를 포함한 30개 이상의 애플리케이션에 사용되며, 라이브 동영상, 숏폼 콘텐츠, 이미지 검색, 디바이스 내 보안 검사 등 다양한 시나리오를 지원합니다. 대규모 배포를 지원하며 프로덕션 환경에서 하루 수백만 건의 추론을 실행합니다.
MNN 프레임워크의 주요 기능은 다음과 같습니다.
- 백엔드 자동 선택: MNN은 실행 중인 하드웨어를 기반으로 CPU 또는 GPU와 같은 가장 적합한 실행 백엔드를 자동으로 선택할 수 있습니다.
- 멀티스레드 실행: 멀티스레딩을 지원하므로 멀티코어 프로세서를 최대한 활용해 추론 속도를 높일 수 있습니다.
- 모델 양자화 지원: FP16 또는 INT8 양자화를 사용해 모델 크기를 크게 줄이고, 메모리 사용량을 낮추면서 추론 속도를 높일 수 있습니다.
- 가볍고 빠른 성능: MNN은 설치 공간이 매우 작습니다. 핵심 라이브러리는 Android에서 약 400 KB, iOS에서 약 5 MB로 모바일 및 임베디드 장치에 적합합니다.
MNN 통합의 작동 방식 이해하기#
이제 Ultralytics YOLO11 모델을 MNN 형식으로 내보내는 방법을 살펴보겠습니다.
첫 단계는 YOLO11 모델을 MNN 형식으로 내보내는 데 필요한 모든 기능을 제공하는 Ultralytics Python 패키지를 설치하는 것입니다. 터미널이나 명령 프롬프트에서 pip install ultralytics을 실행하면 됩니다. Jupyter Notebook이나 Google Colab을 사용하는 경우 명령 앞에 느낌표를 추가하세요.
설치 중 문제가 발생하면 문제 해결 방법을 확인할 수 있는 Common Issues guide를 참조하세요.
환경을 설정한 다음에는 아래 코드 스니펫에 표시된 것처럼 "yolo11n.pt"와 같은 사전 학습된 YOLO11 모델을 불러와 MNN 형식으로 내보낼 수 있습니다. 직접 맞춤 학습한 YOLO11 모델이 있다면 파일 이름을 모델 경로로 바꾸기만 하면 내보낼 수 있습니다.
from ultralytics import YOLO
model = YOLO("yolo11n.pt")
model.export(format="mnn")모델을 MNN으로 변환한 다음에는 애플리케이션 요구 사항에 따라 다양한 모바일 및 임베디드 플랫폼에서 사용할 수 있습니다.
예를 들어, 내보낸 모델을 교통 동영상으로 테스트한다고 가정해 보겠습니다. 이 경우 아래 예시와 같이 MNN 형식의 Ultralytics YOLO11 모델을 불러와 차량, 보행자, 교통 표지판과 같은 객체를 디바이스에서 직접 감지할 수 있습니다.
mnn_model = YOLO("yolo11n.mnn")
results = mnn_model("https://videos.pexels.com/video-files/27783817/12223745_1920_1080_24fps.mp4", save=True)추론이 완료되면 탐지된 객체가 포함된 출력 비디오가 'runs/detect/predict' 폴더에 자동으로 저장됩니다. 또한 MNN Python 패키지를 사용해 직접 추론을 실행하려면 자세한 내용과 예제가 담긴 공식 Ultralytics MNN 문서를 확인하세요.

그림 3. MNN 형식으로 내보낸 Ultralytics YOLO11 모델을 사용한 교통 분석. 이미지 제공: 저자.
Ultralytics YOLO11과 MNN을 활용한 엣지 AI 모델 배포 사례#
Ultralytics YOLO11을 MNN과 함께 배포하면 클라우드 기반 처리가 실용적이지 않거나 불가능한 환경에서도 객체 감지와 같은 컴퓨터 비전 작업을 빠르고 효율적으로 수행할 수 있습니다. 실제 시나리오에서 이 통합이 특히 어떻게 유용한지 살펴보겠습니다.
식물 질병 식별을 위한 모바일 엣지 AI#
이미지 분류를 사용하는 식물 질병 식별 앱은 정원사, 연구자, 자연 애호가 사이에서 인기를 얻고 있습니다. 사진 한 장만으로도 사용자는 잎의 반점이나 변색과 같은 질병의 초기 징후를 빠르게 식별할 수 있습니다. 이러한 앱은 인터넷 접속이 제한되거나 불가능한 야외에서 자주 사용되므로 클라우드 처리에 의존하면 안정성이 떨어질 수 있습니다.
PlantDoc과 같은 데이터셋으로 학습한 후 Ultralytics YOLO11 모델을 MNN 형식으로 내보내 모바일 장치에서 직접 실행할 수 있습니다. 그러면 모델은 데이터를 서버로 전송하지 않고 로컬에서 식물 종을 분류하고 눈에 보이는 질병 증상을 탐지할 수 있습니다.

그림 4. YOLO11을 사용해 잎에서 녹병(식물 질병)의 징후를 감지하는 예시(출처).
제조업의 효율적인 디바이스 내 추론#
제조 시설의 분주한 생산 라인에서는 정확한 패키지 추적이 필수적입니다. Ultralytics YOLO11을 사용하면 주요 검사 지점을 통과하는 각 품목을 추적하고 계수하면서 실시간으로 수량을 업데이트하고 불일치를 표시할 수 있습니다. 이를 통해 누락되거나 소재가 불분명한 배송을 줄이고 더 원활하고 안정적인 운영을 지원합니다.

그림 5. YOLO11을 사용한 패키지 추적 및 계수(출처).
이러한 상황에서 MNN 통합은 특히 큰 효과를 낼 수 있습니다. Ultralytics YOLO11 모델을 MNN 형식으로 내보내면 컨베이어를 따라 설치된 소형 저전력 디바이스에서 직접 실행할 수 있습니다.
모든 처리가 로컬에서 이루어지므로 시스템은 즉각적인 피드백을 제공하고 인터넷 연결이 필요하지 않습니다. 따라서 높은 정확도와 제어 수준을 유지하면서 공장 현장에서 빠르고 안정적으로 작동해 생산이 효율적으로 진행되도록 지원합니다.
Ultralytics YOLO11을 MNN 모델 형식으로 내보낼 때의 이점#
Ultralytics에서 제공하는 MNN 통합의 주요 이점은 다음과 같습니다.
- 더 빠른 응답 시간: 추론이 디바이스에서 실행되므로 지연 시간을 최소화하면서 실시간으로 예측할 수 있습니다.
- 향상된 데이터 개인정보 보호: 데이터가 디바이스에 저장되어 민감한 이미지나 동영상을 클라우드로 전송할 필요가 줄어듭니다.
- 오픈 소스이며 활발히 유지 관리됨: Alibaba의 지원을 받고 활발한 커뮤니티가 함께하는 MNN은 신뢰할 수 있으며 성능 개선을 위해 정기적으로 업데이트됩니다.
MNN 프레임워크 사용 시 고려할 요소#
MNN을 배포 프레임워크로 선택하기 전에 프로젝트 요구 사항, 배포 대상, 기술적 제한 사항에 얼마나 잘 부합하는지 평가하는 것도 중요합니다. 고려해야 할 주요 요소는 다음과 같습니다.
- 지속적인 호환성 관리: 프레임워크 업데이트나 대상 플랫폼 변경에 따라 원활한 작동을 유지하기 위해 다시 테스트하거나 조정해야 할 수 있습니다.
- 제한적인 디버깅 도구: 대규모 프레임워크와 비교하면 MNN은 모델 동작을 디버깅하고 검사하는 도구가 제한적이어서 문제 해결이 더 어려울 수 있습니다.
- 하드웨어에 따라 달라지는 성능: 모델의 속도와 효율성은 디바이스에 따라 달라집니다. 목표 성능을 충족하는지 확인하려면 대상 하드웨어에서 테스트하세요.
핵심 요점#
Ultralytics의 MNN 통합 지원을 이용하면 YOLO11 모델을 모바일 및 임베디드 디바이스에서 사용할 수 있도록 간편하게 내보낼 수 있습니다. 클라우드 액세스나 지속적인 연결에 의존하지 않고 빠르고 안정적인 감지가 필요한 애플리케이션에 실용적인 옵션입니다.
이 설정을 사용하면 성능을 유지하고 리소스 요구량을 낮추면서 배포를 간소화할 수 있습니다. 스마트 홈 시스템, 현장용 도구, 소형 산업용 디바이스 중 무엇을 개발하든 Ultralytics YOLO11을 MNN으로 내보내면 엣지 디바이스에서 컴퓨터 비전 작업을 직접 실행하는 유연하고 효율적인 방법을 활용할 수 있습니다.
계속 성장하는 커뮤니티에 참여하세요! GitHub 저장소를 살펴보며 AI에 대해 자세히 알아보세요. 컴퓨터 비전 프로젝트를 시작할 준비가 되셨나요? 라이선스 옵션을 확인하세요. 솔루션 페이지에서 헬스케어 분야의 AI와 리테일 분야의 컴퓨터 비전에 대해 자세히 알아보세요!
작성자
댓글
질문하거나 결과를 공유하거나 다른 사람을 도와주세요.










