1

我正在研究AR.js的增强现实用例,其中 3D 对象不直接出现hiro 标记上,而是在标记周围的某个位置。

当我通过 iPhone 7 从顶部查看我的 AR 场景时,一切看起来都很好,但是当我倾斜相机以获得更多视角时,AR.js 不会将相同的视角应用于 AR 世界,因此远处的虚拟对象显示为如果它们位于倾斜平面上。

我创建了一个示例页面来说明这种行为:从上面看,网格完美匹配,但从侧面看,平面不匹配。

从顶部看的 AR 场景 AR 场景,从底部看

我可以应用任何设置来配置 AR.js (或ARToolKit,它取决于)?也许有一种方法可以在那里定义我的网络摄像头的视野?

[编辑] 一周后,我将我的问题改写为:如何在 AR.js 中使用特定于设备的camera_para.datARToolkit 相机校准文件而不会产生诸如渲染失真之类的副作用?

4

1 回答 1

0

更新相机的固有光学特性(也称为校准)可能会有所帮助!

atoolkitx -calibration应用程序是为校准相机而设计的。不幸的是,该应用程序目前在 App Store 上不可用。但是,您可以使用 Xcode 将其部署到您的开发设备。

或者,ARToolKitX 校准服务器可能包含您的智能手机的相机校准结果 - 不幸的是,它204为 iPhone 7(又名apple/iPhone/iPhone9,3,相机 0,纵横比 16:9 )返回(无内容)。

顺便说一句, 可以在 GitHub 上找到camera_para.dat一些较旧的 iOS 设备

  • iPad 2:0,7 MP
  • iPad Air 2:8 MP,f/2.4
  • iPad Mini 3:5 MP,f/2.4
  • iPhone 4:5 MP,f/2.8
  • iPhone 4s:8 MP,f/2.4
  • iPhone 5:8 MP,f/2.4
  • iPhone 5s:8 MP,f/2.2(类似于 iPhone 6、iPhone 6 Plus)
  • iPhone 6s Plus:12 MP,f/2.2(类似于 iPhone SE、iPhone 6s)

不幸的是,较新的 iPhone 相机有不同的规格(例如 iPhone 7 或 iPhone 8:12 MP,f/1.8),所以我怀疑这些相机校准设置中的任何一个都适合它们......

于 2018-04-30T07:38:45.260 回答