A API de Imagem para 3D é uma funcionalidade que lhe permite integrar as capacidades de Imagem para 3D da Meshy na sua própria aplicação. Nesta secção, irá encontrar todas as informações
de que necessita para começar a utilizar esta API.
Este endpoint permite-lhe criar uma nova tarefa de Imagem para 3D. Consulte
O objeto de tarefa Imagem para 3D para ver quais
propriedades estão incluídas no objeto de tarefa Imagem para 3D.
Parâmetros
Apenas um dos parâmetros input_task_id ou image_url é 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 cuja saída deve ser usada como imagem de entrada. Esta tarefa deve ser uma das seguintes: Texto para imagem ou Imagem para imagem. Além disso, deve ter sido executada através da API, ter um estado SUCCEEDED e produzir exatamente uma imagem.
Name
image_url
Type
string
Obrigatório
Description
Forneça uma imagem para o Meshy usar na criação do modelo. 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>.
Name
model_type
Type
string
predefinição standard
Description
Especifique o tipo de geração de malha 3D.
Valores disponíveis:
standard: Geração de malha 3D de alta qualidade normal.
smart-topology: Escolha um modelo Smart Topology com ai_model (meshy-t2).
lowpoly (obsoleto): Gera malha low-poly otimizada para polígonos mais limpos. Recomendamos usar smart-topology em alternativa.
Quando smart-topology é selecionado, topology, should_remesh e save_pre_remeshed_model são ignorados.
Quando lowpoly é selecionado, ai_model, topology, target_polycount, should_remesh e save_pre_remeshed_model são ignorados.
Name
ai_model
Type
string
predefinição latest
Description
ID do modelo a usar. Os valores disponíveis dependem de model_type.
meshy-t2 (predefinição): o modelo Smart Topology — topology mais limpa, partes separadas nativamente, saída em triângulos e uma contagem de faces que pode definir com target_polycount.
Name
geometry_resolution
Type
string
predefinição standard
Description
Passagem de geração de geometria. 2k executa a passagem Ultra a 2048³; 4k executa-a a
4096³ para o detalhe de superfície mais fino.
Valores disponíveis: standard, 2k, 4k
Requer meshy-7.1 ou latest.
Name
ultra_mode
Type
boolean
⚠ obsoleto
predefinição false
Description
Use geometry_resolution em alternativa. 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 textura, 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 mapa de emissão.
Name
texture_resolution
Type
string
predefinição 2k
Description
Resolução da textura de cor base. Um dos valores 2k (2048×2048), 4k (4096×4096) ou 8k (8192×8192). Resoluções mais altas captam mais detalhe de superfície.
4k e 8k não estão disponíveis com ai_modelmeshy-6-lite. Em 8k, não é produzido mapa de emissão.
Name
hd_texture
Type
boolean
⚠ obsoleto
predefinição false
Description
Use texture_resolution em alternativa — 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 carateres.
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 por imagem pode não funcionar de forma otimizada se existirem diferenças substanciais de geometria entre o asset original e a imagem carregada. Apenas um dos parâmetros texture_image_url ou texture_prompt pode ser usado para orientar o processo de texturização. Se ambos os parâmetros forem fornecidos, texture_prompt será usado por predefinição para texturizar o modelo. A texturização, seja por texto ou por imagem, custará 10 créditos por tarefa.
Name
should_remesh
Type
boolean
predefinição false (Meshy 6 and Meshy 7 models), true (others)
Description
Controla se a fase de remesh está ativada. Para obter o modelo de maior 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
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 guarda um ficheiro GLB adicional antes da conclusão da fase de remesh.
Name
target_polycount
Type
integer
Description
Número alvo de polígonos (faces) na saída. A contagem real pode divergir do alvo dependendo da geometria.
target_polycount produz efeito em dois casos independentes:
Remesh — com should_remesh: true num modelo standard. A malha é submetida a remesh (decimada) para aproximadamente esta contagem. Intervalo de 100 a 300 000, predefinição 30 000. Se decimation_mode estiver definido, tem prioridade e target_polycount é ignorado.
Smart Topology — com model_type: smart-topology e ai_model: meshy-t2. O modelo é gerado diretamente com esta contagem de faces; não é executado nenhum remesh e should_remesh não é necessário. Intervalo de 100 a 15 000, predefinição 4 000.
Name
symmetry_mode
Type
string
⚠ obsoleto
predefinição auto
Description
Obsoleto. Este parâmetro já não afeta a saída.
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 alternativa. Se deve gerar o modelo numa pose A/T.
Name
image_enhancement
Type
boolean
predefinição true
Description
Otimiza a imagem de entrada para obter melhores resultados. Defina como false para preservar exatamente o aspeto da imagem 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.
Name
moderation
Type
boolean
predefinição false
Description
Quando definido como true, o conteúdo de entrada será automaticamente analisado para deteção de conteúdo potencialmente prejudicial. Se for detetado conteúdo prejudicial, a tarefa não avançará para a geração.
O conteúdo das entradas image_url, texture_image_url e texture_prompt será analisado.
Name
target_formats
Type
string[]
Description
Especifica quais formatos de ficheiro 3D incluir na saída. 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 suportados são incluídos.
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 por IA para estimar automaticamente a altura real do objeto no mundo real 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, atrá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 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: É necessário fornecer image_url ou input_task_id.
Tarefa de entrada inválida: input_task_id deve referir-se a uma tarefa de Texto para imagem ou Imagem para imagem com estado SUCCEEDED que produza exatamente uma imagem.
Formato de imagem inválido: O image_url fornecido não está num formato suportado (.jpg, .jpeg, .png).
URL inacessível: Não foi possível descarregar o image_url (404 ou timeout).
Data URI inválido: A string base64 está malformada.
Combinação de parâmetros inválida: enable_pbr só é suportado quando should_texture é true.
Modelo não suportado para low poly: ai_model: "meshy-6-lite" não suporta model_type: "lowpoly".
Modelo não suportado para Ultra: geometry_resolution requer meshy-7.1 ou latest.
Name
401 - Unauthorized
Description
A autenticação falhou. 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/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"] }'
Este endpoint permite obter uma tarefa de Imagem para 3D com base num id de tarefa válido.
Consulte O Objeto de Tarefa Imagem para 3D para ver quais
propriedades estão incluídas no objeto de tarefa Imagem para 3D.
Parâmetros
Name
id
Type
path
Description
Identificador único da tarefa de Imagem para 3D a obter.
Este endpoint elimina permanentemente uma tarefa de 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 de Imagem para 3D a eliminar.
Estado da Tarefa
Uma tarefa que ainda esteja PENDING é eliminada e os créditos consumidos no
momento da criação são reembolsados.
Uma tarefa que já esteja 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á tenha começado a processar não são reembolsáveis, pelo que eliminá-la
a meio da execução far-lhe-ia perder tanto os créditos como o resultado. Aguarde 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.
Devolve
Devolve 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 Image to 3D Task é uma unidade de trabalho que a Meshy mantém para gerar um modelo 3D a partir de uma entrada de imagem.
O objeto tem as seguintes propriedades:
Propriedades
Name
id
Type
string
Description
Identificador único da tarefa. Embora usemos um UUID k-sortable para os ids de 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 Imagem para 3D. O valor é image-to-3d.
Name
model_urls
Type
object
Description
URL de download para o ficheiro do modelo 3D com textura gerado pela Meshy. A propriedade de um formato será omitida se o formato não for gerado, em vez de devolver 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. Apenas presente quando 3mf foi solicitado através de target_formats.
Name
pre_remeshed_glb
Type
string
Description
URL de download para o resultado GLB original antes do remesh.
Disponível apenas quando a tarefa foi criada com should_remesh: true e save_pre_remeshed_model: true.
Name
thumbnail_url
Type
string
Description
URL de download para a imagem de miniatura do ficheiro do modelo. Equivalente a thumbnail_urls.front quando presente, mantido para 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. Apenas 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 de 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.
Apenas presente quando a tarefa foi criada com multi_view_thumbnails: true e atingiu o estado SUCCEEDED. Tarefas mais antigas e tarefas criadas sem a 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 posterior, 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 usado para orientar o processo de texturização.
Name
texture_image_url
Type
string
Description
URL de download para a imagem de textura que foi usada para orientar o processo de texturização.
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 ou 4k); omitido para standard.
Name
progress
Type
integer
Description
Progresso da tarefa. Se a tarefa ainda não tiver começado, esta propriedade será 0. Uma vez que a tarefa tenha 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
a norma RFC 3339.
Por exemplo, sexta-feira, 1 de setembro de 2023, 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
Uma matriz de objetos de URL de textura gerados pela tarefa. Normalmente, esta matriz 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, meshy-7.1, ou latest, 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 do 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. Devolve 0 para tarefas FAILED (os créditos são reembolsados em caso de falha).