选择矩阵中距离另一个点30米的所有点

Phi*_*ses 4 c++ database matlab matrix data-structures

因此,如果你看看我的其他帖子,我建立一个可以在森林中收集数据并将其粘贴在地图上的机器人就不足为奇了.我们有能够检测树中心和树干直径的算法,并且可以将它们粘贴在笛卡尔XY平面上.

我们计划使用某些"关键"树作为本地化机器人的自然地标,使用三角测量和三边测量等方法,但使用Matlab进行编程并保持数据的直接性和高效性变得越来越困难.

是否有一种技术可以设置点阵的数组或矩阵?假设我有超过1公里(1000米)存储的1000棵树,有没有办法说,只选择我当前位置半径30米范围内的点,只能使用那些?

我只是使用GIS,但我在Matlab中这样做,我不知道任何用于Matlab的GIS插件.

我忘了提到,这段代码正在上线,这意味着它正在进行实时执行的机器人.我不知道,当地图增长到几英里时,使用不同的数据结构将有助于或者如果计算到随机点的每个距离都是空间数据库将要做的事情.

我正在考虑将树的数组镜像为两个数组,一个按X排序,另一个按Y排序.然后冒泡排序以确定其中的30米范围.我对两个数组,X和Y做同样的事情,然后有第三个交叉链接表,它将选择各个值.但我不知道,这是什么叫,如何编程,我相信有人已经有了,所以我不想重新发明轮子.

笛卡尔平面
GIS

Jus*_*eel 6

您正在寻找像四叉树kd树这样的空间数据库.我在这里这里找到了两个kd-tree实现,但是没有找到任何用于Matlab的四叉树实现.