BSB
BSB

Reputation: 277

What are limitations for scanning and detecting 3d object in ARKit2.0 in iOS?

I am done with 3d object scanning and detection with ARKit 2.0. I have scanned 3d object from all sides of object. Once 100% scanning is done then had given name to that object and then save that ARReference Object and image in document directory. Then on button click I am going to detect scanned object and display it’s name and image from document directory.

Object get detected but it’s taking too much time to detect an object. I have gone through Apple document for best practices and limitations. Still having some questions regarding ARKit.

  1. Is anything wrong while scanning or detecting object? What are best practices to scan 3d object?
  2. What are the limitations for scanning and detecting object?
  3. Is it possible to zoom while detecting object?
  4. What are best practices to detect object quickly i.e. not taking too much time for detection?

Upvotes: 0

Views: 1869

Answers (1)

Andy Jazz
Andy Jazz

Reputation: 58053

ARKit engineers give the following recommendation for scanning 3D objects:

  • Light the object with an illuminance of 250 to 400 lux, and ensure that it’s well-lit from all sides.
  • Provide a light temperature of around ~6500 Kelvin (D65) – similar with daylight. Avoid warm or any other coloured light sources.
  • Set the object in front of a matte, middle-grey background.
  • For easy object scanning, use a recent, high-performance iOS device (iPhone X/Xs/Xr, iPad Pro). Scanned objects can be detected on any ARKit-supported device, but the process of creating a high-quality scan is faster and smoother on a high-performance device.
  • Position the object you want to scan on a surface free of other objects (like an empty tabletop).

Also, I should add four things:

  • Objects with non-repetitive (unlike polkadots) and non-flat textures are more preferable. Scanning objects with a "not-rich" texture takes a little longer.

  • Try not to scan transparent objects like a glass statuette or jar of water. For ARKit these kinds of objects are undesirable. It doesn't matter what Index of Refraction (IOR) they have 1.0 or 3.0.

  • Try not to scan highly reflective objects like mirror or chrome sphere. For ARKit these types of objects are undesirable too. Their "texture" depends on angle of view.
  • Try not to scan objects with a chromatic dispersion effect like surface of DVD or precious stones in jewelry.

Using zoom when scanning is a controversial issue.

The most robust scenario for me for ARObjectScanningConfiguration is to scan a middle-sized object 0.5 to 1.5 meters away. In ARKit Autofocus is enabled by default.

All aforementioned recommendations are general. Every object is unique and you need a different amount of time for any unique object to scan.

Hope this helps.

Upvotes: 1

Related Questions