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 sekci najdete všechny informace, které potřebujete k zahájení práce s tímto API.
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
Je vyžadován pouze jeden z parametrů input_task_id nebo image_url. Pokud jsou zadány oba, má přednost input_task_id.
Name
input_task_id
Type
string
Povinné
Description
ID dokončené úlohy generování obrázku, jejíž výstup by měl být použit jako vstupní obrázek. Tato úloha musí být jednou 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ý má Meshy použít při vytváření modelu. Aktuálně podporujeme formáty .jpg, .jpeg a .png.
Obrázek lze poskytnout dvěma způsoby:
Veřejně dostupná URL: URL adresa, která je dostupná z veřejného internetu.
Data URI: Base64 zakódované data URI 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: Vyberte 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 vybráno smart-topology, parametry topology, should_remesh a save_pre_remeshed_model jsou ignorovány.
Pokud je vybráno 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
ultra_mode
Type
boolean
výchozí false
Description
Umožňuje generování Ultra pro geometrii s vyšší věrností a jemnějším detailem povrchu.
Podporováno pouze pokud je ai_model nastaven na meshy-7 (nebo latest).
Name
should_texture
Type
boolean
výchozí true
Description
Určuje, zda se mají generovat textury. Nastavením na false se vynechá fáze texturování a získáte síť bez textur.
Platí pouze když should_texture = true
Name
enable_pbr
Type
boolean
výchozí false
Description
Vygeneruje PBR mapy (kovovost, drsnost, normálová mapa) kromě základní barvy. Emisní mapa je zahrnuta také v případě, že ai_model je meshy-6, s výjimkou texture_resolution: 8k. Modely meshy-7 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_model: meshy-5. Při 8k se nevytváří emisní mapa.
Name
hd_texture
Type
boolean
⚠ zastaralé
výchozí false
Description
Místo toho použijte texture_resolution — odpovídá hodnotě texture_resolution: "4k". Pokud jsou nastaveny oba parametry, má přednost texture_resolution.
Name
texture_prompt
Type
string
Description
Poskytněte textový prompt, kterým se bude řídit proces texturování. Maximálně 800 znaků.
Name
texture_image_url
Type
string
Description
Poskytněte 2D obrázek, kterým se bude řídit proces texturování. Aktuálně podporujeme formáty .jpg, .jpeg a .png.
Obrázek lze poskytnout dvěma způsoby:
Veřejně dostupná URL: URL adresa, která je dostupná z veřejného internetu
Data URI: Base64 zakódované data URI 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é geometrické rozdíly 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, model bude standardně texturován pomocí texture_prompt. Texturování pomocí textu nebo obrázku stojí 10 kreditů za úlohu.
Name
should_remesh
Type
boolean
výchozí false (meshy-6, meshy-7), true (others)
Description
Určuje, zda se má povolit fáze remesh. Pro nejvyšší kvalitu modelu doporučujeme nastavit should_remesh na false.
Platí pouze když should_remesh = true
Name
topology
Type
string
výchozí triangle
Description
Určuje topology vygenerovaného modelu.
Dostupné hodnoty:
quad: Vygeneruje síť s převažujícími čtyřúhelníky.
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ží extra 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 přepočítá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 je vygenerován přímo s tímto počtem stěn; fáze remesh se nespouští a should_remesh není potřeba. 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 vygenerovaný model.
Dostupné hodnoty:
a-pose: Vygeneruje model v pozici A.
t-pose: Vygeneruje model v pozici T.
"" (prázdný řetězec): Není aplikována žá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 pozici A/T.
Name
image_enhancement
Type
boolean
výchozí true
Description
Optimalizuje vstupní obrázek pro lepší výsledky. Nastavte na false, pokud chcete zachovat přesný vzhled vstupního obrázku bez jakéhokoli stylového zpracování.
Podporováno pouze pokud je ai_model nastaven na meshy-6, meshy-7 nebo latest.
Name
remove_lighting
Type
boolean
výchozí true
Description
Odstraní odlesky a stíny ze základní barevné textury, což vede k čistšímu výsledku, který lépe funguje při vlastním nastavení osvětlení.
Podporováno pouze pokud je ai_model nastaven na meshy-6.
Name
moderation
Type
boolean
výchozí false
Description
Pokud je nastaveno na true, vstupní obsah bude automaticky zkontrolován na potenciálně škodlivý obsah. Pokud je škodlivý obsah zjištěn, úloha nebude pokračovat do fáze generování.
Bude zkontrolován obsah ze vstupů image_url, texture_image_url a texture_prompt.
Name
target_formats
Type
string[]
Description
Určuje, které formáty 3D souborů se mají zahrnout do 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. 3mf je zahrnut pouze pokud je výslovně zadán.
Name
auto_size
Type
boolean
výchozí false
Description
Pokud je nastaveno na true, služba pomocí AI vidění automaticky odhadne skutečnou výšku objektu v reálném světě a odpovídajícím způsobem změní velikost modelu. Počátek bude standardně nastaven na bottom, pokud není origin_at výslovně zadán.
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 úhlů pohledu (zepředu, zprava, zezadu, zleva) a vrátí je v poli thumbnail_urls v odpovědi GET. Stávající pole thumbnail_url zůstává beze změny a nadále odkazuje na pohled zepředu, takže stávající klienty to nijak neovlivní.
Přidává přibližně 3 sekundy k latenci úlohy.
Platí pouze když auto_size = true
Name
origin_at
Type
string
výchozí bottom
Description
Pozice počátku, pokud je povoleno auto_size.
Dostupné hodnoty: bottom, center.
Návratové hodnoty
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á vytvoří přesně jeden obrázek.
Neplatný formát obrázku: Zadaný image_url není v podporovaném formátu (.jpg, .jpeg, .png).
Nedostupná URL: image_url se nepodařilo stáhnout (404 nebo timeout).
Neplatné Data URI: Base64 řetězec je poškozený.
Neplatná kombinace parametrů: enable_pbr je podporováno pouze pokud je should_texture nastaveno na true.
Name
401 - Unauthorized
Description
Autentizace selhala. Zkontrolujte prosím svůj API klíč.
Name
402 - Payment Required
Description
Nedostatek kreditů pro provedení této úlohy.
Name
429 - Too Many Requests
Description
Překročili jste svůj 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 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>", "enable_pbr": true, "should_remesh": true, "target_polycount": 100000, "should_texture": true, "pose_mode": "a-pose", "target_formats": ["glb"] }'
Tento koncový bod vám umožňuje načíst úlohu Obrázek na 3D pomocí platného id úlohy.
Podívejte se na Objekt úlohy Obrázek na 3D, abyste viděli,
které vlastnosti jsou zahrnuty v objektu úlohy Obrázek na 3D.
Parametry
Name
id
Type
path
Description
Unikátní identifikátor pro úlohu Obrázek na 3D, kterou chcete načíst.
Vrátí
Odpověď obsahuje objekt úlohy Obrázek na 3D. Podívejte se na
sekci Objekt úlohy Obrázek na 3D pro podrobnosti.
Objekt úlohy Obrázek na 3D je pracovní jednotka, kterou Meshy sleduje pro generování 3D modelu z obrázkového vstupu.
Objekt má následující vlastnosti:
Vlastnosti
Name
id
Type
string
Description
Unikátní identifikátor pro úlohu. I když používáme k-tříděné UUID pro id úloh jako implementační detail, neměli byste dělat žádné předpoklady o formátu id.
Name
type
Type
string
Description
Typ úlohy Obrázek na 3D. Hodnota je image-to-3d.
Name
model_urls
Type
object
Description
Stahovatelná URL k texturovanému 3D modelovému souboru generovanému Meshy. Vlastnost pro formát bude vynechána, pokud formát není generován, místo vrácení prázdného řetězce.
Name
glb
Type
string
Description
Stahovatelná URL k souboru GLB.
Name
fbx
Type
string
Description
Stahovatelná URL k souboru FBX.
Name
obj
Type
string
Description
Stahovatelná URL k souboru OBJ.
Name
usdz
Type
string
Description
Stahovatelná URL k souboru USDZ.
Name
mtl
Type
string
Description
Stahovatelná URL k souboru MTL, vrácena spolu s exporty OBJ, když jsou přítomny textury.
Name
stl
Type
string
Description
Stahovatelná URL k souboru STL.
Name
3mf
Type
string
Description
Stahovatelná URL k souboru 3MF. Přítomná pouze, když byl 3mf požadován prostřednictvím target_formats.
Name
pre_remeshed_glb
Type
string
Description
Stahovatelná URL k původnímu výstupu GLB před remeshingem.
K dispozici pouze, když byla úloha vytvořena s oběma should_remesh: true a save_pre_remeshed_model: true.
Name
thumbnail_url
Type
string
Description
Stahovatelná URL k miniatuře obrázku modelového souboru. Ekvivalentní k thumbnail_urls.front, pokud je přítomna, zachována pro zpětnou kompatibilitu.
Name
alpha_thumbnail_url
Type
string
Description
Stahovatelná URL k verzi thumbnail_url s průhledným pozadím (RGBA). Přítomná pouze, když byla úloha 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
Stahovatelné URL pro čtyři miniatury z hlavních pohledů generovaného 3D modelu. Každá hodnota je podepsaná URL k 512×512 PNG vykreslenému 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 potrubích bez stahování GLB.
Přítomné pouze, když byla úloha vytvořena s multi_view_thumbnails: true a dosáhla SUCCEEDED. Starší úlohy a úlohy vytvořené bez opt-in nebudou obsahovat toto pole.
Name
front
Type
string
Description
Pohled zepředu, rotace 0° kolem vertikální osy (odpovídá thumbnail_url).
Name
right
Type
string
Description
Pohled zprava, rotace 90°.
Name
back
Type
string
Description
Pohled zezadu, rotace 180°.
Name
left
Type
string
Description
Pohled zleva, rotace 270°.
Name
texture_prompt
Type
string
Description
Textový prompt, který byl použit k vedení procesu texturování.
Name
texture_image_url
Type
string
Description
Stahovatelná URL k texturovému obrázku, který byl použit k vedení procesu texturování.
Name
ultra_mode
Type
boolean
Description
Odráží hodnotu ultra_mode, se kterou byla úloha vytvořena. Přítomné pouze pro úlohy meshy-7 (nebo latest), které explicitně nastavily ultra_mode; jinak vynecháno.
Name
progress
Type
integer
Description
Pokrok úlohy. Pokud úloha ještě nezačala, tato vlastnost bude 0. Jakmile úloha uspěje, stane se 100.
Name
started_at
Type
timestamp
Description
Časové razítko, kdy byla úloha zahájena, v milisekundách. Pokud úloha ještě nezačala, tato vlastnost bude 0.
Časové razítko představuje počet milisekund uplynulých od 1. ledna 1970 UTC, podle
RFC 3339 standardu.
Například, pátek, 1. září 2023 12:00:00 PM 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, kdy byla úloha vytvořena, v milisekundách.
Name
expires_at
Type
timestamp
Description
Časové razítko, kdy výsledek úlohy vyprší, v milisekundách.
Name
finished_at
Type
timestamp
Description
Časové razítko, kdy byla úloha dokončena, 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 PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
texture_urls
Type
array
Description
Pole objektů URL textur, které jsou generovány z úlohy. Normálně obsahuje pouze jeden objekt URL textury. Každý objekt URL textury má následující vlastnosti:
Name
base_color
Type
string
Description
Stahovatelná URL k obrázku základní barevné mapy.
Name
metallic
Type
string
Description
Stahovatelná URL k obrázku kovové mapy.
Pokud je úloha vytvořena s enable_pbr: false, tato vlastnost bude vynechána.
Name
normal
Type
string
Description
Stahovatelná URL k obrázku normálové mapy.
Pokud je úloha vytvořena s enable_pbr: false, tato vlastnost bude vynechána.
Name
roughness
Type
string
Description
Stahovatelná URL k obrázku mapy drsnosti.
Pokud je úloha vytvořena s enable_pbr: false, tato vlastnost bude vynechána.
Name
emission
Type
string
Description
Stahovatelná URL k obrázku emisní mapy.
Pokud je úloha vytvořena s enable_pbr: false, nebo ai_model je meshy-5, meshy-7, nebo 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, pokud je stav úlohy PENDING.
Name
task_error
Type
object
Description
Podrobnosti o chybách pro neúspěšné úlohy. Viz Chyby pro úplný odkaz na objekt task_error.
Name
consumed_credits
Type
integer
Description
Počet kreditů spotřebovaných touto úlohou. Přítomné, když je stav úlohy PENDING, IN_PROGRESS, nebo SUCCEEDED. Vrací 0 pro úlohy FAILED (kredity jsou vráceny při selhání).