在iOS的ARKit2.0中扫描和检测3d对象有哪些限制? [英] What are limitations for scanning and detecting 3d object in ARKit2.0 in iOS?
问题描述
我完成了使用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.
- 扫描或检测物体时有什么问题吗?扫描3d对象的最佳做法是什么?
- 扫描和检测物体有哪些限制?
- 检测物体时是否可以缩放?
- 快速检测物体(即不花费太多时间进行检测)的最佳实践是什么?
推荐答案
ARKit工程师对扫描3D对象提出以下建议:
- 以
250 to 400 lux
的照明度照亮对象,并确保所有侧面的照明良好. - 提供约
~6500 Kelvin
(D65)的光照温度–与日光相似.避免使用温暖的光源或其他有色光源. - 将对象设置在
matte, middle-grey background
之前. - 要轻松进行对象扫描,请使用最新的高性能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).
-
具有非重复(与圆点不同)和非平坦纹理的对象是更可取的.扫描具有非丰富"纹理的对象需要花费更长的时间.
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
就像玻璃小雕像或一罐水.对于ARKit,这类对象是不可取的.它们具有1.0
或3.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 have1.0
or3.0
.在扫描过程中存在争议时使用 zoom .
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 ARKitAutofocus
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屋!
另外,我应该添加四件事: