一文讲透:GEE(网页版)与 GEE(Python版)的本质差异与学习路线
自从Google Earth Engine(GEE)火爆以来,各种全球尺度、长时序的研究成为遥感领域的热点。各类围绕GEE的算法和应用呈现井喷式的上升。于此同时,基于GEE的二次开发也随之而来,包括网页版的GEE算法集成和Python版本的GEE二次开发应用。因此,很有必要讲清楚这两个版本的定位差异、使用人群与选择侧重性,为大家科研实战应用打开大门。
说实话,网页版GEE能满足至少85%以上GEE用户的需求,不要盲目追求差异化,而是应该注重科研的实用性。所以,我们先聊一下网页版GEE的优点:1.一体化设计,使用更方便。网页版的GEE将所有的功能一体化设计,使用非常方便。比如在网页上你可以快速查询所有可用的科研数据、API算子、所有应用案例、个人数据上传等等,交互异常友好;2.API查询方便,入门简单。网页版的GEE所有API算子都包含在Dos文件里面,并且级别每一个API都有相应的Samples案例,这些可以让新生快速入门,并且实现和感受海里数据的畅爽。3.API使用稳定,不存在版本更新。网页版的GEE所有API算子都经过了大量且专业的测试,使用起来非常稳定。你无需怀疑是API算子有任何问题,如果运行不出来,那绝对是你的算法设计问题!4.数据引用和共享简单易实现。无论是谁的代码和数据,只要愿意,一个链接就能直接实现共享!这种丝滑程度是我觉得网页版GEE最棒的地方,而且无论SCI论文的数据还是你的私人数据,只要愿意开放,就能实现局部/公共共享,极大提高了科研效率,也为数据和代码备份提供了良好的基础。当然,还有很多细节的地方,网页版GEE都做的非常优秀,我就不一一列举了。谈完了优点,我们来说一下不足:1.功能固化,难以开展二次开发。GEE所有的功能都已经写在API里面了,从数据筛选→数据处理→数据分析→模型构建→结果可视化等。但是,这不意味着你想做的算法GEE一定能实现。比如,利用网页版GEE进行专业的全球制图分析与专题图制作。网页版GEE没有GIS里面的制图模块,它难以满足专业化的制图分析和专题图制作。2.算法模型有限,现有API难以完成非常复杂的算法功能。虽然网页版GEE一直在加强这方面的功能,不断引入SCI论文中新的算法和功能。但是不可否认的是,它比起Python等高级编程语言,它的API功能可以说相当“简陋”。而在遥感领域里面最前沿的卷积神经网络、计算机视觉等,常常难以实现。其实分析完了网页版GEE的优缺点,相信聪明的你也猜到,这里引出Python版GEE的优缺点大概是什么了。不罗嗦,先来看看Python版GEE的优点:1.本地化交互式开发环境,代码不怕封号找不到。各位科研道友应该也发现了,GEE的账号长期不登录或者VPN异常,说不定就把号给搞没了。这些血淋淋的案例发生在我众多的粉丝朋友身上,我真的无能为力。常常告诫他们,代码随手共享出来,尤其是重要的源码。2.海量的API算子,弥补GEE里面API算子不足的问题。网页版GEE缺乏的GIS制图模块、深度学习模块、计算机视觉、多模态分析等,Python版GEE都能对其进行强有力的补充,并且在本地化部署平台上,通过云→端交互能够实现更强大的功能。3.进一步集成化,利用微代码实现强大功能。我们知道无论是Python还是GEE官方的API,其实都是非常高度集成的算子。然而,结合这两者的优势,可以进一步集成化这些功能,仅仅利用非常少量的代码就能实现非常强大的功能。Python版本GEE都这么牛逼了,那它在使用上有没有缺点呢?答案是肯定的。我们列举在实际应用中的几个缺点:1.版本经常更新,入门难度更大。相比于网页版GEE而言,Python版GEE要配置好相应的环境,并且由于需要交互网页版GEE本身自带的API算子以及Python不同包的API算子,这无疑加大了GEE入门的门槛。我发现很多科研道友在环境配置这里就已经“死掉了”,更不要说在交互使用的体验和海量API使用的感受上。2.功能使用更麻烦,API算子不稳定。相比于网页版GEE而言,Python版GEE功能使用比较麻烦,虽然吴秋生老师开发的geemap包极大的改善了这些方面,但是比起网页版GEE来说还是显得没那么方便,比如数据查看、调用Asset数据等通常还是跳到网页版GEE。API的功能查询麻烦一点,案例相对较少这些都会在使用体验上影响你代码编写的效率。同时,Python版的GEE还要遇到API更新的问题,有时候你上次还能运行的代码,如果没有进行更新,说不定就运行不了了。部分函数没有那么成熟,使用起来有时候会出现让人费解的错误提示。说了这么多,GEE的功能这么强大,总归还是要静下心来学习的,尤其是对于遥感、地理、生态环境、农业规划、水文气象、海洋等专业的道友。如何选择呢?基于我多年的使用感受来说:1.编程小白or普通的硕士研究生:网页版GEE已经足以完成你的所有科研任务,不要喜欢挑战有难度的事情,把学习成本和科研收益当作你的头等要事,用通、用好GEE才是最重要的。2.具有一定编程基础or需要进一步开发新算法的科研人员、一线科研工资者:毫无疑问,Python版的GEE更具有创新的可能性,而在不断内卷的科研圈,技术前沿永远是TOP期刊最乐于接纳的。近期,我们针对不同人群开展了GEE的相关培训,也欢迎希望在GEE遥感科研应用领域能有所增长,相互陪伴的朋友前来咨询: