Example #1
0
def TestDataset():

    [x_test, y_test] = DataProcessor.ProcessTestData(
        "/Users/usi/PycharmProjects/data/beboptest.pickle", 60, 108, True)
    test_set = Dataset(x_test, y_test)

    frame = cv2.imread("13.jpg", 0)
    frame = np.reshape(frame, (60, 108, 1))
    frame = np.swapaxes(frame, 0, 2)
    frame = np.swapaxes(frame, 1, 2)

    for i in range(20):
        newframe = torch.from_numpy(frame).float()
        newframe = test_set.augmentNoise(newframe)
        newframe = test_set.toNumpy(newframe)
        cv2.imshow("frame", newframe)
        cv2.waitKey()
def main():
    logging.basicConfig(level=logging.INFO,
                        format="%(asctime)s - %(levelname)s - %(message)s",
                        datefmt="%Y-%m-%d %H:%M:%S",
                        filename="log.txt",
                        filemode='w')

    console = logging.StreamHandler()
    console.setLevel(logging.INFO)
    formatter = logging.Formatter('%(message)s')
    console.setFormatter(formatter)
    logging.getLogger('').addHandler(console)

    model = Dronet(PreActBlock, [1, 1, 1], True)
    ModelManager.Read('../PyTorch/Models/DronetGray.pt', model)

    DATA_PATH = "/Users/usi/PycharmProjects/data/"
    picklename = "HimaxDynamic_12_03_20.pickle"
    [x_test, y_test,
     z_test] = DataProcessor.ProcessTestData(DATA_PATH + picklename, True)
    t_test = DataProcessor.GetTimeStampsFromTestData(DATA_PATH + picklename)

    if picklename.find(".pickle"):
        picklename = picklename.replace(".pickle", '')

    x_test2 = []
    y_test2 = []
    z_test2 = []
    # for i in range(len(x_test)):
    #     gt = y_test[i]
    #     if ((gt[0] > 1.0) and (gt[0] < 2.0)):
    #         x_test2.append(x_test[i])
    #         y_test2.append(y_test[i])
    #         z_test2.append(z_test[i])
    #
    # x_test = np.asarray(x_test2)
    # y_test = np.asarray(y_test2)
    # z_test = np.asarray(z_test2)

    test_set = Dataset(x_test, y_test)
    params = {'batch_size': 1, 'shuffle': False, 'num_workers': 1}
    test_generator = data.DataLoader(test_set, **params)
    trainer = ModelTrainer(model)

    MSE, MAE, r2_score, outputs, gt_labels = trainer.Test(test_generator)

    # utils.SaveResultsToCSV(gt_labels, outputs, t_test, "wow.csv")

    model2 = Dronet(PreActBlock, [1, 1, 1], True)
    ModelManager.Read('../PyTorch/Models/DronetGrayAug120.pt', model2)
    trainer2 = ModelTrainer(model2)
    MSE, MAE, r2_score, outputs2, gt_labels2 = trainer2.Test(test_generator)

    utils.SaveResultsToCSVWithCamPoses(gt_labels, outputs2, t_test, z_test,
                                       picklename + ".csv")

    outputs2 = np.reshape(outputs2, (-1, 4))

    h = x_test.shape[2]
    w = x_test.shape[3]
    x_test = np.reshape(x_test, (-1, h, w))
    VizWorldTopView(x_test, y_test, z_test, outputs, outputs2, True,
                    picklename)