真的吗?一副AR眼镜是怎么钢化的?

一副AR眼镜是怎么钢化的?

七种增强现实光学方案及其优缺点

1,直射或离轴反射

这项技术类似于投影仪,可以将图像直接投射到眼镜上,比如Glass Up,即在右镜腿上安装一个迷你投影仪,以镜片作为反射镜,会在镜片上投射出320×240大小的区域,反射后形成平行光进入人眼成像。这种方案虽然不能像手机、平板电脑那样多任务处理,但处理一些短信、简单图表也足够了。Meta glasses也采用了类似的技术——离轴反射镜,与标准抛物面反射镜不同的是,它可以将入射的平行光直接导向并聚焦在特定的角度,支持无限聚焦。极其小巧的投影仪隐藏在框架中,一左一右,半透明LCD上的图像被LED光源投射到分束镜上成像,从而提供立体视觉。

2.棱镜光学

最简单的是45度棱镜,将显示器产生的光从眼镜框反射到人眼,同时让现实世界的光透过。这个简单又便宜,众所周知的谷歌眼镜就采用了这个方案。但由于技术限制,即使是谷歌眼镜的缺点也很明显。视场角只有20°左右(棱镜法只能做得更厚以放大FOV),光线需要两次穿过半反半透膜,导致光能利用率低(20%左右),画面较暗。受制造工艺限制,镜片较厚,大面积镜片价格昂贵,成品率低。

3、自由曲面棱镜型

自由曲面是指表面形状不能连续加工的曲面,具有传统加工成型的任意性特征,其设计难度远高于前两类。一般来说,它的形状是楔形玻璃,是旋转对称的XY多项式自由曲面。在这种结构中,光线经过棱镜变换形成虚拟放大像,自由曲面的出射面和自由曲面的反射面可以消除色差和畸变,成像质量更清晰,视角可以达到54度,使用双自由曲面棱镜可以进一步提高。缺点是体积较大,约7-10mm厚。

4.光波导+全息技术

波导可以在玻璃上实现3 mm以内30-40°的视场角,会比普通近视眼镜薄,而且很薄,可以和普通眼镜结合使用。然而,它的设计也是最困难的。这项技术的基本原理是光的全反射和衍射。如图所示,全息波导头盔显示系统主要由微显示器、全息光栅和平板波导组成。图像经过微准直透镜后成为平行光,进入光波导到达第一全息光栅。由于全息光栅的衍射效应,平行光改变其传输方向以满足全反射条件,并沿着波导方向无损耗地向前传播。当平行光传播到第二全息光栅时,全反射条件被破坏,使得平行光从全息波导出射,进入人眼成像。由于全息波导的存在,光学图像可以垂直偏转和传播。这不仅减少了传播距离,而且将光学系统的重心保持在头部内。同时减少了折叠镜的使用,有利于光学系统的简化和轻量化设计。不过这项技术智能实现了单色显示。为了达到色彩效果,必须用三层镜片分别投射出红、绿、蓝三原色,不同的光线组合起来形成色彩。目前HoloLens采用的就是这种方案。

5、光波导+反射技术

由于衍射效应,全息光栅方案将导致色散和图像模糊。因此,以色列公司Lumus采用了光导光学元件(LOE)器件,它采用了更简单的多重反射层结构,而不是全息光栅,如图所示。LOE装置的原理类似于潜望镜,但使用了多个反射镜来扩大出瞳。每一面镜子都反射平行光,这些镜子在同一个图像上。Lumus的代表产品PD-18,分辨率800×600,可视角度26× 20,出瞳10mm,出瞳距离23 mm..器件厚度2.3mm,重量不到70g,亮度1200fL,显示区域透过率70%,其他区域透过率92%。

6.光场技术

光场技术作为近眼3D的另一大技术路线,以Magic Leap为代表。这种技术最大的优点是可以让用户自由对焦,看远看近不会产生传统照片或视频那样的模糊感。该方法的技术核心是光纤投影仪。Magic Leap基于激光在光纤中传播后从光纤端口射出时输出方向与光纤相切的原理,通过改变光纤在三维空间中的形状,尤其是光纤端口处的切线方向,控制激光发射方向,直接投射到视网膜上。

7.视频叠加技术

以上方案难度相对较大,视频叠加技术可以更简单的实现AR效果。视频叠加技术直接用摄像机代替镜头观察现实世界,将虚拟的东西叠加在摄像机拍摄的场景上。这种方法避免了光学设计中的困难,可以增强人的视觉感受。例如,通过使用红外摄像机,我们可以看到红外光谱的场景。但也带来了另一个问题,就是数据运算量极大,亟待解决。

四种“底层”AR实现方法

如果以上是专业的技术解决方案,那么下面我们要介绍的是专门为AR技术爱好者准备的“业余”解决方案。

1,Opencv和C++

总的原理是OpenCV实现标记的识别和定位,然后通过OpenGL将虚拟物体叠加在摄像机图像下,实现增强现实。具体思路是:利用SIFT算法进行识别(提取特征点并用特征向量进行描述,然后将当前视图的特征向量与目标物体的特征向量进行匹配),根据识别出的原始目标与帧图像的匹配关系得到变化矩阵,从而显示三维物体(由OpenGL绘制)并实现跟踪。

2、Python

Python是世界上最优雅的语言。目前大部分计算机视觉项目都是用Python实现的。当然,使用Python CV库也可以轻松实现AR效果。用Python实现AR效果,需要先应用PyGame和PyOpenGL两个开源工具包。PyGame是一个非常流行的游戏开发工具包,可以非常简单地处理显示窗口、输入设备、事件等内容。在实现过程中,需要获取相机矩阵并转换为OpenGL格式,用平面和标记估计姿态,然后在图像中放置虚拟物体,实现增强现实。

3、AR+SLAM

SLAM主要用于地图重建。在AR中,SLAM算法通常用于获取相机姿态。网上有一些SLAM开发资源和AR-SLAM项目案例,有兴趣的可以下载参考。

4、ARToolkit

ARToolKit是一个用C/C++语言编写的库。对于开发AR程序来说,最困难的部分是将虚拟图像实时覆盖到用户的视口,并将其与现实世界中的对象精确对齐。ARToolKit使用图像技术来计算相机和标记卡之间的相对位置,以便程序员可以在标记卡上覆盖他们的虚拟对象。ARToolKit提供的快速准确的标签追踪,使人们能够快速开发许多更新更有趣的AR程序。实现步骤是:程序初始化-抓取一帧视频输入-然后检测标签卡-计算摄像机的传递矩阵-绘制一个虚拟物体-关闭视频捕捉。