简体   繁体   English

如何直接从Google Map批量下载大量高分辨率卫星图像?

[英]How to batch download large number of high resolution satellite images from Google Map directly?

I'm helping a professor working on a satellite image analysis project, we need 800 images stitching together for a square area at 8000x8000 resolution each image from Google Map, it is possible to download them one by one, however I believe there must be a way to write a script for batch processing. 我正在帮助一位正在研究卫星图像分析项目的教授,我们需要将800张图像拼接成一个方形区域,每张图像分辨率为8000x8000,来自谷歌地图,可以逐个下载,但我相信必须有一个编写用于批处理的脚本的方法。

Here I would like to ask how can I implement this using shell or python script, and how could I download images by google maps url ? 在这里,我想问一下如何使用shell或python脚本实现这一点,我如何通过google maps url下载图像?

Here is an example of the url: 以下是网址的示例:

https://maps.google.com.au/maps/myplaces?ll=-33.071009,149.554911&spn=0.027691,0.066047&ctz=-660&t=k&z=15

However I'm not able to analyse the image direct download link from this. 但是,我无法从中分析图像直接下载链接。

Update: 更新:

Actually, I solved this problem, however due to Google's intention, I would not post the way for doing this. 实际上,我解决了这个问题,但是由于谷歌的意图,我不会发布这样做的方式。

Have you tried the Google static maps API ? 您是否尝试过Google静态地图API

You get 25 000 free requests, but you're limited to 640x640, so you'll need to do ~160 requests at a higher zoom level. 您可以获得25 000个免费请求,但是限制为640x640,因此您需要以更高的缩放级别执行~160个请求。

I suggest downloading the images as so: Downloading a picture via urllib and python 我建议下载图像: 通过urllib和python下载图片

URL to start with: http://maps.googleapis.com/maps/api/staticmap?center=-33.071009,149.554911&zoom=15&size=640x640&sensor=false&maptype=satellite 要开头的网址: http//maps.googleapis.com/maps/api/staticmap?centre = -33.071009,149.554911&zoom = 15&size = 640x640&_sensor = false&maptype = satellite

静态地图

It's been long time since I solved the problem, sorry for the delay. 我解决了这个问题已经有很长时间了,对不起延误。

I posted my code to github here , plz star or fork as you like :) 我把我的代码发布到github 这里 ,你喜欢plz star或fork :)

The idea is to use a virtual web browser at a very high resolution to load the google map page, then do the page capture. 我们的想法是使用非常高分辨率的虚拟Web浏览器加载谷歌地图页面,然后进行页面捕获。 The defect is there will be google symbol all around on each image, the solution is to apply over sampling on the resolution on each of the image, then use the stiching technique to stick them all together. 缺点是每个图像上都会有谷歌符号,解决方案是对每个图像的分辨率应用过采样,然后使用stiching技术将它们粘在一起。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 OCR和OpenCV:高分辨率图像上两帧之间的差异 - OCR & OpenCV: Difference between two frames on high resolution images 如何在Windows Mobile上捕获高分辨率图像 - How to capture high resolution image on Windows Mobile 如何获得high_resolution_clock的精度? - How to get the precision of high_resolution_clock? C ++比较高分辨率时钟和固定数字 - C++ Compare High Resolution Clock with fixed number 在Visual Studio 2017中使用high_resolution_clock获取错误的日期和时间/从纪元时间获取毫秒数(1970年1月1日) - Get wrong date and time with high_resolution_clock in Visual Studio 2017 / Get number of milliseconds from epoch time (1 jan 1970) chrono:如何从两个高分辨率时间点计算毫秒持续时间? - chrono: How can I calculate a millsecond duration from two high resolution time points? 如何创建矩阵向量来存储大量图像? - How to create vector of matrices to store large number of images? 分层图像作为具有高层数的帧缓冲区 - Layered images as framebuffer with high number of layers 如何使用QT获取Google静态地图图像(C ++) - How to get google static map images with QT (C++) 使用OpenCV从IP摄像机获取高分辨率图像 - Take high resolution image from ip camera using opencv
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM