firststep.kr
5주차 마일스톤약 10시간 소요난이도: 중급

실시간 컴퓨터 비전(MediaPipe) 객체 인식 & 포즈 추정

CameraX 고성능 프레임 스트리밍, MediaPipe Vision 파이프라인 및 Compose Canvas 실시간 랜드마크 렌더링

#ComputerVision#CameraX#MediaPipe#PoseEstimation

이번 주 핵심 학습 목표

  • 1
    CameraX의 ImageAnalysis 유즈케이스를 활용해 30fps 무지연 비디오 스트림을 획득한다.
  • 2
    YUV_420_888 이미지 포맷을 RGB 비트맵 또는 MPImage로 제로 카피 변환한다.
  • 3
    33개 신체 관절 랜드마크를 추출하고 Compose Canvas 위에 실시간 오버레이한다.

실전 학습 가이드 & 코드 워크스루

1. CameraX와 실시간 AI 분석의 결합

카메라 프레임 분석 시 가장 흔한 실수는 프레임 버퍼를 과도하게 복사하거나 UI 스레드를 블로킹하여 카메라 프리뷰가 버벅이는 현상입니다. CameraX의 STRATEGY_KEEP_ONLY_LATEST 백프레셔 전략을 사용하면 분석기가 처리할 수 있는 속도에 맞춰 최신 프레임만 전달하고 오래된 프레임은 자동으로 폐기합니다.

kotlin
val imageAnalysis = ImageAnalysis.Builder()
    .setBackpressureStrategy(ImageAnalysis.STRATEGY_KEEP_ONLY_LATEST)
    .setOutputImageFormat(ImageAnalysis.OUTPUT_IMAGE_FORMAT_RGBA_8888)
    .build()
    .also { analysis ->
        analysis.setAnalyzer(cameraExecutor) { imageProxy ->
            processFrame(imageProxy)
        }
    }

2. 포즈 랜드마크(Pose Landmark) 렌더링

MediaPipe Pose Landmarker는 인체의 코, 눈, 어깨, 팔꿈치, 손목, 골반, 무릎, 발목 등 33개 핵심 키포인트의 (x, y, z) 3차원 정규화 좌표를 반환합니다. 이를 화면 해상도에 맞게 역투영하여 캔버스에 그립니다.

📂 이번 주차 학습 자료 & 실습 파일 다운로드

2개 파일 제공

강의 교안 PDF, 실습 스타터 코드, 치트시트 등 학습에 필요한 자료를 별도로 열람하거나 다운로드하여 학습하세요.

5주차_핵심요약_치트시트.pdf

PDF•1.8 MB

5주차 핵심 이론 및 아키텍처 다이어그램 치트시트

5주차_실전_스타터코드.zip

ZIP•3.4 MB

Android Studio 프로젝트 템플릿 및 실습 코드 예제

실전 체크리스트 & 셀프 점검

0 / 4 완료

직접 코드를 구현하고 테스트를 완료할 때마다 체크해 보세요. 브라우저에 자동 보관됩니다.

CameraX 종속성 및 카메라 권한(CAMERA) 런타임 요청 구현
ImageAnalysis.Analyzer를 통한 프레임 드랍 방지 STRATEGY_KEEP_ONLY_LATEST 적용
PoseLandmarker 인스턴스 초기화 및 LiveStream 모드 리스너 등록
랜드마크 좌표 스케일링 및 실시간 뼈대(Skeleton) 드로잉 구현
ADVERTISEMENTfirststep.kr ad
1st

firststep.kr 12주 완성 실전 커리어 로드맵

파이썬, 소프트웨어설계, DB, 데이터과학, 딥러닝, LLM 9종 코스 100% 무료

로드맵 둘러보기