MediaPipe 이미지 세그먼트 도구 작업을 사용하면 사전 정의된 카테고리입니다. 이 기능을 사용하여 특정 객체 또는 그런 다음 배경 블러 처리와 같은 시각 효과를 적용합니다. 이 할 일 사용자 및 고객을 세분화하도록 특별히 학습된 이미지 데이터 내의 특성은 다음과 같습니다.
- 인물 및 배경
- 사람의 머리카락만
- 사람의 머리, 얼굴, 피부, 옷, 액세서리
이 작업은 단일 및 단일 특성이 있는 머신러닝 (ML) 모델을 사용하여 이미지 데이터에서 이미지 또는 연속 동영상 스트림을 사용합니다. 세그먼트화된 리전 목록을 출력하고 지정하는 모델에 따라 이미지의 객체나 영역을 표현 선택할 수 있습니다
<ph type="x-smartling-placeholder"></ph> 직접 해 보세요.
시작하기
다음 구현 가이드 중 하나를 따라 이 작업을 사용해 보세요. 확인할 수 있습니다 이 플랫폼별 가이드에서는 기본적인 코드 예제와 코드 예시를 포함하여 이 작업의 구현을 다음 권장 구성 옵션을 사용하세요.
태스크 세부정보
이 섹션에서는 기능, 입력, 출력, 구성을 설명합니다. 이 태스크의 옵션 중 하나입니다.
기능
- 입력 이미지 처리 - 처리에는 이미지 회전, 크기 조절, 정규화 및 색상 공간 변환이 있습니다.
작업 입력 | 작업 출력 |
---|---|
입력은 다음 데이터 유형 중 하나일 수 있습니다. <ph type="x-smartling-placeholder">
|
이미지 세분화 도구는 하나 또는 여러 개의
설정한 구성 옵션에 따라 다음 두 가지 방법이 모두 가능합니다.
<ph type="x-smartling-placeholder">
|
구성 옵션
이 작업에는 다음과 같은 구성 옵션이 있습니다.
옵션 이름 | 설명 | 값 범위 | 기본값 |
---|---|---|---|
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밀리초 |