使用ZED相机实现空间建图,产生的.obj如何可视化问题的解决办法
基于python环境下的解决方案
aconda下的处理:
基于python3.6的处理
安装可视化的软件包vispy
安装注意:
默认环境下使用pip进行安装的是python2下的
如果在python3下安装使用:
pip3 install vispy如果是acconada环境下的安装使用
conda install -c conda-forge vispy
但是发现能运行,但是无法显示具体的图像:
能显示图像
Python 3.8.8 (default, Apr 13 2021, 19:58:26)
Type 'copyright', 'credits' or 'license' for more information
IPython 7.22.0 -- An enhanced Interactive Python. Type '?' for help.
PyDev console: using IPython 7.22.0
Python 3.8.8 (default, Apr 13 2021, 19:58:26)
[GCC 7.3.0] on linux
import vispy
print(vispy.sys_info())
Platform: Linux-5.4.0-105-generic-x86_64-with-glibc2.10
Python: 3.8.8 (default, Apr 13 2021, 19:58:26) [GCC 7.3.0]
NumPy: 1.20.1
Backend: PyQt5
pyqt4: None
pyqt5: ('PyQt5', '5.9.2', '5.9.7')
pyside: None
pyside2: None
pyglet: None
glfw: None
sdl2: None
wx: None
egl: EGL 1.5 NVIDIA: OpenGL_ES OpenGL
osmesa: None
_test: None
GL version: '4.6.0 NVIDIA 510.60.02'
MAX_TEXTURE_SIZE: 32768
不能显示图像
import vispy
print(vispy.sys_info())
Platform: Linux-5.4.0-105-generic-x86_64-with-Ubuntu-18.04-bionic
Python: 3.6.9 (default, Mar 15 2022, 13:55:28) [GCC 8.4.0]
NumPy: 1.19.5
Backend: egl
pyqt4: None
pyqt5: None
pyqt6: None
pyside: None
pyside2: None
pyside6: None
pyglet: None
glfw: None
sdl2: None
wx: None
egl: EGL 1.5 NVIDIA: OpenGL_ES OpenGL
osmesa: None
tkinter: None
jupyter_rfb: None
_test: None
GL version: '4.6.0 NVIDIA 510.60.02'
MAX_TEXTURE_SIZE: 32768
对比发现,没有关于图形的基础依赖
单独安装任意一个依赖
这里以pyglet为例子
pip3 install --upgrade --user pyglet
安装成功,运行程序:
from vispy import scene, io
canvas = scene.SceneCanvas(keys='interactive', show=True)
view = canvas.central_widget.add_view()
verts, faces, normals, nothing = io.read_mesh("mesh.obj")
mesh = scene.visuals.Mesh(vertices=verts, faces=faces, shading='smooth')
view.add(mesh)
view.camera = scene.TurntableCamera()
view.camera.depth_value = 10
if __name__ == '__main__':
canvas.app.run()
成功运行:
截图如下:
uploading-image-966870.png
浙公网安备 33010602011771号