# フェイスリフト

# 概要
AI フェイスリフトでは、顔の補正を行います。顔の構造、肌の質感、比率を分析して画像を再構築します。
目の下のクマ、頬、額、顔全体の形状、口などの顔の領域を 0 から 100 の数値で調整できます。
SNS、プロフィール写真、クリエイティブコンテンツ、ビジネス用途で使えます。
![](https://bcw-media.s3.ap-northeast-1.amazonaws.com/01_1_6c0d97eb51.jpg)
![](https://bcw-media.s3.ap-northeast-1.amazonaws.com/01_2_8c428a25dc.jpg)
## 統合ガイド
このガイドでは、以下を説明します。
AI フェイスリフト API のワークフロー:
**エンドポイント:** `/s2s/v2.0/task/face-lift`
**認証必須:** `Authorization: Bearer YOUR_API_KEY`
**ワークフローの手順:**
1. **画像アップロードの準備:**

- アップロード用のセルフィー画像を準備します。
- File API
`/s2s/v2.0/file`
 を呼び出して、アップロード URL と関連する
`file_id`
 を取得します。
- 提供されたアップロード URL を使用してセルフィー画像をアップロードします。

1. **複数顔がある場合のオプションの前処理:**
  - 画像内に複数の顔が含まれている場合は、セルフィー画像を前処理します。
2. **フェイスリフト効果の設定:**
  - まず、適切なフェイスリフトパラメータを選択します。
3. **AI タスクの開始とタスク ID の取得:**
  - 選択した効果設定とともに
`file_id`
 を HTTP POST リクエストで
`/s2s/v2.0/task/face-lift`
 に送信します。
  - この操作を識別するための一意なタスク ID をレスポンスで待ちます。
4. **タスクステータスのポーリング（継続的な確認）:**
  - 取得した
`task_id`
 を使用して、HTTP GET リクエスト（例:
`GET /s2s/v2.0/task/face-lift${task_id}`
）で定期的にタスクステータスをポーリングします。
  - 以下を継続的に監視します:
    - `Task_status = "success"`
 （処理完了）。
    - `Task_status = "error"`
 （該当する場合、解決または再試行）。
  - ステータスが success に遷移したら、ワークフローを適切に更新します。



---

1. 認証
  - リクエストヘッダーに
**Bearer トークン**
 を使用して API キーを含めます:

```
Authorization: Bearer YOUR_API_KEY
```
API キーの確認場所: https://yce.makeupar.com/api-console/en/api-keys/.
2. 画像のアップロード
サーバーにファイルを直接アップロードするか、AI タスクペイロードに有効な画像 URL を指定できます。
  * アップロードエンドポイント

```
POST /s2s/v2.0/file
```
すでに公開画像 URL がある場合は、この手順をスキップできます。



---

1. 前処理により補正対象の顔を選択する
  * 前処理 API の呼び出し
ピクセル座標で検出されたバウンディングボックスを出力します。後で Face Lift AI タスクを作成するために、結果のインデックスを使用します。

```
POST /s2s/v2.0/task/face-lift/pre-process
```

```
{
    "timed": number,
    "result": [
        {
            "left": number,
            "top": number,
            "width": number,
            "height": number
        }
    ]
}
```
2. Face Lift AI タスクの作成と結果のポーリング
画像と完全な効果ペイロードが準備できたら、タスクを作成します。API はリクエストを非同期で処理します。ステータスが `success` または `error` になるまでタスクステータスをポーリングする必要があります。
  * タスク作成エンドポイント

```
POST /s2s/v2.0/task/face-lift
```
  * ポーリングエンドポイント

```
GET /s2s/v2.0/task/face-lift/{task_id}
```



---

## ファイル仕様とエラー
* AI フェイスリフト仕様

**対応セルフィービュー**
画像は 1920 x 1920 以下で、長辺が 640 のときに 32 x 32 ピクセルを超える十分なサイズの顔がはっきりと写っており、ロール角度がプラスマイナス 75 度以内、ヨー角度がプラスマイナス 90 度以内で撮影されている必要があります。
![](https://plugins-media.makeupar.com/strapi/assets/thumbnail_face_reshape_01_85c8ffc055.jpg)


---

* 対応フォーマットと寸法

| AI 機能 | 対応寸法 | 対応ファイルサイズ | 対応フォーマット |
|  --- | --- | --- | --- |
| AI フェイスリフト | 長辺 <= 1920 | < 10MB | jpg/jpeg/png |

* エラーコード

| エラーコード | 説明 |
|  --- | --- |
| RUNTIME_ERROR | フェイスリフトの実行中に予期しないエラーが発生しました |
| PHOTO_DETECTION_FAIL | ユーザー写真を正しく処理できませんでした。例えば、手が検出されませんでした |
| OBJECT_DETECTION_FAIL | オブジェクト写真を正しく処理できませんでした。例えば、製品が検出されませんでした |
| PHOTO_CHECK_INVALID | ユーザー写真のポーズまたはサイズが無効です |
| INPUT_ERROR | 入力ファイルフォーマットが正しくありません |
| INPUT_MAIN_IMAGE_EMPTY | ユーザー画像が必要です |

* 環境と依存関係

| サンプルコード言語 / ツール | 推奨ランタイムバージョン |
|  --- | --- |
| cURL | - bash >= 3.2   - curl >= 7.58 (モダンな TLS/HTTP サポート)   - jq >= 1.6 (堅牢な JSON パーシング) |
| Node.js (JavaScript) | Node >= 18 (グローバル fetch 用) |
| JavaScript | - Chrome / Edge >= 80   - Firefox >= 74   - Safari >= 13.1 |
| PHP | PHP >= 7.4 (モダンな TLS/互換性用), ext-curl (推奨) または allow_url_fopen=On + ext-openssl, ext-json |
| Python | Python >= 3.10 (f-strings 用), requests >= 2.20.0 |
| Java | Java 11+ (HttpClient 用), Jackson Databind >= 2.12.0 |



---

## JS Camera Kit


---

## ユニット消費量
| AI 機能 | 消費ユニット |
|  --- | --- |
| AI フェイスリフト V1.0 | 1 |



---

License: Privacy policy

## Servers

```
https://yce-api-01.makeupar.com
```

## Security

### BearerAuthenticationV2

標準の「Bearer 認証」を使用します。ヘッダーに `Authorization:Bearer YOUR_API_KEY` の形式で「API キー」を設定してください。`Bearer` と `YOUR_API_KEY` の間に半角スペースがある点にご注意ください。

Type: http
Scheme: bearer

## Download OpenAPI description

 - [フェイスリフト](https://docs.perfectcorp.com/_bundle/@l10n/ja/reference/ai_face_lift.yaml)

## V1.0

 - [POST /s2s/v2.0/task/face-lift/pre-process](https://docs.perfectcorp.com/ja/reference/ai_face_lift/v1.0/paths/~1s2s~1v2.0~1task~1face-lift~1pre-process/post.md): ソース画像に複数の有効なターゲットが含まれる可能性がある場合、またはエフェクトを適用する検出ターゲットを明示的に選びたい場合は、前処理タスクを使います。単一ターゲットの画像では、機能がデフォルトの `index` 値をサポートしているため、手動でのターゲット選択が不要な場合は前処理をスキップできます。 前処理タスクは、ソース画像内の候補ターゲットを検出し、その座標を `data.results.r
 - [GET /s2s/v2.0/task/face-lift/pre-process/{task_id}](https://docs.perfectcorp.com/ja/reference/ai_face_lift/v1.0/paths/~1s2s~1v2.0~1task~1face-lift~1pre-process~1%7Btask_id%7D/get.md)
 - [POST /s2s/v2.0/task/face-lift](https://docs.perfectcorp.com/ja/reference/ai_face_lift/v1.0/paths/~1s2s~1v2.0~1task~1face-lift/post.md): AI タスクは非同期です。機能ごとに Webhook がサポートされている場合は、Webhook による完了処理を優先します。Webhook エンドポイントを設定し、Webhook 署名を検証したうえで、`success` または `error` の通知が来たら、受け取った `task_id` を使ってタスクの結果を照会します。設定と検証の詳細は [Webhook 統合ガイド](/develop/
 - [GET /s2s/v2.0/task/face-lift/{task_id}](https://docs.perfectcorp.com/ja/reference/ai_face_lift/v1.0/paths/~1s2s~1v2.0~1task~1face-lift~1%7Btask_id%7D/get.md)
