matlab-两个结构点的唯一pai之间的最小欧几里德距离

matlab-两个结构点的唯一pai之间的最小欧几里德距离,matlab,unique,distance,Matlab,Unique,Distance,我有一个结构的6个点和第二个结构的5个点之间的距离矩阵: a = [2.565 0.394 2.927 2.774 1.600; 0.402 1.950 3.272 2.086 0.985; 2.965 3.250 1.720 0.841 2.305; 2.797 2.050 0.830 0.829 1.585; 3.865 2.662 1.246 2.086 2.634; 1.

我有一个结构的6个点和第二个结构的5个点之间的距离矩阵:

a = [2.565  0.394   2.927   2.774   1.600;
    0.402   1.950   3.272   2.086   0.985;
    2.965   3.250   1.720   0.841   2.305;
    2.797   2.050   0.830   0.829   1.585;
    3.865   2.662   1.246   2.086   2.634;
    1.592   0.977   2.305   1.579   0.274]
我需要点之间的最小距离。有时我在另一个结构的两点之间得到一个点<代码>0.274 0.394 0.402 0.830 0.829 这意味着我将得到点4(从6点结构中)与另一个结构中的点3和4最接近。我不允许有一个点离另外两个点最近。 如何获得这些闭合点的唯一对? 我想我应该核实一下前两个最小值之间是否存在微小的差异。问题的症结总是在另外两个问题的中间。 我需要得到
0.274 0.394 0.402 0.830 0.841
(参见答案1)。 我最初的代码是:

for i = 1 : 6
    mins(i) = min(a(i, :));
end
mins = sort(mins);
mins = mins(1 : 5);

谢谢。

谢谢比克,我希望这个问题能得到另一个答案

[pairs,a1,a2]=matchpairs(a,1,'min')
pairs =
     2     1
     1     2
     4     3
     3     4
     6     5
a1 =
     5
a2 =
  0×1 empty double column vector

另外,我希望有人能解释其他输出的含义以及它们何时有用。

你用Matlab标记了这个问题,但没有Matlab代码。你能详细说明这个问题与Matlab的关系吗?我不明白你想要什么。你可能需要更好地解释它。另外,当它不是对称的,对角线不是零时,它怎么可能是一个距离矩阵?@LuisMendo它是两个结构的6到5个点之间的距离矩阵。我应该给出结构的xyz坐标吗?啊,我搞错了,对不起。现在我明白矩阵的意思了。不过,我认为这可能会让读者感到困惑。你应该澄清这一部分,以及问题的其余部分,这样你可以得到帮助。我没有Matlab2019a的访问权限,但看起来很有希望。我真的很想有人来试试D
a1
a2
分别是不匹配的行和列。所以第5行没有使用最小值,但所有5列都匹配,如果行多于列,这是有意义的。谢谢你尝试一下!:)