Presentation is loading. Please wait.

Presentation is loading. Please wait.

Creation and Visualization of 3D Scenes with the MRPT library January, 2007 Jose Luis Blanco Claraco Dept. of Automation and System Engineering University.

Similar presentations


Presentation on theme: "Creation and Visualization of 3D Scenes with the MRPT library January, 2007 Jose Luis Blanco Claraco Dept. of Automation and System Engineering University."— Presentation transcript:

1 Creation and Visualization of 3D Scenes with the MRPT library January, 2007 Jose Luis Blanco Claraco Dept. of Automation and System Engineering University of Málaga http://www.isa.uma.es

2 1. Overview Contents 2. The involved classes 3. A sample scene 5. Coding 4. Streaming

3 1. Overview Contents 2. The involved classes 3. A sample scene 5. Coding 4. Streaming

4 Creation and Visualization of 3D Scenes with the MRPT library J.L. Blanco, 2007 1. Overview The aim of the MRPT C++ library: The aim of the 3D scenes framework within the MRPT: - To provide a unified framework of classes representing common data structures and algorithms in mobile robotics: laser scans, camera images, grid and landmark maps, SLAM, … - Offer an easy interface for the programmatic design of 3D scenes that can be efficiently rendered by 3D accelerator cards, probably in parallel to the user application and in real-time.

5 Creation and Visualization of 3D Scenes with the MRPT library J.L. Blanco, 2007 1. Overview In a 3D scene visualization application there are two parts: 1) The user application, which generates 3D scenes from MRPT classes, 2) A standalone GUI application, which can visualize scenes: - Saved in binary files, or - Sent in real-time through TCP/IP streaming of MRPT objects.

6 1. Overview Contents 2. The involved classes 3. A sample scene 5. Coding 4. Streaming

7 Creation and Visualization of 3D Scenes with the MRPT library J.L. Blanco, 2007 2. The Involved Classes There are two main classes for managing 3D scenes: - UTILS::OpenGLScene This class keeps a set of 3D objects and provides basic functionality for accessing to them. - UTILS::OPENGL::Renderizable This is the virtual base class that define the common interface of all 3D objects.

8 Creation and Visualization of 3D Scenes with the MRPT library J.L. Blanco, 2007 2. The Involved Classes UTILS::OpenGLScene

9 Creation and Visualization of 3D Scenes with the MRPT library J.L. Blanco, 2007 2. The Involved Classes UTILS::OPENGL::CRenderizable

10 Creation and Visualization of 3D Scenes with the MRPT library J.L. Blanco, 2007 2. The Involved Classes UTILS::OPENGL::CRenderizable RGB+Alpha color components, in the range [0,1] 3D coordinates, relative the parent object. 3D rotation, in degrees.

11 Creation and Visualization of 3D Scenes with the MRPT library J.L. Blanco, 2007 2. The Involved Classes UTILS::OPENGL::CRenderizable This is the list of classes derived from CRenderizable (the 3D objects):

12 Creation and Visualization of 3D Scenes with the MRPT library J.L. Blanco, 2007 2. The Involved Classes UTILS::OPENGL::CGridPlaneXY

13 Creation and Visualization of 3D Scenes with the MRPT library J.L. Blanco, 2007 2. The Involved Classes UTILS::OPENGL::CArrow

14 Creation and Visualization of 3D Scenes with the MRPT library J.L. Blanco, 2007 2. The Involved Classes UTILS::OPENGL::CEllipsoid Ellipsoids are defined by a covariance matrix and a quantile value: - For a 2x2 matrix it is plotted a 2D ellipse on the XY plane. - For a 3x3 matrix it is plotted the corresponding 3D ellipsoid.

15 Creation and Visualization of 3D Scenes with the MRPT library J.L. Blanco, 2007 2. The Involved Classes UTILS::OPENGL::CEllipsoid It can be specified two draw modes: solid, and wireframe.

16 Creation and Visualization of 3D Scenes with the MRPT library J.L. Blanco, 2007 2. The Involved Classes UTILS::OPENGL::CPointCloud This class has an interface to load it from a “CPointsMap” object (a laser scan can be loaded into this object with two lines of code).

17 Creation and Visualization of 3D Scenes with the MRPT library J.L. Blanco, 2007 2. The Involved Classes UTILS::OPENGL::CTexturedPlane A rectangle with a texture, in CMRPTImage format. It can also be provided an “alpha” image for transparencies.

18 Creation and Visualization of 3D Scenes with the MRPT library J.L. Blanco, 2007 2. The Involved Classes UTILS::OPENGL::CSetOfTriangles This object can be used to import arbitrary 3D Studio models.

19 Creation and Visualization of 3D Scenes with the MRPT library J.L. Blanco, 2007 2. The Involved Classes UTILS::OPENGL::CSetOfObjects This element can be used to group an arbitrary set of 3D objects into a transformed coordinates framework. The “set of objects” can include other “sets” without limitations, up to any desired depth, building a complex tree of objects.

20 1. Overview Contents 2. The involved classes 3. A sample scene 5. Coding 4. Streaming

21 Creation and Visualization of 3D Scenes with the MRPT library J.L. Blanco, 2007 3. A sample scene DEMO_SCENE.3Dscene ( Demo with the 3D scene viewer )

22 1. Overview Contents 2. The involved classes 3. A sample scene 5. Coding 4. Streaming

23 Creation and Visualization of 3D Scenes with the MRPT library J.L. Blanco, 2007 4. Streaming ( Demo with an external application )

24 1. Overview Contents 2. The involved classes 3. A sample scene 5. Coding 4. Streaming

25 Creation and Visualization of 3D Scenes with the MRPT library J.L. Blanco, 2007 5. Coding Example #1: Creating a scene and saving to a file.

26 Creation and Visualization of 3D Scenes with the MRPT library J.L. Blanco, 2007 5. Coding Example #2: Creating a TCP/IP scene streaming server.

27 Creation and Visualization of 3D Scenes with the MRPT library J.L. Blanco, 2007 5. Coding To look at the examples with more detail: http://www.isa.uma.es/C13/jlblanco/default.aspx “Publications” “Technical Reports”

28 Creation and Visualization of 3D Scenes with the MRPT library The End!!


Download ppt "Creation and Visualization of 3D Scenes with the MRPT library January, 2007 Jose Luis Blanco Claraco Dept. of Automation and System Engineering University."

Similar presentations


Ads by Google