【AR实验室】ARToolKit之概述篇

  • 时间:
  • 浏览:0
  • 来源:大发时时彩_时时彩破解_大发时时彩破解

0x00 - 前言


我从去年就结束了了英文对AR(Augmented Reality)技术比较关注,或者去年AR行业总爱指在偶尔发声的情形,丝毫那末其"异姓同名"的兄弟VR(Virtual Reality)火爆。至于MR(Mixed Reality)更像是Google Glass事情之前 对AR的洗白。或者今年AR行业出了件大事,没错,别左右想看 ,说的就遇见你 —— Pokemon GO。不想不讨论这款游戏是都有AR游戏,毕竟争议挺大,或者这款游戏其实是让AR火了一把。AR应用开发貌似都有了燎原之势。

0x01 - AR技术定义


目前对AR技术的常见理解一点一点CV(Computer Vision)+CG(Computer Graphic)。CV的法律法律依据一点一点,简单些比如FREAK+ICP(ARToolKit中的NFT),冗杂些一点一点SLAM(Magic Leap)。CG就没哪些地方好说的,利用CV算法获取到的图形相关信息(比如CG中的模型矩阵、视图矩阵、投影矩阵)进行绘制。从你这个点上来说Pokemon GO其实非要算作AR游戏,毕竟人家一点一点基于LBS的。

知乎上有另另一个 话题 - 我完会 给大伙儿儿说下AR的昨天今天明天完会 吗?欢迎一起去讨论 关于未来的AR形态学 ?后面 提到了AR本身 被广泛接受的定义:

1. 本身 是Paul Milgram和Fumio Kishino于1994年定义的“现实-虚拟连续体”。大伙儿描述了从真实环境到虚拟环境的连续体。如图1-2所示,真实场景和虚拟场景分布在两端,在这两者之间接近真实环境的是增强现实,接近虚拟场景的是增强虚拟(扩增虚境),而指在后面 的每项叫做混合实境。

2. 另外本身 定义是1997年北卡大学的Ronald Azuma提出的增强现实的定义。他认为增强现实技术应具有另另一个 具体形态学 :三维注册、虚实融合以及实时交互。

作者:AR学院归海

链接:https://www.zhihu.com/question/33214635/answer/58058935

来源:知乎

著作权归作者所有,转载请联系作者获得授权。

意味着从这另另一个 定义来说,Pokemon GO也是完会 算本身 简单形式的AR游戏,为宜给人在感官上的体验是符合AR的。其其实我知道一点一点人认为下面一点一点才叫AR……或者大伙儿儿还是要有信心的嘛!

这里我表达一下我我该人对AR的看法:

不管是vision based还是LBS,AR在技术上的目标其实一点一点建立另另一个 和现实场景1:1的虚拟世界。从CG的高度,AR最关键的技术点是建立另另一个 相机坐标系,能够获取到现实场景中相应的模型信息(网格、位姿、材质等等)。那末vision based的法律法律依据目前完会 做到对于意味着注册过的识别对象,是完会 获取到它在相机坐标系中的位姿信息。而LBS的法律法律依据更符合一般CG开发的流程,首先利用GPS建立另另一个 世界坐标系,就完会 获取到每个物体在世界坐标系的位置(包括相机),一点一点你就完会 将哪些地方地方物体转化到相机坐标系中,思路差那末来越多是一点一点,一点一点精度上指在一定问提图片。目前给AR下另另一个 精准的定义还太早,我认为用户感官上其实是虚实融合就上完会 有AR。

0x02 - AR技术现状


其实后面 提到了一点一点次Pokemon GO,或者LBS的AR系统并都有我完会 研究的重点,毕竟从目前来看vision based的AR系统才是主流。或者局限于我我该人的见识,只使用过Vuforia、EasyAR、ARToolKit。大伙儿儿有兴趣搞笑的话,完会 看一下知乎上的讨论 - 哪些地方地方比较优秀的AR开源项目,意味着SDK?

Vuforia没得说,商业SDK,支持的形态学 也比较多,好像完会 支持3D Object Tracking,具体支持到哪些地方程度,还那末尝试,大伙儿儿感兴趣完会 登录Vuforia官网。EasyAR是国内的一款SDK,AR识别性能还是要赞另另一个 ,大伙儿儿完会 去看EasyAR官网视频,还是很真实地反映了其性能(不像Magic Leap之前 那个鲸鱼的视频),我该人还是很看好的,比起Vuforia最大优势是免费使用时需要水印(^_^;)。而ARToolKit相对上述另另一个 SDK在识别性能和形态学 上表现的都有很突出,或者ARToolKit胜在开源,意味着你需要做一点AR业务扩展,而Vuforia和EasyAR非要满足你,ARToolKit是另另一个 很好的选则。或者AR其中另另一个 趋势一点一点集成到现有App中,那末使用Vuforia和EasyAR的代价就比较大了。另外作为另另一个 学生,抱着研究学习的心态,ARToolKit就再为宜不过了。

所之前 期我还是专注于ARToolKit的研究上,听说今年秋天ARToolKit6将发布,还是很期待的,ARToolKit官网链接请戳。

0x03 - ARToolKit概述


ARToolKit系统核心思路是一点一点的:

下面以NFT(自然图片追踪,Natural Feature Tracking)为例,简述AR实现流程

1. 通过相机校准(标定),获取到意味着相机制造工艺偏差而造成的畸变参数,也一点一点相机内参(intrinsic matrix),来复原相机模型的3D空间到2D空间的一一对应关系。这对后面 的形态学 提取步骤有很大作用。

2. 根据相机本身 的硬件参数,大伙儿儿完会 计算出相应的投影矩阵(Projection Matrix)。

3. 对待识别的自然图片(也一点一点任意的一张二维图片)进行形态学 提取,获取到一组形态学 点{P1}。

4. 实时对相机获取到的图像进行形态学 提取,也是一组形态学 点{P2}。

5. 使用ICP(Iterative Closest Point)算法来迭代求解这两组形态学 点的RT矩阵(Rotation&Translation),即Pose矩阵,也一点一点图形学中常说的模型视图矩阵(Model View Matrix)。

6. 有了MVP矩阵(Model View Projection),就完会 进行图形绘制了。

0x04 - ARToolKit支持形态学


目前来说,ARToolKit支持自然图片/Marker/2D BarCode的识别。

  • 自然图片外理

你这个应用比较广泛,对用户的限制也会小一点一点。不过最好使用一点形态学 比较明显的图像,效果会更好。

  • Marker/MultiMarker

这是本身 经过特殊外理的图像,需要在边缘包裹邮寄邮寄两层,最外侧是包裹邮寄邮寄了白色/浅色边缘,内侧是包裹邮寄邮寄了黑色边缘,大伙儿儿猜能够猜出来一点一点做主一点一点提高识别度,一起去也方便计算Pose(意味着完会 直接提取边缘来计算Pose)。如下图:

  • 2D BarCode(二维码)

你这个没哪些地方好说的,最常见的。

另外ARToolKit目前支持的渲染引擎是OSG(OpenSceneGraph),不过版本比较低。当然,你也完会 使用OpenGL ES进行绘制。毕竟大伙儿儿只需要获取到了MVP矩阵,理论上绘制每项是完会 完全分开的。

0x05 - 参考资料


  • 我完会 给大伙儿儿说下AR的昨天今天明天完会 吗?欢迎一起去讨论 关于未来的AR形态学 ?
  • 哪些地方地方比较优秀的AR开源项目,意味着SDK?