我正在使用AR Core和Unity 2018.2.20f在Galaxy S7上构建AR场景,在其中我使用AugmentedImageVisualizer跟踪图像并将3d gameObject放在前面。为了跟踪图像,我需要启用自动对焦。问题是我的锚在周围摇晃,有时会完全移开并消失。从调试看来,相机的自动对焦可能会导致跟踪问题。
到目前为止,我最好的解决方法是在检测到图像后将摄像机配置切换为固定,但切换到固定焦点时锚移动的时间的1/3。如果一旦摄像机定焦后锚仍然在视线内,则跟踪效果很好。
其他人以前是否注意到过此问题?有没有一种方法可以更具体地控制相机对焦?
答案 0 :(得分:0)
如果使用ARCore 1.9或更高版本,则对增强图像的跟踪比以前的版本有所改进。请从下面的链接中找到正式版本。
链接: https://github.com/google-ar/arcore-unity-sdk/releases
就调试而言,将配置设置为自动模式就可以了。有时,如果在配置中同时使用平面跟踪和增强图像,则可能会出现抖动。
此外,也无需使用增强可视化器来检测增强图像。以下代码可以帮助跟踪增强图像并放置任何3D对象。
using GoogleARCore;
private List<AugmentedImage> augmentedImages = new List<AugmentedImage>();
public GameObject AndyObject;//object to place on the image
private bool Is_Placed=false;
void Update()
{
Session.GetTrackables<AugmentedImage>(augmentedImages,
TrackableQueryFilter.Updated);
foreach (var image in augmentedImages)
{
if (image.TrackingState == TrackingState.Tracking && Is_Placed==false)
{
Anchor anchor=image.CreateAnchor(image.CenterPose);
var andyref = Instantiate(AndyObject,image.CenterPose.position,
image.CenterPose.rotation);
andyref.transform.parent=anchor.transform;
Is_Placed=true;//To only place the object once
}
}
}