You can get the calibration.xml form tango/config/ or use API:
https://developers.google.com/tango/overview/intrinsics-extrinsics
TangoService_getCameraIntrinsics(TangoCameraId camera_id, TangoCameraIntrinsics *intrinsics)
Tips:
1.you have to call inline function TangoService_initializeLibray() before use the API.
TangoSupport_initializeLibrary();
in .cc ->
inline void TangoSupport_initializeLibrary() {
TangoSupport_initialize(TangoService_getPoseAtTime,
TangoService_getCameraIntrinsics);
}
in tango_support_api.h
2.https://developers.google.com/tango/apis/c/c-user-permissions
API calls that require Android Camera permissions
TangoService_getCameraIntrinsics
TangoService_connectOnXYZijAvailable
TangoService_connectOnFrameAvailable
TangoService_connectTextureId
TangoService_disconnectCamera
So you have to add this code to AndroidManifest.xml
<uses-permission android:name="android.permission.CAMERA" />
Otherwise you will get a bunch of magic numbers that have not been initialized.
TangoCameraIntrinsics color_camera_intrinsics;
TangoErrorType err = TangoService_getCameraIntrinsics(
TANGO_CAMERA_COLOR, &color_camera_intrinsics);
if (err != TANGO_SUCCESS) {
LOGE(
"SynchronizationApplication: Failed to get the intrinsics for the color"
"camera.");
std::exit(EXIT_SUCCESS);
}
LOGI("Intrinsics: fx: %f, fy: %f, cx: %f. cy: %f, height: %d,width %d, distortion: %f, %f, %f, %f, %f",
color_camera_intrinsics.fy, color_camera_intrinsics.fy, color_camera_intrinsics.cx,
color_camera_intrinsics.cy,color_camera_intrinsics.height,color_camera_intrinsics.width,
color_camera_intrinsics.distortion[0],color_camera_intrinsics.distortion[1],
color_camera_intrinsics.distortion[2], color_camera_intrinsics.distortion[3],
color_camera_intrinsics.distortion[4]);