ARKit Image tracking does not work.

Has anyone been able to get image tracking in Unreal on iOS with ARKit?

Information:

  • Apple iPhone XR
  • iOS 12.2
  • ARKit plugin is enabled.
  • Project is setup with HandheldAR template.
  • Build deploys to iOS device successfully.
  • Build on iOS device starts and runs.
  • World tracking seems to work from the HandheldAR template, I can’t visualize the planes.

Here is what I’ve tried in UE 4.22.0:

  • Setup ARCandidateImage data asset with a simple image.
  • Applied the candidate image data asset to the candidate image list in ARSessionConfig.
  • Tested with ARSessionConfig data asset configured to session type = image.
  • Tested with ARSessionConfig data asset configured to session type = world.
  • Verified that the ARSession starts with the config defined above.
  • I’ve tried a range of different candidate images at different resolutions.
  • I’ve tried a range of different widths & heights and orientations in the ARCandidateImage data asset.
  • I’ve tried using “Get all tracked images” function in blueprints.
  • I’ve tried using “Get all geometries” function and casting items in the array to ARTrackedImage in blueprints.

I’ve also tested some of this in UE 4.20.3, and it still doesn’t work. This of course does not make any sense because I’ve seen/followed these blog posts:

How do I resolve this issue? I have C++ experience, but it seems like a black hole to start digging around in xcode figuring out why its not working when it seems clear that it should work.

Thanks,

Here is the blueprint used in UE 4.22.0:

Here is the blueprint used in UE 4.20.3:

I’ve determined the issue, the images I was using were not detailed enough and didn’t contain very much color. So if your having similar issues, make sure you use something with a lot of detectable features, colors and large enough to be scene in the camera.

Thanks for sharing your experiences polypulse… I’ve been struggling with same issue. I will try your suggestion… out of curiosity, are you using the ‘world’ or ‘image’ session type?

I’ve been using world session type.