0

我目前正在使用 matlab 设计一种重建 3D 数据的方法。为此,我有两张带有黑点的图片。每帧点数的差异是重建的关键,但当矩阵不相等时,MATLAB 会给出错误。发生这种情况是因为代码没有做我想做的事,所以任何人都可以帮我做以下事情吗?

我有两列 Xdata:XLIXRI

当我做时matlab做XLI-XRI的是减去对,即XLI(1)-XRI(1)等,但我想减去每个值的XRI每个值XLI。IE

XLI(1)-XRI(1,2,3,4 etc)
XLI(2)-XRI(1 2 3 4 etc)

等等

任何人都可以帮忙吗?

4

2 回答 2

2

我认为您正在寻找一种从彼此中扣除所有组合的方法。这是一个示例,说明如何使用bsxfun

 xLI = [1 2 3]
 xRI = [1 2]
 bsxfun(@minus,xLI ,xRI')
于 2014-05-14T10:47:05.897 回答
0

我无法评论 Dennis 的帖子(该网站上没有足够的点数):他的解决方案应该可以工作,但根据您的 Matlab 版本,您可能会收到“使用 ==> bsxfun 时出错”,并且需要将 xLI 或 xRI 转置为工作 :

bsxfun(@minus,xLI' ,xRI)

最好的,

特普

于 2014-05-14T13:48:50.483 回答