MediaPipe 臉部觸控筆工作可讓你為圖片中的臉孔套用臉孔風格。 透過這項工作,您可以建立各種風格的虛擬顯示圖片。
您可在 GitHub 取得本操作說明中所述的程式碼範例。 進一步瞭解功能、模型和設定選項 請參閱總覽。
程式碼範例
臉部樣式設定程式碼範例提供完整實作 執行相關作業這個程式碼可協助您測試這項工作 開始打造自己專屬的風格風格您可以查看、執行及編輯 臉部樣式設定程式碼範例 只要使用網路瀏覽器即可
設定
本節說明設定開發環境的重要步驟,以及 以及專門使用 Face Stylizer 的程式碼專案如需 設定開發環境以使用 MediaPipe 工作,包括: 平台版本需求,請參閱這份指南 Python。
套件
MediaPipe Face Stylizer 工作需要 mediapipe PyPI 套件。您可以安裝 透過下列指令匯入這些依附元件:
$ python -m pip install mediapipe
匯入
匯入下列類別,即可存取臉部風格化工作函式:
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
物件。如果您提供的是
可以使用外部程式庫,例如
OpenCV,會將輸入影格載入為 numpy
陣列。
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
物件
呈現出明顯的臉孔
以下範例顯示這項工作的輸出資料範例:
以上輸出內容是使用色彩草圖建立而成 新增至下列輸入圖片: