赞
踩
即为每个离它最邻近点的距离的平均值。
clear all
clc
% 读取matlab自带的点云文件
ptCloud = pcread('teapot.ply');
% 读取点云xyz值
xyz = ptCloud.Location;
% 通过knnsearch即‘k'临近计算xyz集合里面每个点离xyz集合里面的最近点
% 由于第一个搜索的点是他本身,所以k临近个数选择了2
[idx,d] = knnsearch(xyz,xyz,'k',2);
% idx是最邻近点的索引项,用不到;d是每个点离它最邻近点的距离值
% 计算平均距离,即距离密度,单位:m
p = mean(d(:,2));
clear all clc % 读取matlab自带的点云文件 ptCloud = pcread('teapot.ply'); % 读取点云xyz值 xyz = ptCloud.Location; % 凸包计算茶壶的二维占地面积 % 凸包需要双精型,读取的xyz为单精 xyz = double(xyz); % K返回边界索引,V返回面积 [K,V] = convhull(xyz(:,1),xyz(:,2)); % size和length都可查看点云的数量,这里以size为例 % n和m返回点云的行和列 [n,m] = size(xyz); % n行就是点云的数量 % 由于无水域区域,所以点云的密度为总数量/面积 p = n/V;
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。