A API de Multi-imagem para 3D é uma funcionalidade que lhe permite integrar as capacidades de Multi-imagem para 3D da Meshy na sua própria aplicação. Nesta secção, irá encontrar toda a informação
de que necessita para começar a utilizar esta API.
Este endpoint permite-lhe criar uma nova tarefa de Multi-imagem para 3D. Consulte
O Objeto de Tarefa Multi-imagem para 3D para ver quais
propriedades estão incluídas no objeto de tarefa Multi-imagem para 3D.
Parâmetros
Apenas um de input_task_id ou image_urls é obrigatório. Se ambos forem fornecidos, input_task_id tem prioridade.
Name
input_task_id
Type
string
Obrigatório
Description
O ID de uma tarefa de geração de imagem concluída cujo resultado (1-4 imagens) deve ser usado como entrada. Esta tarefa deve ser uma das seguintes: Texto para imagem, Imagem para imagem, Texto para imagem Multivista, ou Imagem para imagem Multivista. Além disso, deve ter sido executada através da API e ter um estado SUCCEEDED.
Name
image_urls
Type
array
Obrigatório
Description
Forneça de 1 a 4 imagens para o Meshy usar na criação do modelo. Atualmente suportamos os formatos .jpg, .jpeg e .png. Todas as imagens devem representar o mesmo objeto a partir de ângulos diferentes para obter os melhores resultados.
Existem duas formas de fornecer cada imagem:
URL publicamente acessível: Um URL acessível a partir da internet pública.
Data URI: Um URI de dados da imagem codificado em base64. Exemplo de um Data URI: data:image/jpeg;base64,<your base64-encoded image data>.
Para meshy-7.1 (ou latest), a primeira imagem é usada como a vista principal (frontal). A ordem das restantes imagens não é relevante.
Passo de geração de geometria. 2k executa o passo Ultra a 2048³. Requer meshy-7.1 ou latest.
Valores disponíveis: standard, 2k
Name
ultra_mode
Type
boolean
⚠ obsoleto
predefinição false
Description
Use geometry_resolution em vez disso. ultra_mode: true é equivalente a geometry_resolution: "2k".
Name
should_texture
Type
boolean
predefinição true
Description
Determina se as texturas são geradas. Definir como false ignora a fase de texturização, fornecendo uma malha sem texturas.
Aplica-se apenas quando should_texture = true
Name
enable_pbr
Type
boolean
predefinição false
Description
Gera mapas PBR (metálico, rugosidade, normal) além da cor base. Um mapa de emissão também é incluído quando ai_model é meshy-6, exceto em texture_resolution: 8k. meshy-6-lite, meshy-7.1 e latest não produzem um mapa de emissão.
Name
texture_resolution
Type
string
predefinição 2k
Description
Resolução da textura de cor base. Uma de 2k (2048×2048), 4k (4096×4096), ou 8k (8192×8192). Resoluções mais altas captam mais detalhe de superfície.
4k e 8k requerem ai_modelmeshy-6, meshy-7.1 ou latest. Em 8k, não é produzido nenhum mapa de emissão.
Name
hd_texture
Type
boolean
⚠ obsoleto
predefinição false
Description
Use texture_resolution em vez disso — equivalente a texture_resolution: "4k". Quando ambos estão definidos, texture_resolution tem precedência.
Name
texture_prompt
Type
string
Description
Forneça um prompt de texto para orientar o processo de texturização. Máximo de 800 caracteres.
Name
texture_image_url
Type
string
Description
Forneça uma imagem 2D para orientar o processo de texturização. Atualmente suportamos os formatos .jpg, .jpeg e .png.
Existem duas formas de fornecer a imagem:
URL publicamente acessível: Um URL acessível a partir da internet pública
Data URI: Um URI de dados da imagem codificado em base64. Exemplo de um Data URI: data:image/jpeg;base64,<your base64-encoded image data>
A texturização de imagem pode não funcionar de forma otimizada se existirem diferenças significativas de geometria entre o asset original e a imagem carregada. Apenas um de texture_image_url ou texture_prompt pode ser usado para orientar o processo de texturização. Se ambos os parâmetros forem fornecidos, então texture_prompt será usado para texturizar o modelo por predefinição.
Name
texture_image_urls
Type
string[]
Description
Forneça de 1 a 4 imagens mostrando o mesmo objeto a partir de vistas diferentes para orientar a texturização. A primeira imagem é a vista principal (frontal); a ordem das restantes vistas (esquerda, trás, direita) não é relevante.
Cada elemento aceita os mesmos formatos que texture_image_url (um URL publicamente acessível ou um Data URI em base64, .jpg/.jpeg/.png).
Estas imagens orientam apenas a textura e são independentes de image_urls — as duas listas podem conter imagens diferentes e números diferentes de imagens.
Requer ai_modelmeshy-7.1 ou latest. Não pode ser combinado com texture_image_url ou texture_prompt.
Name
should_remesh
Type
boolean
predefinição false (Meshy 6 and Meshy 7 models), true (others)
Description
Controla se a fase de remesh é ativada. Para o modelo de mais alta qualidade, recomendamos definir should_remesh como false.
Aplica-se apenas quando should_remesh = true
Name
topology
Type
string
predefinição triangle
Description
Especifique a topology do modelo gerado.
Valores disponíveis:
quad: Gera uma malha predominantemente quad.
triangle: Gera uma malha triangular decimada.
Name
target_polycount
Type
integer
predefinição 30,000
Description
Especifique o número alvo de polígonos no modelo gerado. O número real de polígonos pode desviar-se do alvo dependendo da complexidade da geometria.
O intervalo de valores válido varia consoante o nível do utilizador:
100 a 300.000 (inclusive)
Name
decimation_mode
Type
integer
Description
Ative a decimação adaptativa definindo um nível de contagem de polígonos. Quando definido, target_polycount é ignorado.
Valores disponíveis:
1: Adaptativo — contagem de polígonos ultra.
2: Adaptativo — contagem de polígonos alta.
3: Adaptativo — contagem de polígonos média.
4: Adaptativo — contagem de polígonos baixa.
Name
save_pre_remeshed_model
Type
boolean
predefinição false
Description
Quando definido como true, o Meshy também armazena um ficheiro GLB adicional antes de a fase de remesh ser concluída.
Name
symmetry_mode
Type
string
⚠ obsoleto
predefinição auto
Description
Obsoleto. Este parâmetro já não afeta o resultado.
O campo symmetry_mode controla o comportamento de simetria durante o processo de geração do modelo.
Os valores válidos são:
off: Desativa a simetria.
auto: Determina e aplica automaticamente a simetria com base na geometria de entrada.
Use pose_mode em vez disso. Se deve gerar o modelo numa pose A/T.
Name
image_enhancement
Type
boolean
predefinição true
Description
Otimiza as imagens de entrada para obter melhores resultados. Defina como false para preservar o aspeto exato das imagens de entrada sem qualquer processamento de estilo.
Apenas suportado quando ai_model é meshy-6, meshy-7.1 ou latest.
Name
remove_lighting
Type
boolean
predefinição true
Description
Remove realces e sombras da textura de cor base, produzindo um resultado mais limpo que funciona melhor com configurações de iluminação personalizadas.
Apenas suportado quando ai_model é meshy-6, meshy-7.1 ou latest.
Name
moderation
Type
boolean
predefinição false
Description
Quando definido como true, o conteúdo de entrada será automaticamente analisado em busca de conteúdo potencialmente prejudicial. Se for detetado conteúdo prejudicial, a tarefa não avançará para a geração.
Cada imagem de image_urls e o texto de texture_prompt serão analisados.
Name
target_formats
Type
string[]
Description
Especifica quais formatos de ficheiro 3D incluir no resultado. Apenas os formatos solicitados serão gerados e devolvidos, o que pode reduzir o tempo de conclusão da tarefa.
Quando omitido, todos os formatos exceto 3mf são gerados. 3mf só é incluído quando explicitamente especificado.
Name
auto_size
Type
boolean
predefinição false
Description
Quando definido como true, o serviço usa visão de IA para estimar automaticamente a altura real do objeto e redimensionar o modelo em conformidade. A origem será, por predefinição, bottom, a menos que origin_at seja explicitamente definido.
Name
alpha_thumbnail
Type
boolean
predefinição false
Description
Quando definido como true, a tarefa também renderiza uma versão com fundo transparente (RGBA) da pré-visualização e devolve-a como alpha_thumbnail_url na resposta GET. O campo thumbnail_url existente permanece inalterado.
Name
multi_view_thumbnails
Type
boolean
predefinição false
Description
Quando definido como true, a tarefa também renderiza quatro miniaturas de vistas cardeais (frente, direita, trás, esquerda) e devolve-as em thumbnail_urls na resposta GET. O campo thumbnail_url existente permanece inalterado e continua a apontar para a vista frontal, pelo que os clientes existentes não são afetados.
Adiciona aproximadamente 3 segundos à latência da tarefa.
Aplica-se apenas quando auto_size = true
Name
origin_at
Type
string
predefinição bottom
Description
Posição da origem quando auto_size está ativado. Valores disponíveis: bottom, center.
Retorna
A propriedade result da resposta contém o id da tarefa da tarefa de Multi-imagem para 3D recém-criada.
Modos de Falha
Name
400 - Bad Request
Description
O pedido foi inaceitável. Causas comuns:
Parâmetro em falta: Deve ser fornecido image_urls ou input_task_id.
Tarefa de entrada inválida: input_task_id deve referir-se a uma tarefa SUCCEEDED de Texto para imagem, Imagem para imagem, ou uma variante Multivista.
Número de imagens inválido: image_urls deve conter entre 1 e 4 imagens, e texture_image_urls entre 1 e 4.
Formato de imagem inválido: Uma ou mais imagens em image_urls têm formatos não suportados.
Entradas de textura em conflito: texture_image_urls não pode ser combinado com texture_image_url ou texture_prompt, e requer should_texture: true.
Modelo não suportado para textura multivista: texture_image_urls requer ai_modelmeshy-7.1 ou latest.
URL inacessível: Um ou mais elementos de image_urls ou texture_image_urls não puderam ser descarregados.
Resolução não suportada para entrada de múltiplas imagens: geometry_resolution: "4k" não está disponível neste endpoint; use 2k ou standard.
Name
401 - Unauthorized
Description
Falha na autenticação. Por favor, verifique a sua chave de API.
Name
402 - Payment Required
Description
Créditos insuficientes para realizar esta tarefa.
Name
429 - Too Many Requests
Description
Excedeu o seu limite de taxa.
Request
POST
/openapi/v1/multi-image-to-3d
# Simple requestcurlhttps://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>" ] }'# With Ultra 2K geometry, PBR texturing and GLB formatcurlhttps://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>" ], "ai_model": "meshy-7.1", "geometry_resolution": "2k", "should_texture": true, "enable_pbr": true, "target_formats": ["glb"] }'
Este endpoint permite obter uma tarefa Multi-imagem para 3D com base num id de tarefa válido.
Consulte O Objeto de Tarefa Multi-imagem para 3D para ver quais
propriedades estão incluídas no objeto de tarefa Multi-imagem para 3D.
Parâmetros
Name
id
Type
path
Description
Identificador único da tarefa Multi-imagem para 3D a obter.
Este endpoint elimina permanentemente uma tarefa Multi-imagem para 3D, incluindo todos os modelos e dados associados. Esta ação é irreversível.
Parâmetros de Caminho
Name
id
Type
path
Description
O ID da tarefa Multi-imagem para 3D a eliminar.
Estado da Tarefa
Uma tarefa que ainda está PENDING é eliminada e os créditos consumidos no
momento da criação são reembolsados.
Uma tarefa que já está IN_PROGRESS não pode ser eliminada: o pedido é
rejeitado com 409 Conflict e a tarefa continua a ser executada. Os créditos de uma tarefa
que o worker já iniciou não são reembolsáveis, pelo que eliminá-la a meio da execução
custar-lhe-ia tanto os créditos como o resultado. Aguarde até que atinja o estado
SUCCEEDED, FAILED ou CANCELED, e só depois a elimine.
Uma tarefa num estado terminal (SUCCEEDED, FAILED ou CANCELED) é eliminada
sem reembolso.
Retorna
Retorna 200 OK em caso de sucesso, ou 409 Conflict quando a tarefa está
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."}
O objeto de tarefa Multi-imagem para 3D é uma unidade de trabalho que a Meshy mantém para gerar um modelo 3D a partir de várias imagens (entre 1 e 4 inclusive). As imagens devem ser do mesmo objeto, idealmente de vistas ou ângulos diferentes.
O objeto tem as seguintes propriedades:
Propriedades
Name
id
Type
string
Description
Identificador único da tarefa. Embora utilizemos um UUID k-sortable para os ids das tarefas como
detalhe de implementação, não deve fazer suposições sobre o formato do id.
Name
type
Type
string
Description
Tipo da tarefa Multi-imagem para 3D. O valor é multi-image-to-3d.
Name
model_urls
Type
object
Description
URL de download para o ficheiro de modelo 3D texturizado gerado pela Meshy. A propriedade de um formato será omitida se o formato não for gerado, em vez de retornar uma string vazia.
Name
glb
Type
string
Description
URL de download para o ficheiro GLB.
Name
fbx
Type
string
Description
URL de download para o ficheiro FBX.
Name
obj
Type
string
Description
URL de download para o ficheiro OBJ.
Name
usdz
Type
string
Description
URL de download para o ficheiro USDZ.
Name
mtl
Type
string
Description
URL de download para o ficheiro MTL, devolvido juntamente com as exportações OBJ quando existem texturas.
Name
stl
Type
string
Description
URL de download para o ficheiro STL.
Name
3mf
Type
string
Description
URL de download para o ficheiro 3MF. Só está presente quando 3mf foi solicitado através de target_formats.
Name
pre_remeshed_glb
Type
string
Description
URL de download para o output GLB original antes do remesh.
Disponível apenas quando a tarefa foi criada com should_remesh: true e save_pre_remeshed_model: true em simultâneo.
Name
thumbnail_url
Type
string
Description
URL de download para a imagem de miniatura do ficheiro de modelo. Equivalente a thumbnail_urls.front quando presente, mantido por motivos de compatibilidade com versões anteriores.
Name
alpha_thumbnail_url
Type
string
Description
URL de download para uma versão com fundo transparente (RGBA) de thumbnail_url. Só está presente quando a tarefa foi criada com alpha_thumbnail: true e a pré-visualização transparente foi renderizada com sucesso; caso contrário, este campo é omitido.
Name
thumbnail_urls
Type
object
Description
URLs de download para quatro miniaturas com vistas cardeais do modelo 3D gerado. Cada valor é um URL assinado para um PNG de 512×512 renderizado com os mesmos materiais e iluminação que thumbnail_url. Útil para pré-visualizar o modelo a partir de vários ângulos em pipelines em lote sem ter de descarregar o GLB.
Só está presente quando a tarefa foi criada com multi_view_thumbnails: true e atingiu o estado SUCCEEDED. Tarefas mais antigas e tarefas criadas sem esta opção ativada não incluirão este campo.
Name
front
Type
string
Description
Vista frontal, rotação de 0° em torno do eixo vertical (corresponde a thumbnail_url).
Name
right
Type
string
Description
Vista direita, rotação de 90°.
Name
back
Type
string
Description
Vista traseira, rotação de 180°.
Name
left
Type
string
Description
Vista esquerda, rotação de 270°.
Name
texture_prompt
Type
string
Description
O prompt de texto que foi utilizado para guiar o processo de texturização.
Name
texture_image_urls
Type
string[]
Description
URLs de download para as imagens de referência de textura que foram utilizadas para criar a tarefa, pela ordem em que foram fornecidas. Só está presente quando a tarefa foi criada com texture_image_urls.
Name
ultra_mode
Type
boolean
⚠ obsoleto
Description
Obsoleto; leia geometry_resolution em vez disso.
Name
geometry_resolution
Type
string
Description
O nível Ultra em que a tarefa foi executada (2k); omitido para standard.
Name
progress
Type
integer
Description
Progresso da tarefa. Se a tarefa ainda não tiver começado, esta propriedade será 0. Depois de a tarefa ter sido concluída com sucesso, esta propriedade passará a ser 100.
Name
started_at
Type
timestamp
Description
Carimbo de data/hora de quando a tarefa foi iniciada, em milissegundos. Se a tarefa ainda não tiver começado, esta propriedade será 0.
Um carimbo de data/hora representa o número de milissegundos decorridos desde 1 de janeiro de 1970 UTC, seguindo
o padrão RFC 3339.
Por exemplo, sexta-feira, 1 de setembro de 2023, às 12:00:00 GMT é representado como 1693569600000. Isto aplica-se a
todos os carimbos de data/hora na Meshy API.
Name
created_at
Type
timestamp
Description
Carimbo de data/hora de quando a tarefa foi criada, em milissegundos.
Name
expires_at
Type
timestamp
Description
Carimbo de data/hora de quando o resultado da tarefa expira, em milissegundos.
Name
finished_at
Type
timestamp
Description
Carimbo de data/hora de quando a tarefa foi concluída, em milissegundos. Se a tarefa ainda não tiver terminado, esta propriedade será 0.
Name
status
Type
string
Description
Estado da tarefa. Os valores possíveis são um de PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
texture_urls
Type
array
Description
Um array de objetos de URL de textura gerados a partir da tarefa. Normalmente, este array contém apenas um objeto de URL de textura. Cada URL de textura tem as seguintes propriedades:
Name
base_color
Type
string
Description
URL de download para a imagem do mapa de cor base.
Name
metallic
Type
string
Description
URL de download para a imagem do mapa metálico.
Se a tarefa for criada com enable_pbr: false, esta propriedade será omitida.
Name
normal
Type
string
Description
URL de download para a imagem do mapa de normais.
Se a tarefa for criada com enable_pbr: false, esta propriedade será omitida.
Name
roughness
Type
string
Description
URL de download para a imagem do mapa de rugosidade.
Se a tarefa for criada com enable_pbr: false, esta propriedade será omitida.
Name
emission
Type
string
Description
URL de download para a imagem do mapa de emissão.
Se a tarefa for criada com enable_pbr: false, ou se ai_model for meshy-6-lite, esta propriedade será omitida.
Name
preceding_tasks
Type
integer
Description
A contagem de tarefas precedentes.
O valor deste campo só é significativo se o estado da tarefa for PENDING.
Name
task_error
Type
object
Description
Detalhes de erro para tarefas falhadas. Consulte Erros para a referência completa do objeto task_error.
Name
consumed_credits
Type
integer
Description
O número de créditos consumidos por esta tarefa. Presente quando o estado da tarefa é PENDING, IN_PROGRESS ou SUCCEEDED. Retorna 0 para tarefas FAILED (os créditos são reembolsados em caso de falha).