AR增强现实技术需要什么专业的知识

JavaScript011

AR增强现实技术需要什么专业的知识,第1张

计算机方面的基础:

1. 数学 (概率,统计,微积分等等)

2. 编程语言(java,c++)

3. 数据结构和算法

4. 计算机网络

5. 操作系统和编译原理

计算机视觉

OpenCV

3D开发:unity 等

人机交互

人工智能、机器学习

注:只在微信QQ内置浏览器(水果机暂不支持)、Chrome浏览器(安卓机)、Safari浏览器下测试过

参考自 jeromeetienne/AR.js

网上大多数的demo都是调用 Navigator.getUserMedia() ,但实际上支持iOS11调用摄像头的是 MediaDevices.getUserMedia() 。

经测试,发现 facingMode: "environment" 属性对安卓系统无效,于是只能用类似

MediaStreamTrack.getSources 函数的方法,感觉不是很严谨呢 _(:3」∠)_

经测试,安卓机已不再支持 MediaStreamTrack.getSources 函数方法,并且从

mediaDevices.enumerateDevices 函数获取的所有 devices[i].label 值为空,不再包含 "facing back" 字段。

js中有5种数据类型:Undefined、Null、Boolean、Number和String。\x0d\x0a还有一种复杂的数据类型Object,Object本质是一组无序的名值对组成的。\x0d\x0aUndefined类型只有一个值,即undefined,使用var声明变量,但是未对初始化的,这个变量就是Undefined类型的,例子:\x0d\x0avar \x0d\x0ai\x0d\x0aalert(i == undefined)//true\x0d\x0avar i与var i = \x0d\x0aundefined这两句是等价的。\x0d\x0a包含Undefined值的变量和未定义的变量是不一样的。\x0d\x0aNull类型也只有一个值:null.null表示一个空对象的指针。\x0d\x0aBoolean类型:只有两个字面量true和false。但是js中多有的变量都可以使用Boolean()函数转换成一个Boolean类型的值。\x0d\x0aNumber类型:整数和浮点数。NaN:Not \x0d\x0aa Number。这个数值用于本来要返回一个数值,但是却未能放回一个数值的情况,以防止报错。例如:1/0 \x0d\x0a返回的就是NaN。NaN的特点:1、任何涉及NaN的操作都会返回NaN。2、NaN对任何值都不相等,包括自己NaN本身。\x0d\x0a针对NaN特性,JS内置了isNaN()函数,来确定数值是不是NaN类型。\x0d\x0aString类型:略\x0d\x0atypeof操作符:对一个变量进行推断变量的类型,可能返回以下字符串:\x0d\x0a"undefined" \x0d\x0a如果这个值,未定义或者为初始化\x0d\x0a"boolean" 布尔值\x0d\x0a"string" 字符串\x0d\x0a"number" 数值\x0d\x0a"object" \x0d\x0a对象\x0d\x0a"function" 函数\x0d\x0a用法:typeof 95 或者 typeof(95)会返回"number".