Search K
Are you an LLM? You can read better optimized documentation at /vi/tools/image/ai-canvas-expand.md for this page in Markdown format
AI Canvas Expand
Mở rộng canvas của một hình ảnh bằng cách lấp đầy dựa trên AI (outpainting). Kéo dài hình ảnh theo mọi hướng và lấp đầy các vùng mới bằng nội dung do AI tạo ra khớp với hình ảnh hiện có.
API Endpoint
POST /api/v1/tools/image/ai-canvas-expand
Xử lý: Bất đồng bộ (trả về 202, hỏi vòng /api/v1/jobs/{jobId}/progress để lấy trạng thái qua SSE)
Gói mô hình: object-eraser-colorize (1-2 GB)
Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| file | file | Yes | - | Tệp hình ảnh (multipart) |
| extendTop | integer | No | 0 | Số pixel kéo dài ở phía trên |
| extendRight | integer | No | 0 | Số pixel kéo dài ở bên phải |
| extendBottom | integer | No | 0 | Số pixel kéo dài ở phía dưới |
| extendLeft | integer | No | 0 | Số pixel kéo dài ở bên trái |
| tier | string | No | "balanced" | Cấp chất lượng: fast, balanced, high |
| format | string | No | "auto" | Định dạng đầu ra: auto, png, jpg, jpeg, webp, tiff, gif, avif, heic, heif, jxl |
| quality | integer | No | 95 | Chất lượng đầu ra (1-100) |
Ít nhất một hướng kéo dài phải lớn hơn 0.
Example Request
bash
curl -X POST http://localhost:1349/api/v1/tools/image/ai-canvas-expand \
-F "[email protected]" \
-F 'settings={"extendTop":200,"extendBottom":200,"extendLeft":100,"extendRight":100,"tier":"balanced"}'Response
Initial Response (202 Accepted)
json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"async": true
}Progress (SSE at /api/v1/jobs/{jobId}/progress)
event: progress
data: {"phase":"processing","stage":"Expanding canvas...","percent":50}Final Result (via SSE)
json
{
"phase": "complete",
"percent": 100,
"result": {
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/{jobId}/photo_extended.png",
"previewUrl": "/api/v1/download/{jobId}/preview.webp",
"originalSize": 300000,
"processedSize": 520000
}
}Notes
- Yêu cầu cài đặt gói mô hình
object-eraser-colorize(1-2 GB). - Sử dụng outpainting dựa trên LaMa để tạo nội dung cho các vùng đã mở rộng.
- Tham số
tierđánh đổi tốc độ lấy chất lượng:fasttạo kết quả nhanh nhưng có thể có nhiễu,highmất nhiều thời gian hơn nhưng tạo ra phần lấp đầy mượt mà, mạch lạc hơn. - Giá trị kéo dài tính bằng pixel. Kích thước hình ảnh cuối cùng sẽ là: chiều rộng gốc + extendLeft + extendRight nhân chiều cao gốc + extendTop + extendBottom.
- Với các định dạng đầu ra không thể xem trước trên trình duyệt (HEIC, JXL, TIFF), một bản xem trước WebP được tạo cùng với đầu ra chính.
- Hỗ trợ các định dạng đầu vào HEIC/HEIF, RAW, TGA, PSD, EXR và HDR thông qua giải mã tự động.
