def update_curr_map(self, map_update, dstar_map_update=None): """Update current map. Parameters ---------- map_update : numpy.ndarray the update to the current map """ self.curr_map = utils.accumulate_map(self.curr_map, map_update, one_is_free=self.one_is_free) if self.dstar: self.dstar_curr_map = utils.accumulate_map( self.dstar_curr_map, dstar_map_update, one_is_free=self.dstar_one_is_free)
def update_step_map(self, pos): masked_img = utils.mask_grid((pos[1], pos[0]), self.grid[0], 3, one_is_free=False) self.step_map[0] = utils.accumulate_map(self.step_map[0], masked_img, one_is_free=False)
grid, state, label, goal = sampler.get_grid(77) gt_collector.append(state) step_map = np.zeros((2, 28, 28)) step_map[0] = np.ones((28, 28)) step_map[1] = grid[1] pos = [state[0, 0], state[0, 1]] path = [(pos[0], pos[1])] start = (pos[0], pos[1]) for step in xrange(32): masked_img = utils.mask_grid((pos[1], pos[0]), grid[0], 3, one_is_free=False) step_map[0] = utils.accumulate_map(step_map[0], masked_img, one_is_free=False) action, reward, value = predict(step_map, pos, model, 20) dx, dy = get_action(action) pos[0] = pos[0] + dx pos[1] = pos[1] + dy path.append((pos[0], pos[1])) plt.figure() plt.imshow(value, cmap="jet") plt.colorbar() plt.scatter(x=[start[0]], y=[start[1]], marker="*", c="orange", s=50) plt.scatter(x=[pos[0]], y=[pos[1]], marker=".", c="purple", s=50) plt.scatter(x=[goal[0]], y=[goal[1]], marker="*", c="black", s=50) plt.savefig("grid28-77-%d.png" % (step), dpi=300)
radius = 7 mask_pos_1 = (7, 7) mask_pos_2 = (12, 12) # plot a grid grid_im = db[utils.data_dict[0]] grid = 1 - grid_im[0, :] # utils.plot_grid(grid, imsize) grid = grid.reshape(imsize[0], imsize[1]) masked_grid_1 = utils.mask_grid(mask_pos_1, grid, radius, one_is_free=False) masked_grid_2 = utils.mask_grid(mask_pos_2, grid, radius, one_is_free=False) acc_grid = utils.accumulate_map(masked_grid_1, masked_grid_2, one_is_free=False) plt.figure(figsize=(10, 10)) plt.subplot(231) plt.imshow((1 - grid) * 255, cmap="gray") plt.axis("off") plt.subplot(232) plt.imshow((1 - masked_grid_1) * 255, cmap="gray") plt.axis("off") plt.subplot(233) plt.imshow((1 - masked_grid_2) * 255, cmap="gray") plt.axis("off") plt.subplot(234) plt.imshow((1 - acc_grid) * 255, cmap="gray") plt.axis("off")