可视化带有纹理的 3d 模型

Visualizing 3d models with textures

我有一个带纹理的 3d 模型,它有一个 obj 文件、mtl 文件和一个用于纹理的 png 图像。 我可以使用 trimesh 和 vtkplotter 在没有纹理的情况下将它们可视化为:

//trimesh//
m = trimesh.load("3dmodel.obj")

//vtkplotter//
m = load("3dmodel.obj")

但是他们将 3d 模型显示为普通网格。 我想看到它们连同纹理。

任何人都可以帮助我查看 3d 模型和纹理。 任何小帮助都会有很大帮助。

您可以尝试以下方法:

from vtkplotter import load

# https://free3d.com/3d-model/091_aya-3dsmax-2020-189298.html
mesh = load("091_W_Aya_100K.obj").texture("tex/091_W_Aya_2K_01.jpg")
mesh.lighting('glossy') # change lighting (press k interactively)

mesh.show()

您可以为此使用 f3d : https://gitlab.kitware.com/f3d/f3d/-/releases

f3d /path/to/3dmodel.obj

你可以这样做:

import numpy as np
import trimesh
from PIL import Image

im = Image.open("Lmobl/texture.png")
mesh = trimesh.load('Lmobl/raw_model.obj',process=False)
tex = trimesh.visual.TextureVisuals(image=im)
mesh.visual.texture = tex
mesh.show()

结果如下:

对于没有纹理的,你会找到答案here