예제 #1
0
    def plot_lidar(lidar):
        print(lidar.shape)
        fig = plt.figure()
        ax = fig.add_subplot(111, projection='3d')
        for i in range(len(lidar)):
            ax.scatter(lidar[i, 0],
                       lidar[i, 1],
                       lidar[i, 2],
                       s=0.01,
                       c=[0.5, 0.5, 0.5])
            plt.axis('equal')
            # ax.set_xlabel('LabelX')
            # ax.set_ylabel('LabelY')
            # ax.set_zlabel('LabelZ')
            # ax.set_xlim(30, 40)
            # ax.set_ylim(-10, 10)
            # ax.set_zlim(0, 10)
        plt.show()

        lidars = utils.load_velo_scans(['30.bin'])
        intensity_max = np.max(lidars[0][:, 3])

        print('shape: ' + str(lidars[0].shape) + ' intensity max: ' +
              str(intensity_max))
        plot_lidar(lidars[0])
        top, top_image = data.lidar_to_top(lidars[0])
        cv2.imwrite('30.png', top_image)
    def load_velo(self):
        """Load velodyne [x,y,z,reflectance] scan data from binary files."""
        # Find all the Velodyne files
        velo_path = os.path.join(self.data_path, 'velodyne_points', 'data',
                                 '*.bin')
        velo_files = sorted(glob.glob(velo_path))

        # Subselect the chosen range of frames, if any
        if self.frame_range:
            velo_files = [velo_files[i] for i in self.frame_range]

        print('Found ' + str(len(velo_files)) + ' Velodyne scans...')

        # Read the Velodyne scans. Each point is [x,y,z,reflectance]
        self.velo = utils.load_velo_scans(velo_files)

        print('done.')
예제 #3
0
파일: raw.py 프로젝트: erickwan/MV3D
    def load_velo(self):
        """Load velodyne [x,y,z,reflectance] scan data from binary files."""
        # Find all the Velodyne files
        velo_path = os.path.join(
            self.data_path, 'velodyne_points', 'data', '*.bin')
        velo_files = sorted(glob.glob(velo_path))

        # Subselect the chosen range of frames, if any
        if self.frame_range:
            velo_files = [velo_files[i] for i in self.frame_range]

        print('Found ' + str(len(velo_files)) + ' Velodyne scans in ' + velo_path)

        # Read the Velodyne scans. Each point is [x,y,z,reflectance]
        self.velo = utils.load_velo_scans(velo_files)

        print('done.')
예제 #4
0
    def plot_lidar(lidar):
        print(lidar.shape)
        fig = plt.figure()
        ax = fig.add_subplot(111, projection='3d')
        for i in range(len(lidar)):
            ax.scatter(lidar[i,0], lidar[i,1], lidar[i,2],s=0.01,
                       c= [0.5,0.5,0.5])
            plt.axis('equal')
            # ax.set_xlabel('LabelX')
            # ax.set_ylabel('LabelY')
            # ax.set_zlabel('LabelZ')
            # ax.set_xlim(30, 40)
            # ax.set_ylim(-10, 10)
            # ax.set_zlim(0, 10)
        plt.show()


        lidars= utils.load_velo_scans(['30.bin'])
        intensity_max=np.max(lidars[0][:,3])

        print('shape: '+str(lidars[0].shape)+' intensity max: '+str(intensity_max))
        plot_lidar(lidars[0])
        top, top_image = data.lidar_to_top(lidars[0])
        cv2.imwrite('30.png', top_image)
예제 #5
0
    top_image = (top_image / np.max(top_image) * 255)
    top_image = np.dstack((top_image, top_image, top_image)).astype(np.uint8)
    cv2.imwrite('top_image_1.png', top_image)

    for i in range(8):
        top_image = top[:,:,i]
        top_image = top_image - np.min(top_image)
        top_image = (top_image / np.max(top_image) * 255)
        top_image = np.dstack((top_image, top_image, top_image)).astype(np.uint8)
        cv2.imwrite('top_image_{}.png'.format(i), top_image)

if 1:
    import mayavi.mlab as mlab

    from show_lidar import *

    lidars= utils.load_velo_scans(['kitti_005_0000000000.bin'])
    lidar=lidars[0]
    intensity_max=np.max(lidars[0][:,3])
    fig = mlab.figure(figure=None, bgcolor=(0, 0, 0), fgcolor=None, engine=None, size=(500, 500))
    mlab.clf(fig)
    draw_didi_lidar(fig, lidar, is_grid=1, is_axis=1)
    mlab.show()

    # print('shape: '+str(lidars[0].shape)+' intensity max: '+str(intensity_max))
    # plot_lidar(lidars[0])
    # top, top_image = data.lidar_to_top(lidars[0])
    # cv2.imwrite('30.png', top_image)


예제 #6
0
    cv2.imwrite('top_image_1.png', top_image)

    for i in range(8):
        top_image = top[:, :, i]
        top_image = top_image - np.min(top_image)
        top_image = (top_image / np.max(top_image) * 255)
        top_image = np.dstack(
            (top_image, top_image, top_image)).astype(np.uint8)
        cv2.imwrite('top_image_{}.png'.format(i), top_image)

if 1:
    import mayavi.mlab as mlab

    from show_lidar import *

    lidars = utils.load_velo_scans(['kitti_005_0000000000.bin'])
    lidar = lidars[0]
    intensity_max = np.max(lidars[0][:, 3])
    fig = mlab.figure(figure=None,
                      bgcolor=(0, 0, 0),
                      fgcolor=None,
                      engine=None,
                      size=(500, 500))
    mlab.clf(fig)
    draw_didi_lidar(fig, lidar, is_grid=1, is_axis=1)
    mlab.show()

    # print('shape: '+str(lidars[0].shape)+' intensity max: '+str(intensity_max))
    # plot_lidar(lidars[0])
    # top, top_image = data.lidar_to_top(lidars[0])
    # cv2.imwrite('30.png', top_image)