Image to Image SD 1.5
Stable Diffusion 1.5's image-to-image capability allows you to modify or transform existing images using text descriptions. It's like having a digital paintbrush that can be guided by your words.
- Python
- JavaScript
- php
import requests
import json
url = "https://api.imagepipeline.io/sd/image2image/v1"
headers = {
"API-Key": "Your API Key"
}
data = {
"model_id": "sd1.5",
"prompt": "gingerbread house with fairy lights and realistic finish, 8k quality",
"negative_prompt": "error, cropped, worst quality, low quality, duplicate, extra fingers, mutated hands, poorly drawn hands, poorly drawn face, deformed, blurry, bad anatomy, bad proportions, extra limbs, cloned face, disfigured, missing arms, missing legs, extra arms, extra legs, fused fingers, too many fingers, long neck",
"num_inference_steps": 30,
"refiner": false,
"samples": 1,
"guidance_scale": 7.5,
"width": 512,
"height": 512,
"init_image": "https://docs.imagepipeline.io/img/cottage.png",
"seed": 12345,
"scheduler": "UniPCMultistepScheduler",
"safety_checker": true
}
response = requests.post(url, headers=headers, data=json.dumps(data))
print(response.json())
const url = "https://api.imagepipeline.io/sd/image2image/v1";
const headers = {
"API-Key": "Your API Key",
"Content-Type": "application/json"
};
const data = {
"model_id": "sd1.5",
"prompt": "gingerbread house with fairy lights and realistic finish, 8k quality",
"negative_prompt": "error, cropped, worst quality, low quality, duplicate, extra fingers, mutated hands, poorly drawn hands, poorly drawn face, deformed, blurry, bad anatomy, bad proportions, extra limbs, cloned face, disfigured, missing arms, missing legs, extra arms, extra legs, fused fingers, too many fingers, long neck",
"num_inference_steps": 30,
"refiner": false,
"samples": 1,
"guidance_scale": 7.5,
"width": 512,
"height": 512,
"init_image": "https://docs.imagepipeline.io/img/cottage.png",
"seed": 12345,
"scheduler": "UniPCMultistepScheduler",
"safety_checker": true
};
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(data)
})
.then(response => response.json())
.then(data => console.log(data))
.catch((error) => console.error('Error:', error));
<?php
$url = "https://api.imagepipeline.io/sd/image2image/v1";
$headers = array(
"API-Key: Your-API-Key",
"Content-Type: application/json"
);
$data = array(
"model_id" => "sd1.5",
"prompt" => "gingerbread house with fairy lights and realistic finish, 8k quality",
"negative_prompt" => "error, cropped, worst quality, low quality, duplicate, extra fingers, mutated hands, poorly drawn hands, poorly drawn face, deformed, blurry, bad anatomy, bad proportions, extra limbs, cloned face, disfigured, missing arms, missing legs, extra arms, extra legs, fused fingers, too many fingers, long neck",
"num_inference_steps" => 30,
"samples" => 1,
"guidance_scale" => 7.5,
"width" => 512,
"height" => 512,
"init_image"=> "https://docs.imagepipeline.io/img/cottage.png",
"seed" => 12345,
"scheduler"=> "UniPCMultistepScheduler",
"safety_checker" => true
);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
$response = curl_exec($ch);
if($response === FALSE){
die(curl_error($ch));
}
$responseData = json_decode($response, TRUE);
curl_close($ch);
var_dump($responseData);
?>
JSON Parameters
Parameter | Permissible values | Notes |
---|---|---|
model_id | str | model_id can be found in models page. Filter by SD-1.5 models |
prompt | str, 75 tokens | Check our Prompt Guide for tips |
negative_prompt | str, 75 tokens | Check our Prompt Guide for tips |
num_inference_steps | int, [1-100] | Noise is removed with each step, resulting in a higher-quality image over time. Ideal value 20-30 |
strength | float, [0-1] | Optional denoise strength |
samples | int, [1-4] | Generates a maximum of 4 samples per API call |
guidance_scale | float, [1-20] | Higher guidance scale prioritizes text prompt relevance but sacrifices image quality. Ideal value 7.5-12.5 |
width | int | Width in pixels. Lower than or equal to 512 for best results |
height | int | Height in pixels. Lower than or equal to 512 for best results |
init_image | str | Add a publicly available link to the image you want to edit |
seed | int | Controlling the seed can help you generate reproducible images |
safety_checker | boolean | Checks for NSFW images and filters explicit images |
Status
Your response will include a status
.
- If the
status
=SUCCESS
, you will also havedownload_urls
that will have the links to your generated image based on the number of samples you have entered. The maximum number of samples that can be generated is 4. - If the
status
=PENDING
, you will receive aid
. You can use the status endpoint to fetch your image using theid
. - If the
status
=FAILURE
, you will receive only an error message.
Endpoint:
https://api.imagepipeline.io/sd/image2image/v1/status/{{id}}
Pass the API-Key as the authorization in the header.