Obrázek na 3D API je funkce, která vám umožňuje integrovat schopnosti Meshy pro Obrázek na 3D do vaší vlastní aplikace. V této části najdete všechny informace,
které potřebujete k tomu, abyste mohli s tímto API začít.
Tento koncový bod umožňuje vytvořit novou úlohu Obrázek na 3D. Podívejte se na
Objekt úlohy Obrázek na 3D, kde zjistíte, jaké
vlastnosti objekt úlohy Obrázek na 3D obsahuje.
Parametry
Vyžadován je pouze jeden z parametrů input_task_id nebo image_url. Pokud jsou zadány oba, prioritu má input_task_id.
Name
input_task_id
Type
string
Povinné
Description
ID dokončené úlohy generování obrázku, jejíž výstup se má použít jako vstupní obrázek. Tato úloha musí být jedna z následujících: Text na obrázek nebo Obrázek na obrázek. Kromě toho musí být spuštěna přes API, mít stav SUCCEEDED a vytvořit přesně jeden obrázek.
Name
image_url
Type
string
Povinné
Description
Poskytněte obrázek, který Meshy použije k vytvoření modelu. Aktuálně jsou podporovány formáty .jpg, .jpeg a .png.
Obrázek lze poskytnout dvěma způsoby:
Veřejně přístupná URL adresa: URL adresa dostupná z veřejného internetu.
Data URI: Base64 kódovaná Data URI adresa obrázku. Příklad Data URI: data:image/jpeg;base64,<vaše base64 zakódovaná data obrázku>.
Name
model_type
Type
string
výchozí standard
Description
Určuje typ generování 3D sítě.
Dostupné hodnoty:
standard: Běžné vysoce detailní generování 3D sítě.
smart-topology: Zvolte model Smart Topology pomocí ai_model (meshy-t2).
lowpoly (zastaralé): Generuje low-poly síť optimalizovanou pro čistší polygony. Doporučujeme místo toho použít smart-topology.
Pokud je zvoleno smart-topology, parametry topology, should_remesh a save_pre_remeshed_model jsou ignorovány.
Pokud je zvoleno lowpoly, parametry ai_model, topology, target_polycount, should_remesh a save_pre_remeshed_model jsou ignorovány.
Name
ai_model
Type
string
výchozí latest
Description
ID modelu, který se má použít. Dostupné hodnoty závisí na model_type.
meshy-t2 (výchozí): model Smart Topology — čistší topology, přirozeně oddělené části, trojúhelníkový výstup a počet stěn, který lze nastavit pomocí target_polycount.
Name
geometry_resolution
Type
string
výchozí standard
Description
Krok generování geometrie. 2k spustí Ultra krok při 2048³; 4k jej spustí při 4096³ pro
nejjemnější detail povrchu.
Dostupné hodnoty: standard, 2k, 4k
Vyžaduje meshy-7.1 nebo latest.
Name
ultra_mode
Type
boolean
⚠ zastaralé
výchozí false
Description
Místo toho použijte geometry_resolution. ultra_mode: true odpovídá geometry_resolution: "2k".
Name
should_texture
Type
boolean
výchozí true
Description
Určuje, zda se mají generovat textury. Nastavením na false se přeskočí fáze texturování a vznikne síť bez textur.
Platí pouze když should_texture = true
Name
enable_pbr
Type
boolean
výchozí false
Description
Kromě základní barvy generuje i PBR mapy (metallic, roughness, normal). Emisní mapa je zahrnuta také v případě, že ai_model je meshy-6, kromě případu texture_resolution: 8k. Modely meshy-6-lite, meshy-7.1 a latest emisní mapu nevytvářejí.
Name
texture_resolution
Type
string
výchozí 2k
Description
Rozlišení textury základní barvy. Jedna z hodnot 2k (2048×2048), 4k (4096×4096) nebo 8k (8192×8192). Vyšší rozlišení zachycují více detailů povrchu.
4k a 8k nejsou dostupné s ai_modelmeshy-6-lite. Při 8k se emisní mapa nevytváří.
Name
hd_texture
Type
boolean
⚠ zastaralé
výchozí false
Description
Místo toho použijte texture_resolution — odpovídá texture_resolution: "4k". Pokud jsou nastaveny oba parametry, má přednost texture_resolution.
Name
texture_prompt
Type
string
Description
Zadejte textový prompt, který bude řídit proces texturování. Maximálně 800 znaků.
Name
texture_image_url
Type
string
Description
Poskytněte 2D obrázek, který bude řídit proces texturování. Aktuálně jsou podporovány formáty .jpg, .jpeg a .png.
Obrázek lze poskytnout dvěma způsoby:
Veřejně přístupná URL adresa: URL adresa dostupná z veřejného internetu
Data URI: Base64 kódovaná Data URI adresa obrázku. Příklad Data URI: data:image/jpeg;base64,<vaše base64 zakódovaná data obrázku>
Texturování pomocí obrázku nemusí fungovat optimálně, pokud existují výrazné rozdíly v geometrii mezi původním assetem a nahraným obrázkem. K řízení procesu texturování lze použít pouze jeden z parametrů texture_image_url nebo texture_prompt. Pokud jsou zadány oba, k texturování modelu se ve výchozím nastavení použije texture_prompt. Texturování pomocí textu nebo obrázku stojí 10 kreditů za úlohu.
Name
should_remesh
Type
boolean
výchozí false (Meshy 6 and Meshy 7 models), true (others)
Description
Určuje, zda se má povolit fáze remesh. Pro nejvyšší kvalitu modelu doporučujeme nastavit should_remesh na false.
Povolí adaptivní decimaci nastavením úrovně počtu polygonů. Pokud je nastaveno, target_polycount je ignorováno.
Dostupné hodnoty:
1: Adaptivní — ultra počet polygonů.
2: Adaptivní — vysoký počet polygonů.
3: Adaptivní — střední počet polygonů.
4: Adaptivní — nízký počet polygonů.
Name
save_pre_remeshed_model
Type
boolean
výchozí false
Description
Pokud je nastaveno na true, Meshy navíc uloží další soubor GLB před dokončením fáze remesh.
Name
target_polycount
Type
integer
Description
Cílový počet polygonů (stěn) ve výstupu. Skutečný počet se může od cíle lišit v závislosti na geometrii.
target_polycount se uplatní ve dvou nezávislých případech:
Remesh — s should_remesh: true u modelu standard. Síť je remeshována (decimována) na přibližně tento počet. Rozsah 100 až 300 000, výchozí hodnota 30 000. Pokud je nastaveno decimation_mode, má přednost a target_polycount je ignorováno.
Smart Topology — s model_type: smart-topology a ai_model: meshy-t2. Model se generuje přímo s tímto počtem stěn; fáze remesh se nespouští a should_remesh není vyžadováno. Rozsah 100 až 15 000, výchozí hodnota 4 000.
Name
symmetry_mode
Type
string
⚠ zastaralé
výchozí auto
Description
Zastaralé. Tento parametr již neovlivňuje výstup.
Pole symmetry_mode řídí chování symetrie během procesu generování modelu.
Platné hodnoty jsou:
off: Vypne symetrii.
auto: Automaticky určí a použije symetrii na základě vstupní geometrie.
on: Vynutí symetrii během generování.
Name
pose_mode
Type
string
výchozí ""
Description
Určuje mode pózy pro generovaný model.
Dostupné hodnoty:
a-pose: Vygeneruje model v póze A.
t-pose: Vygeneruje model v póze T.
"" (prázdný řetězec): Nepoužije se žádná konkrétní póza.
Name
is_a_t_pose
Type
boolean
⚠ zastaralé
výchozí false
Description
Místo toho použijte pose_mode. Určuje, zda se má model vygenerovat v póze A/T.
Name
image_enhancement
Type
boolean
výchozí true
Description
Optimalizuje vstupní obrázek pro lepší výsledky. Nastavením na false zachováte přesný vzhled vstupního obrázku bez jakéhokoli stylového zpracování.
Podporováno pouze v případě, že ai_model je meshy-6, meshy-7.1 nebo latest.
Name
remove_lighting
Type
boolean
výchozí true
Description
Odstraní odlesky a stíny ze základní barevné textury, čímž vznikne čistší výsledek, který lépe funguje při vlastním nastavení osvětlení.
Podporováno pouze v případě, že ai_model je meshy-6.
Name
moderation
Type
boolean
výchozí false
Description
Pokud je nastaveno na true, vstupní obsah bude automaticky prověřen na potenciálně škodlivý obsah. Pokud je škodlivý obsah zjištěn, úloha nebude pokračovat do fáze generování.
Prověřován bude obsah ze vstupů image_url, texture_image_url a texture_prompt.
Name
target_formats
Type
string[]
Description
Určuje, které formáty 3D souborů mají být zahrnuty ve výstupu. Vygenerovány a vráceny budou pouze požadované formáty, což může zkrátit dobu dokončení úlohy. Pokud parametr vynecháte, budou zahrnuty všechny podporované formáty.
Dostupné hodnoty: glb, obj, fbx, stl, usdz, 3mf
Pokud parametr vynecháte, vygenerují se všechny formáty kromě 3mf. Formát 3mf je zahrnut pouze tehdy, je-li výslovně zadán.
Name
auto_size
Type
boolean
výchozí false
Description
Pokud je nastaveno na true, služba použije AI vidění k automatickému odhadu skutečné výšky objektu v reálném světě a odpovídajícím způsobem změní velikost modelu. Počátek bude ve výchozím nastavení bottom, pokud není origin_at výslovně nastaven.
Name
alpha_thumbnail
Type
boolean
výchozí false
Description
Pokud je nastaveno na true, úloha navíc vykreslí verzi náhledu s průhledným pozadím (RGBA) a vrátí ji jako alpha_thumbnail_url v odpovědi GET. Stávající pole thumbnail_url zůstává beze změny.
Name
multi_view_thumbnails
Type
boolean
výchozí false
Description
Pokud je nastaveno na true, úloha navíc vykreslí čtyři náhledy ze základních směrů pohledu (přední, pravý, zadní, levý) a vrátí je pod thumbnail_urls v odpovědi GET. Stávající pole thumbnail_url zůstává beze změny a nadále ukazuje na pohled zepředu, takže stávající klienti nejsou ovlivněni.
Přidává k latenci úlohy přibližně 3 sekundy.
Platí pouze když auto_size = true
Name
origin_at
Type
string
výchozí bottom
Description
Pozice počátku, když je povoleno auto_size.
Dostupné hodnoty: bottom, center.
Návratová hodnota
Vlastnost result odpovědi obsahuje id úlohy nově vytvořené úlohy Obrázek na 3D.
Režimy selhání
Name
400 - Bad Request
Description
Požadavek byl nepřijatelný. Časté příčiny:
Chybějící parametr: Musí být zadán buď image_url, nebo input_task_id.
Neplatná vstupní úloha: input_task_id musí odkazovat na úlohu Text na obrázek nebo Obrázek na obrázek se stavem SUCCEEDED, která vytváří přesně jeden obrázek.
Neplatný formát obrázku: Zadaný image_url není v podporovaném formátu (.jpg, .jpeg, .png).
Nedostupná URL adresa: Adresu image_url se nepodařilo stáhnout (404 nebo timeout).
Neplatná Data URI: Řetězec base64 je poškozený.
Neplatná kombinace parametrů: enable_pbr je podporováno pouze v případě, že should_texture je true.
Nepodporovaný model pro low poly: ai_model: "meshy-6-lite" nepodporuje model_type: "lowpoly".
Nepodporovaný model pro Ultra: geometry_resolution vyžaduje meshy-7.1 nebo latest.
Name
401 - Unauthorized
Description
Autentizace selhala. Zkontrolujte prosím svůj API klíč.
Name
402 - Payment Required
Description
Nedostatek kreditů k provedení této úlohy.
Name
429 - Too Many Requests
Description
Překročili jste limit rychlosti.
Request
POST
/openapi/v1/image-to-3d
# Simple request with required paramscurlhttps://api.meshy.ai/openapi/v1/image-to-3d \-XPOST \-H"Authorization: Bearer ${YOUR_API_KEY}" \-H'Content-Type: application/json' \-d'{ "image_url": "<your publicly accessible image url or base64-encoded data URI>" }'# With Ultra 4K geometry, remesh, PBR, and A-posecurlhttps://api.meshy.ai/openapi/v1/image-to-3d \-XPOST \-H"Authorization: Bearer ${YOUR_API_KEY}" \-H'Content-Type: application/json' \-d'{ "image_url": "<your publicly accessible image url or base64-encoded data URI>", "ai_model": "meshy-7.1", "geometry_resolution": "4k", "enable_pbr": true, "should_remesh": true, "target_polycount": 100000, "should_texture": true, "pose_mode": "a-pose", "target_formats": ["glb"] }'
Tento koncový bod umožňuje získat úlohu Obrázek na 3D podle platného id úlohy.
Podrobnosti o vlastnostech, které jsou součástí objektu úlohy Obrázek na 3D, naleznete v části
Objekt úlohy Obrázek na 3D.
Parametry
Name
id
Type
path
Description
Jedinečný identifikátor úlohy Obrázek na 3D, kterou chcete získat.
Tento koncový bod trvale smaže úlohu Obrázek na 3D, včetně všech souvisejících modelů a dat. Tato akce je nevratná.
Parametry cesty
Name
id
Type
path
Description
ID úlohy Obrázek na 3D, kterou chcete smazat.
Stav úlohy
Úloha, která je stále ve stavu PENDING, je smazána a kredity spotřebované
při jejím vytvoření jsou vráceny.
Úlohu, která je již ve stavu IN_PROGRESS, nelze smazat: požadavek je
zamítnut s chybou 409 Conflict a úloha nadále běží. Kredity za úlohu,
kterou už worker začal zpracovávat, nejsou vratné, takže smazání během
běhu by vás stálo jak kredity, tak výsledek. Počkejte, až dosáhne stavu
SUCCEEDED, FAILED nebo CANCELED, a poté ji smažte.
Úloha v koncovém stavu (SUCCEEDED, FAILED nebo CANCELED) je smazána
bez vrácení kreditů.
Návratové hodnoty
Při úspěchu vrací 200 OK, nebo 409 Conflict, pokud je úloha ve stavu
IN_PROGRESS.
// 200 OK on success, with an empty body.//// 409 Conflict when the task is IN_PROGRESS — the task is left running:{"message":"Task is IN_PROGRESS and cannot be deleted. Credits for a task the worker has already started are not refundable; wait for it to reach SUCCEEDED, FAILED or CANCELED, then delete it."}
Objekt Image to 3D Task je pracovní jednotka, kterou Meshy sleduje za účelem generování 3D modelu ze vstupního obrázku.
Objekt má následující vlastnosti:
Vlastnosti
Name
id
Type
string
Description
Jedinečný identifikátor úlohy. Přestože jako implementační detail používáme pro id úloh k-sortovatelné UUID, neměli byste dělat žádné předpoklady o formátu id.
Name
type
Type
string
Description
Typ úlohy Image to 3D. Hodnota je image-to-3d.
Name
model_urls
Type
object
Description
Stažitelná URL adresa na texturovaný soubor 3D modelu vygenerovaný Meshy. Vlastnost pro daný formát bude vynechána, pokud daný formát nebyl vygenerován, místo vrácení prázdného řetězce.
Name
glb
Type
string
Description
Stažitelná URL adresa na soubor GLB.
Name
fbx
Type
string
Description
Stažitelná URL adresa na soubor FBX.
Name
obj
Type
string
Description
Stažitelná URL adresa na soubor OBJ.
Name
usdz
Type
string
Description
Stažitelná URL adresa na soubor USDZ.
Name
mtl
Type
string
Description
Stažitelná URL adresa na soubor MTL, vrácená společně s exporty OBJ, pokud jsou přítomny textury.
Name
stl
Type
string
Description
Stažitelná URL adresa na soubor STL.
Name
3mf
Type
string
Description
Stažitelná URL adresa na soubor 3MF. Přítomno pouze v případě, že formát 3mf byl vyžádán prostřednictvím target_formats.
Name
pre_remeshed_glb
Type
string
Description
Stažitelná URL adresa na původní výstup GLB před remeshem.
Dostupné pouze v případě, že úloha byla vytvořena s should_remesh: true i save_pre_remeshed_model: true.
Name
thumbnail_url
Type
string
Description
Stažitelná URL adresa na miniaturu souboru modelu. Odpovídá hodnotě thumbnail_urls.front, pokud je přítomna, ponecháno kvůli zpětné kompatibilitě.
Name
alpha_thumbnail_url
Type
string
Description
Stažitelná URL adresa na verzi thumbnail_url s průhledným pozadím (RGBA). Přítomno pouze v případě, že úloha byla vytvořena s alpha_thumbnail: true a průhledný náhled byl úspěšně vykreslen; jinak je toto pole vynecháno.
Name
thumbnail_urls
Type
object
Description
Stažitelné URL adresy pro čtyři miniatury vygenerovaného 3D modelu ze základních světových stran. Každá hodnota je podepsaná URL adresa na PNG o rozměrech 512×512, vykreslené se stejnými materiály a osvětlením jako thumbnail_url. Užitečné pro náhled modelu z více úhlů v dávkových zpracováních bez nutnosti stahovat GLB.
Přítomno pouze v případě, že úloha byla vytvořena s multi_view_thumbnails: true a dosáhla stavu SUCCEEDED. Starší úlohy a úlohy vytvořené bez tohoto zapnutí tuto vlastnost nebudou obsahovat.
Name
front
Type
string
Description
Pohled zepředu, otočení o 0° kolem svislé osy (odpovídá thumbnail_url).
Name
right
Type
string
Description
Pohled zprava, otočení o 90°.
Name
back
Type
string
Description
Pohled zezadu, otočení o 180°.
Name
left
Type
string
Description
Pohled zleva, otočení o 270°.
Name
texture_prompt
Type
string
Description
Textový prompt, který byl použit k řízení procesu texturování.
Name
texture_image_url
Type
string
Description
Stažitelná URL adresa na obrázek textury, který byl použit k řízení procesu texturování.
Name
ultra_mode
Type
boolean
⚠ zastaralé
Description
Zastaralé; místo toho použijte geometry_resolution.
Name
geometry_resolution
Type
string
Description
Úroveň Ultra, ve které úloha proběhla (2k nebo 4k); vynecháno pro standard.
Name
progress
Type
integer
Description
Průběh úlohy. Pokud úloha ještě nebyla zahájena, tato vlastnost bude 0. Jakmile úloha úspěšně dokončí, hodnota se změní na 100.
Name
started_at
Type
timestamp
Description
Časové razítko okamžiku zahájení úlohy, v milisekundách. Pokud úloha ještě nebyla zahájena, tato vlastnost bude 0.
Časové razítko představuje počet milisekund, které uplynuly od 1. ledna 1970 UTC, podle
standardu RFC 3339.
Například pátek 1. září 2023 12:00:00 GMT je reprezentován jako 1693569600000. To platí
pro všechna časová razítka v Meshy API.
Name
created_at
Type
timestamp
Description
Časové razítko okamžiku vytvoření úlohy, v milisekundách.
Name
expires_at
Type
timestamp
Description
Časové razítko okamžiku vypršení platnosti výsledku úlohy, v milisekundách.
Name
finished_at
Type
timestamp
Description
Časové razítko okamžiku dokončení úlohy, v milisekundách. Pokud úloha ještě není dokončena, tato vlastnost bude 0.
Name
status
Type
string
Description
Stav úlohy. Možné hodnoty jsou jedna z PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
texture_urls
Type
array
Description
Pole objektů URL adres textur vygenerovaných úlohou. Obvykle obsahuje pouze jeden objekt URL adresy textury. Každá URL adresa textury má následující vlastnosti:
Name
base_color
Type
string
Description
Stažitelná URL adresa na obrázek mapy základní barvy.
Name
metallic
Type
string
Description
Stažitelná URL adresa na obrázek mapy kovovosti.
Pokud je úloha vytvořena s enable_pbr: false, tato vlastnost bude vynechána.
Name
normal
Type
string
Description
Stažitelná URL adresa na obrázek normálové mapy.
Pokud je úloha vytvořena s enable_pbr: false, tato vlastnost bude vynechána.
Name
roughness
Type
string
Description
Stažitelná URL adresa na obrázek mapy drsnosti.
Pokud je úloha vytvořena s enable_pbr: false, tato vlastnost bude vynechána.
Name
emission
Type
string
Description
Stažitelná URL adresa na obrázek mapy emise.
Pokud je úloha vytvořena s enable_pbr: false, nebo je ai_model nastaven na meshy-6-lite, meshy-7.1 či latest, tato vlastnost bude vynechána.
Name
preceding_tasks
Type
integer
Description
Počet předcházejících úloh.
Hodnota tohoto pole má smysl pouze v případě, že stav úlohy je PENDING.
Name
task_error
Type
object
Description
Podrobnosti o chybě u neúspěšných úloh. Úplný referenční popis objektu task_error naleznete v části Chyby.
Name
consumed_credits
Type
integer
Description
Počet kreditů spotřebovaných touto úlohou. Přítomno, když je stav úlohy PENDING, IN_PROGRESS nebo SUCCEEDED. U úloh se stavem FAILED vrací 0 (kredity jsou v případě neúspěchu vráceny).