seperate directions into clusters
Syntax
[cId,center] = calcCluster(vec,'halfwidth',2.5*degree)
[cId,center] = calcCluster(vec,'numCluster',n,'method','hierarchical')
[cId,center] = calcCluster(vec,'maxAngle',omega,'method','hierarchical')
Input
vec | vector3d |
n | number of clusters |
omega | maximum angle |
Output
cId | list of clusters ids |
center | center of the clusters |
Example
%generate vector data of up to 5 clusters
vin = vector3d.rand(5);
sF2 = calcDensity(vin,'halfwidth',10*degree);
v = sF2.discreteSample(800);
find clusters and their centers
[cId,center] = calcCluster(v,'numCluster',5,'method','hierarchical');
visualize the result
plot(v,cId)
hold on
plot(center,'add2all','MarkerSize',10,'MarkerFaceColor','k')
hold off

%check the accuracy of the recomputed centers
min(angle_outer(center,vin)./degree)
ans =
10.4473 0.7218 0.3485 0.6109 12.2760