MediaPipe Interactive Image Segmenter 태스크를 사용하면 이미지를 선택한 객체와 그 외 모든 항목이라는 두 영역으로 나눌 수 있습니다. 이 작업은 이미지에서 위치를 가져와 해당 위치에서 객체의 경계를 추정하고 객체의 영역을 정의하는 이미지 데이터를 반환합니다. 이 태스크를 사용하여 이미지에서 객체를 대화식으로 선택하고 출력을 사용하여 객체를 강조 표시하는 색상 오버레이나 주변 배경을 흐리게 처리하는 등의 효과를 이미지에 적용할 수 있습니다. 이 태스크는 머신러닝 (ML) 모델을 사용하여 이미지 데이터를 처리하며 단일 이미지, 동영상 파일 또는 연속 동영상 스트림에서 사용할 수 있습니다.
시작하기
대상 플랫폼에 관한 다음 구현 가이드 중 하나에 따라 이 작업을 시작합니다. 다음 플랫폼별 가이드에서는 권장 모델, 권장 구성 옵션이 포함된 코드 예시 등 이 작업의 기본 구현을 안내합니다.
태스크 세부정보
이 섹션에서는 이 태스크의 기능, 입력, 출력, 구성 옵션을 설명합니다.
기능
- 입력 이미지 처리 - 처리에는 이미지 회전, 크기 조절, 정규화, 색상 공간 변환이 포함됩니다.
태스크 입력 | 태스크 출력 |
---|---|
|
대화형 이미지 세그먼터는 설정된 구성 옵션에 따라 다음 중 하나 또는 둘 다를 포함할 수 있는 세분화된 이미지 데이터를 출력합니다.
|
구성 옵션
이 태스크에는 다음과 같은 구성 옵션이 있습니다.
옵션 이름 | 설명 | 값 범위 | 기본값 |
---|---|---|---|
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 |
모델
대화형 이미지 세그멘터는 두 개 이상의 ML 모델과 함께 사용할 수 있습니다. 이 작업으로 개발을 시작할 때는 타겟 플랫폼에 권장되는 기본 모델부터 시작하세요. 사용 가능한 다른 모델은 일반적으로 성능, 정확성, 해상도, 리소스 요구사항 간에 절충점을 찾으며 경우에 따라 추가 기능을 포함합니다.
MagicTouch 모델 (권장)
이 모델은 관심 영역의 이미지 좌표가 주어지면 세그먼트를 식별합니다. 이 모델은 맞춤 디코더와 함께 MobileNetV3 아키텍처와 유사한 컨볼루션 신경망을 사용합니다.
모델 이름 | 입력 셰이프 | 양자화 유형 | 모델 카드 | 버전 |
---|---|---|---|---|
MagicTouch | 512 x 512 x 4 | None (float32) | 정보 | 최신 |
작업 벤치마크
다음은 위의 사전 학습된 모델을 기반으로 한 전체 파이프라인의 태스크 벤치마크입니다. 지연 시간 결과는 CPU / GPU를 사용하는 Pixel 6의 평균 지연 시간입니다.
모델 이름 | CPU 지연 시간 | GPU 지연 시간 |
---|---|---|
MagicTouch | 130.11ms | 67.25ms |