一、AR概念简介
它是一种将真实世界信息和虚拟世界信息“无缝”集成的新技术;
将真实的环境和虚拟的物体实时地叠加到了同一个画面或空间同时存在,使很难体验到的实体信息(视觉信息,声音, 触觉等),被人类感官所感知。
AR可广泛应用于娱乐,游戏、教育、展览、医疗等领域。
例子:幼儿读书,手机对着卡片就能出现动画,语音,立体图片解释。
教育领域:增强现实技术可以将静态的文字、图片读物立体化,增加阅读的互动性、趣味性。
二、市面上AR技术应用简介
三、去哪儿AR初体验
1AR抓鸡红包
2AR实景路径导航
这是一款轻量级的“AR全息实景”。它改写了导航就必须有地图的一贯模式,颠覆了手机导航领域的固有格局。你可以跟着它找你周边的任何一个地方,无论是美食、酒店、交通、景点等等。只有你想不到,没有它找不到。无疑是通过AR技术改变路人的行走习惯。
四、技术原理解析
3D数学基础
OpenGL ES 2.0
GLSL
4.1矩阵(1) Matrix 可用大小为 16 的一维数组或4 × 4 的二维数组来表示。
(2) OpenGL 使用列主序矩阵,即列矩阵,因此我们总是倒过来算的(左乘矩阵,变换效果是按从右向左的顺序进行)。
4.2矩阵乘法
4.3平移矩阵
平移矩阵 × 列矩阵(a, b, c, 1) = 列矩阵(a + x, b + y, c + z, 1)
4.4缩放矩阵
缩放矩阵 × 列矩阵(a, b, c, 1) = 列矩阵(a × sx, b × sy, c × sz, 1)
4.5绕 X 轴旋转的旋转矩阵
旋转矩阵×列矩阵(a,b,c,1)=列矩阵(a,b×cos(θ)-c×sin(θ),b×-sin(θ)+c×cos(θ),1)
4.6矩阵相乘的顺序很重要
4.7opengles2.0绘制流程
(1)基本处理:设定3d空间中物体的顶点坐标,顶点对应的颜色,顶点的纹理坐标等属性,并且制定绘制方式,如:点绘制,线位置等等。
(2)顶点缓冲对象:顶点的基本数据不变的情况下,可以在初始化阶段将顶点数据经过基本处理后送入顶点缓冲对象,在绘制每一帧图像时就省区了顶点数据io的麻烦,直接从顶点缓冲对象获取数据。
(3)顶点着色器:顶点的变换,如平移,旋转,缩放等;法向量的计算,纹理坐标的变换等操作。
(4)片元着色器:对纹理采样,设置显示雾的颜色,浓度,范围等。
(5)图元装配:一个是图元组装,另一个是图元处理。
图元组装是指顶点数据根据设置的绘制方式被结合成完整的图元,如绘制方式为一个点则每个顶点就为一个图元。
图元处理最主要的工作是剪裁,消除位于空间之外的部分几何图元5.光栅化:将虚拟的3d世界中的物体投影到视平面上。
(6)剪裁测试:程序中是否设置,opengl es会检查每个片元在帧缓冲中对应的位置,对应位置在裁剪窗口则进入下一个阶段,否则丢弃。
(7)抖动:少量的颜色模拟出更宽的颜色显示范围,从而视觉上更加的丰富,如白色和黑色模拟出一种过度的灰色。
4.8基础代码演示
顶点着色器,如下:
片元着色器,如下:
五、核心算法
1.陀螺仪偏置+加速度滤波+传感器融合算法
2.路径点补点算法
标签: 阿客户端