我想从3个视图中计算3D对象。原理如下图所示。 从3个视图创建3D对象
每个视图都存储在二维矩阵中,二进制值代表对象。 3D对象应该以二进制值存储在3维矩阵中(True:该像素代表对象质量,False:该像素是白色空间)。 我怎样才能实现这与简单的numpy矩阵操作?
三个视图a,b and c
可以例如看起来像[[0,0,0,0],[0,1,1,0],[0,1,1,0],[0,0,0,0]]
。
我想从3个视图中计算3D对象。原理如下图所示。 从3个视图创建3D对象
每个视图都存储在二维矩阵中,二进制值代表对象。 3D对象应该以二进制值存储在3维矩阵中(True:该像素代表对象质量,False:该像素是白色空间)。 我怎样才能实现这与简单的numpy矩阵操作?
三个视图a,b and c
可以例如看起来像[[0,0,0,0],[0,1,1,0],[0,1,1,0],[0,0,0,0]]
。
如果你的意见是a, b, c
则:
result = a[None, :, :] & b[:, None, :] & c[:, :, None]
洗牌圆轴,以适应输入
a
,b
和c
被假定为以下形式:
np.array([[0,0,0,0],[0,1,1,0],[0,1,1,0],[0,0,0,0]], dtype=np.bool)
见[这个重复的问题](http://stackoverflow.com/q/23409318/553404)的一些更多的输入数据的例子 – YXD