Matlab 如何在一起提取与相关的点?
假设: 该矩阵中的数字是点云的索引,该矩阵显示与点云有关联的点。 如图所示,第1点至第8点(第7点除外)构建一个组,第9点至第12点(第7点除外)构建一个新组。 如何找到这些组?Matlab 如何在一起提取与相关的点?,matlab,build,build-process,relation,Matlab,Build,Build Process,Relation,假设: 该矩阵中的数字是点云的索引,该矩阵显示与点云有关联的点。 如图所示,第1点至第8点(第7点除外)构建一个组,第9点至第12点(第7点除外)构建一个新组。 如何找到这些组? 我尝试使用第二列,并说当第一列中的数字不小于任何唯一数字时,我们有一个新的组。但在第9行中,此条件失败。您正在查找由邻接列表导出的无向图的连接组件 A=[1 2 1 3 2 3 3 5 4 3 4 6 8 5 8 3 9 7 9 11 9 10 10 13 10 12] 结果标签 G = sparse(A(:,1)
我尝试使用第二列,并说当第一列中的数字不小于任何唯一数字时,我们有一个新的组。但在第9行中,此条件失败。您正在查找由邻接列表导出的无向图的连接组件
A=[1 2
1 3
2 3
3 5
4 3
4 6
8 5
8 3
9 7
9 11
9 10
10 13
10 12]
结果标签
G = sparse(A(:,1),A(:,2),1,max(A(:,2)),max(A(:,2)));
[num labels] = graphconncomp( G+G' ); % symmetric for undirected graph
如您所见,1-6和8被标记为'1'
,而9-12和7被标记为'2'
有关更多信息,请参阅。这一点不清楚。每行中的两个值分别代表什么?@OliCharlesworth点之间的任何关系。例如,距离在同一曲面上的点。@Ahmad这表示图形的邻接列表,对吗?你仍然需要澄清你是如何选择小组的,以及为什么你的方法不起作用。一些代码也很好。您正在尝试恢复图形的连接组件吗?@Shai那么,为什么第7行
(8,5)
在连接到第8行(8 3)
时会被排除在第一组之外?
1 1 1 1 1 1 2 1 2 2 2 2 2