Questions tagged «raster»

栅格是一种由规则的值网格组成的数据格式,通常以类似图像的格式存储。

5
如何计算多边形的栅格统计信息?
如何计算矢量层每个多边形的栅格点(多波段)的总和,平均值等。有人告诉我这叫做“区域统计”。我先用QGIS尝试过。 有一种方法可以做到,但是那太慢了(将栅格转换为矢量,与第二个矢量层相交,计算几何形状,导出数字,使用电子表格或其他程序计算统计信息,重新导入结果,这对我来说永远都是350.000栅格点)。 还提示我使用saga-gis。它具有“区域统计信息”,但是这些统计信息基于栅格波段的类别,而不是矢量层的多边形。因此,要使用此功能,我必须将矢量层转换为栅格,然后计算统计信息。 这似乎是解决此问题的错误方法。由于属于多边形边界的相交点,因此无法解决属于2个或更多多边形的栅格点。我假设基于多边形的统计信息应该能够处理此问题,所以我还假设尚未找到正确的模块。 Saga-gis确实有很多模块。请让我知道哪个是适合此应用程序的。
14 qgis  raster  statistics  saga 

1
遮蔽或覆盖栅格地图以反映一天中的时间和环境光的方法
我的学习区域有白天的栅格。 我在研究区域中有20多个计数器,这些计数器用时间戳计数“填充”。 我使用PyEphem确定了每个收集的数据点的环境光的类型。 我想做的是: 添加灰色/半透明的覆盖层以反射环境光(黄昏,日出,白天,日落和黑暗)。 最终目标:对数据收集进行基于时间的可视化,突出显示一天中的时间。或者能够在适当的阴影覆盖下在特定时间生成快照。 将此视为此图像: 资源

6
从矢量数据创建简单图像
任何人都可以建议一种快速(最好是开源)的方式从shapefile创建图像的方法。例如,我有一个包含宗地边界的shapefile,我想创建一个描述这些宗地的png文件。该图像所需的符号体系为准(实轮廓和填充)。 我知道MapServer的shp2img可以解决问题。我只是好奇是否还有其他可用的东西。 欢迎使用任何对预编译工具或api / sdks的引用。


4
在QGIS中将栅格转换为平滑的轮廓多边形
我从栅格图层创建平滑轮廓多边形的成功有限。 我创建了轮廓线和边界折线,然后使用QGIS Union。然后,我使用QGIS Polygonize。然后对原始栅格使用区域统计,以获取面的值。 我尝试的第二种方法是将栅格转换为多边形。然后创建一个新的四舍五入到所需轮廓的属性列。然后,我将相同值之间的线溶解。然后使用v.generalize。这种方法要快一些,但是会留下一些锯齿状/不平滑的多边形。 有没有更简单的方法始终有效?似乎应该有一个简单的命令来完成整个过程。
14 qgis  raster  contour 

3
Gdal:用另一个栅格裁剪一个栅格
我正在编写一个简单的实用程序,将一批多波段Geotiff栅格文件裁剪到相同(较小)的区域。使用gdalwarp,我可以使用单多边形剪切shapefile轻松裁剪文件: gdalwarp -cutline clipper.shp -crop_to_cutline input.tif output.tif 但是,我要裁剪的实际区域将始终始终由另一个geotiff栅格文件而不是shapefile定义。如果可以将栅格的范围用作剪切文件,那将很好,但是我不确定如何执行此操作。毫不奇怪,以下代码不起作用(它不会引发错误,它只会产生任何东西): gdalwarp -cutline clipper.tif-crop_to_cutline input.tif output.tif 所以,我的问题是,有没有办法提供栅格gdalwarp -cutline?或者,是否还有另一个gdal函数可以使用另一个栅格裁剪一个栅格?如果这两种方法均不可行,是否有一种非常简单的方法来生成具有由栅格范围定义的单个多边形的shapefile? 这段代码将包装在更广泛的python脚本中,因此我可以使用命令行gdal实用程序或gdal的任何python绑定。 作为附带说明,我知道我可以轻松地制作一个裁剪shapefile,以覆盖我在QGIS中的栅格范围。如果找不到简单的解决方案,我可能会这样做,但是最终,作为大型自动化分析的一部分,我最终将在数十个甚至数百个区域中使用此实用程序,因此我不希望乏味即使非常简单,也可以手动执行。
14 python  raster  gdal  clip  gdalwarp 

2
使用R将点聚集到网格
我对R中的空间聚合有一个疑问。我想做的是将点数据集聚合到网格中。但是我不确定如何执行此操作,因为我对此类材料缺乏经验。我希望你们中的每个人都可以得到一些有用的指导/可能的解决方案。 我的优势是一个包含有关非洲冲突事件的地理参考数据的数据集(请参见www.acleddata.com)。这些点通过纬度/经度坐标进行地理参考,并包含有关事件类型和时间的数据。我想要做的是将这些点聚合到1x1度的网格中。 因此,如果某个事件发生在该网格单元中,则该网格单元应包含数据点的信息。最终的结果应该是数据框或可以导出到csv文件的东西,因为该数据打算用于面板数据集中以进行统计分析。 到目前为止,我已使用以下代码加载并绘制了数据和shapefile。我相信我应该使用sp包中的over函数进行聚合,但是我不知道如何做。希望你们中的一个能提供帮助。 我至今使用的代码,可以发现这里有超过相应的视觉效果存在。 也欢迎在QGIS中提出此建议。
14 raster  r  point  aggregation 


9
在ArcGIS Desktop中对齐两个非一致的等分辨率栅格网格?
我有两个栅格:一个数字高程模型(DEM)和一个Landsat波段。两者的网格分辨率均为30 m,但网格并不重合(请参见图:顶部的深色光栅是DEM;下面的浅色光栅是Landsat波段)。 我想对Landsat波段进行一些转换,以使其栅格与DEM栅格完美对齐。我尝试在环境设置中使用DEM作为捕捉栅格将ArcGIS中的Landsat波段重新采样到30 m,但这没有任何效果。我还尝试将Landsat波段裁剪到矢量多边形的范围(DEM也被裁剪到),同时将DEM设置为捕捉栅格,但无济于事。 我怀疑这种情况的发生是因为两个栅格已经具有相同的分辨率(只是在不同的网格上),但是我确实需要对齐它们的栅格才能进行任何进一步的分析。 我可以在ArcGIS Desktop中执行此操作吗?

2
Python,GDAL和构建栅格属性表
我有一个整数栅格,我想使用Python和GDAL为其构建栅格属性表。我可以在Python中创建GDAL栅格属性表,如下所示: >>> rat = gdal.RasterAttributeTable() 如我们所见,这很好用: >>> rat <osgeo.gdal.RasterAttributeTable; proxy of <Swig Object of type 'GDALRasterAttributeTableShadow *' at 0x0000000002A53D50> > 这样创建的表没有行或列: >>> rat.GetRowCount() 0 >>> rat.GetColumnCount() 0 我创建了一个名为“值”的列,以将唯一值存储在栅格中: >>> rat.CreateColumn("Value", gdalconst.GFT_Integer, gdalconst.GFU_MinMax) 0 很好,并且列数已更新: >>> rat.GetColumnCount() 1 现在,我必须将值(记录)添加到该列中才能使用。我可以从栅格波段中获得唯一值的列表,如下所示: >>> data = band.ReadAsArray(0, 0, dataset.RasterXSize, dataset.RasterYSize) >>> vals = list(numpy.unique(data)) >>> …

2
改善地理配准结果?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 2年前关闭。 背景这是我的第二个问题,涉及对裸栅格地图进行地理配准,以便在不同的坐标系上以及与其他数据层一起重新可视化它们。上一个问题是将任意无元数据的地图图像转换为QGIS项目 问题我的目标是对该地图进行地理配准: 这似乎不是Plate-Carrée。因此,在QGIS中,我创建了几个合理的控制点,为完整起见,我将其附加在底部[ref:1]。我为QGIS Georeferencer提供了与我的项目文件EPSG:4326相同的目标SRS。使用Helmert和多项式变换时,我得到的结果异常差,但是用薄板样条曲线得到了合理的图像(这使得结果的地理估计值通过了我的控制点)。但是,即使这样的结果也很差,例如在较高的纬度上(参见日本北部的俄罗斯海岸)。这是我使用自然地球背景的QGIS屏幕的屏幕截图。 替代路径我在MapWarper上使用了更易于使用的工具尝试了类似的练习:在http://mapwarper.net/maps/758#Preview_Map_tab上查看结果和控制点,我得到的结果较差(可能是由于事实我添加了更少的控制点)。 简而言之的问题 有什么技巧可以使我获得良好的地理参考? 可以立即识别出这种投影吗? 在旧图纸上的“未知坐标系”中,gdaltransform建议将多个坐标点转换为多个目标SRS,以实际发现用于生成原始地图的投影参数为目标。我尝试过这样的事情:保存我的QGIS点列表之后,我进行了一些字符串处理,以获取空格分隔的经/纬度列表,cat eurasian-steppe-gcp.points | tail -n+2 | cut -d, -f1-2 | sed 's/,/ /'> tmp.txt并将结果文件输入到gdaltransform中:gdaltransform -s_srs EPSG:3785 -t_srs EPSG:4326 < tmp.txt并切换s_srs和t_srs标志(该项目使用EPSG:4326)。我知道我在黑暗中射击,希望能走运,所以当我无法理解输出时,我并不感到惊讶。有人可以扩展我将如何使用此方法来找到源地图的投影和投影参数的最佳估计吗?我的想法是,与其在无数个控制点上放置好地理参考,不如通过遍历所有公共坐标系来获得较少控制点的近乎完美的地理参考,会更容易吗?对于每个被测CRS,是否涉及每个点与其他所有点的交叉验证? 我想了解此算法或地理配准,因此可以使流程自动化-我一直都遇到这个问题,直到内容创建者停止将其地图视为一次性创建,再也无法集成以及其他内容,我不希望停止。 参考文献 [ref:1] QGIS GCP文件: mapX,mapY,pixelX,pixelY,enable 142.632649100000009,54.453595900000003,505.941176470588232,-95.220588235293974,1 154.934252200000003,59.559921699999997,536.411764705882206,-52.779411764705742,1 80.080158100000006,9.657192300000000,291.558823529411711,-322.661764705882206,1 10.448442600000000,57.819128900000003,21.676470588235190,-103.926470588235134,1 34.007173000000002,27.761438299999998,101.117647058823422,-244.852941176470466,1 50.950890399999999,11.862196600000001,171.852941176470495,-313.955882352941046,1 29.713217199999999,60.024133200000001,90.779411764705799,-92.499999999999829,1 60.000000000000000,0.000000000000000,208.308823529411683,-362.382352941176350,1 69.867506500000005,66.639146199999999,224.088235294117567,-33.191176470588061,1 27.276107100000001,71.049154799999997,89.147058823529306,-21.764705882352814,1 140.000000000000000,0.000000000000000,536.955882352941217,-362.926470588235190,1 20.000000000000000,0.000000000000000,43.441176470588132,-362.926470588235190,1 20.196882700000000,31.243024100000000,47.249999999999901,-231.794117647058698,1 …

2
使QGIS将坐标解释为经纬度而不是经纬度?
我正在使用TRMM 3B31文件处理NASA提供的降水量。当我将它们加载到QGIS上并选择WGS84投影以及其他形状文件时,地图将垂直显示,即QGIS解释为纬度,而经度则相反。我已经尝试了gdal_translate选项-a_ullr选择强加良好的坐标,但是并不能解决问题:仅压缩和拉伸图像以满足我的要求,但这显然不是我想要的。 加载.csv文件时,您可以选择必须是纬度和纬度,是否可以对栅格进行相同的处理? 由于我有193个栅格,因此,如果您可以建议可以迭代执行的命令,那就太好了。 该图显示了印度地图和3B31文件的第一个波段,即地表降水。黑色两条线是40和-40平行线。我想将它们水平放置,因此降雨数据与印度重叠。

3
在ArcGIS for Desktop中使用LiDAR时* .las与* .xyz或* .ascii的好处?
我们有时会使用LiDAR数据在ArcGIS中进行建模。以前,我们将为数据提供.xyz或.ascii,但最近,除了.xyz和ascii的文件之外,我们还提供了.las文件。 我正在阅读这篇文章,其中指出“对于启动者来说,具有LAS格式的激光雷达可能很明显,但对于使用激光雷达数据的初学者而言并不明显”和“它是二进制的,高效的,得到广泛支持的格式,并且ArcGIS最适合使用该格式”。我是使用.las格式的新手之一。 通常,对于.xyz和ascii,我将使用Global Mapper将其转换为栅格网格(以在建模中使用),而且似乎还需要转换.las文件(为点云)。我想我要问的问题是: 如果仍然需要将.las与.xyz或ascii相比,使用.las有什么好处?

2
如何在不进行插值的情况下从不规则点数据制作RASTER
我试图从不规则间隔的点数据库制作光栅图像。数据看起来像- > head(s100_ras) x y z 1 267573.9 2633781 213.29545 2 262224.4 2633781 69.78261 3 263742.7 2633781 51.21951 4 259328.4 2633781 301.98413 5 264109.8 2633781 141.72414 6 255094.8 2633781 88.90244 我想在我创建的网格中使用这些“ z”值 # Create a fine mesh grid my_mesh=expand.grid(seq(min(s100_ras$Y),max(s100_ras$Y),l=100), seq(min(s100_ras$X),max(s100_ras$X),l=100)) 我还希望为数据点之外的那些网格点将z值分配为“ NA”。网格上的点如下所示:https : //drive.google.com/file/d/0B6GUNg-8d30vYzlwTkhvaHBFTnc/edit?usp=我绘制时共享 plot(my_mesh) points(s100_ras$Y, s100_ras$X, pch="*", col='blue') 问题是我不确定如何在此基础上进行构建,以下步骤不起作用,因为我的网格和数据点的比例不同! …
13 raster  r  vector-grid 

6
如何遍历连续栅格中的每个像元?
有关更多详细信息,请参见此链接。 问题: 我想遍历一个连续的栅格(一个没有属性表的栅格),逐个像元,并获取像元的值。我想采用这些值并对它们运行条件,模拟下面详细介绍的地图代数步骤,而无需实际使用栅格计算器。 根据下面的评论请求,我添加了详细信息,为问题提供了背景,并证明有必要在下面称为“所需的分析:”的部分中实施这样的方法。 下面提出的分析虽然通过提供背景与我的问题相关,但无需在答案中进行。问题的范围仅涉及对连续栅格进行迭代以获取/设置像元值。 分析需要: 如果满足以下任一条件,则将输出单元格的值设置为1。如果不满足任何条件,则仅将输出单元格的值设置为0。 条件1:如果单元格值大于顶部和底部单元格,则给出值1: Con("raster" > FocalStatistics("raster", NbrIrregular("C:\filepath\kernel_file.txt"), "MAXIMUM"), 1, 0) 内核文件如下所示: 3 3 0 1 0 0 0 0 0 1 0 条件2:如果单元格值大于左右单元格,则给定值1: Con("raster" > FocalStatistics("raster", NbrIrregular("C:\filepath\kernel_file.txt"), "MAXIMUM"), 1, 0) 内核文件如下所示: 3 3 0 0 0 1 0 1 0 0 0 条件3:如果单元格的值大于左上角和右下角的单元格,则将值设为1: Con("raster" > …
13 python  raster  arcobjects  gdal  c# 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.