Как получить исторические изображения Street View, используя Google Earth Engine Python API или Street View API - PullRequest
0 голосов
/ 03 июля 2019

У меня есть разные адреса, и мне удалось получить просмотр улиц по этим адресам с помощью Google Street View API.Однако мне нужны восстановленные изображения улиц, чтобы не было окклюзий перед зданиями.Используя просмотр улиц на Google Картах, я могу видеть исторические (прошлые годы) изображения этого адреса, и на некоторых исторических изображениях нет преград.Проблема в том, что мне еще предстоит найти способ получения тех же исторических изображений с помощью API.


def GetStreet(Add,SaveLoc):

  base = "https://maps.googleapis.com/maps/api/streetview?size=600x300&\
pitch=0&location="

  base_meta =  "https://maps.googleapis.com/maps/api/streetview/\
metadata?size=600x300&&location="

  geobase =  "https://maps.googleapis.com/maps/api/geocode/json?address="

# we need to check if an image exists for the given address and if it
# has northeast and southwest lat/lng coord. 

  geo_add = geobase + urllib.request.quote(Add)  + key
  geoJ = requests.get(geo_add).json()


  if 'bounds' in geoJ['results'][0]['geometry']:
    ne = geoJ['results'][0]['geometry']['bounds']['northeast']
    sw = geoJ['results'][0]['geometry']['bounds']['southwest']
    meta_sw = base_meta +  urllib.request.quote(str(sw['lat'])) + ',' + \
      urllib.request.quote(str(sw['lng']))+ key
    meta_swJ = requests.get(meta_sw).json()
    meta_ne = base_meta +  urllib.request.quote(str(ne['lat'])) + ',' + \
      urllib.request.quote(str(ne['lng']))+ key
    meta_neJ = requests.get(meta_ne).json()

    if meta_neJ['status'] =='OK' and meta_swJ['status'] == 'OK':

    # get the two different view points of the same address   

      x_ll_sw = base +  urllib.request.quote(str(sw['lat'])) + ',' + \
      urllib.request.quote(str(sw['lng']))+ key

      img_sw = Add + "_sw.jpg"

    # save the images in the 'SaveLoc' with the file name
      urllib.request.urlretrieve(x_ll_sw, os.path.join(SaveLoc,img_sw))

      x_ll_ne = base + urllib.request.quote(str(ne['lat'])) + ',' + \
      urllib.request.quote(str(ne['lng']))+ key

      img_ne = Add + "_ne.jpg"

    # save the images in the 'SaveLoc' with the file name
      urllib.request.urlretrieve(x_ll_ne, os.path.join(SaveLoc,img_ne))
    else:
      by_add = base +  urllib.request.quote(Add)+ key

      img_name = Add + ".jpg"
      urllib.request.urlretrieve(by_add, os.path.join(SaveLoc,img_name))

  else:
    by_add = base +  urllib.request.quote(Add)+ key

    img_name = Add + ".jpg"
    urllib.request.urlretrieve(by_add, os.path.join(SaveLoc,img_name))



Я предоставил полный код того, как я использовал Street View API для извлечения изображений (часть кода была адаптирована из других источников) и, возможно, поможет вам лучше понять мою проблему.Пожалуйста, дайте мне знать, если возможно получить исторические изображения улиц.

...