Inpainting de zones Midjourney
curl --request POST \
--url https://api.highwayapi.ai/v3/async/mj-inpaint \
--header 'Authorization: <authorization>' \
--header 'Content-Type: <content-type>' \
--data '
{
"image_no": 123,
"task_id": "<string>",
"remix_prompt": "<string>",
"mask": {
"url": "<string>",
"areas": [
{
"points": [
123
],
"width": 123,
"height": 123
}
]
},
"area": {
"points": [
123
],
"width": 123,
"height": 123
}
}
'import requests
url = "https://api.highwayapi.ai/v3/async/mj-inpaint"
payload = {
"image_no": 123,
"task_id": "<string>",
"remix_prompt": "<string>",
"mask": {
"url": "<string>",
"areas": [
{
"points": [123],
"width": 123,
"height": 123
}
]
},
"area": {
"points": [123],
"width": 123,
"height": 123
}
}
headers = {
"Content-Type": "<content-type>",
"Authorization": "<authorization>"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': '<content-type>', Authorization: '<authorization>'},
body: JSON.stringify({
image_no: 123,
task_id: '<string>',
remix_prompt: '<string>',
mask: {url: '<string>', areas: [{points: [123], width: 123, height: 123}]},
area: {points: [123], width: 123, height: 123}
})
};
fetch('https://api.highwayapi.ai/v3/async/mj-inpaint', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.highwayapi.ai/v3/async/mj-inpaint",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'image_no' => 123,
'task_id' => '<string>',
'remix_prompt' => '<string>',
'mask' => [
'url' => '<string>',
'areas' => [
[
'points' => [
123
],
'width' => 123,
'height' => 123
]
]
],
'area' => [
'points' => [
123
],
'width' => 123,
'height' => 123
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: <authorization>",
"Content-Type: <content-type>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.highwayapi.ai/v3/async/mj-inpaint"
payload := strings.NewReader("{\n \"image_no\": 123,\n \"task_id\": \"<string>\",\n \"remix_prompt\": \"<string>\",\n \"mask\": {\n \"url\": \"<string>\",\n \"areas\": [\n {\n \"points\": [\n 123\n ],\n \"width\": 123,\n \"height\": 123\n }\n ]\n },\n \"area\": {\n \"points\": [\n 123\n ],\n \"width\": 123,\n \"height\": 123\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "<content-type>")
req.Header.Add("Authorization", "<authorization>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.highwayapi.ai/v3/async/mj-inpaint")
.header("Content-Type", "<content-type>")
.header("Authorization", "<authorization>")
.body("{\n \"image_no\": 123,\n \"task_id\": \"<string>\",\n \"remix_prompt\": \"<string>\",\n \"mask\": {\n \"url\": \"<string>\",\n \"areas\": [\n {\n \"points\": [\n 123\n ],\n \"width\": 123,\n \"height\": 123\n }\n ]\n },\n \"area\": {\n \"points\": [\n 123\n ],\n \"width\": 123,\n \"height\": 123\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.highwayapi.ai/v3/async/mj-inpaint")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = '<content-type>'
request["Authorization"] = '<authorization>'
request.body = "{\n \"image_no\": 123,\n \"task_id\": \"<string>\",\n \"remix_prompt\": \"<string>\",\n \"mask\": {\n \"url\": \"<string>\",\n \"areas\": [\n {\n \"points\": [\n 123\n ],\n \"width\": 123,\n \"height\": 123\n }\n ]\n },\n \"area\": {\n \"points\": [\n 123\n ],\n \"width\": 123,\n \"height\": 123\n }\n}"
response = http.request(request)
puts response.read_body{
"task_id": "<string>"
}Images
Inpainting de zones Midjourney
POST
/
v3
/
async
/
mj-inpaint
Inpainting de zones Midjourney
curl --request POST \
--url https://api.highwayapi.ai/v3/async/mj-inpaint \
--header 'Authorization: <authorization>' \
--header 'Content-Type: <content-type>' \
--data '
{
"image_no": 123,
"task_id": "<string>",
"remix_prompt": "<string>",
"mask": {
"url": "<string>",
"areas": [
{
"points": [
123
],
"width": 123,
"height": 123
}
]
},
"area": {
"points": [
123
],
"width": 123,
"height": 123
}
}
'import requests
url = "https://api.highwayapi.ai/v3/async/mj-inpaint"
payload = {
"image_no": 123,
"task_id": "<string>",
"remix_prompt": "<string>",
"mask": {
"url": "<string>",
"areas": [
{
"points": [123],
"width": 123,
"height": 123
}
]
},
"area": {
"points": [123],
"width": 123,
"height": 123
}
}
headers = {
"Content-Type": "<content-type>",
"Authorization": "<authorization>"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': '<content-type>', Authorization: '<authorization>'},
body: JSON.stringify({
image_no: 123,
task_id: '<string>',
remix_prompt: '<string>',
mask: {url: '<string>', areas: [{points: [123], width: 123, height: 123}]},
area: {points: [123], width: 123, height: 123}
})
};
fetch('https://api.highwayapi.ai/v3/async/mj-inpaint', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.highwayapi.ai/v3/async/mj-inpaint",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'image_no' => 123,
'task_id' => '<string>',
'remix_prompt' => '<string>',
'mask' => [
'url' => '<string>',
'areas' => [
[
'points' => [
123
],
'width' => 123,
'height' => 123
]
]
],
'area' => [
'points' => [
123
],
'width' => 123,
'height' => 123
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: <authorization>",
"Content-Type: <content-type>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.highwayapi.ai/v3/async/mj-inpaint"
payload := strings.NewReader("{\n \"image_no\": 123,\n \"task_id\": \"<string>\",\n \"remix_prompt\": \"<string>\",\n \"mask\": {\n \"url\": \"<string>\",\n \"areas\": [\n {\n \"points\": [\n 123\n ],\n \"width\": 123,\n \"height\": 123\n }\n ]\n },\n \"area\": {\n \"points\": [\n 123\n ],\n \"width\": 123,\n \"height\": 123\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "<content-type>")
req.Header.Add("Authorization", "<authorization>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.highwayapi.ai/v3/async/mj-inpaint")
.header("Content-Type", "<content-type>")
.header("Authorization", "<authorization>")
.body("{\n \"image_no\": 123,\n \"task_id\": \"<string>\",\n \"remix_prompt\": \"<string>\",\n \"mask\": {\n \"url\": \"<string>\",\n \"areas\": [\n {\n \"points\": [\n 123\n ],\n \"width\": 123,\n \"height\": 123\n }\n ]\n },\n \"area\": {\n \"points\": [\n 123\n ],\n \"width\": 123,\n \"height\": 123\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.highwayapi.ai/v3/async/mj-inpaint")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = '<content-type>'
request["Authorization"] = '<authorization>'
request.body = "{\n \"image_no\": 123,\n \"task_id\": \"<string>\",\n \"remix_prompt\": \"<string>\",\n \"mask\": {\n \"url\": \"<string>\",\n \"areas\": [\n {\n \"points\": [\n 123\n ],\n \"width\": 123,\n \"height\": 123\n }\n ]\n },\n \"area\": {\n \"points\": [\n 123\n ],\n \"width\": 123,\n \"height\": 123\n }\n}"
response = http.request(request)
puts response.read_body{
"task_id": "<string>"
}Utilisez la fonctionnalité d’inpainting de zones de Midjourney pour redessiner des zones spécifiques d’une image déjà générée. La zone à redessiner peut être spécifiée à l’aide d’une région polygonale ou d’une image de masque en noir et blanc. Cette interface utilise un traitement asynchrone ; le client doit interroger le résultat final généré à l’aide du task_id.
En-têtes de requête
string
requis
Valeur d’énumération :
application/jsonstring
requis
Format d’authentification Bearer : Bearer {{API Key}}.
Corps de la requête
integer
requis
Numéro de l’image, utilisé pour spécifier l’image sur laquelle effectuer l’inpainting de zone.Plage de valeurs : 0~3
string
requis
Identifiant unique de la tâche de génération de l’image d’origine.
string
Prompt de la zone à redessiner, utilisé pour décrire le contenu attendu dans la zone redessinée.Limite de longueur : 1 à 8192 caractères.
object
requis
Configuration de la zone de dessin, remplaçant le paramètre area, avec prise en charge de l’inpainting de plusieurs zones. Vous devez choisir entre areas et url.
Afficher Propriétés
Afficher Propriétés
string
Spécifie les régions polygonales à l’aide d’une image binaire noir et blanc ; prend en charge la spécification de plusieurs zones, les zones blanches étant les zones à redessiner.
object[]
Tableau de régions polygonales, prenant en charge la spécification de plusieurs zones.
Afficher Propriétés InpaintArea
Afficher Propriétés InpaintArea
number[]
requis
Tableau des points de coordonnées de la région polygonale, avec le coin supérieur gauche comme origine, organisés dans le sens horaire et au format XYXY.
float
requis
Largeur de l’image en pixels.Plage de valeurs : 500~4096
float
requis
Hauteur de l’image en pixels.Plage de valeurs : 500~4096
object
requis
Configuration d’une région polygonale unique (à utiliser au choix avec le paramètre mask).
Afficher Propriétés
Afficher Propriétés
number[]
requis
Tableau des points de coordonnées de la région polygonale, avec le coin supérieur gauche comme origine, organisés dans le sens horaire et au format XYXY.
float
requis
Largeur de l’image en pixels.Plage de valeurs : 500~4096
float
requis
Hauteur de l’image en pixels.Plage de valeurs : 500~4096
Paramètres de réponse
string
requis
Le task_id de la tâche asynchrone. Vous devez utiliser ce task_id pour appeler l’API de requête du résultat de tâche afin d’obtenir le résultat généré
⌘I