Software Archive
Read-only legacy content
Announcements
FPGA community forums and blogs have moved to the Altera Community. Existing Intel Community members can sign in with their current credentials.
17060 Discussions

Scene Perception demo R200 (C++) .obj format

Finfa811
Novice
899 Views

Hello,

I would like to know the format of the .obj files that are saved using the Scene Perception demo R200 (C++). Is it?:

v x y z r g b

being x y z in meters, and r g b in normalized values from [0,1]?

Is it a right-hand system: x+ right, y+ down, z+ to the world, with the first camera pose as reference?

 

Thanks.

0 Kudos
3 Replies
Finfa811
Novice
899 Views

Any help, please? Why the output format is not a standard .obj file, like for example the one extracted from the 3D Scan (C#) demo?:

v x y z

vt u v

vn nx ny nz

0 Kudos
Félix_D_
Beginner
899 Views

Hi there,

This was posted a long time ago, but yeah, you got it right, its :

v x y z r g b

With distances in meters and normalized color values in [0, 1].

The right-hand system you gave is also correct, and the reference is the first camera pose from the color point of view, with a strange small pixel-wise decay in my case (+21px, -6px). This might be due to camera intrinsics correction. Plus, if you use a device with IMU, by default the gravity support will be set to true and the reference will be different. I think the reference from the first pose is rotated in order to have gravity directed along the y+ axis (down), for better reconstruction of planar surfaces parallel to the ground.

0 Kudos
Finfa811
Novice
899 Views

Hi Felix,

 

Thank you for providing a detailed answer, I should have done it when I solved my question.

You are right in everything, I have built a device with IMU + r200 and I realized the same issue. You can play with EnableInertialSensorSupport and EnableGravitySensorSupport to find a good solution for IMU cases. Besides, coordinate system can be changed as well using the flags in pxcsession.h:

        COORDINATE_SYSTEM_REAR_DEFAULT = 0x100, /* Right-hand system: X right, Y up, Z to the user */
        COORDINATE_SYSTEM_REAR_OPENCV = 0x200, /* Right-hand system: X right, Y down, Z to the world */
        COORDINATE_SYSTEM_FRONT_DEFAULT = 0x001, /* Left-hand system: X left, Y up, Z to the user */

Cheers.

0 Kudos
Reply