logo
On this page

Face beautification


The ZegoEffects SDK provides various face beautification features that help users look like their best selves on live video, including skin tone enhancement, skin smoothing, cheek blusher, image sharpening, and more.

Prerequisites

Before using the ZegoEffects SDK face beautification features, please ensure:

  • Integrate the ZegoEffects SDK into your project. For details, see Integrate the SDK.
  • Implement the basic image processing functionality. For details, see Implement basic image processing.
  • Initialize the ZegoEffects object with the width and height of the image to be processed.

Implementation steps

In general, take the following steps to use a face beautification feature:

  1. Enable the feature.
  2. Specify the parameters of the beautification feature as needed. If not specified, the SDK uses the default settings.

Skin tone enhancement

Use this feature to make the skin tone whiter or tanner.

Warning

To use the skin tone enhancement feature, import the related resource file FaceWhiteningResources first; otherwise, this feature can't take effect. For details, see Import resources and models.

  1. Call the enableWhiten method to enable the skin tone enhancement feature.

  2. Call the setWhitenParam method to set the intensity.

    The value range of the intensity property of ZegoEffectsWhitenParam is [0, 100], and the default value is 50. As this value gets larger, the skin tone gets whiter.

// Enable the skin tone enhancement feature.
ZegoEffectsPlugin.instance.enableWhiten(true);

// Set the enhancement intensity. The value range is [0, 100], and the default value is 50.
ZegoEffectsWhitenParam param = ZegoEffectsWhitenParam();
param.intensity = 100;
ZegoEffectsPlugin.instance.setWhitenParam(param);

Skin smoothing

  1. Call the enableSmooth method to enable the skin smoothing feature.

  2. Call the setSmoothParam method to set the smoothing intensity.

    The value range of the intensity property of ZegoEffectsSmoothParam is [0, 100], and the default value is 50. As this value gets larger, the skin looks smoother.

// Enable the skin smoothing feature.
ZegoEffectsPlugin.instance.enableSmooth(true);

// Set the smoothing intensity. The value range is [0, 100], and the default value is 50.
ZegoEffectsSmoothParam param = ZegoEffectsSmoothParam();
param.intensity = 100;
ZegoEffectsPlugin.instance.setSmoothParam(param);

Cheek blusher

Warning

For this feature to work correctly, you need to import the related resource files first. For details, see Import resources and models.

  1. Call the enableRosy method to enable the cheek blusher feature.

  2. Call the setRosyParam method to set the rosy intensity.

The value range of the intensity property of ZegoEffectsRosyParam is [0, 100], and the default value is 50. As this value gets larger, the cheek gets rosier.

// Enable the cheek blusher feature.
ZegoEffectsPlugin.instance.enableRosy(true);

// Set the blusher intensity. The value range is [0, 100], and the default value is 50.
ZegoEffectsRosyParam param = ZegoEffectsRosyParam();
param.intensity = 100;
ZegoEffectsPlugin.instance.setRosyParam(param);

Image sharpening

  1. Call the enableSharpen method to enable the image sharpening feature.

  2. Call the setSharpenParam method to set the sharpening strength.

    The value range of the intensity property of ZegoEffectsSharpenParam is [0, 100], and the default value is 50. As this value gets larger, the image looks sharper.

// Enable the image sharpening feature.
ZegoEffectsPlugin.instance.enableSharpen(true);

// Set the sharpening intensity. The value range is [0, 100], and the default value is 50.
ZegoEffectsSharpenParam param = ZegoEffectsSharpenParam();
param.intensity = 100;
ZegoEffectsPlugin.instance.setSharpenParam(param);

Nasolabial folds removing

  1. Call the enableWrinklesRemoving method to enable the nasolabial folds removing feature.

  2. Call the setWrinklesRemovingParam method to set the intensity.

    The value range of the intensity property of ZegoEffectsWrinklesRemovingParam is [0, 100], and the default value is 50. As this value gets larger, the more thoroughly the nasolabial folds are removed.

// Enable the nasolabial folds removing feature.
ZegoEffectsPlugin.instance.enableWrinklesRemoving(true);

// Set the wrinkles removing intensity. The value range is [0, 100], and the default value is 50.
ZegoEffectsWrinklesRemovingParam param = ZegoEffectsWrinklesRemovingParam();
param.intensity = 100;
ZegoEffectsPlugin.instance.setWrinklesRemovingParam(param);

Dark circles removing

  1. Call the enableDarkCirclesRemoving method to enable the dark circles removing feature.

  2. Call the setDarkCirclesRemovingParam method to set the intensity.

    The value range of the intensity property of the ZegoEffectsDarkCirclesRemovingParam is [0, 100], and the default value is 50. As this value gets larger, the more thoroughly the dark circles are removed.

// Enable the dark circles removing feature.
ZegoEffectsPlugin.instance.enableDarkCirclesRemoving(true);

// Set the dark circles removing intensity. The value range is [0, 100], and the default value is 50.
ZegoEffectsDarkCirclesRemovingParam param = ZegoEffectsDarkCirclesRemovingParam();
param.intensity = 100;
ZegoEffectsPlugin.instance.setDarkCirclesRemovingParam(param);

Acne and Spot Removal

Call the enableAcneRemoving method to enable the acne and spot removal feature, and use the setAcneRemovingParam method to set the intensity of the acne and spot removal.

The value range of the "intensity" parameter in the ZegoEffectsAcneRemovingParam object is [0, 100], with a default value of "0". A larger value indicates a stronger acne and spot removal effect. Developers can customize the value according to their needs.

// Enable acne and spot removal
ZegoEffectsPlugin.instance.enableAcneRemoving(true);

// Set the intensity of acne and spot removal, range [0, 100], default is 0
ZegoEffectsAcneRemovingParam param = ZegoEffectsAcneRemovingParam();
param.intensity = 100;
ZegoEffectsPlugin.instance.setAcneRemovingParam(param);

Clarity Enhancement

Warning

Before using the clarity enhancement feature, please import the corresponding "ClarityResources" resource files, otherwise the feature will not work. For details, please refer to Quick Starts - Import Resources and Models.

Call the enableClarity method to enable the clarity enhancement feature, and use the setClarityParam method to set the clarity level.

The value range of the "intensity" parameter in the ZegoEffectsClarityParam object is [0, 100], with a default value of "0". A larger value indicates a stronger clarity enhancement effect. Developers can customize the value according to their needs.

// Enable clarity enhancement
ZegoEffectsPlugin.instance.enableClarity(true);

// Set the clarity level, range [0, 100], default is 0
ZegoEffectsClarityParam param = ZegoEffectsClarityParam();
param.intensity = 100;
ZegoEffectsPlugin.instance.setClarityParam(param);

Skin Color Adjustment

Warning

Before adjusting the skin color, please import and load the corresponding skin resources from "SkinColorResources", otherwise the feature will not work. For details, please refer to Quick Starts - Import Resources and Models.

Call the enableSkinColor method to enable the skin color adjustment feature, use the setSkinColor method to load the supported skin resources, and then use the setSkinColorParam method to set the intensity of the skin color adjustment.

The value range of the "intensity" parameter in the ZegoEffectsSkinColorParam object is [0, 100], with a default value of "0". A larger value indicates a more noticeable change in skin color. Developers can customize the value according to their needs.

// Enable skin tone adjustment feature
ZegoEffectsPlugin.instance.enableSkinColor(true);

// Set the specified skin color name
ZegoEffectsPlugin.instance.setSkinColor('fenbai');

// Set the intensity of the skin color, range [0, 100], default is 0
ZegoEffectsSkinColorParam param = ZegoEffectsSkinColorParam();
param.intensity = 100;
ZegoEffectsPlugin.instance.setSkinColorParam(param);

Previous

Implement Basic Image Processing

Next

Shape Retouch