이미지 분할 가이드

MediaPipe 이미지 세그먼트 도구 작업을 사용하면 사전 정의된 카테고리입니다. 이 기능을 사용하여 특정 객체 또는 그런 다음 배경 블러 처리와 같은 시각 효과를 적용합니다. 이 할 일 사용자 및 고객을 세분화하도록 특별히 학습된 이미지 데이터 내의 특성은 다음과 같습니다.

  • 인물 및 배경
  • 사람의 머리카락만
  • 사람의 머리, 얼굴, 피부, 옷, 액세서리

이 작업은 단일 및 단일 특성이 있는 머신러닝 (ML) 모델을 사용하여 이미지 데이터에서 이미지 또는 연속 동영상 스트림을 사용합니다. 세그먼트화된 리전 목록을 출력하고 지정하는 모델에 따라 이미지의 객체나 영역을 표현 선택할 수 있습니다

<ph type="x-smartling-placeholder"></ph> 직접 해 보세요.

시작하기

다음 구현 가이드 중 하나를 따라 이 작업을 사용해 보세요. 확인할 수 있습니다 이 플랫폼별 가이드에서는 기본적인 코드 예제와 코드 예시를 포함하여 이 작업의 구현을 다음 권장 구성 옵션을 사용하세요.

태스크 세부정보

이 섹션에서는 기능, 입력, 출력, 구성을 설명합니다. 이 태스크의 옵션 중 하나입니다.

기능

  • 입력 이미지 처리 - 처리에는 이미지 회전, 크기 조절, 정규화 및 색상 공간 변환이 있습니다.
작업 입력 작업 출력
입력은 다음 데이터 유형 중 하나일 수 있습니다.
<ph type="x-smartling-placeholder">
    </ph>
  • 정지 이미지
  • 디코딩된 동영상 프레임
  • 라이브 동영상 피드
이미지 세분화 도구는 하나 또는 여러 개의 설정한 구성 옵션에 따라 다음 두 가지 방법이 모두 가능합니다.
<ph type="x-smartling-placeholder">
    </ph>
  • CATEGORY_MASK: 세그먼트화된 마스크가 포함된 목록입니다. uint8 형식 이미지로 포함됩니다. 각 픽셀 값은 모델에서 지원하는 특정 세그먼트 카테고리의 일부인지를 나타냅니다.
  • CONFIDENCE_MASK: float32 형식의 픽셀 값이 있는 세그먼트화된 마스크입니다. 각 픽셀 값은 특정 카테고리의 일부임을 나타내는 신뢰도 수준을 나타냅니다. 모델이 지원됩니다

구성 옵션

이 작업에는 다음과 같은 구성 옵션이 있습니다.

옵션 이름 설명 값 범위 기본값
running_mode 작업의 실행 모드를 설정합니다. 세 가지 모드:

IMAGE: 단일 이미지 입력 모드입니다.

동영상: 동영상의 디코딩된 프레임 모드입니다.

LIVE_STREAM: 입력의 라이브 스트림 모드 데이터를 수집할 수 있습니다. 이 모드에서는 resultListener가 결과를 수신하도록 리스너를 설정하기 위해 호출 있습니다.
{IMAGE, VIDEO, LIVE_STREAM} IMAGE
output_category_mask True로 설정하면 세분화 마스크가 출력에 포함됩니다. uint8 이미지로, 각 픽셀 값은 낙찰된 카테고리를 나타냄 값으로 사용됩니다. {True, False} False
output_confidence_masks True로 설정하면 세분화 마스크가 출력에 포함됩니다. 부동 소수점 값 이미지로, 각 부동 소수점 값은 신뢰도를 나타냅니다. 카테고리별 점수 맵입니다. {True, False} True
display_names_locale 작업 모델의 메타데이터입니다(있는 경우). 기본값은 en입니다. 영어입니다. 커스텀 모델의 메타데이터에 현지화된 라벨을 추가할 수 있습니다. TensorFlow Lite Metadata Writer API 사용 언어 코드 en
result_callback 세분화 결과를 수신하도록 결과 리스너를 설정합니다. 이미지 세그먼트 도구가 LIVE_STREAM 모드일 때 비동기식으로 처리됩니다. 달리기 모드가 LIVE_STREAM로 설정된 경우에만 사용할 수 있습니다. 해당 사항 없음 해당 사항 없음

모델

Image Segmenter는 둘 이상의 ML 모델에서 사용할 수 있습니다. 다음 대부분 세그먼테이션 모델은 기본 이미지를 사용하여 세분화를 수행하도록 사람들입니다. 하지만 DeepLab-v3 모델은 일반적인 이미지 세그먼테이션을 위한 특수 도구입니다 애플리케이션에 가장 적합한 모델을 선택하세요.

<ph type="x-smartling-placeholder">

셀카 세분화 모델

이 모델은 인물의 초상화를 세분화하여 이미지의 배경을 수정하는 등의 작업을 할 수 있습니다. 모델은 두 가지 카테고리를 출력합니다. 색인 0에 백그라운드, 색인 1에 있는 사람. 이 모델에는 다음과 같은 버전이 있습니다. 정사각형 버전과 가로 버전과 같은 다양한 입력 모양이 입력이 항상 그 형태인 애플리케이션에 더 효율적일 수 있습니다. 광고를 게재할 수 있습니다.

모델 이름 입력 형태 양자화 유형 모델 카드 버전
<ph type="x-smartling-placeholder"></ph> SelfieSegmenter (정사각형) 256x256 부동 소수점 수 16 <ph type="x-smartling-placeholder"></ph> 정보 <ph type="x-smartling-placeholder"></ph> 최신 버전
<ph type="x-smartling-placeholder"></ph> SelfieSegmenter (가로 모드) 144 x 256 부동 소수점 수 16 <ph type="x-smartling-placeholder"></ph> 정보 <ph type="x-smartling-placeholder"></ph> 최신 버전

머리카락 구분 모델

이 모델은 사람의 이미지를 가져와 머리에 있는 머리카락을 찾아 머리카락에 대한 이미지 분할 맵을 출력합니다. 이 모델을 사용하여 머리 염색이나 다른 머리 효과 적용 등이 있습니다. 모델은 다음을 출력합니다. 세분화 카테고리:

0 - background
1 - hair
모델 이름 입력 형태 양자화 유형 모델 카드 버전
<ph type="x-smartling-placeholder"></ph> HairSegmenter 512 x 512 None (float32) <ph type="x-smartling-placeholder"></ph> 정보 <ph type="x-smartling-placeholder"></ph> 최신 버전

다중 클래스 셀카 세분화 모델

이 모델은 사람의 이미지를 가져와서 얼굴, 피부, 의류를 입수하고 이러한 항목에 대한 이미지 분할 지도를 출력할 수 있습니다. 이 모델을 사용하여 이미지 속의 사람에게 다양한 효과를 적용하거나 있습니다. 모델은 다음과 같은 세분화 카테고리를 출력합니다.

0 - background
1 - hair
2 - body-skin
3 - face-skin
4 - clothes
5 - others (accessories)
모델 이름 입력 형태 양자화 유형 모델 카드 버전
<ph type="x-smartling-placeholder"></ph> SelfieMulticlass (256 x 256) 256x256 None (float32) <ph type="x-smartling-placeholder"></ph> 정보 <ph type="x-smartling-placeholder"></ph> 최신 버전

DeepLab-v3 모델

이 모델은 배경, 이미지, 배경 등 다양한 카테고리의 고양이, 개, 화분입니다. 이 모델은 Atrous 공간 피라미드를 사용함 더 긴 범위의 정보를 캡처하기 위해 풀링을 사용합니다. 자세한 내용은 DeepLab-v3

모델 이름 입력 형태 양자화 유형 버전
<ph type="x-smartling-placeholder"></ph> DeepLab-V3 257 x 257 None (float32) <ph type="x-smartling-placeholder"></ph> 최신 버전

작업 업계 기준치

다음은 위의 선행 학습된 모델을 기반으로 한 전체 파이프라인의 작업 벤치마크입니다. 모델을 학습시키는 작업도 반복해야 합니다 지연 시간 결과는 CPU / GPU를 사용한 Pixel 6의 평균 지연 시간입니다.

모델 이름 CPU 지연 시간 GPU 지연 시간
SelfieSegmenter (정사각형) 33.46밀리초 35.15밀리초
SelfieSegmenter (가로 모드) 34.19밀리초 33.55밀리초
HairSegmenter 57.90밀리초 52.14밀리초
SelfieMulticlass (256 x 256) 217.76밀리초 71.24밀리초
DeepLab-V3 123.93밀리초 103.30밀리초