Multi-immagine in 3D API è una funzione che consente di integrare le funzionalità Multi-immagine in 3D di Meshy nella tua applicazione. In questa sezione, troverai tutte le informazioni
necessarie per iniziare con questa API.
Questo endpoint ti consente di creare un nuovo task Multi-immagine in 3D. Fai riferimento a
L'oggetto Task Multi-immagine in 3D per vedere quali
proprietà sono incluse nell'oggetto task Multi-immagine in 3D.
Parametri
Solo uno tra input_task_id o image_urls è richiesto. Se entrambi sono forniti, input_task_id ha la priorità.
Name
input_task_id
Type
string
Obbligatorio
Description
L'ID di un task di generazione di immagini completato il cui output (1-4 immagini) deve essere utilizzato come input. Questo task deve essere uno dei seguenti task: Testo in immagine, Immagine in immagine, Testo in immagine Multi-vista o Immagine in immagine Multi-vista. Inoltre, deve essere stato eseguito tramite l'API e avere uno stato SUCCEEDED.
Name
image_urls
Type
array
Obbligatorio
Description
Fornisci da 1 a 4 immagini che Meshy utilizzerà per la creazione del modello. Attualmente supportiamo i formati .jpg, .jpeg e .png. Tutte le immagini devono raffigurare lo stesso oggetto da angolazioni diverse per ottenere i migliori risultati.
Ci sono due modi per fornire ciascuna immagine:
URL accessibile pubblicamente: Un URL accessibile da Internet
Data URI: Un URI dei dati codificato in base64 dell'immagine. Esempio di un Data URI: data:image/jpeg;base64,<your base64-encoded image data>.
Per meshy-7 (o latest), la prima immagine è utilizzata come vista principale (frontale). L'ordine delle immagini rimanenti non importa.
Name
ai_model
Type
string
predefinito latest
Description
ID del modello da utilizzare. Valori disponibili: meshy-5, meshy-6, meshy-7, latest (Meshy 7).
Name
should_texture
Type
boolean
predefinito true
Description
Determina se vengono generate texture. Impostarlo su false salta la fase di texturizzazione, fornendo un mesh senza texture.
Si applica solo quando should_texture = true
Name
enable_pbr
Type
boolean
predefinito false
Description
Genera mappe PBR (metallic, roughness, normal) in aggiunta al colore base. Una mappa di emissione viene inclusa quando ai_model è meshy-6, con l'eccezione di texture_resolution: 8k. meshy-7 e latest non producono una mappa di emissione.
Name
texture_resolution
Type
string
predefinito 2k
Description
Risoluzione del colore base della texture. Può essere 2k (2048×2048), 4k (4096×4096) o 8k (8192×8192). Risoluzioni più alte catturano più dettagli di superficie.
4k e 8k richiedono ai_modelmeshy-6, meshy-7 o latest. A 8k, non viene prodotta alcuna mappa di emissione.
Name
hd_texture
Type
boolean
⚠ deprecato
predefinito false
Description
Usa texture_resolution invece — equivalente a texture_resolution: "4k". Quando entrambi sono impostati, texture_resolution ha la precedenza.
Name
texture_prompt
Type
string
Description
Fornisci un prompt testuale per guidare il processo di texturizzazione. Massimo 600 caratteri.
Name
texture_image_url
Type
string
Description
Fornisci un'immagine 2D per guidare il processo di texturizzazione. Attualmente supportiamo i formati .jpg, .jpeg e .png.
Ci sono due modi per fornire l'immagine:
URL accessibile pubblicamente: Un URL accessibile da Internet
Data URI: Un URI dei dati codificato in base64 dell'immagine. Esempio di un Data URI: data:image/jpeg;base64,<your base64-encoded image data>
La texturizzazione dell'immagine potrebbe non funzionare in modo ottimale se ci sono differenze sostanziali di geometria tra l'asset originale e l'immagine caricata. Solo uno tra texture_image_url o texture_prompt può essere usato per guidare il processo di texturizzazione. Se entrambi i parametri sono forniti, allora texture_prompt verrà utilizzato per texturizzare il modello per impostazione predefinita.
Name
should_remesh
Type
boolean
predefinito false (meshy-6), true (others)
Description
Controlla se abilitarlo fase di Remesh. Per il modello di massima qualità, consigliamo di impostare should_remesh su false.
Si applica solo quando should_remesh = true
Name
topology
Type
string
predefinito triangle
Description
Specificare la topologia del modello generato.
Valori disponibili:
quad: Generare un mesh a predominanza di quad.
triangle: Generare un mesh di triangoli decimato.
Name
target_polycount
Type
integer
predefinito 30,000
Description
Specificare il conteggio poligoni obiettivo per il modello generato. Il numero effettivo di poligoni può deviare dall'obiettivo a seconda della complessità della geometria.
Il valore valido varia a seconda del livello utente:
da 100 a 300.000 (incluso)
Name
decimation_mode
Type
integer
Description
Abilita la decimazione adattativa impostando un livello di conteggio poligoni. Quando impostato, target_polycount viene ignorato.
Valori disponibili:
1: Adattivo — conteggio ultra alto di poligoni.
2: Adattivo — conteggio alto di poligoni.
3: Adattivo — conteggio medio di poligoni.
4: Adattivo — conteggio basso di poligoni.
Name
save_pre_remeshed_model
Type
boolean
predefinito false
Description
Quando impostato su true, Meshy memorizza anche un file GLB extra prima che la fase di remesh sia completata.
Name
symmetry_mode
Type
string
⚠ deprecato
predefinito auto
Description
Deprecato. Questo parametro non influisce più sull'output.
Il campo symmetry_mode controlla il comportamento della simmetria durante il processo di generazione del modello.
I valori validi sono:
off: Disabilita la simmetria.
auto: Determina e applica automaticamente la simmetria basata sulla geometria dell'input.
on: Impone la simmetria durante la generazione.
Name
pose_mode
Type
string
predefinito ""
Description
Specificare la modalità posa per il modello generato.
Usa pose_mode invece. Se generare il modello in posa A/T.
Name
image_enhancement
Type
boolean
predefinito true
Description
Ottimizza le immagini di input per risultati migliori. Impostare su false per preservare l'aspetto esatto delle immagini di input senza alcun trattamento stilistico.
Supportato solo quando ai_model è meshy-6, meshy-7 o latest.
Name
remove_lighting
Type
boolean
predefinito true
Description
Rimuove i riflessi e le ombre dalla texture del colore base, producendo un risultato più pulito che funziona meglio sotto configurazioni di illuminazione personalizzate.
Supportato solo quando ai_model è meshy-6, meshy-7 o latest.
Name
moderation
Type
boolean
predefinito false
Description
Quando impostato su true, il contenuto di input verrà automaticamente sottoposto a screening per rilevare potenziali contenuti dannosi. Se viene rilevato contenuto dannoso, il task non procederà alla generazione.
Ogni immagine da image_urls e il testo da texture_prompt verranno analizzati.
Name
target_formats
Type
string[]
Description
Specifica quali formati di file 3D includere nell'output. Solo i formati richiesti verranno generati e restituiti, il che può ridurre il tempo di completamento del task.
Valori disponibili: glb, obj, fbx, stl, usdz, 3mf
Quando non specificato, vengono generati tutti i formati eccetto 3mf. 3mf viene incluso solo quando richiesto esplicitamente.
Name
auto_size
Type
boolean
predefinito false
Description
Quando impostato su true, il servizio utilizza la visione AI per stimare automaticamente l'altezza reale dell'oggetto e ridimensionare il modello di conseguenza. L'origine verrà impostata su bottom a meno che origin_at non sia stato impostato esplicitamente.
Name
alpha_thumbnail
Type
boolean
predefinito false
Description
Quando impostato su true, il task fornisce anche una versione di anteprima con sfondo trasparente (RGBA) e la restituisce come alpha_thumbnail_url nella risposta GET. Il campo thumbnail_url esistente resta invariato.
Name
multi_view_thumbnails
Type
boolean
predefinito false
Description
Quando impostato su true, il task fornisce anche quattro miniature di visualizzazione cardinali (frontale, destra, retro, sinistra) e le restituisce sotto thumbnail_urls nella risposta GET. Il campo thumbnail_url esistente resta invariato e continua a puntare alla visuale frontale, quindi i client esistenti non sono interessati.
Aggiunge circa 3 secondi alla latenza del task.
Si applica solo quando auto_size = true
Name
origin_at
Type
string
predefinito bottom
Description
Posizione dell'origine quando auto_size è abilitato. Valori disponibili: bottom, center.
Valori di Ritorno
La proprietà result della risposta contiene l'id del task del task Multi-immagine in 3D appena creato.
Modalità di Errore
Name
400 - Richiesta errata
Description
La richiesta non è accettabile. Cause comuni:
Parametro mancante: Devono essere forniti image_urls o input_task_id.
Task di input non valido: Il input_task_id deve fare riferimento a un task di testo in immagine, immagine in immagine o variante multi-vista con stato SUCCEEDED.
Conteggio immagini non valido: image_urls deve contenere tra 1 e 4 immagini.
Formato immagine non valido: Una o più immagini in image_urls non sono formati supportati.
URL non raggiungibile: Uno o più image_urls non potrebbero essere scaricati.
Name
401 - Non autorizzato
Description
Autenticazione fallita. Verifica la tua chiave API.
Name
402 - Pagamento richiesto
Description
Crediti insufficienti per eseguire questo task.
Name
429 - Troppe richieste
Description
Hai superato il tuo limite di frequenza.
Richiesta
POST
/openapi/v1/multi-image-to-3d
# Richiesta semplicecurlhttps://api.meshy.ai/openapi/v1/multi-image-to-3d \-XPOST \-H"Authorization: Bearer ${YOUR_API_KEY}" \-H'Content-Type: application/json' \-d'{ "image_urls": [ "<your publicly accessible image url or base64-encoded data URI>", "<your second publicly accessible image url or base64-encoded data URI>" ] }'# Con texturing PBR e formato GLBcurlhttps://api.meshy.ai/openapi/v1/multi-image-to-3d \-XPOST \-H"Authorization: Bearer ${YOUR_API_KEY}" \-H'Content-Type: application/json' \-d'{ "image_urls": [ "<your publicly accessible image url or base64-encoded data URI>", "<your second publicly accessible image url or base64-encoded data URI>" ], "should_texture": true, "enable_pbr": true, "target_formats": ["glb"] }'
Questo endpoint ti consente di recuperare un task Multi-immagine in 3D dato un id del task valido.
Fai riferimento a L'oggetto Task Multi-immagine in 3D per vedere quali
proprietà sono incluse nell'oggetto task Multi-immagine in 3D.
Parametri
Name
id
Type
path
Description
Identificativo unico per il task Multi-immagine in 3D da recuperare.
Questo endpoint trasmette aggiornamenti in tempo reale per un task Multi-immagine in 3D utilizzando gli eventi inviati dal server (Server-Sent Events, SSE).
Parametri
Name
id
Type
path
Description
Identificativo unico per il task Multi-immagine in 3D da trasmettere.
L'oggetto Task Multi-immagine in 3D è un'unità di lavoro che Meshy tiene traccia per generare un modello 3D da più immagini (da 1 a 4 incluse). Le immagini dovrebbero essere dello stesso oggetto, idealmente da viste o angolazioni diverse.
L'oggetto ha le seguenti proprietà:
Proprietà
Name
id
Type
string
Description
Identificativo univoco per il task. Sebbene usiamo un UUID k-ordinabile per gli id dei task come dettagli di implementazione, non dovresti fare alcuna assunzione sul formato dell'id.
Name
type
Type
string
Description
Tipo di task Multi-immagine in 3D. Il valore è multi-image-to-3d.
Name
model_urls
Type
object
Description
URL scaricabile del file del modello 3D texturizzato generato da Meshy. La proprietà per un formato sarà omessa se il formato non è generato invece di restituire una stringa vuota.
Name
glb
Type
string
Description
URL scaricabile per il file GLB.
Name
fbx
Type
string
Description
URL scaricabile per il file FBX.
Name
obj
Type
string
Description
URL scaricabile per il file OBJ.
Name
usdz
Type
string
Description
URL scaricabile per il file USDZ.
Name
mtl
Type
string
Description
URL scaricabile per il file MTL, restituito insieme agli esporti OBJ quando sono presenti texture.
Name
stl
Type
string
Description
URL scaricabile per il file STL.
Name
3mf
Type
string
Description
URL scaricabile per il file 3MF. Presente solo quando 3mf è stato richiesto tramite target_formats.
Name
pre_remeshed_glb
Type
string
Description
URL scaricabile per l'output GLB originale prima del remeshing.
Disponibile solo quando il task è stato creata con entrambi should_remesh: true e save_pre_remeshed_model: true.
Name
thumbnail_url
Type
string
Description
URL scaricabile per l'immagine miniatura del file del modello. Equivalente a thumbnail_urls.front quando presente, mantenuto per compatibilità con versioni precedenti.
Name
alpha_thumbnail_url
Type
string
Description
URL scaricabile per una versione di thumbnail_url con sfondo trasparente (RGBA). Presente solo quando il task è stata creata con alpha_thumbnail: true e l'anteprima trasparente è stata resa con successo; altrimenti questo campo è omesso.
Name
thumbnail_urls
Type
object
Description
URL scaricabili per quattro miniature di visualizzazione cardinali del modello 3D generato. Ogni valore è un URL firmato per un PNG 512×512 renderizzato con gli stessi materiali e illuminazione di thumbnail_url. Utile per visualizzare in anteprima il modello da più angolazioni nelle pipeline batch senza scaricare il GLB.
Presente solo quando il task è stata creato con multi_view_thumbnails: true e ha raggiunto SUCCEEDED. Task più vecchi e task creati senza l'opt-in non includeranno questo campo.
Name
front
Type
string
Description
Visuale frontale, rotazione di 0° intorno all'asse verticale (corrisponde a thumbnail_url).
Name
right
Type
string
Description
Visuale a destra, rotazione di 90°.
Name
back
Type
string
Description
Visuale posteriore, rotazione di 180°.
Name
left
Type
string
Description
Visuale a sinistra, rotazione di 270°.
Name
texture_prompt
Type
string
Description
Il prompt testuale che è stato usato per guidare il processo di texturizzazione.
Name
progress
Type
integer
Description
Progresso del task. Se il task non è ancora iniziato, questa proprietà sarà 0. Una volta che il task è riuscito, diventerà 100.
Name
started_at
Type
timestamp
Description
Timestamp di quando il task è iniziato, in millisecondi. Se il task non è ancora iniziato, questa proprietà sarà 0.
Un timestamp rappresenta il numero di millisecondi trascorsi dal 1 gennaio 1970 UTC, seguendo
lo standard RFC 3339.
Ad esempio, venerdì 1 settembre 2023 12:00:00 GMT è rappresentato come 1693569600000. Questo si applica
a tutti i timestamp nell'API di Meshy.
Name
created_at
Type
timestamp
Description
Timestamp di quando il task è stata creato, in millisecondi.
Name
expires_at
Type
timestamp
Description
Timestamp di quando il risultato del task scade, in millisecondi.
Name
finished_at
Type
timestamp
Description
Timestamp di quando il task è terminato, in millisecondi. Se il task non è ancora terminato, questa proprietà sarà 0.
Name
status
Type
string
Description
Stato del task. I valori possibili sono uno di PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
texture_urls
Type
array
Description
Un array di oggetti URL di texture generati dal task. Normalmente questo contiene solo un oggetto URL della texture. Ogni URL della texture ha le seguenti proprietà:
Name
base_color
Type
string
Description
URL scaricabile per l'immagine della mappa del colore base.
Name
metallic
Type
string
Description
URL scaricabile per l'immagine della mappa del metallo.
Se il task è creato con enable_pbr: false, questa proprietà sarà omessa.
Name
normal
Type
string
Description
URL scaricabile per l'immagine della normal map.
Se il task è creato con enable_pbr: false, questa proprietà sarà omessa.
Name
roughness
Type
string
Description
URL scaricabile per l'immagine della mappa della rugosità.
Se il task è creato con enable_pbr: false, questa proprietà sarà omessa.
Name
emission
Type
string
Description
URL scaricabile per l'immagine della mappa dell'emissione.
Se il task è creato con enable_pbr: false, o ai_model è meshy-5, questa proprietà sarà omessa.
Name
preceding_tasks
Type
integer
Description
Il numero di task precedenti.
Il valore di questo campo ha significato solo se lo stato del task è PENDING.
Name
task_error
Type
object
Description
Dettagli errori per i task falliti. Vedi Errori per il riferimento completo all'oggetto task_error.
Name
consumed_credits
Type
integer
Description
Il numero di crediti consumati da questo task. Presente quando lo stato del task è PENDING, IN_PROGRESS o SUCCEEDED. Restituisce 0 per task FAILED (i crediti vengono rimborsati in caso di fallimento).