API Nhiều ảnh sang 3D là một tính năng cho phép bạn tích hợp khả năng Nhiều ảnh sang 3D của Meshy vào ứng dụng của riêng bạn. Trong phần này, bạn sẽ tìm thấy tất cả thông tin cần thiết để bắt đầu với API này.
Endpoint này cho phép bạn tạo một tác vụ Nhiều ảnh sang 3D mới. Tham khảo
Đối tượng tác vụ Nhiều ảnh sang 3D để xem những
thuộc tính nào có trong đối tượng tác vụ Nhiều ảnh sang 3D.
Tham số
Chỉ cần một trong hai giá trị input_task_id hoặc image_urls. Nếu cả hai đều được cung cấp, input_task_id sẽ được ưu tiên.
Name
input_task_id
Type
string
Bắt buộc
Description
ID của một tác vụ tạo ảnh đã hoàn thành mà đầu ra (1-4 ảnh) của nó sẽ được dùng làm đầu vào. Tác vụ này phải là một trong các loại sau: Văn bản sang ảnh, Ảnh sang ảnh, Văn bản sang ảnh Đa góc nhìn, hoặc Ảnh sang ảnh Đa góc nhìn. Ngoài ra, nó phải được chạy qua API và có trạng thái SUCCEEDED.
Name
image_urls
Type
array
Bắt buộc
Description
Cung cấp từ 1 đến 4 ảnh để Meshy sử dụng trong việc tạo mô hình. Chúng tôi hiện hỗ trợ các định dạng .jpg, .jpeg, và .png. Tất cả các ảnh nên mô tả cùng một đối tượng từ các góc độ khác nhau để có kết quả tốt nhất.
Có hai cách để cung cấp mỗi ảnh:
URL công khai: Một URL có thể truy cập được từ internet công cộng.
Data URI: Một data URI dạng base64 của ảnh. Ví dụ về một data URI: data:image/jpeg;base64,<dữ liệu ảnh được mã hóa base64 của bạn>.
Đối với meshy-7 (hoặc latest), ảnh đầu tiên được dùng làm góc nhìn chính (mặt trước). Thứ tự của các ảnh còn lại không quan trọng.
Name
ai_model
Type
string
mặc định latest
Description
ID của mô hình sẽ sử dụng. Các giá trị khả dụng: meshy-5, meshy-6, meshy-7, latest (Meshy 7).
Name
ultra_mode
Type
boolean
mặc định false
Description
Bật chế độ tạo Ultra cho hình học có độ chân thực cao hơn với chi tiết bề mặt tinh xảo hơn.
Chỉ được hỗ trợ khi ai_model là meshy-7 (hoặc latest).
Name
should_texture
Type
boolean
mặc định true
Description
Xác định xem có tạo texture hay không. Đặt thành false sẽ bỏ qua giai đoạn texture, cho ra một lưới không có texture.
Chỉ áp dụng khi should_texture = true
Name
enable_pbr
Type
boolean
mặc định false
Description
Tạo các bản đồ PBR (metallic, roughness, normal) bên cạnh màu cơ bản. Bản đồ emission cũng được bao gồm khi ai_model là meshy-6, ngoại trừ khi texture_resolution: 8k. meshy-7 và latest không tạo bản đồ emission.
Name
texture_resolution
Type
string
mặc định 2k
Description
Độ phân giải texture màu cơ bản. Một trong các giá trị 2k (2048×2048), 4k (4096×4096), hoặc 8k (8192×8192). Độ phân giải cao hơn sẽ bắt được nhiều chi tiết bề mặt hơn.
4k và 8k yêu cầu ai_model là meshy-6, meshy-7 hoặc latest. Ở mức 8k, không có bản đồ emission nào được tạo ra.
Name
hd_texture
Type
boolean
⚠ không dùng nữa
mặc định false
Description
Hãy dùng texture_resolution thay thế — tương đương với texture_resolution: "4k". Khi cả hai đều được đặt, texture_resolution sẽ được ưu tiên.
Name
texture_prompt
Type
string
Description
Cung cấp một prompt văn bản để định hướng quá trình tạo texture. Tối đa 800 ký tự.
Name
texture_image_url
Type
string
Description
Cung cấp một ảnh 2d để định hướng quá trình tạo texture. Chúng tôi hiện hỗ trợ các định dạng .jpg, .jpeg, và .png.
Có hai cách để cung cấp ảnh:
URL công khai: Một URL có thể truy cập được từ internet công cộng
Data URI: Một data URI dạng base64 của ảnh. Ví dụ về một data URI: data:image/jpeg;base64,<dữ liệu ảnh được mã hóa base64 của bạn>
Việc tạo texture bằng ảnh có thể không hoạt động tối ưu nếu có sự khác biệt đáng kể về hình học giữa asset gốc và ảnh được tải lên. Chỉ một trong hai giá trị texture_image_url hoặc texture_prompt có thể được dùng để định hướng quá trình tạo texture. Nếu cả hai tham số đều được cung cấp, thì texture_prompt sẽ được dùng theo mặc định để tạo texture cho mô hình.
Name
texture_image_urls
Type
string[]
Description
Cung cấp từ 1 đến 4 ảnh cho thấy cùng một đối tượng từ các góc nhìn khác nhau để định hướng việc tạo texture. Ảnh đầu tiên là góc nhìn chính (mặt trước); thứ tự của các góc nhìn còn lại (trái, sau, phải) không quan trọng.
Mỗi phần tử chấp nhận các định dạng giống như texture_image_url (một URL công khai hoặc một data URI base64, .jpg/.jpeg/.png).
Các ảnh này chỉ định hướng cho texture và độc lập với image_urls — hai danh sách này có thể chứa các ảnh khác nhau và số lượng ảnh khác nhau.
Yêu cầu ai_model là meshy-7 hoặc latest. Không thể kết hợp với texture_image_url hoặc texture_prompt.
Name
should_remesh
Type
boolean
mặc định false (meshy-6), true (others)
Description
Kiểm soát xem có bật giai đoạn remesh hay không. Để có mô hình chất lượng cao nhất, chúng tôi khuyến nghị đặt should_remesh thành false.
Chỉ áp dụng khi should_remesh = true
Name
topology
Type
string
mặc định triangle
Description
Chỉ định topology của mô hình được tạo ra.
Các giá trị khả dụng:
quad: Tạo một lưới chủ yếu là tứ giác.
triangle: Tạo một lưới tam giác đã được giảm số đa giác.
Name
target_polycount
Type
integer
mặc định 30,000
Description
Chỉ định số đa giác mục tiêu trong mô hình được tạo ra. Số đa giác thực tế có thể lệch so với mục tiêu tùy thuộc vào độ phức tạp của hình học.
Phạm vi giá trị hợp lệ thay đổi tùy theo cấp người dùng:
100 đến 300.000 (bao gồm cả hai đầu)
Name
decimation_mode
Type
integer
Description
Bật chế độ giảm số đa giác thích ứng bằng cách đặt một mức số đa giác. Khi được đặt, target_polycount sẽ bị bỏ qua.
Các giá trị khả dụng:
1: Thích ứng — số đa giác cực cao (ultra).
2: Thích ứng — số đa giác cao.
3: Thích ứng — số đa giác trung bình.
4: Thích ứng — số đa giác thấp.
Name
save_pre_remeshed_model
Type
boolean
mặc định false
Description
Khi được đặt thành true, Meshy cũng sẽ lưu trữ thêm một file GLB trước khi giai đoạn remesh hoàn tất.
Name
symmetry_mode
Type
string
⚠ không dùng nữa
mặc định auto
Description
Không dùng nữa. Tham số này không còn ảnh hưởng đến đầu ra nữa.
Trường symmetry_mode kiểm soát hành vi đối xứng trong quá trình tạo mô hình.
Các giá trị hợp lệ là:
off: Tắt đối xứng.
auto: Tự động xác định và áp dụng đối xứng dựa trên hình học đầu vào.
on: Bắt buộc đối xứng trong quá trình tạo.
Name
pose_mode
Type
string
mặc định ""
Description
Chỉ định mode tư thế cho mô hình được tạo ra.
Các giá trị khả dụng:
a-pose: Tạo mô hình ở tư thế A.
t-pose: Tạo mô hình ở tư thế T.
"" (chuỗi rỗng): Không áp dụng tư thế cụ thể.
Name
is_a_t_pose
Type
boolean
⚠ không dùng nữa
mặc định false
Description
Hãy dùng pose_mode thay thế. Có tạo mô hình ở tư thế A/T hay không.
Name
image_enhancement
Type
boolean
mặc định true
Description
Tối ưu hóa các ảnh đầu vào để có kết quả tốt hơn. Đặt thành false để giữ nguyên diện mạo chính xác của các ảnh đầu vào mà không qua bất kỳ xử lý phong cách nào.
Chỉ được hỗ trợ khi ai_model là meshy-6, meshy-7 hoặc latest.
Name
remove_lighting
Type
boolean
mặc định true
Description
Loại bỏ các điểm sáng và bóng đổ khỏi texture màu cơ bản, cho ra kết quả sạch hơn, hoạt động tốt hơn trong các thiết lập ánh sáng tùy chỉnh.
Chỉ được hỗ trợ khi ai_model là meshy-6, meshy-7 hoặc latest.
Name
moderation
Type
boolean
mặc định false
Description
Khi được đặt thành true, nội dung đầu vào sẽ tự động được sàng lọc để tìm nội dung có khả năng gây hại. Nếu phát hiện nội dung gây hại, tác vụ sẽ không tiếp tục sang bước tạo.
Mỗi ảnh từ image_urls và văn bản từ texture_prompt sẽ được sàng lọc.
Name
target_formats
Type
string[]
Description
Chỉ định những định dạng file 3D nào sẽ được bao gồm trong đầu ra. Chỉ những định dạng được yêu cầu mới được tạo ra và trả về, điều này có thể giảm thời gian hoàn thành tác vụ.
Các giá trị khả dụng: glb, obj, fbx, stl, usdz, 3mf
Khi bị bỏ qua, tất cả các định dạng ngoại trừ 3mf sẽ được tạo ra. 3mf chỉ được bao gồm khi được chỉ định rõ ràng.
Name
auto_size
Type
boolean
mặc định false
Description
Khi được đặt thành true, dịch vụ sẽ sử dụng thị giác AI để tự động ước tính chiều cao trong thực tế của đối tượng và đổi kích thước mô hình cho phù hợp. Gốc tọa độ sẽ mặc định là bottom trừ khi origin_at được đặt rõ ràng.
Name
alpha_thumbnail
Type
boolean
mặc định false
Description
Khi được đặt thành true, tác vụ sẽ render thêm một phiên bản nền trong suốt (RGBA) của bản xem trước và trả về dưới dạng alpha_thumbnail_url trong phản hồi GET. Trường thumbnail_url hiện có không thay đổi.
Name
multi_view_thumbnails
Type
boolean
mặc định false
Description
Khi được đặt thành true, tác vụ sẽ render thêm bốn ảnh thu nhỏ theo bốn hướng chính (trước, phải, sau, trái) và trả về dưới thumbnail_urls trong phản hồi GET. Trường thumbnail_url hiện có không thay đổi và vẫn trỏ đến góc nhìn phía trước, vì vậy các client hiện tại không bị ảnh hưởng.
Thêm khoảng 3 giây vào độ trễ của tác vụ.
Chỉ áp dụng khi auto_size = true
Name
origin_at
Type
string
mặc định bottom
Description
Vị trí của gốc tọa độ khi auto_size được bật. Các giá trị khả dụng: bottom, center.
Giá trị trả về
Thuộc tính result của phản hồi chứa id tác vụ của tác vụ Nhiều ảnh sang 3D vừa được tạo.
Các chế độ thất bại
Name
400 - Bad Request
Description
Yêu cầu không được chấp nhận. Các nguyên nhân phổ biến:
Thiếu tham số: Phải cung cấp image_urls hoặc input_task_id.
Tác vụ đầu vào không hợp lệ: input_task_id phải tham chiếu đến một tác vụ Văn bản sang ảnh, Ảnh sang ảnh, hoặc biến thể đa góc nhìn có trạng thái SUCCEEDED.
Số lượng ảnh không hợp lệ: image_urls phải chứa từ 1 đến 4 ảnh, và texture_image_urls từ 1 đến 4 ảnh.
Định dạng ảnh không hợp lệ: Một hoặc nhiều ảnh trong image_urls không thuộc các định dạng được hỗ trợ.
Đầu vào texture xung đột: texture_image_urls không thể kết hợp với texture_image_url hoặc texture_prompt, và yêu cầu should_texture: true.
Mô hình không được hỗ trợ cho texture đa góc nhìn: texture_image_urls yêu cầu ai_model là meshy-7 hoặc latest.
URL không thể truy cập: Một hoặc nhiều phần tử trong image_urls hoặc texture_image_urls không thể tải xuống được.
Name
401 - Unauthorized
Description
Xác thực không thành công. Vui lòng kiểm tra khóa API của bạn.
Name
402 - Payment Required
Description
Không đủ tín dụng để thực hiện tác vụ này.
Name
429 - Too Many Requests
Description
Bạn đã vượt quá giới hạn tốc độ.
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 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>" ], "should_texture": true, "enable_pbr": true, "target_formats": ["glb"] }'
Endpoint này cho phép bạn truy xuất một Nhiều ảnh sang 3D task với một id hợp lệ.
Tham khảo Đối tượng Nhiều ảnh sang 3D Task để xem
các thuộc tính nào được bao gồm với đối tượng Nhiều ảnh sang 3D task.
Tham số
Name
id
Type
path
Description
Định danh duy nhất cho Nhiều ảnh sang 3D task cần truy xuất.
Đối tượng Multi-Image to 3D Task là một đơn vị công việc được Meshy theo dõi để tạo mô hình 3D từ nhiều ảnh (từ 1 đến 4 ảnh). Các ảnh nên là của cùng một đối tượng, lý tưởng là từ các góc nhìn hoặc góc độ khác nhau.
Đối tượng này có các thuộc tính sau:
Thuộc tính
Name
id
Type
string
Description
Mã định danh duy nhất cho tác vụ. Mặc dù chúng tôi sử dụng UUID có thể sắp xếp theo k (k-sortable UUID) cho id tác vụ như một chi tiết triển khai, bạn không nên đưa ra bất kỳ giả định nào về định dạng của id.
Name
type
Type
string
Description
Loại của tác vụ Multi-Image to 3D. Giá trị là multi-image-to-3d.
Name
model_urls
Type
object
Description
URL có thể tải xuống của file mô hình 3D có texture được tạo bởi Meshy. Thuộc tính cho một định dạng sẽ bị bỏ qua nếu định dạng đó không được tạo ra, thay vì trả về một chuỗi rỗng.
Name
glb
Type
string
Description
URL có thể tải xuống của file GLB.
Name
fbx
Type
string
Description
URL có thể tải xuống của file FBX.
Name
obj
Type
string
Description
URL có thể tải xuống của file OBJ.
Name
usdz
Type
string
Description
URL có thể tải xuống của file USDZ.
Name
mtl
Type
string
Description
URL có thể tải xuống của file MTL, được trả về cùng với các file xuất OBJ khi có texture.
Name
stl
Type
string
Description
URL có thể tải xuống của file STL.
Name
3mf
Type
string
Description
URL có thể tải xuống của file 3MF. Chỉ xuất hiện khi 3mf được yêu cầu qua target_formats.
Name
pre_remeshed_glb
Type
string
Description
URL có thể tải xuống của kết quả GLB gốc trước khi remesh.
Chỉ có sẵn khi tác vụ được tạo với cả should_remesh: true và save_pre_remeshed_model: true.
Name
thumbnail_url
Type
string
Description
URL có thể tải xuống của ảnh thu nhỏ của file mô hình. Tương đương với thumbnail_urls.front khi có, được giữ lại để tương thích ngược.
Name
alpha_thumbnail_url
Type
string
Description
URL có thể tải xuống của phiên bản nền trong suốt (RGBA) của thumbnail_url. Chỉ xuất hiện khi tác vụ được tạo với alpha_thumbnail: true và bản xem trước trong suốt được render thành công; nếu không, trường này sẽ bị bỏ qua.
Name
thumbnail_urls
Type
object
Description
URL có thể tải xuống cho bốn ảnh thu nhỏ theo bốn hướng chính của mô hình 3D được tạo ra. Mỗi giá trị là một URL có chữ ký dẫn đến ảnh PNG 512×512 được render với cùng vật liệu và ánh sáng như thumbnail_url. Hữu ích để xem trước mô hình từ nhiều góc độ trong các pipeline xử lý theo lô mà không cần tải file GLB.
Chỉ xuất hiện khi tác vụ được tạo với multi_view_thumbnails: true và đã đạt trạng thái SUCCEEDED. Các tác vụ cũ hơn và các tác vụ được tạo mà không bật tùy chọn này sẽ không bao gồm trường này.
Name
front
Type
string
Description
Góc nhìn từ phía trước, xoay 0° quanh trục đứng (khớp với thumbnail_url).
Name
right
Type
string
Description
Góc nhìn bên phải, xoay 90°.
Name
back
Type
string
Description
Góc nhìn từ phía sau, xoay 180°.
Name
left
Type
string
Description
Góc nhìn bên trái, xoay 270°.
Name
texture_prompt
Type
string
Description
Prompt văn bản được sử dụng để hướng dẫn quá trình texture.
Name
texture_image_urls
Type
string[]
Description
URL có thể tải xuống của các ảnh tham chiếu texture đã được sử dụng để tạo tác vụ, theo thứ tự chúng được cung cấp. Chỉ xuất hiện khi tác vụ được tạo với texture_image_urls.
Name
ultra_mode
Type
boolean
Description
Phản chiếu lại giá trị ultra_mode mà tác vụ được tạo với. Chỉ xuất hiện đối với các tác vụ meshy-7 (hoặc latest) có thiết lập rõ ràng ultra_mode; nếu không sẽ bị bỏ qua.
Name
progress
Type
integer
Description
Tiến trình của tác vụ. Nếu tác vụ chưa được bắt đầu, thuộc tính này sẽ là 0. Khi tác vụ đã thành công, giá trị này sẽ trở thành 100.
Name
started_at
Type
timestamp
Description
Dấu thời gian khi tác vụ được bắt đầu, tính bằng milliseconds. Nếu tác vụ chưa được bắt đầu, thuộc tính này sẽ là 0.
Một dấu thời gian đại diện cho số milliseconds đã trôi qua từ ngày 1 tháng 1 năm 1970 UTC, theo
tiêu chuẩn RFC 3339.
Ví dụ, thứ Sáu, ngày 1 tháng 9 năm 2023, 12:00:00 chiều GMT được biểu diễn dưới dạng 1693569600000. Điều này áp dụng
cho tất cả các dấu thời gian trong Meshy API.
Name
created_at
Type
timestamp
Description
Dấu thời gian khi tác vụ được tạo, tính bằng milliseconds.
Name
expires_at
Type
timestamp
Description
Dấu thời gian khi kết quả tác vụ hết hạn, tính bằng milliseconds.
Name
finished_at
Type
timestamp
Description
Dấu thời gian khi tác vụ được hoàn thành, tính bằng milliseconds. Nếu tác vụ chưa hoàn thành, thuộc tính này sẽ là 0.
Name
status
Type
string
Description
Trạng thái của tác vụ. Các giá trị có thể là một trong PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
texture_urls
Type
array
Description
Một mảng các đối tượng URL texture được tạo ra từ tác vụ. Thông thường, mảng này chỉ chứa một đối tượng URL texture. Mỗi URL texture có các thuộc tính sau:
Name
base_color
Type
string
Description
URL có thể tải xuống của ảnh bản đồ màu cơ bản.
Name
metallic
Type
string
Description
URL có thể tải xuống của ảnh bản đồ metallic.
Nếu tác vụ được tạo với enable_pbr: false, thuộc tính này sẽ bị bỏ qua.
Name
normal
Type
string
Description
URL có thể tải xuống của ảnh bản đồ normal.
Nếu tác vụ được tạo với enable_pbr: false, thuộc tính này sẽ bị bỏ qua.
Name
roughness
Type
string
Description
URL có thể tải xuống của ảnh bản đồ roughness.
Nếu tác vụ được tạo với enable_pbr: false, thuộc tính này sẽ bị bỏ qua.
Name
emission
Type
string
Description
URL có thể tải xuống của ảnh bản đồ emission.
Nếu tác vụ được tạo với enable_pbr: false, hoặc ai_model là meshy-5, thuộc tính này sẽ bị bỏ qua.
Name
preceding_tasks
Type
integer
Description
Số lượng tác vụ đang chờ trước tác vụ này.
Giá trị của trường này chỉ có ý nghĩa khi trạng thái tác vụ là PENDING.
Name
task_error
Type
object
Description
Chi tiết lỗi cho các tác vụ thất bại. Xem Lỗi để biết tham chiếu đầy đủ về đối tượng task_error.
Name
consumed_credits
Type
integer
Description
Số lượng tín dụng đã tiêu thụ bởi tác vụ này. Xuất hiện khi trạng thái tác vụ là PENDING, IN_PROGRESS, hoặc SUCCEEDED. Trả về 0 cho các tác vụ FAILED (tín dụng được hoàn lại khi thất bại).