pangolin
pangolin是一个轻量的3D库,可用于3维重建、SLAM的中点云数据的可视化等
依赖项
这里安装的是基于pangolin的python版项目,项目原地址https://github.com/uoip/pangolin#Dependencies
依赖项
- GLEW
- OpenGL
安装
git clone https://github.com/uoip/pangolin.git
cd pangolin
mkdir build
cd build
cmake ..
make -j8
cd ..
python setup.py install
安装依赖项
sudo apt-get install libglew-dev
pip install PyOpenGL PyOpenGL_accelerate
报错
安装时会提示如下报错
NameError: name 'install_dirs' is not defined
解决方案:
修改pangolin文件夹中的setup.py文件,在19行下面添加下面这一句
install_dirs = [install_dir]
测试
官方的测试demo,运行这个demo还需要安装numpy
import numpy as np
import OpenGL.GL as gl
import pangolin
pangolin.CreateWindowAndBind('Main', 640, 480)
gl.glEnable(gl.GL_DEPTH_TEST)
# Define Projection and initial ModelView matrix
scam = pangolin.OpenGlRenderState(
pangolin.ProjectionMatrix(640, 480, 420, 420, 320, 240, 0.2, 100),
pangolin.ModelViewLookAt(-2, 2, -2, 0, 0, 0, pangolin.AxisDirection.AxisY))
handler = pangolin.Handler3D(scam)
# Create Interactive View in window
dcam = pangolin.CreateDisplay()
dcam.SetBounds(0.0, 1.0, 0.0, 1.0, -640.0/480.0)
dcam.SetHandler(handler)
while not pangolin.ShouldQuit():
gl.glClear(gl.GL_COLOR_BUFFER_BIT | gl.GL_DEPTH_BUFFER_BIT)
gl.glClearColor(1.0, 1.0, 1.0, 1.0)
dcam.Activate(scam)
# Render OpenGL Cube
pangolin.glDrawColouredCube()
# Draw Point Cloud
points = np.random.random((100000, 3)) * 10
gl.glPointSize(2)
gl.glColor3f(1.0, 0.0, 0.0)
pangolin.DrawPoints(points)
pangolin.FinishFrame()
效果
版权声明:本文为qq_38287351原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。