相信许多朋友都有街景图像分析的需求,这时便需要爬取公开的百度街景,如果是境外的城市,就需要从谷歌街景上爬取数据。
街景获取的重要参数
关于街景的爬取,不管是百度街景还是谷歌街景,都需要设置几个关键的参数:
- 百度街景相关参数
heading 表示相机的罗盘方向。接受的值范围为 0 到 360(这两个值都表示北,90表示东,180表示南)。如果未指定航向,系统将计算出一个值,将相机从拍摄最接近照片的点指向指定location。
fov(默认值为90)决定了图片的水平视野。视野以度数表示,允许的最大值为120。处理固定尺寸的视口时(与处理固定尺寸的街景图像时一样),视野本质上表示变焦,数字越小表示变焦级别越高。
pitch(默认为0)指定相机相对于街景拍摄车的向上或向下倾斜角度()。该角度通常(但并不总)是水平的。正值表示相机向上倾斜(90度表示相机垂直向上);负值表示相机向下倾斜(-90表示相机垂直向下)。
只要控制了这些参数,我们便可以根据自己的需求获得对应样式的街景,可获取360℃全景图像或者任意方向任意角度范围的街景图。
爬取街景的流程
1.路网的裁剪
首先要截取目标城市或者目标区域的路网文件,路网文件可以在OpenStreetMap等开放地图下载。
- 目标范围内路网的裁剪
2.路网采样点的提取(路网打点)
然后可以通过gis软件中的“根据距离生成点”工具,可以根据采样距离生成相同间隔的采样点。
- 采样点的提取:根据距离生成点
获取了采样点后,便可将坐标文件输出,作为爬取的依据。这里我们都是采样WG84坐标。
全景图和普通视角街景图
正常视角图(视域在0-120°)
可以设置水平角度来获取对应视角的图片,一般每个采样点爬四张。
- 普通视角
360°全景图
360°的全景图不能直接爬取,需要设置合适的参数爬取多张,然后进行拼接。
-
拼接前:四张不同视角的街景图(谷歌街景)
-
拼接后:360°全景图(谷歌街景)
-
拼接前:四张不同视角的街景图(百度街景)
-
拼接后:360°全景图(百度街景)
街景视角与道路方向、车头方向的关系
街景都是通过街景采集车获取,采集车的方向一般情况下都是与道路方位角一致的,如果我们想获取与道路呈特定视角的街景,也可以车头方向为基准进行角度的调整。
比如我们想获取的四个视角分别是:车头方向、车尾方向、汽车正左、汽车正右
获取的效果下图:
- 可以看到 视角方向与车头朝向一致,并与道路走向一致。
历史街景、历史影像的获取
采集街景图像时间:百度和谷歌街景都可以采集同一街景点位置的历史时期街景,比如我们在百度街景中,可以通过“时光机”查看同一位置的历史街景。
- 通过时光机查看历史街景(百度街景)
在街景爬取中,我们也可以通过数据采集接口爬取所有年份的数据。
- 爬取过程:同一个采样点的不同年份数据
- 爬取结果:同一位置不同年份的街景数据
图片名称中的时间信息:201602_2_118.664648,31.95387827_118.664648_31.95387827_90.png
结尾
关于街景的爬取,都会存在数额限制的问题,针对这个问题,当然也是有解决方案的。
关于街景爬取相关的数据服务和技术服务,具体可以 联系以下:- 1079595370
标签:采样,视角,街景,爬取,全景图,百度 From: https://www.cnblogs.com/jinlongc/p/16908615.html