跳转到主要内容
图片超分能提升现有图像的分辨率与视觉质量。向 /image/upscale 发送一张 base64 编码的图片,选择缩放倍数,Venice 就会以二进制形式返回增强后的图片。 当你已经拥有一张图片,只需要更高分辨率的输出时,可使用图片超分。如果你需要根据提示词生成图片,请使用 图片生成;如果需要修改图片内容,请使用 图片编辑

基本用法

import base64
import os
from pathlib import Path

import requests

image_base64 = base64.b64encode(Path("input.jpg").read_bytes()).decode("utf-8")

response = requests.post(
    "https://api.venice.ai/api/v1/image/upscale",
    headers={
        "Authorization": f"Bearer {os.environ['VENICE_API_KEY']}",
        "Content-Type": "application/json",
    },
    json={
        "image": image_base64,
        "scale": 2,
    },
)

response.raise_for_status()
Path("upscaled.png").write_bytes(response.content)
import { readFile, writeFile } from "node:fs/promises";

const image = await readFile("input.jpg");

const response = await fetch("https://api.venice.ai/api/v1/image/upscale", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.VENICE_API_KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    image: image.toString("base64"),
    scale: 2,
  }),
});

if (!response.ok) {
  throw new Error(await response.text());
}

const output = Buffer.from(await response.arrayBuffer());
await writeFile("upscaled.png", output);
IMAGE_BASE64=$(base64 < input.jpg | tr -d '\n')

curl https://api.venice.ai/api/v1/image/upscale \
  -H "Authorization: Bearer $VENICE_API_KEY" \
  -H "Content-Type: application/json" \
  -d "{
    \"image\": \"$IMAGE_BASE64\",
    \"scale\": 2
  }" \
  --output upscaled.png

参数

参数类型是否必填说明
imagestringBase64 编码的源图片。
scalenumber放大倍数。请使用 API 参考文档和模型目录中列出的受支持值。
响应是二进制图片数据,不是 JSON。请将响应体直接写入文件,或将其流式写入存储。

输入建议

  • 使用你所能获得的最清晰的源图片。超分能提升细节,但无法完全恢复原图中不存在的信息。
  • 在生产工作流中使用适中的放大倍数。过大的输出会增加延迟和文件体积。
  • 保留原始图片,以便对比质量或使用不同参数重试。

相关资源