Beispiel #1
0
            exit(-1)

        # read the camera parameter of this dataset
        with open(osp.join(dataset_path, 'camera_parameter.pickle'),
                  'rb') as f:
            camera_parameter = pickle.load(f)

        # using preprocessed 2D poses or using CPN to predict 2D pose
        if args.dumped_dir:
            test_dataset = PreprocessedDataset(args.dumped_dir[dataset_idx])
            logger.info(
                f"Using pre-processed datasets {args.dumped_dir[dataset_idx]} for quicker evaluation"
            )
        else:

            test_dataset = BaseDataset(dataset_path, test_range)

        test_loader = DataLoader(test_dataset,
                                 batch_size=1,
                                 pin_memory=True,
                                 num_workers=6,
                                 shuffle=False)
        pose_in_range = export(test_model,
                               test_loader,
                               is_info_dicts=bool(args.dumped_dir),
                               show=True)
        with open(
                osp.join(
                    model_cfg.root_dir, 'result',
                    time.strftime(
                        str(model_cfg.testing_on) + "_%Y_%m_%d_%H_%M",
Beispiel #2
0
                # logging.info ( f'A pose proposal deleted on {img_id}:{person}' )
                sub_imageid = list ()
                pass
            chosen_img.append ( sub_imageid )
        return multi_pose3d, chosen_img


if __name__ == '__main__':
    import pickle
    import scipy.io as scio
    from src.models.model_config import model_cfg
    from glob import glob
    from tqdm import tqdm
    from src.m_utils.base_dataset import BaseDataset
    from torch.utils.data import DataLoader, Subset
    import random

    est = MultiEstimator ( model_cfg, debug=False )
    with open ( osp.join ( model_cfg.shelf_path, 'camera_parameter.pickle' ), 'rb' ) as f:
        test_camera_parameter = pickle.load ( f )
    test_dataset = BaseDataset ( model_cfg.shelf_path, range ( 300, 600 ) )
    test_dataset = Subset ( test_dataset, random.sample ( range ( 300 ), 50 ) )
    test_loader = DataLoader ( test_dataset, batch_size=1, pin_memory=True, num_workers=12, shuffle=False )
    for imgs in tqdm ( test_loader ):
        this_imgs = list ()
        for img_batch in imgs:
            this_imgs.append ( img_batch.squeeze ().numpy () )
        poses3d = est.predict ( imgs=this_imgs, camera_parameter=test_camera_parameter, show=False,
                                template_name='Shelf' )
        # print ( poses3d )
Beispiel #3
0
if __name__ == '__main__':
    import pickle
    import scipy.io as scio
    from src.models.model_config import model_cfg
    from glob import glob
    from tqdm import tqdm
    from src.m_utils.base_dataset import BaseDataset
    from torch.utils.data import DataLoader, Subset
    import random
    import time

    est = MultiEstimator(model_cfg, debug=False)
    with open(osp.join(model_cfg.shelf_path, 'camera_parameter.pickle'),
              'rb') as f:
        test_camera_parameter = pickle.load(f)
    test_dataset = BaseDataset(model_cfg.lit_path, range(210, 250))
    # test_dataset = Subset ( test_dataset, random.sample ( range ( 300 ), 50 ) )
    test_loader = DataLoader(test_dataset,
                             batch_size=1,
                             pin_memory=True,
                             num_workers=6,
                             shuffle=False)
    output = []
    for imgs in tqdm(test_loader):
        this_imgs = list()
        for img_batch in imgs:
            this_imgs.append(img_batch.squeeze().numpy())
        info_dict = est.predict(imgs=this_imgs,
                                camera_parameter=test_camera_parameter,
                                show=False,
                                template_name='Unified')