Python용 얼굴 스타일 지정 가이드

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

MediaPipe 얼굴 스타일라이저 작업을 사용하면 이미지의 면에 얼굴 스타일을 적용할 수 있습니다. 이 작업을 사용하여 다양한 스타일의 가상 아바타를 만들 수 있습니다.

이 안내에 설명된 코드 샘플은 GitHub에서 확인할 수 있습니다. 기능, 모델, 구성 옵션에 대한 자세한 내용은 개요를 참조하세요.

코드 예

얼굴 스타일라이저의 코드 예는 이 참고하세요. 이 코드는 이 작업을 테스트하고 가 자신만의 얼굴 스타일라이저를 만들기 시작했습니다. 얼굴 스타일라이저 예시 코드 데이터를 공유할 수 있습니다.

설정

이 섹션에서는 개발 환경을 설정하는 주요 단계를 설명하고 코드 프로젝트를 살펴보겠습니다. 일반적인 정보 다음과 같은 MediaPipe 작업을 사용하기 위한 개발 환경 설정 플랫폼 버전 요구사항에 대한 자세한 내용은 Python을 사용합니다.

패키지

MediaPipe 얼굴 스타일라이저 작업에는 mediapipe PyPI 패키지가 필요합니다. Cloud Shell을 설치하고 다음을 사용하여 이러한 종속 항목을 가져옵니다.

$ python -m pip install mediapipe

가져오기

얼굴 스타일라이저 작업 함수에 액세스하려면 다음 클래스를 가져옵니다.

import mediapipe as mp
from mediapipe.tasks import python
from mediapipe.tasks.python import vision

모델

MediaPipe 얼굴 스타일라이저 작업에는 다음과 호환되는 학습된 모델이 필요합니다. 태스크에 맞추는 것입니다. 얼굴 스타일라이저에 사용할 수 있는 학습된 모델에 대한 자세한 내용은 다음을 확인하세요. 작업 개요의 모델 섹션을 확인합니다.

모델을 선택하고 다운로드한 후 로컬 디렉터리에 저장합니다.

model_path = '/absolute/path/to/face_stylizer.task'

BaseOptions 객체 model_asset_path 매개변수를 사용하여 지정할 수도 있습니다 코드 예는 다음 섹션을 참고하세요.

할 일 만들기

MediaPipe 얼굴 스타일라이저 작업은 create_from_options 함수를 사용하여 태스크에 맞추는 것입니다. create_from_options 함수는 구성 값을 허용함 처리할 수 있습니다.

다음 코드는 이 작업을 빌드하고 구성하는 방법을 보여줍니다.

import mediapipe as mp

BaseOptions = mp.tasks.BaseOptions
Facestylizer = mp.tasks.vision.face_stylizer
FacestylizerOptions = mp.tasks.vision.FaceStylizerOptions

# Create a face stylizer instance with the image mode:
options = FacestylizerOptions(
    base_options=BaseOptions(model_asset_path=model_path),
with Facestylizer.create_from_options(options) as stylizer:
  # The stylizer is initialized. Use it here.
  # ...

데이터 준비

입력을 이미지 파일 또는 NumPy 배열로 준비한 후 mediapipe.Image 객체. 입력한 내용이 웹캠과 같은 외부 라이브러리를 입력 프레임을 Numpy로 로드하는 OpenCV 배열입니다.

import mediapipe as mp

# Load the input image from an image file.
mp_image = mp.Image.create_from_file('/path/to/image')

# Load the input image from a numpy array.
mp_image = mp.Image(image_format=mp.ImageFormat.SRGB, data=numpy_image)

작업 실행

얼굴 스타일라이저는 stylize 함수를 사용하여 추론을 트리거합니다. 얼굴용 여기에는 입력 데이터를 전처리하고 피처스토어의 면을 스타일화하는 작업이 포함됩니다. 이미지

다음 코드는 작업으로 처리를 실행하는 방법을 보여줍니다. 있습니다.

# Perform face stylization on the provided single image.
# The face stylizer must be created with the image mode.
face_stylizer_result = stylizer.stylize(mp_image)

결과 처리 및 표시

얼굴 스타일라이저는 스타일이 가장 높은 Image 객체를 반환합니다. 입력 이미지 내에서 눈에 띄는 얼굴

다음은 이 작업의 출력 데이터 예시를 보여줍니다.

위의 출력은 색상 스케치 모델을 다음 입력 이미지에 추가합니다.