Femto Mega pointcloud output yielding only 1/4 of the position data for geo COMP instancing

Putting this in the Beginners category because I am probably missing something simple here. I seem to be missing 3/4 of the position data from the pointcloud output of my Femto Mega when I try to use it for geo COMP instancing. Note: There is a cluster of points near (0,0,0)–not sure what that’s about, but may be a clue as to what’s happening to my position data?

In this scenario, I am attempting to render instances of a circle SOP–one instance for each point in the point cloud output of my Femto Mega. I’m using the orbbec TOP, and the device is connected via LAN.

My goal is to replicate the results in this tutorial video.

I am using build 2023.12120. I haven’t tried this with the Azure TOP yet, as it was recommended in this post to use the Orbbec TOP for point cloud and color data from orbbec devices:

Here is a link to the project, with a video recording of the pointcloud output in the folder for testing. Thanks in advance for any insight!

Hi, I think the issue is that you’re recording the 32 bit floating point texture as an 8 bit movie file so that all of the points are getting cropped to the 0-1 portion of the image.

Unfortunately, saving full point cloud images to a movie file is somewhat challenging because it doesn’t work with traditional compression and each pixel takes 96 bytes versus 24. Some users will save point clouds as a sequence of EXR files, but you can still run into performance issues depending on your disk and cpu speeds.

Another option is to record just the depth image stream and then re-project that into points when you play it back. There is a depthProjection component in the Palette under PointClouds that can help with that.

1 Like

Ohh, that must be what’s going on! I bet I just need to change the pixel format coming out of the orbbec TOP. I am on the road but will report back once I am able to sit down with the orbbec and confirm, but it sounds like that’s exactly what my problem was. Figured it was something simple, especially given that the setup was working just fine with my Kinect v2.

That’s great info about recording point cloud data as well. Thank you so much, Rob!

This was the issue. Pixel format on the Orbbec TOP was set to Use Input–specifying 32-bit float immediately solved it!

1 Like

I’m glad you sorted it out, but I’m a little surprised that you needed to switch the pixel format manually. When the Orbbec TOP is set to ‘Use Input’ by default it should automatically pick the appropriate format for the current image type i.e. 32 bit float for Point Cloud / Depth, 8 bit fixed for Color, etc

Do you have of the other parameters like Resolution or FPS set to non-default values? Do you see the format change with you select a different image type (you can see the current image format in the info popup by middle-clicking on the viewer).

Ahh, I wonder if the global/project FPS is the reason it defaulted to a different pixel format. I didn’t specify a resolution or FPS in the TOP, but I did have the global FPS set to 24.

I just double-checked and the TOP is indeed correctly updating to the appropriate pixel format when I select different camera modes.