谷歌街景原理【翻译】

转载自:http://blog.163.com/outmen_jet/blog/static/832604682010821105019937/

原文:http://code.google.com/apis/maps/documentation/javascript/services.html#StreetView

翻译:任我骏驰

(转载请注明出处,标明本文地址)

 

第一部分:创建自定义全景图 (Creating Custom Panoramas)

每一个谷歌街景(Street View)全景照片其实是一张或一组提供了从一个地点360度全景视角的照片。街景全景照片是用了遵循“等矩形投影”(equirectangular (Plate Carrée) projection)的图片。这样的一个投影包括了一个360度的水平视野(完整地绕一周)和一个180度的垂直视野(从正上方到正下方)。这样的视野(fields of view)形成了一张宽高比为2:1的图片。一张完整的环绕一周的全景照片如下图。

谷歌街景原理【翻译】 - 任我骏驰 - 任我骏驰

 
     全景照片通常是通过从一个位置拍多张照片并用全景图片软件将它们拼接在一起制作而成的。(详情可以查看维基百科的比较照片拼接应用程序的文章。)要拍摄这一组全景照片应当让相机安放在一个固定的点上。这样产生的360度全景照片就可以定义成是一个包裹在球体二维表面上的投影。

谷歌街景原理【翻译】 - 任我骏驰 - 任我骏驰

 

把全景图当成是在球体上的投影,并用一个直角座标系来描述。当需要把图片分割成直角瓦片,并通过计算瓦片座标提供相对应的图片时,这样做是很有好处的。

 

 

第二部分:创建自定义的全景图瓦片(Creating Custom Panorama Tiles)

谷歌街景也支持不同级别的图片细节。这样就允许你从默认视野进行缩放控制。通常来说,谷歌街景为每一处全景照片提供了5个级别的缩放分辨率。要是你想通过用单独一张全景图片就完成所有级别的缩放,这样的一张图片要么需要相当大,而这会明显让你的程序变慢;要么这图片的分辨率就很低,致使当放大时就变成了一个糟糕的马赛克图像。然而,幸运的是,我们可以用一种类似用在谷歌地图瓦片上的设计模式来为各个缩放级别的全景图片提供合适的分辨率图像。

当一个谷歌街景图像初次载入,默认情况下,它处在缩放等级1,这时显示了整张全景照片25%的水平宽度(90度的水平视野)。这个视野大致符合一个正常人的视野。从这个默认视野进行“缩小”本质上是提供一个更广的视角,而“放大”则是将视角压窄,视角变小。

谷歌街景全景图自动为所选择的缩放级别计算合适的视野,然后通过选择一系列大致匹配当前水平视野尺寸的对应的图像瓦片,来选择最适合该分辨率的图片。

下面是视野与街景地图缩放级别的对照表:

谷歌街景原理【翻译】 - 任我骏驰 - 任我骏驰
 

要注意,在街景中图片所显示的尺寸完全依赖于屏幕用来展示街景的容器的尺寸(宽度)。如果你用一个比原先更宽的容器来显示街景,服务将仍然提供在某个缩放等级下相同的视野,尽管它可能会换用更适合当前分辨率的一些图像瓦片。

因为一个全景图片是由一个“等矩形投影”组成,这样创建全景图像瓦片就会相对简单。尽管正方形的图像瓦片可能会在正方形的地图上提供更好的表现(因为视野将是正方形),但因为投影的图像的长宽比为2:1,所以2:1比例的图像瓦片用起来就会更简单。

用2:1比例的图像瓦片的情况下,一个单张环绕整个全景的图片就展现全部的全景“世界”(即源图片),这样的缩放级别(zoomLevel)为0级。随着缩放的增大,将需要4zoomLevel 块图像瓦片。(例如,在2级,整张全景图就要由16块图像瓦片组成。)注意:在铺瓦片时用的缩放等级并不直接对应控制街景视野的缩放等级;而是街景通过哪些砖块适合被选择,来控制缩放级别来选择一个视野(Field of View (FoV))。

谷歌街景原理【翻译】 - 任我骏驰 - 任我骏驰
 

通常来说,你会要命名你的图像瓦片,这样它们才能被程序化地选择。这样的一个命名体制将在处理自定义全景图请求部分所讨论。

(转载请注明出处,标明本文地址)

 

【编后记】网上关于全景图片的算法很少,就算有,出来的效果也没有Google的那么流畅。我说这Google不是神了么?!呵呵 对中文资源绝望后,于是开始搜英文的资料,果然发现了这么一篇Google自己写的文档,相当激动啊~哈哈 本来是这是为JavaScript语言写的帮助文档,正好里面涉及了街景服务(StreetView)的原理,感觉弥足珍贵,而且发现这么好的资料居然没有中文版,于是就自己动手翻译啰~  而且,我不止翻译了,我还利用它里面的理论已经成功开发出了一个全景图片浏览器,和Google原版的浏览起来几乎没差别了,一样流畅。今后公布下载地址。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章