iOS 中 ARKit2.0 扫描和检测 3d 对象有哪些限制? [英] What are limitations for scanning and detecting 3d object in ARKit2.0 in iOS?

查看:31
本文介绍了iOS 中 ARKit2.0 扫描和检测 3d 对象有哪些限制?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经使用 ARKit 2.0 完成了 3d 对象扫描和检测.我已经从物体的各个侧面扫描了 3d 物体.完成 100% 扫描后,就会为该对象命名,然后将该 ARReference 对象和图像保存在文档目录中.然后单击按钮,我将检测扫描的对象并从文档目录中显示它的名称和图像.

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.

物体被检测到,但检测物体花费的时间太长.我已经阅读了 Apple 文档以获得最佳实践和限制.还有一些关于 ARKit 的问题.

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. 扫描或检测物体时有什么问题吗?扫描 3d 对象的最佳做法是什么?
  2. 扫描和检测对象有哪些限制?
  3. 是否可以在检测物体时进行缩放?
  4. 快速检测对象的最佳做法是什么,即不花太多时间进行检测?

推荐答案

ARKit 工程师给出以下扫描 3D 对象的建议:

  • 250 到 400 lux 的照度照亮物体,并确保它从各个方面都得到良好的照明.
  • 提供大约 ~6500 Kelvin (D65) 的光温——与日光相似.避免温暖或任何其他有色光源.
  • 将对象置于哑光中灰色背景.
  • 为了轻松扫描对象,请使用最新的高性能 iOS 设备(iPhone X/Xs/Xr、iPad Pro).可以在任何支持 ARKit 的设备上检测到扫描对象,但在高性能设备上创建高质量扫描的过程会更快、更流畅.
  • 将要扫描的物体放置在没有其他物体的表面(如空桌面)上.
    • 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).
    • 另外,我应该补充四件事:

      • 具有非重复性(与 polkadots 不同)和非平面纹理的对象更可取.扫描纹理不丰富"的对象需要更长的时间.

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

          尽量不要扫描透明物体,例如玻璃雕像一罐水.对于 ARKit 来说,这些类型的对象是不可取的.它们具有 1.03.0 的折射率 (IOR) 并不重要.

          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.

          在扫描时使用缩放是一个有争议的问题.

          Using zoom when scanning is a controversial issue.

          ARObjectScanningConfiguration 对我来说最可靠的场景是扫描 0.5 到 1.5 米外的中等大小的物体.在 ARKit 中 Autofocus 默认启用.

          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.

          希望这会有所帮助.

          这篇关于iOS 中 ARKit2.0 扫描和检测 3d 对象有哪些限制?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆