Matlab中的二维唯一值

时间:2015-06-15 14:00:08

标签: arrays matlab

我有两个向量,其中一个存储一组图像的宽度尺寸,另一个存储这些图像集的高度。

我想将这些值用作二维向量[width height]并将它们存储在矩阵中。例如,第一行保持宽度,第二行保持高度。

是否可以在matlab中使用unique()函数返回二维唯一值?我的意思是,值可以在一个维度上重复,但是这两个维度不能与另一个维度相同吗?

如何在Matlab中做到这一点?

一个例子:给定以下矩阵,每列都有一个二维向量。我想要二维独特的向量。这些值可以在一个维度上重复,但不能在两个维度中重复。

我有什么:

[1,2,3,1;
 4,5,6,4]

我想要输出:

[1,2,3;
 4,5,6]

1 个答案:

答案 0 :(得分:5)

请参阅unique的文档。

假设widthsheights是列向量,

[C,ia,ic] = unique([widths, heights],'rows')

相反,如果widthsheights是行向量,

[C,ia,ic] = unique([widths; heights].','rows')