3

我目前有两个列出图像名称的单字段 Matlab 结构。我想将它们组合成一个没有重复的结构 - 即

a(1).img = 'aa.jpg'
a(2).img = 'bb.jpg'

b(1).img = 'bb.jpg'
b(2).img = 'cc.jpg'

我希望 ab 具有值:

ab(1) = 'aa.jpg'
ab(2) = 'bb.jpg'
ab(3) = 'cc.jpg'

有没有一种非暴力的方式来做到这一点?

4

1 回答 1

3

您可以使用逗号分隔的列表连接每个结构的值,然后unique获取唯一值。然后,将它传递给函数将创建一个包含值struct的数组。structs

S = struct('img', unique({a.img, b.img}, 'stable'))

如果您实际上不需要 struct 并且只需要一个包含唯一值的元胞数组,则可以消除对struct.

unique({a.img, b.img}, 'stable')
于 2016-07-22T18:45:16.957 回答