首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

iOS ARKit教程:用裸露的手指在空中画画

然而,人类并没有花很长时间才意识到将面孔变成兔子并不是他们最迫切的需求之一,很快就会褪色! 我相信AR一直缺少两个关键的技术飞跃,使它变得有用:可用性和沉浸感。...为了实现前者,ARKit假设您的手机是在真实3D空间中移动的相机,因此在任何点丢弃一些3D虚拟对象将锚定到真实3D空间中的该点。对于后者,ARKit会检测水平平面,如表格,以便您可以在其上放置对象。...node是一个正常的SceneKit节点,放置在平面的确切位置和方向。它没有几何形状,因此它是不可见的。...现在,我们获得了在屏幕上给出2D点的情况下在检测到的曲面上放置3D对象所需的所有信息。那么,让我们开始画画。 画画 让我们首先解释在计算机视觉中绘制跟随人类手指的形状的方法。...随着计算机视觉的进步,以及为小工具(如深度相机)添加更多AR友好的硬件,我们可以访问我们周围越来越多的物体的3D结构。

2.2K30

深入浅出 ARCore

如地面、桌子、书架等等。这样就可以将虚拟物体放置到检测出的水平面上了。 它是如何做到的呢?ARCore通过检测特征点和平面不断改善对现实世界环境的理解。...这样,开发人员就可以使用这些信息,并将虚拟物体放置在平坦的表面上了。 由于ARCore使用特征点检测平面,因此可能无法正确检测到没有纹理的平坦表面(如白色桌面)。 光线评估 ?...如我们要在ARCore环境中放置一个虚拟对象,首先要确定一个锚点,以确保ARCore能随着时间的推移不断跟踪对象的位置。通常情况下,会根据命中测试返回的姿势创建一个锚点。...这就好像您在桌面上放置一个虚拟的花瓶,如果ARCore稍后调整与桌面相关的姿势,那么花瓶仍然会保持在桌面上。...放置虚拟物品 找到了平面,有了跟踪手段,我们就可以将准备好的虚拟物品放置到平台上,现在才是真正的AR哈。 好,知道了这些基本原理后,我们来看看Google Demo是如何做的呢?

3.9K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    从Quest3Vision Pro浅淡“空间计算”

    个人认为除非是有人在旁边不方便外放的情况外,没有必要再另外购置耳机。 续航:差强人意 一体机模式续航 2h 左右。串流模式掉电更快,1h40m 左右就没电了。一分钟跑 1%什么的太可怕了。...生产力相关的生态,额,可以理解为没有,虽然说这次 Quest3 在清晰度和画质上得到了很大的提升,让 Immersed、Horizon Workroom 等可以放置多个虚拟显示大屏的应用达到了可用的程度...AR 将虚拟的信息叠加到现实世界当中,但不支持用户与虚拟对象的深度交互。通过智能手机、平板电脑或特制的 AR 眼镜,用户可以看到真实世界中的物体背后增加了额外的层次,如图像、视频、3D 模型等。...与 AR 不同的是,MR 提供的虚拟对象可以与现实世界和用户进行交互,仿佛这些虚拟对象是真实存在的一部分。MR 需要更高级的传感器和计算能力来实时捕捉环境并与虚拟元素相融合。...环境理解:空间计算使 MR 系统能够理解环境的上下文,如识别墙壁、家具等,并相应地调整虚拟内容的放置和行为。这种对环境的深入理解是提高 MR 体验真实感的关键。

    31311

    如何构建基于移动相机的AR系统

    ,他们需要一种方法让机器人在不用全球定位系统(GPS)的条件下在另外一个星球上进行自身导航。...有许多技术用于增强相机视图上的内容。 基准标记和图像 基准标记是通常印在平面上的黑白图案。计算机视觉算法使用这些标记来扫描图像,从而在相机视图中相应地放置和缩放三维对象。...它改变了普通计算机观察和增强自然环境的方式。深度感应相机分析和映射空间环境,以便在摄影机视图中放置三维对象。最近一个更主流的深度感应相机将是iPhone X的前置摄像头。...点云由计算机参照以在三维环境中放置内容。一旦映射到一个环境中,它们使系统能够记住三维对象在环境中的位置,甚至是在特定的GPS位置。 ?...这些库使用机器学习算法在环境中放置3D对象,并且只需要数码相机进行输入。这些算法在传感器需求方面的实用,在很大程度上导致了最近一段时间AR的狂热。

    1.5K40

    使用MediaPipe在移动设备上进行实时3D对象检测

    宜家的家具展示应用程序就是一个很好的例子,该应用程序将AR用于现实环境中的产品放置。但是,由于相机无法正确缩放数字对象的大小以使其与实际环境完全匹配,因此该领域具有一定的局限性和瓶颈。...3D建模将使用户能够准确捕获对象的大小,方向和位置,这可以为虚拟产品放置和广告工具的进一步发展铺平道路。...用于3D对象检测的后处理的网络体系结构—由Google AI博客提供 为了获得3D边界框,Objectron使用已建立的姿势估计系统- 有效的透视n点估计 -该系统可以在没有对象尺寸预先信息的情况下恢复对象的...具有3D对象检测功能的Objectron将在AR领域产生巨大影响。 此外,该公司的新颖方法AR综合数据生成可以将虚拟对象放置到保存AR会话数据的场景中。它还导致了高质量合成数据与现实环境的无缝集成。...由于具有如此出色的初始用法,因此3D建模有望使虚拟对象放置变得更加智能和更具吸引力,并且在产品放置的边缘视觉领域将获得类似的不断发展。 想尝试一下吗?

    2.4K30

    谷歌增强现实技术ARCore

    环境感知:虚拟物体一般都是放置于平坦平面上的,用ARCore可以检测物体的水平表面,建立环境认知感,以保证虚拟的对象可以准确放置,然后让您看到放置在这些表面上的AR物体。...光线预测:ARCore根据环境的光强度,使开发人员可以与周围环境相匹配的方式点亮虚拟对象。此外,最近的一个实验发现,虚拟阴影在真实环境光照下的调整功能也是如此,这样就可以使AR物体的外观更为逼真。...示例项目依赖于特定版本的软件,如 Gradle 和 Android SDK 等。如果所需的依赖项未能安装,Android Studio 将请求在您的开发机上对其进行下载和安装。...随着设备的移动,应用会自动侦测到水平表面,并绘制出棱形网格。点击网格即可在平面上放置 Android 机器人即可完成移动。...今天的 Web 上并没有适用于 AR 的标准,开发者们可以使用网络工具进行实验,利用 AR 来增强网络体验,手段包括 Java 代码库、three.ar.js 以及适用于 ARCore on Android

    2.2K60

    谷歌增强现实技术ARCore

    环境感知:虚拟物体一般都是放置于平坦平面上的,用ARCore可以检测物体的水平表面,建立环境认知感,以保证虚拟的对象可以准确放置,然后让您看到放置在这些表面上的AR物体。...光线预测:ARCore根据环境的光强度,使开发人员可以与周围环境相匹配的方式点亮虚拟对象。此外,最近的一个实验发现,虚拟阴影在真实环境光照下的调整功能也是如此,这样就可以使AR物体的外观更为逼真。...示例项目依赖于特定版本的软件,如 Gradle 和 Android SDK 等。如果所需的依赖项未能安装,Android Studio 将请求在您的开发机上对其进行下载和安装。然后点击运行即可。...随着设备的移动,应用会自动侦测到水平表面,并绘制出棱形网格。点击网格即可在平面上放置 Android 机器人即可完成移动。...今天的 Web 上并没有适用于 AR 的标准,开发者们可以使用网络工具进行实验,利用 AR 来增强网络体验,手段包括 Java 代码库、three.ar.js 以及适用于 ARCore on Android

    1.6K101

    最新iOS设计规范九|10大系统能力(System Capabilities)

    人们放置对象时,请立即将该对象集成到AR环境中。尽管表面检测可以快速而逐步地提高精度,但是最好避免在放置物体之前等待更精确的数据。...例如,仅允许人们将虚拟家具放在分类为“地板”的平面上,或要求将分类为“桌子”的平面放置在虚拟游戏板上。 设计直观,令人愉悦的对象交互 在可能的情况下,让人们使用直接操纵与对象进行交互。...探索更多引人入胜的互动方法。手势并不是人们与AR中的虚拟对象进行交互的唯一方式。您的应用可以利用其他因素(例如运动和接近度)来使内容栩栩如生。例如,一个游戏角色可以朝一个人走去时转过头看着一个人。...如果您的应用程序支持将虚拟对象放置在出现在设备相机源中的人的后面,请让人们遮挡这些对象,以增强对现实的幻想。 在可能的情况下,让新参与者进入多用户AR体验。...仅当您的应用包含可以在AR中查看的对象和不能在AR中查看的对象的混合时,才使用徽章。如果可以在AR中查看应用程序中的所有对象,则标记是多余的。 保持徽章放置的一致性和清晰性。

    4.3K20

    导入 3D 模型-将您自己的设计融入现实生活中

    我们甚至可以在新的AR Quick Look应用程序中进行真实预览。 下载导入3D模型 要学习本教程,您需要Xcode 10或更高版本,以及SceneKit场景编辑器中的最终Xcode项目。...有时,您可以找到相机节点,在这种情况下您可以删除它们。它们不是必需的,因为ARKit使用设备的相机。 重命名 我将重命名模型的文件和文件夹以使其更加明确。...中心点 我要谈的下一件事是支点。它是所有箭头的交集。旋转对象时,它将转向该点。最重要的是,当您将对象添加到曲面上时,初始放置将是该点。现在,它位于手机的左下方,所以不好。我们将把它改为模型的中间部分。...现在枢轴点位于模型的中心。 展平节点 最后,我们现在需要做的是将所有节点展平为只有一个节点。如果我们不这样做,我们稍后会遇到一些操纵模型的问题。例如,您将旋转手机的边框而不是整个手机。...要展平节点,请右键单击SketchUp,然后展平选区。现在,您将处理一个节点而不是多个节点,但只有在您完成模型编辑后才能执行此操作。让我们从前面看看它的样子。

    3.1K10

    ARKit介绍

    AR - 使用相机创建虚拟对象放置在物理世界中的错觉。 我们知道增强现实并不是新的,但由于Apple的新框架,AR现在正受到很多关注。...使用ARKit测量对象 我真正喜欢的项目之一是“AR Measure App Demo”: 他们创造了一个精确的虚拟标尺,与真实标尺相比,我惊呆了。我心想:“我需要试试这个!”...,所以我决定使用ARKit创建自己的测量应用程序。 我开始观看介绍ARKit:来自WWDC17的iOS增强现实视频。然后我阅读文档并使用演示应用程序(在增强现实中放置对象)。...如果您没有这些知识或任何3D渲染,如Metal,OpenGL或Unity,那么我建议您在使用ARKit之前查看其中一个,因为它将帮助您理解我将呈现的代码(例如,矢量和矩阵等3D概念以及可以对它们执行的一般操作...在那种情况下,我需要平面检测功能。

    2.3K20

    人工智能如何改变视频游戏产业:增强和合成媒体

    本文将解释AI是如何改变视频游戏行业,以及它将如何在未来几年内强烈影响这个行业。...增强现实(AR)与混合现实(MR) 在我的童年,旅行是在汽车上度过的,我将掌上游戏机放置在别扭的角度,这样太阳就可以照亮屏幕,足以让我玩。...但是,如果没有AI和计算机视觉的突破,这一切都是不可能的。 计算机视觉 (Computer vision) 您是否曾经想过社交媒体应用程序中的滤镜是如何将兔子耳朵完美地放置在头顶上方?...在《精灵宝可梦Go》中,游戏是如何将精灵宝可梦垂直放置在地面上而不是空中10英尺高的地方?答案是计算机视觉。 ?...通过检测诸如建筑物侧面,墙壁或地面之类的平面,AR应用程序将了解它能否放置数字对象,例如《精灵宝可梦Go》游戏中的精灵宝可梦。

    1.4K10

    Scale 2023 | 元宇宙中的实时通话

    此外,AR/VR环境为用户提供了更高级别的环境控制,允许用户根据自己的需求自定义周围环境。在VR中,与朋友一起看电影、玩游戏、共同设计规格、在相隔数百英里的情况下在白板上协作,这都是真实的可能性。...序列化:以最紧凑的方式高效序列化对象到线格式 传输:使用低级传输API发送和接收具有可配置特性(如可靠性、延迟、拥塞控制等)的数据包。 服务器:用于选择性转发或数据包扩散的服务器端基础设施。...为了为开发人员提供最人性化的体验,系统应该将这种体系结构的所有内部复杂性抽象化。通常情况下,我们希望开发人员能够使用为其对象定义模式的心理模型。一个对象是一组字段。对象可以在会话中创建、修改和销毁。...完全由参与者拥有的对象只能由该参与者进行变更(例如,由一个化身持有的棒只能由该对象进行变更)。其他对象的所有权可能会在会话中转移。一些世界对象可能根本没有所有者,将由服务器拥有。...随着设备变得更小(例如AR眼镜或VR头戴设备),并且预计设备寿命更长,热要求更严格,如何在这些约束下工作将对在逼真人类代表性方面的探索提出挑战。

    22430

    iOS ARKit教程:赤手在空中绘画

    对许多人来说,它看起来只是另一个优秀的AR库,而不是值得关注测technology disruptor。但是,如果你在过去几年里看到AR的进展情况,那么你不应该太快得出这样的结论。 ?...例如,当开发者从移动设备上获得独立的帧时,AR炒作又开始了。除了大兔子变形金刚的强劲回归之外,我们还看到了一大批应用程序,它们将3D对象打印在二维码上。但他们从来没有像一个概念那样腾飞。...ARSCNView 本身并没有进行AR处理,但它需要一个AR session对象来管理设备摄像头和动作处理。...node 是放置在平面的精确位置和方向上的一个正常的SceneKit节点。它没有几何形状,所以它是不可见的。...现在,在屏幕上给出2D点的情况下,我们拥有所有需要的信息,可以在检测到的曲面上放置一个3D对象。所以,我们开始画图。 画图 让我们先来解释一下,在计算机视觉中,用手指来绘制图形的方法。

    1.8K10

    苹果 AR 的人机界面设计规范

    “点击平面来定位物体” “功能缺陷” “检测到运动过频” 避免打断AR体验的不必要的操作:每一次用户退出或重新进入AR的时候,都会重新检测环境和表面,此时手机和摄像头的位置很可能发生过改变,会导致之前放置的物体会被移位...,甚至可能不再出现在平面上了。...为了避免这种问题,要让用户可以在不退出AR的情况下,也能调节物体、设置。例如,用户把想购买的椅子放进房间时,他们可能会想试一试其他面料的选项,可以把选项的调整设计在AR环节中。...如果此时用户点击屏幕来放置物体,要尽可能使用已获得的信息尽快放置物体。一旦表面检测完成,再巧妙地优化物体的位置。如果一个物体放置的位置超出了检测到的表面,就需要将物体轻轻地推回表面上。...发生问题时,提示用户可能的解决办法:“环境分析”和“表面识别”有时可能因为一些原因无法完成。比如说光线不够好,平面上的反光太强,平面没有足够的细节,或摄像头移动得太快。

    1.6K00

    【开源方案共享】Google新开源AR:DepthLab

    本文介绍 Google最新开源的AR算法:DepthLab 代码:https://github.com/googlesamples/arcore-depth-lab http://mpvideo.qpic.cn...激光反射:通过触摸屏幕,沿相机主轴将虚拟激光从用户渲染到物理对象。激光到达表面时应该反射。hit和reflection算法对于移动AR开发人员应该是可重用的。...碰撞感知放置:测试虚拟对象的体积是否与观察到的环境曲面发生碰撞。 虚拟阴影:渲染投射到物理曲面上的几何体感知阴影。阴影可以与任何具有虚拟对象的移动AR应用程序集成。...环境纹理:使用其他材质(如熔岩、网格、草)重新纹理物理表面。这项技术也可以用来取代天花板的星图您的位置或生成一个地形与草,植物或岩石。 物理仿真:模拟增强现实对象的物理现象,例如碰撞。...AR涂鸦:允许用户触摸屏幕,在实物上绘制/喷涂/绘制虚拟图纸。

    1.1K10

    独家 | GPT-4、Midjourney之外,谭平创业团队要造一个3D基础模型

    在香港科技大学电子与计算机工程系教授谭平看来,这些问题之所以存在,是因为现有的基础模型并没有充分地在 3D 维度上去理解真实世界。 「AI 最终需要解决真实世界的问题,那就必须要和物理世界发生联系。...在回答这个问题时,谭平选择从大规模预训练模型的本质开始讲起。 他表示,预训练模型本质上是在学习数据中的统计规律,希望从数据中发掘出各种对象之间的关联性,也就是「知识」。...不过,在此之前,他们必须解决一个问题:如何在 3D 数据极度匮乏的情况下训练 3D 生成模型。 3D 数据:表达真实世界的稀缺「富矿」 预训练模型的本质是从数据中提炼知识。...单纯基于 2D 图像训练的模型经常会生成多视角不一致的图像(如下图)。 所谓的多视角不一致可以从两个方面来理解:几何不一致(如多个头)和外观不一致(如多张脸)。...这坚定了他深耕 3D 这个方向的信心。 「我非常笃定,在退休之前,我做的工作肯定只会是三维视觉,肯定都是跟自动驾驶、机器人、AR/VR 眼镜相关的东西,除了这个我可能什么都不想碰。」谭平曾对学生说。

    73831

    Sensor Tower报告:ARKit应用下载量已超1300万,47%为游戏内容

    该报告还对热门的ARKit应用类别(除游戏外)进行了整理,排名靠前的分别是:儿童教育类(如上文提到的AR乐高应用《LEGO AR Studio》)、生活实用类(如上文提到的AR卷尺应用《CamToPlan...Pro》)、拍照摄影类(如AR摄影应用《Holo》)等。...但由于Sensor Tower的分析对象是基于ARKit创建的应用,而《Pokemon Go》是后期增加ARKit的兼容,所以并未计入统计。...最后,Sensor Tower表示,ARKit的推出在AR发展中发挥了重要作用。如大型舞台效果的展示、App Store的板块设置及将AR整合至代码的学习中。...借助该功能,ARKit可对垂直表面(如墙壁)进行检测,并将虚拟对象放置在垂直表面上。 但苹果并不是唯一致力于推进AR内容发展的企业,谷歌也在通过ARCore提供AR内容的开发支持。

    76080

    图像平场校正(Flat-field correction)

    理想情况下, 当相机对均匀的目标成像时, 得到图像中所有像素点的灰度值理论上应该是相同的. 然而, 实际上图像中各像素的值往往会有较大差异,此时就需要对图像进行平场校正。...平场矫正中假设该材质在光照强度线性变化的情况下像素值也线性变化,那么对于图像每一个位置上的像素来说,仅需两个标准亮度下产生的灰度值即可对该像素进行平场校正。...记亮场图像为 F: 放置一个宽度足以覆盖整个视野的一致性(反光材质均匀)目标(彩色相机为白色) 调整镜头光圈和照明强度,以获得可能最亮的图像(前提是没有像素饱和)。...获取多个图像,并计算阵列每个像素的平均响应 平场校正 ​ 我们已经获取了校正所需的暗场、亮场基准图像,我们认为暗场图像为相机没有获取任何光信号时自己产生的噪声;亮场图像为光照、反光材质均匀情况下相机拍出的数字图像...为了计算在已知二维平面上的均匀程度,需要将这些数据集转化为真正的分布,我的实践经验是将这些数据在二维平面上分块统计数量,形成二维平面上的统计直方图,归一化后就得到了他们的二维分布,之后就可以计算这个分布和均匀分布之间的距离了

    6.7K20
    领券