Python の顔スタイル設定ガイド

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

MediaPipe Face Stylizer タスクを使用すると、画像内の顔に顔のスタイルを適用できます。 このタスクでは、さまざまなスタイルの仮想アバターを作成できます。

この手順で説明するコードサンプルは GitHub で入手できます。 機能、モデル、構成オプションの詳細については、 概要をご覧ください。

サンプルコード

顔スタイライザーのサンプルコードでは、 タスクを示しています。このコードは、このタスクをテストして、 独自のフェイス スタイライザーの作成を始めました。を表示、実行、および編集できます。 顔スタイライザーのサンプルコード できます。

セットアップ

このセクションでは、開発環境をセットアップする主な手順と コード プロジェクトを作成することにしました。一般的な情報については、 MediaPipe タスクを使用するための開発環境の設定 プラットフォーム バージョンの要件については、 Python

パッケージ

MediaPipe Face Stylizer タスクには、mediapipe PyPI パッケージが必要です。Compute Engine インスタンスに 次のように依存関係をインポートします。

$ python -m pip install mediapipe

インポート

Face Stylizer タスク関数にアクセスするには、次のクラスをインポートします。

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

モデル

MediaPipe Face Stylizer タスクには、このインターフェースに対応するトレーニング済みモデルが必要です タスクを実行します。顔スタイライザーで利用可能なトレーニング済みモデルについて詳しくは、以下をご覧ください。 タスクの概要のモデル セクションをご覧ください。

モデルを選択してダウンロードし、ローカル ディレクトリに保存します。

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

BaseOptions オブジェクトの model_asset_path パラメータを使用して、 モデルを定義します。コード例については、次のセクションをご覧ください。

タスクを作成する

MediaPipe Face Stylizer タスクは、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)

結果の処理と表示

Face Stylizer は、Image オブジェクトを 主な顔の文字を検索できます。

このタスクからの出力データの例を次に示します。

上記の出力は、カラースケッチを適用して作成されました。 次の入力画像にマッピングします。