4

I am building mobile app which is presenting content on the water.

I would like to present content using AR - 3D content and location markers.

Surface detection is impossible in that case - tell me I am wrong.

On the other hand on the water gravity ensures flatness on the surface.

Is there a way to provide surface manually or maybe I should change the approach to the problem?

I have tested ARKit directly on the water. Sometimes origin was pinned to the deck of the boat and it was jumping to many places.

The only partial solution I see right now is HDAugmentedReality library or Wikitude SDK. Both of them can display markers using geolocation without surface detection but that's only markers.

Jonathan Leffler
  • 730,956
  • 141
  • 904
  • 1,278
Biter
  • 67
  • 2

2 Answers2

3

Water and glass refraction in AR

Refractive/reflective objects like water, glass, mirror, chrome, etc. are bad targets for camera tracking and/or plane detection. Textures on these objects are constantly "changing" (depending on PoV or, in case of water, due to wind's direction that affects a shape and refraction angle of waves). So you cannot rely on these surfaces.

For stable World Tracking and high-quality Plane Detection you need static well-lit objects like walls, tables or floor, not objects with dynamic refraction/reflection. Look at this post for details.

Although, under certain conditions you sometimes can use glass objects for object/image recognition in AR app. Look at this post to find out how to use them in your environment.

Andy Jazz
  • 49,178
  • 17
  • 136
  • 220
3

As @ARGeo said, reflective materials are untrackable.

An alternative could be using lat/lon from GPS and make a projection at altidute 0 (sea level).

The problem in this case is that the altitude is the altitude above the WGS84 reference ellipsoid. It is not the altitude above ground level or sea level.

Here is more detail on that: http://www.gpspassion.com/forumsen/topic.asp?TOPIC_ID=10915.

This error can be corrected; here is a description how to do that by hand: http://www.unavco.org/edu_outreach/tutorial/geoidcorr.html.

The web article links to a calculator to get the Geoid height for correction; I do not know if there is also a web service available for this computation.

Other than that you have to stabilize GPS signal, as the error margin could be relevant at every computation.

Mosè Raguzzini
  • 15,399
  • 1
  • 31
  • 43