Point Cloud Integration with Vizard

Point clouds are a set of data points in a coordinate system. In 3D applications this coordinate system is designated by X, Y, and Z coordinates and shows the external surface of an object represented as individual points.

Point clouds are created using 3D scanners, such as DotProduct, Faro, Matterport, and many others. Vizard, WorldViz’s VR development platform, can take just about any industry standard 3D model and render it in real-time, stereoscopically, and fully immersively using virtual reality technologies. It does this with such precision and speed that it can be used for highly sensitive tasks like analyzing as-built assets, conducting risk evaluation, or planning building or system modifications.

Professionals in oil and gas, defense, engineering, and construction already use 3D scanning technology to facilitate these sorts of projects, and now some are taking those scans, or point cloud files, and putting them into immersive viewing technology like our VizMove VR systems.

It is incredibly easy to incorporate VR into existing point-cloud workflows. Companies like DotProduct offer handheld scanning devices, like DotProduct’s DPI-8, which requires only minutes to fully scan an environment. It exports these 3D scans in .dp format and can be stored in the cloud immediately for remote access. These .dp files, as well as other point cloud file types like .3dc, .asc, and .ply, can be imported into Vizard and viewed in whatever VR hardware setup you have available to you at the exact scale that the environments exist in physical reality. If the particular task at hand calls for your point clouds to be meshed into surfaced 3D models, you can convert those files using one of many third party programs, like CloudCompare, which is free to use. These programs can export the resulting meshed 3D models in any of several file types that Vizard can also render in real time.

Steps for Importing a Point Cloud into Vizard:

Point clouds of the format .dp, .ply, .3dc and .asc  can be opened with Vizard’s “Inspector” program and then converted to an OSGB file.

 

If you have a text file with a different extension and the data is in XYZ format, rename the extension to .3dc and then load it in Inspector or Vizard. XYZ data is required while RGB and XYZ normal data are optional. The data should be space separated and RGB values must be in the 0-255 range.

For other file types that can’t be renamed and loaded, try converting them to a Vizard compatible format using CloudCompare. CloudCompare is an open source point cloud and mesh processing application that imports/exports to many different formats.

After opening up Inspector, go to File- Open and navigate to where you saved your point cloud file. One benefit of saving out to Vizard OSGB format is it's binary and will load much faster than do text formats.

In Inspector you can use the Translate, Rotate and Scale tools to manipulate your point cloud.

Create a new “Transform” instance by going to the Create tab in the toolbar and selecting Transform.

From there, drag and drop the original point cloud file into the Transform instance.

To match up the point cloud with Vizard’s point of origin in inspector you can reference the axis seen here:

For an easy way to visualize the point of origin in inspector, add an object (such as a ball) from the Vizard resources folder by going to File- Add and navigating to (C:\Program Files\WorldViz\Vizard5\resources). The added model will import located at the origin. Once the additional object is loaded, you can move the point cloud to match the location of the origin by using the Translate and Rotate tools.

From inspector save the point cloud as a .OSGB file into your Vizard resources folder. If you wish to make further changes to the point cloud using inspector, simply click on the point cloud object in the Vizard resources tab, make changes, and click “save”. This will automatically overwrite the existing model.

You can import the new point cloud into Vizard using the standard viz.add command. (where “art” is the location of your resources folder)

To help in matching up the point cloud to the origin in Vizard you can show the axes by using the following command:

import vizshape

vizshape.addAxes()

 

Tips for optimizing and meshing Point Clouds:

Point clouds with millions of points might be too heavy to render in real-time and therefore aren't usable for virtual reality applications. There are several ways of optimizing the content. Most efficiently, you can remove a certain amount of points without losing detail. Vizard can support a couple million points, exact numbers depend on hardware, display output, and other factors. Below are some tools that can be used to optimize your point cloud.

Point clouds with millions of points might be too heavy to render in real-time and therefore aren't usable for virtual reality applications. There are several ways of optimizing the content. Most efficiently, you can remove a certain amount of points without losing detail. Vizard can support tens of millions of points points viewed simultaneously at full VR frame raters (e.g., 60Hz or higher). The  exact numbers depend on hardware, display output, and other factors. Below are some tools that can be used to optimize your point cloud.

To optimize and mesh point clouds you can use a third party programs, such as CloudCompare, Autodesk ReCap, Autodesk Memento, or MeshLab. If you are using the DotProduct scanner, the included application Phi3D will automatically optimize the point clouds for you. If you do require a meshed model, turning to one of the above mentioned tools will get you there.

To reduce the number of points in a point cloud without losing detail using MeshLab, refer to the following video tutorial:

https://www.youtube.com/watch?v=lttK4uMAMFw

To limit how much of a point cloud is displayed using Recap’s limit box, refer to the following documentation:

https://knowledge.autodesk.com/support/recap/learn-explore/caas/CloudHelp/cloudhelp/2016/ENU/Reality-Capture/files/GUID-A204E8CB-5368-4149-821A-F037BE307605-htm.html

This tutorial shows how to mesh a point cloud using MeshLab:

https://www.youtube.com/watch?v=lHKOJ1dbyJI

This page from our documentation will give some more information on accepted 3D model formats (not including the point cloud formats from the earlier links)

http://docs.worldviz.com/vizard/#3D_model_creation_basics.htm%3FTocPath%3DContent%20Creation%7C3D%20Models%7C_____1

For additional help, our forums are also a great resource which is closely monitored by our development team and is free for anyone to use:

http://forum.worldviz.com/

For handlingLASfiles, werecommendthelaspyPython library byGrantBrown, and can beinstalledautomaticallyusingVizard's Package Manager feature under the tools menu.