2.인공지능/MediaPipe

1.Google MediaPipe 솔루션 이해하기

쿼드큐브 2025. 4. 15. 16:11
728x90

MediaPipe 솔루션은 애플리케이션에 인공지능 (AI) 및 머신러닝 (ML) 기법을 빠르게 적용할 수 있는 라이브러리 및 도구 모음을 제공합니다. 이러한 솔루션을 애플리케이션에 즉시 연결하고, 필요에 맞게 맞춤설정하고, 여러 개발 플랫폼에서 사용할 수 있습니다. 

 

Google MediaPipe 솔루션 이해하기

 

목차

1. MediaPipe란?

2. MediaPipe 구성요소와 통합도구

3. MediaPipe Tasks 개요

4. MediaPipe Model Maker를 이용한 재 학습

5. MediaPipe Studio로 실시간 테스트

6. 사용가능한 솔루션 목록

관련 글 링크

 

 

1. MediaPipe란?

MediaPipe는 Google에서 개발한 멀티모달 AI 프레임워크로, 영상 처리뿐만 아니라 텍스트 분석, 오디오 인식까지 지원하는 범용 플랫폼입니다.
이 프레임워크는 실시간 성능과 높은 정확도를 제공하며, 크로스 플랫폼에서 동일한 코드 기반으로 실행이 가능하도록 설계되었습니다.

주요 특징:

  • 다양한 데이터 타입(영상, 오디오, 텍스트)에 적용 가능
  • CPU, GPU, TPU 기반의 온디바이스 추론 최적화
  • 단 몇 줄의 코드로 AI 기능 실행 가능 (로우 코드 구조)

 

2. MediaPipe 구성요소 와 통합도구

MediaPipe는 여러 ML 도구를 하나로 통합한 구조로 이루어져 있습니다.
개별적으로도 강력하지만, 함께 사용할 경우 높은 효율과 생산성을 제공합니다.

MediaPipe 구성요소
출처:https://ai.google.dev/edge/mediapipe/solutions/guide?hl=ko

 

다음 라이브러리와 리소스는 각 MediaPipe 솔루션의 핵심 기능을 제공합니다.

  • MediaPipe Tasks: 솔루션을 배포하기 위한 크로스 플랫폼 API 및 라이브러리입니다.
  • MediaPipe 모델: 각 솔루션과 함께 사용할 수 있는 선행 학습된 실행 준비 상태의 모델입니다.

다음 도구를 사용하여 솔루션을 맞춤설정하고 평가할 수 있습니다.

  • MediaPipe Model Maker: 데이터를 사용하여 솔루션용 모델을 맞춤설정합니다.
  • MediaPipe 스튜디오: 브라우저에서 솔루션을 시각화, 평가, 벤치마킹합니다.

 

3. MediaPipe Tasks 개요

MediaPipe Tasks는 Google MediaPipe에서 제공하는 AI 기능 실행 전용 API 세트로, 고급 머신러닝 기능을 손쉽게 실행할 수 있도록 설계된 로우 코드 API입니다.
기존의 복잡한 추론 파이프라인 설정 없이도, 사전 학습된 TFLite 모델을 불러와 즉시 사용할 수 있습니다.

  • 핵심 목표: 멀티 플랫폼에서 통일된 방식으로 ML 기능을 구현
  • 사용 대상: 비전, 텍스트, 오디오 관련 AI 기능이 필요한 개발자
특징 설명
크로스 플랫폼 Android, 웹, Python, (iOS 예정) 등 다양한 플랫폼에서 동일한 API 제공
로우 코드 복잡한 TensorFlow 세팅 없이 5줄 내외의 코드로 추론 가능
고성능 CPU, GPU, TPU를 활용한 엔드 투 엔드 최적화 처리
모듈화 vision, text, audio 등 도메인별 세분화된 모듈 구성
Model Maker와 통합 커스텀 모델을 쉽게 불러와 적용 가능

 

◆ 사용하기 쉽고 잘 정의된 크로스 플랫폼 API

  • MediaPipe Tasks는 간결한 로우 코드 API를 제공합니다.
  • 단 5줄 이내의 코드만으로 복잡한 머신러닝 추론을 실행할 수 있습니다.
  • Android, 웹, Python 등 다양한 플랫폼에서 동일한 구조와 사용법으로 작동하므로 유지보수와 이식성이 매우 뛰어납니다.

맞춤설정 가능한 솔루션 (Customizable)

  • MediaPipe Tasks는 Google이 제공하는 모델뿐 아니라 사용자 데이터로 만든 모델도 자유롭게 적용할 수 있습니다.
  • Model Maker를 활용해 직접 모델을 학습하고 .tflite로 저장하면, 이를 GestureRecognizer, ImageClassifier 등 Tasks API에서 바로 사용할 수 있습니다.
  • 플랫폼에 관계없이 동일한 모델을 배포할 수 있습니다.

고성능 ML 파이프라인

  • 일반적인 ML 솔루션은 모델 추론, 후처리, 입출력 처리가 분리되어 있어 지연(latency)이 발생합니다.
  • 반면, MediaPipe Tasks는 모든 처리 과정을 하나의 통합 파이프라인으로 최적화하여 높은 속도를 자랑합니다.
  • CPU, GPU, TPU에서 최적화된 병렬 처리가 가능하며, 실시간 예측도 무리 없이 수행됩니다.

 Python 예시

pip install mediapipe

''' 이미지 분류 코드 예시 '''
from mediapipe.tasks.python.vision import ImageClassifier

classifier = ImageClassifier.create_from_model_path("efficientnet.tflite")
result = classifier.classify(image)
for category in result.classifications[0].categories:
    print(category.category_name, category.score)

 

 

4. MediaPipe Model Maker를 이용한 재 학습

MediaPipe Model Maker는 기존 머신러닝 모델을 새로운 데이터로 재학습(retrains) 맞춤형 모델(Custom Model)을 손쉽게 만드는 도구입니다.
완전히 새 모델을 처음부터 학습시키는 것보다 훨씬 빠르고 효율적하며, 적은 양의 데이터로도 높은 성능을 낼 수 있습니다.

  • 기존 모델 + 새 데이터 → 재학습 → 최적화된 나만의 모델

MediaPipe Model Maker
출처:https://ai.google.dev/edge/mediapipe/solutions/model_maker?hl=ko

 

동작 방식

Model Maker는 전이 학습(Transfer Learning) 기법을 사용합니다.
즉, 기존에 잘 훈련된 모델의 기초 구조(Feature Extractor)는 그대로 두고, 출력층(Classifier Layer)만 새 데이터에 맞춰 다시 학습합니다.

 - 내부 동작 요약:

  1. 기존 모델에서 최종 레이어(분류기) 제거
  2. 새 데이터 클래스 수에 맞춰 새 출력층 생성
  3. 이 출력층을 새 데이터로 학습
  4. 필요 시 전체 모델을 미세 조정(Fine-tune)

- 예시:
기존 모델이 30종 객체 분류 →
새 데이터가 ‘고양이’, ‘개’, ‘앵무새’라면 →
최종 결과 모델은 이 3개 클래스만 분류하는 경량 모델이 됩니다.

 

학습데이터 요구사항

Model Maker의 가장 큰 장점 중 하나는 “적은 데이터로도 충분히 학습할 수 있다”는 점입니다.
기존 머신러닝처럼 수천 장의 데이터를 요구하지 않으며, 클래스(카테고리)당 약 100장 정도의 이미지면 충분합니다.

용도 비율 설명
학습용 (Training) 80% 모델이 실제 학습하는 데 사용
검증용 (Validation) 10% 학습 중 정확도를 확인하며 과적합을 방지
테스트용 (Testing) 10% 학습이 끝난 후, 실제 성능을 평가
  • 100장은 권장 수치일 뿐이며, 카테고리당 30~50장만으로도 어느 정도 학습이 가능합니다.
  • 하지만 이미지가 많을수록 정확도는 더 높아질 가능성이 있습니다.

Model Maker 재학습의 한계

1. 재학습된 모델은 새 데이터 클래스만 인식합니다.

  • Model Maker는 기존 모델에서 출력 계층(분류기 부분)을 삭제하고 새로 학습합니다.
  • 즉, 재학습이 끝난 모델은 오직 새로 학습한 클래스만 인식합니다.
  • 예시:
원래 모델: 30종류의 꽃 분류
새 학습 데이터: 10종류의 야생화
결과: 30개 → 10개 클래스만 인식하는 모델로 바뀜
  • 이전 모델이 인식하던 클래스 정보는 완전히 사라집니다.

2. 모델의 작업(Task 유형)은 바꿀 수 없습니다.

  • Model Maker는 기존 모델이 수행하던 기본 작업 유형을 바꾸지 못합니다.
기존작업 새 작업 가능 여부
이미지 분류 이미지 분류(새 클래스) 가능
텍스트 분류 텍트트 분류(새 카테고리) 가능
이미지 분류 객체 감지 불가능
오디오 분류 동작 인식  불가능

 

 

5. MediaPipe Studio로 실시간 테스트

MediaPipe Studio는 브라우저에서 실행되는 AI 시각화 및 벤치마킹 도구입니다.
간단한 드래그 앤 드롭 방식으로 모델을 업로드하고 결과를 바로 확인할 수 있습니다.

MediaPipe Studio
https://mediapipe-studio.webapps.google.com/home

 

◆ 기능 특징

  • 웹캠 연동 또는 파일 업로드 가능
  • 모델 성능 (정확도, 처리 속도) 즉시 확인
  • 사용한 모델 및 태스크 코드 확인 가능

◆ 솔루션 데모 실행 흐름

  1. Studio 홈페이지 접속
  2. 원하는 솔루션 종류 선택 (예: 이미지 분류)
  3. 모델 선택: 기본 모델 or 내 모델 업로드
  4. 입력 데이터 선택: 이미지 업로드 / 웹캠 / 텍스트 입력
  5. 결과 시각화 확인
  6. 하단의 개발자 가이드 버튼 클릭 → 실전 앱 코드로 연결됨

이 흐름을 통해 웹에서 결과를 빠르게 검증한 뒤, 바로 애플리케이션 개발로 이어질 수 있습니다.

 

실무 활용 예시

  • Model Maker로 만든 제스처 인식 모델을 Studio에 올려서 테스트
  • 추론 결과가 정확하지 않다면 → 학습 데이터 보강 필요성 파악
  • Threshold 값을 변경해보고 최적의 신뢰도 조건 탐색
  • 결과가 만족스러우면 → Tasks API에 바로 모델 적용!

주의사항

항목 주의할 점
모델 형식 .tflite만 지원되며, 메타데이터가 포함되어 있어야 함
호환성 MediaPipe Tasks API 기반 솔루션과만 연동 가능
텍스트 입력 길이 일부 솔루션은 입력 길이에 제한이 있을 수 있음
GPU 가속 브라우저 환경이므로 GPU 가속이 제한적일 수 있음

 

 

6. 사용가능한 솔루션 목록

Mediapipe Solutions
출처:https://ai.google.dev/edge/mediapipe/solutions/guide?hl=ko

 

2023년 3월 1일부터 아래에 나열된 MediaPipe 기존 솔루션에 대한 지원이 종료되었습니다.

다른 모든 MediaPipe 기존 솔루션은 새 MediaPipe 솔루션으로 업그레이드됩니다. 

Mediapipe Solutions


 

관련 글 링크

https://ai.google.dev/edge/mediapipe/solutions/guide?hl=ko

 

MediaPipe 솔루션 가이드  |  Google AI Edge  |  Google AI for Developers

LiteRT 소개: 온디바이스 AI를 위한 Google의 고성능 런타임(이전 명칭: TensorFlow Lite)입니다. 이 페이지는 Cloud Translation API를 통해 번역되었습니다. 의견 보내기 MediaPipe 솔루션 가이드 의견 보내기 달

ai.google.dev

 

728x90