Questions tagged «algorithm»

一种用于通过一系列步骤解决问题的数学过程。算法通常被编码为一系列计算机命令。

4
用Python在栅格上对点数据进行双线性插值?
我有一个栅格,想要对它进行点插值。这是我的位置: from osgeo import gdal from numpy import array # Read raster source = gdal.Open('my_raster.tif') nx, ny = source.RasterXSize, source.RasterYSize gt = source.GetGeoTransform() band_array = source.GetRasterBand(1).ReadAsArray() # Close raster source = None # Compute mid-point grid spacings ax = array([gt[0] + ix*gt[1] + gt[1]/2.0 for ix in range(nx)]) ay = …

1
Python:找到一种计算多边形的“内部质心”(在弧图中也称为labelPoint)的方法
我正在寻找一种计算(不规则)多边形的内部点(在弧图中也称为labelPoint)的X,Y坐标的方法。我尝试在不使用ArcGIS模块的情况下找到解决方案 “质心”和labelPoint之间的区别在于,质心可能在多边形之外。 我正在使用匀称的模块 从shapely.geometry导入多边形 ref_polygon = Polygon(points) # get the x and y coordinate of the centroid ref_polygon.centroid.wkt 'POINT (558768.9293489187300000 6361851.0362532493000000)' 使用以下数据(我的多边形的顶点) 在此先感谢您的帮助和建议 points = [(560036.4495758876, 6362071.890493258), (560036.4495758876, 6362070.890493258), (560036.9495758876, 6362070.890493258), (560036.9495758876, 6362070.390493258), (560037.4495758876, 6362070.390493258), (560037.4495758876, 6362064.890493258), (560036.4495758876, 6362064.890493258), (560036.4495758876, 6362063.390493258), (560035.4495758876, 6362063.390493258), (560035.4495758876, 6362062.390493258), (560034.9495758876, 6362062.390493258), (560034.9495758876, 6362061.390493258), (560032.9495758876, …

4
点模式分析算法
我正在寻找关于点模式分析的点模式分析算法和文献,欢迎在线资源和书名。主题的范围可能从算法的一般描述到任何研究领域的具体用例。 更新7月31日15:54: 我对在点模式中检测线性特征的局部方法特别感兴趣。例如,从gps点创建道路/轨道几何。

2
计算球形多边形质心
我想要一种通用方法来计算球体上多边形的质心。 到目前为止,最好的在线参考似乎是: Jeff Jenness的图形和形状工具。 此处描述的方法建议将多边形分解为多个球形三角形,并计算球形三角形质心的平均值,并按球形三角形面积加权。 我知道有几种定义球形多边形质心的方法,但是我正在寻找类似于以下对点和折线的定义的方法: 点:表示点的笛卡尔向量的算术平均值。 折线:笛卡尔向量的加权平均值,代表每个线段的中点,由每个线段的(球形)长度加权。 将多边形质心定义为按面积加权的三角分解的加权平均值,似乎是一个合理的延续。 我的问题是,无论所使用的三角形分解如何,上述参考文献中的方法是否都将起作用。特别地,它提到相对于任意点甚至在多边形外部都分解为三角形,使得某些三角形将具有负面积,这些负面积会带来负的权重。 相关:如何找到对象的几何中心?

4
如何过滤错误的GPS点?
我有一个GPS点数据库。没有任何轨道,只有一点。我需要为每100米计算一些值,但是GPS有时会给出错误的坐标,该坐标距离真实的GPS点很远,因此,我必须为一个很大的矩形区域计算它,而不是计算一个小正方形的值。 过滤错误的GPS点的最佳算法是什么? 我做了一个屏幕截图以帮助理解:
11 gps  point  algorithm 

1
射线与地球表面的交点
说我有一个射线矢量,它起源于太空中的某个地方。一个例子可能是来自太阳的光线。如何计算射线与地球表面之间的交点(如果存在)?我正在使用笛卡尔坐标(ECEF),并且希望将地球的椭球几何纳入计算中。
11 algorithm  wgs84 


3
多个多边形的点入多边形算法
我有一张Google地图,上面有一堆多边形。 这是我感兴趣的一个问题:给定一个纬度点,确定该点所在的所有多边形的最佳方法是什么? 一种明显的方法是为每个多边形迭代运行“多边形中的点”算法,但是我想知道是否存在一种有效的算法来回答此类查询,尤其是在您有数千个多边形的情况下。

5
计算距中心点x平方英里的坐标?
我正在尝试围绕一个中心点创建一个ax mile正方形(或圆形),该正方形的所有边都将从中心x英里。我需要4个角坐标。 它正在争先恐后地想让我的大脑转弯吗?我可以使用Haversine公式计算出两点之间的距离,但是数学严重不是我的强项,而且我不了解sin,cos等。尝试解决这一问题使我迷失了! 我遇到过计算距点X英里的纬度/经度吗?但是我不明白! 有人会以苹果和梨的方式来解释我如何做到这一点吗? 确切地解释我想做什么; 我有一个网站,用户可以在其中搜索特定区域的建筑物。他们将进入城镇或地方(我会知道这是最长的时间),并在距该地方10英里的特定半径内进行搜索。 我需要找到10英里半径的最小/最大纬度和经度,以便可以使用类似于以下内容的where子句查询数据库: Where buildingLat <= maxLat and buildingLat <= minLat and buildingLong >= minLong or buildingLong >= maxLong 我需要某种配方! 我的座标是十进制度

2
ArcGIS Desktop如何计算要素点的INSIDE点?
让我备份并说,据我所知,有两种常见的方法可以在ArcGIS Desktop中计算多边形的质心: 在要素类的属性表中的字段上使用“计算几何”。 Data Management -> Features -> Feature to Point从工具箱使用。 这些都给出相同的结果-多边形的几何质心。但是,不能保证该点位于多边形内。 Feature to Point工具具有一个内部复选框选项,根据文档所述: 将输入要素包含的位置用作其输出点位置。 我想知道的是,ArcGIS Desktop如何计算这一点以及它的“理论”含义(如果可以的话)。

3
如何将一条线分成一组等距点
过去依靠XTools来实现,但是在我当前的环境中,我无权访问它。 我正在尝试在ArcMap10中执行此操作。 目标是将流的线表示形式分成一组等距的点,以便最终确定这些点的z值,以便确定梯度。 我的预期工作流程就是这样。 将流分成点 使用GME将点与DEM相交 通过确定点之间的距离,我应该能够确定梯度是多少。 将点数据重新集成到原始流线中似乎很有意义。不确定此步骤。 我赞赏对我的方法的任何批评,但目前我的首要任务是将这些流转换为点。 谢谢!


6
线到多边形
我未能找到算法的“名称”,该算法将允许将线转换为多边形。由于这个问题跨越了GIS以及计算几何学和计算机科学领域。我不确定还有什么要添加的。我不愿意提供我搜索过的内容的清单,因为我也想知道其他人会认为他们是搜索标准的首选。 场景...我有线(构造一条线需要两个点)...每条线至少连接到另一条线。连接的线之间的中间空间将形成多边形。最简单的情况是三角形...一个矩形...并且可以超越多段特征。 对任何模糊的描述都感到抱歉,但是正如我所说,我不想将可能的解决方案引导到我已经访问过的道路上,因为我对“最初的想法”和最终解决方案都非常感兴趣。

1
在线串上时,在随机鱼网的像元中以彼此指定的距离创建点
我们有一个陆地协议,在该协议中,我们收到一个1x1公里网孔的鱼网。一些单元格是随机选择的。我们需要在每个单元格中放置4个点,这些点也必须在路上。如果可能,则每个像元的每个点的最小距离必须为500m,否则,我们希望最大距离。 在第一次尝试中,我们使用ST_CreateFishnet将每个像元划分为四个500x500 m像元,然后将点放在子像元的质心,然后放在最近的道路(ST_ClosestPoint)上。我们得到了一些不错的结果,但是在下面的示例中,您可以看到点5离点6太近了,可以在左路上移动。 WITH r1 AS ( -- only sub-cells which intersects random cells SELECT id_maille, ROW_NUMBER() OVER() AS id_grille, fishnet_500.geomgrille FROM fishnet_500 JOIN t_mailles ON ST_Intersects(ST_Buffer(t_mailles.geom,-200), fishnet_500.geomgrille) -- buffer < 0 to not select neightbours ) , r2 AS ( -- cut roads in every cells SELECT id_maille, id_grille, …

2
使用ArcGIS Desktop将动态页面的数量减至最少以映射散点?
我有时会制作地图册以显示兴趣点。使用常规网格创建页面的第一步: 我不喜欢该解决方案,因为a)有些页面上的单点(例如第25页)位于边缘,并且b)太多的页面。 第一个问题很容易使用代码来解决,-将页面范围的矩形移动到相关点范围的中心: 我仍然不喜欢它,因为页面数保持不变,所以看起来非常拥挤。请记住,它们最终都是多份报告!的实际A3纸页。 因此,我编写了减少页数的代码。在此示例中,从45到34。 我不确定这是否可以达到最佳结果, 什么是最好的策略(伪代码,出版物,Python库),请通过点排序以最小化给定大小的矩形以捕获所有点的数量?当然,有人在游戏理论,军事艺术或捕鱼业中发现了它 这是原始问题的更新: 这显示了所需的实际范围和页面大小: 放大显示164页中的10页: 采样点要素类 矩形大小只要保持在限制范围内即可更改,即可以较小。

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.