
简介本资源为2019年云南省高精度土地利用/覆盖专题数据集面向地理信息、遥感、生态规划及国土管理领域的科研人员与高校师生用于区域土地利用格局分析、变化监测、生态评估等空间分析任务。数据基于Sentinel-2 10米分辨率影像采用深度学习方法生成涵盖耕地、林地、草地、灌木、湿地、水体、不透水面、裸地、雪/冰共10类地物经坐标系统一重投影墨卡托→WGS84并按云南省16个地级行政区精确裁剪每个市州均提供独立TIF栅格文件及配套属性支持文件。压缩包含112个文件主体为16个.tif主数据、16个.xml元数据、16个.xlsx分类编码与统计表、16个.png可视化预览图等总大小115.71MB结构规范、开箱即用。已有325人学习下载用户可直接开展ArcGIS/QGIS空间叠加、面积统计、景观指数计算及市级尺度对比分析无需额外处理坐标与边界。 拿到这个压缩包的时候我其实是很高兴的——2019年10m精度云南省土地覆盖土地利用这个命名就已经把最关键的信息都摆出来了区域范围、数据时相、空间分辨率。但高兴归高兴真正动手处理才是挑战的开始。说实话这类数据我前后处理过不少从Landsat的30米到GF-2的亚米级但10米这个档位其实是最“鸡肋”也最实用的一个档次处理得好能出很多活处理不好就是一堆打不开的黑块。这篇就把我从解压、预处理、读分类、做统计到实际出图的全过程理一遍。内容偏实操适合刚拿到数据、正对着一个.rar文件发愁的朋友也适合做过30米数据但现在想换成10米精度的老手参考。1. 看到“10m精度”先别急先弄懂这份数据到底是什么1.1 土地覆盖和土地利用概念上就差一层窗户纸很多人把“土地覆盖”和“土地利用”混着用但在遥感数据里这是两个完全不同层次的东西。土地覆盖Land Cover看的是地表的物理属性这里长的是树、那里是水、再过去是裸土这些都是直接能从影像上判读的。土地利用Land Use则是社会属性同一片林地可能是生态公益林也可能是经济林同一块草地可能是天然牧草地也可能是人工草坪。土地利用分类必须结合社会经济数据、实地调查、规划资料才能定光靠卫星影像很难一个像素一个像素地判断。这份数据命名为“土地覆盖土地利用”大概率是做了兼容处理——主分类偏土地覆盖但在部分类别上参考了土地利用的语义。比如“农田”这种类别既需要看地表有没有农作物也需要参考种植结构信息才能区分水田和旱地。我在处理时有个习惯拿到数据后第一件事就是看它的属性表或分类说明确认每个类别到底是按地表特征分的还是按用途分的。这个不搞清楚后面的面积统计、专题图制作都有可能会被带偏。1.2 10米分辨率在实际应用里到底够不够用先给结论10米精度在当前的应用场景里属于“够用且高效”的中间档。对比一下就明白了。Landsat系列的30米分辨率一个像元对应地面900平方米超过一个标准篮球场。用它做省域尺度的森林覆盖变化可以但要做一条村级道路两侧的违建图斑就完全不够看。亚米级数据0.5到1米精度高一栋房子、一棵大树都能看清但覆盖云南省39万平方公里数据量动不动就是几个TB处理成本非常高一般项目根本顶不住。10米精度则是一个很好的折中。一个像元100平方米能分辨出大块耕地、连续林地、村落建筑群、河流主干道在做省级、州市级尺度的土地利用现状调查和生态评估时完全够用。我在处理云南省的数据时发现10米产品对云南这种地形破碎、地表类型转换频繁的区域比30米数据好太多——云南的山地梯度大山谷里的耕地和山坡上的林地往往就隔几十米30米数据很难把它们分开10米就能比较清晰地切出边界。当然它也有短板。10米数据对零星分布的农村单体建筑、小路、小水塘这类细小地物仍然会漏判在云贵高原的阴影区峡谷两侧的山体阴影很容易被误分类成水体或裸地这个后面会专门说。2. 从.rar到“能用的数据”解压、校验、文件识别一次讲完2.1 解压环节最容易出问题的三个点先说工具。.rar格式最稳妥的软件还是WinRAR或7-Zip国产的Bandizip也不错。WinRAR是收费的但解压功能一直能用只是会弹窗提醒7-Zip完全免费解压.rar格式没有问题我日常主力就是它。还有一点Windows 11系统自带了对.rar的解压支持右键直接“全部解压缩”就行不装第三方软件也能应付大多数情况。但解压这件事看着简单实际有三个坑值得提前注意。第一个坑是解压路径。很多人图省事把压缩包解压到C盘用户目录或系统临时目录结果数据一出就是几十GBC盘瞬间爆红。土地覆盖数据是栅格数据云南省10米一层通常是几个GB到十几个GB如果包含多波段或分幅文件还会更大。我拿到这类数据的第一反应是准备一块剩余空间充足的独立数据盘在根目录建一个“LandCover_Yunnan_2019”文件夹把路径记下来后面所有操作都在这个目录下进行。第二个坑是文件名乱码。很多数据在生产时用的是Linux环境或国内自研软件打包文件名里带中文字符比较容易出问题更麻烦的是部分字符编码用的是GBK而Windows下解压默认按本地编码处理有时候解出来的文件名会变成“锟斤拷”之类的乱码甚至直接解压报错。碰到这种情况可以先试7-Zip打开压缩包看文件名在软件里显示是否正常如果正常解压时在选项里选择“使用原始文件名”往往能解决。第三个坑是压缩包被分卷存放。如果拿到的是一堆.split或.part01.rar这样的文件说明数据被分卷压缩了必须把所有分卷放在同一个目录下文件名不能改动然后双击第一个分卷解压。少任何一个分卷都会报错这个没捷径。2.2 解压后你该看到什么样的文件解开之后你大概率会面对一个或几个栅格文件。常见的有这几种情况单个完整的GeoTIFF文件.tif范围覆盖云南省全境可能附带一个.tfw世界文件或内嵌的地理参考信息按标准分幅拆分的多个TIFF文件需要用镶嵌工具拼起来.img或.ers格式文件通常是Erdas或PCI软件处理的产物如果数据是矢量格式可能会有.shp、.dbf、.shx等文件组不管哪种情况我都建议先打开文件管理器看一眼文件大小和数量然后挨个用ArcGIS的栅格浏览功能或QGIS快速预览一遍确认不是所有文件都是同一区域的重叠图。有些数据因为生产时按图幅处理相邻图幅之间有重叠区后期拼接时需要做接边处理不能直接一股脑地全部加载进来。2.3 数据完整性检查这一步很多人会跳过但我强烈建议做。完成解压后在ArcGIS中先添加一次数据打开属性表或查看“源”信息确认维度行数和列数、分辨率10米、位深、投影信息都正常。如果数据坐标系是地理坐标系经纬度不管是不是WGS84在使用前都需要判断是否需要投影转换因为直接在地理坐标系下做面积计算会误差很大。这一条我会在后面的面积统计部分重点演示。另外如果压缩包里附带了.xml或.txt元数据文件一定花几分钟读一遍。元数据里往往写清楚了分类体系、数据生产方法、投影信息、数据版本和修改日期这些信息比数据本身还值钱。3. 把栅格数据“用起来”ArcGIS与QGIS里的加载和显示3.1 加载前先确认坐标系这一步是新手最容易忽略、也最容易导致后面连环报错的环节。我习惯的做法是先把栅格添加进ArcMap或ArcGIS Pro图层右键打开“属性”切到“源”选项卡查看“空间参考”信息。这里会显示坐标系名称、投影参数、中央经线、False Easting等。对云南省来说常见的有两种情况地理坐标系比如WGS84或CGCS2000单位是度投影坐标系比如WGS 1984 UTM Zone 47N云南大部分区域落在47带和48带、CGCS2000 / 3-degree Gauss-Kruger zone 35到37或Albers等积投影如果是做面积统计或距离量算必须在投影坐标系下进行而且优先选择等积投影。我通常直接把数据重投影到“Albers Conical Equal Area”或“CGCS2000 / Albers”中央经线设在云南中部约101度E双标准纬线设为25度和47度左右——这是全国地图和省级制图里比较通用的配置。这里插一句如果源数据已经是地理坐标系而你要做统计但不想重投影整个栅格也可以用ArcToolbox里“数据管理工具 → 投影和变换 → 栅格 → 投影栅格”进行转换重采样方法选“最近邻”NEAREST。注意土地覆盖数据是分类数据重采样一定不要用双线性或三次卷积那些会让类别边界出现中间混合值导致后续统计出错。3.2 为什么打开后一片黑或者一片惨绿这个问题绝大多数人都遇到过而且原因各不一样。最常见的原因栅格数据用整型表示类别代码比如1代表林地、2代表草地默认拉伸显示时软件把全场最小值到最大值的范围线性拉伸导致大片区域都落在同一个色阶上看起来就是一片黑或一片绿。解决办法是在图层属性里找到“符号系统”Symbology对单波段栅格选择“唯一值”Unique Values渲染方式把Value字段选为类别代码系统会自动为每个类别分配颜色如果类别多可以手动替换色带第二种情况是源数据本身有NoData值设置问题。有些栅格把背景区域设为0但分类体系里0并没有定义这样0就会跟水体、裸地混在一起甚至直接遮住有效数据。这时候需要运行“按掩膜提取”或“重分类”工具把0和NoData统一处理再显示就正常了。第三种情况是位深和拉伸配合不佳比如16位无符号整型数据按8位方式显示色彩会严重失真甚至完全变黑。这种我一般是把符号系统改成“拉伸”并按自定义最小值/最大值渲染或者用“计算统计数据”先生成统计值问题基本能解决。3.3 制图输出时的配色经验土地覆盖数据的专题图配色如果拉胯整个专业度都会大打折扣。我在这里分享一个多年总结的配色调色板思路对不同类别用一眼可辨的颜色林地/森林绿色系深绿代表乔木林浅绿代表灌丛草地草绿或黄绿色农田黄色或亮橙色水体蓝色系建设用地/不透水面红色或深灰色裸地棕色或浅黄湿地青色或蓝绿色ArcGIS Pro里可以保存为“配色方案”文件.clr或.lyrx以后处理其他省份数据直接套用。QGIS里则是加载样式文件.qml操作逻辑一样。这套配色逻辑还有一个好处视觉上更接近GlobeLand30的官方配色出图后拿去和权威产品对比时会比较直观。4. 分类体系是数据的灵魂读懂类别代码才能做统计4.1 常见10米土地覆盖分类体系的对比拿到数据后你可能看到的是数值代码比如10、20、30也可能直接是中文类别名称。如果只有数值代码而没有分类说明可以通过属性表或元数据判断用的是哪套体系。10米产品里比较常见的分类体系代码Esri 10m体系FROM-GLC体系常见对应地物1水体水体河流、湖泊、水库2树木森林乔木林、竹林3草地草地天然草甸、草坡4灌丛灌木山地灌丛、灌草丛5农田耕地水田、旱地6建筑不透水面城镇、村落、道路7裸地裸地裸岩、沙地、工地8积雪/冰湿地冰川、季节性雪云南极少如果数据带中文属性表那就不需要猜。不管哪种体系第一件事是把完整的“代码-类别”对照表记录下来最好存成一个Excel或CSV后面要用它做面积汇总和分级统计。4.2 用属性表做全区域面积统计分类栅格的统计最忌讳的就是“人工数像元”。一张云南全境10米栅格像元数动辄几十亿必须用工具。在ArcGIS里最常用的方式是ArcToolbox → 空间分析工具 → 制图 → “以表格显示分区统计”或“栅格转面”后再拿矢量属性表做汇总。我更推荐用“以表格显示分区统计”它能把每个类别代码占用的像元数输出成一个dbf表再通过像元数乘以像元面积10乘10等于100平方米就得到面积然后转成公顷或平方千米。Python方式更灵活。这里给一个用rasterio读取并统计面积的示例适合不在ArcGIS环境下快速出结果import rasterio import numpy as np with rasterio.open(LandCover_Yunnan_2019.tif) as src: data src.read(1) nodata src.nodata # 像元尺寸 transform src.transform pixel_size_x abs(transform[0]) pixel_size_y abs(transform[4]) cell_area pixel_size_x * pixel_size_y # 去掉NoData valid data[data ! nodata] classes, counts np.unique(valid, return_countsTrue) total_area_by_class {} for cls, cnt in zip(classes, counts): area_m2 cnt * cell_area total_area_by_class[cls] area_m2 / 1_000_000 # 转成平方千米 for cls in sorted(total_area_by_class): print(f类别 {cls}: {total_area_by_class[cls]:,.2f} km²)注意如果数据源坐标系是地理坐标系上面这个像素宽高是按度计算的算出来的面积没有任何意义。必须先投影成等积投影坐标系再执行统计。这一点我说三遍都不嫌多因为这是最容易被忽略、又最容易导致结果完全错误的环节。4.3 按行政区划或流域做分区统计全省总面积统计只是基础实际工作中更多是按州市、县域或流域范围来统计。在ArcGIS里可以用“分区统计”Zonal Statistics as Table分区要素是行政边界.shp值栅格是土地覆盖数据。输出的表格里每一行对应一个行政区每一列对应一个地类的面积或像元数。这样就能快速回答“某个县农田占比多少”“上游某流域森林覆盖面积多少”这类问题。做这一步之前有一个重要准备行政边界和栅格数据必须处于同一坐标系下。如果边界是地理坐标系栅格是投影坐标系必须先用“投影”工具把边界投影到和栅格一致如果栅格是地理坐标系则建议先把栅格投影到等积坐标系再让边界跟着投影。反正中心原则就是统计前必须统一坐标系否则每个县界的边界位置都可能漂移几百米到几公里。5. 这份数据能做什么从现状制图到变化检测再到综合评价5.1 土地利用现状图与规划辅助10米精度的土地覆盖数据做州市级和县级“土地利用现状图”的底图是完全够用的。我在项目里经常拿它做现状图底图叠加行政边界、道路、水系、居民点符号出图比例尺控制在1:5万左右视觉效果和精度都过得去。这类图件的直接用途包括国土空间规划现状基数底图、生态保护红线校核的基础参考、植树造林适宜性评估的前期底图等。尤其在云南省这种生态系统类型丰富的地区用10米数据能比较清楚地把林地和灌丛、草地之间的边界标出来规划人员在踏勘前就能大致了解区域地表覆盖格局。5.2 多期数据叠加做变化检测如果手头有多个年份的10米土地覆盖数据变化检测是最好用的方向之一。做法其实不复杂用栅格计算器Raster Calculator或重分类工具把两期数据的类别代码按下标偏移后相加就能生成一个“变化类型图”。比如2009年林地代码2到2019年耕地代码5变化类型值可以记录为“2→5”。然后对变化类型做统计分析就能得到主要的变化方向、变化面积和空间分布。结合云南实际情况来看这类变化检测最常发现的几类问题城镇扩张占用的耕地和林地橡胶林、茶园等经济林扩张吞并天然林水库修建后淹没区域山火后林地向灌丛/裸地转化需要注意跨产品对比时要先确认两期数据的分类体系完全一致如果不一致必须先做类别合并归一到统一体系再对比。否则误差会远超真实变化量得出完全反直觉的结论。5.3 与高程、气象、人口数据融合的进阶玩法单独一份土地覆盖数据能做的分析有限但和其他数据叠加就能做出很多扩展应用。我做过的一个例子是把土地覆盖数据和高分辨率DEM比如SRTM 30米或12.5米叠加按坡度和海拔分段统计林地的分布规律。云南是典型的高原山地区域不同海拔带上的植被类型差异极大这种叠加分析对生态区划特别有用。再比如叠加人口格网数据、道路数据和夜间灯光数据可以分析城乡建设用地扩展与人口迁移的关系。叠加降雨和温度格网数据可以估算不同覆盖类型下的生态服务价值或水源涵养能力。这类分析在ArcGIS里通过“提取多值到点”或“分区统计”就能完成难度不高但产出很出彩。6. 实操中的坑我处理这类数据时踩过的雷6.1 大范围栅格数据的计算内存问题云南省面积约39万平方公里10米栅格全图运算非常考验电脑。我曾在普通办公电脑上用ArcGIS做全省范围的重分类跑了一个小时都还在“Drawing...”最后直接报内存不足。后来总结经验分两步走一是先裁剪再运算。把全省范围按照州市或县域边界裁剪成小块分别处理完再合并结果。ArcGIS的“按掩膜提取”非常快按16个州市来切份每份数据的运算速度会快几个数量级。二是合理使用环境设置。在执行重分类、面积统计等工具前把“环境 → 处理范围”设为目标区域“栅格分析 → 像元大小”设为10米避免软件把整个数据集当作一个整体来加载。QGIS里处理大数据相对轻量但文件格式建议转成Cloud Optimized GeoTIFFCOG或直接使用原生TIFF避免Shapefile转栅格时一次性载入内存。6.2 面积误差的来源能有多大项目里见过不少把面积算错的情况几乎都出在坐标系和投影上。同样是云南全省的林地面积用WGS84地理坐标系直接统计结果可能是用Albers等积投影统计结果的1.5倍以上。原因是经度方向的长度在不同纬度上被拉长或压缩而面积误差随纬度变化非常明显。还有一类误差来自数据本身原始分类栅格中的混合像元、云影误判和边界锯齿都会让某类地物面积偏高或偏低。我的建议是当统计结果与官方统计数据有明显出入时先不要急着怀疑数据把元数据和分类说明翻出来看有没有做过滤比如面积小于某阈值的图斑被去除再做局部目视检验。我在云南处理10米数据时试过用原始数据统计森林覆盖率和官方公布数字差了2到3个百分点后来逐块对比发现是峡谷阴影被大量分成了裸地。用DEM做坡度筛选把坡度大于60度、位于阴影区域的地类重新校正回去误差就明显缩小了。6.3 关于加密压缩包和授权文件再回到最开始那个.rar文件。有时候你拿到的压缩包是加密的这出于数据授权和保护需要是正常的。我自己也遇到过打不开的情况这时候最正确的做法不是去想各种“密码移除”的旁门左道而是直接联系数据提供方或数据生产单位找对接人索取解压密码和授权文件。特别提醒如果是科研项目用的数据拿到压缩包后第一时间记录数据的来源渠道、获取时间和授权范围妥善保存证明文件因为后续论文投稿或项目验收有可能需要说明数据来源合法性。另外解压出来如果包含没有后缀名的文件不要随便去改后缀先尝试用ArcGIS或QGIS的打开方式识别或者用十六进制工具看一下文件头——很多栅格数据只是扩展名被去掉了数据本身并没有坏。还有一次我遇到压缩包里附带了一个.lock文件当时以为是病毒后来才知道是某生产软件自动生成的临时锁定文件可以直接忽略。这类“杂项文件”不要乱删只要不影响主要数据文件就保留在原地万一要溯源还能用得上。6.4 一批可用的小工作站配置建议如果你打算长期处理10米精度的省级土地覆盖数据电脑配置高低直接决定下班早晚。我的经验配置是内存至少32GB起步64GB更从容因为加载全省栅格做计算时内存是最大的瓶颈CPU核心数尽量多重分类和分区统计这类工具都是单线程优化的多核提升相对有限但数据IO密集操作时多核还是有帮助固态硬盘必须有NVMe协议的最好栅格数据读取快慢很多时候就卡在磁盘读写上显卡反而不重要制图出图时显卡内存有8GB就够。如果手头机器确实跑不动也别硬扛建议把数据按范围切块处理或者直接上虚拟Linux服务器用GDAL/Parallel处理批量脚本跑完再拿回桌面GIS出图。我第一次跑全省数据时就是在服务器上用GDAL做重投影和统计效率比自己电脑高非常多。最后分享一个小习惯我现在拿到的每一份数据都会在旁边建一个名为“00_README.txt”的文本文件记下数据名称、来源、坐标系、像元大小、分类体系对照表、处理日期、处理人。开始的时候觉得是浪费时间后来项目一多、数据一杂这个文件救了我好几次几次交接工作全靠它撑场面。也希望这份云南省2019年10米数据的处理记录能帮你少走点弯路。本文还有配套的精品资源点击获取