Skip to content

Transformation Matrix From Custom Data #1360

@SergioMOrozco

Description

@SergioMOrozco

I am using a Pybullet simulation environment to generate a sequence of images along with camera poses as input to Instant-Ngp in the form of the transformations.json file; however, I cannot figure out how convert between the Pybullet coordinate system and the Instant-Ngp coordinate system.

The pybullet camera that I am using uses the following coordinate system:

  • X = LEFT
  • Y = UP
  • Z = FORWARD

In my mind, this should be a conversion between the two camera coordinate systems, where the Instant Ngp coordinate system uses:

  • X = RIGHT
  • Y = DOWN
  • Z = FORWARD

Therefore, something like this should suffice:

tmp_x = transformation_matrix[0,0:4].copy()
tmp_y = transformation_matrix[1,0:4].copy()
tmp_z = transformation_matrix[2,0:4].copy()

transformation_matrix[0,0:4] = -tmp_x
transformation_matrix[1,0:4] = -tmp_y
transformation_matrix[2,0:4] = tmp_z

Admittedly, my understanding of linear algebra is comically terrible. If somebody could at least guide me in the right direction, I would really appreciate it. I've read through every open/closed issue that discusses the weird coordinate system that Instant Ngp uses, but I haven't found any answers to be satisfactory.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions