import time import torch from PIL import Image from hy3dgen.rembg import BackgroundRemover from hy3dgen.shapegen import Hunyuan3DDiTFlowMatchingPipeline images = { "front": "assets/example_mv_images/1/front.png", "left": "assets/example_mv_images/1/left.png", "back": "assets/example_mv_images/1/back.png" } for key in images: image = Image.open(images[key]).convert("RGBA") if image.mode == 'RGB': rembg = BackgroundRemover() image = rembg(image) images[key] = image pipeline = Hunyuan3DDiTFlowMatchingPipeline.from_pretrained( 'tencent/Hunyuan3D-2mv', subfolder='hunyuan3d-dit-v2-mv', variant='fp16' ) start_time = time.time() mesh = pipeline( image=images, num_inference_steps=50, octree_resolution=380, num_chunks=20000, generator=torch.manual_seed(12345), output_type='trimesh' )[0] print("--- %s seconds ---" % (time.time() - start_time)) mesh.export(f'demo_mv.glb')