该教程将简单介绍KITTI数据,帮助理解如何将数据映射到XVIZ元素。我们将依次介绍每个XVIZ concept概念,并了解如何映射数据和管理数据依赖关系。本教程还将介绍一些可选的数据生成,以展示一些XVIZ特性,这些特性目前不存在于KITTI数据中,但由XVIZ和streetscap .gl支持。生成XVIZ数据之后,我们将介绍如何使用简单的XVIZ服务器为XVIZ数据提供服务器,并使用示例XVIZ Viewer web应用程序查看XVIZ数据。
在开始本教程之前请先移步GitHub clone XVIZ project,如果你是Linux系统,那恭喜你可以避免很多麻烦,如果你是window系统,恭喜你即将踏入巨坑,其中坑巨多!!!反正我是被坑惨了,一运行出一堆错,搞的我头大如斗。uber xviz应该是默认在Linux系统上运行,但它又没说明,可怜我从来没用过Linux系统,在window上直接运行shell脚本命令简直有毒,反正报了一堆错误我还看不懂,我费了老久才搞懂是出了啥问题,因为时间隔的有多久,我没有立刻记录下来,中间有些细节忘记了,只记得下载了widget+visual builder配置环境,给我造成的心理阴影极大。然后直接运行快速开始命令脚本命令,能看到下载KITTI数据和XVIZ数据转换的结果,uber团队将其中的操作都封装到了.sh脚本中,虽然运行便捷,但对于理解其中的过程并不方便,尤其在我对shell命令并不懂的情况下。所以还是建议学习一下详细的XVIZ文档。
# Clone XVIZ
$ git clone https://github.com/uber/xviz.git
$ cd xviz
# Install dependencies
$ yarn bootstrap
# Download KITTI data
$ ./scripts/download-kitti-data.sh
# Convert KITTI data if necessary and run the XVIZ Server and Client
$ ./scripts/run-kitti-example.sh
XVIZ提供了一个官方示例(example),分为两部分,
一是converting kitti to XVIZ(converters),将原始数据KITTI转换至XVIZ数据,在图中可以观察到很多特征(feature),包括三维场景(3D Scene),播放控制(playback controls),图表(charts),图像(images)以及基础地图(map)。
二是example XVIZ server(server),