# AI 牙齿美白

# 概览
**AI 牙齿美白接口**
AI 牙齿美白接口提供先进的自动化方案，把照片里的笑容打理得更出彩。它用智能图像处理，把牙齿自然、准确地提亮，几秒钟就出精致专业的效果。
![](https://plugins-media.makeupar.com/smb/blog/post/2023-07-28/f05fda4d-8ca8-4661-b4b5-135067280a10.jpg)
**它是怎么去掉照片里发黄牙齿的**
**智能美白**
接口会自动检测牙齿，套用看着自然的白牙效果，画面不会假。
**强度可调**
内置调节功能，美白程度由您掌握：从微微提亮，到上镜级的明显白皙。
**主要特性**
**又快又省事**
几秒钟就能让笑容明显更亮。
**AI 检测精准**
先进的检测只改动牙齿，整体观感真实、协调。
**美白强度可调**
按您喜欢的效果微调美白力度。
**先进算法，效果自然**
AI 牙齿美白接口采用精密算法，准确识别牙齿，套用出来的美白效果贴近真实。您可以微调强度，做出含蓄自然的改善，让最终效果看着真实、顺眼。


---

## 接入指南
* 拍一张自拍
  * 正对镜头，光线充足。
  * 也可以用 JS Camera Kit 拍照。
* 通过 ***/s2s/v2.0/file*** 接口取得上传 URL 与文件 ID
用 File 接口响应中返回的上传 URL 上传以下文件：
  * 您的自拍照片
* 执行 AI 任务 ***/s2s/v2.0/task/teeth-whiten***
用文件 ID 或图片 URL 作为输入源执行 AI 任务，特效参数按需要设置。
* 轮询任务状态
用返回的 **task_id** 监控任务进度。
轮询 **GET /s2s/v2.0/task/teeth-whiten/{task_id}** 查看引擎状态。
任务完成之前会一直处于 **“running”** 状态，这一阶段不消耗点数。
* **用法演示**

![](https://plugins-media.makeupar.com/smb/blog/post/2022-05-13/26c04462-d183-4392-937b-f6173ff9e814.jpg)
![](https://plugins-media.makeupar.com/smb/blog/post/2025-07-01/webp_a4cd3779-2966-4b8f-888e-032dffc003c0.webp)
![](https://plugins-media.makeupar.com/smb/blog/post/2025-11-13/webp_5824c85f-813e-4c14-b036-38cba206ee0b.webp)
## 文件规格与错误码
* 支持的格式与尺寸

| 类型 | 支持尺寸 | 支持文件大小 | 支持格式 |
|  --- | --- | --- | --- |
| AI 牙齿美白 | 自拍图片：    *   长边 ≤ 1920 px     *   短边 ≥ 320 px | < 10MB | jpg/png |

* 错误码

| 错误码 | 说明 |
|  --- | --- |
| error_exceed_max_image_size | 图片长边超过 1920 像素 |
| error_below_min_image_size | 图片宽或高小于 320 像素，尺寸过小，无法使用 |
| error_face_position_invalid | 脸部需完整可见，不能被裁掉一部分 |
| error_face_position_too_small | 照片中的人脸过小，无法准确分析 |
| error_face_position_out_of_boundary | 脸部过大，或部分超出照片边缘 |
| error_insufficient_lighting | 光线太暗，分析起来很困难 |
| error_face_angle_invalid | 脸部角度不太对。正脸拍摄时，头部偏离正向请在 10 度以内；侧脸拍摄时，角度应大于 15 度 |

* 运行环境与依赖

| 示例代码语言 / 工具 | 建议运行时版本 |
|  --- | --- |
| cURL | - bash >= 3.2   - curl >= 7.58 (modern TLS/HTTP support)   - jq >= 1.6 (robust JSON parsing) |
| Node.js (JavaScript) | Node >= 18 (for global fetch) |
| JavaScript | - Chrome / Edge >= 80   - Firefox >= 74   - Safari >= 13.1 |
| PHP | PHP >= 7.4 (for modern TLS/compat), ext-curl (recommended) or allow_url_fopen=On + ext-openssl, ext-json |
| Python | Python >= 3.10 (for f-strings), requests >= 2.20.0 |
| Java | Java 11+ (for HttpClient), Jackson Databind >= 2.12.0 |



---

## 点数消耗
| AI 功能 | 消耗点数 |
|  --- | --- |
| AI 牙齿美白 V1.0 | 1 |



---

License: Privacy policy

## Servers

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

## Security

### BearerAuthenticationV2

使用标准的 Bearer 鉴权。把您的 API 密钥放进请求头： `Authorization:Bearer YOUR_API_KEY`。请注意 'Bearer' 与 'YOUR_API_KEY' 之间有一个空格。

Type: http
Scheme: bearer

## Download OpenAPI description

 - [AI 牙齿美白](https://docs.perfectcorp.com/_bundle/@l10n/zh-CN/reference/ai_teeth_whitening.yaml)

## V1.0

 - [POST /s2s/v2.0/task/teeth-whiten/pre-process](https://docs.perfectcorp.com/zh-cn/reference/ai_teeth_whitening/v1.0/paths/~1s2s~1v2.0~1task~1teeth-whiten~1pre-process/post.md): 当源图中可能存在多个有效目标，或您的接入需要显式指定特效作用在哪个已检测目标上时，请使用预处理任务。若图片只有一个目标，且功能支持默认的 `index` 取值、您的应用也不需要手动挑选目标，这一步可以省略。 预处理任务会在源图中检测候选目标，并把它们的坐标返回在 `data.results.result` 中。结果数组里的每一项对应一个检测到的目标。请查看返回的坐标，与源图中您要处理的脸部或区域对
 - [GET /s2s/v2.0/task/teeth-whiten/pre-process/{task_id}](https://docs.perfectcorp.com/zh-cn/reference/ai_teeth_whitening/v1.0/paths/~1s2s~1v2.0~1task~1teeth-whiten~1pre-process~1%7Btask_id%7D/get.md)
 - [POST /s2s/v2.0/task/teeth-whiten](https://docs.perfectcorp.com/zh-cn/reference/ai_teeth_whitening/v1.0/paths/~1s2s~1v2.0~1task~1teeth-whiten/post.md): AI 任务是异步处理的。功能支持 Webhook 时，优先用 Webhook 来接收完成通知。配置好您的 Webhook 端点、校验 Webhook 签名，收到 `success` 或 `error` 通知后，用收到的 `task_id` 查询任务结果。配置与校验的细节请见 [Webhook 接入指南](/develop/webhook)。 若功能不支持 Webhook，或您的接入方式用不了 We
 - [GET /s2s/v2.0/task/teeth-whiten/{task_id}](https://docs.perfectcorp.com/zh-cn/reference/ai_teeth_whitening/v1.0/paths/~1s2s~1v2.0~1task~1teeth-whiten~1%7Btask_id%7D/get.md)
