def make_mask(self, matfile):
d = sio.loadmat(matfile)
if "image" in matfile:
parts_mask = np.transpose(np.expand_dims(d["M"], 0), (1, 2, 0))
else:
objects = d["anno"][0, 0][1]
object_name = [objects[0, i][0][0] for i in range(objects.shape[1])]
img_shape = objects[0, 0][2].shape
parts_mask = np.zeros(img_shape + (1, ))
for index, obj in enumerate(object_name):
if obj == "person":
if not objects[0, index][3].shape == (0, 0):
for j in range(objects[0, index][3].shape[1]):
parts_mask[:, :, 0] = np.where(parts_mask[:, :, 0] == 0, merged_parts_list[objects[0, index][3][0, j][0][0]] * np.array(objects[0, index][3][0, j][1]), parts_mask[:, :, 0])
parts_mask = cv2.resize(parts_mask.astype(np.uint8), (self.insize, self.insize), interpolation = cv2.INTER_NEAREST)
# parts_mask = (parts_mask > 0).astype(np.uint8)
return parts_mask
data.py 文件源码
python
阅读 22
收藏 0
点赞 0
评论 0
评论列表
文章目录