Python के लिए, चेहरे को बेहतर बनाने से जुड़ी गाइड

MediaPipe फ़ेस स्टाइलाइज़र टास्क की मदद से, किसी इमेज में दिखने वाले चेहरों को अलग-अलग स्टाइल में फ़िल्टर किया जा सकता है. इस टास्क का इस्तेमाल, अलग-अलग स्टाइल के वर्चुअल अवतार बनाने के लिए किया जा सकता है.

इन निर्देशों में जिस कोड सैंपल की जानकारी दी गई है वह GitHub पर उपलब्ध है. क्षमताओं, मॉडल, और कॉन्फ़िगरेशन के विकल्पों के बारे में ज़्यादा जानकारी पाने के लिए इस टास्क की खास जानकारी देखें.

कोड का उदाहरण

फ़ेस स्टाइलाइज़र के लिए दिए गए उदाहरण में, इसे पूरी तरह लागू करने की सुविधा है Python में आज़माएं. यह कोड, इस टास्क की जांच करने और यह पाने में आपकी मदद करता है हमने अपना फ़ेस स्टाइलाइज़र बनाना शुरू किया. आपके पास को देखने, चलाने, और बदलाव करने का विकल्प है फ़ेस स्टाइलाइज़र का उदाहरण कोड करने के लिए, वेब ब्राउज़र का इस्तेमाल करें.

सेटअप

इस सेक्शन में, आपके डेवलपमेंट एनवायरमेंट को सेट अप करने और फ़ेस स्टाइलर का इस्तेमाल करने के लिए खास तौर पर कोड प्रोजेक्ट बनाता है. इस पर सामान्य जानकारी के लिए MediaPipe के टास्क इस्तेमाल करने के लिए डेवलपमेंट एनवायरमेंट सेट अप करना. इसमें ये भी शामिल हैं प्लैटफ़ॉर्म वर्शन की ज़रूरी शर्तें, Google के सभी प्रॉडक्ट के लिए सेटअप गाइड Python.

पैकेज

MediaPipe फ़ेस स्टाइलाइज़र टास्क के लिए, MediaAPI PyPI पैकेज की ज़रूरत होती है. आप इंस्टॉल कर सकते हैं और इन डिपेंडेंसी को नीचे दिए गए निर्देशों के साथ इंपोर्ट करें:

$ python -m pip install mediapipe

आयात

Face स्टाइलस के टास्क फ़ंक्शन ऐक्सेस करने के लिए, इन क्लास को इंपोर्ट करें:

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

मॉडल

MediaPipe Face स्टाइलाइज़र टास्क के लिए, एक प्रशिक्षित मॉडल की ज़रूरत है, जो इस सुविधा के साथ काम कर सके टास्क. फ़ेस स्टाइलाइज़र के लिए ट्रेन किए गए मॉडल के बारे में ज़्यादा जानकारी के लिए, देखें टास्क की खास जानकारी मॉडल सेक्शन.

मॉडल को चुनें और डाउनलोड करें, और फिर उसे लोकल डायरेक्ट्री में स्टोर करें:

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

इसका पाथ बताने के लिए, BaseOptions ऑब्जेक्ट model_asset_path पैरामीटर का इस्तेमाल करें तो उसके बारे में बताएँ. कोड के उदाहरण के लिए, अगला सेक्शन देखें.

टास्क बनाएं

MediaPipe Face स्टाइलाइज़र टास्क में, यह सेट अप करने के लिए 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.
  # ...

डेटा तैयार करें

अपना इनपुट, इमेज फ़ाइल या नंपी अरे के तौर पर तैयार करें. इसके बाद, 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 ऑब्जेक्ट दिखाता है, जो सबसे ज़्यादा स्टाइल के सुझाव देता है प्रमुख चेहरा शामिल किया गया है.

इस टास्क के आउटपुट डेटा का एक उदाहरण नीचे दिया गया है:

ऊपर दिया गया आउटपुट कलर स्केच लागू करके बनाया गया था मॉडल को नीचे दी गई इनपुट इमेज में जोड़ें: