in lib/datasets/frustum_dataset.py [0:0]
def __init__(self, dataset_helper, npoints,
pickle_file,feat_file, random_flip=False,
random_shift=False, rotate_to_center=False,
from_rgb_detection=False, logger=None):
'''
Input:
npoints: int scalar, number of points for frustum point cloud.
random_flip: bool, in 50% randomly flip the point cloud
in left and right (after the frustum rotation if any)
random_shift: bool, if True randomly shift the point cloud
back and forth by a random distance
rotate_to_center: bool, whether to do frustum rotation
from_rgb_detection: bool, if True we assume we do not have
groundtruth, just return data elements.
logger: logger
'''
self.npoints = npoints
self.random_flip = random_flip
self.random_shift = random_shift
self.rotate_to_center = rotate_to_center
self.from_rgb_detection = from_rgb_detection
self.logger = logger
self.pickle_file = pickle_file
self.feat_file = feat_file
self.dataset_helper = dataset_helper
if logger is not None:
logger.info('Load data from %s' %(self.pickle_file))
with open(self.feat_file,'rb') as fp:
self.rgb_feat_list = pickle.load(fp)
print('==========>',len(self.rgb_feat_list))
if self.from_rgb_detection:
with open(self.pickle_file,'rb') as fp:
self.id_list = pickle.load(fp)
self.box2d_list = pickle.load(fp)
self.input_list = pickle.load(fp)
self.type_list = pickle.load(fp)
self.frustum_angle_list = pickle.load(fp)
self.prob_list = pickle.load(fp)
else:
with open(self.pickle_file, 'rb') as fp:
self.id_list = pickle.load(fp)
self.box2d_list = pickle.load(fp)
self.box3d_list = pickle.load(fp)
self.input_list = pickle.load(fp)
self.label_list = pickle.load(fp)
self.type_list = pickle.load(fp)
self.heading_list = pickle.load(fp)
self.size_list = pickle.load(fp)
self.frustum_angle_list = pickle.load(fp)
print('==========>',len(self.id_list))