• [GEE Tips-1]在Colab配置GEE Python API


    1.为什么是Python API?为什么是Colab?

    Python有许多强大的包,如果可以利用Python调用GEE API,就会显得方便、优雅。但是,国内使用GEE Python API,因为网络原因,容易断线、无响应,如果是少量文件还好,文件多了以后,就会很麻烦;而Colab是Google的云Coding环境,自家服务器之间的通信会稳定许多。此外,由于大家机器的不同,导致本地配置GEE Python API相对困难,相对来讲提高了入门门槛,没有一定的Python基础,很难融会贯通;而Colab是统一的云端环境,无论Python 2还是3,只要一步一步来,很难出错。
    总结起来,就是网络条件不太好,和/或难以使用本地GEE Python API的情况下,Colab不失为一个好的解决方案。
    关于Colab,网络上的教程很多,这里不再赘述。

    2.GEE-Python API配置

    !pip install google-api-python-client
    !pip install pyCrypto
    !pip install earthengine-api
    !earthengine authenticate
    

    pyCrypto包在本地很容易安装失败,但在Colab上不会出现问题,直接用pip即可。
    需要注意的是,Colab下的命令行命令也是在代码窗口里输入,但是需要在前面加上”! “

    !!!!!2020年2月2日更新!!!!!
    现在已经不需要再安装这三个包了,直接

    import ee
    ee.Authenticate()
    

    就完事了

    3.Google Drive文件调用

    如果我们想调用自己的文件,而不把它上传到GEE平台,可以通过Colab调用自己的Google Drive,方法是:

    from google.colab import drive 
    drive.mount('/gdrive')
    

    这里也会出现一个类似于GEE的授权界面,方法类似,大家做的时候就知道啦。

    通过

    /gdrive/My Drive/+文件路径
    

    即可调用Google Drive里面的文件。

    4.测试代码

    import ee
    ee.Initialize()
    image1 = ee.Image('srtm90_v4')
    path = image1.getDownloadUrl({
       'scale': 30,
       'crs': 'EPSG:4326',
       'region': '[[-120, 35], [-119, 35], [-119, 34], [-120, 34]]'
    })
    # 获取下载地址
    print(path)
    
  • 相关阅读:
    npm 常用命令
    vue router 配合transition 切换动画
    非指针 复制对象和数组的两种方法
    Date()对象的设置与解析
    js map()处理数组和对象数据
    鉴别JS数据类型的全套方法
    JS数组与对象的遍历方法大全
    js异步原理与 Promise
    HTTP请求封装:Ajax与RESTful API
    "unresolved reference 'appium' "问题解决
  • 原文地址:https://www.cnblogs.com/wszhang/p/11372485.html
Copyright © 2020-2023  润新知