资源简介
采用python开发平台,对点云Las数据进行读取并三维可视化显示,调用第三方库对每个点建立kd树,实验验证效率较高。
代码片段和文件信息
# ========无监督查找最近邻(常在聚类中使用,例如变色龙聚类算法)==========
from sklearn.neighbors import NearestNeighbors
import numpy as np # 快速操作结构数组的工具
X = np.array([[-1 -1] [-2 -1] [-3 -2] [1 1] [2 1] [3 2]]) # 样本数据
nbrs = NearestNeighbors(n_neighbors=4 algorithm=‘ball_tree‘).fit(X) # 为X生成knn模型
d=X[np.ix_([0])]
distances indices = nbrs.kneighbors(d) # 为test_x中的数据寻找模型中的邻节点
print(‘knn邻节点:‘indices)
print(‘KNN邻节点距离:‘indices[0][1])
# ==============================使用kd树和Ball树实现无监督查找最近邻========================
# from sklearn.neighbors import KDTreeBallTree
# import numpy as np # 快速操作结构数组的工具
#
# X = np.array([[-1 -1] [-2 -1] [-3 -2] [1 1] [2 1] [3 2]])
# # test_x = np.array([[-3.2 -2.1] [-2.6 -1.3] [1.4 1.0] [3.1 2.6] [2.5 1.0] [-1.2 -1.3]]) # 设置测试数据
# test_x=X # 测试数据等于样本数据。这样就相当于在样本数据内部查找每个样本的邻节点了。
# kdt = KDTree(X leaf_size=30 metric=‘euclidean‘)
# distancesindices = kdt.query(test_x k=2 return_distance=True)
# print(‘KDTree邻节点:‘indices)
# print(‘KDTree邻节点距离:‘distances)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2019-06-09 18:31 python读取las数据\
文件 1334 2019-06-05 21:44 python读取las数据\knnother.py
文件 1346389 2018-03-19 11:36 python读取las数据\read.las
文件 832 2019-06-08 16:22 python读取las数据\readlasfile.py
- 上一篇:python基础题库新手必学
- 下一篇:python单纯形法解线性规划问题
评论
共有 条评论