Face transform
Analyze and transform faces via AceDataCloud API. Use when detecting face keypoints, beautifying portraits, aging/de-aging faces, swapping genders, replacing faces between photos, creating cartoon avatars, or detecting liveness. Provides 7 specialized face APIs.From its SKILL.md
npx -y skills add AceDataCloud/Skills --skill face-transformAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 13 stars13 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its file declares
Copied from the file, not written here
The file declares its own license as Apache-2.0. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
5.2 KB, ~1.3k tokens by cl100k_base, as published. Nobody here has run it
Face Transform
Analyze and transform faces through AceDataCloud's Face API suite.
Setup: See authentication for token setup.
Quick Start
curl -X POST https://api.acedata.cloud/face/analyze \
-H "Authorization: Bearer $ACEDATACLOUD_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"image_url": "https://example.com/portrait.jpg"}'
Available APIs
| Endpoint | Purpose | Description |
|---|---|---|
POST /face/analyze | Face Detection | Detect face keypoints (90+ points per face) |
POST /face/beautify | Beautification | Apply beauty/decoration effects |
POST /face/change-age | Age Transform | Make a face look older or younger |
POST /face/change-gender | Gender Swap | Transform facial gender characteristics |
POST /face/swap | Face Swap | Replace one person's face with another |
POST /face/cartoon | Cartoon Style | Convert portrait to animated/cartoon style |
POST /face/detect-live | Liveness Check | Detect if a face image is from a live person |
Workflows
1. Face Analysis
Detect faces and extract 90+ keypoints per face.
POST /face/analyze
{
"image_url": "https://example.com/photo.jpg"
}
Response includes detailed keypoints: nose, mouth, left_eye, right_eye, left_eyebrow, right_eyebrow, contour — each as arrays of {x, y} coordinates.
2. Face Beautification
POST /face/beautify
{
"image_url": "https://example.com/portrait.jpg"
}
3. Age Transformation
age_infos is required — one entry per face, each carrying the target age.
POST /face/change-age
{
"image_url": "https://example.com/portrait.jpg",
"age_infos": [{ "age": 60 }]
}
4. Gender Swap
gender_infos is required. gender is 0 to turn a male face female, 1 for the reverse.
POST /face/change-gender
{
"image_url": "https://example.com/portrait.jpg",
"gender_infos": [{ "gender": 1 }]
}
5. Face Swap
Replace the face in the target image with the face from the source.
POST /face/swap
{
"source_image_url": "https://example.com/source-face.jpg",
"target_image_url": "https://example.com/target-person.jpg"
}
6. Cartoon Style
POST /face/cartoon
{
"image_url": "https://example.com/portrait.jpg"
}
7. Liveness Detection
POST /face/detect-live
{
"image_url": "https://example.com/face-photo.jpg"
}
Parameters
Common
| Parameter | Required | Description |
|---|---|---|
image_url | Yes (all except /face/swap) | Source face image URL |
/face/change-age
| Parameter | Required | Description |
|---|---|---|
age_infos | Yes | Array of { "age": <number> }, one per face. Omitting it returns 400 age_infos is required |
/face/change-gender
| Parameter | Required | Description |
|---|---|---|
gender_infos | Yes | Array of { "gender": 0|1 } — 0 male→female, 1 female→male. Each entry also accepts an optional face_rect |
/face/swap
| Parameter | Required | Description |
|---|---|---|
source_image_url | Yes | URL of the face to use (replaces the face) |
target_image_url | Yes | URL of the image to put the face onto |
callback_url | No | Webhook URL for async delivery |
timeout | No | Max wait time in seconds (default: 120) |
/face/beautify
| Parameter | Required | Description |
|---|---|---|
image_url | Yes | Image URL |
smoothing | No | Skin smoothing 0–100 (default: 10) |
whitening | No | Whitening 0–100 (default: 30) |
face_lifting | No | Face slimming 0–100 (default: 70) |
eye_enlarging | No | Eye enlarging 0–100 (default: 70) |
/face/analyze
| Parameter | Required | Description |
|---|---|---|
image_url | Yes | Image URL |
mode | No | 0 = all faces (default), 1 = largest face only |
face_model_version | No | Algorithm version (recommended: 3.0) |
need_rotate_detection | No | 0 = disabled (default), 1 = enabled |
Gotchas
- All face APIs return results synchronously.
/face/swapadditionally supports an optionalcallback_urlparameter for async delivery (pass it to receive the result via webhook instead of waiting inline) - Face analyze returns 90+ keypoints per detected face, supporting multiple faces in one image
- Face swap uses
source_image_url(the face to apply) andtarget_image_url(the body to apply it to) - All APIs are currently in Alpha stage — interfaces may evolve
- Images should contain clearly visible, front-facing faces for best results
- Liveness detection helps distinguish live photos from printed/screen photos
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.