How OpenSFM is calculating the computed_rotation field for openstreetmap streetview images?

102 Views Asked by At

When the spherical images uploaded by mapillary to openstreetmap, it attaches fields to the images like computed_rotation, computed_altitude, computed_camera. In documentation, its mentioned that computed_rotation is in rotation vector in axis-angle representation.I want to know how computed_rotation is being calculated.

Data present in GoPro image

 'GRAV': '-0.4097, 0.9118, -0.0274',
 'IORI': '1.0000, 0.0000, 0.0000, 0.0000',
 'CORI': '0.3888, -0.0908, 0.8825, 0.2483',
 'SHFX': '0.7278',
 'SHFY': '1.9069',
 'SHFZ': '2.0786',
 'ANGX': '5.6211',
 'ANGY': '7.2492',
 'ANGZ': '19.3791',

Explanation of the keys which I found in GoPro GPMF Parser

FourCC Property approximate frequency (Hz) SIUN or UNIT Comment
CORI Camera ORIentation frame rate n/a Quaternions for the camera orientation since capture start
IORI Image ORIentation frame rate n/a Quaternions for the image orientation relative to the camera body
GRAV GRAvity Vector frame rate n/a Vector for the direction for gravity

I tried with the camera orientation data which is present in GoPro images in quaternion representation and converting it to rotation vector, but the values are not matching up with the openSFM values

0

There are 0 best solutions below