Android 如何在ARCore/Sceneform中加速平面检测
ARCore sceneform示例项目“hellosceneform”很酷,效果非常好 问题是需要移动手机以获得放置锚的表面。太慢了 我的应用程序不需要在垂直平面(墙)上显示任何东西,只需要在地板上显示。我是否可以跳过“移动手机”步骤,或者至少加快速度 我试过:Android 如何在ARCore/Sceneform中加速平面检测,android,augmented-reality,arcore,sceneform,Android,Augmented Reality,Arcore,Sceneform,ARCore sceneform示例项目“hellosceneform”很酷,效果非常好 问题是需要移动手机以获得放置锚的表面。太慢了 我的应用程序不需要在垂直平面(墙)上显示任何东西,只需要在地板上显示。我是否可以跳过“移动手机”步骤,或者至少加快速度 我试过: session.getConfig().setPlaneFindingMode(Config.PlaneFindingMode.HORIZONTAL); 认为如果我不需要寻找垂直面,那么一切都会更快。。。。。似乎还不够快 谢谢 隐藏
session.getConfig().setPlaneFindingMode(Config.PlaneFindingMode.HORIZONTAL);
认为如果我不需要寻找垂直面,那么一切都会更快。。。。。似乎还不够快
谢谢 隐藏显示用户应如何移动手机的动画 使用
不幸的是,该框架受到用于检测平面的计算机视觉模型的限制(读取:启用)。plane discovery controller(即“移动手机”步骤)是对用户的轻推,通过摄像头向模型提供检测这些飞机所需的深度信息。删除此步骤不会加快进程,只会让用户无需任何说明
如果不对核心平面检测模型进行改进,我不希望有办法加快速度。我们能做的最好的事情就是想出UX轻推,鼓励用户更有效地横向移动手机。在ARCore中加速平面检测非常容易。下面是一段代码片段:
class MainActivity : AppCompatActivity() {
lateinit var arFrag: ArFragment
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_ux)
arFrag = supportFragmentManager.findFragmentById(R.id.ux_fragment) as ArFragment
arFrag.planeDiscoveryController.hide()
arFrag.planeDiscoveryController.setInstructionView(null)
arFrag.arSceneView.planeRenderer.isEnabled = false
arFrag.arSceneView.scene.setOnUpdateListener(::onFrame)
}
// ........................................................
}
希望这有帮助
class MainActivity : AppCompatActivity() {
lateinit var arFrag: ArFragment
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_ux)
arFrag = supportFragmentManager.findFragmentById(R.id.ux_fragment) as ArFragment
arFrag.planeDiscoveryController.hide()
arFrag.planeDiscoveryController.setInstructionView(null)
arFrag.arSceneView.planeRenderer.isEnabled = false
arFrag.arSceneView.scene.setOnUpdateListener(::onFrame)
}
// ........................................................
}