【发布时间】:2017-02-28 04:47:24
【问题描述】:
我试图通过the documented 从我的 Lenovo Phab 2 中提取相机内在函数和失真系数:
ret = TangoService_getCameraIntrinsics(TANGO_CAMERA_COLOR, &ccIntrinsics);
奇怪的是,每一个失真系数都回到 0。但是,有内在函数的数据,我认为精度非常低。
起初我认为这可能是一个转换错误,但使用 %f、%lf 和 %E 标志 (LOGE();),值不会改变。
我知道在以前的 Google Tango 平板电脑开发套件中,校准系数和失真模型位于一个名为 calibration.xml 的文件中。联想Phab 2也是这样吗?
编辑:将相机内在结构的内容转储到文件后,肯定不会返回设备的失真系数。 IE。所有失真条目都是0.0000。
【问题讨论】:
-
phatty,你能检查一下你的设备上是否有
/sdcard/config/calibration.xml文件吗?您可以使用adb shell进入设备。如果此文件丢失,则您的设备未校准。 -
@JasonGuo 你的设备或已知设备有这个吗?
-
@JasonGuo 我查看了
/root/sdcard/config/并没有找到任何calibration.xml文件。但是,有两个文件夹标记为ocvfreak和lens_invariant_ocvfreak。但是,这些都不包含有用的信息;一对.p文件,当然是无法访问的。 -
是的,一个校准良好的设备应该有这个文件。你有root设备吗?还是生产设备?
-
另外,尝试重启设备。重新启动设备将触发 TangoCore 将校准持久路径复制到 sdcard/config。看看这是否能解决您的问题。