航天远景 丁尔男 基于WebAssembly的城市级实景三维地图

CodeWarrior

2019/07/08 发布于 编程 分类

GIAC2019 

文字内容
1. 基于WebAssembly的城市级 实景三维地图 丁尔男 武汉航天远景 应⽤技术总监
2. 摘要 1. 实景三维简介 2. 城市级案例展示 3. 技术内幕 4. 总结及问答
3. 摘要 1. 实景三维简介 2. 城市级案例展示 3. 技术内幕 4. 总结及问答
4. 1. 实景三维简介 • 有什么用 • 怎么来的 2. 城市级案例展示 3. 技术内幕 4. 总结及问答
5. • “实景三维”是一系列以获取精细的地表三维模型为目标的技术的统称 • 倾斜摄影自动建模是实景三维技术的典型代表
6. 湖北省 孝感市 孝南区 张家寨
7. ⼴东省 深圳市 葵涌区
8. 湖北省 武汉市 ⾼新区
9. 四川省 318国道
10. 倾斜摄影 自动建模
11. 1. 实景三维简介 2. 城市级案例展示 3. 技术内幕 4. 总结及问答
12. 1. 实景三维简介 2. 城市级案例展示 3. 技术内幕 • 面临的问题 • 前端技术栈 • WebAssembly简介 4. 总结及问答
13. ⾯临的问题:数据密度、总数据量双⾼
14. 技术栈
15. WebAssembly是什么? • WebAssembly是针对网页的虚拟机标准,它包含了一套类汇编的指令集和对应的栈式虚 拟机体系结构。
16. WebAssembly兼容性如何? • WebAssembly 1.0规范于2018年7月发布,Chrome、Edge、FireFox、Safari等主流浏览器 均已支持。
17. WebAssembly⽰例
18. WebAssembly⽰例
19. WebAssembly指令集 • 4种数据类型 • i32 • i64 • f32 • f64
20. WebAssembly指令集 • 算术运算指令(42条) • i32.add • i32.sub • i32.mul • i32.div_s • i32.div_u • ……
21. WebAssembly指令集 • 位运算指令(22条) • i32.or • i32.xor • i32.shl • i32.shr_s • i32.shr_u • i64.and • i64.or • ……
22. WebAssembly指令集 • 变量访问指令(5条) • get_local • set_local • tee_local • get_global • set_global
23. WebAssembly指令集 • 内存访问指令(25条) • i32.load • i64.load • f32.load • f64.load • i32.store • i64.store • f32.store • f64.store • ……
24. WebAssembly指令集 • 类型转换指令(25条) • i32.wrap/i64 • i32.trunc_s/f32 • i32.trunc_u/f32 • i32.trunc_s/f64 • i32.trunc_u/f64 • i64.extend_s/i32 • i64.extend_u/i32 • i64.trunc_s/f32 • ……
25. WebAssembly指令集 • 比较指令(34条) • i32.eqz • i32.eq • i32.ne • i32.lt_s • i32.lt_u • f32.eq • f32.ne • f32.lt • f32.gt • ……
26. WebAssembly指令集 • 控制流指令(9条) • br • br_if • br_table • return • call • call_indirect • block/end • loop/end • if/else/end
27. WebAssembly指令集 • 常数指令(4条) • i32.const • i64.const • f32.const • f64.const
28. WebAssembly指令集 • 其它指令(4条) • unreachable • nop • drop • select
29. WebAssembly栈式虚拟机
30. • 虽然包含了语言定义,但多数情况下WebAssembly是作为C/C++、Rust、Kotlin、Go等高级 语言的编译目标存在。
33. WebAssembly优势 • 安全,WebAssembly的体系结构确保了wasm代码无法越过WASM VM
34. WebAssembly优势 • 足够快,与本地代码的运行速度处于同一数量级
35. WebAssembly优势 • 打通了JS之外的语言与Web前端之间的屏障 • 充分吸纳其它语言生态圈中的现有资源
36. WebAssembly优势
37. WebAssembly潜在应⽤⽅向 • 增强现实/虚拟现实/游戏 • 音视频编解码 • 辅助设计/地理信息系统 • 区块链 • 边缘计算
38. WebAssembly展望 • SIMD • Threading • wasm64 • Web IDL Binding • WASI
39. 1. 实景三维简介 2. 城市级案例展示 3. 技术内幕 4. 总结及问答
40. 关于倾斜摄影 • 倾斜摄影自动建模技术凭借高度自动化的优势,极大的降低了获取现实世界三维模型的 成本,由此将催生出大量全新的应用模式。
41. 关于WebAssembly • 生于Web,却不止于Web • Ending's law: "Any application that can be compiled to WebAssembly, will be compiled to WebAssembly eventually."
42. WebAssembly福利
43. 欢迎关注msup微信公众账号 关注大会微信公共账号,及时了解大会动态、 日程及每日更新的案例! 关注公众号获得 更多案例实践