Image-to-3D Generator avatar

Image-to-3D Generator

Pricing

from $500.00 / 1,000 image-to-3d generations

Go to Apify Store
Image-to-3D Generator

Image-to-3D Generator

Upload a photo, get back a textured 3D mesh (GLB): fast object generation via SF3D or depth-based environment shells for rooms/scenes, with optional AI part-segmentation.

Pricing

from $500.00 / 1,000 image-to-3d generations

Rating

0.0

(0)

Developer

Bahae El Hmimdi

Bahae El Hmimdi

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

2 days ago

Last modified

Categories

Share

Turn any photo into a textured 3D model. Upload an image and get back a ready-to-use GLB mesh in seconds — no manual modeling, no multi-view capture, no photogrammetry rig required. Runs in Standby mode, so requests are answered directly and synchronously, with no run to start or poll.

What does Image-to-3D Generator do?

This Actor wraps a single-image-to-3D pipeline: object mode uses SF3D for fast, high-fidelity mesh generation of a compact subject (product shot, character, prop), and environment mode treats the photo as a non-compact scene (a furnished room, an interior) — it estimates depth and builds a displaced 3D "shell" mesh that follows the room's actual layout. An optional add-on automatically segments a generated object into its individual parts (Hunyuan3D-Part / P3-SAM), useful for rigging, editing, or game-asset pipelines.

Because it runs in Standby mode on the Apify platform, you get monitoring, usage analytics, and pay-per-use billing on top of the underlying generation service, with no infrastructure of your own to manage.

Why use Image-to-3D Generator?

  • Product visualization — turn a single product photo into a 3D asset for AR/VR or web viewers.
  • Game and asset pipelines — quickly block out props or environment pieces from reference photos, with automatic part-splitting for further editing.
  • Interior/architectural previews — convert a room photo into a rough 3D shell for layout or renovation mockups.

How to use Image-to-3D Generator

  1. Open the Actor's Standby URL (shown on the Standby tab once the Actor is running) or call it directly at https://<actor-id>.apify.actor with your Apify token.
  2. Send a POST request to /generate with multipart/form-data: an image file field, plus optional parameters (see Input below).
  3. The response is JSON with a model_url — a relative path.
  4. Fetch the actual GLB file with a GET request to that same Standby host at /download/<token>.

Input

Sent as multipart/form-data fields on POST /generate:

FieldTypeDefaultDescription
imagefilerequiredSource image (PNG, JPEG, or WebP).
modestringobjectobject: compact single subject (fast, SF3D). environment: non-compact scene/room via image+depth displacement.
texture_resolutionnumber512mode=object only. Baked texture resolution, e.g. 512, 1024, 2048.
foreground_rationumber0.85mode=object only. How tightly the subject is cropped before baking.
split_partsbooleanfalsemode=object only. Also segment the generated mesh into parts via Hunyuan3D-Part (P3-SAM).
part_thresholdnumber0.95Only used when split_parts=true.
depth_modelstringDepthPro (mflux)mode=environment only. Depth-estimation backend.
empty_modelstringsdxl_turbomode=environment only. Backend used to remove furniture before depth displacement.
mesh_resolutionnumber128mode=environment only. Room shell mesh grid resolution.
depth_scalenumber2.5mode=environment only. Depth displacement strength.

Output

POST /generate returns:

{
"model_url": "/v1/threed/download/8c0144690bd2420a911fa1aae4693b2f",
"elapsed_seconds": 29.6,
"parts": null
}

GET /download/<token> (note: strip the /v1/threed prefix from model_url, the Actor forwards it internally) returns the raw GLB file — fetch it directly to save or display the mesh.

When split_parts=true, parts is a list of {part_id, url, face_count, vertex_count} objects, one per segmented part, each downloadable the same way.

Pricing

Billed per call to /generate (a mesh generation) — downloading a result via /download is free. Object-mode generations typically finish in under a minute; environment mode is slower since it involves a full depth-estimation and furniture-removal pass.

Tips

  • Use mode=object for anything that's a single, isolated subject — it's the fast path.
  • Reserve mode=environment for full-room/scene photos where you want a layout-following shell rather than a single compact mesh.
  • split_parts=true only makes sense for mode=object results; it's ignored otherwise.

Support

Something not working as expected? Open an issue on this Actor's Issues tab.