我正在尝试移植一个旧的增强现实项目,该项目基于另一个透视HMD的metaio框架.
因为metaio是由苹果购买的,它的可用文档和支持非常有限,并且这种新的HMD不支持开箱即用.
除了相机校准/手眼校准之外,一切都已经有效了.
我已经计算了一个Projection矩阵P(使用SPAAM),它将摄像机坐标系中的点变换到屏幕(通过自定义渲染测试).不幸的是,我不能直接在metaio中设置投影矩阵,但必须单独设置相机参数和手眼校准进行渲染.
如所描述因此,我已提取从投影矩阵P的外在和内在的照相机参数这里.
但是这些在设置时无法正常工作.结果似乎没有完全关闭,导致渲染的比例看起来是正确的,并且相机和眼睛之间的手动测量距离约为126mm(在x轴上平移).
内在函数(分辨率:1280 x 720):
我想我错过了一些我不知道的额外步骤.我感谢任何想法和帮助.
附加信息:
transformation projection augmented-reality camera-calibration metaio
我目前在纯Java程序中使用ResourceBundles。现在,我想在Android应用程序中使用相同的文件。当文件放置在例如/ sdcard /时,它可以按预期工作。有没有办法直接从已知的android文件夹结构中加载它们?例如从资产没有手动应对它们到SD卡?
这适用于sdcard:
File file = new File("/sdcard/");
URL[] urls = new URL[0];
try {
urls = new URL[]{file.toURI().toURL()};
} catch (MalformedURLException e) {
e.printStackTrace();
}
ClassLoader loader = new URLClassLoader(urls);
ResourceBundle rb = ResourceBundle.getBundle("test", Locale.DEFAULT, loader);
Run Code Online (Sandbox Code Playgroud)
该网址不适用于assests文件夹:
urls = new URL[]{new URL("file:///android_asset/test/")};
Run Code Online (Sandbox Code Playgroud)
谢谢你的帮助。
我已经计算了每个轴的轴角旋转。如果我只应用三个旋转之一,对象会按预期旋转。
如果我将旋转矩阵相乘,就像您通常在组合旋转时所做的那样,我不会得到所需的结果,因为第一次旋转会影响其他旋转,因此最终结果不是我想要的。
我想将每个旋转应用于对象,就好像它以前没有旋转过一样。
我想这是一项简单的任务,但似乎我没有搜索正确的关键字。(还有标题不完美......(开放建议))
感谢您的每一个提示/帮助。